@charset "UTF-8";
/* コンテンツ最大幅 */
/* color */
/* ============================================ */
/* font-size */
/* ============================================ */
/* font-family */
/* ============================================ */
/* top */
/* ============================================ */
.top {
  background: url("../images/common/bg.jpg") top left/965px auto repeat;
}

.top-mainvisual {
  position: relative;
}
.top-mainvisual__slide {
  width: 100%;
  height: calc(100vh - 80px - 72px);
  min-height: 500px;
}
@media all and (max-width: 896px) {
  .top-mainvisual__slide {
    height: calc(100vh - 52px - 80px);
    min-height: 300px;
  }
}
.top-mainvisual__slide::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(106deg, rgba(0, 0, 0, 0.6) 12%, transparent 60%);
  mix-blend-mode: multiply;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}
@media all and (max-width: 896px) {
  .top-mainvisual__slide::before {
    background: linear-gradient(167deg, rgba(0, 0, 0, 0.6) 5%, transparent 55%);
  }
}
.top-mainvisual__slide .splide {
  height: 100%;
}
.top-mainvisual__slide .splide__track {
  height: 100%;
}
.top-mainvisual__slide .splide__list {
  height: 100%;
}
.top-mainvisual__slide .splide__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 10s ease-out;
}
.top-mainvisual__slide .splide__slide.--img06 img {
  -o-object-position: 80% 50%;
     object-position: 80% 50%;
}
.top-mainvisual__slide .splide__slide.is-active img {
  scale: 1.05;
}
.top-mainvisual__slide .splide__pagination {
  padding: 0 5.2vw;
  justify-content: flex-end;
  z-index: 20;
  bottom: 32px;
}
@media all and (max-width: 896px) {
  .top-mainvisual__slide .splide__pagination {
    padding: 0 20px;
    bottom: 12px;
  }
}
.top-mainvisual__slide .splide__pagination__page {
  margin: 5px;
  width: 40px;
  height: 2px;
  border-radius: 0;
  background: #fff;
  opacity: 1;
}
@media all and (max-width: 896px) {
  .top-mainvisual__slide .splide__pagination__page {
    width: 32px;
  }
}
.top-mainvisual__slide .splide__pagination__page.is-active {
  background: #DA8333;
  transform: scale(1);
}
.top-mainvisual__wrapper {
  position: relative;
}
.top-mainvisual__container {
  container-type: inline-size;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
  z-index: 10;
}
.top-mainvisual__inner {
  padding-top: 7.14cqw;
  color: #fff;
  max-width: 460px;
  position: relative;
}
@media all and (max-width: 896px) {
  .top-mainvisual__inner {
    padding-top: 56px;
  }
}
.top-mainvisual__ttl {
  font-size: clamp(1.5rem, -0.2778rem + 3.1746vw, 2.5rem);
}
.top-mainvisual__banner {
  display: none;
  position: absolute;
  right: 0;
  bottom: 80px;
  z-index: 40;
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner {
    bottom: 36px;
  }
}
.top-mainvisual__banner.--show {
  display: block;
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner.--show {
    display: none;
  }
}
.top-mainvisual__banner__link {
  display: flex;
  border-radius: 4px;
  overflow: hidden;
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner__link {
    border-radius: 3px;
  }
}
.top-mainvisual__banner__img {
  flex-shrink: 0;
  padding: 16px;
  background: #4F6C65;
  display: grid;
  place-content: center;
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner__img {
    padding: 10px;
  }
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner__img img {
    width: 80px;
  }
}
.top-mainvisual__banner__contents {
  padding: 16px 32px 16px 16px;
  background: #fff;
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner__contents {
    padding: 10px 24px 10px 10px;
  }
}
.top-mainvisual__banner__catch {
  word-break: keep-all;
  font-size: clamp(0.9375rem, 0.3819rem + 0.9921vw, 1.25rem);
  font-weight: 700;
  line-height: 1.4;
  color: #4F6C65;
}
.top-mainvisual__banner__txt {
  font-size: clamp(0.6875rem, 0.3542rem + 0.5952vw, 0.875rem);
  padding-top: 6px;
  border-top: 2px solid #F0F0F0;
  margin-top: 6px;
}
.top-mainvisual__banner__close {
  cursor: pointer;
  width: 40px;
  height: 40px;
  display: grid;
  place-content: center;
  position: absolute;
  top: 0;
  right: 0;
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner__close {
    width: 32px;
    height: 32px;
  }
}
@media all and (max-width: 896px) {
  .top-mainvisual__banner__close img {
    width: 16px;
  }
}
.top-mainvisual__news {
  padding: 24px 0;
  width: 100%;
  background: #353535;
  color: #fff;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news {
    padding: 10px 0;
  }
}
.top-mainvisual__news__list {
  display: flex;
  justify-content: center;
}
.top-mainvisual__news__ttl {
  flex-shrink: 0;
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 0.9375rem;
  padding-right: 16px;
  border-right: 1px solid #fff;
  margin-right: 16px;
  display: flex;
  align-items: center;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news__ttl {
    padding-right: 12px;
    margin-right: 12px;
  }
}
.top-mainvisual__news__contents {
  display: flex;
  gap: 4px 10px;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news__contents {
    flex-direction: column;
  }
}
.top-mainvisual__news__block {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news__block {
    flex-wrap: wrap;
    gap: 8px;
  }
}
.top-mainvisual__news__date {
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 1rem;
  opacity: 0.6;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news__date {
    font-size: 0.75rem;
  }
}
.top-mainvisual__news__category {
  text-align: center;
  padding: 0.2em 0.8em;
  border: 1px solid #fff;
  border-radius: 9999px;
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 0.9375rem;
  line-height: 1;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news__category {
    font-size: 0.75rem;
  }
}
.top-mainvisual__news__name {
  font-size: 0.9375rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
@media all and (max-width: 896px) {
  .top-mainvisual__news__name {
    font-size: 0.75rem;
    -webkit-line-clamp: 2;
  }
}

.top-concept__wrapper {
  min-height: 36.46vw;
  padding: 88px 0 104px;
  position: relative;
}
@media all and (max-width: 896px) {
  .top-concept__wrapper {
    min-height: inherit;
    padding: 80px 0 40px;
  }
}
.top-concept__img {
  position: absolute;
  z-index: 5;
}
.top-concept__img img {
  width: 100%;
  border-radius: 4px;
}
@media all and (max-width: 896px) {
  .top-concept__img img {
    border-radius: 2px;
  }
}
.top-concept__img.--img01 {
  width: 12.92vw;
  top: 3.13vw;
  left: 14.48vw;
}
@media all and (max-width: 896px) {
  .top-concept__img.--img01 {
    width: 84px;
    top: 38px;
    left: -13px;
  }
}
.top-concept__img.--img02 {
  width: 15.73vw;
  top: 16.77vw;
  left: 5.2vw;
}
@media all and (max-width: 896px) {
  .top-concept__img.--img02 {
    width: 111px;
    top: 218px;
    left: -26px;
  }
}
.top-concept__img.--img03 {
  width: 7.81vw;
  top: 27.4vw;
  left: 17.45vw;
}
@media all and (max-width: 896px) {
  .top-concept__img.--img03 {
    width: 43px;
    top: 150px;
    left: -8px;
  }
}
.top-concept__img.--img04 {
  width: 15.83vw;
  top: 0;
  right: 5.2vw;
}
@media all and (max-width: 896px) {
  .top-concept__img.--img04 {
    width: 86px;
    right: -10px;
  }
}
.top-concept__img.--img05 {
  width: 11.72vw;
  top: 19.32vw;
  right: 13.85vw;
}
@media all and (max-width: 896px) {
  .top-concept__img.--img05 {
    width: 66px;
    top: 180px;
    right: 0;
  }
}
.top-concept__container {
  position: relative;
  z-index: 10;
}
.top-concept__ttl {
  text-align: center;
}
.top-concept__ttl__en {
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: clamp(0.875rem, 0.7639rem + 0.1984vw, 0.9375rem);
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #767678;
}
.top-concept__ttl__jp {
  font-size: clamp(1.625rem, 1.1806rem + 0.7937vw, 1.875rem);
  margin-top: 16px;
}
.top-concept__inner {
  margin-top: 48px;
  margin-inline: auto;
  width: 50%;
}
@media all and (max-width: 896px) {
  .top-concept__inner {
    margin-top: 112px;
    width: 80%;
  }
}
@media all and (max-width: 480px) {
  .top-concept__inner {
    width: 100%;
  }
}
.top-concept__txt {
  word-break: keep-all;
  text-align: center;
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  line-height: 2;
}
.top-concept__txt + .top-concept__txt {
  margin-top: 24px;
}
.top-concept__bg {
  height: 500px;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
@media all and (max-width: 896px) {
  .top-concept__bg {
    height: 200px;
  }
}
.top-concept__bg::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10;
  width: 100%;
  height: 100vh;
  background: url("../images/top/concept_bg.jpg") center center/cover no-repeat;
}

.top-news__wrapper {
  padding: 120px 0 18.75vw;
  background: url("../images/top/news_bg.jpg") center center/cover no-repeat;
  position: relative;
}
@media all and (max-width: 896px) {
  .top-news__wrapper {
    padding: 48px 0 32vw;
  }
}
.top-news__wrapper::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}
.top-news__container {
  max-width: 1024px;
  position: relative;
  z-index: 10;
}
@media all and (max-width: 896px) {
  .top-news__inner {
    display: flex;
    flex-direction: column;
  }
}
.top-news__intro {
  display: flex;
  justify-content: space-between;
  gap: 24px 32px;
}
@media all and (max-width: 896px) {
  .top-news__intro {
    display: contents;
  }
}
@media all and (max-width: 896px) {
  .top-news .common-btn {
    order: 1;
    margin-top: 36px;
    margin-inline: auto;
  }
}
.top-news__main {
  margin-top: 80px;
}
@media all and (max-width: 896px) {
  .top-news__main {
    margin-top: 32px;
    margin-right: calc(50% - 50vw);
  }
}
@media all and (max-width: 896px) {
  .top-news__main .splide__track {
    overflow: visible !important;
  }
}
.top-news__main .splide__arrows {
  display: none;
}
@media all and (max-width: 896px) {
  .top-news__main .splide__arrows {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    position: absolute;
    top: -92px;
    right: 20px;
  }
}
.top-news__main .splide__arrow {
  width: 42px;
  height: 42px;
  border-radius: 0;
  background: url("../images/common/slide_arrow_prev_white.svg") center center/contain no-repeat;
  position: static;
  transform: translateX(0) translateY(0);
  transition: opacity 0.3s ease-out;
}
.top-news__main .splide__arrow--next {
  background-image: url("../images/common/slide_arrow_next_white.svg");
}
.top-news__list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
@media all and (max-width: 896px) {
  .top-news__list {
    display: flex !important;
    gap: 0;
    margin-right: 20px !important;
  }
}
@media all and (max-width: 896px) {
  .top-news__item {
    margin-right: 16px;
  }
}
.top-news__link {
  display: block;
  border-radius: 4px;
  background: #fff;
  height: 100%;
  overflow: hidden;
}
.top-news__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 320/214;
}
.top-news__contents {
  padding: 24px;
}
.top-news__block {
  display: flex;
  align-items: center;
  gap: 8px 10px;
}
.top-news__date {
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 1rem;
  line-height: 1.4;
  color: #878787;
}
.top-news__category {
  text-align: center;
  padding: 0.2em 0.8em;
  border: 1px solid #2C2C66;
  border-radius: 9999px;
  color: #2C2C66;
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 0.9375rem;
  line-height: 1;
}
.top-news__name {
  margin-top: 12px;
}
@media all and (max-width: 896px) {
  .top-news__name {
    margin-top: 10px;
  }
}
.top-news__txt {
  color: #000;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.06em;
  margin-top: 16px;
}
@media all and (max-width: 896px) {
  .top-news__txt {
    margin-top: 12px;
  }
}
.top-news__photo {
  width: calc(100% - 64px);
  margin-inline: auto;
  margin-top: -11.46vw;
}
@media all and (max-width: 896px) {
  .top-news__photo {
    width: 100%;
    margin-top: -18.7vw;
  }
}
@media all and (max-width: 896px) {
  .top-news__photo .splide__track {
    margin-inline: -8vw;
  }
}
.top-news__photo .splide__list {
  display: flex !important;
  gap: 22px;
}
@media all and (max-width: 896px) {
  .top-news__photo .splide__list {
    gap: 0;
  }
}
.top-news__photo .splide__slide {
  width: calc((100% - 44px) / 3);
}
@media all and (max-width: 896px) {
  .top-news__photo .splide__slide {
    width: 100%;
  }
}
.top-news__photo .splide__slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 605/404;
}

