.swiper-wrapper .swiper-slide {
  max-width: 30.8rem;
  margin-right: 1.2rem;
}

@media (min-width: 768px) {
  .swiper-wrapper .swiper-slide {
    max-width: 61rem;
    margin-right: 2rem;
  }
}

.swiper__card.swiper__card--dealers {
  color: var(--white);
}

.swiper__card.swiper__card--dealers .swiper__cardTag {
  border: 1px solid var(--white);
}

.swiper__card .swiper__cardImg {
  width: 100%;
  height: 23.1rem;
  display: block;
}

@media (min-width: 768px) {
  .swiper__card .swiper__cardImg {
    height: 45.8rem;
  }
}

.swiper__card .swiper__cardBody {
  margin-top: 2.4rem;
  padding: 0 0.8rem;
}

@media (min-width: 768px) {
  .swiper__card .swiper__cardBody {
    margin-top: 3.2rem;
    padding: 0 1.2rem;
  }

  .swiper__card:hover .swiper__cardBody .swiper__cardTitle {
    opacity: 0.5;
  }

  .swiper__card:hover .swiper__cardBody .swiper__cardDescription {
    opacity: 0.5;
  }

  .swiper__card:hover .swiper__cardBody .proposal__more {
    opacity: 0.5;
  }
}

.swiper__card .swiper__cardTag {
  font-size: 1.2rem;
  line-height: calc(16 / 12);
  font-weight: 500;
  border: 1px solid var(--black);
  min-height: 1.6rem;
  padding: 0.1rem 0.8rem;
  width: fit-content;
}

@media (min-width: 768px) {
  .swiper__card .swiper__cardTag {
    font-size: 1.4rem;
    line-height: calc(18 / 14);
  }
}

.swiper__card .swiper__cardTitle {
  font-size: 2.1rem;
  line-height: calc(37 / 21);
  font-weight: 500;
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .swiper__card .swiper__cardTitle {
    font-size: 2.4rem;
    line-height: calc(42 / 24);
    transition: opacity 0.25s ease-in-out;
  }
}

.swiper__card .swiper__cardTitle--dealers {
  color: var(--white);
  font-weight: 500;
  font-size: 2.1rem;
  line-height: calc(37 / 21);
}

@media (min-width: 768px) {
  .swiper__card .swiper__cardTitle--dealers {
    font-size: 2.4rem;
    line-height: calc(42 / 24);
  }
}

.swiper__card .swiper__cardDescription {
  margin-top: 2rem;
  font-weight: 500;
  line-height: 1.75;
  font-size: 1.6rem;
}

@media (min-width: 768px) {
  .swiper__card .swiper__cardDescription {
    font-size: 1.8rem;
    line-height: calc(32 / 18);
    transition: opacity 0.25s ease-in-out;
  }
}

.swiper__card .proposal__more {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.2rem;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 500;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 768px) {
  .swiper__card .proposal__more {
    font-size: 1.4rem;
    margin-top: 2rem;
  }
}

.swiper__card .proposal__more::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1px;
  background-color: var(--gray-00);
  margin: auto 0.8rem 0.2rem 0;
}

.swiper__control {
  margin-top: 3.6rem;
  padding-right: 2.8rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.8rem;
}

@media (min-width: 768px) {
  .swiper__control {
    margin-top: 4.4rem;
    padding-right: 8.4rem;
  }
}

.swiper__control button {
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--black);
  border: 1px solid var(--black);
  color: var(--white);
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 768px) {
  .swiper__control button:hover {
    opacity: 0.5;
  }
}

.swiper__control button svg {
  width: 1rem;
  height: 1.8rem;
  object-fit: contain;
}

.swiper__control button.darkMode {
  background-color: var(--white);
  border: 1px solid var(--white);
  color: var(--black);
}

.swiper__control button:disabled {
  pointer-events: none;
  background-color: var(--silver-00);
  border-color: var(--silver-00);
  color: var(--gray-00);
}

.swiper__control button.darkMode:disabled {
  pointer-events: none;
  background-color: var(--gray-01);
  border-color: var(--gray-01);
  color: var(--gray-02);
}

