@charset "utf-8";
/*ここに使用したいGoogleFontsコードを張り付け*/
@import url("https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c:300,400,500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@100..900&family=M+PLUS+Rounded+1c&family=Mochiy+Pop+P+One&display=swap");
html {
  /*    基本編となるフォントサイズの指定デフォルトの16pxまたは、ユーザーの設定しているサイズに準じるため*/
  font-size: 100%;
}

body {
  background-color: #fffff2;
  color: #333;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif,
    Verdana, "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  line-height: 1.6;
}

a {
  transition: 0.3s;
}

a:hover {
  opacity: 0.6;
}

header {
  display: flex;
  justify-content: space-around;
  align-items: baseline;
  margin: 0 auto;
  padding: 30px 0;
}

.header_inner {
  display: flex;
}

.header_info {
  font-size: 21px;
}

.header_reserve img {
  width: 50px;
  height: auto;
}
.header_reserve {
  background-color: #e3edce;
  display: inline-block;
  border-radius: 20px;
  text-align: center;
  padding: 0 20px;
}

.header_reserve a {
  text-decoration: none;
}

.gnav ul {
  display: flex;
  justify-content: center;
  background-color: #f3debd;
}

.gnav a {
  color: #333;
  display: block;
  font-size: 24px;
  font-weight: 500;
  padding: 10px 20px;
  text-decoration: none;
}

.mv {
  position: relative;
}

.mv img {
  width: 100%;
}

.mv_copy {
  color: #fafafa;
  font-size: 42px;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: absolute;
  top: 120px;
  left: 70px;
}

.slideshow-container {
  width: 100%;
  height: 60vh;
  position: relative;
  overflow: hidden;
}

.slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation: fade 15s infinite;
}

.slide:nth-child(1) {
  animation-delay: 0s;
}

.slide:nth-child(2) {
  animation-delay: 5s;
}

