/*
 * Globals
 */

@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@500&family=Sawarabi+Gothic&display=swap');
/*
font-family: 'Kiwi Maru', serif;
font-family: 'Sawarabi Gothic', sans-serif;
*/

:root {
	--brown:#594032;
	--green:#669839;
	--beige:#E5E3D6;
	--red:#FF0000;
}

/* Custom default button */
.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus {
  color: #333;
  text-shadow: none; /* Prevent inheritance from `body` */
}

.bg_beije{
	background:var(--beige);
}

a:hover{

}

.red{
	color:var(--red);
}

span.linemarker {
    background: linear-gradient(transparent 60%, #ff6 60%);
}

a.btn_a {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	position: relative;
	width: 100%;
	max-width:360px;
	margin: auto;
	padding: 1rem 0rem;
	font-weight: bold;
	border-radius: 10px;
	color: var(--brown);
	border: 3px solid var(--brown);
	box-shadow: 5px 5px var(--brown);
	transition: 0.3s ease-in-out;
}
a.btn_a:hover {
	box-shadow: none;
	transform: translate(5px, 5px);
	color: var(--brown);
}

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

.spbr{
	display:none;
}
.disp_sp{
	display:none;
}
@media screen and (max-width: 767px) {
	.sp-px-0{
		padding-left:0;
		padding-right:0;
	}
	.spbr{
		display:block;
	}
	.pcbr{
		display:none;
	}
	.disp_pc{
		display:none;
	}
	.disp_sp{
		display:block;
	}

	.sp_left{
		text-align:left !important;
	}
}

span.linemarker {
    background:linear-gradient(transparent 60%, #ff6 60%);
}

/*
 * Base structure
 */

body {
	font-family: 'Sawarabi Gothic', sans-serif;
	position:relative;
}

.cover-container {
  max-width: 42em;
}

#sec_tophead{
	position: relative;
	height:100vh;
	overflow: hidden;
}
#sec_tophead .container{
	position: absolute;
	z-index: 2;
}
/*
#sec_tophead::before{
   content: '';
   display: block;
   width: 100%;
   height: 100%;
	background-image:url("../images/mainbg.jpg");
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
   -webkit-animation: zoom 10s 1;
   animation: zoom 10s 1;
   animation-fill-mode: forwards;
}

@keyframes zoom {
   0% {
      transform: scale(1.1);
   }
   100% {
      transform: scale(1);
   }
}
*/

.mainslide {
  position: relative;
  margin: 0;
  padding: 0;
z-index: 1;
  height: 100%;
}
.mainslide .item {
  position: relative;
  height: 100%;
}
.mainslide .item::before {
  display: block;
  padding-top: 39%;
  content: "";
}
.mainslide .item .image {
  position: relative;
  overflow: hidden;
}
.mainslide .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
object-fit: cover;
}
.mainslide > .slick-list,
.mainslide > .slick-list > .slick-track,
.mainslide > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}
/*
.mainslide .slide-animation{
    animation: fadezoom 10s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
*/

.head_logo{
	width:500px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
z-index: 10;
}

@media (max-width: 991px) {
	#sec_tophead{
		height:50vh;
		overflow: visible;
	}
	.head_logo{
		width:40%;
	}
	.mainslide .item img {
	  width: auto;
		height:100%;
	}
}

@media (max-width: 599px) {
	#sec_tophead{
		height:50vh;
		overflow: visible;
	}
	.head_logo{
		width:80%;
	}
}

.headnav{
	background-color: var(--brown);
	position:absolute;
	width:90%;
	max-width:800px;
	bottom:50px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	border-radius: 30px;
	justify-content: center;
	padding:10px 32px;
z-index: 10;
}
.headnav a{
	font-family: 'Kiwi Maru', serif;
	color:#fff;
	font-size:18px;
	padding:0 32px;
}

@media (max-width: 991px) {
	.headnav a{
		font-size:16px;
		padding:0 20px;
	}
}

@media (max-width: 599px) {
	.headnav{
		bottom:-50px;
	}
	.headnav a{
		font-size:16px;
		padding:10px 10px;
	}
}

.midashi{
	font-family: 'Kiwi Maru', serif;
	color:var(--brown);
	text-align:center;
	margin-bottom:50px;
}

.midashi_cnr{
	font-family: 'Kiwi Maru', serif;
	color:var(--brown);
	text-align:center;
	padding-bottom:30px;
  background-image: url(../images/under_midashi.png);
  background-size: 200px;
	background-repeat:no-repeat;
	background-position:bottom center;
	margin-bottom:50px;
}


