@charset "UTF-8";
@keyframes rotate {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.main-area.lp {
  --color4: #F5EFEA;
  background-size: 100% auto;
  background-position: top center;
}

.header {
  background: rgb(0, 0, 0) !important;
  background: linear-gradient(0deg, transparent 0%, rgb(0, 0, 0) 90%) !important;
  background-color: transparent !important;
}

/* font */
.header .header-logo svg path,
.header .header-nav a svg path {
  fill: #ffffff !important;
}

.header .menu-ttl a {
  color: #fff !important;
}

.header .header-nav__menuBtn--border span {
  background-color: #fff !important;
}

.toggle-arrow::before,
.toggle-arrow::after {
  background: #fff !important;
}

.header .header-nav__user.active a path,
.header .header-nav__search.active a path,
.header .header-nav__cart.active a path {
  fill: var(--color-main) !important;
}

.header .header-nav__menuBtn.open span {
  background-color: var(--color-main) !important;
}

.landing_content {
  font-family: "the-seasons", "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
  overflow-x: hidden;
  --color1: #000;
  --color2: #fff;
  --header-height: calc(24.7px + 65.91px + 40px + 40px);
  --breadlist-height: 43px;
  --nav-menu-height: 42.84px;
  --master-height: calc(var(--header-height) + var(--breadlist-height));
}

@media (max-width: 1400px) and (min-width: 768px) {
  html {
    font-size: 0.7142857143vw;
  }
}
@media screen and (min-width: 768px) {
  .landing_content {
    overflow: visible;
    position: relative;
    /* 星がキラキラ光るアニメーション */
  }
  .landing_content .js-stars {
    position: relative;
    overflow: hidden;
    height: 100vh;
  }
  .landing_content .js-stars .star {
    position: absolute;
    display: block;
    opacity: 0;
    width: 1rem;
    aspect-ratio: 30/31;
    box-shadow: 0 0 4px 2px rgba(255, 255, 255, 0.2);
    animation: twinkle 5s infinite;
    background-image: url(/Page/LP/2024/1016_moon/img/star.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
  }
  .landing_content .js-fade {
    opacity: 0;
    will-change: opacity, transform;
    transition: ease-in, opacity 1500ms, transform 1500ms;
  }
  .landing_content .js-fade--active {
    opacity: 1;
  }
  @keyframes isLoading {
    0% {
      clip-path: circle(0% at 50% 50%);
    }
    100% {
      clip-path: circle(100vh at 50% 50%);
    }
  }
  @keyframes twinkle {
    0% {
      opacity: 0;
    }
    50% {
      transform: scale(1.1);
      opacity: 1;
    }
    100% {
      opacity: 0;
      transform: scale(1);
    }
  }
  .landing_content .css-section6 .swiper_first {
    overflow: hidden;
    margin: 0 auto;
    position: relative;
    display: none;
  }
  .landing_content .css-section6 .swiper_first.swiper-initialized {
    display: block;
  }
  .landing_content .css-section6 .swiper_first .swiper-slide {
    width: 48rem;
    aspect-ratio: 480/640;
    object-fit: cover;
    overflow: hidden;
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 4rem;
    /* ページネーションの基本スタイル */
    /* 選択されているページネーション */
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination .swiper-pagination-bullet {
    background-color: transparent;
    /* 背景色を透明に */
    background-image: url(/Page/LP/2024/1016_moon/img/dot.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: unset;
    /* これがないと画像が欠ける */
    opacity: 1;
    /* 画像の透過を無くす */
    width: 2rem;
    height: 2rem;
    aspect-ratio: 1/1;
    margin: 0;
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
    margin-left: 1.5rem;
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination .swiper-pagination-bullet-active {
    background-image: url(/Page/LP/2024/1016_moon/img/dot_active.png);
    width: 2rem;
    height: 2rem;
  }
  .landing_content .css-section7 {
    margin-top: 7.3rem;
  }
  .landing_content .css-section7 .css-hover__overlay {
    background-color: rgba(255, 255, 255, 0.5);
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
  }
  .landing_content .css-section7 .css-hover__credit__link p {
    color: var(--color1);
  }
  .landing_content .css-section7 .swiper_second {
    overflow: hidden;
    margin: 0 auto;
    position: relative;
    display: none;
  }
  .landing_content .css-section7 .swiper_second.swiper-initialized {
    display: block;
  }
  .landing_content .css-section7 .swiper_second .swiper-slide {
    width: 30rem;
    aspect-ratio: 300/300;
    object-fit: cover;
    overflow: hidden;
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 4rem;
    /* ページネーションの基本スタイル */
    /* 選択されているページネーション */
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination .swiper-pagination-bullet {
    background-color: transparent;
    /* 背景色を透明に */
    background-image: url(/Page/LP/2024/1016_moon/img/dot.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: unset;
    /* これがないと画像が欠ける */
    opacity: 1;
    /* 画像の透過を無くす */
    width: 2rem;
    height: 2rem;
    aspect-ratio: 1/1;
    margin: 0;
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
    margin-left: 1.5rem;
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination .swiper-pagination-bullet-active {
    background-image: url(/Page/LP/2024/1016_moon/img/dot_active.png);
    width: 2rem;
    height: 2rem;
  }
  .js-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 1000;
    background-color: rgba(255, 255, 255, 0.5);
    visibility: hidden;
    opacity: 0;
    z-index: 1006;
  }
  .js-modal.js-active {
    visibility: visible;
    opacity: 1;
    transition: 0.3s;
  }
  .js-modal__main {
    position: absolute;
    z-index: 2;
    width: 90rem;
    height: 60rem;
    aspect-ratio: 900/600;
    background-image: url("/Page/LP/2024/1016_moon/img/modal_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 2rem;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    margin: auto;
  }
  .js-modal__main__close {
    position: absolute;
    width: 4rem;
    aspect-ratio: 40/40;
    top: 0;
    right: -7rem;
    cursor: pointer;
    z-index: 1006;
  }
  .js-modal__main__headline {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2rem;
    letter-spacing: 0.07em;
    line-height: 3.2rem;
    color: var(--color2);
    position: relative;
    left: 5.8rem;
    top: 24.4rem;
    text-align: left;
  }
  .js-modal__main__detail {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.6rem;
    letter-spacing: 0.07em;
    line-height: 3.2rem;
    color: var(--color2);
    position: relative;
    left: 5.8rem;
    top: 26.3rem;
    text-align: left;
  }
  .js-modal__main__triangle {
    position: relative;
    width: 35rem;
    aspect-ratio: 350/348;
    top: 2.9rem;
    left: 49.2rem;
  }
  .main-area {
    padding-top: 0;
    margin-bottom: 16.2rem;
  }
  .landing_content {
    overflow-x: hidden;
  }
  .landing_content .flex_background_wrapper {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-image: url(/Page/LP/2024/1016_moon/img/background.jpg);
    background-repeat: repeat-y;
    background-size: 100% auto;
    background-position: center;
  }
  .landing_content .s-view {
    display: none !important;
  }
  .landing_content img {
    width: 100%;
    height: auto;
    max-width: 100%;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
  .landing_content .flex_background_first_view {
    position: fixed;
    top: 14rem;
    top: calc(0 * 100vw / 1440);
    width: 100vw;
    height: 100vh;
    left: 50%;
    transform: translateX(-50%);
    overflow: hidden;
  }
  .landing_content .flex_background_first_view.js-fadeOut {
    opacity: 1;
    transition: opacity 0.5s;
  }
  .landing_content .flex_background_first_view.js-fadeOut--active {
    opacity: 0;
  }
  .landing_content .flex_background_first_view .js-scrollBlur {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    background-color: rgba(37, 41, 52, 0.8);
    opacity: 0;
    transition: backdrop-filter 0.5s 0.5s, opacity 0.5s 0.5s;
  }
  .landing_content .flex_background_first_view .js-scrollBlur--active {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    opacity: 1;
  }
  .landing_content .flex_background_first_view__wrapper {
    bottom: 0;
    margin: 0 auto;
    position: absolute;
  }
  .landing_content .flex_background_first_view__wrapper.js-clipPathCircle {
    transition: clip-path 2.5s;
    clip-path: circle(0 at 50% 100%);
  }
  .landing_content .flex_background_first_view__wrapper.js-clipPathCircle--active {
    clip-path: circle(80vh at 50% 100%);
  }
  .landing_content .flex_background_first_view__wrapper.js-clipPathCircle--active--override {
    clip-path: circle(200vh at 50% 100%);
  }
  .landing_content .flex_background_first_view__wrapper img {
    position: relative;
    aspect-ratio: 4/3;
    top: 20vh;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    width: 100%;
    max-width: auto;
  }
  .landing_content .flex_background_first_view__wrapper::after {
    content: "";
    width: 100%;
    aspect-ratio: 4/3;
    position: absolute;
    left: 0;
    top: 0;
    transition: all 2.5s;
  }
  .landing_content__wrapper {
    position: relative;
  }
  .landing_content__first_area {
    position: relative;
    width: 100vw;
    height: 100vh;
  }
  .landing_content .css-firstview_textarea {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    bottom: -31.2rem;
  }
  .landing_content .css-firstview_textarea .css-headline {
    font-family: "the-seasons", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 5.4rem;
    font-weight: bold;
    letter-spacing: 0.08em;
    line-height: 7.02rem;
    color: var(--color2);
    position: relative;
    left: -0.6rem;
    text-align: center;
  }
  .landing_content .css-firstview_textarea .css-text {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 3.2rem;
    color: var(--color2);
    position: relative;
    left: -0.8rem;
    top: 3.5rem;
    text-align: center;
  }
  .landing_content__headline {
    font-family: "the-seasons", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: var(--color2);
    font-size: 4.4rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    line-height: 6rem;
    text-align: center;
    position: relative;
    left: 0.4rem;
  }
  .landing_content__headline.css-headline1 {
    margin-top: 51.6rem;
  }
  .landing_content__headline.css-headline2 {
    margin-top: 20.3rem;
  }
  .landing_content__headline.css-headline3 {
    margin-top: 19.3rem;
  }
  .landing_content__section {
    width: 90rem;
    margin: 0 auto;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .landing_content__section .css-images {
    cursor: pointer;
    display: block;
    width: 45rem;
    aspect-ratio: 450/600;
    overflow: hidden;
  }
  .landing_content__section .css-images img {
    transition: 1s all;
  }
  .landing_content__section .css-images__hover img:hover {
    transform: scale(1.08);
  }
  .landing_content__section .css-headline_area {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  .landing_content__section .css-headline_area .css-star {
    position: relative;
    width: 2rem;
    aspect-ratio: 20/20;
  }
  .landing_content__section .css-headline_area .css-headline {
    position: relative;
  }
  .landing_content__section .css-headline_area .css-headline--jp {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 3rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 3.2rem;
    text-align: center;
    color: var(--color2);
  }
  .landing_content__section .css-headline_area .css-headline--en {
    font-family: "the-seasons", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    line-height: 3.2rem;
    text-align: center;
    color: var(--color2);
    position: relative;
    top: 0.8rem;
  }
  .landing_content__section .css-all_item {
    position: absolute;
    display: block;
    width: 15rem;
    aspect-ratio: 150/150;
  }
  .landing_content__section.css-section1 {
    margin-top: 7.3rem;
  }
  .landing_content__section.css-section1 .css-images {
    order: 1;
  }
  .landing_content__section.css-section1 .css-headline_area {
    order: 2;
    left: -15rem;
    top: -12.1rem;
  }
  .landing_content__section.css-section1 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section1 .css-headline_area .css-headline {
    left: 0.2rem;
    top: 2.9rem;
  }
  .landing_content__section.css-section1 .css-all_item {
    top: 31.3rem;
    right: 15rem;
  }
  .landing_content__section.css-section2 {
    margin-top: 14rem;
  }
  .landing_content__section.css-section2 .css-images {
    order: 2;
  }
  .landing_content__section.css-section2 .css-headline_area {
    order: 1;
    left: 19.3rem;
    top: -12.1rem;
  }
  .landing_content__section.css-section2 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section2 .css-headline_area .css-headline {
    left: 0.2rem;
    top: 2.9rem;
  }
  .landing_content__section.css-section2 .css-all_item {
    left: 15rem;
    top: 31.3rem;
  }
  .landing_content__section.css-section3 {
    margin-top: 14rem;
  }
  .landing_content__section.css-section3 .css-images {
    order: 1;
  }
  .landing_content__section.css-section3 .css-headline_area {
    order: 2;
    left: -16.6rem;
    top: -12.1rem;
  }
  .landing_content__section.css-section3 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section3 .css-headline_area .css-headline {
    left: 0.2rem;
    top: 2.9rem;
  }
  .landing_content__section.css-section3 .css-all_item {
    top: 31.3rem;
    right: 15rem;
  }
  .landing_content__section.css-section4 {
    margin-top: 14rem;
  }
  .landing_content__section.css-section4 .css-images {
    order: 2;
  }
  .landing_content__section.css-section4 .css-headline_area {
    order: 1;
    left: 14.4rem;
    top: -12.1rem;
  }
  .landing_content__section.css-section4 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section4 .css-headline_area .css-headline {
    left: 0.2rem;
    top: 2.9rem;
  }
  .landing_content__section.css-section4 .css-all_item {
    left: 15rem;
    top: 31.3rem;
  }
  .landing_content .js-zoom img {
    transition: 1s all;
  }
  .landing_content .js-zoom--active img {
    transform: scale(1.08);
  }
  .landing_content .js-hover {
    opacity: 0;
    transition: ease-in, opacity 0.5s;
  }
  .landing_content .js-hover--active {
    opacity: 1;
  }
  .landing_content .css-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .landing_content .css-hover--image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .landing_content .css-hover__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(37, 41, 52, 0.8);
  }
  .landing_content .css-hover__credit {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    white-space: nowrap;
  }
  .landing_content .css-hover__credit__link {
    display: block;
  }
  .landing_content .css-hover__credit__link:not(:last-child) {
    margin-bottom: 1.8rem;
  }
  .landing_content .css-hover__credit__link p {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.6rem;
    line-height: 2.4rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    text-align: center;
    color: var(--color2);
  }
  .landing_content__section_hover {
    width: 90rem;
    aspect-ratio: 900/600;
    margin: 0 auto;
    margin-top: 20rem;
    position: relative;
  }
  .landing_content__section_hover .css-section_hover_image {
    position: relative;
    width: 90rem;
    aspect-ratio: 900/600;
    overflow: hidden;
  }
  .landing_content .css-normal_list {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    position: relative;
  }
  .landing_content .css-normal_list__item {
    position: relative;
    width: 30rem;
    aspect-ratio: 300/300;
    object-fit: cover;
    overflow: hidden;
  }
  .landing_content .css-normal_list__item:not(:first-of-type) {
    margin-left: 6rem;
  }
  .landing_content__section_slide.css-section6 {
    margin-top: 7.3rem;
  }
  .landing_content__section_circle.css-section8 {
    position: relative;
    width: 104rem;
    aspect-ratio: 1040/870;
    margin: 0 auto;
    margin-top: 15rem;
  }
  .landing_content__section_circle.css-section8 .css-image1,
  .landing_content__section_circle.css-section8 .css-image2,
  .landing_content__section_circle.css-section8 .css-image3,
  .landing_content__section_circle.css-section8 .css-image4 {
    position: absolute;
  }
  .landing_content__section_circle.css-section8 .css-image1 {
    overflow: hidden;
    width: 45rem;
    aspect-ratio: 450/600;
    top: 0;
    left: 3rem;
    z-index: 1;
  }
  .landing_content__section_circle.css-section8 .css-image2 {
    overflow: hidden;
    width: 45rem;
    aspect-ratio: 450/600;
    top: 20rem;
    right: 3rem;
    z-index: 1;
  }
  .landing_content__section_circle.css-section8 .css-image3 {
    width: 50.134rem;
    aspect-ratio: 501.34/190.26;
    bottom: 0;
    left: 3rem;
    z-index: 0;
  }
  .landing_content__section_circle.css-section8 .css-image4 {
    z-index: 0;
    width: 25.4rem;
    aspect-ratio: 254/254;
    top: 0;
    right: -3rem;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .landing_content__section_circle.css-section8 .css-image4 .css-star {
    position: absolute;
    width: 4rem;
    aspect-ratio: 40/40;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    margin: auto;
  }
  .landing_content__section_circle.css-section8 .css-image4 .css-circle {
    animation: 15s linear infinite rotate;
  }
  .landing_content .css-check_all {
    width: 20rem;
    margin: 0 auto;
    margin-top: 9rem;
  }
  .landing_content .css-check_all__link {
    width: 20rem;
    aspect-ratio: 200/200;
  }
}
@media screen and (max-width: 767px) {
  .header .header-logo.active a path,
  .header .header-nav__user.active a path,
  .header .header-nav__search.active a path,
  .header .header-nav__cart.active a path {
    fill: var(--color-main) !important;
  }
  .landing_content {
    overflow: visible;
    position: relative;
    /* 星がキラキラ光るアニメーション */
  }
  .landing_content .js-stars {
    position: relative;
    overflow: hidden;
    height: 100vh;
  }
  .landing_content .js-stars .star {
    position: absolute;
    display: block;
    opacity: 0;
    width: 1rem;
    aspect-ratio: 30/31;
    box-shadow: 0 0 4px 2px rgba(255, 255, 255, 0.2);
    animation: twinkle 5s infinite;
    background-image: url(/Page/LP/2024/1016_moon/img/star.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
  }
  .landing_content .js-fade {
    opacity: 0;
    will-change: opacity, transform;
    transition: ease-in, opacity 1500ms, transform 1500ms;
  }
  .landing_content .js-fade--active {
    opacity: 1;
  }
  @keyframes isLoading {
    0% {
      clip-path: circle(0% at 50% 50%);
    }
    100% {
      clip-path: circle(60vh at 50% 50%);
    }
  }
  @keyframes twinkle {
    0% {
      opacity: 0;
    }
    50% {
      transform: scale(1.1);
      opacity: 1;
    }
    100% {
      opacity: 0;
      transform: scale(1);
    }
  }
  .landing_content .css-section6 .swiper_first {
    overflow: hidden;
    margin: 0 auto;
    position: relative;
    display: none;
  }
  .landing_content .css-section6 .swiper_first.swiper-initialized {
    display: block;
  }
  .landing_content .css-section6 .swiper_first .swiper-slide {
    width: calc(345 * 100vw / 375);
    aspect-ratio: 345/460;
    object-fit: cover;
    overflow: hidden;
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: calc(30 * 100vw / 375);
    /* ページネーションの基本スタイル */
    /* 選択されているページネーション */
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination .swiper-pagination-bullet {
    background-color: transparent;
    /* 背景色を透明に */
    background-image: url(/Page/LP/2024/1016_moon/img/dot.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: unset;
    /* これがないと画像が欠ける */
    opacity: 1;
    /* 画像の透過を無くす */
    width: calc(20 * 100vw / 375);
    height: calc(20 * 100vw / 375);
    aspect-ratio: 1/1;
    margin: 0;
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
    margin-left: calc(15 * 100vw / 375);
  }
  .landing_content .css-section6 .swiper_first .swiper-pagination .swiper-pagination-bullet-active {
    background-image: url(/Page/LP/2024/1016_moon/img/dot_active.png);
    width: calc(20 * 100vw / 375);
    height: calc(20 * 100vw / 375);
  }
  .landing_content .css-section7 {
    margin-top: calc(25 * 100vw / 375);
  }
  .landing_content .css-section7 .css-hover__overlay {
    background-color: rgba(255, 255, 255, 0.5);
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
  }
  .landing_content .css-section7 .css-hover__credit__link p {
    color: var(--color1);
  }
  .landing_content .css-section7 .swiper_second {
    overflow: hidden;
    margin: 0 auto;
    position: relative;
    display: none;
  }
  .landing_content .css-section7 .swiper_second.swiper-initialized {
    display: block;
  }
  .landing_content .css-section7 .swiper_second .swiper-slide {
    width: calc(250 * 100vw / 375);
    aspect-ratio: 250/250;
    object-fit: cover;
    overflow: hidden;
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: calc(30 * 100vw / 375);
    /* ページネーションの基本スタイル */
    /* 選択されているページネーション */
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination .swiper-pagination-bullet {
    background-color: transparent;
    /* 背景色を透明に */
    background-image: url(/Page/LP/2024/1016_moon/img/dot.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: unset;
    /* これがないと画像が欠ける */
    opacity: 1;
    /* 画像の透過を無くす */
    width: calc(20 * 100vw / 375);
    height: calc(20 * 100vw / 375);
    aspect-ratio: 1/1;
    margin: 0;
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
    margin-left: calc(15 * 100vw / 375);
  }
  .landing_content .css-section7 .swiper_second .swiper-pagination .swiper-pagination-bullet-active {
    background-image: url(/Page/LP/2024/1016_moon/img/dot_active.png);
    width: calc(20 * 100vw / 375);
    height: calc(20 * 100vw / 375);
  }
  .js-modal {
    position: fixed;
    top: calc(0 * 100vw / 375);
    left: calc(0 * 100vw / 375);
    width: 100vw;
    height: 100dvh;
    padding-bottom: calc(30 * 100vw / 375);
    z-index: 1000;
    visibility: hidden;
    opacity: calc(0 * 100vw / 375);
    overflow-y: scroll;
    background-color: rgba(255, 255, 255, 0.5);
    z-index: 1006;
  }
  .js-modal.js-active {
    visibility: visible;
    opacity: 1;
    transition: 0.3s;
  }
  .js-modal .js-modal_scroll {
    width: 100%;
    height: 100%;
  }
  .js-modal__main {
    position: relative;
    width: calc(345 * 100vw / 375);
    height: calc(520 * 100vw / 375);
    aspect-ratio: 345/520;
    background-image: url("/Page/LP/2024/1016_moon/img/modal_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: calc(20 * 100vw / 375);
    margin: 0 auto;
    margin-top: calc(124 * 100vw / 375);
  }
  .js-modal__main__wrapper {
    position: relative;
    width: 100%;
  }
  .js-modal__main__close {
    position: absolute;
    width: calc(25 * 100vw / 375);
    aspect-ratio: 25/25;
    top: calc(20 * 100vw / 375);
    right: calc(20 * 100vw / 375);
    cursor: pointer;
    z-index: 1006;
  }
  .js-modal__main__headline {
    width: calc(300 * 100vw / 375);
    margin: 0 auto;
    position: relative;
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(16 * 100vw / 375);
    letter-spacing: 0.07em;
    line-height: calc(28 * 100vw / 375);
    color: var(--color2);
    left: calc(0 * 100vw / 375);
    top: calc(34 * 100vw / 375);
    text-align: left;
  }
  .js-modal__main__detail {
    width: calc(300 * 100vw / 375);
    margin: 0 auto;
    position: relative;
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(14 * 100vw / 375);
    letter-spacing: 0.07em;
    line-height: calc(28 * 100vw / 375);
    color: var(--color2);
    position: relative;
    left: calc(0 * 100vw / 375);
    top: calc(51 * 100vw / 375);
    text-align: left;
  }
  .js-modal__main__triangle {
    position: relative;
    margin: 0 auto;
    width: calc(285 * 100vw / 375);
    aspect-ratio: 285/294;
    left: calc(0 * 100vw / 375);
    top: calc(74 * 100vw / 375);
  }
  .main-area {
    padding-top: 0;
    margin-bottom: calc(146 * 100vw / 375) !important;
  }
  .landing_content {
    overflow-x: hidden;
  }
  .landing_content .flex_background_wrapper {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-image: url(/Page/LP/2024/1016_moon/img/background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
  .landing_content .l-view {
    display: none !important;
  }
  .landing_content img {
    width: 100%;
    height: auto;
    max-width: 100%;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
  .landing_content .flex_background_first_view {
    position: fixed;
    top: calc(0 * 100vw / 375);
    width: 100vw;
    height: 100vh;
    left: 50%;
    transform: translateX(-50%);
    overflow: hidden;
  }
  .landing_content .flex_background_first_view.js-fadeOut {
    opacity: 1;
    transition: opacity 0.5s;
  }
  .landing_content .flex_background_first_view.js-fadeOut--active {
    opacity: 0;
  }
  .landing_content .flex_background_first_view .js-scrollBlur {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
  }
  .landing_content .flex_background_first_view .js-scrollBlur::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(37, 41, 52, 0.25);
    opacity: 0;
    transition: backdrop-filter 0.5s 0.5s, opacity 0.5s 0.5s;
  }
  .landing_content .flex_background_first_view .js-scrollBlur--active::after {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    opacity: 1;
  }
  .landing_content .flex_background_first_view__wrapper {
    width: 100vw;
    margin: 0 auto;
    top: calc(0 * 100vw / 375);
    position: relative;
  }
  .landing_content .flex_background_first_view__wrapper.js-clipPathCircle {
    transition: clip-path 2.5s;
    clip-path: circle(0 at 50% 70%);
  }
  .landing_content .flex_background_first_view__wrapper.js-clipPathCircle--active {
    clip-path: circle(60vh at 50% 70%);
  }
  .landing_content .flex_background_first_view__wrapper.js-clipPathCircle--active--override {
    clip-path: circle(100vh at 50% 70%);
  }
  .landing_content .flex_background_first_view__wrapper video {
    position: relative;
    width: 100%;
    top: calc(-55 * 100vw / 375);
    margin: 0 auto;
  }
  .landing_content__wrapper {
    position: relative;
  }
  .landing_content__first_area {
    position: relative;
    width: 100vw;
    height: 100vh;
  }
  .landing_content .css-firstview_textarea {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    width: 100%;
    bottom: calc(-389 * 100vw / 375);
  }
  .landing_content .css-firstview_textarea .css-headline {
    font-family: "the-seasons", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(25 * 100vw / 375);
    font-weight: bold;
    letter-spacing: 0.08em;
    line-height: calc(32.5 * 100vw / 375);
    color: var(--color2);
    position: relative;
    left: calc(0 * 100vw / 375);
    text-align: center;
  }
  .landing_content .css-firstview_textarea .css-text {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(14 * 100vw / 375);
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: calc(28 * 100vw / 375);
    color: var(--color2);
    position: relative;
    left: calc(0 * 100vw / 375);
    top: calc(39 * 100vw / 375);
    text-align: center;
  }
  .landing_content__headline {
    font-family: "the-seasons", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: var(--color2);
    font-size: calc(30 * 100vw / 375);
    font-weight: bold;
    letter-spacing: 0.15em;
    line-height: calc(60 * 100vw / 375);
    text-align: center;
    position: relative;
    left: calc(2 * 100vw / 375);
  }
  .landing_content__headline.css-headline1 {
    margin-top: calc(499 * 100vw / 375);
  }
  .landing_content__headline.css-headline2 {
    margin-top: calc(113 * 100vw / 375);
  }
  .landing_content__headline.css-headline3 {
    margin-top: calc(103 * 100vw / 375);
  }
  .landing_content__section {
    width: calc(375 * 100vw / 375);
    margin: 0 auto;
    position: relative;
  }
  .landing_content__section .css-images {
    cursor: pointer;
    display: block;
    width: calc(345 * 100vw / 375);
    aspect-ratio: 345/460;
    overflow: hidden;
  }
  .landing_content__section .css-images img {
    transition: 1s all;
  }
  .landing_content__section .css-images__hover img:hover {
    transform: scale(1.08);
  }
  .landing_content__section .css-headline_area {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
  }
  .landing_content__section .css-headline_area .css-star {
    position: relative;
    width: calc(20 * 100vw / 375);
    aspect-ratio: 20/20;
  }
  .landing_content__section .css-headline_area .css-headline {
    position: relative;
  }
  .landing_content__section .css-headline_area .css-headline--jp {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(26 * 100vw / 375);
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: calc(32 * 100vw / 375);
    text-align: center;
    color: var(--color2);
  }
  .landing_content__section .css-headline_area .css-headline--en {
    font-family: "the-seasons", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(17 * 100vw / 375);
    font-weight: bold;
    letter-spacing: 0.15em;
    line-height: calc(32 * 100vw / 375);
    text-align: center;
    color: var(--color2);
    position: relative;
    top: calc(4 * 100vw / 375);
  }
  .landing_content__section .css-all_item {
    position: relative;
    display: block;
    width: calc(114 * 100vw / 375);
    aspect-ratio: 114/114;
    margin: 0 auto;
  }
  .landing_content__section.css-section1 {
    margin-top: calc(0 * 100vw / 375);
  }
  .landing_content__section.css-section1 .css-images {
    margin: 0 auto;
    order: 1;
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section1 .css-headline_area {
    order: 2;
    left: calc(0 * 100vw / 375);
    margin-top: calc(25 * 100vw / 375);
  }
  .landing_content__section.css-section1 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section1 .css-headline_area .css-headline {
    left: calc(1 * 100vw / 375);
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section1 .css-all_item {
    left: 0;
    margin-top: calc(30 * 100vw / 375);
  }
  .landing_content__section.css-section2 {
    margin-top: calc(80 * 100vw / 375);
  }
  .landing_content__section.css-section2 .css-images {
    margin: 0 auto;
    order: 1;
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section2 .css-headline_area {
    order: 2;
    left: calc(0 * 100vw / 375);
  }
  .landing_content__section.css-section2 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section2 .css-headline_area .css-headline {
    left: calc(1 * 100vw / 375);
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section2 .css-all_item {
    left: 0;
    margin-top: calc(30 * 100vw / 375);
  }
  .landing_content__section.css-section3 {
    margin-top: calc(80 * 100vw / 375);
  }
  .landing_content__section.css-section3 .css-images {
    margin: 0 auto;
    order: 1;
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section3 .css-headline_area {
    order: 2;
    left: calc(0 * 100vw / 375);
  }
  .landing_content__section.css-section3 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section3 .css-headline_area .css-headline {
    left: calc(1 * 100vw / 375);
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section3 .css-all_item {
    left: 0;
    margin-top: calc(30 * 100vw / 375);
  }
  .landing_content__section.css-section4 {
    margin-top: calc(80 * 100vw / 375);
  }
  .landing_content__section.css-section4 .css-images {
    margin: 0 auto;
    order: 1;
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section4 .css-headline_area {
    order: 2;
    left: calc(0 * 100vw / 375);
  }
  .landing_content__section.css-section4 .css-headline_area .css-star {
    left: 0;
  }
  .landing_content__section.css-section4 .css-headline_area .css-headline {
    left: calc(1 * 100vw / 375);
    margin-top: calc(27 * 100vw / 375);
  }
  .landing_content__section.css-section4 .css-all_item {
    left: 0;
    margin-top: calc(30 * 100vw / 375);
  }
  .landing_content .js-zoom img {
    transition: 1s all;
  }
  .landing_content .js-zoom--active img {
    transform: scale(1.08);
  }
  .landing_content .js-hover {
    opacity: 0;
    transition: ease-in, opacity 0.5s;
  }
  .landing_content .js-hover--active {
    opacity: 1;
  }
  .landing_content .css-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .landing_content .css-hover--image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .landing_content .css-hover__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(37, 41, 52, 0.8);
  }
  .landing_content .css-hover__credit {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    white-space: nowrap;
  }
  .landing_content .css-hover__credit__link {
    display: block;
  }
  .landing_content .css-hover__credit__link:not(:last-child) {
    margin-bottom: calc(14 * 100vw / 375);
  }
  .landing_content .css-hover__credit__link p {
    font-family: "ryo-text-plusn", serif;
    font-weight: 400;
    font-style: normal;
    font-size: calc(13 * 100vw / 375);
    line-height: calc(19.5 * 100vw / 375);
    letter-spacing: 0.05em;
    font-weight: 500;
    text-align: center;
    color: var(--color2);
  }
  .landing_content__section_hover {
    width: calc(375 * 100vw / 375);
    aspect-ratio: 375/250;
    margin: 0 auto;
    margin-top: calc(120 * 100vw / 375);
    position: relative;
  }
  .landing_content__section_hover .css-section_hover_image {
    position: relative;
    width: calc(375 * 100vw / 375);
    aspect-ratio: 375/250;
    overflow: hidden;
  }
  .landing_content .css-normal_list {
    display: none;
  }
  .landing_content__section_slide.css-section6 {
    margin-top: calc(25 * 100vw / 375);
  }
  .landing_content__section_circle.css-section8 {
    position: relative;
    width: calc(375 * 100vw / 375);
    aspect-ratio: 375/534;
    margin: 0 auto;
    margin-top: calc(135 * 100vw / 375);
  }
  .landing_content__section_circle.css-section8 .css-image1,
  .landing_content__section_circle.css-section8 .css-image2,
  .landing_content__section_circle.css-section8 .css-image3,
  .landing_content__section_circle.css-section8 .css-image4 {
    position: absolute;
  }
  .landing_content__section_circle.css-section8 .css-image1 {
    overflow: hidden;
    width: calc(315 * 100vw / 375);
    aspect-ratio: 315/420;
    top: calc(0 * 100vw / 375);
    left: calc(0 * 100vw / 375);
    z-index: 1;
  }
  .landing_content__section_circle.css-section8 .css-image3 {
    width: calc(315.13 * 100vw / 375);
    aspect-ratio: 315.13/119.59;
    top: calc(418 * 100vw / 375);
    left: calc(0 * 100vw / 375);
    z-index: 2;
    pointer-events: none;
  }
  .landing_content__section_circle.css-section8 .css-image4 {
    z-index: 0;
    width: calc(170 * 100vw / 375);
    aspect-ratio: 170/170;
    top: calc(-85 * 100vw / 375);
    right: calc(-25 * 100vw / 375);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .landing_content__section_circle.css-section8 .css-image4 .css-star {
    position: absolute;
    width: calc(29.32 * 100vw / 375);
    aspect-ratio: 29.32/29.32;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    margin: auto;
  }
  .landing_content__section_circle.css-section8 .css-image4 .css-circle {
    animation: 15s linear infinite rotate;
  }
  .landing_content .css-check_all {
    width: calc(150 * 100vw / 375);
    margin: 0 auto;
    margin-top: calc(80 * 100vw / 375);
  }
  .landing_content .css-check_all__link {
    width: calc(150 * 100vw / 375);
    aspect-ratio: 150/150;
  }
}