@charset "utf-8";


.fixed-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  pointer-events: none; /* 背景にマウスイベントを通さない */
  background-color: #3E433E;
}



/* 雲のアニメーション　マスク */
.mask-anime,
.mask-anime::before,
.mask-anime::after,
.mask-anime .mask-animeItem {
	height: auto;
	-webkit-mask: url(../imgs/index/cloud.png) left top / 0% 200% no-repeat;
	mask: url(../imgs/index/cloud.png) left top / 0% 200% no-repeat;
	transition: -webkit-mask 8s, mask 8s;
	transition-timing-function: cubic-bezier(.7,0,.3,1);
	will-change: -webkit-mask, mask;
	backface-visibility: hidden;
}
.mask-anime {
	z-index: 1;
	position: relative;
	/* background: #55396808; */
	-webkit-mask-image: url(../imgs/index/dolon.png);
	mask-image: url(../imgs/index/dolon.png);
	transition-duration: 3s;
}
.mask-anime::before {
	content: "";
	z-index: -1;
	position: absolute;
	inset: 0;
	/* background: #000000; */
	-webkit-mask-position: center left;
	mask-position: center left;
}

.mask-anime .mask-animeItem  {
	opacity: 0.8;
	mix-blend-mode: lighten;
	-webkit-mask-position: left top;
	mask-position: left top;
	pointer-events: none;
}

/* マスク　アクティブ */
.mask-anime.active,
.mask-anime.active::before,
.mask-anime.active .mask-animeItem {
	-webkit-mask-position: right 160% center 100%;
	mask-position: right 160% center 100%;
	-webkit-mask-size: 160% 120%;
	mask-size: 160% 120%;
	transition-timing-function: cubic-bezier(.3,1,.7,1);
}

.mask-anime.active::before {
	-webkit-mask-position: right 200% center 120%;
	mask-position: right 200% center 120%;
    -webkit-mask-size: 100% 160%;
	mask-size: 100% 250%;
}

.mask-anime.active .mask-animeItem  {
	-webkit-mask-position: right 350%  120%;
	mask-position: right 350% center 120%;
  mask-size: 160% 300%;
}
.mask-anime.active {
	transition-duration: .5s;
}


/* 2パターン */
.mask-anime02,
.mask-anime02::before,
.mask-anime02::after,
.mask-anime02 .mask-animeItem {
	height: auto;
	-webkit-mask: url(../imgs/index/cloud.png) left top / 0% 200% no-repeat;
	mask: url(../imgs/index/cloud.png) left top / 0% 200% no-repeat;
	transition: -webkit-mask 5s, mask 5s;
	transition-timing-function: cubic-bezier(.7,0,.3,1);
	will-change: -webkit-mask, mask;
	backface-visibility: hidden;
}
.mask-anime02 {
	z-index: 1;
	position: relative;
	/* background: #55396808; */
	-webkit-mask-image: url(../imgs/index/dolon.png);
	mask-image: url(../imgs/index/dolon.png);
	transition-duration: 1s;
}
.mask-anime02::before {
	content: "";
	z-index: -1;
	position: absolute;
	inset: 0;
	/* background: #000000; */
	-webkit-mask-position: center left;
	mask-position: center left;
}
.mask-anime02 .mask-animeItem  {
	opacity: 0.8;
	mix-blend-mode: lighten;
	-webkit-mask-position: left top;
	mask-position: left top;
	pointer-events: none;
}

/* マスク　アクティブ */
.mask-anime02.active,
.mask-anime02.active::before,
.mask-anime02.active .mask-animeItem {
	-webkit-mask-position: right 160% center 100%;
	mask-position: right 160% center 100%;
	-webkit-mask-size: 160% 120%;
	mask-size: 160% 120%;
	transition-timing-function: cubic-bezier(.3,1,.7,1);
}
.mask-anime02.active::before {
	-webkit-mask-position: right 200% center 120%;
	mask-position: right 200% center 120%;
    -webkit-mask-size: 100% 160%;
	mask-size: 100% 250%;
}
.mask-anime02.active .mask-animeItem  {
	-webkit-mask-position: right 350%  120%;
	mask-position: right 350% center 120%;
  mask-size: 160% 300%;
}
.mask-anime02.active {
	transition-duration: 10s;
}

.pararax1-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden; /* 画像のはみ出し部分を隠す */
}






/*===================
fv
===================*/
.fv {
  position: relative;
  overflow-x: hidden;
  height: 100vh;
  z-index: 1;
}

.fv-swiper {
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
}
.fv-swiper .swiper-slide img {
  height: 100vh;
  width: 100%;
  object-fit: cover;
}
.fv-swiper__img--sp {
  display: none;
}
.fv__logoWrap {
}
.fv__logo {
  width: 100%;
  max-width: 57px;
  position: absolute;
  top: 51.2%;
  left: 10.3%;
  -webkit-transform: translateY(-51.2%);
  -ms-transform: translateY(-51.2%);
  -moz-transform: translateY(-51.2%);
  -o-transform: translateY(-51.2%);
  z-index: 2;
}

.fv__textWrap {
  width: auto;
  position: absolute;
  bottom: 3.9%;
  left: 3.1%;
  z-index: 2;
}
.fv__text {
  color: #fff;
  /* font-family: "Inter", sans-serif; */
  font-size:11px;
  line-height: 1.77;
  letter-spacing: 0.04em;
}

/* スクロールバー */
/* スクロールダウンの位置 */
.scroll {
  position: absolute;
  right: 4.2%;
  bottom: 76px;
  writing-mode: vertical-rl;
  z-index: 1;
}
/* 線のアニメーション部分 */
.scroll::before {
  animation: scroll 2s infinite;
  background-color: #575757;
  bottom: -75px;
  content: "";
  height: 64px;
  left: 2px;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
  z-index: 2;
}
/* 線の背景色 */
.scroll::after {
  background-color: #ccc;
  bottom: -75px;
  content: "";
  height: 64px;
  left: 2px;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
}
/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.scroll__text {
  color: #fff;
  font-family: "Inter", sans-serif;
  font-size:11px;
  line-height: 1;
  letter-spacing: 0.04em;
  position: relative;
  top: 42px;
  right: 10px;
}
/* スクロールバー */

/*===================
concept
===================*/
.concept{
  position: relative;
}
.concept::after{
  content: '';
  display: block;
  position: absolute;
  top: -100px;
  left: 0;
  width: 100%;
  height: 200px;
  /* background: linear-gradient(#eeedea00,#eeedea); */
  z-index: 0;
}




.bg-slide__overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0);
  opacity: 1;
  /* transition: 3s; */
  z-index: 200;
  pointer-events: none;
  width: 100%;
  height: 100vh;
  z-index: 0;
}

.bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.8s ease;
  z-index: -1;
  transform: scale(1.2);
}

.bg.bg_01 {
  background-image: url('../imgs/index/intro_slide01.jpg?v=2');
}
.bg.bg_02 {
  background-image: url('../imgs/index/intro_slide02.jpg?v=2');
}

.bg.show {
  opacity: 1;
  animation: fadeZoomOut 20s ease forwards;
}

/* 追加するアニメーション定義 */
@keyframes fadeZoomOut {
  from {
    transform: scale(1.2);
  }
  to {
    transform: scale(1);
  }
}