@media (min-width: 768px) {
  .plan {
    display: grid;
    grid-template-columns: 92.8rem auto;
    align-items: center;
  }
  .plan .plan__info {
    order: 2;
    margin-left: 6rem;
  }
}

.plan .plan__heading {
  font-size: 3.2rem;
  line-height: 1.3125;
  font-weight: 400;
}

@media (min-width: 768px) {
  .plan .plan__heading {
    font-size: 3.7rem;
    line-height: calc(48 / 37);
  }
}

.plan .plan__line {
  height: 1px;
  width: 100%;
  background-color: var(--silver-00);
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .plan .plan__line {
    margin-top: 2.4rem;
  }
}

.plan .plan__text {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 500;
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .plan .plan__text {
    margin-top: 2.4rem;
    font-size: 1.8rem;
    line-height: calc(32 / 18);
  }
}

.plan .plan__picture {
  display: block;
  margin: 5.2rem -2.4rem 0;
  width: calc(100% + 4.8rem);
}

@media (min-width: 768px) {
  .plan .plan__picture {
    margin: 0;
    width: 100%;
  }
}

.buttonPrimary {
  display: block;
  min-height: 4.8rem;
  background-color: var(--black);
  width: 32.7rem;
  margin: 4rem auto 0;
  text-align: center;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 768px) {
  .buttonPrimary:hover {
    opacity: 0.5;
  }
}

@media (min-width: 768px) {
  .buttonPrimary {
    width: 40.5rem;
    min-height: 6rem;
    margin: 5.2rem auto 0;
  }
}

.buttonPrimary .buttonPrimary__text {
  text-align: center;
  color: white;
  font-size: 1.2rem;
  line-height: calc(16 / 12);
  font-weight: 500;
}

@media (min-width: 768px) {
  .buttonPrimary .buttonPrimary__text {
    font-size: 1.4rem;
    line-height: calc(18 / 14);
  }
}

.buttonPrimary.darkMode {
  background-color: var(--white);
}

.buttonPrimary.darkMode .buttonPrimary__text {
  color: var(--black);
}

section.mv {
  padding: 0 0.8rem;
  display: grid;
  row-gap: 3.2rem;
}

section.mv video {
  width: 100%;
}

section.mv .mv__bg {
  position: relative;
}

section.mv .mv__bg .mv__bgInfo {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  color: var(--white);
}

@media (min-width: 768px) {
  section.mv .mv__bg .mv__bgInfo {
    left: 3.2rem;
    bottom: 3.2rem;
  }
}

@media (min-width: 768px) {
  section.mv {
    padding: 0;
    grid-template-columns: auto 70.4rem;
    justify-content: flex-end;
  }
  section.mv .mv__bg {
    order: 2;
  }
  section.mv .mv__content {
    order: 1;
  }
}

section.mv .mv__content {
  padding: 0 2.4rem;
}

section.mv .mv__contentShadow {
  display: none;
}

@media (min-width: 768px) {
  section.mv .mv__contentShadow {
    display: block;
    width: 69.6rem;
  }
}

@media (min-width: 768px) {
  section.mv .mv__content {
    padding: 0 5.2rem 0 13.25rem;
    width: 69.6rem;
    position: absolute;
    z-index: 2;
  }

  section.mv .mv__content.-hide {
    pointer-events: none;
  }

  section.mv .mv__content .mv__contentWrapper {
    transition-duration: 0.4s;
    transition-property: visibility, opacity;
  }

  section.mv .mv__content .mv__contentWrapper.-hide {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
  }

  section.mv .mv__content .mv__line {
    border-color: var(--silver-00);
  }
}

section.mv .mv__content .mv__info {
  display: grid;
  row-gap: 1.2rem;
}

@media (min-width: 768px) {
  section.mv .mv__content .mv__info {
    row-gap: 2.4rem;
  }
}

section.mv .mv__content .mv__info .mv__infoTitle {
  font-weight: 400;
  font-size: 4.2rem;
  line-height: calc(55 / 42);
}