.midashi_in_cnr {
  position: relative;
  text-align: center;
  line-height: 1.1;
	font-family: 'Kiwi Maru', serif;
	color:var(--brown);
	margin-bottom:30px;
}
 
.midashi_in_cnr:before,
.midashi_in_cnr:after {
  position: relative;
  display: inline-block;
  content: "";
  background: var(--brown);
  width: 2px;
  height: 1.2em;
  margin: 0 1em;
  margin-top: -.2em;
  vertical-align: middle;
}
 
.midashi_in_cnr:before {
  transform: rotate(-30deg);
}
 
.midashi_in_cnr:after {
  transform: rotate(30deg);
}

@media screen and (max-width: 991px) {
	.midashi_in_cnr {
		font-size:1.2rem;
	}
}

.p_cap{
	padding:8px 15px;
}

#sec_fb{
	padding-top:50px;
}
.fb-page {
  width: 100%;
	margin:0 auto;
}

#sec_intro{
	padding:100px 0 400px;
	text-align:center;

	background: url("../images/intro_l.png"),url("../images/intro_c.png"),url("../images/intro_r.png");
	background-repeat:no-repeat,no-repeat,no-repeat;
	background-position:bottom 100px left 30px,center bottom, top 100px right 30px;
	background-size:300px,400px,300px;

}
#sec_intro h1{
	font-family: 'Kiwi Maru', serif;
	color:var(--brown);
}
#sec_intro p.lead{
	margin-top:100px;
	line-height:2em;
}

@media (max-width: 991px) {
	#sec_intro{
		padding:100px 0 300px;
		background: url("../images/intro_l.png"),url("../images/intro_c.png"),url("../images/intro_r.png");
		background-repeat:no-repeat,no-repeat,no-repeat;
		background-position:bottom 150px left 10px,center bottom, top 300px right 10px;
		background-size:200px,300px,200px;
	}
}

@media (max-width: 599px) {
	#sec_intro{
		padding:100px 0 600px;
		background: url("../images/intro_l.png"),url("../images/intro_c.png"),url("../images/intro_r.png");
		background-repeat:no-repeat,no-repeat,no-repeat;
		background-position:bottom 300px left 10px,center bottom, top 350px right 10px;
		background-size:200px,90%,200px;
	}
	#sec_intro p.lead{
		font-size:18px;
		text-align:left;
		margin-top:40px;
		line-height:1.5em;
	}
}

#sec_enjoy{
	padding:100px 0;
	text-align:center;
}

@media (max-width: 599px) {
	#sec_enjoy{
		padding:100px 0 0;
	}
}

#sec_caution{
	padding:100px 0 200px;
	text-align:center;

	background: url("../images/caution_img.png");
	background-repeat:no-repeat;
	background-position:bottom 100px left 30px;
	background-size:300px;

}
#sec_caution .container{
	background: url("../images/midashi_img_1.png");
	background-repeat:no-repeat;
	background-position:top right 30px;
	background-size:200px;
}

#sec_caution ul{
	text-align:left;
}
#sec_caution ul li{
	font-size:1.25rem;
	padding:10px 0;
}


@media (max-width: 991px) {
	#sec_caution{
		padding:0px 0 460px;
	}
}
@media (max-width: 599px) {
	#sec_caution{
		padding:0px 0 460px;
	}
	#sec_caution .container{
		padding-top:100px;
	}
	#sec_caution .container p{
		text-align:left;
	}
}

.tbl_1 th {
  background: #ECF2ED;
  border:none;
  padding: 10px 15px;
	font-family: 'Kiwi Maru', serif;
	color:var(--brown);
	white-space:nowrap;
	vertical-align:top;
}
.tbl_1 td {
　border: solid 1px #ccc;
  padding: 10px;
}
 
@media screen and (max-width: 599px) {
  .tbl_1 .last td:last-child {
    width: 100%;
  }
  .tbl_1 {
    width: 100%;
  }
  .tbl_1 th,
  .tbl_1 td {
		border-bottom: none;
    display: block;
    width: 100%;
  }
}

.tbl_2{
  width: 100%;
  color: var(--brown);
}
.txt{
   text-align: left;
   font-size: .85em;
}
.price{
   text-align: right;
}
.tax{
	font-size:9px;
	margin-left:6px;
}
.tbl_2 tr {
  border-bottom: 1px dotted var(--brown);
}
.tbl_2 tr:last-child{
   border-bottom: 2px solid var(--brown);
}
.tbl_2 th {
  background: var(--beige);
	font-weight:normal;
  border:none;
  padding: 10px 15px;
	font-family: 'Kiwi Maru', serif;
	color:var(--brown);
	white-space:nowrap;
}
.tbl_2 td {
  padding: 10px;
}
 