.top-room {
  margin-top: 80px;
}
@media all and (max-width: 896px) {
  .top-room {
    margin-top: 64px;
  }
}
.top-room__container {
  display: flex;
  align-items: center;
}
@media all and (max-width: 896px) {
  .top-room__container {
    flex-direction: column-reverse;
    gap: 32px;
  }
}
.top-room__inner {
  padding-inline: 24px;
  flex-grow: 1;
}
@media all and (max-width: 896px) {
  .top-room__inner {
    padding-inline: 0;
    width: 100%;
  }
}
.top-room__contents {
  max-width: 400px;
  margin-inline: auto;
}
@media all and (max-width: 896px) {
  .top-room__contents {
    max-width: inherit;
  }
}
.top-room__txt {
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  line-height: 2;
  margin-top: 48px;
}
@media all and (max-width: 896px) {
  .top-room__txt {
    margin-top: 28px;
  }
}
.top-room .common-btn {
  margin-top: 32px;
}
@media all and (max-width: 896px) {
  .top-room .common-btn {
    margin-inline: auto;
  }
}
.top-room__img {
  flex-shrink: 0;
  width: 48.57%;
}
@media all and (max-width: 896px) {
  .top-room__img {
    width: 100%;
  }
}
.top-room__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 676/506;
}

