header .logo {
  max-inline-size: clamp(
    308px * var(--fluid-min-ratio),
    calc(308 * var(--fluid)),
    308px
  );
}

.hero h1 {
  font-size: min(3.90625vw, 50px);
}

.hero .txt-summary {
  font-size: min(1.484375vw, 19px);
}
.hero .txt-summary p strong {
  font-size: min(1.953125vw, 25px);
}
.hero .txt-summary > p:first-of-type {
  display: inline-block;
  padding-block: clamp(
    21px * var(--fluid-min-ratio),
    calc(21 * var(--fluid)),
    21px
  );
  padding-inline: clamp(
      39px * var(--fluid-min-ratio),
      calc(39 * var(--fluid)),
      39px * var(--fluid-max-ratio)
    )
    clamp(
      28px * var(--fluid-min-ratio),
      calc(28 * var(--fluid)),
      28px * var(--fluid-max-ratio)
    );
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: clamp(
    6px * var(--fluid-min-ratio),
    calc(6 * var(--fluid)),
    6px
  );
  background-color: rgba(158, 185, 212, 0.2);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}
.hero .hero-btn {
  aspect-ratio: 327 / 200;
}
.hero-btn a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.hero .hero-btn .btn-add {
  position: relative;
  inset: 0;
  aspect-ratio: 279 / 54;
  max-inline-size: clamp(
    279px * var(--fluid-min-ratio),
    calc(279 * var(--fluid)),
    279px * var(--fluid-max-ratio)
  );
  margin-block-start: clamp(
    15px * var(--fluid-min-ratio),
    calc(15 * var(--fluid)),
    15px
  );
  font-size: clamp(
    21px * var(--fluid-min-ratio),
    calc(21 * var(--fluid)),
    21px * var(--fluid-max-ratio)
  );
  font-size: 1.171vw;
  line-height: 1.1;
  color: #fff;
  background-image: url("/images/bg-link_red.svg");
}
.hero .hero-btn .btn-add strong {
  margin-block-end: 0.3125vw;
}

#about .sec-inner {
  gap: clamp(70px * var(--fluid-min-ratio), calc(70 * var(--fluid)), 70px);
}

#about .sec-inner h2 {
  aspect-ratio: 411 / 181;
  max-inline-size: clamp(
    411px * var(--fluid-min-ratio),
    calc(411 * var(--fluid)),
    411px
  );
  inline-size: 100%;
  background-image: url("/images/en/ttl-about.png");
}

#highlights .sec-inner h2 {
  aspect-ratio: 1077 / 75;
  max-inline-size: clamp(
    1077px * var(--fluid-min-ratio),
    calc(1077 * var(--fluid)),
    1077px
  );
  background-image: url("/images/en/ttl-highlight.png");
}

#schedule h2 {
  aspect-ratio: 773 / 74;
  max-inline-size: clamp(
    773px * var(--fluid-min-ratio),
    calc(773 * var(--fluid)),
    773px
  );
  background-image: url("/images/en/ttl-schedule.png");
}

.schedule-list .excursion-ttl {
  display: flex;
  align-items: center;
  flex-direction: row;
  margin-block-end: 15px;
}
.schedule-list .excursion-ttl p:first-of-type {
  background: transparent;
  padding: 0;
  inline-size: fit-content;
}
.schedule-list .excursion-ttl p.copy {
  inline-size: fit-content;
  padding-block: min(0.78125vw, 10px);
  padding-inline: min(1.5625vw, 20px);
  font-size: clamp(
    14px * var(--fluid-min-ratio),
    calc(14 * var(--fluid)),
    14px
  );
}
.schedule-list .excursion-ttl p.copy strong {
  font-size: clamp(
    20px * var(--fluid-min-ratio),
    calc(20 * var(--fluid)),
    20px
  );
}

@media (max-width: 768px) {
  .schedule-list .excursion-ttl {
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(15px, calc(15 * var(--fluid-sp)), 15px * var(--fluid-max-ratio));
  }
  .schedule-list .excursion-ttl p.copy {
    font-size: clamp(
      14px,
      calc(14 * var(--fluid-sp)),
      14px * var(--fluid-max-ratio)
    );
  }
  .schedule-list .excursion-ttl p.copy strong {
    font-size: clamp(
      16px,
      calc(16 * var(--fluid-sp)),
      16px * var(--fluid-max-ratio)
    );
  }
}