.intro__text-wrap {
  width: 100%;
  max-width: 513px;
  margin: 500px auto 0;
  position: relative;
  z-index: 2;
  padding: 28vh 0 21.3vh 0;
  overflow: hidden;
}
.intro__text-wrap.flex-column{
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 45px;
}
.intro__textBox{
   display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 45px;
  width: fit-content;
}
.intro__heading {
  padding-left: 100px;
  color: #fff;
  font-size: 35px;
  height: auto;
  position: absolute;
  top: 126px;
  right: 30px;
  line-height: 1.75;
  letter-spacing: 0.24em;
}

.intro__text {
  color: #fff;
  font-size: 18px;
  line-height: 2.44;
  letter-spacing: 0.06em;
  width: fit-content;
}
.intro__text.pdb01 {
  padding-bottom: 200px;
}

/* story */
.story {
  /* padding-bottom: 103px; */
}
.story__wrap {
  position: relative;
  padding-top: 173px;
  /* padding-bottom: 37px; */
}
.story .vertical__titleWrap{
   position: absolute;
  top: 173px;
  /* left: 103px; */
  left: 8.046vw;
}
.story .vertical__title {
 
}
.story__contents01 {
  /* max-width: 1199px; */
  margin: 0  0  0 auto;
  padding-left: 22px;
  padding-bottom: 186px;
}
.story__contents02 {
  /* max-width: 1118px; */
  width: 100%;
  padding: 0 22px;
  margin: auto;
  padding-bottom: 207px;
}
.story__contents03{
   /* max-width: 1118px; */
  width: 100%;
  padding: 0 22px;
  margin: 0 auto;
  /* padding-bottom: 200px; */
}
.story__contents01 .column-outside-right {
  margin-right: 0;
  margin-left: 0;
  display: block;
}
.story__contents02 .column-outside-left {
  
  margin-left: 6.328vw;
  margin-right: 13.125vw;
  display: block;
}
.story__contents03 .column-outside-right {
  margin-right: 6.25vw;
  margin-left: 13.125vw;
  display: block;
}
.story__contentsWrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.story__contentsWrap.reverse {
  flex-direction: row-reverse;
}
.story__contents02 .story__contentsWrap{
  width: 100%;
    align-items: center;
}
.story__contents03 .story__contentsWrap{
  width: 100%;
  align-items: start;
  padding-bottom: 218px;
}
.story__contentsImg {
  width: calc(100% - 356px);
  max-width: 47.7%;
  position: relative;
}
.story__contentsImg-text{
    position: absolute;
    bottom: 3px;
    left: 3px;
    z-index: 5;
    color: #fff;
    font-size: 12px;
   backdrop-filter: blur(4px);
}
.story__contents02 .story__contentsImg {
  width: calc(100% - 399px );
  /* max-width: 499px; */
  max-width: 50.6%;
  position: relative;
}
.story__contents03 .story__contentsImg {
  width: calc(100% - 356px);
  /* max-width: 497px; */
  max-width:50.1%;
  position: relative;
}
.story__contentsImg03 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 25.78vw;
  height: 28.12vw;
}
.story__contents01 .story__contentsText {
  width: 356px;
  /* margin-left: 87px; */
  margin-left: 13.125vw;
}
.story__contents02 .story__contentsText {
  width: 399px;
  margin-left: 3%;
  /* padding-top: 8.6%; */
}
.story__contents03 .story__contentsText {
  width: 356px;
  margin-right: 3%;
  padding-top: 88px;
}
.story__contents-heading {
  font-size: 34px;
  margin-bottom: 40px;
  line-height: 1.64;
}
.story__contents02 .story__contents-heading {
  margin-bottom: 45px;
}

.story__contents-detail {
  font-size: 16px;
  line-height: 2.37;
  letter-spacing: 0.02em;
}

/* origin */
.origin {
 /* padding-bottom: 240px; */
 padding-bottom: 12.75vw;
 position: relative;
}
.bg--mountain{
  /* padding-top: 220px; */
  position: absolute;
  width: 100%;
  height: 100%;
  top: -16.25vw;
  left: 0;
 
}
.bg--mountain .bg_img{
    display: block;
 width: 100%;
  height: calc(100% + 16.25vw);
 background: url("../imgs/index/mountain_bg.png?v=2") center top  / cover no-repeat;
}
.origin__wrap {
  padding-top: 377px;
  /* padding-top: 17.18vw; */
  width: 100%;
  margin: 0 auto;
}
.origin__Textwrap{
  margin-top: 140px;
  width: 100%;
  min-height: 440px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: row-reverse;
}
.origin__rogo{
  /* width: clamp(28px,2.656vw,34px); */
  width: clamp(253px,33.12vw,424px);
  margin: 0 auto;
}

.origin__title{
  /* width: 90px; */
  padding-top: 30px;
  width: 140px;
 /* padding-left: min(8.125vw,90px); */
 padding-left: 90px;
 height: 100%;
}
/* .origin__title {
  color: #fff;
  font-size: 30px;
  margin-bottom: 65px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  line-height: 1.53;
  letter-spacing: 0.06em;
}
.origin__title-flex {
  padding-left: 10px;
  padding-right: 5px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.origin__title--sml {
  font-size: 13px;
  padding-top: 2px;
  line-height: 1;
  letter-spacing: -0.04em;
} */
.origin__text {
  /* margin-top: 80px; */
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #fff;
  font-size: 16px;
  /* line-height: 3.437; */
  line-height: 3;
  letter-spacing: 0.02em;
}
 .origin__text:not(:last-child){
    margin-left: 2em;
  }
.origin__text--cent{
  line-height: 1.5;
  padding-bottom: 5px;
  writing-mode: horizontal-tb;
  letter-spacing: 0.4em;
}
/*===================
room
===================*/
.room {
  padding-bottom: 150px;
}
.room .section__mainWrap {
    padding-top: 160px;
  }
.room__historyWrap {
  overflow: hidden;
  padding-top: 130px;
  padding-bottom: 141px;
}
.room__historyWrap .inner-1024 {
  max-width: 1024px;
  padding: 0 22px;
  margin: auto;
}
.room__historyContents {
  display: flex;
  justify-content: space-between;
}
.room__historyContents-text {
  width: 327px;
  /* width: calc(100% - 708px);
  max-width: 30%; */
  padding-top: 11px;
}
.room__historyContents-text p {
  font-size: 16px;
  line-height: 2.37;
  letter-spacing: 0.02em;
}
.room__historyContents-text p:not(:last-child) {
  margin-bottom: 43px;
}
.room__historyContents-img {
  width: calc(100% - 395px);
  max-width: 57.8%;
  position: relative;
}
.room__historyLink {
  width: 100%;
  max-width: 427px;
  margin-top: 100px;
  margin-left: 10.7%;
  padding: 17px 10px;
  background-color: #e3e1dc;
}
.room__historyLink-text {
  font-size: 14px;
  text-align: center;
  line-height: 2.14;
  letter-spacing: 0.02em;
}
.room__historyLink-btn {
  display: inline-block;
  position: relative;
}
.room__historyLink-btn::after {
  position: absolute;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #716148;
  bottom: -1px; /*アンダーラインがaタグの下端から現れる*/
  transform: scale(0, 1); /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
  transform-origin: left top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
  transition: transform 0.3s; /*変形の時間*/
}
.room__historyLink-btn:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
}