.top-hotspring {
  margin-top: 128px;
}
@media all and (max-width: 896px) {
  .top-hotspring {
    margin-top: 64px;
  }
}
.top-hotspring__container {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
}
@media all and (max-width: 896px) {
  .top-hotspring__container {
    flex-direction: column-reverse;
    gap: 32px;
  }
}
.top-hotspring__inner {
  padding-inline: 24px;
  flex-grow: 1;
}
@media all and (max-width: 896px) {
  .top-hotspring__inner {
    padding-inline: 0;
    width: 100%;
  }
}
.top-hotspring__contents {
  max-width: 490px;
  margin-inline: auto;
}
@media all and (max-width: 896px) {
  .top-hotspring__contents {
    max-width: inherit;
  }
}
.top-hotspring__txt {
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  line-height: 2;
  margin-top: 48px;
}
@media all and (max-width: 896px) {
  .top-hotspring__txt {
    margin-top: 28px;
  }
}
.top-hotspring .common-btn {
  margin-top: 64px;
}
@media all and (max-width: 896px) {
  .top-hotspring .common-btn {
    margin-top: 32px;
    margin-inline: auto;
  }
}
.top-hotspring__img {
  flex-shrink: 0;
  width: 51.43%;
  container-type: inline-size;
}
@media all and (max-width: 896px) {
  .top-hotspring__img {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
  }
}
.top-hotspring__photo.--photo01 {
  width: 46.32cqw;
  margin-left: 11cqw;
  position: relative;
  z-index: 5;
}
@media all and (max-width: 896px) {
  .top-hotspring__photo.--photo01 {
    width: 35.5cqw;
    margin: -14.92cqw 0 0;
  }
}
.top-hotspring__photo.--photo02 {
  width: 76.77cqw;
  margin: -1.98cqw 0 0 auto;
}
@media all and (max-width: 896px) {
  .top-hotspring__photo.--photo02 {
    width: 88.36cqw;
    margin: 0 0 0 auto;
  }
}
.top-hotspring__slide {
  width: calc(100% - 64px);
  margin-inline: auto;
  margin-top: 100px;
}
@media all and (max-width: 896px) {
  .top-hotspring__slide {
    width: 100%;
    margin-top: 48px;
  }
}
@media all and (max-width: 896px) {
  .top-hotspring__slide .splide__track {
    margin-inline: -8vw;
  }
}
.top-hotspring__slide .splide__list {
  display: flex !important;
  gap: 22px;
}
@media all and (max-width: 896px) {
  .top-hotspring__slide .splide__list {
    gap: 0;
  }
}
.top-hotspring__slide .splide__slide {
  width: calc((100% - 44px) / 3);
}
@media all and (max-width: 896px) {
  .top-hotspring__slide .splide__slide {
    width: 100%;
  }
}
.top-hotspring__slide .splide__slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 605/404;
}

