@charset "utf-8";


/* ↓ info NEW ↓ */
.info-block {
  position: relative;
  z-index: 1;
  background: transparent;
}
.fixed-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  pointer-events: none; /* 背景にマウスイベントを通さない */
  background-color: #3E433E;
}
.bg-slide {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transform: scale(1.2);
  z-index: 1;
}
.bg-slide.active {
  opacity: 1;
  animation: fadeZoomOut 20s ease forwards;
  z-index: 50;
}




@keyframes fadeZoomOut {
  0% {
    opacity: 0.5;
    transform: scale(1.2);
    filter: brightness(140%);
  }
  10% {
    opacity: 0.8;
    transform: scale(1.15);
    filter: brightness(120%);
  }
  30% {
    opacity: 1;
    transform: scale(1.1);
    filter: brightness(100%);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: brightness(100%);
  }
}
.panel {
  height: 200vh;
}
.bg-slide.bg1 {
  background-image: url('https://yasou-ritto.com/cms/wp-content/themes/staffTemplate/imgs/index/intro_slide01.png');
}
.bg-slide.bg2 {
  background-image: url('https://yasou-ritto.com/cms/wp-content/themes/staffTemplate/imgs/index/intro_slide02.png');
}
@media screen and (max-width: 750px) {
  .bg-slide.bg1 {
  background-image: url('https://yasou-ritto.com/cms/wp-content/themes/staffTemplate/imgs/index/intro_slide01_sp.png');
}
.bg-slide.bg2 {
  background-image: url('https://yasou-ritto.com/cms/wp-content/themes/staffTemplate/imgs/index/intro_slide02_sp.png');
}
}

/* .intro__text-wrap{
  opacity: 0;
  position: absolute;
  top: 0;
  left: 50%;
    transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-o-transform: translateX(-50%);
  width: 100%;
  height: 100vh;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
transition: opacity 2s ease, transform 1.5s ease;
} */
.intro__text-wrap__inner{
    width: 513px;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    /* justify-content: center; */
    align-items: start;
}
.intro__text-wrap01 .intro__textBox{
  padding-top: 20%;
}
.intro__text-wrap02 .intro__textBox{
  margin-right: auto;
}


/* .intro__text-wrap.active{
  opacity: 1;
} */

/* まず、マスク画像アニメーションの初期状態 */
.intro__text-wrap {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100vh;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
  
  transition:
    opacity 4s ease,
    -webkit-mask 4s cubic-bezier(.3, 1, .7, 1),
    mask 4s cubic-bezier(.3, 1, .7, 1);
  
  will-change: -webkit-mask, mask;
  backface-visibility: hidden;

  /* 雲マスクの初期状態 */
  -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;
  -webkit-mask-image: url(../imgs/index/dolon.png);
  mask-image: url(../imgs/index/dolon.png);
}

/* アクティブ時 */
.intro__text-wrap.active {
  opacity: 1;
  transform: translateX(-50%);
  -webkit-mask-position: right 160% center 100%;
  mask-position: right 160% center 100%;
  -webkit-mask-size: 160% 120%;
  mask-size: 160% 120%;
transition:
    opacity 10s ease,
    -webkit-mask 10s cubic-bezier(.3, 1, .7, 1),
    mask 10s cubic-bezier(.3, 1, .7, 1);

}










/* ↑ info NEW ↑ */
/* infoブロック */
/* 旧　intro__text-wrapをコメントアウト */