.room__aboutWrap {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding-bottom: 70px;
}
.room__about-heading {
  padding-bottom: 17px;
  margin-bottom: 29px;
  border-bottom: 1px solid #716148;
}
.room__aboutFlex {
  width: calc(100% - 60px);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.room__about-text {
  width: 48.5%;
  max-width: 395px;
}
.room__about-text span {
  display: block;
  margin-bottom: 26px;
}

.room__slide02{
  padding: 0 22px 100px 22px;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
.room-swiper .swiper-wrapper{
  padding-bottom: 30px;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
  bottom: 0;
  left: auto;
  right: 0;
}
.swiper-pagination{
  text-align: right;
}
.swiper-pagination-bullet{
  background: none;
  border:1px solid #716148;
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 10px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 10px));
}
.swiper-pagination-bullet-active{
  background: #716148;
}

/* .room__slide {
  margin-top: 162px;
  margin-bottom: 90px;
  align-items: flex-start !important;
  position: relative;
  z-index: 2;
}
.room__slide-list{
  display: flex;
  height: 468px;
}
.room__slide-item{
  margin-right: 54px;
}
.room__slide-item--1{
  margin-top: 24px;
  margin-bottom:148px;
  width: 348px;
  height: 296px;
}
.room__slide-item--2{
  margin-top: 117px;
  margin-bottom: 55px;
  width: 348px;
  height: 296px;
}
.room__slide-item--3{
  margin-top: 0px;
  margin-bottom: 112px;
  width: 386px;
  height: 356px;
}
.room__slide-item--4{
  margin-top: 155px;
  margin-bottom: 0;
  width: 310px;
  height: 313px;
}
.room__slide-item--5{
  margin-top: 55px;
  margin-bottom:57px;
  width: 389px;
  height: 356px;
}

body:not(.loaded) .room__slide-img {
  display: none; 
}
.room__slide-img {
  opacity: 0;
  transition: all 6s;
  -ms-filter: blur(6px);
  filter: blur(6px);
  visibility: hidden;           
  will-change: opacity, transform;
  
}
.room__slide-img.show {
  opacity: 1;
  -ms-filter: blur(0);
  filter: blur(0);
  visibility: visible;          
} */

/* マスクをかけられない為、他と見た目を揃える為に薄くしています */
.accordion{
  opacity: .8;
}

.room__points{
    width: 100%;
    max-width: 900px;
    margin: 85px auto 0; 
}
.room__points-text{
  width: calc(100% - 60px);
  margin:  0 auto;
}
.room__detail-heading {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
.room__detail-text {
  font-size: 14px;
  font-family: "Inter", sans-serif;
  line-height: 1.85;
  letter-spacing: 0.02em;
}
.room__detail-text02 {
  width: calc(100% - 60px);
  margin: 0 auto;
}

/*===================
宿泊予約はこちらから
===================*/
.reservation {
  padding-top: 123px;
  padding-bottom: 120px;
}
.reservation__wrap {
  width: calc(100% - 32px);
  margin: 0 auto;
}
.reservation__text {
  margin-top: 10px;
  color: #fff;
  font-size: 14px;
  text-align: center;
  line-height: 1.42;
}
.reservation__btn {
  color: #fff;
  font-size: 18px;
  text-align: center;
  display: block;
  width: 100%;
  max-width: 357px;
  padding: 20px 10px;
  margin: 0 auto;
  border: 1px solid #fff;
  background-color: #3e433e;
  line-height: 2.27;
  letter-spacing: 0.02em;
  transition: background-color 0.3s;
}
.reservation__btn:hover {
  color: #3e433e;
  background-color: #fff;
}
.reservation__btn span {
  font-size: 14px;
  text-align: center;
  display: block;
  line-height: 1.42;
  letter-spacing: -0.02em;
}

/*===================
dining
===================*/
.dining {
  padding-bottom: 124px;
}

.dining .section__mainWrap {
  padding-top: 178px;
}
.dining__detailWrap {
  width: calc(100% - 44px);
  max-width: 900px;
  padding-top: 103px;
  margin: 0 auto 63px;
  display: flex;
  justify-content: space-between;
}
.dining__detailLft {
  width: calc(100% - 290px);
  max-width: 500px;
}
.dining__detail-heading {
  font-size: 30px;
  margin-bottom: 32px;
  line-height: 1.6;
}
.dining__detail-text {
  font-size: 16px;
  line-height: 2.37;
  letter-spacing: 0.02em;
}
.dining__detailRgt {
  width: 270px;
  padding-top: 117px;
}
.dining__use-heading {
  font-size: 18px;
  font-weight: 500;
  position: relative;
  margin-bottom: 22px;
  line-height: 1.66;
  letter-spacing: 0.06em;
}
.dining__use-heading::before {
  content: "";
  display: block;
  width: 21px;
  margin-bottom: 13px;
  height: 0.5px;
  background-color: #EEEDEA;
}
.dining__use-text {
  font-size: 14px;
  font-family: "Inter", sans-serif;
  line-height: 1.85;
  letter-spacing: 0.02em;
}

.dining__slide {
  align-items: flex-start !important;
  padding-bottom: 56px;
  position: relative;
  z-index: 2;
}
.dining__slide02 {
  margin-bottom: 125px;
}
.dining__slide-list {
  display: none;
}
.dining__slide-list02 {
  align-items: flex-start !important;
  display: none;
}
.dining__slide-item {
  width: 100%;
  max-width: 368px;
  margin-right: 28px;
}
.dining__slide-item img {
  display: block;
  padding-bottom: 17px;
}
.dining__slide-text {
  font-size: 14px;
  font-family: "Inter", sans-serif;
  line-height: 1.57;
  letter-spacing: 0.02em;
}
.dining__slide-bg {
  width: 100%;
  padding: 129px 0;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #e3e1dc;
  z-index: -1;
}

.dining__setWrap {
  max-width: 1025px;
  padding: 202px 22px 0;
  margin: auto;
  padding-bottom: 157px;
}
.dining__contentsWrap {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.dining__contentsText {
  width: 460px;
  padding-top: 9px;
}
.dining__contents-heading {
  font-size: 30px;
  margin-bottom: 33px;
  line-height: 1.6;
}
.dining__contents-detail {
  font-size: 16px;
  margin-bottom: 40px;
  line-height: 2.37;
  letter-spacing: 0.02em;
}
.dining__setWrap .dining__use-text {
  margin-bottom: 48px;
}
.dining__setDetail {
  width: 100%;
  max-width: 432px;
  padding: 32px 35px 27px;
  background-color: #e3e1dc;
}
.dining__setDetail-heading {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 16px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
.dining__setDetail-text {
  font-size: 14px;
  font-family: "Inter", sans-serif;
  line-height: 1.85;
  letter-spacing: 0.02em;
}

.dining__contentsImg {
  width: calc(100% - 480px);
  max-width: 48.6%;
  max-height: 661px;
  position: relative;
}




/*===================
experience
===================*/
.experience {
  padding-bottom: 171px;
  /* background-color: #fff; */
}
.experience .section__mainWrap {
  padding-top: 242px;
}
.experience .section__mainText {
  padding-top: 160px;
}
.experience__text {
  color: #767e76;
  font-size: 16px;
  text-align: center;
  padding-top: 127px;
  padding-bottom: 170px;
  line-height: 2.37;
  letter-spacing: 0.02em;
}
.experience__wrap {
}
.experience__contents:first-child {
  margin-bottom: 200px;
}
.experience__heading {
  color: #767e76;
  font-size: 52px;
  text-align: center;
  position: relative;
  padding-bottom: 34px;
  margin-bottom: 40px;
  line-height: 1;
  letter-spacing: 0.06em;
}
.experience__heading-line::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 3;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -o-transform: translateX(-50%);
}
.experience__heading-line01::after {
  width: 126px;
  height: 18px;
  background: url("../imgs/index/experience_list_deco01.png") center center / cover no-repeat;
}
.experience__heading-line02::after {
  width: 127px;
  height: 15px;
  background: url("../imgs/index/experience_list_deco02.png") center center / cover no-repeat;
}
.experience__contents .experience__text {
  margin-bottom: 90px;
  padding: 0;
}
.experience__list {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 91px 26px;
}
.experience__list-item {
  width: calc((100% - 78px) / 4);
  max-width: 205px;
  position: relative;
}
.option-icon {
  position: absolute;
  top: -6px;
  left: -6px;
}
.option-icon div {
  color: #fff;
  font-size: 15px;
  font-weight: 500;
  width: 91px;
  padding-left: 10px;
  position: relative;
  line-height: 1.6;
  letter-spacing: 0.02em;
  background-color: #9f7c53;
}
.option-icon div::after {
  content: "";
  display: block;
  width: 13px;
  height: 24px;
  background: url("../imgs/index/icon_option.png") center center / cover no-repeat;
  position: absolute;
  top: 0;
  right: -13px;
}
.experience__list-img {
  width: 100%;
  max-width: 205px;
  height: auto;
  padding-top: 125%;
  margin: 0 auto 18px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* wp化のとき削除↓ */
.experience__list-item:nth-child(1) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-1.jpg);
}
.experience__list-item:nth-child(2) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-2.jpg);
}
.experience__list-item:nth-child(3) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-3.jpg);
}
.experience__list-item:nth-child(4) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-4.jpg);
}
.experience__list-item:nth-child(5) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-5.jpg);
}
.experience__list-item:nth-child(6) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-6.jpg);
}
.experience__list-item:nth-child(7) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-7.jpg);
}
.experience__list-item:nth-child(8) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-8.jpg);
}
.experience__list-item:nth-child(9) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-9.jpg);
}
.experience__list-item:nth-child(10) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img01-10.jpg);
}