@media (min-width: 768px) {
  section.mv .mv__content .mv__info .mv__infoTitle {
    font-size: 6rem;
    line-height: 1.3;
    margin-top: 6.9rem;
  }
}

section.mv .mv__content .mv__info .mv__infoDescription {
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 2;
}

@media (min-width: 768px) {
  section.mv .mv__content .mv__info .mv__infoDescription {
    font-size: 1.6rem;
  }
}

section.mv .mv__content .mv__banner {
  display: block;
  margin-top: 3.2rem;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 768px) {
  section.mv .mv__content .mv__banner:hover {
    opacity: 0.75;
  }
}

@media (min-width: 768px) {
  section.mv .mv__content .mv__banner {
    margin-top: 6rem;
    width: 44.7rem;
  }
}

section.pickup {
  display: grid;
  margin-top: 8rem;
  padding-left: 2.4rem;
  row-gap: 1.2rem;
}

@media (min-width: 768px) {
  section.pickup {
    margin-top: 12rem;
    padding-left: 8rem;
    row-gap: 2rem;
  }
}

section.pickup .pickup__heading {
  font-weight: 400;
  font-size: 3.2rem;
  line-height: 1.3125;
}

@media (min-width: 768px) {
  section.pickup .pickup__heading {
    font-size: 37px;
    line-height: calc(48 / 37);
  }
}

@media (min-width: 768px) {
  section.pickup .swiper-wrapper .swiper-slide {
    max-width: 40.5rem;
  }
}

section.pickup .pickup__swiperCard .pickup__swiperCardImg {
  width: 100%;
  height: 23.1rem;
  display: block;
}

@media (min-width: 768px) {
  section.pickup .pickup__swiperCard .pickup__swiperCardImg {
    height: 30.4rem;
  }
}

section.pickup .pickup__swiperCard .pickup__swiperCardTitle {
  font-size: 1.8rem;
  line-height: calc(32 / 18);
  font-weight: 500;
  margin: 2.4rem 0.8rem 0rem;
}

@media (min-width: 768px) {
  section.pickup .pickup__swiperCard .pickup__swiperCardTitle {
    font-size: 2.1rem;
    line-height: calc(37 / 21);
    margin: 3.2rem 1.2rem 0rem;
    transition: opacity 0.25s ease-in-out;
  }

  section.pickup .pickup__swiperCard:hover .pickup__swiperCardTitle {
    opacity: 0.5;
  }

  section.pickup .pickup__swiperCard:hover .proposal__more {
    opacity: 0.5;
  }
}

section.pickup .pickup__swiperCard .proposal__more {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.2rem;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 500;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 768px) {
  section.pickup .pickup__swiperCard .proposal__more {
    font-size: 1.4rem;
    margin-top: 2rem;
  }
}

section.pickup .pickup__swiperCard .proposal__more::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2px;
  background-color: var(--gray-00);
  margin: auto 0.8rem 0.2rem 0;
}

section.news {
  margin-top: 8rem;
  padding: 0 2.4rem;
}

@media (min-width: 768px) {
  section.news {
    margin-top: 12rem;
    padding: 0 8rem;
  }
}

/* Check */

section.news .news__heading {
  font-size: 3.2rem;
  line-height: 1.3125;
  font-weight: 400;
}

@media (min-width: 768px) {
  section.news .news__heading {
    font-size: 3.7rem;
    line-height: calc(48 / 37);
  }
}

section.news .news__listItem {
  margin-top: 2.4rem;
  display: grid;
  row-gap: 1.2rem;
}

@media (min-width: 768px) {
  section.news .news__listItem {
    margin-top: 3.2rem;
    row-gap: 1.2rem;
  }
}

@media (min-width: 768px) {
  section.news .news__item {
    display: flex;
    column-gap: 0.8rem;
    align-items: center;
  }
}

section.news .news__item .news__itemInfo {
  display: flex;
  column-gap: 1.2rem;
  min-height: 2.1rem;
  align-items: center;
}

@media (min-width: 768px) {
  section.news .news__item .news__itemInfo {
    column-gap: 2rem;
    min-height: 2.5rem;
  }
}