@media screen and (max-width: 640px) {
  .tbl_2 .last td:last-child {
    width: 100%;
  }
  .tbl_2 {
    width: 100%;
  }
  .tbl_2 th,
  .tbl_2 td {
		border-bottom: none;
    display: block;
    width: 100%;
  }
}

.site_exp{
	padding:30px;
}
.site_exp h3{
	padding-bottom:8px;
	border-bottom:1px solid #666;
}
.site_exp h4{
	margin-bottom:30px;
}

.slide{
	position:relative;
}
.slick-arrow{ z-index:2!important; }
.slick-prev img ,.slick-next img{
	width:40px !important;
	height:40px !important;
}
.slick-prev {
	left: 10px;
}
.slick-next {
	right: 10px;
}

@media screen and (max-width: 767px) {
	.slick-prev {
		left: 0px;
	}
	.slick-next {
		right: 0px;
	}
}



#sec_guide{
	padding:0 0 100px;
}

#sec_noasobi{
	background:var(--beige);
	padding:60px 0;
}
.bnr_noasobi{
	display:flex;
	justify-content:center;
}
.bnr_noasobi a img{
	width:320px;
}
.bnr_noasobi p{
	color:var(--green);
	padding:15px;
	font-size:18px;
}

@media screen and (max-width: 599px) {
	#sec_guide{
		padding:0 0 60px;
	}

	#sec_noasobi{
		padding:30px 0;
	}
	.bnr_noasobi{
		display:block;
		text-align:center;
	}
	.bnr_noasobi p{
		margin-bottom:0;
	}
	.bnr_noasobi p span{
		display:none;
	}
}

#sec_map{
	padding:100px 0;
}

.sec_ttl{
	padding:100px 0 0;
}
.bg_beige_wrap{
	padding:60px 0;
	background:var(--beige);
}

.sec_detail{
	padding:60px 0 100px;
}

.midashi_in_cnr_b {
  position: relative;
  padding: 0.25em 1em;
  border-top: solid 2px var(--brown);
  border-bottom: solid 2px var(--brown);
	text-align:center;
}
.midashi_in_cnr_b:before, .midashi_in_cnr_b:after {
  content: '';
  position: absolute;
  top: -7px;
  width: 2px;
  height: -webkit-calc(100% + 14px);
  height: calc(100% + 14px);
  background-color: var(--brown);
}
.midashi_in_cnr_b:before {
  left: 7px;
}
.midashi_in_cnr_b:after {
  right: 7px;
}

#sec_program{
	padding:100px 0 0
}
.lead_program{
	text-align:center;
	font-size:1.5em;
	padding-top:30px;
}

.gmap {
    width: 100%;
    position: relative;
    padding-top: 56.25%;
}
.gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#sec_access{
	padding:100px 0;
}

#sec_reserve{
	background:var(--beige);
	padding:60px 0;
}

.reserve_box{
	text-align:center;
}
@media screen and (max-width: 991px) {
	.reserve_box p{
		text-align:left;
	}
}

@media screen and (max-width: 599px) {
	.reserve_box:nth-child(2){
		margin-top:50px;
	}
}

footer{
	text-align:center;
	padding:60px 0 30px;
}
footer img{
	width:100px;
	margin-bottom:30px;
}

.button_fb {
	position:absolute;
	bottom:6px;
	right:0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    border: none;
    border-radius: 50%;
    background-color: #1877f2;
}

.button_fb:hover {
    border: 1px solid #1877f2;
    background-color: #fff;
}

.button_fb:hover path {
    fill: #1877f2;
}

.bbq_naiyo{
	border:1px dashed var(--brown);
	padding:10px;
	margin:15px 0;
}

@media screen and (max-width: 599px) {
	.button_fb {
		top:10px;
		right:0;
	}
}

/*========= ページトップのためのCSS ===============*/

/*リンクの形状*/
#page-top a{
  display: flex;
  justify-content:center;
  align-items:center;
  background:#942D2F;
  border-radius: 5px;
  width: 60px;
  height: 60px;
  color: #fff;
  text-align: center;
  text-transform: uppercase; 
  text-decoration: none;
  font-size:0.6rem;
  transition:all 0.3s;
}
#page-top a img{
	width:40px;
}
#page-top a p{
	width:30px;
}

#page-top a:hover{
  background: #777;
}

/*リンクを右下に固定*/
#page-top {
  position: fixed;
  right: 10px;
  bottom:10px;
  z-index: 2;
    /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 1;
  transform: translateY(100px);
  }
}

@media (min-width: 751px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}

.bnr_insta{
	width:100%;
	max-width:600px;
	margin:50px auto 0;
}