.experience__list02 .experience__list-item:nth-child(1) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img02-1.jpg);
}
.experience__list02 .experience__list-item:nth-child(2) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img02-2.jpg);
}
.experience__list02 .experience__list-item:nth-child(3) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img02-3.jpg);
}
.experience__list02 .experience__list-item:nth-child(4) .experience__list-img {
  background-image: url(../imgs/index/experience_list_img02-4.jpg);
}
/* wp化のとき削除↑ */

.experience__list-title {
  color: #767e76;
  font-size: 20px;
  margin-bottom: 13px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.experience__list-text {
  color: #767e76;
  font-size: 14px;
  font-family: "Inter", sans-serif;
  line-height: 1.85;
  letter-spacing: 0.02em;
}

/*===================
tour
===================*/
.tour {
  padding-top: 97px;
  padding-bottom: 113px;
  background: url(../imgs/index/tour_bg.jpg) center center / cover no-repeat;
}
.tour__wrap {
  width: 100%;
  max-width: 988px;
  margin: 0 0 0 auto;
  display: flex;
  justify-content: space-between;
}
.tour__wrap.sp{
  display: none;
}
.tour__textWrap {
  width: 364px;
}
.tour__textWrap-heading {
  color: #EEEDEA;
  font-size: 30px;
  margin-bottom: 59px;
  line-height: 1.6;
}
.tour__textWrap-text {
  color: #EEEDEA;
  font-size: 14px;
  font-family: "Inter", sans-serif;
  margin-bottom: 44px;
  line-height: 1.85;
  letter-spacing: 0.02em;
}
.tour__wrap .dining__use-heading,
.tour__wrap .dining__use-text {
  color: #EEEDEA
}
.tour__wrap .dining__use-heading {
  margin-bottom: 5px;
}
.tour__imgWrap {
  width: calc(100% - 384px);
  max-width: 538px;
  padding-top: 12px;
}


/*===================
bird
===================*/
.bird{
   padding-top: 97px;
  padding-bottom: 113px;
  background: url(../imgs/index/tour_bg-brown.jpg) center center / cover no-repeat;
   color: #EEEDEA;
}
.bird .tour__wrap {
  flex-direction: row-reverse;
}
.tour__wrap--bird{
  padding-top: 30px;
}
.bird .tour__textWrap-heading{
  line-height: 1.4;
  margin-bottom: 15px;
  color:#EEEDEA ;
}

.bird__text--soon{
  font-size: 16px;
  margin-bottom: 35px;
}
.bird__text{
    font-size: 14px;
    font-family: "Inter", sans-serif;
    margin-bottom: 30px;
    line-height: 1.85;
    letter-spacing: 0.02em;
}
.bird__list{
  position: relative;
}
.bird__list::before {
    content: "";
    display: block;
    width: 21px;
    margin-bottom: 13px;
    height: 0.5px;
    background-color: #FFFFFF;
}
.bird__item{
  font-size: 14px;
  font-family: "Inter", sans-serif;
  line-height: 1.85;
  letter-spacing: 0.02em;
}

.bird .tour__imgWrap{
  position: relative;
}
.bird .tour__imgWrap::after{
  content: '';
  background: url(../imgs/index/tour_rekkaLogo.png) center center / contain no-repeat;
  width: 20%;
  height: 11%;
  position: absolute;
  bottom: 10px;
  left: 10px
}

.insta__btnBox.tour__insta{
  margin: 20px 0 0 0;
}
.tour__insta a{
  color: #EEEDEA;
  margin: 0;
  opacity: 0.8;
}
.tour__insta a:hover{
  opacity: 0.4;
}


/*===================
sightseeing
===================*/
.sightseeing {
  padding-bottom: 267px;
  /* background-color: #fff; */
}
.sightseeing .section__mainWrap {
  padding-top: 219px;
}
.sightseeing .section__mainText {
  padding-top: 150px;
}
.sightseeing__contents {
  padding-top: 165px;
  position: relative;
  width: 100%;
  /* max-width: 1075px; */
  margin: 0 auto;
}
.sightseeing__contents .inner-1200 {
  width: calc(100% - 22px);
  margin: 0 auto 0 0;
}


.sightseeing__contents-wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 988px;
  margin: 0 auto 0 0;
}
.sightseeing__contentsImg {
  width: calc(100% - 398px);
  max-width: 498px;
}
.sightseeing__contentsText {
  width: 438px;
  padding-top: 20px;
}

.sightseeing__contentsText-heading {
  font-size: 30px;
  margin-bottom: 29px;
  line-height: 1.6;
}
.sightseeing__contentsText-text {
  font-size: 16px;
  line-height: 2.37;
  letter-spacing: 0.02em;
}
.sightseeing__contentsImg02 {
  width: 390px;
  position: absolute;
  bottom: 0;
  right: 0;
}

.sightseeing__contentsMap{
  padding-top: 20px;
  width: fit-content;
  margin-right: auto;
  border-bottom:1px solid #716148;
}

.sightseeing__contentsMap-link{
  font-size: 18px;
  color: #716148cf;
  line-height: 2;
  position: relative;
  display: block;
  transition: 0.5s;
  z-index: 1;
}