.slide:nth-child(3) {
  animation-delay: 10s;
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  33% {
    opacity: 1;
  }
  53% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*
.mv {
    background-image: url(http://placehold.jp/1440x500.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    height: 500px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.mv_copy {
    color: #333;
    font-size: 48px;
    margin-right: 70px;
}
*/

.ttl {
  margin: 40px 0 10px;
  font-size: 32px;
  font-weight: 400;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
}

.service {
  display: flex; /*横並び*/
  justify-content: space-between;
}
.service .image {
  width: 300px; /*画像サイズ指定*/
  margin: 0;
  padding: 0;
  object-fit: cover;
}
.service p {
  margin: 0 40px 0 20px;
  padding: 0;
  font-size: 20px;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 2;
  text-align: center;
}

.ttl {
  font-family: "M PLUS Rounded 1c";
  font-size: 32px;
  font-weight: 400;
  margin-bottom: 20px;
  text-align: center;
}

.sample_wrap {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 30px;
  width: 1080px;
}

.sample {
  width: 320px;
}

/*画像サイズが親ボックスより大きい場合に指定*/

.sample img {
  width: 100%;
}

.sample_ttl {
  font-size: 20px;
  font-weight: 400;
  padding: 10px 0;
  text-align: center;
}

.company {
  clear: both;
  margin: 0 auto;
  width: 700px;
}

.company th,
.company td {
  border: 1px solid #ddd;
  padding: 10px;
  text-align: left;
}

.company th {
  background-color: #eee;
  text-align: center;
}

.access {
  clear: both;
  margin: 0 auto;
  width: 700px;
}

.access th {
  text-decoration: underline;
  padding: 10px 60px;
  text-align: center;
}

.gmap {
  margin-top: 50px;
  text-align: center;
}

.to_top {
  margin: 0 auto;
  text-align: right;
  width: 980px;
}

.to_top a {
  /*    topへのリンクボタンの色は好みで変更*/
  background-color: #eee;
  border-radius: 20px 20px 0 0;
  color: #333;
  display: inline-block;
  padding: 10px 30px;
  text-decoration: none;
}

footer {
  background-color: #eee;
  padding-bottom: 30px;
  margin: 0 auto;
}

.footer_nav {
  padding: 30px;
  text-align: center;
}

.footer_nav li {
  display: inline-block;
}

.footer_nav a {
  border-right: 1px solid #494044;
  color: #333;
  text-decoration: none;
  padding: 0 10px;
}

.footer_nav li:first-child a {
  border-left: 1px solid #494044;
}

.footer_copy {
  text-align: center;
  color: #494044;
}

/*contact.htmlのCSS*/
.form {
  text-align: center;
}

.subv {
  background-image: url(images/tent4.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.subv h1 {
  color: #fff;
  font-family: "M PLUS Rounded 1c";
  font-size: 40px;
}

/*meal.htmlのCSS*/
.meal h2 {
  background-color: #e8eed5;
  font-size: 40px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 500;
  margin: 30px;
  text-align: center;
}

.meal h3 {
  font-size: 24px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 400;
  margin: 30px;
  text-align: center;
  text-decoration: underline;
  padding: 20px 0;
}

.BBQ {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  margin: 30px;
}

.BBQ p {
  font-size: 20px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 400;
  text-align: center;
  line-height: 1.7;
}
.option {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  margin: 30px 0 20px 0;
}
.option p {
  font-size: 20px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 400;
  text-align: center;
  line-height: 1.7;
}

.morning {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  margin: 30px;
}

.morning p {
  font-size: 20px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 400;
  text-align: center;
  line-height: 1.7;
}

.drink h2 {
  background-color: #e8eed5;
  font-size: 40px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 500;
  margin: 30px;
  text-align: center;
}

.drink_menu {
  display: flex;
  margin: 30px 100px;
}

.drink_menu h3 {
  font-size: 20px;
  text-decoration: underline;
}

.drink_menu ul li {
  list-style-type: square;
  line-height: 1.4;
  margin: 20px;
}

.drink_alcohol {
  display: inline-block;
}

.drink_softdrink {
  display: inline-block;
}

.drink_list {
  display: flex;
  justify-content: center;
  align-items: end;
}

/*experience.htmlのCSS*/

.experience_child h2 {
  background-color: #e8eed5;
  font-size: 40px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 500;
  margin: 30px;
  text-align: center;
}

.experience_child h3 {
  font-size: 24px;
  font-family: "M PLUS Rounded 1c";
  font-weight: 400;
  text-align: center;
  text-decoration: underline;
  padding: 50px 0 20px 0;
  margin: 20px;
}

.horse {
  display: flex;
  font-size: 18px;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

.cow {
  display: flex;
  font-size: 18px;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

.vegetables {
  display: flex;
  font-size: 18px;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

.fruits {
  display: flex;
  font-size: 18px;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

.pizza {
  display: flex;
  font-size: 18px;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

/*tent.htmlのCSS*/

.stay_main h2 {
  background-color: #e8eed5;
  font-family: "M PLUS Rounded 1c";
  font-size: 40px;
  text-align: center;
  margin: 30px;
}

.stay_main h3 {
  font-size: 24px;
  text-align: center;
  text-decoration: underline;
  padding: 30px 0 20px 0;
}

.stay_main p {
  font-size: 18px;
  text-align: center;
  margin: 0 0 20px 0;
}

.tent_main {
  align-items: center;
  display: flex;
  justify-content: space-around;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

.hotel_main {
  align-items: center;
  display: flex;
  justify-content: space-around;
  text-align: center;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}

/*accessのCSS*/

.ttl_access {
  background-color: #e8eed5;
  font-family: "M PLUS Rounded 1c";
  font-size: 40px;
  font-weight: 500;
  margin: 30px;
  text-align: center;
}

/*serviceのCSS*/
.service_all {
  background-color: #e8eed5;
  font-family: "M PLUS Rounded 1c";
  font-size: 40px;
  font-weight: 500;
  margin: 30px;
  text-align: center;
}

.service_kids h3 {
  font-size: 24px;
  text-align: center;
  text-decoration: underline;
  padding: 30px 0 20px 0;
}

.play_room {
  display: inline-block;
  text-align: center;
  margin: 0 60px;
}

.play_out {
  display: inline-block;
  text-align: center;
  margin: 0 60px;
}

.play_ground {
  display: flex;
  justify-content: center;
}

.service_kids2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

.bath {
  margin: 20px 10px 10px 30px;
  text-align: center;
}

.baby_car ul li {
  font-size: 18px;
  margin: 0 auto;
  list-style-position: inside;
  list-style-type: square;
}

.service_stay h3 {
  font-size: 24px;
  text-align: left;
  text-decoration: underline;
  margin: 30px 20px 20px 20px;
}

.service_stay ul li {
  font-size: 18px;
  margin: 20px 10px 10px 30px;
  text-align: left;
  list-style-position: inside;
  list-style-type: square;
}

.service_share h3 {
  font-size: 24px;
  text-align: left;
  text-decoration: underline;
  margin: 30px 20px 20px 20px;
}

.service_share ul li {
  font-size: 18px;
  margin: 20px 10px 10px 30px;
  text-align: left;
  list-style-position: inside;
  list-style-type: square;
}

.service_facility {
  display: flex;
  justify-content: center;
  margin: 30px 0 20px 0;
}

/*reserve.htmlのCSS*/
.reserve_main {
  background-image: url(images/child_boy.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.reserve_main h2 {
  color: #fff;
  font-family: "M PLUS Rounded 1c";
  font-size: 40px;
}