#venue h2 {
  aspect-ratio: 808 / 74;
  max-inline-size: clamp(
    808px * var(--fluid-min-ratio),
    calc(808 * var(--fluid)),
    808px
  );
  background-image: url("/images/en/ttl-venue.png");
}

#hotel .sec-inner h2 {
  aspect-ratio: 297 / 77;
  max-inline-size: clamp(
    297px * var(--fluid-min-ratio),
    calc(297 * var(--fluid)),
    297px
  );
  background-image: url("/images/en/ttl-hotel.png");
}
.hotel-info p .txt-slash {
  padding-inline-start: clamp(
    38px,
    calc(38 * var(--fluid-sp)),
    38px * var(--fluid-max-ratio)
  );
}
.hotel-info p .txt-slash::before {
  inset-inline-start: 0;
}

#history .sec-inner h2 {
  aspect-ratio: 435 / 174;
  max-inline-size: clamp(
    435px * var(--fluid-min-ratio),
    calc(435 * var(--fluid)),
    435px
  );
  background-image: url("/images/en/ttl-history.png");
}

#fukuoka .sec-inner h2 {
  aspect-ratio: 1168 / 73;
  max-inline-size: clamp(
    1168px * var(--fluid-min-ratio),
    calc(1168 * var(--fluid)),
    1168px
  );
  background-image: url("/images/en/ttl-fuk.png");
}

#excursion .sec-inner h2 {
  aspect-ratio: 333 / 46;
  max-inline-size: clamp(
    333px * var(--fluid-min-ratio),
    calc(333 * var(--fluid)),
    333px
  );
  background-image: url("/images/en/ttl-excursion.png");
}

.excursion-ttl {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-inline: 0;
}

.excursion-ttl h2 {
  margin-inline-start: clamp(
    80px * var(--fluid-min-ratio),
    calc(80 * var(--fluid)),
    80px
  );
}

.excursion-ttl p {
  display: block;
  inline-size: 100%;
  max-inline-size: none;
  padding-block: clamp(
    20px * var(--fluid-min-ratio),
    calc(20 * var(--fluid)),
    20px
  );
  padding-inline: clamp(
    30px * var(--fluid-min-ratio),
    calc(30 * var(--fluid)),
    30px
  );
  color: var(--color-primaryBlue);
  font-size: clamp(
    20px * var(--fluid-min-ratio),
    calc(20 * var(--fluid)),
    20px
  );
  background-color: var(--color-primaryYellow);
}
.excursion-ttl p strong {
  display: block;
  font-size: clamp(
    26px * var(--fluid-min-ratio),
    calc(26 * var(--fluid)),
    26px
  );
}

.excursion-list .list-items::after {
  background-image: url("/images/en/bg-comingsoon.png");
}
.excursion-list .list-items p {
  padding-inline-end: clamp(
    70px * var(--fluid-min-ratio),
    calc(70 * var(--fluid)),
    70px
  );
  font-size: min(1.25vw, 16px);
}

.excursion-list .list-items p span {
  display: inline-block;
  margin-block-end: 0.5em;
  font-weight: bold;
}

footer h2 {
  aspect-ratio: 294 / 138;
  max-inline-size: clamp(
    294px * var(--fluid-min-ratio),
    calc(294 * var(--fluid)),
    294px
  );
  background-image: url("/images/en/ttl-contact.png");
}