.sightseeing__slide {
  /* margin-top: 162px;
  margin-bottom: 90px; */
  max-width: 100%;
  height: 615px;
  /* align-items: flex-start !important; */
  display: block;
  position: relative;
  z-index: 2;
}
.infiniteslide_wrap{
  height: 100%;
}
.sightseeing__slide-list{
  display: flex;
  align-items: start!important;
  height: 615px;
}
.sightseeing__slide-item{
  /* margin-right: 54px; */
  /* margin-right: 4.218vw; */
  margin-right: 2%;
}
body:not(.loaded) .sightseeing__slide-img {
  display: none; /* 完全にDOMから隠す */
}
.sightseeing__slide-img {
  opacity: 0;
  transition: all 6s;
  -ms-filter: blur(6px);
  filter: blur(6px);
  visibility: hidden;
  will-change: opacity, transform;
}
.sightseeing__slide-item {
  /* margin-right: 12.5vw; */
}
.sightseeing__slide-item--1{
  width:390px;
  margin-top:84px;
  margin-bottom: auto;
}
.sightseeing__slide-item--2{
  width: 520px;
  margin-top: 234px;
}

.sightseeing__slide-item--3{
  width:390px;
  margin-top: 70px;
}
.sightseeing__slide-item--4{
  width: 390px;
  margin-top: 280px;
  
}
.sightseeing__slide-item--5{
  width: 534px;
  margin-top:0;
}
.sightseeing__slide-item--6{
  width:355px;
  margin-top: 240px;
}
.sightseeing__slide-item--7{
  width: 390px;
  margin-top: 30px;
}
.sightseeing__slide-item--8{
  width: 539px;
  margin-top: 60px;
}

.sightseeing__slide-img.show {
  opacity: 1;
  -ms-filter: blur(0);
  filter: blur(0);
  visibility: visible;          
}
.sightseeing__slide-img p{
  padding-top: 10px;
  font-size: 16px;
}

/*===================
message
===================*/
.message {
  padding-top: 154px;
  padding-bottom: 215px;
}
.message .sec-titleWrap {
  margin-bottom: 92px;
}
.message__text {
  width: 100%;
  max-width: 562px;
  margin: 0 auto;
  font-size: 17px;
  letter-spacing: 0.02em;
  line-height: 2.6;
  color: #716148;
}

/*===================
insta
===================*/
.insta__wrap {
  padding-top: 135px;
  padding-bottom: 125px;
}
.insta__catch {
  margin-bottom: 85px;
  text-align: center;
  font-size: 20px;
  line-height: 2;
}
.insta__slid {
  margin-bottom: 86px;
}
.scroll1 {
  display: none;
}
.scroll1__item {
  margin-right: 23px;
  width: 332px;
}
.insta__btnBox {
  width: 125px;
  margin: 0 auto;
  /* position: absolute; */
  /* top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); */
  border-bottom: 1px solid #71614891;
}
.insta__btn {
  font-size: 18px;
  color: #716148;
  line-height: 2;
  position: relative;
  display: block;
  transition: 0.5s;
  z-index: 50;
}
.insta__btn::after {
  content: "";
  background: url(../imgs/index/link-anc.png) center center / contain no-repeat;
  width: 6px;
  height: 8px;
  position: absolute;
  right: 2px;
  top: 50%;

  transition: all 0.2s;
}
.insta__btn:hover::after {
  right: 0;
}

/*===================
 access
===================*/
.access {
  padding-top: 165px;
  padding-bottom: 168px;
}
.access .sec-titleWrap {
  margin-bottom: 116px;
}
.access__mapWrap {
  margin-bottom: 142px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5%;
}
.accsess__map {
  position: relative;
  width: 50%;
  padding-top: 36%;
}
.accsess__map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
}
.access__address {
  width: 50%;
  width: 370px;
  margin-right: 7.25%;
  margin-bottom: 32px;
  font-family: "Shippori Mincho", serif;
  font-size: 17px;
  line-height: 2.2;
  letter-spacing: 0.02em;
}
.access__address .address__map-btn {
  color: #716148;
  font-size: 17px;
  width: 180px;
}
.access__address .address__map-img {
  width: 13px;
  height: 18px;
  margin-right: 10px;
}
.access__address-text{
  margin-bottom: 60px;
  font-size: 16px;
}
.access__address-text:nth-child(2n){
  margin-bottom: 0;
}
.access__address-text--sp{
  display: none;
}
.access__chartTitle {
  margin-bottom: 80px;
  font-size: 20px;
  text-align: center;
  color: #716148;
  letter-spacing: 0.02em;
}
.access__chart-img {
  max-width: 486px;
  width: 100%;
  margin: 0 auto 108px;
}
.access__parking-text {
  font-size: 16px;
  line-height: 2.4;
  letter-spacing: 0.02em;
  text-align: center;
}



@media screen and (max-width: 1280px) {
  /*===================
concept
===================*/

  /* story */
  .story__contentsImg02 {
    width: 33.828vw;
    height: 25.781vw;
  }
  .story__contents02 .column-outside-left{
    margin-right: 5vw;
  }

  /*===================
sightseeing
===================*/
  .sightseeing__contents {
    /* padding-bottom: 21.953vw; */
  }
  .sightseeing__contentsImg02 {
    width: 30.468vw;
  }



}

@media screen and (max-width: 1080px) {
  /* .origin__text{
  line-height: 2.5;
} */
 /* .origin__text:not(:last-child){
    margin-left: 1.5em;
  } */
}
@media screen and (max-width: 1020px) {
   /*===================
concept
===================*/
  .story__contents02 .column-outside-left {
        margin-right: 2vw;
    }

   /*===================
sightseeing
===================*/
  .sightseeing__contentsText{
    margin-left: 5vw;
  }
  .sightseeing__contentsMap{
    margin-left: 5vw;
  }
  /*===================
 access
===================*/
  .access__mapWrap {
    justify-content: center;
  }
  .access__address {
    margin-right: 0;
    width: 45%;
  }
}

@media screen and (max-width: 980px) {
 /*===================
history 
===================**/
.story .vertical__titleWrap{
    left: 22px;
  }
.story__contents01{
  padding-left: 0;
}
.story__contents01 .story__contentsText{
  margin-left: 6.796vw;
  padding-top: 100px;
}
.story__contents01 .story__contentsWrap{
  align-items: flex-end;
}
.story__contents01 .story__contentsImg{
  width: 50%;
}
.story__contents02 .column-outside-left {
  margin-left: auto;
  margin-right: auto;
}
.story__contents03 .column-outside-right {
   margin-left: auto;
  margin-right: auto;
}
    /*===================
origin
===================*/
.origin__Textwrap{
  /* justify-content: space-between; */
}
.origin__title{
  padding: 0;
  padding-top: 30px;
  width: 50px;
  margin-left: 5.122vw;
  margin-right: 2vw;
}
.origin__text{
  padding: 0;
  line-height: 2.2;
}
.origin__text:not(:last-child){
  /* margin-left: auto; */
}

  /*===================
room
===================*/
  .room__historyContents-text {
    width: 33%;
    max-width: initial;
  }
  .room__historyContents-img {
    width: 62.3%;
    max-width: initial;
  }
  .room__historyLink {
    width: 74.5%;
  }
}
@media screen and (max-width: 880px) {
  /*===================
	dining
===================*/
  .dining__contentsText {
    width: calc(100% - 365px);
  }
  .dining__contentsImg {
    width: 345px;
    max-width: 100%;
  }

  /*===================
tour
===================*/
  .tour__textWrap {
    width: 43.5%;
  }
  .tour__wrap--bird{
     width: 43.5%;
  }
  .tour__wrap--bird .tour__textWrap {
     width: 100%;
  }
  .tour__imgWrap {
    width: 54.1%;
  }

}

@media screen and (max-width: 780px) {
  /*===================
sightseeing
===================*/
  .sightseeing__contentsText {
    padding-top: 4.7%;
  }
}