section.news .news__item .news__itemInfo .news__itemDay {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.2rem;
  line-height: calc(21 / 12);
  font-weight: 500;
  min-width: 7.5rem;
}

@media (min-width: 768px) {
  section.news .news__item .news__itemInfo .news__itemDay {
    font-size: 1.5rem;
    line-height: calc(24 / 14);
    min-width: 8.5rem;
  }
}

section.news .news__item .news__itemInfo .news__itemDay::before {
  content: "";
  position: absolute;
  width: 1.2rem;
  height: 0.12rem;
  background-color: var(--gray-00);
  left: 0.4rem;
  bottom: 0.5rem;
}

@media (min-width: 768px) {
  section.news .news__item .news__itemInfo .news__itemDay::before {
    bottom: 8px;
  }
}

section.news .news__item .news__itemInfo .news__itemTags {
  display: flex;
  column-gap: 1.2rem;
  flex-wrap: wrap;
  row-gap: 0.5rem;
}

section.news .news__item .news__itemInfo .news__itemTag {
  color: white;
  background-color: var(--black);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  line-height: calc(16 / 12);
  font-weight: 600;
  min-height: 1.7rem;
  min-width: 5.2rem;
  padding: 0 0.8rem;
}

@media (min-width: 768px) {
  section.news .news__item .news__itemInfo .news__itemTag {
    min-height: 2rem;
    min-width: 5.7rem;
    font-size: 1.4rem;
    line-height: calc(18 / 14);
  }
}

section.news .news__item .news__itemDescription {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.75;
  margin-top: 0.8rem;
}

@media (min-width: 768px) {
  section.news .news__item .news__itemDescription {
    margin-top: 0;
  }
}

section.planList {
  margin-top: 6rem;
  padding: 0 2.4rem;
}

@media (min-width: 768px) {
  section.planList {
    position: sticky;
    top: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2rem 8rem;
    margin-top: 12rem;
    background-color: var(--white);
    transition: top 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  }
}

html:has(.ljp-header-contents--show) section.planList {
  transition: top 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media (min-width: 768px) {
  html:has(.ljp-header-contents--show) section.planList {
    top: 4.8vw;
  }
}

section.planList .planList__heading {
  font-size: 3.2rem;
  line-height: 4.2rem;
  font-weight: 400;
}

@media (min-width: 768px) {
  section.planList .planList__heading {
    font-size: 3.7rem;
    line-height: calc(48 / 37);
  }
}

section.planList__anchors {
  position: sticky;
  padding: 2.4rem;
  top: 0;
  display: flex;
  font-size: 1.6rem;
  line-height: 1.3125;
  font-weight: 500;
  column-gap: 1.2rem;
  background-color: var(--white);
  z-index: 999;
  transition: top 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
}

html:has(.ljp-header-contents--show) section.planList__anchors {
  transition: top 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  top: 19.8vw;
}

@media (min-width: 768px) {
  html:has(.ljp-header-contents--show) section.planList__anchors {
    top: 4.8vw;
  }
}

@media (min-width: 768px) {
  section.planList__anchors {
    padding: 0;
    font-size: 1.8rem;
    line-height: calc(23 / 18);
    column-gap: 2rem;
  }
}

section.planList__anchors .planList__anchor {
  position: relative;
  cursor: pointer;

  border-bottom: 2px solid transparent;
  transition: border-color 0.2s ease-in-out;
  padding-bottom: 0.25rem;
}

section.planList__anchors .planList__anchor.active-border {
  border-color: black;
}

@media (min-width: 768px) {
  section.planList__anchors .planList__anchor:hover {
    border-color: black;
  }
}

section.travel {
  padding: 0 2.4rem;
  margin-top: 4.6rem;
}

@media (min-width: 768px) {
  section.travel {
    padding: 0 5.5rem 0 8rem;
    margin-top: 1.2rem;
  }
}

section.gourmet {
  padding: 0 2.4rem;
  margin-top: 15.2rem;
}

@media (min-width: 768px) {
  section.gourmet {
    padding: 0 5.5rem 0 8rem;
    margin-top: 12rem;
  }
}

section.drive {
  padding: 0 2.4rem;
  margin-top: 15.2rem;
}

@media (min-width: 768px) {
  section.drive {
    padding: 0 5.5rem 0 8rem;
    margin-top: 12rem;
  }
}

section.dealers {
  margin-top: 10rem;
  background-color: var(--black);
  padding: 10rem 0;
}

@media (min-width: 768px) {
  section.dealers {
    margin-top: 12rem;
    padding: 12rem 0;
  }
}

section.dealers .dealers__wrapper {
  padding: 0 2rem;
  color: var(--white);
}

@media (min-width: 768px) {
  section.dealers .dealers__wrapper {
    padding: 0 8rem;
  }
}

section.dealers .dealers__wrapper .dealers__heading {
  font-size: 3.2rem;
  line-height: 1.3125;
  font-weight: 400;
}

@media (min-width: 768px) {
  section.dealers .dealers__wrapper .dealers__heading {
    font-size: 3.7rem;
    line-height: calc(48 / 37);
  }
}

section.dealers .dealers__wrapper .dealers__subHeading {
  font-size: 1.6rem;
  line-height: 1.3125;
  font-weight: 400;
  margin-top: 0.4rem;
}

@media (min-width: 768px) {
  section.dealers .dealers__wrapper .dealers__subHeading {
    margin-top: 0.8rem;
    font-size: 1.8rem;
    line-height: calc(23 / 18);
  }
}

section.dealers .dealers__wrapper .dealers__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 500;
}