.top-cuisine {
  margin-top: 120px;
}
@media all and (max-width: 896px) {
  .top-cuisine {
    margin-top: 64px;
  }
}
.top-cuisine__container {
  display: flex;
  align-items: center;
}
@media all and (max-width: 896px) {
  .top-cuisine__container {
    flex-direction: column-reverse;
    gap: 32px;
  }
}
.top-cuisine__inner {
  padding-inline: 24px;
  flex-grow: 1;
}
@media all and (max-width: 896px) {
  .top-cuisine__inner {
    padding-inline: 0;
    width: 100%;
  }
}
.top-cuisine__contents {
  max-width: 490px;
  margin-inline: auto;
}
@media all and (max-width: 896px) {
  .top-cuisine__contents {
    max-width: inherit;
  }
}
.top-cuisine__txt {
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  line-height: 2;
  margin-top: 48px;
}
@media all and (max-width: 896px) {
  .top-cuisine__txt {
    margin-top: 28px;
  }
}
.top-cuisine .common-btn {
  margin-top: 64px;
}
@media all and (max-width: 896px) {
  .top-cuisine .common-btn {
    margin-top: 32px;
    margin-inline: auto;
  }
}
.top-cuisine__img {
  flex-shrink: 0;
  width: 51.43%;
  container-type: inline-size;
}
@media all and (max-width: 896px) {
  .top-cuisine__img {
    width: 100%;
  }
}
.top-cuisine__photo.--photo01 {
  width: 54.96cqw;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 5;
}
.top-cuisine__photo.--photo02 {
  width: 81.87cqw;
  margin-top: -13.46cqw;
}
.top-cuisine__slide {
  width: calc(100% - 64px);
  margin-inline: auto;
  margin-top: 104px;
}
@media all and (max-width: 896px) {
  .top-cuisine__slide {
    width: 100%;
    margin-top: 48px;
  }
}
@media all and (max-width: 896px) {
  .top-cuisine__slide .splide__track {
    margin-inline: -8vw;
  }
}
.top-cuisine__slide .splide__list {
  display: flex !important;
  gap: 22px;
}
@media all and (max-width: 896px) {
  .top-cuisine__slide .splide__list {
    gap: 0;
  }
}
.top-cuisine__slide .splide__slide {
  width: calc((100% - 44px) / 3);
}
@media all and (max-width: 896px) {
  .top-cuisine__slide .splide__slide {
    width: 100%;
  }
}
.top-cuisine__slide .splide__slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 605/404;
}