@media screen and (max-width: 750px) {
  /*===================
fv
===================*/
  .fv,
  .fv-swiper .swiper-slide img {
    height: 100svh;
  }
  .fv__logo {
    top: 46.5%;
    left: 10.3%;
    -webkit-transform: translateY(-46.5%);
    -ms-transform: translateY(-46.5%);
    -moz-transform: translateY(-46.5%);
    -o-transform: translateY(-46.5%);
  }
  .fv-swiper__img--pc {
    display: none;
  }
  .fv-swiper__img--sp {
    display: block;
  }

  .fv__textWrap {
    /* bottom: 41px; */
    left: 18px;
  }
  .fv__text {
    /* font-size: 11px; */
    line-height: 1.62;
  }
  .scroll {
    right: 11px;
  }


  /*===================
/* introブロック
===================*/
.intro__text-wrap{
  margin-top: 200px;
}
.intro__text-wrap__inner{
  width: calc(100% - 104px);
  max-width: 513px;
  margin: 0 auto;
}
.intro__text-wrap01 .intro__text-wrap__inner{
  display: block;
}
.intro__textBox{
  width:100%;
  /* margin: 0 auto; */
}
.intro__text-wrap__inner .vertical{
  margin-left: auto;
}
.intro__text-wrap01 .intro__textBox {
    padding-top: 10%;
}



.bg.bg_01 {
  background-image: url('../imgs/index/intro_slide01_sp.jpg');
}
.bg.bg_02 {
  background-image: url('../imgs/index/intro_slide02_sp.jpg?v=2');
}



  /*===================
concept
===================*/

  /* intro */
  .intro-swiper__img--pc {
    display: none;
  }
  .intro-swiper__img--sp {
    display: block;
  }
  .intro__text-wrap {
    width: calc(100% - 58px);
    max-width: 513px;
    padding: 26vh 0 21.3vh 0;
    gap: 35px;
  }
  .intro__heading {
    padding-left: 0;
    font-size: 25px;
    top: 76px;
    right: -6px;
    letter-spacing: 0.14em;
  }
  .intro__text {
    font-size: 14px;
    line-height: 2.7;
  }
  .intro__text.pdb01 {
  padding-bottom: 120px;
}


  /* story */
  .story__wrap {
    padding-top: 92px;
    padding-bottom: 0;
  }
  /* .story .vertical__title {
    top: 52px;
    left: 20px;
  } */
  .story .vertical__titleWrap{
      top: 92px;
  }

 
  .story__contents01 {
    max-width: 100%;
    padding: 0 0 22.4vw 0;
  }
  .story__contents01 .column-outside-right {
    margin-right: auto;
    margin-left: auto;
    display: block;
  }
  .story__contentsWrap {
    display: block;
  }
  .story__contents02 .story__contentsWrap {
    padding-bottom: 23.2vw;
  }
  .story__contentsImg {
    width: 82.7%;
    max-width: 310px;
    margin: 0 0 0 auto;
  }
  
  .story__contents01 .story__contentsImg{
    width: 82.7%;
    max-width: 100%;
  }
  .story__contents01 .story__contentsText {
    width: calc(100% - 44px);
    padding-top: 11%;
    margin: 0 auto;
  }
  .story__contents-heading {
    font-size: 24px;
    margin-bottom: 17px;
    line-height: 1.58;
  }
  .story__contents02 .story__contents-heading {
    margin-bottom: 19px;
  }
  .story__contents01 .story__contents-heading br {
    display: none;
  }
  /* .story__contents02 .story__contents-heading br {
    display: block;
  } */
  .story__contents-detail {
    font-size: 14px;
    line-height: 2.14;
  }

  .story__contents02 {
    padding: 0 0 0 0;
  }
  .story__contents02 .story__contentsImg {
    width: 100%;
    max-width: 100%;
  }
  .story__contentsImg02 {
    width: 29.066vw;
    height: initial;
    right: 0;
  }

  .story__contents02 .story__contentsText {
    width: calc(100% - 44px);
    padding-top: 10.93vw;
    margin: 0 auto;
  }
  .story__contents03{
    padding: 0;
  }
  .story__contents03 .story__contentsWrap{
    padding-bottom: 0;
  }
  .story__contents03 .story__contentsImg{
    width: 100%;
    max-width: 67.73vw;
    margin: 0 auto 0 0;
  }
  .story__contents03 .story__contentsText {
    width: 100%;
    padding: 15.5vw 22px 0 22px;
  }
  .story__contentsImg03{
    right: 0;
    left:auto;
    top:52.8vw;
    bottom:auto;
    width: 28.79vw;
    height: 76.8vw;
  }

  /* origin */
  .origin {
    /* padding-top: 375vw; */
    padding-top: 36vw;
    /* padding-bottom: 63.199vw; */
    padding-bottom: 46.199vw;
  }
  .bg--mountain{
    /* top: 22vw; */
    top: -28vw;
  }
  .bg--mountain .bg_img{
    background: url("../imgs/index/mountain_bg_sp.png?v=2") center top  / cover no-repeat;
    /* height: calc(100% - 22vw); */
    height: calc(100% + 28vw);
  }
  .origin__wrap {
    padding-top: 0;
    width: calc(100% - 47px);
  }
  /* .origin__title {
    width: 46.85vw;
    max-width: 230px;
    margin-bottom: 15.5vw;
   margin-left: 20%;
    margin-right: auto;
  } */
     .origin__title {
    padding-top: 0;
    padding-left: 18px;
    width: 74px;
    margin-bottom: 60px;
    margin-left: auto;
    margin-right: auto;
  }
  .origin__title-flex {
    padding-left: 10px;
    padding-right: 5px;
  }
  .origin__title--sml {
    font-size: 10px;
    padding-top: 2px;
  }
  .origin__Textwrap{
    margin-top: 75px;
    display: block;
  }
  .origin__text {
    max-width: 300px;
    margin: 0 auto clamp(20px, 5.333vw,40px);
    font-size: 13px;
    line-height: 2.15;
    letter-spacing: 0.04em;
    writing-mode: horizontal-tb;
  }
  .origin__text:not(:last-child){
  margin-left: auto;
}
/*  
  .origin__text br{
    display: none;
  }
  .origin__text br.br{
    display: block;
  } */

  .origin__rogo{
    /* width: min(5.33vw,28px); */
  }

  /*===================
room
===================*/
  .room {
    padding-bottom: 105px;
  }
  .room .section__mainText{
    padding-top: 56.933vw;
  }

  .room .section__mainWrap {
    padding-top: 150px;
    padding-bottom: 98px;
  }

  .room .section__mainImg {
    position: absolute;
    top: 0;
    right: 0;
  }



  .room__slide02{
    padding: 0 0 60px 0;
  }
  .room-swiper .swiper-slide {
    overflow: hidden;
    height: 67.2vw; /* スライドの高さを調整 */
  }
.room-swiper .swiper-slide .swiper-img{
  height: 100%;
}
  .room-swiper .swiper-slide .swiper-img img {
    width: 120%;        /* 横幅大きくして左右見切れ */
    height: 100%;       /* スライド高さに合わせる */
    object-fit: cover;  /* 縦横比を崩さずトリミング */
    display: block;
    margin: 0 auto;
  }
  .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
    right: 22px;
  }
  .swiper-pagination-bullet{
    width: 8px;
    height: 8px;
  }



  .room__points{
    margin: 70px auto 0;
  }
  .room__historyWrap {
    padding-top: 10vw;
    padding-bottom: 75px;
  }
  .room__historyWrap .column-outside-right {
    margin-left: auto;
  }
  .room__historyContents {
    display: block;
  }
  .room__historyContents-text {
    width: 100%;
    padding-top: 0;
  }
  .room__historyContents-text p {
    font-size: 14px;
    line-height: 2.14;
  }
  .room__historyContents-text p:not(:last-child) {
    margin-bottom: 30px;
  }
  .room__historyContents-img {
    width: 100%;
    max-width: initial;
    padding-top: 5.666vw;
    padding-bottom: 5.933vw;
  }

  .room__historyLink {
    width: 100%;
    max-width: 331px;
    padding: 11px 10px;
    margin: 13px auto 0 auto;
  }
  .room__historyLink-text {
    font-size: 12px;
    line-height: 1.83;
  }

  .room__aboutWrap {
    /* padding-bottom: 110px; */
  }
  .room__aboutFlex {
    width: 100%;
    display: block;
  }
  .room__about-heading {
    padding-bottom: 4px;
    margin-bottom: 20px;
  }
  .room__about-text {
    width: 100%;
    max-width: 100%;
  }
  .room__about-text:not(:last-child) {
    margin-bottom: 24px;
  }
  .room__slide{
    margin-top: 93px;
    margin-bottom: 15px;
  }
  .room__slide-list {
    height: 441px;
  }
    /* room */

  .room__detail-heading {
    font-size: 16px;
    line-height: 1.87;
  }
  .room__detail-text {
    font-size: 12px;
    line-height: 2;
  }