@media (min-width: 768px) {
  section.dealers .dealers__wrapper .dealers__text {
    margin-top: 2rem;
    font-size: 1.6rem;
  }
}

section.journey {
  padding: 0 2.4rem;
}

@media (min-width: 768px) {
  section.journey {
    padding: 0 8rem;
  }
}

section.journey .journey__heading {
  font-size: 3.2rem;
  line-height: 1.3125;
  font-weight: 400;
}

@media (min-width: 768px) {
  section.journey .journey__heading {
    font-size: 3.7rem;
    line-height: calc(48 / 37);
  }
}

section.journey .journey__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 500;
}

@media (min-width: 768px) {
  section.journey .journey__text {
    margin-top: 2rem;
    font-size: 1.6rem;
    line-height: calc(32 / 16);
  }
}

section.journey .journey__note {
  display: grid;
  grid-template-columns: 1rem 1fr;
  font-size: 1.2rem;
  line-height: calc(18 / 12);
  column-gap: 0.4rem;
  font-weight: 500;
  margin-top: 2rem;
}

section.journey .journey__note span:first-child {
  font-size: 1.2rem;
}

section.journey .journey__note span {
  line-height: 1.6;
}

.journey--mt52 {
  margin-top: 5.2rem;
}

@media (min-width: 768px) {
  .journey--mt52 {
    margin-top: 8rem;
  }
}

.journey--mt80 {
  margin-top: 8rem;
}

@media (min-width: 768px) {
  .journey--mt80 {
    margin-top: 10rem;
  }
}

section.journeySwiper {
  margin-top: 3.2rem;
  padding-left: 2.4rem;
}

@media (min-width: 768px) {
  section.journeySwiper {
    margin-top: 4rem;
    padding-left: 8rem;
  }
}

section.hotelCollection {
  margin-top: 8rem;
  padding: 0 2.4rem;
}

@media (min-width: 768px) {
  section.hotelCollection {
    padding: 0 8rem;
    margin-top: 10rem;
  }
}

@media (min-width: 768px) {
  section.hotelCollection .hotelCollection__headingWrapper {
    display: flex;
    align-items: center;
    column-gap: 2rem;
  }
}

section.hotelCollection
  .hotelCollection__headingWrapper
  .hotelCollection__heading {
  font-size: 3.2rem;
  line-height: 1.3125;
  font-weight: 400;
}

@media (min-width: 768px) {
  section.hotelCollection
    .hotelCollection__headingWrapper
    .hotelCollection__heading {
    font-size: 3.7rem;
    line-height: calc(48 / 37);
  }
}

