@charset "UTF-8";
.top {
  position: relative;
}

/* --------------------------------------
  MV
---------------------------------------- */
.mv {
  position: relative;
  overflow: hidden;
  background-color: #fff;
}
.mv__step {
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}
.mv__step--1 {
  -webkit-animation-name: mvFadeIn;
          animation-name: mvFadeIn;
  -webkit-animation-duration: 1.2s;
          animation-duration: 1.2s;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.mv__step--2 {
  -webkit-animation-name: mvFadeInBlur;
          animation-name: mvFadeInBlur;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
.mv__step--3 {
  -webkit-animation-name: mvFadeInBlurDown;
          animation-name: mvFadeInBlurDown;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}
.mv__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-color: #f1f1f2;
}
.mv__bg__layer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -100%;
  right: -100%;
  background-image: linear-gradient(-60deg, #e2e2e4 50%, #fafafa 50%);
  opacity: 0.38;
  -webkit-animation: mvBgSlide 10.5s ease-in-out infinite alternate;
          animation: mvBgSlide 10.5s ease-in-out infinite alternate;
  -webkit-animation-delay: -6.5s;
          animation-delay: -6.5s;
  will-change: transform;
}
.mv__bg__layer--2 {
  background-image: linear-gradient(-40deg, #ffffff 50%, #d0d0d4 50%);
  animation: mvBgSlide 13.5s ease-in-out infinite alternate-reverse;
}
.mv__bg__layer--3 {
  background-image: linear-gradient(-75deg, #e8e8ea 50%, #f4f4f5 50%);
  -webkit-animation-duration: 17.5s;
          animation-duration: 17.5s;
  -webkit-animation-delay: -3s;
          animation-delay: -3s;
}
.mv__bg__layer--4 {
  background-image: linear-gradient(-50deg, #fcfcfc 50%, #dadade 50%);
  animation: mvBgSlide 20.5s ease-in-out infinite alternate-reverse;
}
.mv__bg__layer--5 {
  background-image: linear-gradient(-68deg, #dedee1 50%, #f7f7f8 50%);
  -webkit-animation-duration: 26.5s;
          animation-duration: 26.5s;
  -webkit-animation-delay: -14s;
          animation-delay: -14s;
}
.mv__inner {
  position: relative;
  z-index: 1;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto clamp(64px, 5.764vw, 96px) minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
  row-gap: clamp(64px, 5.764vw, 96px);
  padding: 11.6vw 0 clamp(64px, 5.764vw, 96px);
}
@media screen and (max-width: 768px) {
  .mv__inner {
    padding: clamp(88px, 29.333vw, 132px) 0 clamp(32px, 10.667vw, 48px);
    row-gap: clamp(48px, 16vw, 72px);
  }
}
.mv__catch {
  -ms-grid-row: 1;
  grid-row: 1;
  position: relative;
  z-index: 2;
  width: clamp(305.6px, 27.522vw, 458.4px);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .mv__catch {
    width: 70vw;
  }
}
.mv__catch img {
  display: block;
  width: 100%;
}
.mv__gaikan {
  -ms-grid-row: 2;
  grid-row: 2;
  width: 88vw;
  min-height: 0;
  margin: 0 auto;
  max-width: 1600px;
  display: -ms-grid;
  display: grid;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  justify-items: center;
}
@media screen and (max-width: 768px) {
  .mv__gaikan {
    width: 100vw;
  }
}
.mv__gaikan img {
  display: block;
  width: 100%;
}
.mv__caption {
  position: absolute;
  right: 2vw;
  bottom: 1.5vw;
  z-index: 2;
  font-size: clamp(8px, 0.72vw, 12px);
  color: #555;
}
@media screen and (max-width: 768px) {
  .mv__caption {
    left: 10px;
    right: auto;
    bottom: 10px;
    font-size: clamp(8px, 2.667vw, 12px);
  }
}

@-webkit-keyframes mvFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes mvFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes mvFadeInBlur {
  0% {
    opacity: 0;
    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
@keyframes mvFadeInBlur {
  0% {
    opacity: 0;
    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
@-webkit-keyframes mvFadeInBlurDown {
  0% {
    opacity: 0;
    -webkit-filter: blur(8px);
            filter: blur(8px);
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes mvFadeInBlurDown {
  0% {
    opacity: 0;
    -webkit-filter: blur(8px);
            filter: blur(8px);
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes mvBgSlide {
  0% {
    -webkit-transform: translateX(-22%);
            transform: translateX(-22%);
  }
  100% {
    -webkit-transform: translateX(22%);
            transform: translateX(22%);
  }
}
@keyframes mvBgSlide {
  0% {
    -webkit-transform: translateX(-22%);
            transform: translateX(-22%);
  }
  100% {
    -webkit-transform: translateX(22%);
            transform: translateX(22%);
  }
}
@-webkit-keyframes mvBgIntro {
  0% {
    -webkit-transform: translateX(-22%);
            transform: translateX(-22%);
  }
  100% {
    -webkit-transform: translateX(22%);
            transform: translateX(22%);
  }
}
@keyframes mvBgIntro {
  0% {
    -webkit-transform: translateX(-22%);
            transform: translateX(-22%);
  }
  100% {
    -webkit-transform: translateX(22%);
            transform: translateX(22%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .mv__step,
  .mv__bg__layer {
    -webkit-animation: none;
            animation: none;
  }
}
/* --------------------------------------
  帯
---------------------------------------- */
.obiBlock {
  padding: min(1.441vw, 24px);
  background: #93896c;
  background-image: linear-gradient(329deg, #655d3c, #93896c);
}
@media screen and (max-width: 768px) {
  .obiBlock {
    padding: min(2.667vw, 12px);
  }
}
.obiBlock .obiBlock-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 90%;
  margin: auto;
  max-width: 1290px;
  padding: 0;
  list-style: none;
}
@media screen and (max-width: 768px) {
  .obiBlock .obiBlock-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.obiBlock__item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .obiBlock__item {
    padding-bottom: min(5.333vw, 24px);
  }
}
.obiBlock__item + .obiBlock__item {
  border-left: 1px solid rgba(255, 255, 255, 0.3);
}
@media screen and (max-width: 768px) {
  .obiBlock__item + .obiBlock__item {
    border-left: none;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
}
.obiBlock__item img {
  display: block;
  max-width: 100%;
  height: auto;
}
.obiBlock__item--01 img {
  width: min(19.164vw, 319.2px);
}
@media screen and (max-width: 768px) {
  .obiBlock__item--01 img {
    width: min(80vw, 360px);
  }
}
.obiBlock__item--02 img {
  width: min(11.095vw, 184.8px);
}
@media screen and (max-width: 768px) {
  .obiBlock__item--02 img {
    width: min(82.133vw, 369.6px);
  }
}
.obiBlock__item--03 img {
  width: min(21.902vw, 364.8px);
}
@media screen and (max-width: 768px) {
  .obiBlock__item--03 img {
    width: min(80vw, 360px);
  }
}
.obiBlock__item--04 img {
  width: min(12.104vw, 201.6px);
}
@media screen and (max-width: 768px) {
  .obiBlock__item--04 img {
    width: min(44.8vw, 201.6px);
  }
}

.t-concept {
  position: relative;
  padding: min(4.323vw, 72px) 0;
}
@media screen and (max-width: 768px) {
  .t-concept {
    padding: min(16vw, 72px) 0;
  }
}
.t-concept .l-inner {
  margin: auto;
  width: 90%;
  max-width: 800px;
}
.t-concept__title__en {
  color: #937a26;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.1em;
}
.t-concept__title__photo {
  margin: auto;
  max-width: 360px;
  margin-top: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-concept__title__photo {
    margin-top: min(8vw, 36px);
  }
}
.t-concept__read {
  line-height: 3;
  margin-top: min(2.882vw, 48px);
  font-size: clamp(11.2px, 1.009vw, 16.8px);
}
@media screen and (max-width: 768px) {
  .t-concept__read {
    font-size: clamp(10.4px, 3.467vw, 15.6px);
    margin-top: min(8vw, 36px);
    line-height: 2;
  }
}
.t-concept__read + .t-concept__read {
  margin-top: min(0.865vw, 14.4px);
}
@media screen and (max-width: 768px) {
  .t-concept__read + .t-concept__read {
    margin-top: min(3.2vw, 14.4px);
  }
}
.t-concept__photoBlock {
  display: block;
  position: absolute;
  inset: 0;
  margin: 0;
  width: 100%;
  height: 100%;
}
.t-concept__photoBlock picture {
  display: block;
  height: 100%;
}
.t-concept__image {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
@media screen and (max-width: 768px) {
  .t-concept__image {
    -o-object-position: 78% 50%;
       object-position: 78% 50%;
  }
}
.t-concept figcaption {
  position: absolute;
  bottom: 10px;
  right: 10px;
}

/* --------------------------------------
  帯下告知エリア
---------------------------------------- */
.informationAreaBlock {
  background-color: #efeee7;
  padding: min(4.323vw, 72px) 0;
}
@media screen and (max-width: 768px) {
  .informationAreaBlock {
    padding: min(16vw, 72px) 0;
  }
}
.informationAreaBlock .c-cta {
  margin: auto;
  width: 90%;
  padding: 0;
  background-color: #efeee7;
}
.informationAreaBlock .informationWrap {
  margin: auto;
  margin-top: min(4.323vw, 72px);
  width: 90%;
  max-width: 600px;
  font-size: clamp(9.6px, 0.865vw, 14.4px);
}
@media screen and (max-width: 768px) {
  .informationAreaBlock .informationWrap {
    margin-top: min(16vw, 72px);
    font-size: clamp(9.6px, 3.2vw, 14.4px);
  }
}
.informationAreaBlock .informationWrap .content-box__title {
  margin-bottom: min(1.441vw, 24px);
  padding-bottom: min(0.865vw, 14.4px);
  border-bottom: 1px solid #707070;
  text-align: center;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
}
@media screen and (max-width: 768px) {
  .informationAreaBlock .informationWrap .content-box__title {
    margin-bottom: min(5.333vw, 24px);
    padding-bottom: min(3.2vw, 14.4px);
    font-size: clamp(12.8px, 4.267vw, 19.2px);
  }
}

/* --------------------------------------
  共通
---------------------------------------- */
.t-design .c-title--page--full.inpage,
.t-location .c-title--page--full.inpage,
.t-access .c-title--page--full.inpage,
.t-plan .c-title--page--full.inpage {
  height: clamp(700px, 72vh, 700px);
  height: clamp(700px, 72svh, 700px);
}
@media screen and (max-width: 768px) {
  .t-design .c-title--page--full.inpage,
  .t-location .c-title--page--full.inpage,
  .t-access .c-title--page--full.inpage,
  .t-plan .c-title--page--full.inpage {
    height: 470px;
  }
}
@media screen and (max-width: 768px) {
  .t-design .c-title--page--full.inpage .c-title--page--full__inner,
  .t-location .c-title--page--full.inpage .c-title--page--full__inner,
  .t-access .c-title--page--full.inpage .c-title--page--full__inner,
  .t-plan .c-title--page--full.inpage .c-title--page--full__inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}
.t-design .c-title--page--full.inpage .c-title--page--full__title,
.t-location .c-title--page--full.inpage .c-title--page--full__title,
.t-access .c-title--page--full.inpage .c-title--page--full__title,
.t-plan .c-title--page--full.inpage .c-title--page--full__title {
  text-align: left;
  font-size: clamp(20px, 1.801vw, 30px);
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0em;
  line-height: 2.5;
}
@media screen and (max-width: 768px) {
  .t-design .c-title--page--full.inpage .c-title--page--full__title,
  .t-location .c-title--page--full.inpage .c-title--page--full__title,
  .t-access .c-title--page--full.inpage .c-title--page--full__title,
  .t-plan .c-title--page--full.inpage .c-title--page--full__title {
    line-height: 2.2;
    font-size: clamp(16.8px, 5.6vw, 25.2px);
  }
}
@media screen and (max-width: 768px) {
  .t-design .c-title--page--full.inpage .c-title--page--full__image,
  .t-location .c-title--page--full.inpage .c-title--page--full__image,
  .t-access .c-title--page--full.inpage .c-title--page--full__image,
  .t-plan .c-title--page--full.inpage .c-title--page--full__image {
    -o-object-position: 10% 50%;
       object-position: 10% 50%;
  }
}
.t-design .c-title--page--full.inpage::before,
.t-location .c-title--page--full.inpage::before,
.t-access .c-title--page--full.inpage::before,
.t-plan .c-title--page--full.inpage::before {
  opacity: 0;
}

/* --------------------------------------
  デザイン
---------------------------------------- */
.t-design {
  background-color: #918e7c;
  color: #fff;
}
.t-design .c-title--page--full__inner.l-inner {
  padding-left: min(2.882vw, 48px);
  padding-right: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-design .c-title--page--full__inner.l-inner {
    padding-left: min(5.333vw, 24px);
    padding-right: min(5.333vw, 24px);
  }
}
.t-design .c-title--page--full__image {
  -o-object-position: 0% 100%;
     object-position: 0% 100%;
}
.t-design .l-inner {
  margin: auto;
  max-width: 1200px;
}
.t-design__block01 {
  padding-top: min(5.043vw, 84px);
  padding-bottom: min(7.205vw, 120px);
}
@media screen and (max-width: 768px) {
  .t-design__block01 {
    padding-top: min(13.333vw, 60px);
    padding-bottom: min(16vw, 72px);
  }
}
.t-design__block01 figure {
  display: block;
  margin: 0;
}
.t-design__block01 figure figcaption {
  display: block;
}
.t-design__block01__en img {
  display: block;
  width: 100%;
  max-width: min(31.7vw, 528px);
}
@media screen and (max-width: 768px) {
  .t-design__block01__en img {
    max-width: none;
    width: 62%;
  }
}
.t-design__block01__main {
  position: relative;
  margin-top: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-design__block01__main {
    margin-top: min(6.4vw, 28.8px);
  }
}
.t-design__block01__lead {
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  line-height: 2.2;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 769px) {
  .t-design__block01__lead {
    position: absolute;
    top: 44%;
    left: 0;
    z-index: 2;
    width: 9em;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  .t-design__block01__lead {
    margin-bottom: min(4.267vw, 19.2px);
    font-size: clamp(12px, 4vw, 18px);
  }
}
.t-design__block01__photo img {
  display: block;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .t-design__block01__photo--main {
    margin-top: min(4.267vw, 19.2px);
  }
  .t-design__block01__photo--main img {
    width: 190%;
    max-width: none;
    margin-left: -38%;
  }
}
.t-design__block01__photo--sub {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 769px) {
  .t-design__block01__photo--sub {
    width: min(24.496vw, 408px);
  }
}
@media screen and (max-width: 768px) {
  .t-design__block01__photo--sub {
    width: 62%;
  }
}
.t-design__block01__entrance {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: min(3.242vw, 54px);
  margin-top: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-design__block01__entrance {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 0;
    margin-top: min(8vw, 36px);
  }
}
@media screen and (min-width: 769px) {
  .t-design__block01__entrance__body {
    max-width: min(13.689vw, 228px);
  }
}
@media screen and (max-width: 768px) {
  .t-design__block01__entrance__body {
    width: 100%;
    margin-top: min(6.4vw, 28.8px);
    padding-left: min(8vw, 36px);
  }
}
.t-design__block01__entrance__title {
  font-size: clamp(14.4px, 1.297vw, 21.6px);
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .t-design__block01__entrance__title {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
  }
}
.t-design__block01__more {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: min(1.729vw, 28.8px);
  width: min(13.689vw, 228px);
  margin-top: min(1.729vw, 28.8px);
  padding: min(0.432vw, 7.2px) min(1.153vw, 19.2px);
  background-color: #624133;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: clamp(10.4px, 0.937vw, 15.6px);
  letter-spacing: 0.1em;
  text-decoration: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (max-width: 768px) {
  .t-design__block01__more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: auto;
    margin-right: 0;
    padding: min(1.6vw, 7.2px) min(2.667vw, 12px);
    width: min(56vw, 252px);
    margin-top: min(4.8vw, 21.6px);
    font-size: clamp(10.4px, 3.467vw, 15.6px);
  }
}
.t-design__block01__more::after {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: min(0.36vw, 6px) 0 min(0.36vw, 6px) min(0.648vw, 10.8px);
  border-color: transparent transparent transparent currentColor;
}
@media screen and (max-width: 768px) {
  .t-design__block01__more::after {
    border-width: min(1.333vw, 6px) 0 min(1.333vw, 6px) min(2.4vw, 10.8px);
  }
}
@media screen and (min-width: 769px) {
  .t-design__block01__more:hover {
    opacity: 0.75;
  }
}

/* --------------------------------------
  ロケーション
---------------------------------------- */
.t-location {
  background-color: #918e7c;
  color: #fff;
}
.t-location .c-title--page--full__inner.l-inner {
  padding-left: min(2.882vw, 48px);
  padding-right: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-location .c-title--page--full__inner.l-inner {
    padding-left: min(5.333vw, 24px);
    padding-right: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .t-location .c-title--page--full__image {
    -o-object-position: 35% 50% !important;
       object-position: 35% 50% !important;
  }
}
.t-location .l-inner {
  margin: auto;
  max-width: 1160px;
}
@media screen and (max-width: 768px) {
  .t-location .l-inner {
    padding-right: 0;
    padding-left: 0;
  }
}
.t-location__block01 {
  padding-top: min(14.409vw, 240px);
  padding-bottom: min(7.205vw, 120px);
  position: relative;
}
@media screen and (max-width: 768px) {
  .t-location__block01 {
    padding-top: min(13.333vw, 60px);
    padding-bottom: min(16vw, 72px);
  }
}
.t-location__block01 figure {
  display: block;
  margin: 0;
}
.t-location__block01 figure figcaption {
  display: block;
}
.t-location__block01__en img {
  display: block;
  width: 680px;
}
@media screen and (max-width: 768px) {
  .t-location__block01__en img {
    margin: auto;
    width: 90% !important;
  }
}
@media screen and (min-width: 769px) {
  .t-location__block01__en {
    position: absolute;
    top: 30px;
    right: 12%;
    z-index: 1;
    width: min(38.905vw, 648px);
  }
}
@media screen and (max-width: 768px) {
  .t-location__block01__area {
    padding-left: 20px;
    margin-top: min(6.4vw, 28.8px);
  }
}
@media screen and (min-width: 769px) {
  .t-location__block01__area {
    margin-top: min(0vw, 0px);
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 2.2fr min(4.035vw, 67.2px) 1fr;
    grid-template-columns: 2.2fr 1fr;
    -webkit-column-gap: min(4.035vw, 67.2px);
       -moz-column-gap: min(4.035vw, 67.2px);
            column-gap: min(4.035vw, 67.2px);
    row-gap: min(1.729vw, 28.8px);
    -ms-grid-rows: auto min(1.729vw, 28.8px) auto;
        grid-template-areas: "photo  lead" "photo  more";
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 768px) {
  .t-location__block01__area {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    row-gap: min(6.4vw, 28.8px);
    -ms-grid-rows: auto min(6.4vw, 28.8px) auto;
        grid-template-areas: "photo" "more";
  }
}
.t-location__block01__lead {
  grid-area: lead;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  line-height: 2.2;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 769px) {
  .t-location__block01__lead {
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
  }
}
@media screen and (max-width: 768px) {
  .t-location__block01__lead {
    grid-area: photo;
    position: relative;
    z-index: 2;
    -ms-grid-row-align: center;
        align-self: center;
    -ms-grid-column-align: start;
        justify-self: start;
    padding-left: min(6.4vw, 28.8px);
    font-size: clamp(12px, 4vw, 18px);
    line-height: 2;
  }
}
.t-location__block01__photo img {
  display: block;
  width: 100%;
}
.t-location__block01__photo--main {
  grid-area: photo;
}
@media screen and (min-width: 769px) {
  .t-location__block01__photo--main {
    position: relative;
    z-index: 2;
  }
}
.t-location__block01__more {
  grid-area: more;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: min(1.729vw, 28.8px);
  width: min(13.689vw, 228px);
  padding: min(0.432vw, 7.2px) min(1.153vw, 19.2px);
  background-color: #624133;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: clamp(10.4px, 0.937vw, 15.6px);
  letter-spacing: 0.1em;
  text-decoration: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 769px){
  .t-location__block01__lead {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .t-location__block01__lead {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .t-location__block01__photo--main {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .t-location__block01__more {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media screen and (max-width: 768px){
  .t-location__block01__lead {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .t-location__block01__photo--main {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .t-location__block01__more {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media screen and (min-width: 769px) {
  .t-location__block01__more {
    -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
  }
  .t-location__block01__more:hover {
    opacity: 0.75;
  }
}
@media screen and (max-width: 768px) {
  .t-location__block01__more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 0 auto;
    width: min(56vw, 252px);
    padding: min(1.6vw, 7.2px) min(2.667vw, 12px);
    font-size: clamp(10.4px, 3.467vw, 15.6px);
  }
}
.t-location__block01__more::after {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: min(0.36vw, 6px) 0 min(0.36vw, 6px) min(0.648vw, 10.8px);
  border-color: transparent transparent transparent currentColor;
}
@media screen and (max-width: 768px) {
  .t-location__block01__more::after {
    border-width: min(1.333vw, 6px) 0 min(1.333vw, 6px) min(2.4vw, 10.8px);
  }
}
.t-location__block01__station {
  margin: -20px 0 auto auto;
  max-width: 600px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1.3fr;
  grid-template-columns: 1fr 1.3fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .t-location__block01__station {
    -ms-grid-columns: 1.2fr min(4.267vw, 19.2px) 1fr;
    grid-template-columns: 1.2fr 1fr;
    gap: min(4.267vw, 19.2px);
    margin-top: min(2.667vw, 12px);
    padding-right: min(5.333vw, 24px);
  }
}
.t-location__block01__access {
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .t-location__block01__access {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    font-size: clamp(12px, 4vw, 18px);
  }
}
.t-location__block01__access small {
  font-size: clamp(9.6px, 0.865vw, 14.4px);
}
@media screen and (max-width: 768px) {
  .t-location__block01__access small {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
  }
}
@media screen and (max-width: 768px) {
  .t-location__block01__photo {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

/* --------------------------------------
  アクセス
---------------------------------------- */
.t-access {
  background-color: #918e7c;
  color: #fff;
}
.t-access .c-title--page--full__inner.l-inner {
  padding-left: min(2.882vw, 48px);
  padding-right: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-access .c-title--page--full__inner.l-inner {
    padding-left: min(5.333vw, 24px);
    padding-right: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .t-access .c-title--page--full__image {
    -o-object-position: 35% 50% !important;
       object-position: 35% 50% !important;
  }
}
.t-access .l-inner {
  margin: auto;
  max-width: 1200px;
  position: relative;
  padding-top: min(5.043vw, 84px);
  padding-bottom: min(7.205vw, 120px);
}
@media screen and (max-width: 768px) {
  .t-access .l-inner {
    padding-top: min(2.667vw, 12px);
    padding-bottom: min(16vw, 72px);
    padding-left: 0;
  }
}
.t-access .t-access__block01__en {
  width: 450px;
}
@media screen and (max-width: 768px) {
  .t-access .t-access__block01__en {
    margin-left: min(5.333vw, 24px);
    width: 80%;
  }
}
.t-access__block01 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 2fr min(2.882vw, 48px) 1fr;
  grid-template-columns: 2fr 1fr;
  gap: min(2.882vw, 48px);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 768px) {
  .t-access__block01 {
    gap: min(10.667vw, 48px);
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.t-access__block01__item.item01 {
  margin-top: min(5.403vw, 90px);
}
@media screen and (max-width: 768px) {
  .t-access__block01__item.item02 {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr min(2.667vw, 12px) 40%;
    grid-template-columns: 1fr 40%;
    gap: min(2.667vw, 12px);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .t-access__block01__item.item02 figure {
    display: block;
    margin: 0;
  }
  .t-access__block01__item.item02 img {
    display: block;
    width: 100%;
  }
}
.t-access__route {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .t-access__route {
    margin-left: calc(50% - 50vw);
    width: calc(100% + 50vw - 50%);
  }
}
@media screen and (max-width: 768px) {
  .t-access__route--time {
    display: none;
  }
}
.t-access__route__caption {
  opacity: 0.6;
}
.t-access__route__photo {
  display: block;
  margin: 0;
}
.t-access__route__photo img {
  display: block;
  width: 100%;
}
.t-access__route__time {
  margin-top: 0;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  line-height: 1.5;
  white-space: nowrap;
}
.t-access__route__time small {
  font-size: clamp(9.6px, 0.865vw, 14.4px);
}
@media screen and (max-width: 768px) {
  .t-access__route__time {
    margin-top: min(1.6vw, 7.2px);
    padding-left: min(1.067vw, 4.8px);
    font-size: clamp(9.6px, 3.2vw, 14.4px);
    white-space: normal;
  }
  .t-access__route__time small {
    font-size: clamp(8px, 2.667vw, 12px);
  }
}
.t-access__timeList {
  display: none;
}
@media screen and (max-width: 768px) {
  .t-access__timeList {
    display: block;
  }
  .t-access__timeList .t-access__route__time {
    margin-top: 0;
    padding-left: 0;
    font-size: clamp(13.6px, 4.533vw, 20.4px);
    line-height: 1.5;
  }
  .t-access__timeList .t-access__route__time small {
    font-size: clamp(8px, 2.667vw, 12px);
  }
}
.t-access .t-location__block01__moreBlock {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  justify-items: right;
}
@media screen and (max-width: 768px) {
  .t-access .t-location__block01__moreBlock {
    margin-top: min(8vw, 36px);
    justify-items: left;
  }
}
.t-access .t-location__block01__more {
  grid-area: auto;
}
@media screen and (max-width: 768px) {
  .t-access .t-location__block01__more {
    margin: 0;
  }
}
.t-access .note {
  color: #fff;
  margin-top: min(2.161vw, 36px);
}
@media screen and (max-width: 768px) {
  .t-access .note {
    padding: min(0vw, 0px) min(0vw, 0px) min(0vw, 0px) min(2.667vw, 12px);
    margin-top: min(8vw, 36px);
  }
}

/* --------------------------------------
  プラン
---------------------------------------- */
.t-plan {
  background-color: #918e7c;
  color: #fff;
}
.t-plan .c-title--page--full__inner.l-inner {
  padding-left: min(2.882vw, 48px);
  padding-right: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .t-plan .c-title--page--full__inner.l-inner {
    padding-left: min(5.333vw, 24px);
    padding-right: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .t-plan .c-title--page--full__image {
    -o-object-position: 50% 50% !important;
       object-position: 50% 50% !important;
  }
}
@media screen and (min-width: 769px) {
  .t-plan {
    overflow-x: clip;
  }
}
.t-plan .l-inner {
  margin: auto;
  max-width: 1200px;
  position: relative;
  padding-top: min(5.043vw, 84px);
  padding-bottom: min(3.602vw, 60px);
}
@media screen and (max-width: 768px) {
  .t-plan .l-inner {
    padding-top: min(2.667vw, 12px);
    padding-bottom: min(16vw, 72px);
    padding-left: 0;
  }
}
.t-plan__block01 figure {
  display: block;
  margin: 0;
}
.t-plan__block01 figure figcaption {
  display: block;
}
.t-plan__block01 img {
  display: block;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .t-plan__block01 .l-inner {
    padding-left: min(0vw, 0px);
    padding-right: min(0vw, 0px);
  }
}
@media screen and (min-width: 769px) {
  .t-plan__block01 .l-inner {
    position: relative;
    min-height: 680px;
  }
}
@media screen and (min-width: 769px) {
  .t-plan__block01__en, .t-plan__block01__lead, .t-plan__block01__moreBlock, .t-plan__block01__figRow {
    position: relative;
    z-index: 1;
  }
}
@media screen and (min-width: 769px) {
  .t-plan__block01__en {
    width: 52%;
    max-width: min(40.346vw, 672px);
  }
}
.t-plan__block01__en img {
  max-width: min(25.937vw, 432px);
}
@media screen and (max-width: 768px) {
  .t-plan__block01__en img {
    max-width: none;
    width: 46%;
  }
}
.t-plan__block01__lead {
  margin-top: min(2.017vw, 33.6px);
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  line-height: 2.2;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 769px) {
  .t-plan__block01__lead {
    margin-top: min(4.323vw, 72px);
  }
}
@media screen and (max-width: 768px) {
  .t-plan__block01__lead {
    margin-top: min(6.4vw, 28.8px);
    font-size: clamp(12px, 4vw, 18px);
  }
}
@media screen and (min-width: 769px) {
  .t-plan__block01__lead, .t-plan__block01__moreBlock {
    margin-left: 14%;
    max-width: min(37.464vw, 624px);
    text-align: left;
  }
}
@media screen and (min-width: 769px) {
  .t-plan__block01__map {
    position: absolute;
    top: min(1.441vw, 24px);
    right: 0;
    width: 62%;
    z-index: 0;
  }
  .t-plan__block01__map figcaption {
    text-align: right;
  }
}
@media screen and (max-width: 768px) {
  .t-plan__block01__map {
    margin-top: min(6.4vw, 28.8px);
  }
  .t-plan__block01__map figcaption {
    margin-top: min(2.133vw, 9.6px);
  }
}
.t-plan__block01__moreBlock {
  margin-top: min(1.729vw, 28.8px);
}
@media screen and (max-width: 768px) {
  .t-plan__block01__moreBlock {
    margin-top: min(7.467vw, 33.6px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media screen and (max-width: 768px) {
  .t-plan__block01__moreBlock.pcObj {
    display: none;
  }
}
.t-plan__block01__more {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: min(1.729vw, 28.8px);
  width: min(13.689vw, 228px);
  padding: min(0.432vw, 7.2px) min(1.153vw, 19.2px);
  background-color: #624133;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: clamp(10.4px, 0.937vw, 15.6px);
  letter-spacing: 0.1em;
  text-decoration: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 769px) {
  .t-plan__block01__more:hover {
    opacity: 0.75;
  }
}
@media screen and (max-width: 768px) {
  .t-plan__block01__more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: min(56vw, 252px);
    padding: min(1.6vw, 7.2px) min(2.667vw, 12px);
    font-size: clamp(10.4px, 3.467vw, 15.6px);
  }
}
.t-plan__block01__more::after {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: min(0.36vw, 6px) 0 min(0.36vw, 6px) min(0.648vw, 10.8px);
  border-color: transparent transparent transparent currentColor;
}
@media screen and (max-width: 768px) {
  .t-plan__block01__more::after {
    border-width: min(1.333vw, 6px) 0 min(1.333vw, 6px) min(2.4vw, 10.8px);
  }
}
.t-plan__block01__figRow {
  margin-top: min(3.602vw, 60px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 769px) {
  .t-plan__block01__figRow {
    margin-top: min(3.458vw, 57.6px);
    gap: min(2.017vw, 33.6px);
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
@media screen and (max-width: 768px) {
  .t-plan__block01__figRow {
    margin-top: min(7.467vw, 33.6px);
    gap: min(5.333vw, 24px);
  }
}
.t-plan__block01__photo {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 769px) {
  .t-plan__block01__photo {
    width: min(21.614vw, 360px);
  }
}
@media screen and (max-width: 768px) {
  .t-plan__block01__photo {
    width: 55%;
  }
}
.t-plan__block01__spec {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .t-plan__block01__spec {
    font-size: clamp(12px, 4vw, 18px);
  }
}
/*# sourceMappingURL=top.css.map */