@charset "UTF-8";
/* CSS Document */

:root {
	--bg: #fff;
    --bg-sub: #0f172a;
    --card: rgba(255,255,255,0.06);
    --line: rgba(255,255,255,0.1);
    --text: #ffffff;
    --sub: #94a3b8;
    --accent: #38bdf8;
    --accent2: #8b5cf6;
	--blk:#212121;
	--whi:#fff;	
	--red: #801E1E;
    --max: 1500px;	
	--main-color: #201309;
	--t37: calc(37rem / 16);
	--t32: calc(32rem / 16);
	--t30: calc(30rem / 16);
	--t29: calc(29rem / 16);
	--t28: calc(28rem / 16);		
	--t27: calc(27rem / 16);	
	--t25: calc(25rem / 16);
	--t24: calc(24rem / 16);	
	--t23: calc(23rem / 16);
	--t21: calc(21rem / 16);	
	--t20: calc(20rem / 16);
	--t19: calc(19rem / 16);	
	--t18: calc(18rem / 16);	
	--t17: calc(17rem / 16);
	--t16: calc(16rem / 16);	
	--t15: calc(15rem / 16);	
	--t14: calc(14rem / 16);
	--t13: calc(13rem / 16);
	--t12: calc(12rem / 16);
	--t11: calc(11rem / 16);	
	--t10: calc(10rem / 16);		
}

.t13 {font-size: var(--t13);}
.t14 {font-size: var(--t14);}
.t16 {font-size: var(--t16);}
.t18 {font-size: var(--t18);}
.t19 {font-size: var(--t19);}
.t20 {font-size: var(--t20);}
.t23 {font-size: var(--t23);}
.t28 {font-size: var(--t28);}

body {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 100;
	letter-spacing: 0.02em;
/*	background: url("../img/bg.jpg") fixed;*/
	position: relative;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: url("../img/bg.jpg") center center / cover no-repeat;
}
@media (max-width:834px){
html,body {
	overflow-x: hidden
}
	
}