.top-facility {
  margin-top: 154px;
}
@media all and (max-width: 896px) {
  .top-facility {
    margin-top: 64px;
  }
}
.top-facility__container {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
}
@media all and (max-width: 896px) {
  .top-facility__container {
    flex-direction: column-reverse;
    gap: 32px;
  }
}
.top-facility__inner {
  padding-inline: 24px;
  flex-grow: 1;
}
@media all and (max-width: 896px) {
  .top-facility__inner {
    padding: 0;
    width: 100%;
  }
}
.top-facility__contents {
  max-width: 560px;
  margin-inline: auto;
}
@media all and (max-width: 896px) {
  .top-facility__contents {
    max-width: inherit;
  }
}
.top-facility__txt {
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  line-height: 2;
  margin-top: 56px;
}
@media all and (max-width: 896px) {
  .top-facility__txt {
    margin-top: 28px;
  }
}
.top-facility .common-btn {
  margin-top: 64px;
}
@media all and (max-width: 896px) {
  .top-facility .common-btn {
    margin-top: 32px;
    margin-inline: auto;
  }
}
.top-facility__img {
  flex-shrink: 0;
  width: 54%;
  container-type: inline-size;
}
@media all and (max-width: 896px) {
  .top-facility__img {
    width: 100%;
  }
}
.top-facility__photo.--photo01 {
  width: 92.46cqw;
}
@media all and (max-width: 896px) {
  .top-facility__photo.--photo01 {
    width: 88.36cqw;
    margin: 0 0 0 auto;
  }
}
.top-facility__photo.--photo02 {
  width: 40.2cqw;
  margin: -4.76cqw 0 0 auto;
}
@media all and (max-width: 896px) {
  .top-facility__photo.--photo02 {
    width: 35.52cqw;
    margin: -15.22cqw 0 0;
  }
}
.top-facility__slide {
  width: calc(100% - 64px);
  margin-inline: auto;
  margin-top: 116px;
}
@media all and (max-width: 896px) {
  .top-facility__slide {
    width: 100%;
    margin-top: 48px;
  }
}
@media all and (max-width: 896px) {
  .top-facility__slide .splide__track {
    margin-inline: -8vw;
  }
}
.top-facility__slide .splide__list {
  display: flex !important;
  gap: 22px;
}
@media all and (max-width: 896px) {
  .top-facility__slide .splide__list {
    gap: 0;
  }
}
.top-facility__slide .splide__slide {
  width: calc((100% - 44px) / 3);
}
@media all and (max-width: 896px) {
  .top-facility__slide .splide__slide {
    width: 100%;
  }
}
.top-facility__slide .splide__slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 605/404;
}