@media screen and (max-width: 768px) {
  header {
    gap: clamp(18px, calc(18 * var(--fluid-sp)), 18px * var(--fluid-max-ratio));
  }
  header .logo {
    max-inline-size: clamp(
      220px,
      calc(220 * var(--fluid-sp)),
      220px * var(--fluid-max-ratio)
    );
  }

  .hero {
    aspect-ratio: 390 / 830;
    background-size: cover;
  }
  .hero-inner {
    padding-block: 25.641vw 0;
    padding-inline: 3.589vw;
  }
  .hero h1 {
    font-size: 8.974vw;
    margin-block-end: 4.1025vw;
    padding: 0;
    background: none;
  }

  .hero .txt-summary {
    font-size: 3.589vw;
    line-height: 1.3;
  }
  .hero .txt-summary > p:first-of-type {
    padding-block: 3.333vw;
    padding-inline: 2.82vw;
    border-radius: clamp(
      6px,
      calc(6 * var(--fluid-sp)),
      6px * var(--fluid-max-ratio)
    );
  }
  .hero .txt-summary p .txt-heading {
    font-size: 3.589vw;
  }
  .hero .txt-summary p strong {
    font-size: 4.615vw;
  }
  .hero .txt-summary .txt-detail {
    margin-block-start: 2.564vw;
    color: var(--color-primaryWhite);
    font-size: 4.615vw;
    text-shadow: 0 0 4px var(--color-primaryBlue);
  }
  .hero .txt-summary .txt-detail .txt-sub {
    font-size: 4.102vw;
  }
  .hero .hero-btn {
    aspect-ratio: 300 / 190;
    inset-block-end: 0;
  }
  .hero-btn .btn-yellow {
    aspect-ratio: 320 / 71;
    max-inline-size: 82.05vw;
  }
  .hero-btn .btn-blue {
    aspect-ratio: 260 / 58;
    max-inline-size: 66.66vw;
  }
  .hero .hero-btn .btn-add {
    aspect-ratio: 260 / 58;
    max-inline-size: 66.66vw;
    font-size: 3.846vw;
    line-height: 1;
  }
  .hero .hero-btn .btn-add strong {
    margin-block-end: 1.025vw;
  }

  #about .sec-inner h2 {
    aspect-ratio: 330 / 135;
    max-inline-size: clamp(
      330px,
      calc(330 * var(--fluid-sp)),
      330px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-about_sp.png");
  }

  #highlights .sec-inner h2 {
    aspect-ratio: 323 / 139;
    max-inline-size: clamp(
      323px,
      calc(323 * var(--fluid-sp)),
      323px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-highlight_sp.png");
  }

  #schedule h2 {
    aspect-ratio: 304 / 161;
    max-inline-size: clamp(
      304px,
      calc(304 * var(--fluid-sp)),
      304px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-schedule_sp.png");
  }

  #venue h2 {
    aspect-ratio: 341 / 170;
    max-inline-size: clamp(
      341px,
      calc(341 * var(--fluid-sp)),
      341px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-venue_sp.png");
  }

  #hotel .sec-inner h2 {
    aspect-ratio: 212 / 72;
    max-inline-size: clamp(
      212px,
      calc(212 * var(--fluid-sp)),
      212px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-hotel_sp.png");
  }

  #history .sec-inner h2 {
    aspect-ratio: 312 / 138;
    max-inline-size: 80vw;
    margin-inline-start: 9.23vw;
    background-image: url("/images/en/ttl-history_sp.png");
  }

  #fukuoka .sec-inner h2 {
    aspect-ratio: 346 / 170;
    max-inline-size: clamp(
      346px,
      calc(346 * var(--fluid-sp)),
      346px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-fuk_sp.png");
  }

  #excursion .sec-inner h2 {
    aspect-ratio: 223 / 31;
    max-inline-size: clamp(
      223px * var(--fluid-min-ratio),
      calc(223 * var(--fluid-sp)),
      223px * var(--fluid-max-ratio)
    );
    margin-inline-start: clamp(
      24px,
      calc(24 * var(--fluid-sp)),
      24px * var(--fluid-max-ratio)
    );
  }
  .excursion-ttl {
    gap: clamp(20px, calc(20 * var(--fluid-sp)), 20px * var(--fluid-max-ratio));
  }
  .excursion-ttl p {
    padding-inline: clamp(
      20px,
      calc(20 * var(--fluid-sp)),
      20px * var(--fluid-max-ratio)
    );
    padding-block: clamp(
      10px,
      calc(10 * var(--fluid-sp)),
      10px * var(--fluid-max-ratio)
    );
    font-size: clamp(
      16px,
      calc(16 * var(--fluid-sp)),
      16px * var(--fluid-max-ratio)
    );
  }
  .excursion-ttl p strong {
    font-size: clamp(
      20px,
      calc(20 * var(--fluid-sp)),
      20px * var(--fluid-max-ratio)
    );
  }

  .excursion-list .list-items:last-of-type::before {
    inset-block-start: 52%;
  }
  .excursion-list .list-items::after {
    background-image: url("/images/en/bg-comingsoon_sp.png");
  }
  .excursion-list .list-items p {
    margin-bottom: max(2.666vw, 10px);
    padding-inline: max(9.333vw, 35px);
    font-size: max(3.733vw, 14px);
  }
  .excursion-list .list-items p::before {
    content: none;
  }

  footer h2 {
    aspect-ratio: 231 / 116;
    max-inline-size: clamp(
      231px,
      calc(231 * var(--fluid-sp)),
      231px * var(--fluid-max-ratio)
    );
    background-image: url("/images/en/ttl-contact_sp.png");
  }
}