*{
	box-sizing: border-box;
}
img {
  max-width: 100%;
}
.sp {
	display: none
}
.pc {
	display: block;
}
.aC {
	text-align: center;
}
.aL {
	text-align: left;
}
.aR {
	text-align: right;
}
@media (max-width:843px){
    .pc {
        display: none
    }
    .sp {
        display: block;
    }	
}
.mb300 {
	margin-bottom: 300px !important;
}
.mb180 {
	margin-bottom: 180px !important;
}
.mb120 {
	margin-bottom: 120px;
}
.mb100 {
	margin-bottom: 100px;
}
.mb90 {
	margin-bottom: 90px;
}
.mb80 {
	margin-bottom: 80px;
}
.mb70 {
	margin-bottom: 70px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb50 {
	margin-bottom: 50px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb25 {
	margin-bottom: 25px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb10 {
	margin-bottom: 10px;
}

.mt64 {
	margin-top: 64px;
}
.mt50 {
	margin-top: 50px;
}
.lh17 {
	line-height: 1.7;
}
.lh20 {
	line-height: 2;
}
.lh25 {
	line-height: 2.5;
}

@media (max-width:834px){
	.mb300 {
	margin-bottom: 240px !important;
	}
}

@media (min-width:835px){

  body.home .side-menu{
    opacity: 0;
    transform: translateX(-20px);
    transition: all .5s ease;
  }

  body.home .side-menu.is-show{
    opacity: 1;
    transform: translateX(0);
  }

}

/* --------------------------- side menu 
*/
/*
.side-menu{
  position: fixed;
  top: 0;
  left: 0;

  width: 190px;
  height: 100dvh;

  background: var(--main-color);
  color: #fff;

  overflow-y: auto;
	z-index: 3
}
*/
.side-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 190px;
  height: 100dvh;
  background: var(--main-color);
  color: #fff;
  z-index: 3;

  display: flex;
  flex-direction: column;
}

.side-menu .tit {
  margin-top: 30px;
  margin-bottom: clamp(12px, 3.5vh, 30px);
}

/*
.navi{
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
*/
.navi {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/*
.navi-list{
  padding: 25px;

}
*/
.navi-list {
  padding-top: clamp(10px, 3.2vh, 25px);
  padding-right: 25px;
  padding-bottom: 25px;
  padding-left: 25px;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}
/*
.navi-list li {
	font-size: var(--t18);
	text-align: center;
	margin-bottom: 30px;
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal;
}
*/
.navi-list li {
  font-size: var(--t18);
  text-align: center;
  margin-bottom: clamp(12px, 3.5vh, 30px);
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal;
}

.navi-list li:last-child {
  margin-bottom: 0;
}

.side-link{
/*
  margin-top: auto;
  position: sticky;
  bottom: 0;
*/
  margin-top: auto;
}

.link-yoyaku a{
	background: #8B5C1D;
	display: flex;
	justify-content: center;
	align-items: center;
  height: clamp(45px, 8vh, 70px);
	color: #fff
}
.link-tel a{
	background: #314111;
	display: flex;
	justify-content: center;
	align-items: center;
  height: clamp(45px, 8vh, 70px);
	color: #fff
}

.menu_button {
	display: none;
}
@media (max-width:843px){
	.link-yoyaku a,
	.link-tel a{
		height: 49px;	
	}
    .side-menu{
        width: 100%;
        height: 60px;
        z-index: 99;
        overflow: visible;
      }
	
	.side-menu .tit{
  		margin:10px;
	}	

      .navi{
        position: fixed;
        top: 60px;
        left: 0;
        width: 100%;
        height: calc(100dvh - 60px);
        background: rgba(32,19,9,0.6);
		 backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px); 
        opacity: 0;
        visibility: hidden;
        transition: .4s;
        overflow-y: auto;
        min-height: auto;
      }
	
	.navi-list{
  		padding: 25px;
	}

  .navi.is-open{
    opacity: 1;
    visibility: visible;
  }
    .menu_button {
        position: absolute;
		top:5px;
		right: 0;
		z-index: 100;
        width: 50px;
        height: 50px;
        background: none;
        border: none;
        cursor: pointer;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }	
    .menu_line {
        position: absolute;
        left: 0;
        width: 30px;
        height: 1px;
        background-color: #fff;
        transition: all 0.4s ease;
    }	
	.menu_button span:first-of-type {
    	top: 17px;
		left:10px;
	}
	.menu_button span:nth-child(2) {
    	top: 25px;
		left:10px;
	}	
	.menu_button span:nth-child(3) {
    	top: 33px;
		left:10px;
	}	
    .menu_button.is-open span:nth-child(1) {
      transform: translateY(8px) rotate(45deg);
    }

    .menu_button.is-open span:nth-child(2) {
      opacity: 0;
    }

    .menu_button.is-open span:nth-child(3) {
      transform: translateY(-8px) rotate(-45deg);
    }	
}

/* --------------------------- TOP MV 
*/

.px_frame {
	position: -webkit-sticky; /* Safari用 */
	position: sticky;
	bottom: 0;
	left:  0;
}

.top-mv {
	position: relative;
	width: 100%;
/*	height: 100vh;*/
	height: 100dvh;
	background: var(--main-color);
}
.top-mv.px_frame {
	z-index: 2;
}
.top-about.px_frame{
	z-index: 1;
}


.top-pix.img-room.px_frame,
.top-pix.img-onsen.px_frame,
.top-pix.img-cuisine.px_frame
{
	width: 100%;
	height: 90dvh;	
	z-index: 2;
}
@media (max-width:843px){
.top-pix.img-room.px_frame,
.top-pix.img-onsen.px_frame,
.top-pix.img-cuisine.px_frame
{
	width: 100%;
	height: 200px;
	z-index: 2;
}	
}
.top-room,
.top-onsen,
.top-cuisine {
z-index: 1;
}



.mv-swiper,
.mv-swiper .swiper-wrapper,
.mv-swiper .swiper-slide {
  height: 100% !important;
}

.swiper-img {
  width: 100%;
  height: 100%;
}

.swiper-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.mv-title {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 4;
  width: 100%;
  margin: 0;
  text-align: center;
  transform: translate(-50%, -50%);
	color:#fff
}
.mv-logo {
	margin-bottom: 60px
}

.mv-read {
	color:#e4e4e4;
	font-size: var(--t21);
	line-height: 2;
}
.scroll-guide{
	position:absolute;
	left:50%;
	bottom:30px;
	transform:translateX(-50%);
	z-index:10;
}
@media (max-width:843px){
	.mv-title {
		display: flex;
		flex-flow: column;
		justify-content: center;
		align-items: center;
		height: 100%;
/*		border:1px solid #f00*/
	}
	.mv-logo {
/*
		position: absolute;
		top:80px;
		left: 10px;
*/
/*		border: 1px solid #f00*/
	}
	.mv-logo img {
		width: 23.2558vw;/*100 */
	}
	.mv-read {
/*		writing-mode: vertical-rl;*/
	}
	.mv-read span{
		margin-top: 1em;
	}
	.scroll-guide img{
/*		width: 10vw;*/
	}
}
.scroll-arrow{
	width:56px;
	height:87px;
}

.scroll-arrow rect{
	fill:#fff;
}
.scroll-line{
	transform-origin: top center;
	animation: drawLine 2s ease-in-out infinite;
}

.scroll-guide::after{
	content:"";
	position:absolute;

	left:50%;
	top:0;

	width:1px;
	height:20px;

	transform:translateX(-50%);

	background:linear-gradient(
		to bottom,
		rgba(255,255,255,0),
		rgba(255,255,255,1),
		rgba(255,255,255,0)
	);

	animation:scrollLight 2.5s ease-in-out infinite;
}

@keyframes scrollLight{

	0%{
		top:-20px;
		opacity:0;
	}

	15%{
		opacity:1;
	}

	85%{
		opacity:1;
	}

	100%{
		top:87px;
		opacity:0;
	}
}
.scroll-arrow{
	opacity:.7;
}
@media (max-width:834px){

	.scroll-arrow{
		width:32px;
		height:auto;
	}
.scroll-arrow{
	opacity:.9;
}	

}

/* -------------------- TOP ABOUT 
*/
.top-about {
/*		background: var(--bg);*/
		color: #fff;
	padding-left: 190px;
}
@media (max-width:834px){
	.top-about {
		padding-left: 0px;
	}
}
.top-about img {
	max-width:100%;
	height: auto
}
.top-about__wrap {
	display: flex;
	flex-flow: row;
	justify-content: space-between;
/*
	margin-left: auto;
	margin-right: auto;
*/
/*	border: 1px solid #f00;*/
	max-width: 1000px;
margin-inline:auto;	
}

.top-about__tit {
	font-size: var(--t21);
	font-weight: 600;	
	margin-bottom: 36px;
	
}
.top-about__txt {
	padding:80px 40px;
	font-size: var(--t16);/*t14 */
	line-height: 2.6;
	color: var(--blk);
}
.top-about__img {
	width:50%;
	background: url(../img/top_about_1.jpg) no-repeat;
	background-size: cover;
/*	border: 1px solid #f00*/
}
@media (max-width:843px){
	.top-about__read p {
		writing-mode: horizontal-tb;
	}
	.top-about__wrap {
		display: flex;
		flex-flow:column-reverse;
		background-blend-mode:multiply;
		background-image: url("../img/top_about_1.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-color: rgba(0,0,0,0.7);		
	}

	.top-about__txt {
		padding:40px 20px;
		text-align: center;
		color: var(--whi);
	}
	.top-about__read__sp {
		font-size: var(--t20);
		font-weight: 700;
		margin-bottom: 30px
	}
	.top-about__tit {
		margin-bottom: 18px;
	}
}

/* -------------------- TOP ONSEN
*/

.top-onsen.pdb100 {
	padding-bottom: 100px;/*170*/
}
.top-pix {
	height: 500px;
	background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;	
}
@media (max-width:843px){
	.top-pix {
		height: 200px;
	}
	.top-onsen.pbb100 {
/*	padding-bottom: 190px;*/
			padding-bottom: 90px;
	}	
}


.img-onsen {
	background-image: url("../img/top_onsen.jpg");
}
.fami {
	background-image: url("../img/onsen/fami_bg.jpg");	
}

.top-onsen__txt {
	max-width: 384px;/*420*/
	width:40%;
/*	border:1px solid #f0f;*/
	display: flex;
	flex-flow: column;
}
.btn-bottom {
	margin-top: auto;
}

.top-onsen__card {
	display: flex;
	flex-flow: row-reverse;
/*	border:1px solid #000;*/
/*	width:530px;*/
	width: 100%;
	background: #fff;
}.rev {
		flex-flow: row;
}

.top-onsen__card dt {
	width:120px;
/*	font-size: min(var(--t21),var(--t27));*/
	font-size: var(--t25);	
	font-weight: 400;
		writing-mode: vertical-rl;
	display: flex;
	flex-direction: column;
	justify-content: center;
	letter-spacing: 0.4em;
	padding-top: 30px;
	line-height: 1.5;
}
.top-onsen__card dt .sub {
	display: block;
/*	font-size: min(var(--t19),var(--t24));*/
	font-size: var(--t19);	
}
.men {color:#1E3380;}
.women{color:#801E1E;}
@media (max-width:843px){
	.top-onsen__txt {
		width: 100%;
	}
    .top-onsen__card {
        border-top: 1px solid #000;
    }
    .top-onsen__card.rev{
		 border-top: 0px solid #000;
        border-bottom: 1px solid #000;
    }
	.top-onsen__card dt {
		font-size: var(--t21);		
		padding-top: 15px;
	}
.top-onsen__card dt .sub {
	font-size: var(--t17);
		letter-spacing: 0.2em;
	}
}


/* -------------------- TOP ROOM 
*/
.top-room,
.top-onsen {
/*
	background-image: url("../img/top-room_cado.png");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 300px;
*/
	margin-left: 190px;
}
@media (max-width:843px){
.top-room,
.top-onsen{
/*
		background-position: top right;
		background-size: 50%;
*/
		margin-left: 0px;
/*	padding-top: 200px*/
	}
}

.top-onsen__wrap {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	max-width:1090px;
	width:100%;
/*	border:1px solid #f00;*/
/*	padding: 90px 50px 70px;*/
	padding: 90px 0px 0px 50px;	
/*
	margin-left: auto;
	margin-right: auto;
*/
	margin-inline:auto;	
	vertical-align: bottom
}
.oke {background-image: url("../img/oke.png");
	background-repeat: no-repeat;
	background-position: 30% 10%;
}
.yubune {background-image: url("../img/yubune.png");
	background-repeat: no-repeat;
	background-position: 100% 0%;
}
.yukata {background-image: url("../img/yukata.png");
	background-repeat: no-repeat;
	background-position: 30% 8%;
}
@media (max-width:843px){
	.oke {
		background-position: 95% 10%;
	}
	.yukata {
		background-position: 95% 5%;		
	}
}
.onsen_rev {
	flex-flow: row-reverse nowrap;
	padding: 90px 50px 0px 0px;	
}
.top-room__wrap {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	max-width:1090px;
	width:100%;
/*	border:1px solid #f00;*/
/*	padding: 90px 50px 70px;*/
	padding: 90px 50px 160px;	
/*
	margin-left: auto;
	margin-right: auto;
*/
	margin-inline:auto;	
	vertical-align: bottom
}


.top-room__wrap2 {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	max-width:1090px;
	width:100%;
/*	border:1px solid #f00;*/
/*	padding: 60px 50px 170px;*/
	padding: 40px 50px 120px;	
/*
	margin-left: auto;
	margin-right: auto;
*/
	margin-inline:auto;	
}

@media (max-width:843px){
	.onsen-hami {
		width: 100vw;
		margin: 0 calc(50% - 50vw) 40px;
	}
	.top-onsen__wrap {
		display: block;
		padding: 90px 25px 20px;		
	}
	.top-room__wrap {
		display: block;
		padding: 90px 25px 160px;
	}	
	.top-room__wrap2 {
		display: block;
		padding: 60px 25px 110px;
	}
}


.top-room__txt {
	max-width: 380px;
	width: 100%
}
@media (max-width:843px){
	.top-room__txt {
		max-width: auto;
		width: 100%;
		margin-bottom: 60px;
	}
}
.kei {
  border: 0;
  border-top: 1px solid currentColor;
  opacity: 1;
	max-width: 400px;	
}
.kei-sp {
  border: 0;
  border-top: 1px solid currentColor;
  opacity: 1;
	width: calc(90% + 25px);
	margin-left: -25px;
	margin-bottom: 20px;
}
.w70p {
	width:70%;
}

.img-room {
	background-image: url("../img/top_room.jpg");
}

.top-onsen__img{
	max-width:596px;
	width:58%;
/*	border:1px solid #f00;*/
}
.top-room__img{
	max-width:530px;
	width:50%;
/*	border:1px solid #f00;*/
}

@media (max-width:843px){
	.top-room__img,
	.top-onsen__img{
		max-width: none;
		width: 100vw;
		margin-left: calc(50% - 50vw);
	}
	.top-room__img {
		margin-bottom: 100px;
	}
}

.top-room__card {
	display: flex;
	flex-flow: row-reverse;
	border:1px solid #000;
/*	width:530px;*/
	width: 100%;
	background: #fff;
}
.top-room__card dt {
	width:120px;
	font-size: min(5vw,var(--t23));/*25*/
	font-weight: 400;
		writing-mode: vertical-rl;
	display: flex;
	align-items: center;
	letter-spacing: 0.3em;
	padding-top: 30px;
}
.top-room__card dt span{
	transform: rotate(-90deg);
	font-size: var(--t21);
	letter-spacing: -0.05em;
	margin-bottom: 0.5em
}
.top-room__card dd img {
/*
	width: 382px;
	height: 335px;
*/
	aspect-ratio: 382 / 335;
	object-fit: cover;
}
@media (max-width:834px){
	.top-room__card dt {
			padding-top: 20px;
	}
	.top-room__card dd img {
	aspect-ratio: 296 / 214;
	}
}

.link-circle {
width: 100%;	
/*	width:530px;*/
	display: block; /* inline-blockよりblockの方がカード幅いっぱいに広がって安定します */
	position: relative;
/*	 border: 1px solid #f00;*/
}

.link-circle::before {
	content: "";
	width: 80px;
	height: 80px;
	background: #744141;
	border-radius: 50%;
	position: absolute;
	
	/* マイナス指定で、カードの枠線の真上に半分ハミ出るように配置 */
	bottom: -40px; 
	right: 20px;
	
/*	z-index: 1;*/
}
.link-circle::after {
	content: "";
	position: absolute;
	/* 矢印のサイズと線の太さ */
	width: 20px;
	height: 20px;
	border-top: 2px solid #fff;  /* 上の線 */
	border-right: 2px solid #fff; /* 右の線 */
	
	/* 45度回転させて「＞」の形にする */
	transform: rotate(45deg);

	/* サークルの真ん中にジャストで配置するための計算 */
	/* サークル中心は bottom:-40px + 40px = 0px の位置 */
	bottom: -10px; 
	/* サークル中心は right:40px + 40px = 80px の位置。そこから矢印の幅の半分(約7px)左に戻す */
	right: 53px; 
}
@media (max-width:843px){
	.link-circle::before {
	content: "";
	width: 60px;
	height: 60px;
	position: absolute;
	bottom: -40px; 
	right: 20px;	
}
.link-circle::after {
	content: "";
	position: absolute;
	width: calc(60 * 0.25);
	height: calc(60 * 0.25);
	border-top: 2px solid #fff;  /* 上の線 */
	border-right: 2px solid #fff; /* 右の線 */

	bottom: calc(60 / 2); 
	right: calc(40px + 30px / 2);
	transform: translate(50%,50%) rotate(45deg);
	}	
}

/* 【超重要】Swiperのクリッピング（非表示）を防ぐ */
.swiper.room-swiper {
	overflow: visible !important; 
}
.swiper.room-swiper .swiper-slide {
	overflow: visible !important;
}

/* -------------------- TOP SPEND 
*/

.top-spend {
		background: #201309;
	margin-left: 190px;
}
@media (max-width:843px){
  .top-spend {
      margin-left: 0px;
  }	
}

.top-spend_h2_wrap {
	width:100%;
	height: 186px;
	background-image: url("../img/top_spend.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-color: rgba(0,0,0,0.4);
	background-blend-mode: darken;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 600
}
@media (max-width:843px){
	.top-spend_h2_wrap {
		height: 149px;
			background-image: url("../img/top_spend_sp.jpg");
	}
}
.top-spend_h2 {
	color: #fff;
	font-size: min(5.9vw,var(--t25));
	letter-spacing: 0.02em;
}

.spend-swiper {
	position: relative;
	max-width: 1090px;
/*	border:1px solid #f00;*/
}
.spend-swiper .swiper-navigation-container{
	position: absolute;
	left:9%;
	bottom:100px;	
/*	left:50px;*/
/*	bottom:10px;*/
/*	left:100px;	*/
/*	top:60%;*/
	width:200px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;	
}
@media (max-width: 1200px) /*1090*/{
.spend-swiper .swiper-navigation-container{
	position:relative;
/*		border:1px solid #f00;*/
	left:50%;
	transform: translateX(-50%);
	bottom:0px;	
	width:140px;
	padding: 25px 0;
	}
}

.spend-list {
	display: flex;
}

.spend-swiper .spend-pagination{
  position:static;
  width:auto;

  color:#fff;
}

.swiper-button-prev.spend-prev::before,
.swiper-button-next.spend-next::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff	
}
/* */
.spend-list__parent {
    display: grid;
	grid-template-columns: 4fr 6fr; /* 左40% : 右60% */
    grid-template-rows: auto 1fr;
    gap: 0px;
	max-height: 426px;
	color: #fff
}
.spend-list__tit{
	font-size: var(--t25);
	padding-top: 50px;
	padding-left: 25px;
/*	border: 1px solid #f00;*/
	padding-right: 70px;
}

.kei-spend {
  border: 0;
  border-top: 1px solid currentColor;
  opacity: 1;
/*	width: calc(80% + 25px);*/
/*	margin-left: -25px;*/
	margin-bottom: 20px;
}

.spend-list__txt{
/*	font-size: min(var(--t12),var(--t13));*/
	font-size: var(--t15);	/*14*/
	line-height: 2;
	position: relative;
	padding-left: 25px;
	padding-right: 15%;
/*	padding-right: 70px;*/
/*	border:1px solid #f00;*/
}		
.spend-list__img {
    grid-row: span 2 / span 2;
}

/* 📱 スマホ向け（画面幅768px以下のとき） */
/*
@media (max-width: 834px) {
.spend-swiper .swiper-navigation-container{
	position:static;
	left:0px;
	bottom:0px;
	width:100%;
	border:1px solid #f00;
}	
*/
@media (max-width: 767px) {
.kei-spend {
  border: 0;
  border-top: 1px solid currentColor;
  opacity: 1;
	width: 100%;
/*	margin-left: -25px;*/
	margin-bottom: 25px;
}	
	.spend-list__parent {
	grid-template-columns: repeat(2, 1fr); /* 50% : 50% の均等分割に戻す */
	}
    .spend-list__tit {
        grid-column: span 2 / span 2;
		padding-left:25px;
		padding-right:25px;
    }

    .spend-list__img {
        grid-row: auto; /* PC用の「縦2マス分突き抜ける」設定をキャンセル */
        grid-column-start: 2;
        grid-row-start: 2;
		padding:0 25px;
    }

    .spend-list__txt {
			font-size: var(--t13);	/*12*/
        grid-column-start: 1;
        grid-row-start: 2;
		padding-left: 25px;
		padding-right: 0px;
    }
	.spend-list__img > div {
	aspect-ratio: 160 / 160;
	overflow: hidden;		
	}
	.spend-list__img > div img {
		width: 100%;
	height: 100%;
	object-fit: cover;	
	object-position: bottom;	
	}
}

/* -------------------- TOP CUISINE 
*/

.top-cuisine {
/*
	background-image: url("../img/top-room_cado.png");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 300px;
*/
	margin-left: 190px;
}
@media (max-width: 834px) {
	.top-cuisine {
		margin-left: 0px;
	}
}
.img-cuisine {
	background-image: url("../img/top_cuisine.jpg");	
}
.top-cuisine__wrap {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	max-width:1090px;
/*	padding-bottom: 140px;*/
	margin-inline:auto;	
}
.top-cuisine__txt {
	padding-top: 100px;
	padding-left: 25px;
	padding-right: 25px;	
}
@media (max-width:843px){
	.top-cuisine__img {
		width: 100%;
/*		border: 1px solid #f00*/
	}

	.top-cuisine {
		background-position: top right;
		background-size: 50%;	
	}
	.top-cuisine__wrap {
		display: flex;
		flex-flow: column-reverse;
		padding-bottom: 120px;
	}
	.top-cuisine__txt {
	padding-top: 50px;

	}	
}

.img-wrap {
	max-width: 538px;
/*	aspect-ratio: 538 / 338;*/
	overflow: hidden;
	margin:auto;
}

.img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width:843px){

	.img-wrap {
		aspect-ratio: 430 / 210;
	}

}

/* -------------------- TOP PLAN 
*/
.top-plan {
	position:relative;
/*	background: #ccc;*/
	padding-inline:80px;
	margin-bottom: 80px;
	margin-left: 190px;
	padding-top: 140px;
}
@media (max-width:843px){
	.top-plan {
			padding-top: 0px;
		margin-left: 0px;
	}
}


.top-h2__plan {
	font-size: var(--t30);
	margin-bottom: 50px;
	font-weight: 600
}

.plan-swiper .swiper-slide {
	border:2px solid var(--main-color);
		background: #fff
}
.plan-swiper .swiper-wrapper{
	align-items: stretch;
}

.plan-swiper .swiper-slide{
	height: auto;
	display: flex;
}
.top-plan__txt .arrow {
	position: absolute;
	right: 20px;
	top: 14px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #744141;
	display: flex;
	align-items: center;
	justify-content: center;	
}
.top-plan__txt .arrow::after {
	content: "";
	width: 15px;
	height: 15px;

	border-top: 2px solid #fff;
	border-right: 2px solid #fff;

	transform: translateX(-2px) rotate(45deg);
}
.top-plan__card {
	
}
.top-plan__txt {
	padding: 20px 84px 20px 20px;
	position: relative;
}

.top-plan__sub {
	font-size: var(--t13);/*11*/
	margin-bottom: 16px;
}
.top-plan__tit {
	font-size: var(--t16);/*13*/
}
.top-plan__img{
	aspect-ratio: 293 / 267;
	overflow: hidden;
}

.top-plan__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.plan-slider-wrap{
	position: relative;
}

.plan-slider-wrap .swiper-navigation-container{
	position: absolute;
	top: 40%;
	left: -50px;
	right: -50px;
	transform: translateY(-50%);
	z-index: 10;
}
@media (max-width:843px){
  .plan-slider-wrap .swiper-navigation-container{
    left:0;
    right:0;
  }
}

.plan-slider-wrap .plan-prev,
.plan-slider-wrap .plan-next{
	position: absolute;
}

.plan-slider-wrap .plan-prev{
	left: 0;
}

.plan-slider-wrap .plan-next{
	right: 0;
}

.plan-pagination{
	margin-top: 20px;
	position: static;
}

@media (min-width: 834px){
	.plan-pagination{
		display: none;
	}
}
.plan-pagination .swiper-pagination-bullet{
	width: 10px;
	height: 10px;
	background: #ccc;
	opacity: 1;
	margin: 0 8px !important;
}

.plan-pagination .swiper-pagination-bullet-active{
	background: var(--main-color);
}

@media (max-width:843px){
	.top-plan {
		padding-inline:40px;
	}
.plan-slider-wrap .plan-prev{
	left: -13%;
}

.plan-slider-wrap .plan-next{
	right: -13%;
}	
}

.swiper-navigation-container {
/*
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 92%;
  max-width: 1100px;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
*/
}

.swiper-button-prev,
.swiper-button-next {
  width: 44px !important;
  height: 44px !important;
  pointer-events: auto;
  color: transparent !important;
  font-size: 0 !important;
  outline: none !important;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  display: none !important;
  content: none !important;
}

.swiper-button-prev::before,
.swiper-button-next::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
}

.swiper-button-prev::before {
  transform: translate(-30%, -50%) rotate(-135deg);
}

.swiper-button-next::before {
  transform: translate(-70%, -50%) rotate(45deg);
}

/* --------------------------- TOP ACCESS 
*/
.top-access {
/*	background: #fff;*/
	padding: 80px 0 120px;
	margin-left: 190px;
}
.top-access__wrap {
	max-width:550px;
	width:100%;
	margin-left: auto;
	margin-right: auto;
}
.top-access_h2 {
	font-size: var(--t29);
	margin-bottom: 50px;
	font-weight: 600
}

.top-map__wrap {
	margin-bottom: 100px;
}
@media (max-width:834px){
	.top-access {
			margin-left: 0px;
	}
  .top-map__wrap {
      margin-bottom: 80px;
  }	
}

.top-pickup {
	background: #fff;
	border: 1px solid #362525;
	max-width: 954px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding: 40px;
	display: flex;
	flex-flow: column;
	align-items: center
}
@media (max-width:834px){
	.top-pickup {
			padding: 20px;
	}
}

/* --------------------------- TOP INSTAGRAM
*/
.top-insta {
	background: var(--main-color);
	margin-left: 190px;
}
.top-insta__wrap {
	padding: 50px 0 70px;
}
.top-insta__h2 {
	font-size: var(--t29);
	color: #fff;
	margin-bottom: 30px;
}

/* GSAP */
/*
.box {
	opacity: 0;
}*/

/* top 共通 */
.top-h2 {
	font-size: var(--t30);
	color: var(--blk);
	font-weight: 700;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom:1px solid var(--blk);
}
.top-read {
  font-family: "Shippori Mincho", serif;
	font-size: var(--t18);
	font-weight: 600;
	line-height: 2.8;
	margin-bottom: 40px;
}
.top-txt {
/*	font-size: min(var(--t13),var(--t14));*/
	font-size: var(--t16);/*15*/
	line-height: 2;
}
.top-txt__md {
/*	font-size: min(var(--t14),var(--t15));*/
	font-size: var(--t16);	
	line-height: 2.5;
}
.top-txt__md b {
	font-weight: 600
}
@media (max-width:843px){
	.top-txt {font-size: var(--t15);}/*13*/
	.top-txt__md {font-size: var(--t16);}	/*14*/
    .top-insta {
        margin-left: 0px;
    }	
	.top-h2 {
	border-bottom:0px solid var(--blk);
			padding-bottom: 0px;
	}
	.top-txt,.top-txt__md {
		line-height: 2;
	}
	.top-read {
		font-size: var(--t17);
			margin-bottom: 20px;
			line-height: 2;
	}
	.top-txt.mb100 {
		margin-bottom: 70px;
	}
}

.btn-top {
	width:260px;/*350*/
	height: 60px;
	display: inline-flex;
	flex-flow: row;
	justify-content: center;
	align-items: center;
	background: var(--main-color);
	color: #fff;
	position: relative;
	font-size: 18px;
}
/*
.btn-top::after {
	content: "";
	position: absolute;
	inset: 0;
	width: calc(100% - 15px);	
	border: 1px solid var(--main-color);
	transform: translate(30px, 16px);
	z-index: -1;
}
*/
.btn-insta {
	width:260px;
	height: 48px;
	display: inline-flex;
	flex-flow: row;
	justify-content: center;
	align-items: center;
	background: #fff;
	color: #000;
}

.wide {
	height: 48px;
	max-width: 480px;
}
@media (max-width:843px){
	.btn-top {
	width:80%;
	height: 48px;
	}
}

/* insta */
.insta_list_loc {
	max-width: 790px;
	width: 90%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	gap: 34px;
	margin-left: auto;
	margin-right: auto;
}

.insta_list_loc li {
	width: calc((100% - 68px) / 3);
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.insta_list_loc li a {
	display: block;
	width: 100%;
	height: 100%;
}

.insta_list_loc .square-content {
	display: block;
	width: 100%;
	height: 100%;
}

.insta_list_loc img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width:843px) {
	.insta_list_loc {
		gap: 24px;
	}

	.insta_list_loc li {
		width: calc((100% - 24px) / 2);
	}
}

/* --------------------------- FOOTER 
*/
footer {
	margin-left: 190px
}
.footer__wrap {
	padding: 130px 0 0px;
}

.footer-link {
	display: none;
}
.btn-yoyaku {
	width:260px;
	height: 48px;
	display: inline-flex;
	flex-flow: row;
	justify-content: center;
	align-items: center;
	background: #8B5C1D;
	color: #fff;
	font-size: 18px;
}


@media (max-width:843px){
	footer {
			margin-left: 0px;
		padding-bottom: 50px;
	}
.footer-link {
	position: fixed; 
	left:0; 
	bottom:0; 
	display: flex; 
	flex-flow: row; 
	width: 100%; 
	z-index: 100;
}
	.footer-link div {
		width:50%;
		height: 50px;
	}
	.footer-link div:first-child {
		background: #ccc;
	}
	.footer-link div:last-child {
		background: #fff
	}	
	.footer-link div a{
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
	}
}

.footer-navi {
	display: flex;
	flex-flow: row nowrap;
	justify-content:center;
	gap:10px;
	max-width: 800px;
	width:90%;
	margin-left: auto;
	margin-right: auto;
}
.footer-navi li {
	border:1px solid #3e3e3e;
	width: calc((100% - 40px) / 5);
	position: relative
}
.footer-navi li::after {
	position: absolute;
	top:50%;
	right: 10px;
	transform: translateY(-50%) rotate(45deg);
	content: "";
	width:10px;
	height: 10px;
	border-top:1px solid #3e3e3e;
	border-right: 1px solid #3e3e3e;
}
.footer-navi li a {
	display: block;
	text-align: center;
	padding: 10px 35px;
	font-size: min(3.6vw,var(--t15))
}
@media (max-width:834px){
	.footer-navi {
			flex-flow: row wrap;
	}
.footer-navi li {
	border:1px solid #3e3e3e;
	width: calc((100% - 20px) / 2)
}	
}
.logo-wrap {
	margin-top: 40px;
/*	margin-bottom: 20px;*/
	padding-top: 20px;
	padding-bottom: 20px;	
	background: #fff
}
.dan-1 {
	text-indent: -1em;
	padding-left: 1em;
}