.room__detail-text02 {
  width: 100%;;
}
.room__points-text{
  width: 100%;
  text-align: left;
  margin: 0;
}
 

  /*===================
	reservation
===================*/
  .reservation {
    padding-top: 70px;
    padding-bottom: 46px;
  }
  .reservation__text {
    margin-top: 5px;
    font-size: 12px;
    line-height: 2.14;
    letter-spacing: 0.02em;
  }
  .reservation__btn {
    font-size: 14px;
    max-width: 299px;
    padding: 17px 10px 17px;
    line-height: 2.14;
  }
  .reservation__btn span {
    font-size: 12px;
    line-height: 1.2;
  }
  

  /*===================
	dining
===================*/
  .dining {
    padding-bottom: 26.13vw;
  }
  .dining .section__mainWrap {
    padding-top: 32vw;
  }
  .dining .section__mainText {
    bottom: -18.933vw;
  }
  .dining__detailWrap {
    max-width: 100%;
    padding-top: 15.466vw;
    margin: 0 auto 47px;
    display: block;
  }
  .dining__detailLft {
    width: 100%;
    max-width: 100%;
  }
  .dining__detail-heading {
    font-size: 24px;
    margin-bottom: 19px;
    line-height: 1.58;
  }
  .dining__detail-text {
    font-size: 14px;
    line-height: 2.14;
  }
  .dining__detailRgt {
    width: 100%;
    max-width: 331px;
    padding-top: 43px;
    display: flex;
    justify-content: space-between;
  }
  .dining__use-heading {
    font-size: 16px;
    margin-bottom: 22px;
    width: 110px;
    line-height: 1.87;
  }
  .dining__use-heading::before {
    margin-bottom: 13px;
    background-color: #716148;
  }
  .dining__use-text {
    font-size: 12px;
    width: calc(100% - 125px);
    max-width: 201px;
    padding-top: 16px;
    line-height: 2;
  }
  .dining__setWrap .dining__use-text {
    margin-bottom: 0;
  }

  .dining__slide {
    padding-bottom: 43px;
  }
  .dining__slide02 {
    padding-bottom: 38px;
    margin-bottom: 0px;
  }
  .dining__slide-item {
    max-width: 241px;
    margin-right: 15px;
  }
  .dining__slide-item img {
    padding-bottom: 14px;
  }
  .dining__slide-text {
    font-size: 11px;
    line-height: 1.63;
  }
  .dining__slide-bg {
    padding: 91px 0;
  }
  .dining__slide02 .dining__slide-bg {
    display: none;
  }

  .dining__setWrap {
    max-width: 1025px;
    padding: 57px 0 0;
    padding-bottom: 27px;
  }
  .dining__setWrap .column-outside-right {
    margin-right: auto;
    margin-left: auto;
    display: block;
  }
  .dining__contentsWrap {
    display: block;
  }
  .dining__contentsText {
    width: 100%;
    padding-top: 0;
  }
  .dining__contents-heading,
  .dining__contents-detail {
    width: calc(100% - 44px);
    margin: 0 auto;
  }
  .dining__contents-heading {
    font-size: 24px;
    margin-bottom: 20px;
    line-height: 1.58;
  }
  .dining__contents-detail {
    font-size: 14px;
    margin-bottom: 40px;
    line-height: 2.14;
  }
  .dining__contentsImg {
    width: 100%;
    margin-bottom: 47px;
  }

  .dining__use-wrap {
    width: 100%;
    max-width: 375px;
    padding: 0 22px;
    margin-bottom: 31px;
    display: flex;
    justify-content: space-between;
  }

  .dining__setDetail {
    width: calc(100% - 44px);
    max-width: 100%;
    padding: 16px 22px 34px;
    margin: 0 auto;
  }
  .dining__setDetail-heading {
    font-size: 16px;
    margin-bottom: 9px;
    line-height: 1.87;
  }
  .dining__setDetail-text {
    font-size: 12px;
    line-height: 2;
  }

  /*===================
	experience
===================*/
  .experience {
    padding-top: 192px;
    padding-bottom: 68px;
  }
  .experience .section__mainWrap {
    padding-top: 0;
  }
  .experience .section__mainImg {
    position: absolute;
    top: -109px;
    right: 0;
  }

  .experience .section__mainText {
    padding-top: 24vw;
    padding-bottom: 14.066vw;
  }
  .experience__text {
    font-size: 14px;
    text-align: left;
    padding-top: 17.066vw;
    padding-bottom: 94px;
    line-height: 2.14;
  }
  .experience__text02 {
    font-size: 13px;
    line-height: 1.84;
    letter-spacing: 0.04em;
  }
  .experience__contents:first-child {
    margin-bottom: 124px;
  }
  .experience__heading {
    font-size: 30px;
    padding-bottom: 10px;
    margin-bottom: 27px;
  }
  .experience__contents02 .experience__heading {
    padding-bottom: 15px;
    margin-bottom: 24px;
  }
  .experience__heading-line01::after {
    width: 63px;
    height: 9px;
  }
  .experience__heading-line02::after {
    width: 78px;
    height: 9px;
  }

  .experience__contents .experience__text {
    text-align: center;
    margin-bottom: 54px;
  }

  .experience__list {
    gap: 45px 11px;
  }
  .experience__list-item {
    width: calc((100% - 11px) / 2);
    max-width: 100%;
  }
  .option-icon {
    position: absolute;
    top: -6px;
    left: -6px;
  }
  .option-icon div {
    font-size: 12px;
    width: 70px;
    padding-left: 8px;
    line-height: 1.65;
  }
  .option-icon div::after {
    width: 13px;
    height: 19px;
    background: url(../imgs/index/icon_option.png) center center / cover no-repeat;
    right: -13px;
  }
  .experience__list-img {
    margin: 0 auto 14px;
    max-width: 100%;
  }
  .experience__list-title {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.5;
    letter-spacing: 0.02em;
  }
  .experience__list-text {
    font-size: 12px;
    line-height: 1.66;
  }

  /*===================
tour
===================*/
  .tour {
    width: 100%;
    padding-top: 70px;
    padding-bottom: 103px;
  }

  .tour__wrap.sp{
    width: 100%;
    display: block;
    margin: 0 auto;
  }

  .tour__textWrap {
    width: 100%;
  }
  .tour__textBox{
     width: 100%;
    /* max-width: 74.73vw; */
     max-width: 80%;
    margin: 0 auto;
  }
  .tour__textWrap-heading {
    font-size: 21px;
    margin-bottom: 35px;
    line-height: 1.42;
    text-align: center;
  }
  .tour__imgWrap {
    width: 100%;
    max-width: 100%;
    padding-top: 0;
    margin-bottom: 40px;
  }
  .tour__textWrap-text {
    font-size: 12px;
    margin-bottom: 27px;
    line-height: 2;
  }

  .tour__wrap .dining__use-heading {
    width: 100%;
  }
  .tour__wrap .dining__use-text {
    width: 100%;
    max-width: 100%;
    padding-top: 0;
  }