.top-spend {
  margin-top: 180px;
}
@media all and (max-width: 896px) {
  .top-spend {
    margin-top: 88px;
  }
}
.top-spend__main {
  margin-top: 104px;
}
@media all and (max-width: 896px) {
  .top-spend__main {
    margin-top: 40px;
  }
}
.top-spend__main .splide__track {
  overflow: visible !important;
  margin-right: calc(50% - 50vw);
}
.top-spend__main .splide__arrows {
  margin-top: 32px;
  display: flex;
  justify-content: center;
  gap: 18px;
}
@media all and (max-width: 896px) {
  .top-spend__main .splide__arrows {
    gap: 10px;
    margin-top: 20px;
  }
}
.top-spend__main .splide__arrow {
  width: 70px;
  height: 70px;
  opacity: 1;
  border-radius: 0;
  background: url("../images/common/slide_arrow_prev.svg") center center/contain no-repeat;
  position: static;
  transform: translateX(0) translateY(0);
  transition: opacity 0.3s ease-out;
}
@media all and (max-width: 896px) {
  .top-spend__main .splide__arrow {
    width: 42px;
    height: 42px;
  }
}
.top-spend__main .splide__arrow--next {
  background-image: url("../images/common/slide_arrow_next.svg");
}
.top-spend__main .splide__arrow[disabled] {
  opacity: 0.2;
}
.top-spend__list {
  margin-right: 32px !important;
}
@media all and (max-width: 896px) {
  .top-spend__list {
    margin-right: 20px !important;
  }
}
.top-spend__list > li {
  margin-right: 24px;
}
@media all and (max-width: 896px) {
  .top-spend__list > li {
    margin-right: 16px;
  }
}
.top-spend__item {
  height: 100%;
  position: relative;
}
.top-spend__item::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, transparent 45%, rgba(0, 0, 0, 0.4) 70%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}
.top-spend__img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.top-spend__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-spend__contents {
  padding: 300px 40px 24px;
  color: #fff;
  position: relative;
  z-index: 10;
}
@media all and (max-width: 896px) {
  .top-spend__contents {
    padding: 200px 24px 20px;
  }
}
.top-spend__time {
  font-family: "Montserrat", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: clamp(1.25rem, 0.1389rem + 1.9841vw, 1.875rem);
  font-weight: 600;
  line-height: 1.2;
  display: flex;
  align-items: center;
  gap: 16px;
}
@media all and (max-width: 896px) {
  .top-spend__time {
    gap: 10px;
  }
}
.top-spend__time::after {
  content: "";
  display: inline-block;
  width: 44px;
  height: 2px;
  background: #fff;
}
@media all and (max-width: 896px) {
  .top-spend__time::after {
    width: 30px;
    height: 1.5px;
  }
}
.top-spend__ttl {
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  font-weight: 700;
  margin-top: 20px;
}
@media all and (max-width: 896px) {
  .top-spend__ttl {
    margin-top: 16px;
  }
}
.top-spend__txt {
  line-height: 2;
  margin-top: 20px;
}
@media all and (max-width: 896px) {
  .top-spend__txt {
    margin-top: 16px;
  }
}
.top-spend__bg {
  height: 500px;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  margin-top: 104px;
}
@media all and (max-width: 896px) {
  .top-spend__bg {
    height: 200px;
    margin-top: 48px;
  }
}
.top-spend__bg::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10;
  width: 100%;
  height: 100vh;
  background: url("../images/top/spend_bg.jpg") center center/cover no-repeat;
}