section.hotelCollection .hotelCollection__headingWrapper .hotelCollection__tag {
  font-size: 1.2rem;
  line-height: calc(16 / 12);
  font-weight: 500;
  padding: 0 0.8rem;
  border: 1px solid var(--black);
  min-height: 1.6rem;
  margin-top: 1.2rem;
  width: fit-content;
}

@media (min-width: 768px) {
  section.hotelCollection
    .hotelCollection__headingWrapper
    .hotelCollection__tag {
    margin-top: 0;
    font-size: 1.4rem;
    line-height: calc(18 / 14);
  }
}

section.hotelCollection .hotelCollection__text {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2;
  margin-top: 1.2rem;
}

@media (min-width: 768px) {
  section.hotelCollection .hotelCollection__text {
    margin-top: 2rem;
    font-size: 1.6rem;
    line-height: calc(32 / 16);
  }
}

section.hotelCollection .hotelCollection__img {
  display: block;
  margin: 3.2rem 0 0;
  width: 100%;
}

section.hotelCollection .hotelCollection__notes {
  margin-top: 3.2rem;
  display: grid;
}

@media (min-width: 768px) {
  section.hotelCollection .hotelCollection__notes {
    margin-top: 2rem;
  }
}

section.hotelCollection .hotelCollection__notes .hotelCollection__note {
  display: grid;
  grid-template-columns: 1rem 1fr;
  column-gap: 0.4rem;
  font-size: 1rem;
  font-weight: 500;
}

@media (min-width: 768px) {
  section.hotelCollection .hotelCollection__notes .hotelCollection__note {
    font-size: 1.2rem;
  }
}

section.hotelCollection
  .hotelCollection__notes
  .hotelCollection__note
  .hotelCollection__note--highlight {
  text-decoration: underline;
  transition: opacity 0.25s ease-in-out;
}

section.hotelCollection
  .hotelCollection__notes
  .hotelCollection__note
  .hotelCollection__note--highlight:hover {
  opacity: 0.5;
}

section.hotelCollection .hotelCollection__notes .hotelCollection__note span {
  line-height: 1.6;
}

@media (min-width: 768px) {
  section.hotelCollection .hotelCollection__notes .hotelCollection__note span {
    line-height: calc(18 / 12);
  }
}

.bevBanner {
  display: block;
  width: 32.7rem;
  margin: 8rem auto;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 768px) {
  .bevBanner:hover {
    opacity: 0.75;
  }
}

@media (min-width: 768px) {
  .bevBanner {
    width: 84.8rem;
    margin: 12rem auto;
  }
}

.japanJourney_note {
  font-size: 1.4rem;
  line-height: calc(18 / 14);
  display: grid;
  grid-template-columns: 1rem 1fr;
  column-gap: 0.4rem;
  font-weight: 500;
  max-width: 105.4rem;
  margin: 2rem auto 0;
}

.japanJourney_noteHighlight {
  text-decoration: underline;
  transition: opacity 0.25s ease-in-out;
  cursor: pointer;
}

@media (min-width: 768px) {
  .japanJourney_noteHighlight:hover {
    opacity: 0.5;
  }
}

.japanJourney_note span:first-child {
  font-size: 1.2rem;
}

.japanJourney_note span {
  line-height: 1.6;
}

.swiper__control:has(.slidePrev[aria-disabled="true"]):has(
    .slideNext[aria-disabled="true"]
  ) {
  display: none;
}

/* Notice Modal */
.noticeModal {
  position: fixed;
  z-index: 2000;
  inset: 0;
  background-color: var(--color-overlay);
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.2s ease-in-out,
    visibility 0.2s ease-in-out;
}

.noticeModal[data-open="true"] {
  opacity: 1;
  visibility: visible;
}

.noticeModal .noticeModal__overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.noticeModal .noticeModal__wrapper {
  overflow: auto;
  z-index: 10;
  height: 100vh;
}

@media (min-width: 768px) {
  .noticeModal .noticeModal__wrapper {
    padding: 14rem 0;
  }
}