/* 
.info-block {
  position: relative;
  overflow-x: hidden;
  height: 100vh;
  z-index: 1;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
.fvSlide__left {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: relative;
}
.fvSlide__right {
  width: 50%;
  height: 100vh;
  overflow: hidden;
}
.fvSlide {
  position: relative;
  width: 100%;
}
.fvSlide__item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 100%;
  height: 100vh;
}
.fvSlide__img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  position: relative;
  z-index: 1;
 transform: none;
}

.fvSlide__left .fvSlide__item.active .fvSlide__img {
  opacity: 0;
  transform: scale(1);
  animation: fadeZoomOut 7.5s linear forwards;
  z-index: 3;
  position: relative;
}

@keyframes fadeZoomOut {
  0% {
    opacity: 0;
    transform: scale(1.2);
    filter: brightness(180%);
  }
  30% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);

}
}


 .intro__text-wrap{
  opacity: 0;
  position: absolute;
  top: 0;
  left:0;
  width: 100%;
  height: 100vh;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
 }

.intro__text-wrap__inner{
    width: 513px;
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: start;
}
.intro__text-wrap01 .intro__textBox{
  padding-top: 20%;
}
.intro__text-wrap02 .intro__textBox{
  margin-right: auto;
} */
/* ↑　↑　↑　infoブロック ↑　↑　↑　*/

/* intro 雲のアニメ　マスク */
.mask-text-anime,
.mask-text-anime::before,
.mask-text-anime::after,
.mask-text-anime .mask-text-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-text-anime {
	z-index: 60;
	position: relative;
	-webkit-mask-image: url(../imgs/index/dolon.png);
	mask-image: url(../imgs/index/dolon.png);
	transition-duration: 1s;
}
.mask-text-anime::before {
	content: "";
	z-index: 55;
	position: absolute;
	inset: 0;
	-webkit-mask-position: center left;
	mask-position: center left;
}
.mask-text-anime .mask-text-animeItem {
	opacity: 0.8;
	mix-blend-mode: lighten;
	-webkit-mask-position: left top;
	mask-position: left top;
	pointer-events: none;
}

/* マスク アクティブ */
.mask-text-anime.active,
.mask-text-anime.active::before,
.mask-text-anime.active .mask-text-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-text-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-text-anime.active .mask-text-animeItem {
	-webkit-mask-position: right 350%  120%;
	mask-position: right 350% center 120%;
	mask-size: 160% 300%;
}
.mask-text-anime.active {
	transition-duration: .5s;
}
/* ↑ intro 雲のアニメ　マスク ↑*/





/* 雲のアニメーション　マスク */
.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: 1s;
}
.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;
}


/* @keyframes zoomUp {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
.fv-swiper .swiper-slide-active .swiper-img,
.fv-swiper .swiper-slide-duplicate-active .swiper-img,
.fv-swiper .swiper-slide-prev .swiper-img {
  animation: zoomUp 10s linear 0s normal both;
} */
.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;
}
/* スクロールバー */




.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;
}

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

.intro-swiper {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: -1;
}
.intro-swiper .swiper-img {
  height: 100vh;
}
.intro-swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.intro-swiper__img--sp {
  display: none;
}

/* .intro__text-wrap {
  width: 100%;
  max-width: 513px;
  margin: 0 auto;
  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__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;
}
.intro__text.pdb01 {
  padding-bottom: 51px;
}


#history {
  opacity: 0;
  /* transform: scale(0.95); */
  filter: blur(4px);
  transition: 
    opacity 1.5s ease,
    transform 1.5s ease,
    filter 1.5s ease;
}

#history.visible {
  opacity: 1;
  /* transform: scale(1); */
  filter: blur(0);
}


/* story */
.story {
  /* padding-bottom: 103px; */
}
.story__wrap {
  position: relative;
  padding-top: 300px;
  /* padding-top: 173px; */
  /* padding-bottom: 37px; */
}
.story .vertical__titleWrap{
   position: absolute;
   top:300px;
  /* 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") 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; */
  width: 140px;
 /* padding-left: min(8.125vw,90px); */
  padding-left: 90px;
}
/* .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: 80px;
  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: 387px;
}
.room__about-text span {
  display: block;
  margin-bottom: 26px;
}

.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: 113px;
  margin-bottom: 58px;
  width: 348px;
  height: 296px;
}
.room__slide-item--2{
  margin-bottom: 112px;
  width: 389px;
  height: 356px;
}
.room__slide-item--3{
  margin-top: 154px;
  width: 310px;
  height: 313px;
}
.room__slide-item--4{
  margin-top: 53px;
  margin-bottom: 56px;
  width: 389px;
  height: 356px;
}

body:not(.loaded) .room__slide-img {
  display: none; /* 完全にDOMから隠す */
}
.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;          
}


