/* CSS Document */
body{background-color:#e9e8e3;}
iframe{
	    aspect-ratio: 1230 / 440;
    width: 100%;
    position: absolute;
    top: 12.5%;
    left: 50%;
    transform: translateX(-50%);
}
#access{position:relative;}
#access img{width:65%;margin:auto;}
#inbound-main{
	background-size:contain;
	background-position-y: 264%;
	padding-bottom: 5%;
	background-repeat: no-repeat;
}
#about-us,#food,#room,#bath,#facility,#access,#spots,#camp{
	width:65%;
}
#about-us{margin:5% auto;}
#food{margin:5% auto 7.5%;}
#room{margin:7.5% auto;}
#bath{margin:7.5% auto;}
#facility{margin:7.5% auto 5%;}
#access{margin:5% auto;}
#spots{margin:5% auto auto;}
#camp{margin:5% auto 0;}
.mennu-chi:last-child {
    width: 14%!important;
}
@media(max-width:750px){
	iframe {
		aspect-ratio: 1230 / 540;
	}
	#about-us,#food,#room,#bath,#facility,#access,#spots,#camp{
		width:100%;
	}
	#about-us{}
	#food{margin: 10% auto 15%;}
	#room{margin: auto auto 15%;}
	#bath{}
	#facility{}
	#access{margin: 10% auto 15%;}
	#spots{margin: auto auto 15%;}
	#camp{margin: auto auto 5%;
	}
	#about-us img,#food img,#room img,#bath img,#facility img,#access img,#spots img,#camp img{
		margin: auto;
	}
	#about-us img{width:85%;}
	#food img,#facility img{width:90%;}
	#room img,#bath img{width:100%;margin-left:-5%;}
	#access img{width:75%;}
	#spots img,#camp img{width:95%;}
	#inbound-main{padding-top:5%;position: relative;}
	#inbound-main::before{
		background-size: contain;
		background-position-y:0;
		background-repeat: repeat;
		content: "";
		position: absolute;
		inset: 0; /* top, right, bottom, left を全部 0 にする */
		background-repeat: repeat;
		top:0.3%;
		opacity: 0.3; /* ★ 透明度をここで指定 */
		z-index: -1;
		padding-top: 6.8%;
	}
	/*以下ハンバーガーメニュー*/
	#in-sp-humberger{
		width:100%;
		height: auto;
		aspect-ratio:750/80;
		background-size:100% 100%;
		position:fixed;
		top: 0;
		background-color:#e9e8e3;
		z-index: 9990
	}
	#in-sp-humberger a{width:20%;margin-left:20%;display: block;}
	.c-hamburger-menu {
	width: 9vw; /* ボタンの幅 */
	aspect-ratio:1/1;
	background-color: #e9e8e3; /* 背景色 */
	border: none;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 1% 1% 0.5%;
	position: fixed;
	right: 2vw;
	top: 1vw;
	z-index: 9998;
	text-align: center;
	transition: all 0.5s;
	gap: 9%;
}

.c-hamburger-menu .c-bar {
  height: 2px;
  width: 100%;
  background-color: #003165;
  margin: 2px 0; /* マージンを少し増やして調整 */
  transition: all 0.3s ease;
}

/* "MENU" テキストのスタイル */
.c-menu-text {
  color: #333;
  /*margin-top: 10%;*/ /* テキストの上のスペースを調整 */
	position:absolute;
	bottom:0;
}

/* ホバー時のスタイル変更（オプション） */
.c-hamburger-menu:hover {
	background-color: #f2f2f2;
	/*opacity: 0.6;*/
}

.c-hamburger-menu:hover .c-bar {
  background-color: #003165;
}

/* メニューがアクティブな時のスタイル */
.c-hamburger-menu.active .c-bar:nth-child(1) {
  transform: rotate(45deg) translate(1vw, 1vw);
}

.c-hamburger-menu.active .c-bar:nth-child(2) {
  opacity: 0;
}

.c-hamburger-menu.active .c-bar:nth-child(3) {
  transform: rotate(-45deg) translate(1vw, -1vw);
  margin-top: -3.5px;
}

#c-menubox {
  background-color: #f2f2f2;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9990;
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0; /* 初期状態で透明にする */
  transform: scale(0.95); /* 初期状態で少し小さくする */
  transition: opacity 0.5s ease, transform 0.5s ease; /* ふわっと表示させるためのトランジション */
}

/* メニューが表示される時のスタイル */
	#c-menubox.show {
	  opacity: 1;
	  transform: scale(1);
	align-items: flex-start;
    padding-top: 15%;
    justify-content: center;
	}

	.headmove{
		aspect-ratio: 16 / 9;
		width: 100%;
	}
	
/*ハンバーガーメニューを開いた時のコンテンツとか*/
	#humberger-logo{
		width: 40%;
		margin-left: 9vw;
		margin-bottom: 5%;
	}
	.humberger-menu{
		display:flex;
		justify-content: center;
		gap:5%;
		width:80%;
		margin: auto auto 5%;
	}
	.humberger-menu a{
		color:#003165!important;
		margin: auto!important;
		width: 35%!important;
	}
	#humberger-address{
		padding-top: 10%;
		width:85%;
		margin: auto;
		border-top: 3px solid #003165;
	}
	#humberger-address p,
	#humberger-address a{color:#003165!important;}
	#humberger-address p{
		margin: auto;
		text-align: justify;
		text-align-last: center;
		line-height: 8vw !important;letter-spacing: -0.1vw !important;
	}
	#humberger-language{}
	.language-sp-button-region{
		width: 70%;
		margin: 10% auto;
		display:flex;
		justify-content: space-around;
		align-items: center;
	}
	.language-sp-button-region a{
		padding:0 1%;
		border-right: 1px solid #003165;
		margin:auto!important;
		width:100%!important;
		text-align: center;
		white-space: nowrap;
	}
	.jp-border-right{border-right:unset!important;}
	.h-booking-sp{width:50%!important;margin: 10% auto!important;}
	/* メニューが表示されてるとき、bodyのスクロールを禁止 */
.body-no-scroll {
  overflow: hidden;
}

/* メニュー内の縦スクロールを有効にする */
#c-menubox {
  flex-direction: column;
  overflow-y: auto;
  max-height: 100vh; /* スマホ対応で重要 */
}
	@supports (-webkit-touch-callout: none) {
		#humberger-address a{display:inline-block!important;}
}
	
}