.noticeModal .noticeModal__wrapper .noticeModal__inner {
  width: 100%;
  padding: 9.5rem 2.4rem 4.5rem;
  background-color: var(--white);
  margin: auto;
  position: relative;
}

@media (min-width: 768px) {
  .noticeModal .noticeModal__wrapper .noticeModal__inner {
    width: 100rem;
    padding: 9rem 5rem 5rem;
  }
}

.noticeModal .noticeModal__wrapper .noticeModal__inner .noticeModal__mClose {
  cursor: pointer;
  position: absolute;
  top: 2rem;
  right: 2rem;
}

@media (min-width: 768px) {
  .noticeModal .noticeModal__wrapper .noticeModal__inner .noticeModal__mClose {
    transition: opacity 0.2s ease-in-out;
  }
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__mClose:hover {
    opacity: 0.75;
  }
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__mClose
  svg {
  display: block;
  width: 2rem;
  height: 2rem;
}
.noticeModal .noticeModal__wrapper .noticeModal__inner .noticeModal__title {
  font-weight: 500;
  font-size: 2.1rem;
  line-height: 1.75;
}

.noticeModal .noticeModal__wrapper .noticeModal__inner .noticeModal__contents {
  margin-top: 4rem;
  padding: 4rem;
  border: 1px solid var(--silver-00);
}

@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__contents {
    padding: 5.2rem;
  }
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentTitle {
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.75;
}

@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__contents
    .noticeModal__contentTitle {
    font-size: 1.8rem;
  }
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentSubTitle {
  margin-top: 2rem;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1;
  display: flex;
  align-items: baseline;
  width: fit-content;
}

@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__contents
    .noticeModal__contentSubTitle {
    transition: opacity 0.2s ease-in-out;
  }
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__contents
    .noticeModal__contentSubTitle:hover {
    opacity: 0.5;
  }
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentSubTitle::before {
  content: "";
  display: block;
  width: 1.2rem;
  border-top: 1px solid var(--gray-00);
  margin-right: 0.8rem;
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentList {
  margin-top: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentList
  .noticeModal__contentItem {
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1.75;
  display: flex;
  gap: 0.5rem;
}

@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__contents
    .noticeModal__contentList
    .noticeModal__contentItem {
    font-size: 1.4rem;
  }
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentList
  .noticeModal__contentItem::before {
  content: attr(data-before);
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__hr {
  margin: 4rem 0;
  border-top: none;
  border-color: var(--silver-00);
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentCaptions {
  margin-top: 3rem;
  color: var(--gray-00);
}

.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentCaptions
  .noticeModal__contentCaptionItem {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  display: flex;
}

@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__contents
    .noticeModal__contentCaptions
    .noticeModal__contentCaptionItem {
    font-size: 1.2rem;
  }
}
.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__contents
  .noticeModal__contentCaptions
  .noticeModal__contentCaptionItem::before {
  content: "※";
}
.noticeModal .noticeModal__wrapper .noticeModal__inner .noticeModal__footer {
  margin-top: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__footer
  .noticeModal__viewMore {
  width: 100%;
  height: 6rem;
  background-color: var(--black);
  color: var(--white) !important;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.3;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__footer
    .noticeModal__viewMore {
    width: 40.5rem;
    height: 6rem;
    transition: opacity 0.2s ease-in-out;
  }
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__footer
    .noticeModal__viewMore:hover {
    opacity: 0.75;
  }
}
.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__footer
  .noticeModal__sClose {
  cursor: pointer;
  margin-top: 3rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 1.2rem;
  line-height: 2;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__footer
    .noticeModal__sClose {
    transition: opacity 0.2s ease-in-out;
    font-weight: 1.4rem;
  }
  .noticeModal
    .noticeModal__wrapper
    .noticeModal__inner
    .noticeModal__footer
    .noticeModal__sClose:hover {
    opacity: 0.75;
  }
}
.noticeModal
  .noticeModal__wrapper
  .noticeModal__inner
  .noticeModal__footer
  .noticeModal__sClose
  svg {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
}