.room__points{
    width: 100%;
    max-width: 900px;
    margin: 85px auto 0; 
}
.room__points-text{
  max-width: 684px;
  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;
}
.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;
}


/*===================
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: 378px;
  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__slide {
  /* margin-top: 162px;
  margin-bottom: 90px; */
  max-width: 100%;
  height: 615px;
  /* align-items: flex-start !important; */
  display: block;
  position: relative;
  z-index: 2;
}
.sightseeing__slide-list{
  display: flex;
}
.sightseeing__slide-item{
  /* margin-right: 54px; */
  margin-right: 4.218vw;
}
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: clamp(229px,61.06vw,390px);
  height: clamp(195px,52vw,282px);
  margin-top: 0;
  margin-bottom: 209px;
  /* margin-bottom: 25.93vw; */
}
.sightseeing__slide-item--2{
  width: clamp(326px,86.93vw,623px);
  height: clamp(298px,79.46vw,419px);
  margin-top: 196px;
  /* margin-top: 15.31vw; */
  margin-bottom: 0;
}
.sightseeing__slide-img.show {
  opacity: 1;
  -ms-filter: blur(0);
  filter: blur(0);
  visibility: visible;          
}

/*===================
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; */
   display: flex;
  /* white-space: nowrap;
  align-items: center; */
}
.scroll1__item {
  margin-right: 23px;
  width: 332px;
}
.insta__btnBox {
  /* width: 125px; */
  width: 240px;
  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;
}
.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%;
  z-index: 5;
  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;
  }
  /*===================
 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;
  width: 50px;
  margin-left: 5.122vw;
  margin-right: 2vw;
}
.origin__text{
  padding: 0;
  line-height: 2.2;
}


  /*===================
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__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: 8px;
    line-height: 1.62;
  }
  .scroll {
    right: 11px;
  }

  /*===================
/* introブロック
===================*/

/* .intro__text-wrap__inner{
  width: calc(100% - 58px);
  max-width: 513px;
  margin: 0 auto;
}
.intro__text-wrap01 .intro__text-wrap__inner{
  justify-content: space-between;
}
.intro__textBox{
  width: calc(100% - 58px);
  margin: 0 auto;
}
.intro__text-wrap01 .intro__textBox {
    padding-top: 40%;
} */
.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%;
}



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

  /* intro */
  .intro-swiper__img--pc {
    display: none;
  }
  .intro-swiper__img--sp {
    display: block;
  }
  .intro__text-wrap {
    /* width: calc(100% - 104px);
    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: 35px;
  }

/* 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") 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: 24.66vw;
    max-width: 90px;
    margin-bottom: 13.5vw;
   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 br{
    display: none;
  }
  .origin__text br.br{
    display: block;
  } */

  .origin__rogo{
    /* width: min(5.33vw,28px); */
  }
.origin__text:not(:last-child){
  margin-left: auto;
}
  /*===================
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__points{
    margin: 70px auto 0;
  }
  .room__historyWrap {
    padding-top: 10vw;
    padding-bottom: 100px;
  }
  .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 */
    padding-top: 33px;
    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%;;
}
 

  /*===================
	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;
    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;
  }
  .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__contents-wrap {
    display: block;
  }
  .sightseeing__contentsImg {
    width: 41.866vw;
    max-width: 100%;
  }
  .sightseeing__contentsImg02 {
    width: 55.466vw;
  }
.sightseeing__slide-list{
  height:  147.7vw;
}
  .sightseeing__slide{
    height:  147.7vw;
  }
  .sightseeing__slide-item--2{
    margin-top: 225px;
  }

  /*===================
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; */
    width: 177.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: 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: 20px;
  }
}
