.bodoni {
  font-family: "Bodoni Moda", serif;
  font-optical-sizing: auto;
  font-style: italic;
}

.c-button--main,
.c-floating-button,
.c-button--header {
  background-color: #29AAE1;
}
.c-button--main span,
.c-floating-button span,
.c-button--header span {
  color: #29AAE1;
}

.c-button--header span,
.c-floating-button span {
  border: 3px solid #29AAE1;
}

.l-header__logo {
  width: 160px;
}

.p-intro__slider .swiper-wrapper,
.p-hotel__infinite-slider .swiper-wrapper {
  transition-timing-function: linear !important;
}

.p-mv {
  height: calc(100dvh - 90px);
}
.p-mv__inner {
  text-align: center;
}
.p-mv__title {
  font-size: clamp(32px, 5vw - 0px, 50px);
  line-height: 130%;
  margin-bottom: 20px;
}
.p-mv__subtitle {
  font-size: clamp(20px, 5vw - 10px, 30px);
  font-weight: bold;
}
.p-mv__annotation {
  position: absolute;
  bottom: 30px;
  font-size: clamp(10px, 1vw + 4px, 12px);
  left: 0;
  right: 0;
  text-align: center;
}

.p-genti {
  padding-top: 60px;
}
.p-genti__inner {
  width: 86.6032210835%;
  padding: 0 5.3140096618%;
  max-width: 1000px;
  margin: 0 auto;
}
.p-genti__link {
  display: block;
  transition: 0.3s;
  margin-bottom: 20px;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 12px;
}
.p-genti__link:hover {
  transition: 0.3s;
  opacity: 0.7;
}

.p-intro {
  padding-top: 100px;
  padding-bottom: 30px;
}
.p-intro__inner {
  margin-bottom: 20px;
}
.p-intro__title {
  width: 30%;
  margin: 0 auto 30px;
}
.p-intro__text {
  font-size: clamp(34px, 5vw - 0px, 60px);
  font-weight: bold;
}
.p-intro__slider {
  margin-bottom: 90px;
}
.p-intro__number {
  font-size: clamp(34px, 5vw - 0px, 40px);
  margin: 0 auto 40px;
  letter-spacing: 0.25rem;
  font-weight: 500;
}
.p-intro__number span {
  font-size: clamp(20px, 5vw - 10px, 30px);
}
.p-intro__number .bodoni {
  font-size: clamp(34px, 5vw - 0px, 40px);
}
.p-intro__name {
  width: 35%;
  margin: 0 auto 30px;
}
.p-intro__contents .p-intro__text {
  font-size: clamp(14px, 1vw + 8px, 16px);
}

.p-hotel__head.hawaii {
  background-image: url(../../img/hawaii/head-bg.webp);
}
.p-hotel__head::before {
  content: none;
}
.p-hotel__title {
  font-weight: 500;
  text-align: center;
  font-size: clamp(30px, 5vw - 0px, 40px);
  margin: 60px 0;
}
.p-hotel__title span {
  display: block;
  font-size: clamp(14px, 1vw + 8px, 16px);
}
.p-hotel__block {
  margin: 0 auto;
}
.p-hotel__block-text {
  margin: 0 auto 30px;
}
.p-hotel__slider {
  padding-bottom: 0;
}
.p-hotel__block {
  text-align: center;
  padding: 0 5.3140096618%;
}
.p-hotel__block-title {
  line-height: 1.5;
  margin-bottom: 15px;
}
.p-hotel__block-text {
  padding: 0;
}

.p-hoterl__container:nth-child(odd) {
  background-color: #fff;
}
.p-hoterl__container:last-child {
  padding-bottom: 0;
}

.p-location {
  background-color: transparent;
  padding: 0;
}

.p-mutual__inner {
  display: flex;
  flex-direction: row-reverse;
  background-color: #F3F6FA;
  border-radius: 10px;
  align-items: center;
  margin-bottom: 60px;
}
.p-mutual__contents {
  width: 50%;
  padding: 0 50px;
}
.p-mutual__title {
  margin: 0 auto 30px;
}
.p-mutual__img {
  display: flex;
  width: 54%;
}
.p-mutual__img img {
  width: 50%;
}
.p-mutual__img img:first-child {
  border-radius: 10px 0 0 10px;
}
.p-mutual__cta a {
  margin: 0 auto;
}

.p-luxury {
  text-align: center;
  background-color: #1B3758;
  color: #fff;
}
.p-luxury__title {
  margin-bottom: 35px;
  font-size: clamp(20px, 5vw - 10px, 30px);
}

.p-umito-map__text h2 {
  line-height: 150%;
}

.p-cta-doc {
  background: url(../../img/cta-doc-bg-hawaii.webp) no-repeat center top/100%;
}

.l-footer__disclaimer {
  width: 100%;
  text-align: right;
  font-size: 8px;
  letter-spacing: 0.05em;
}

@media (max-width: 768px) {
  .l-header {
    height: 80px;
  }
  .l-header__logo {
    width: 40.5797101449%;
    max-width: 170px;
  }
  .l-header__nav-wrapper {
    top: 80px;
  }
  .p-mv {
    color: #fff;
    height: 550px;
  }
  .p-mv__inner {
    position: absolute;
    top: 0;
    padding-top: 70px;
  }
  .p-mv__title {
    line-height: 150%;
    letter-spacing: -0.05em;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  }
  .p-mv__subtitle {
    color: #fff;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  }
  .p-mv__btnwrapper {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .p-mv__annotation {
    bottom: 15px;
  }
  .p-genti__inner {
    width: auto;
    padding: 0 5.3140096618%;
  }
  .p-intro {
    padding-top: 60px;
    padding-bottom: 30px;
  }
  .p-intro__inner {
    margin-bottom: 20px;
  }
  .p-intro h2 {
    width: 41%;
    margin: 0 auto 20px;
  }
  .p-intro__slider {
    margin-bottom: 50px;
  }
  .p-intro__slider img {
    aspect-ratio: unset;
  }
  .p-intro__number {
    margin-bottom: 40px;
  }
  .p-intro__name {
    width: 80%;
    margin: 0 auto 20px;
  }
  .p-hotel__head.hawaii {
    background-image: url(../../img/hawaii/head-bg-sp.webp);
  }
  .p-mutual {
    background-color: #F4F6FA;
  }
  .p-mutual__inner {
    display: block;
  }
  .p-mutual__contents {
    width: 100%;
    padding: 0;
  }
  .p-mutual__title {
    margin-bottom: 25px;
  }
  .p-mutual__text {
    margin-bottom: 20px;
  }
  .p-mutual__img {
    margin-bottom: 40px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
  .p-mutual__img img:first-child {
    border-radius: 0;
  }
  .p-feature {
    background-color: #fff;
  }
  .p-cta-doc {
    background: url(../../img/cta-doc-bg-hawaii-sp.webp) no-repeat center top/100%;
  }
  .p-cta-doc__catch {
    letter-spacing: 0.1em;
  }
  .l-footer__disclaimer {
    text-align: left;
  }
}/*# sourceMappingURL=style.css.map */