.top-access {
  margin: 120px 0;
}
@media all and (max-width: 896px) {
  .top-access {
    margin: 80px 0;
  }
}
.top-access__wrapper {
  max-width: 1000px;
}
.top-access__container {
  display: flex;
  justify-content: space-between;
  gap: 24px;
}
@media all and (max-width: 896px) {
  .top-access__container {
    flex-direction: column;
    gap: 0;
  }
}
.top-access__inner {
  flex-grow: 1;
}
@media all and (max-width: 896px) {
  .top-access__inner {
    display: contents;
  }
}
.top-access__address {
  font-size: clamp(0.9375rem, 0.6042rem + 0.5952vw, 1.125rem);
  line-height: 1.8;
  margin-top: 48px;
}
@media all and (max-width: 896px) {
  .top-access__address {
    margin-top: 32px;
  }
}
.top-access .common-btn {
  margin-top: 48px;
}
@media all and (max-width: 896px) {
  .top-access .common-btn {
    margin-top: 32px;
    margin-inline: auto;
    order: 1;
  }
}
.top-access__map {
  flex-shrink: 0;
  width: 59.5%;
}
@media all and (max-width: 896px) {
  .top-access__map {
    width: calc(100% + 40px);
    margin-top: 32px;
    margin-inline: -20px;
  }
}
.top-access__map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 595/447;
}