/* .bird */
  .bird{
    padding-top: 75px;
    padding-bottom: 120px;
  }
  /* .bird .tour__textWrap-heading{
    margin-bottom: 5px;
  } */
  .bird__text--soon{
    margin-bottom: 40px;
    font-size: 14px;
    text-align: center;
  }
   .bird .tour__imgWrap{
    margin-bottom: 38px;
   }
  .bird__text{
    font-size: 12px;
  }
  .bird__item{
    font-size: 12px;
  }

  /*===================
sightseeing
===================*/
  .sightseeing {
    padding-bottom: 15.466vw;
  }
  .sightseeing .section__mainWrap {
    padding-top: 20.8vw;
  }
  .sightseeing .section__mainText {
    padding-top: 51.932vw;
  }
  .sightseeing .section__mainText-img {
    bottom: -1.866vw;
  }
  .sightseeing__contents {
    /* padding-top: 8.43vw; */
    padding-top: 70px;
  }
  .sightseeing__contents .inner-1200 {
    width: calc(100% - 44px);
    margin: 0 auto;
  }
  .sightseeing__contentsText {
    width: 100%;
    max-width: 88.26vw;
    padding-top:14.66vw;
    margin:0 auto;
  }
  .sightseeing__contentsText-heading {
    font-size: 24px;
    margin-bottom: 23px;
    line-height: 1.58;
  }
  .sightseeing__contentsText-text {
    font-size: 14px;
    line-height: 2.14;
  }

  .sightseeing__contentsMap-link{
    font-size: 15px;
  }

  .sightseeing__contents-wrap {
    display: block;
  }
  .sightseeing__contentsImg {
    width: 41.866vw;
    max-width: 100%;
  }
  .sightseeing__contentsImg02 {
    width: 55.466vw;
  }
  .sightseeing__slide{
    height: 360px;
  }
.sightseeing__slide-list{
  /* height:  147.7vw; */
   height: 360px;
}
  .sightseeing__slide{
    /* height:  147.7vw; */
     height: 360px;
  }
  .sightseeing__slide-item--1{
    width: 226px;
    margin-top:50px;
  }
  .sightseeing__slide-item--2{
    width: 302px;
    margin-top: 130px;
  }
  .sightseeing__slide-item--3{
    width: 226px;
    margin-top: 25px;
  }
  .sightseeing__slide-item--4{
    width: 226px;
    margin-top: 156px;
  }
  .sightseeing__slide-item--5{
    width: 310px;
  }
  .sightseeing__slide-item--6{
    width: 206px;
    margin-top: 140px;
  }
  .sightseeing__slide-item--7{
    width: 226px;
    margin-top: 20px;
  }
  .sightseeing__slide-item--8{
    width: 313px;
    margin-top: 55px;
  }

  .sightseeing__slide-img p{
    font-size: 12px;
  }
  /*===================
message
===================*/
  .message {
    padding-top: 87px;
    padding-bottom: 103px;
  }
  .message .sec-titleWrap {
    margin-bottom: 45px;
  }
  .message__text {
    font-size: 15px;
    line-height: 2.54;
  }
  /*===================
insta
===================*/
  .insta__wrap {
    padding-top: 62px;
    padding-bottom: 55px;
  }
  .insta__catch {
    margin-bottom: 29px;
    font-size: 16px;
    line-height: 1.85;
  }
  .insta__slid {
    margin-bottom: 35px;
  }
  .scroll1__item {
    width: 179px;
    margin-right: 13px;
  }
  .insta__btnBox {
    width: 97.4px;
  }
  .insta__btn {
    font-size: 13px;
  }
  .insta__btn::after {
    top: 40%;
  }
  /* .insta__btn:hover::after{
  right: 0;
} */

  /*===================
access
===================*/
  .access {
    padding-top: 164px;
    padding-bottom: 103px;
  }
  .access .sec-titleWrap {
    margin-bottom: 43px;
  }
  .access__address-text--sp{
    display: block;
    margin-bottom: 76px;
    font-size: 16px;
    letter-spacing: 0.02em;
    line-height:1.87 ;
    text-align: center;
  }
  .access__mapWrap {
    display: block;
    margin-bottom: 92px;
  }
  .accsess__map {
    margin: 0 auto 30px;
    width: 100%;
    max-width: 486px;
    padding-top: 354px;
    /* padding-top: 107%; */
  }
  .access__address {
    width: 100%;
    max-width: 486px;
    margin: 0 auto;
    padding-left: 18px;
    padding-right: 18px;
  }
  .access__address-text {
    margin-bottom: 6px;
    font-size: 15px;
    line-height: 2.5;
  }
  .access__address .address__map-btn {
    font-size: 15px;
  }
  .access__chartTitle {
    margin-bottom: 35px;
    font-size: 18px;
  }
  .access__chart-img {
    margin-bottom: 37px;
  }
  .access__parking-text {
    line-height: 2.1;
  }
  .access__parking-span {
    display: block;
    font-size: 14px;
  }
}
/* @media screen and (max-width: 500px) {
    .origin__title {
      margin-left: 10%;
    }
} */

@media screen and (max-width: 500px) {
   .room__slide02{
    /* padding-top: 14.933vw; */
  }
}
@media screen and (max-width: 375px) {
  /*===================
access
===================*/
  .access__chart-img {
    /* padding: 0 6.5px; */
    padding: 0 1.9%;
  }

  /*===================
origin
===================*/
 .origin__wrap {
  width: 100%;
 }
.origin {
    padding-top: 375px;
  }
  .bg--mountain{
    top: 22vw;
  }
  .bg--mountain .bg_img{
    height: calc(100% - 22vw);
  }

  /*===================
room
===================*/
  .room__historyWrap {
    /* padding-top: 14.933vw; */
  }
 

  /*===================
	experience
===================*/
  .experience .section__mainText {
    padding-bottom: 7.033vw;
  }
  .experience__text {
    padding-top: 8.366vw;
  }
}

@media screen and (max-width: 350px) {
  /*===================
access
===================*/

  .access__chartTitle {
    letter-spacing: 0;
  }
  .access__parking-text {
    letter-spacing: 0;
  }
}




/* max-height */
@media screen and (max-height: 750px) {
  .intro__text-wrap01 .intro__textBox{
    padding-top: 0;
  }
  .intro__text{
    line-height: 2.3;
  }
  .intro__text.pdb01{
    padding-bottom: 80px;
  }

}