@font-face {
  font-family: "Proxima Nova";
  src: url("../fonts/Proxima Nova Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Proxima Nova";
  src: url("../fonts/proxima-nova-semibold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Proxima Nova";
  src: url("../fonts/proxima-nova-medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Proxima Nova";
  src: url("../fonts/Proxima Nova Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Aktiv Grotesk";
    src: url("../fonts/AktivGrotesk-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Aktiv Grotesk";
    src: url("../fonts/AktivGrotesk-Light.woff2") format("woff2");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

html {
    
    font-size: clamp(7px, calc(100vw / 1420 * 10), 10px);
}

.liquor-purchase-page .purchase-flow__step-body-section {
    display: contents;
}

.liquor-purchase-page .purchase-flow__accordion-button {
    display: none;
}



@media screen and (max-width: 769px) {
    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow {
        padding: 18.462vw var(--sp-24, 6.154vw);
        overflow: visible;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__header {
        padding: 0;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__steps {
        display: flex;
        flex-direction: column;
        gap: var(--sp-24);
        width: 100%;
        margin: 0;
        padding: 0;
        overflow: visible;
        scroll-snap-type: none;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step {
        width: clamp(315px, 87.69vw, 675px);
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step,
    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step:nth-child(1),
    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step:nth-child(7) {
        display: flex;
        flex-direction: column;
        flex: none;
        min-height: 0;
        height: auto;
        position: relative;
        overflow: hidden;
        scroll-snap-align: none;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step-badge {
        flex-direction: row;
        justify-content: center;
        gap: 4.103vw;
        width: 100%;
        height: clamp(86px, 22.821vw, 176px);
        min-height: clamp(86px, 22.821vw, 176px);
        padding: 4.615vw 5.128vw;
        flex: 0 0 clamp(86px, 22.821vw, 176px);
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step-label {
        writing-mode: vertical-rl;
        text-orientation: upright;
        font-size: 3.59vw;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step-icon {
        justify-content: center;
        padding: var(--sp-40) 5.128vw 0;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .purchase-flow__step-body-section {
        display: block;
        position: relative;
        height: clamp(409px, 108.974vw, 838px);
        overflow: hidden;
        transition: height 0.25s ease;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step.is-open .purchase-flow__step-body-section {
        height: clamp(486px, 129.487vw, 996px);
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step:nth-child(2).is-open .purchase-flow__step-body-section {
        height: clamp(635px, 162.821vw, 1249px) !important;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step:nth-child(3).is-open .purchase-flow__step-body-section {
        height: clamp(732px, 187.692vw, 1441px) !important;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step:nth-child(4).is-open .purchase-flow__step-body-section {
        height: clamp(626px, 160.513vw, 1234px) !important;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step.purchase-flow__step--2.is-open .purchase-flow__step-body-section {
        height: clamp(635px, 162.821vw, 1249px) !important;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step.purchase-flow__step--3.is-open .purchase-flow__step-body-section {
        height: clamp(732px, 187.692vw, 1441px) !important;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step.purchase-flow__step--4.is-open .purchase-flow__step-body-section {
        height: clamp(626px, 160.513vw, 1234px) !important;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .purchase-flow__step-body-section::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 2;
        height: 29%;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 58%);
        pointer-events: none;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step.is-open .purchase-flow__step-body-section::after {
        display: none;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step-content {
        flex: none;
        padding: var(--sp-40) 5.128vw 0;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .sales-flow__step-title {
        align-self: center;
        margin: 0 0 var(--sp-32);
        text-align: center;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .purchase-flow__step-heading-main {
        display: inline-block;
        padding-bottom: 0;
        border-bottom: clamp(0.535px, 0.069vw, 1.375px) solid currentColor;
        line-height: 1.4;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .purchase-flow__step-heading-separator {
        display: none;
    }

    .liquor-purchase-page .about-sections.liquor-purchase-main .purchase-flow .purchase-flow__step-heading-sub {
        display: block;
        margin-top: var(--sp-16);
    }

    .liquor-purchase-page .sales-flow__dots {
        display: none !important;
    }

    .liquor-purchase-page .purchase-flow__accordion-button {
        position: absolute;
        right: 50%;
        bottom: var(--sp-28, 7.179vw);
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: center;
        width: var(--sp-48, 12.308vw);
        height: var(--sp-48, 12.308vw);
        padding: 0;
        border: 0;
        background: transparent;
        transform: translateX(50%);
        cursor: pointer;
    }

    .liquor-purchase-page .purchase-flow__accordion-button::before {
        content: "";
        display: block;
        width: clamp(15px, 4.103vw, 32px);
        height: clamp(27px, 7.372vw, 57px);
        background: url("../img/liquor_purchase/card_close.svg") center / contain no-repeat;
    }

    .liquor-purchase-page .sales-flow__step.is-open .purchase-flow__accordion-button::before {
        background-image: url("../img/liquor_purchase/card_open.svg");
    }

    .liquor-purchase-page .low_fv__title-sub {
        width: clamp(204px, 56.92vw, 438px);
        max-width: clamp(204px, 56.92vw, 438px);
        margin-left: auto;
    }
}

.header--about {
    background: transparent;
    z-index: 80000;
}

.home-page .header--about {
    z-index: 95000;
}

.home-page .header__nav-item--has-mega::after {
    z-index: 95000;
}

.home-page .megamenu {
    z-index: 95001;
}

.home-page .sidebar {
    z-index: 96000;
}

.header__inner--about {
    height: 12vh;
    padding: 0 clamp(43px, 5.63vw, 108px);
}


.header__menu-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 7.2rem;
    height: 7.2rem;
    border: clamp(0.802px, 0.104vw, 2.063px) solid #1a1a1a;
    border-radius: 50%;
    background: transparent;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    color: #1a1a1a;
    cursor: pointer;
    flex-shrink: 0;
    margin-left: 3.2rem;
    transition: background 0.2s ease, color 0.2s ease;
}

.header__menu-circle:hover {
    background: #1a1a1a;
    color: #ffffff;
}

.header__logo-img--sp,
.header__menu-img {
    display: none;
}




.header__nav-item--has-mega {
    position: relative;
}

.header__nav-item--has-mega::after {
    content: "";
    position: absolute;
    left: clamp(-33px, -1.667vw, -12.833px);
    right: clamp(-33px, -1.667vw, -12.833px);
    top: 100%;
    height: clamp(9.625px, 1.25vw, 24.75px);
    z-index: 80000;
}


.megamenu {
    position: absolute;
    top: calc(100% + clamp(6.951px, 0.903vw, 17.875px));
    left: 50%;
    transform: translateX(-50%);
    width: clamp(106.944px, 13.889vw, 275px);
    min-width: clamp(106.944px, 13.889vw, 275px);
    height: clamp(124.59px, 16.181vw, 320.375px);
    background: #FFFFFF;
    border-radius: clamp(3.743px, 0.486vw, 9.625px);
    box-shadow: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    z-index: 80001;
    overflow: hidden;
}


.header__nav-item--has-mega:hover .megamenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}


.header__nav-item--has-mega:hover .header__nav-chevron svg {
    transform: rotate(180deg);
}


.megamenu__inner {
    padding: clamp(2.674px, 0.347vw, 6.875px) clamp(10.694px, 1.389vw, 27.5px) 0;
}


.megamenu__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: clamp(26.201px, 3.403vw, 67.375px);
    padding: 0;
    color: #1a1a1a;
    text-decoration: none;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(7.486px, 0.972vw, 19.25px);
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1.2;
    border-bottom: clamp(0.535px, 0.069vw, 1.375px) solid #000000;
    transition: opacity 0.2s ease, background 0.2s ease;
    gap: clamp(7.486px, 0.972vw, 19.25px);
}

.megamenu__item:last-child {
    border-bottom: clamp(0.535px, 0.069vw, 1.375px) solid #000000;
}

.megamenu__item:hover {
    background: transparent;
    color: #A50C27;
    opacity: 1;
}

.megamenu__item:hover .megamenu__item-arrow {
    filter: brightness(0) saturate(100%) invert(13%) sepia(91%) saturate(3260%) hue-rotate(337deg) brightness(88%) contrast(98%);
}


.megamenu__item-arrow {
    width: clamp(7.486px, 0.972vw, 19.25px);
    height: auto;
    display: block;
    flex-shrink: 0;
}


@keyframes marquee-scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.footer-marquee {
    width: 100%;
    overflow: hidden;
    background: #FBFBF8;
    padding: 0 0 0;
    font-size: 0;
    line-height: 0;
    display: flex;
    align-items: flex-end;
    position: relative;
    z-index: 1;
}

.footer-marquee__text {
    display: block;
    white-space: nowrap;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(65px, 8.45vw, 162px);
    font-weight: 900;
    letter-spacing: 0.02em;
    color: #000000;
    line-height: 1;
    vertical-align: top;
    animation: marquee-scroll 110s linear infinite;
    margin: 0;
}




.footer--about {
    background: #A50C27;
    border-radius: 8rem 8rem 0 0;
    padding: 8rem 12rem 4rem;
    box-sizing: border-box;
    min-height: 75rem;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 2;
}


.footer-about__nav-grid {
    display: grid;
    grid-template-columns: 34.3rem 62.8rem 22.9rem;
    gap: 0;
    flex: 1;
    align-items: start;
    padding-bottom: 6rem;
}


.footer-about__col {
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
}


.footer-about__nav-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #ffffff;
    text-decoration: none;
    line-height: 1.2;
    transition: opacity 0.2s ease;
    display: inline-block;
    position: relative;
}


.footer-about__separator {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 2.2rem;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1;
    user-select: none;
}


.footer-about__nav-link--privacy {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.03em;
}


.footer-about__sns-head {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #ffffff;
}

.footer-about__sns-icon {
    width: 1.8rem;
    height: 1.8rem;
    flex-shrink: 0;
}


.footer-about__sns-links {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
}


.footer-about__sns-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    color: rgba(255, 255, 255, 1);
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.footer-about__sns-link:hover {
    opacity: 1;
}


.footer-about__sns-arrow {
    width: 1.4rem;
    height: auto;
    display: block;
    transform: none;
    flex-shrink: 0;
    filter: brightness(0) invert(1);
}

.footer-about__nav-link:not(.footer-about__nav-link--privacy) {
    width: max-content;
    align-self: flex-start;
}

.footer-about__nav-link:not(.footer-about__nav-link--privacy)::after {
    content: '';
    position: absolute;
    left: calc(100% + 0.48rem);
    top: -0.12em;
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 50%;
    background: #fff;
    opacity: 0;
    transform: translateY(-50%) scale(0.5);
    transition: opacity 0.2s ease, transform 0.2s ease;
    pointer-events: none;
}

.footer-about__nav-link:not(.footer-about__nav-link--privacy):hover::after {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

.footer-about__nav-link:hover,
.footer-about__sns-link:hover {
    opacity: 1;
}

.footer-about__nav-link--privacy,
.footer-about__sns-link span {
    display: inline-block;
    position: relative;
    width: max-content;
}

.footer-about__nav-link--privacy::after,
.footer-about__sns-link span::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    bottom: -0.18em;
    height: clamp(0.535px, 0.069vw, 1.375px);
    background: #fff;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.25s ease;
    pointer-events: none;
}

.footer-about__nav-link--privacy:hover::after,
.footer-about__sns-link:hover span::after {
    transform: scaleX(1);
}


.footer-about__divider {
    height: clamp(0.535px, 0.069vw, 1.375px);
    background: rgba(255, 255, 255, 0.3);
    margin: 0;
}


.footer-about__bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding-top: 3.2rem;
}


.footer-about__bottom-left {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
}

.footer-about__logo-link {
    display: block;
}

.footer-about__logo-img {
    width: 19.5rem;
    height: auto;
    display: block;
}

.footer-about__copyright {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    color: rgba(255, 255, 255, 0.6);
    margin: 0;
}


.footer-about__totop {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 6rem;
    border: clamp(0.802px, 0.104vw, 2.063px) solid rgba(255, 255, 255, 1);
    border-radius: 50%;
    text-decoration: none;
    flex-shrink: 0;
    transition: background 0.25s ease, border-color 0.25s ease;
}

.footer-about__totop:hover {
    background: inherit;
    border-color: #ffffff;
    opacity: 1;
}


.footer-about__totop-arrow {
    width: 2rem;
    height: auto;
    display: block;
    transform: none;
    filter: brightness(0) invert(1);
}




.sidebar-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.25);
    opacity: 0;
    visibility: hidden;
    z-index: 90000;
    transition: opacity 0.35s ease, visibility 0.35s ease;
}

.sidebar-overlay.is-open {
    opacity: 1;
    visibility: visible;
}


.sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #FBFBF8;
    transform: translateX(100%);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 90001;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.sidebar.is-open {
    transform: translateX(0);
}


.sidebar__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 3.6rem 8rem;
    flex-shrink: 0;
}

.sidebar__logo {
    display: block;
}

.sidebar__logo-img {
    height: 3.5rem;
    width: auto;
    display: block;
}


.sidebar__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 7.2rem;
    height: 7.2rem;
    border: clamp(0.802px, 0.104vw, 2.063px) solid #1a1a1a;
    border-radius: 50%;
    background: transparent;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    color: #1a1a1a;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}

.sidebar__close:hover {
    background: #1a1a1a;
    color: #ffffff;
}


.sidebar__nav {
    display: flex;
    gap: 0;
    padding: 4rem 8rem 6rem calc(8rem + 32rem);
    align-items: flex-start;
    flex-shrink: 0;
}


.sidebar__col {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
}


.sidebar__col--main {
    flex: 0 0 32rem;
}

.sidebar__main-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #1a1a1a;
    text-decoration: none;
    line-height: 1.2;
    transition: opacity 0.2s ease;
    display: block;
}

.sidebar__main-link:hover {
    opacity: 0.5;
}


.sidebar__col--about {
    flex: 0 0 40rem;
    gap: 1.2rem;
}


.sidebar__section-title {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #1a1a1a;
    text-decoration: none;
    line-height: 1.2;
    display: inline-flex;
    align-items: flex-start;
    gap: 0.3rem;
    transition: opacity 0.2s ease;
}

.sidebar__section-title:hover {
    opacity: 0.5;
}


.sidebar__dot {
    font-size: 0.8rem;
    color: #A50C27;
    margin-top: 0.2rem;
    line-height: 1;
}


.sidebar__sep {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.6rem;
    color: rgba(26, 26, 26, 0.4);
    user-select: none;
    line-height: 1;
}


.sidebar__sub-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem 2.4rem;
}

.sidebar__sub-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    color: #1a1a1a;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.sidebar__sub-link:hover {
    opacity: 0.5;
    text-decoration: none;
}


.sidebar__small-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.06em;
    color: #1a1a1a;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.sidebar__small-link:hover {
    opacity: 0.5;
}


.sidebar__col--sns {
    flex: 1;
    gap: 1.2rem;
}

.sidebar__sns-head {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #1a1a1a;
    width: max-content;
}

.sidebar__sns-links {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}

.sidebar__sns-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    color: #1a1a1a;
    text-decoration: none;
    width: max-content;
    transition: opacity 0.2s ease;
}

.sidebar__sns-link:hover {
    opacity: 0.5;
}


.sidebar__sns-arrow {
    width: 1.4rem;
    height: auto;
    display: block;
    transform: none;
    flex-shrink: 0;
}


.sidebar__cta {
    display: flex;
    gap: 2rem;
    padding: 0 8rem 4rem calc(8rem + 32rem);
    margin-top: auto;
    flex-shrink: 0;
}

.sidebar__cta-card {
    flex: 1;
    position: relative;
    display: block;
    text-decoration: none;
    overflow: hidden;
    border-radius: 1.2rem;
    height: 22rem;
}

.sidebar__cta-bg {
    position: absolute;
    inset: 0;
}

.sidebar__cta-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
    transform-origin: center;
}


.sidebar__cta-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.15) 60%);
    transition: background 0.3s ease;
}

.sidebar__cta-card:hover .sidebar__cta-overlay {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.3) 60%);
}


.sidebar__cta-content {
    position: relative;
    z-index: 1;
    padding: 3.2rem 4rem;
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
    justify-content: flex-end;
}

.sidebar__cta-label {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.85);
    display: block;
    margin-bottom: 0.8rem;
}

.sidebar__cta-title {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #ffffff;
    margin: 0 0 1.2rem;
    line-height: 1;
}

.sidebar__cta-desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.7;
    margin: 0 0 2.4rem;
}


.sidebar__cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 5.2rem;
    height: 5.2rem;
    border: clamp(0.802px, 0.104vw, 2.063px) solid rgba(255, 255, 255, 0.7);
    border-radius: 50%;
}

.sidebar__cta-arrow {
    width: 2rem;
    height: auto;
    display: block;
    filter: brightness(0) invert(1);
}


.cta {
    padding: clamp(43px, 5.56vw, 108px) 0 var(--sp-40);
}

.cta--recruit-contact-only {
    padding-bottom: clamp(42.722px, 5.556vw, 110.000px);
    width: clamp(770.000px, 100.000vw, 1980.000px);
    margin-top: var(--top-76);
}

.home-page .cta {
    padding-top: clamp(87px, 11.111vw, 216px);
    padding-bottom: clamp(87px, 11.111vw, 216px);
}

.cta__inner {
    grid-template-columns: 1fr 1fr;
    gap: clamp(22px, 2.78vw, 54px);
    padding: 0 clamp(65px, 8.333vw, 162px);
}

.cta__card {
    aspect-ratio: 580 / 320;
    border-radius: clamp(5px, 0.694vw, 14px);
}

.cta__card-bg,
.cta__card-bg picture,
.cta__card-bg img {
    width: 100%;
    height: 100%;
}

.cta__card-bg picture {
    display: block;
}

.cta__card-bg img {
    display: block;
    object-fit: cover;
}

.cta__card--contact .cta__card-overlay,
.cta__card--recruit .cta__card-overlay {
    background: rgba(0, 0, 0, 0.3);
}

.cta__card:hover .cta__card-overlay {
    background: rgba(165, 12, 39, 0.7);
}

.cta__card-content {
    position: absolute;
    padding: clamp(22px, 2.778vw, 54px);
}

.cta__card-top {
    gap: clamp(6px, 0.833vw, 16px);
    max-width: calc(100% - clamp(43px, 5.556vw, 108px));
}

.cta__label {
    font-family: 'Zen Kaku Gothic Antique', 'Noto Sans JP', sans-serif;
    font-size: clamp(11px, 1.111vw, 22px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
}

.cta__title {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(26px, 3.333vw, 65px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
    margin: 0 0 clamp(6px, 0.833vw, 16px);
}

.cta__desc {
    font-family: 'Zen Kaku Gothic Antique', 'Noto Sans JP', sans-serif;
    font-size: clamp(10px, 0.972vw, 19px);
    font-weight: 500;
    line-height: 1.86;
    letter-spacing: 0.04em;
    max-width: 50rem;
}

.cta__arrow-circle {
    width: clamp(32px, 4.167vw, 81px);
    height: clamp(32px, 4.167vw, 81px);
    background: transparent;
    border-width: clamp(0.8px, 0.104vw, 2.06px);
    border-color: #fff;
    color: #fff;
}

.cta__card:hover .cta__arrow-circle {
    background: #fff;
    border-color: #fff;
    color: #a50c27;
}

.cta__arrow-circle svg,
.cta__arrow-circle img {
    width: clamp(15px, 1.972vw, 38px);
    height: clamp(15px, 1.972vw, 38px);
    stroke: currentColor;
}

.cta__arrow-img--hover {
    display: none;
}

.cta__card:hover .cta__arrow-img--default {
    display: none;
}

.cta__card:hover .cta__arrow-img--hover {
    display: block;
}

.cta__card-arrow {
    position: absolute;
    right: clamp(22px, 2.778vw, 54px);
    bottom: clamp(22px, 2.778vw, 54px);
}

.page-breadcrumb {
    display: flex;
    align-items: center;
    gap: 0.65em;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(6.42px, 0.833vw, 16.5px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #000000;
    padding-left: clamp(65px, 8.333vw, 162px);
    margin: 0 0 clamp(85.444px, 11.111vw, 220.000px);
}

.page-breadcrumb a {
    color: inherit;
    text-decoration: none;
}

.page-breadcrumb__arrow {
    width: clamp(2.139px, 0.278vw, 5.5px);
    height: auto;
    display: block;
}

.footer--about {
    min-height: 78.5rem;
    padding: 10rem 12rem 7.4rem;
    border-radius: 8rem 8rem 0 0;
}

.footer-about__nav-grid {
    grid-template-columns: 34.3rem 62.8rem 22.9rem;
    flex: 0 0 44.2rem;
    padding-bottom: 0;
}

.footer-about__col {
    gap: 4.5rem;
}

.footer-about__nav-link {
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
}

.footer-about__separator {
    width: 1rem;
    height: clamp(1.069px, 0.139vw, 2.75px);
    overflow: hidden;
    color: transparent;
    background: #fff;
    line-height: 0;
}

.footer-about__nav-link--privacy {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
}

.footer-about__sns-head {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
}

.footer-about__sns-links {
    gap: 3rem;
}

.footer-about__sns-link {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
}

.footer-about__sns-arrow {
    width: 1.6rem;
}

.footer-about__divider {
    background: rgba(255, 255, 255, 1);
}

.footer-about__bottom {
    padding-top: 4rem;
}

.footer-about__logo-img {
    width: 21.5rem;
}

.footer-about__copyright {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #fff;
}






.sidebar {
    height: 100dvh;
    min-height: 0;
    background: #fbfbf8;
    overflow-y: auto;
}

.sidebar::after {
    content: '';
    display: block;
    flex: 0 0 clamp(560px, 62.5vw, 900px);
    width: clamp(0.535px, 0.069vw, 1.375px);
    pointer-events: none;
}

.sidebar__header {
    position: absolute;
    inset: 0 0 auto;
    display: block;
    padding: 0;
    height: clamp(64px, 8.333vw, 120px);
}

.sidebar__logo {
    position: absolute;
    left: clamp(43px, 5.556vw, 80px);
    top: clamp(21px, 2.778vw, 40px);
}

.sidebar__logo-img {
    width: clamp(108px, 14.028vw, 202px);
    height: auto;
}

.sidebar__close {
    position: absolute;
    top: clamp(8px, 1.042vw, 15px);
    right: clamp(43px, 5.556vw, 80px);
    width: clamp(38px, 5vw, 72px);
    height: clamp(38px, 5vw, 72px);
    border: clamp(0.535px, 0.069vw, 1.375px) solid #000;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(10px, 0.972vw, 14px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #000;
}

.sidebar__nav {
    position: absolute;
    left: 27.778vw;
    top: clamp(95px, 12.292vw, 177px);
    display: grid;
    grid-template-columns: 22.222vw 28.472vw minmax(clamp(64.167px, 8.333vw, 165px), 15.903vw);
    gap: 0;
    width: calc(100% - 27.778vw - 5.556vw);
    padding: 0;
}

.sidebar__col {
    gap: 0;
}

.sidebar__col--main,
.sidebar__col--about,
.sidebar__col--sns {
    flex: initial;
}

.sidebar__col--about {
    width: 28.472vw;
}

.sidebar__main-link,
.sidebar__section-title {
    width: max-content;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(16px, 1.528vw, 22px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #000;
}

.sidebar__main-link {
    margin-bottom: clamp(28px, 3.819vw, 55px);
    position: relative;
}

.sidebar__main-link::after {
    content: '';
    position: absolute;
    left: calc(100% + clamp(3px, 0.417vw, 6px));
    top: -0.12em;
    width: clamp(4px, 0.417vw, 6px);
    height: clamp(4px, 0.417vw, 6px);
    border-radius: 50%;
    background: #000;
    opacity: 0;
    transform: translateY(-50%) scale(0.5);
    transition: opacity 0.2s ease, transform 0.2s ease;
    pointer-events: none;
}

.sidebar__main-link:hover::after {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

.sidebar__main-link:last-child {
    margin-bottom: 0;
}

.sidebar__section-title {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0;
    margin: 0;
}

.sidebar__section-title::after {
    content: '';
    position: absolute;
    left: calc(100% + clamp(3px, 0.417vw, 6px));
    top: -0.12em;
    display: block;
    width: clamp(4px, 0.417vw, 6px);
    height: clamp(4px, 0.417vw, 6px);
    border-radius: 50%;
    background: #000;
    opacity: 0;
    transform: translateY(-50%) scale(0.5);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.sidebar__section-title:hover::after {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

.sidebar__dot {
    display: none;
}

.sidebar__sep {
    width: clamp(5.347px, 0.694vw, 13.75px);
    height: clamp(1.069px, 0.139vw, 2.75px);
    margin: clamp(16px, 1.597vw, 23px) 0 clamp(11px, 1.111vw, 16px);
    overflow: hidden;
    color: transparent;
    background: #000;
    line-height: 0;
}

.sidebar__sub-links {
    display: grid;
    grid-template-columns: max-content max-content max-content max-content;
    gap: clamp(12px, 1.875vw, 27px) clamp(8px, 0.694vw, 10px);
    margin: 0 0 clamp(31px, 3.056vw, 44px);
}

.sidebar__col--about .sidebar__sub-link:nth-child(4) {
    margin-left: clamp(-32.98px, -1.667vw, -12.83px);
}

.sidebar__col--about .sidebar__sub-links+.sidebar__sep {
    display: none;
}

.sidebar__col--about .sidebar__section-title[href="/news.html"]+.sidebar__sep,
.sidebar__col--about .sidebar__section-title[href="/news/"]+.sidebar__sep {
    margin: clamp(18px, 1.806vw, 26px) 0 clamp(18px, 1.806vw, 26px);
}

.sidebar__col--sns>.sidebar__sep {
    margin: clamp(24px, 2.292vw, 33px) 0 clamp(24px, 2.292vw, 33px);
}

.sidebar__col--sns .sidebar__sns-links {
    margin-top: 0;
}

.sidebar__sub-link,
.sidebar__small-link,
.sidebar__sns-head,
.sidebar__sns-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(10px, 0.972vw, 14px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #000;
}

.sidebar__sub-link:hover {
    text-decoration: none;
}

.sidebar__small-link {
    width: max-content;
}

.sidebar__sub-link,
.sidebar__small-link,
.sidebar__sns-link span {
    display: inline-block;
    width: max-content;
    position: relative;
}

.sidebar__sub-link::after,
.sidebar__small-link::after,
.sidebar__sns-link span::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    bottom: -0.18em;
    height: clamp(0.535px, 0.069vw, 1.375px);
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.25s ease;
    pointer-events: none;
}

.sidebar__sub-link:hover::after,
.sidebar__small-link:hover::after,
.sidebar__sns-link:hover span::after {
    transform: scaleX(1);
}

.sidebar__sns-links {
    gap: clamp(18px, 2.222vw, 32px);
    margin-top: clamp(18px, 2.083vw, 30px);
}

.sidebar__col--sns .sidebar__sns-links {
    margin-top: 0;
}

.sidebar__sns-link {
    justify-content: space-between;
    gap: clamp(10px, 1.389vw, 20px);
    width: clamp(150px, 15.903vw, 229px);
}

.sidebar__sns-arrow {
    width: clamp(9px, 0.833vw, 12px);
    filter: none;
    transform: none;
}

.sidebar__cta {
    position: absolute;
    left: 27.778vw;
    right: 5.556vw;
    top: clamp(500px, 44.375vw, 639px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 2.778vw;
    padding: 0;
    margin: 0;
}

.sidebar__cta-card {
    height: auto;
    aspect-ratio: 460 / 243;
    border-radius: clamp(5px, 0.694vw, 10px);
}

.sidebar__cta-overlay {
    background: rgba(0, 0, 0, 0.4);
}

.sidebar__cta-card:hover .sidebar__cta-overlay {
    background: rgba(165, 12, 39, 0.7);
}

.sidebar__cta-card:hover .sidebar__cta-bg img {
    transform: scale(1.08);
}

.sidebar__cta-card:hover .sidebar__cta-btn {
    background: #fff;
    border-color: #fff;
}

.sidebar__cta-content {
    position: absolute;
    inset: 0;
    padding: 0;
    display: block;
}

.sidebar__cta-label {
    position: absolute;
    left: clamp(28px, 2.778vw, 40px);
    top: clamp(21px, 2.292vw, 33px);
    font-family: 'Zen Kaku Gothic Antique', 'Noto Sans JP', sans-serif;
    font-size: clamp(10px, 0.972vw, 14px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #fff;
    margin: 0;
}

.sidebar__cta-title {
    position: absolute;
    left: clamp(28px, 2.778vw, 40px);
    top: clamp(40px, 4.167vw, 60px);
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: clamp(22px, 2.222vw, 32px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #fff;
    margin: 0;
}

.sidebar__cta-desc {
    position: absolute;
    left: clamp(28px, 2.778vw, 40px);
    top: clamp(82px, 8.194vw, 118px);
    font-family: 'Zen Kaku Gothic Antique', 'Noto Sans JP', sans-serif;
    font-size: clamp(10px, 0.972vw, 14px);
    font-weight: 500;
    line-height: 1.86;
    letter-spacing: 0.04em;
    color: #fff;
    max-width: clamp(215px, 20.833vw, 300px);
    margin: 0;
}

.sidebar__cta-btn {
    position: absolute;
    right: clamp(20px, 1.875vw, 27px);
    bottom: clamp(18px, 2.5vw, 36px);
    width: clamp(38px, 4.167vw, 60px);
    height: clamp(38px, 4.167vw, 60px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: clamp(0.8px, 0.104vw, 2.06px) solid #fff;
    border-radius: 50%;
    transition: background 0.25s ease, border-color 0.25s ease;
}

.sidebar__cta-arrow {
    width: clamp(18px, 1.972vw, 28px);
    height: clamp(18px, 1.972vw, 28px);
    filter: none;
}

.sidebar__cta-arrow--hover {
    display: none;
}

.sidebar__cta-card:hover .sidebar__cta-arrow--default {
    display: none;
}

.sidebar__cta-card:hover .sidebar__cta-arrow--hover {
    display: block;
}


.header--about .header__menu-circle {
    font-size: var(--top-14);
    font-weight: 600;
    letter-spacing: 0.1em;
}

.cta__label {
    font-family: 'Zen Kaku Gothic Antique', 'Noto Sans JP', sans-serif;
    font-size: clamp(11px, 1.11vw, 22px);
    font-weight: 500;
    letter-spacing: 0.05em;
}

.cta__title {
    font-size: clamp(26px, 3.33vw, 65px);
    font-weight: 700;
    letter-spacing: 0.1em;
}

.cta__desc {
    font-family: 'Zen Kaku Gothic Antique', 'Noto Sans JP', sans-serif;
    font-size: clamp(10px, 0.972vw, 19px);
    font-weight: 500;
    line-height: 1.86;
    letter-spacing: 0.04em;
}

body .footer-marquee__text {
    font-size: clamp(81px, 10.42vw, 203px);
    font-weight: 700;
    letter-spacing: 0;
    margin-bottom: 0;
}

body.home-page .footer-marquee__text {
    animation-duration: 40000ms;
}

body .footer.footer--about {
    min-height: 78.5rem;
    padding: 10rem 12rem 7.4rem;
    border-radius: 8rem 8rem 0 0;
}

body .footer-about__nav-grid {
    grid-template-columns: 34.3rem 62.8rem 22.9rem;
    flex: 0 0 44.2rem;
    padding-bottom: 0;
}

body .footer-about__col {
    gap: 4.5rem;
}

body .footer-about__nav-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0.1em;
}

body .footer-about__separator {
    width: 1rem;
    height: clamp(1.069px, 0.139vw, 2.75px);
    overflow: hidden;
    color: transparent;
    background: #fff;
    line-height: 0;
}

body .footer-about__nav-link--privacy,
body .footer-about__sns-head,
body .footer-about__sns-link {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0.1em;
}

body .footer-about__sns-links {
    gap: var(--top-30);
}

body .footer-about__sns-arrow {
    width: 1.6rem;
}

body .footer-about__divider {
    background: rgba(255, 255, 255, 1);
}

body .footer-about__bottom {
    padding-top: 4rem;
}

body .footer-about__logo-img {
    width: 21.5rem;
}

body .footer-about__copyright {
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #fff;
}

.news-sections__blob {
    position: absolute;
    top: clamp(117.639px, 15.278vw, 302.500px);
    right: clamp(-632.500px, -31.944vw, -245.972px);
    z-index: 10000;
    width: clamp(404.25px, 52.5vw, 1039.5px);
    height: auto;
    margin: 0;
    opacity: 1;
    pointer-events: none;
}


.header__inner,
.header__inner--about {
    height: var(--top-120);
    padding-left: var(--top-80);
    padding-right: var(--top-64);
}

.header__logo-img {
    height: clamp(18.157px, 2.361vw, 46.750px);
    width: clamp(114.965px, 14.931vw, 295.625px);
}

.header__nav {
    display: flex;
    align-items: center;
    margin-left: auto;
    gap: clamp(4.806px, 0.625vw, 12.375px);
}

.header__nav-list {
    display: flex;
    align-items: center;
    gap: var(--top-40);
}

.header__nav-link {
    position: relative;
    gap: var(--top-4);
    font-size: var(--top-14);
}

.header__nav-link:hover {
    color: #1a1a1a;
    opacity: 1;
}

.header__nav-link::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -0.45em;
    width: 100%;
    height: clamp(0.8px, 0.069vw, 1.38px);
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.25s ease;
    pointer-events: none;
}

.header__nav-link:hover::after {
    transform: scaleX(1);
}

.header__nav-item--has-mega .header__nav-link::after {
    width: calc(100% - var(--top-14) - var(--top-8));
}

.header__nav-chevron {
    margin-left: var(--top-4);
}
.header__nav-chevron svg {
    transform: rotate(0deg);
    transition: transform 0.2s ease;
}

.header__menu-circle {
    display: inline-flex;
    width: var(--top-72);
    height: var(--top-72);
    margin-left: var(--top-32);
    font-size: var(--top-12);
    border-width: clamp(0.8px, 0.104vw, 2.06px);
}

.header__menu-circle:hover {
    background: transparent;
    color: #1a1a1a;
}

.header__menu-circle::before,
.header__menu-circle::after {
    content: none;
}

.megamenu {
    position: fixed;
    top: calc(100% + var(--top-13, clamp(6.95px, 0.903vw, 17.88px)));
    top: var(--mega-top, calc(12vh + var(--top-13, clamp(6.95px, 0.903vw, 17.88px))));
    left: var(--mega-left, 50vw);
    width: clamp(106.94px, 13.889vw, 275px);
    min-width: clamp(106.94px, 13.889vw, 275px);
    height: clamp(124.58px, 16.181vw, 320.38px);
    border-radius: clamp(3.74px, 0.486vw, 9.63px);
    z-index: 90000;
}

.megamenu.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.header__nav-item--has-mega.is-mega-open .header__nav-chevron svg {
    transform: rotate(180deg);
}

.megamenu__inner {
    padding: clamp(2.67px, 0.347vw, 6.88px) var(--top-20) 0;
}

.megamenu__item {
    height: clamp(26.2px, 3.403vw, 67.38px);
    font-size: var(--top-14);
    gap: var(--top-14);
}

.megamenu__item-arrow {
    width: var(--top-14);
}

.home-page .cta {
    padding: var(--top-80) 0;
    padding-bottom: clamp(85.444px, 11.111vw, 220.000px);
}

.home-page .cta__inner {
    gap: var(--top-40);
    padding: 0 var(--top-120);
}

.home-page .cta__card {
    border-radius: var(--top-8);
}

.home-page .cta__card-content {
    padding: var(--top-40);
    padding-top: var(--top-50);
}

.home-page .cta__card-top {
    gap: var(--top-12);
    max-width: clamp(248.11px, 32.222vw, 638px);
}

.home-page .cta__label {
    font-size: var(--top-16);
}

.home-page .cta__title {
    font-size: var(--top-48);
    margin-bottom: var(--top-12);
}

.home-page .cta__desc {
    font-size: var(--top-14);
    line-height: var(--top-26);
    max-width: var(--top-420);
}

.home-page .cta__arrow-circle {
    width: var(--top-60);
    height: var(--top-60);
}

.home-page .cta__arrow-circle img,
.home-page .cta__arrow-circle svg {
    width: var(--top-28);
    height: var(--top-28);
}

.home-page .cta__card-arrow {
    right: var(--top-38);
    bottom: var(--top-32);
}

.home-page .footer-marquee__text {
    font-size: clamp(80.104px, 10.417vw, 206.250px);
    margin-bottom: var(--top-18);
    line-height: clamp(74.764px, 9.722vw, 192.500px);
    height: 109%;
}

.home-page .footer-marquee {
    height: clamp(49.91px, 6.483vw, 128.37px);
    margin: 0;
    padding: 0;
    overflow: visible;
    position: relative;
    z-index: 1;
}

.home-page .footer--about {
    margin-top: 0;
    position: relative;
    z-index: 2;
    min-height: var(--top-785);
    padding: var(--top-100) var(--top-120) var(--top-74);
    border-radius: var(--top-80) var(--top-80) 0 0;
}

.home-page .footer-about__nav-grid {
    grid-template-columns: var(--top-343) var(--top-628) var(--top-229);
    flex-basis: clamp(236.39px, 30.694vw, 607.75px);
    column-gap: 0;
    padding-bottom: 0;
}

.home-page .footer-about__col {
    gap: clamp(24.06px, 3.125vw, 61.88px);
    min-width: auto;
}

.home-page .footer-about__nav-link {
    font-size: var(--top-22);
}

.home-page .footer-about__separator {
    width: var(--top-10);
    height: var(--top-2);
    margin-bottom: var(--top-10);
}

.home-page .footer-about__nav-link--privacy,
.home-page .footer-about__sns-head,
.home-page .footer-about__sns-link {
    font-size: var(--top-14);
}

.home-page .footer-about__sns-link {
    gap: var(--top-8);
}

.home-page .footer-about__sns-link span {
    min-width: auto;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.home-page .footer-about__sns-arrow {
    width: var(--top-16);
}

.home-page .footer-about__bottom {
    padding-top: var(--top-40);
}

.home-page .footer-about__logo-img {
    width: var(--top-185);
}

.home-page .footer-about__copyright {
    font-size: var(--top-12);
}

.home-page .footer-about__totop {
    width: var(--top-60);
    height: var(--top-60);
}

.home-page .footer-about__totop-arrow {
    width: var(--top-20);
}

.sidebar {
    --sb-1: clamp(0.53px, 0.0694vw, 1.37px);
    --sb-2: clamp(1.07px, 0.139vw, 2.75px);
    --sb-4: clamp(2.14px, 0.278vw, 5.5px);
    --sb-6: clamp(3.21px, 0.417vw, 8.25px);
    --sb-8: clamp(4.28px, 0.556vw, 11px);
    --sb-10: clamp(5.35px, 0.694vw, 13.75px);
    --sb-12: clamp(6.42px, 0.833vw, 16.5px);
    --sb-14: clamp(7.49px, 0.972vw, 19.25px);
    --sb-15: clamp(8.02px, 1.042vw, 20.63px);
    --sb-16: clamp(8.56px, 1.111vw, 22px);
    --sb-20: clamp(10.69px, 1.389vw, 27.5px);
    --sb-22: clamp(11.76px, 1.528vw, 30.25px);
    --sb-23: clamp(12.3px, 1.597vw, 31.63px);
    --sb-24: clamp(12.83px, 1.667vw, 32.98px);
    --sb-26: clamp(13.9px, 1.806vw, 35.75px);
    --sb-27: clamp(14.44px, 1.875vw, 37.13px);
    --sb-28: clamp(14.97px, 1.944vw, 38.5px);
    --sb-30: clamp(16.04px, 2.083vw, 41.25px);
    --sb-32: clamp(17.11px, 2.222vw, 44px);
    --sb-33: clamp(17.65px, 2.292vw, 45.38px);
    --sb-36: clamp(19.25px, 2.5vw, 49.5px);
    --sb-40: clamp(21.39px, 2.778vw, 55px);
    --sb-44: clamp(23.53px, 3.056vw, 60.5px);
    --sb-55: clamp(29.41px, 3.819vw, 75.63px);
    --sb-60: clamp(32.08px, 4.167vw, 82.5px);
    --sb-72: clamp(38.5px, 5vw, 99px);
    --sb-80: clamp(42.78px, 5.556vw, 110px);
    --sb-94: clamp(50.26px, 6.528vw, 129.16px);
    --sb-118: clamp(63.1px, 8.194vw, 162.25px);
    --sb-120: clamp(64.17px, 8.333vw, 165px);
    --sb-177: clamp(94.68px, 12.292vw, 243.38px);
    --sb-185: clamp(98.92px, 12.847vw, 254.19px);
    --sb-202: clamp(108.01px, 14.028vw, 277.75px);
    --sb-229: clamp(122.45px, 15.903vw, 314.88px);
    --sb-300: clamp(160.42px, 20.833vw, 412.5px);
    --sb-320: clamp(171.11px, 22.222vw, 440px);
    --sb-340: clamp(181.80px, 23.611vw, 467.16px);
    --sb-350: clamp(187.15px, 24.306vw, 480.90px);
    --sb-360: clamp(192.49px, 25.000vw, 494.64px);
    --sb-370: clamp(197.84px, 25.694vw, 508.38px);
    --sb-380: clamp(203.19px, 26.389vw, 522.12px);
    --sb-385: clamp(205.86px, 26.736vw, 528.99px);
    --sb-390: clamp(208.53px, 27.083vw, 535.86px);
    --sb-400: clamp(213.89px, 27.778vw, 550px);
    --sb-410: clamp(219.31px, 28.472vw, 563.75px);
    --sb-605: clamp(323.49px, 42.014vw, 831.27px);
    --sb-639: clamp(341.69px, 44.375vw, 878.63px);
    --sb-900: clamp(481.25px, 62.5vw, 1237.5px);
}

.sidebar::after {
    flex-basis: var(--sb-900);
}

html.is-sidebar-open,
body.is-sidebar-open {
    overflow: hidden;
    scrollbar-width: none;
}

html.is-sidebar-open::-webkit-scrollbar,
body.is-sidebar-open::-webkit-scrollbar {
    display: none;
}

.sidebar {
    height: 100dvh;
    max-height: 100dvh;
    overflow-y: auto;
    scrollbar-width: none;
}

.sidebar::-webkit-scrollbar {
    display: none;
}

.sidebar::after {
    display: block;
    flex: 0 0 var(--sb-900);
    width: clamp(0.535px, 0.069vw, 1.375px);
    pointer-events: none;
}

.sidebar__header {
    height: var(--sb-120);
}

.sidebar__logo {
    left: var(--sb-80);
    top: calc((var(--top-120) - clamp(17.65px, 2.292vw, 45.38px)) / 2);
}

.sidebar__logo-img {
    width: var(--sb-185);
}

.sidebar__close {
    top: calc((var(--top-120) - var(--top-72)) / 2);
    right: calc(var(--top-64) + var(--sidebar-scrollbar-offset, 0px));
    width: var(--top-72);
    height: var(--top-72);
    border-width: clamp(0.8px, 0.104vw, 2.06px);
    font-size: var(--top-14);
    font-weight: 600;
}

.sidebar__close:hover {
    background: transparent;
    color: transparent;
    border-color: #000;
    opacity: 1;
}

.header__menu-circle,
.sidebar__close {
    overflow: hidden;
}

.menu-flip {
    display: inline-block;
    transition: transform 0.22s ease, opacity 0.22s ease;
}

.header__menu-circle.is-open .menu-flip--menu,
.header__menu-circle[aria-expanded="true"] .menu-flip--menu {
    opacity: 0;
    transform: translateY(-130%);
}

.header__menu-circle.is-closing .menu-flip--menu {
    opacity: 1;
    animation: headerMenuReturnFromBottom 0.22s ease both;
}

@keyframes headerMenuReturnFromBottom {
    from {
        transform: translateY(130%);
    }

    to {
        transform: translateY(0);
    }
}

.sidebar__close {
    color: transparent;
    font-weight: 600;
}

.sidebar__close::before,
.sidebar__close::after {
    position: absolute;
    left: 50%;
    top: 50%;
    font-family: 'Proxima Nova', 'Montserrat', Arial, sans-serif;
    font-size: var(--top-14);
    line-height: 1;
    letter-spacing: 0.12em;
    color: #000000;
    font-weight: 600;
    transition: transform 0.22s ease, opacity 0.22s ease;
    pointer-events: none;
}

.sidebar__close::before {
    content: "CLOSE";
    opacity: 0;
    transform: translate(-50%, calc(-50% + 130%));
}

.sidebar__close::after {
    content: "MENU";
    opacity: 0;
    transform: translate(-50%, calc(-50% + 130%));
}

.sidebar.is-open:not(.is-closing) .sidebar__close::before {
    opacity: 1;
    transform: translate(-50%, -50%);
}

.sidebar.is-closing .sidebar__close::before {
    opacity: 0;
    transform: translate(-50%, calc(-50% - 130%));
}

.sidebar.is-closing .sidebar__close::after {
    opacity: 1;
    animation: sidebarMenuReturnFromBottom 0.22s ease both;
}

@keyframes sidebarMenuReturnFromBottom {
    from {
        transform: translate(-50%, calc(-50% + 130%));
    }

    to {
        transform: translate(-50%, -50%);
    }
}

.sidebar__main-link:hover,
.sidebar__section-title:hover,
.sidebar__sub-link:hover,
.sidebar__small-link:hover,
.sidebar__sns-link:hover {
    opacity: 1;
}

.sidebar__nav {
    left: var(--sb-385);
    top: var(--sb-177);
    grid-template-columns: var(--sb-320) var(--sb-410) calc(100vw - var(--sb-400) - var(--sb-320) - var(--sb-410) - var(--sb-80));
    width: calc(100% - var(--sb-400) - var(--sb-80));
}

.sidebar__col--about {
    width: var(--sb-410);
}

.sidebar__main-link,
.sidebar__section-title {
    font-size: var(--sb-22);
}

.sidebar__main-link {
    margin-bottom: var(--sb-40);
}

.sidebar__main-link::after,
.sidebar__section-title::after {
    left: calc(100% + var(--sb-6));
    width: var(--sb-6);
    height: var(--sb-6);
}

.sidebar__sep {
    width: var(--sb-10);
    height: var(--sb-2);
    margin: var(--sb-33) 0;
}

.sidebar__sep--about{
    margin: var(--sb-16) 0;
}

.sidebar__sub-links {
    gap: var(--sb-10) var(--sb-24);
    margin-bottom: var(--sb-44);
}

.sidebar__col--about .sidebar__sub-link:nth-child(4) {
    margin-left: clamp(-32.98px, -1.667vw, -12.83px);
}

.sidebar__col--about .sidebar__section-title[href="/news.html"]+.sidebar__sep,
.sidebar__col--about .sidebar__section-title[href="/news/"]+.sidebar__sep {
    margin: var(--sb-33) 0;
}

.sidebar__col--sns>.sidebar__sep {
    margin: var(--sb-33) 0;
}

.sidebar__sub-link,
.sidebar__small-link,
.sidebar__sns-head,
.sidebar__sns-link {
    font-size: var(--sb-14);
}

.sidebar__sub-link::after,
.sidebar__small-link::after,
.sidebar__sns-link span::after {
    height: clamp(0.535px, 0.069vw, 1.375px);
}

.sidebar__sns-links {
    gap: var(--sb-32);
    margin-top: var(--sb-30);
}

.sidebar__sns-link {
    gap: var(--sb-20);
    width: 100%;
}

.sidebar__sns-arrow {
    width: var(--sb-12);
}

.sidebar__cta {
    left: var(--sb-385);
    right: calc(var(--sb-80) + var(--sidebar-scrollbar-offset, clamp(0px, 0vw, 0px)));
    top: var(--sb-605);
    gap: var(--sb-40);
}

.sidebar__cta-card {
    border-radius: var(--sb-10);
}

.sidebar__cta-label {
    left: var(--sb-40);
    top: var(--sb-33);
    font-size: var(--sb-14);
}

.sidebar__cta-title {
    left: var(--sb-40);
    top: var(--sb-60);
    font-size: var(--sb-32);
}

.sidebar__cta-desc {
    left: var(--sb-40);
    top: var(--sb-118);
    font-size: var(--sb-14);
    max-width: var(--sb-300);
}

.sidebar__cta-btn {
    right: var(--sb-27);
    bottom: var(--sb-36);
    width: var(--sb-60);
    height: var(--sb-60);
    border-width: clamp(0.8px, 0.104vw, 2.06px);
}

.sidebar__cta-arrow {
    width: var(--sb-28);
    height: var(--sb-28);
}

.sidebar-overlay {
    transition: none;
}

.sidebar {
    transform: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: none;
}

.sidebar.is-open {
    transform: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.sidebar__logo,
.sidebar__main-link,
.sidebar__section-title,
.sidebar__sep,
.sidebar__sub-link,
.sidebar__small-link,
.sidebar__sns-head,
.sidebar__sns-link,
.sidebar__cta-card {
    opacity: 0;
    transform: translateY(clamp(7.486px, 0.972vw, 19.25px));
    transition: opacity 0.28s ease, transform 0.28s ease;
}

.sidebar.is-open .sidebar__logo,
.sidebar.is-open .sidebar__main-link,
.sidebar.is-open .sidebar__section-title,
.sidebar.is-open .sidebar__sep,
.sidebar.is-open .sidebar__sub-link,
.sidebar.is-open .sidebar__small-link,
.sidebar.is-open .sidebar__sns-head,
.sidebar.is-open .sidebar__sns-link,
.sidebar.is-open .sidebar__cta-card {
    opacity: 1;
    transform: translateY(0);
}

.sidebar.is-open .sidebar__logo {
    transition-delay: 0.02s;
}

.sidebar.is-open .sidebar__main-link:nth-child(1) {
    transition-delay: 0.05s;
}

.sidebar.is-open .sidebar__main-link:nth-child(2) {
    transition-delay: 0.08s;
}

.sidebar.is-open .sidebar__main-link:nth-child(3) {
    transition-delay: 0.11s;
}

.sidebar.is-open .sidebar__main-link:nth-child(4) {
    transition-delay: 0.14s;
}

.sidebar.is-open .sidebar__main-link:nth-child(5) {
    transition-delay: 0.17s;
}

.sidebar.is-open .sidebar__main-link:nth-child(6) {
    transition-delay: 0.2s;
}

.sidebar.is-open .sidebar__col--about .sidebar__section-title:nth-of-type(1),
.sidebar.is-open .sidebar__col--about>.sidebar__sep:nth-of-type(1) {
    transition-delay: 0.1s;
}

.sidebar.is-open .sidebar__sub-link:nth-child(1) {
    transition-delay: 0.13s;
}

.sidebar.is-open .sidebar__sub-link:nth-child(2) {
    transition-delay: 0.15s;
}

.sidebar.is-open .sidebar__sub-link:nth-child(3) {
    transition-delay: 0.17s;
}

.sidebar__sub-link:nth-child(4){
    margin-left: clamp(-32.98px, -1.667vw, -12.83px);
}

.sidebar.is-open .sidebar__sub-link:nth-child(4) {
    transition-delay: 0.19s;
}

.sidebar.is-open .sidebar__sub-link:nth-child(5) {
    transition-delay: 0.21s;
}

.sidebar.is-open .sidebar__sub-link:nth-child(6) {
    transition-delay: 0.23s;
}

.sidebar.is-open .sidebar__sub-link:nth-child(7) {
    transition-delay: 0.25s;
}

.sidebar.is-open .sidebar__col--about .sidebar__section-title:nth-of-type(2),
.sidebar.is-open .sidebar__small-link {
    transition-delay: 0.27s;
}

.sidebar.is-open .sidebar__sns-head,
.sidebar.is-open .sidebar__col--sns>.sidebar__sep {
    transition-delay: 0.14s;
}

.sidebar.is-open .sidebar__sns-link:nth-child(1) {
    transition-delay: 0.17s;
}

.sidebar.is-open .sidebar__sns-link:nth-child(2) {
    transition-delay: 0.19s;
}

.sidebar.is-open .sidebar__sns-link:nth-child(3) {
    transition-delay: 0.21s;
}

.sidebar.is-open .sidebar__sns-link:nth-child(4) {
    transition-delay: 0.23s;
}

.sidebar.is-open .sidebar__sns-link:nth-child(5) {
    transition-delay: 0.25s;
}

.sidebar.is-open .sidebar__cta-card:nth-child(1) {
    transition-delay: 0.29s;
}

.sidebar.is-open .sidebar__cta-card:nth-child(2) {
    transition-delay: 0.33s;
}

@media screen and (max-width: 769px) {
    :root {
        --sp-u: calc(100vw / 390);
        --sp-24: 6.154vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
    }

    .header--about {
        background: transparent;
        z-index: 80000;
    }

    .header--about.scrolled {
        background: #FBFBF8;
        border-bottom: clamp(0.535px, 0.069vw, 1.375px) solid transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .header--about.is-scrolling {
        background: transparent;
        border-bottom: clamp(0.535px, 0.069vw, 1.375px) solid transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .header__inner--about {
        position: relative;
        height: var(--sp-79);
        padding: 0 var(--sp-24);
        padding-right: var(--sp-24);
    }

    .header__logo-img:not(.header__logo-img--sp) {
        display: none;
    }

    .header__logo-img--sp {
        display: block;
        width: 11.282vw;
        height: 8.718vw;
    }

    .header__nav-list {
        display: none;
    }

    .header__nav {
        position: absolute;
        top: 50%;
        right: var(--sp-24);
        margin-left: 0;
        transform: translateY(-50%);
    }

    .header__menu-circle {
        display: inline-flex;
        width: 6.154vw;
        height: 6.154vw;
        position: relative;
        margin-left: 0;
        border: 0;
        border-radius: 0;
        font-size: 2.564vw;
        letter-spacing: 0.1em;
        background: transparent;
        color: #1a1a1a;
        overflow: visible;
    }

    .header__menu-circle .menu-flip {
        display: none;
    }

    .header__menu-img {
        display: none;
        width: 6.154vw;
        height: 6.154vw;
    }

    #menuBtn.header__menu-circle::before,
    #menuBtn.header__menu-circle::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 6.154vw;
        height: clamp(0.535px, 0.069vw, 1.375px);
        background: #000;
        pointer-events: none;
        transform-origin: center center;
        transition: transform 0.22s ease;
    }

    #menuBtn.header__menu-circle::before {
        transform: translate(-50%, -50%);
    }

    #menuBtn.header__menu-circle::after {
        transform: translate(-50%, -50%) rotate(90deg);
    }

    #menuBtn.header__menu-circle.is-open::after,
    #menuBtn.header__menu-circle[aria-expanded="true"]::after {
        transform: translate(-50%, -50%) rotate(180deg);
        animation: homeHeaderMenuToMinus 0.22s ease both;
    }

    .header__menu-circle:hover {
        background: transparent;
        color: #1a1a1a;
        opacity: 1;
    }

    .megamenu {
        display: none;
    }

    .sidebar-overlay {
        top: 0;
        right: auto;
        bottom: auto;
        left: 0;
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        overflow: hidden;
    }

    .sidebar::after {
        display: none;
        content: none;
    }

    .sidebar {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-14: 3.59vw;
        --sp-16: 4.103vw;
        --sp-20: 5.128vw;
        --sp-22: 5.641vw;
        --sp-24: 6.154vw;
        --sp-44: 11.282vw;
        --sp-48: 12.308vw;
        --sp-59: 15.128vw;
        --sp-80: 20.513vw;
        --sp-91: 23.333vw;
        --sp-165: 42.308vw;
        --sp-257: 65.897vw;
        --sp-342: 87.692vw;
        left: 0;
        right: auto;
        width: 100vw;
        max-width: 100vw;
        min-width: 0;
        box-sizing: border-box;
        height: 100dvh;
        max-height: 100dvh;
        transform: none;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        overflow-x: hidden;
        overflow-y: auto;
        background: #fbfbf8;
    }

    .sidebar.is-open {
        transform: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .sidebar__header {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 2;
        width: 100vw;
        max-width: 100vw;
        box-sizing: border-box;
        height: var(--sp-79);
        background: #fbfbf8;
    }

    .sidebar__logo {
        position: absolute;
        left: var(--sp-24);
        top: calc((var(--sp-79) - 8.718vw) / 2);
    }

    .sidebar__logo-img {
        width: auto;
        height: 4.615vw;
    }

    .sidebar .header__logo-img--sp {
        width: 11.282vw;
        height: 8.718vw;
    }

    .sidebar__close {
        position: fixed;
        top: calc((var(--sp-79) - 6.154vw) / 2);
        right: var(--sp-24);
        left: auto;
        width: 6.154vw;
        height: 6.154vw;
        box-sizing: border-box;
        padding: 0;
        border: 0;
        border-radius: 0;
        font-size: 0;
        color: transparent;
        z-index: 90003;
    }

    .sidebar__close::before,
    .sidebar__close::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 6.154vw;
        height: clamp(0.535px, 0.069vw, 1.375px);
        background: #000;
        opacity: 1;
        transform: translate(-50%, -50%);
        transform-origin: center center;
        transition: transform 0.22s ease;
        pointer-events: none;
    }

    .sidebar__close::after {
        display: block;
        transform: translate(-50%, -50%) rotate(90deg);
    }

    .sidebar.is-open:not(.is-closing) .sidebar__close::before,
    .sidebar.is-closing .sidebar__close::before {
        opacity: 1;
        transform: translate(-50%, -50%);
    }

    .sidebar.is-open:not(.is-closing) .sidebar__close::after {
        transform: translate(-50%, -50%) rotate(180deg);
        animation: homeSidebarCloseToMinus 0.22s ease both;
    }

    .sidebar.is-closing .sidebar__close::after {
        transform: translate(-50%, -50%) rotate(90deg);
        animation: homeSidebarCloseToPlus 0.22s ease both;
    }

    @keyframes homeHeaderMenuToMinus {
        from {
            transform: translate(-50%, -50%) rotate(90deg);
        }

        to {
            transform: translate(-50%, -50%) rotate(180deg);
        }
    }

    @keyframes homeSidebarCloseToMinus {
        from {
            transform: translate(-50%, -50%) rotate(90deg);
        }

        to {
            transform: translate(-50%, -50%) rotate(180deg);
        }
    }

    @keyframes homeSidebarCloseToPlus {
        from {
            transform: translate(-50%, -50%) rotate(180deg);
        }

        to {
            transform: translate(-50%, -50%) rotate(90deg);
        }
    }

    .sidebar__nav {
        position: relative;
        left: auto;
        top: auto;
        display: flex;
        flex-direction: column;
        width: auto;
        padding: clamp(139px, 38.72vw, 298px) var(--sp-24) 0;
        gap: 0;
    }

    .sidebar__col--main,
    .sidebar__col--about {
        display: contents;
        width: auto;
    }

    .sidebar__main-link,
    .sidebar__section-title {
        position: relative;
        display: flex;
        align-items: center;
        width: calc(100vw - (var(--sp-24) * 2));
        max-width: var(--sp-342);
        font-size: 5.641vw;
        line-height: 1;
        margin: 0;
        letter-spacing: 0.1em;
        border-bottom: 1px solid #000;
    }

    .sidebar__main-link::after,
    .sidebar__section-title::after {
        content: "";
        position: absolute;
        top: 50%;
        left: auto;
        right: 0;
        display: block;
        width: 5.641vw;
        height: 4.103vw;
        border: 0;
        border-radius: 0;
        opacity: 1;
        transform: translateY(-50%);
        background: url("../img/sidebar/arrow_sp.svg") right center / contain no-repeat;
        transition: none;
    }

    .sidebar__main-link:hover::after,
    .sidebar__section-title:hover::after {
        opacity: 1;
        transform: translateY(-50%);
    }

    .sidebar__main-link {
        height: var(--sp-91);
    }

    .sidebar__main-link:first-child {
        order: 1;
        height: var(--sp-59);
        border-top: 0;
        padding-bottom: var(--sp-16);
    }

    .sidebar__main-link:nth-child(2) {
        order: 3;
    }

    .sidebar__main-link:nth-child(3) {
        order: 4;
    }

    .sidebar__main-link:nth-child(4) {
        order: 5;
    }

    .sidebar__main-link:nth-child(5) {
        order: 6;
    }

    .sidebar__main-link:nth-child(6) {
        order: 7;
    }

    .sidebar__section-title {
        height: auto;
    }

    .sidebar__col--about > .sidebar__section-title {
        order: 2;
        height: 8.205vw;
        margin-top: 5.897vw;
        border-bottom: 0;
    }

    .sidebar__col--about > .sidebar__section-title::after {
        top: 50%;
        right: 0;
    }

    .sidebar__section-title[href="/news.html"],
    .sidebar__section-title[href="/news/"] {
        order: 8;
        height: var(--sp-91);
        margin-top: 0;
        border-bottom: 1px solid #000;
    }

    .sidebar__section-title[href="/news.html"]::after,
    .sidebar__section-title[href="/news/"]::after {
        display: block;
    }

    .sidebar__sep {
        width: var(--sp-10);
        height: clamp(0.535px, 0.069vw, 1.375px);
        margin: 0;
        overflow: hidden;
        color: transparent;
        background: #000;
        border: 0;
    }

    .sidebar__sep--about {
        order: 2;
        align-self: flex-start;
        margin-top: 8.205vw;
        display: none;
    }

    .sidebar__col--about .sidebar__sub-links + .sidebar__sep,
    .sidebar__section-title[href="/news.html"] + .sidebar__sep,
    .sidebar__section-title[href="/news/"] + .sidebar__sep {
        display: none;
    }

    .sidebar__sub-links {
        order: 2;
        display: grid;
        grid-template-columns: 21.538vw 20.513vw 17.949vw max-content;
        gap: 5.128vw 0;
        width: 100%;
        box-sizing: border-box;
        height: 22.821vw;
        margin: 5.897vw 0 0;
        padding-bottom: 9.487vw;
        border-bottom: 1px solid #000;
    }

    .sidebar__sub-link,
    .sidebar__small-link,
    .sidebar__sns-head,
    .sidebar__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
        letter-spacing: 0.1em;
        font-weight: 600;
    }

    .sidebar__col--about .sidebar__sub-link:nth-child(4),
    .sidebar__sub-link:nth-child(4) {
        margin-left: 0;
        grid-column: 4;
        grid-row: 1;
    }

    .sidebar__sub-link:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }

    .sidebar__sub-link:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
    }

    .sidebar__sub-link:nth-child(3) {
        grid-column: 3;
        grid-row: 1;
    }

    .sidebar__sub-link:nth-child(5) {
        grid-column: 1;
        grid-row: 2;
    }

    .sidebar__sub-link:nth-child(6) {
        grid-column: 2;
        grid-row: 2;
    }

    .sidebar__sub-link:nth-child(7) {
        grid-column: 3;
        grid-row: 2;
    }

    .sidebar__small-link {
        order: 9;
        display: flex;
        align-items: center;
        height: 9.487vw;
        width: max-content;
        margin-top: 6.41vw;
    }

    .sidebar__col--sns {
        order: 10;
        width: auto;
        margin-top: 19.231vw;
    }

    .sidebar__sns-head {
        display: block;
        width: max-content;
    }

    .sidebar__col--sns > .sidebar__sep {
        display: block;
        margin-top: var(--sp-40);
        margin-bottom: var(--sp-40);
        height: var(--sp-2);
    }

    .sidebar__sns-links {
        gap: 8.462vw;
        margin-top: 0;
    }

    .sidebar__sns-link {
        width: calc(100vw - (var(--sp-24) * 2));
        max-width: var(--sp-342);
        justify-content: space-between !important;
        gap: 0 !important;
        display: flex !important;
    }

    .sidebar__sns-link span {
        white-space: nowrap;
    }

    .sidebar__sns-arrow {
        margin-left: auto;
        margin-right: 0;
        width: 5.128vw;
    }
.sidebar__sns-arrow {
        width: 5.128vw;
    }

    .sidebar__cta {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        padding: 20.513vw var(--sp-24);
        margin: 0;
    }

    .sidebar__cta-card {
        width: var(--sp-342);
        height: var(--sp-257);
        aspect-ratio: auto;
        border-radius: 2.051vw;
    }

    .sidebar__cta-label {
        left: var(--sp-20);
        top: 12.564vw;
        font-size: var(--sp-16);
    }

    .sidebar__cta-title {
        left: var(--sp-20);
        top: 19.487vw;
        font-size: 8.205vw;
    }

    .sidebar__cta-desc {
        left: var(--sp-20);
        top: 30vw;
        max-width: 77.436vw;
        font-size: var(--sp-14);
        line-height: 1.857;
        letter-spacing: 0.05em;
    }

    .sidebar__cta-btn {
        right: var(--sp-20);
        bottom: var(--sp-20);
        width: var(--sp-44);
        height: var(--sp-44);
    }

    .sidebar__cta-arrow {
        width: var(--sp-20);
        height: var(--sp-20);
    }

    .home-page .cta {
        padding: var(--sp-80) 0;
        padding-bottom: clamp(105.769px, 28.205vw, 216.923px);
    }

    .home-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        width: clamp(359px, 100vw, 769px);
        padding: 0 var(--sp-24);
    }

    .home-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .home-page .cta__card-content {
        padding: var(--sp-32) var(--sp-20);
        width: 100%;
    }

    .home-page .cta__card-top {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        gap: 2.308vw;
    }

    .home-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .home-page .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    .home-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .home-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .home-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .home-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .home-page .footer-marquee__text {
        font-size: 30.769vw;
        line-height: 1.1;
        height: var(--sp-90);
        

    }

    body.home-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.home-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.home-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.home-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.home-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.home-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.home-page .footer-about__nav-link--privacy,
    body.home-page .footer-about__sns-head,
    body.home-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.home-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.home-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.home-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.home-page .footer-about__divider {
        display: none;
    }

    body.home-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.home-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.home-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.home-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.home-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.home-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: var(--sp-22);
    }
}

@media screen and (max-width: 769px) {
    body.about-page {
        width: 100%;
        min-width: 0;
    }

    .about-page {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-12: 3.077vw;
        --sp-14: 3.59vw;
        --sp-16: 4.103vw;
        --sp-18: 4.615vw;
        --sp-20: 5.128vw;
        --sp-24: 6.154vw;
        --sp-28: 7.179vw;
        --sp-30: 7.692vw;
        --sp-32: 8.205vw;
        --sp-34: 8.718vw;
        --sp-44: 11.282vw;
        --sp-50: 12.821vw;
        --sp-56: 14.359vw;
        --sp-78: 20vw;
        --sp-84: 21.538vw;
        --sp-85: 21.795vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
        width: 100%;
        overflow-x: hidden;
        background: #fbfbf8;
    }

    .about-page .pc {
        display: none !important;
    }

    .about-page .sp {
        display: inline !important;
    }
.about-page .cta {
        padding: var(--sp-50) 0;
        padding-bottom: var(--sp-40);
    }

    .about-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        max-width: none;
        padding: 0 var(--sp-24);
    }

    .about-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .about-page .cta__card-content {
        padding: var(--sp-32) var(--sp-20);
        width: 100%;
    }

    .about-page .cta__card-top {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        gap: 2.308vw;
    }

    .about-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .about-page .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    .about-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .about-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .about-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .about-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .about-page .footer-marquee__text {
        font-size: 30.769vw;
        line-height: 1.1;
        height: var(--sp-90);
    }

    body.about-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.about-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.about-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.about-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.about-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.about-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.about-page .footer-about__nav-link--privacy,
    body.about-page .footer-about__sns-head,
    body.about-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.about-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.about-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.about-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.about-page .footer-about__divider {
        display: none;
    }

    body.about-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.about-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.about-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.about-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.about-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.about-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: var(--sp-22);
    }
}

@media screen and (max-width: 769px) {
    body.liquor-sales-page {
        width: 100%;
        min-width: 0;
    }

    .liquor-sales-page {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-12: 3.077vw;
        --sp-14: 3.59vw;
        --sp-16: 4.103vw;
        --sp-18: 4.615vw;
        --sp-20: 5.128vw;
        --sp-24: 6.154vw;
        --sp-28: 7.179vw;
        --sp-30: 7.692vw;
        --sp-32: 8.205vw;
        --sp-34: 8.718vw;
        --sp-44: 11.282vw;
        --sp-50: 12.821vw;
        --sp-56: 14.359vw;
        --sp-78: 20vw;
        --sp-84: 21.538vw;
        --sp-85: 21.795vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
        width: 100%;
        overflow-x: hidden;
        background: #fbfbf8;
    }

    .liquor-sales-page .pc {
        display: none !important;
    }

    .liquor-sales-page .sp {
        display: inline !important;
    }
.liquor-sales-page .cta {
        padding: var(--sp-50) 0;
        padding-bottom: clamp(105.769px, 28.205vw, 216.923px);
    }

    .liquor-sales-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        max-width: none;
        padding: 0 var(--sp-24);
    }

    .liquor-sales-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .liquor-sales-page .cta__card-content {
        padding: var(--sp-32) var(--sp-20);
        width: 100%;
    }

    .liquor-sales-page .cta__card-top {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        gap: 2.308vw;
    }

    .liquor-sales-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .liquor-sales-page .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    .liquor-sales-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .liquor-sales-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .liquor-sales-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .liquor-sales-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .liquor-sales-page .footer-marquee__text {
        font-size: 30.769vw;
        line-height: 1.1;
        height: var(--sp-90);
    }

    body.liquor-sales-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.liquor-sales-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.liquor-sales-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.liquor-sales-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.liquor-sales-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.liquor-sales-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.liquor-sales-page .footer-about__nav-link--privacy,
    body.liquor-sales-page .footer-about__sns-head,
    body.liquor-sales-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.liquor-sales-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.liquor-sales-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.liquor-sales-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.liquor-sales-page .footer-about__divider {
        display: none;
    }

    body.liquor-sales-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.liquor-sales-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.liquor-sales-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.liquor-sales-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.liquor-sales-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.liquor-sales-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: var(--sp-22);
    }

    .liquor-sales-page .page-breadcrumb {
        display: none;
    }

    .liquor-sales-page .low_fv__nav {
        margin-top: var(--sp-40);
    }

    .liquor-sales-page .low_fv__nav-inner {
        display: flex;
        overflow-x: auto;
        gap: 0;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .liquor-sales-page .low_fv__nav-inner::-webkit-scrollbar {
        display: none;
    }

    .liquor-sales-page .low_fv__nav-item {
        flex: 0 0 44.872vw;
        scroll-snap-align: start;
    }
}

@media screen and (max-width: 769px) {
    html,
    body {
        width: 100%;
        min-width: 0;
        overflow-x: hidden;
    }

    .low_fv {
        --sp-24: 6.154vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
        width: 100%;
        max-width: none;
        overflow: hidden;
    }

    .low_fv__visual--no-img {
        height: clamp(428px, 119.23vw, 917px);
        min-height: 0;
        margin: 0;
        border-radius: 0;
        overflow: visible;
    }

    .low_fv__title-block {
        top: clamp(107px, 29.74vw, 229px);
        right: var(--sp-24);
        align-items: flex-end;
        text-align: right;
    }

    .low_fv__title-en {
        font-size: 9.231vw;
        line-height: 1;
        margin-bottom: 2.564vw;
        letter-spacing: 0.05em;
    }

    .low_fv__title-sub {
        gap: 2.564vw;
    }

    .low_fv__title-line {
        height: clamp(0.535px, 0.069vw, 1.375px);
    }

    .low_fv__title-ja {
        font-size: var(--sp-14);
        line-height: 1;
    }

    .low_fv__catch {
        top: clamp(308px, 85.90vw, 660px);
        left: var(--sp-24);
        right: var(--sp-24);
    }

    .low_fv__catch-text {
        font-size: var(--sp-32);
        line-height: 1.35;
        letter-spacing: 0.01em;
        white-space: normal;
    }

    .low_fv__blob {
        height: clamp(481px, 134.10vw, 1032px);
        top: clamp(-59px, -7.69vw, -28px);
        right: clamp(-434px, -56.41vw, -202px);
        opacity: 0.5;
    }

    .low_fv__narrative {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin: 0;
        position: relative;
    }

    .low_fv__narrative-img-wrap {
        width: clamp(307.692px, 82.051vw, 630.769px);
        height: clamp(331px, 92.31vw, 709px);
        align-self: flex-start;
        border-radius: 0 2.564vw 2.564vw 0;
    }

    .low_fv__narrative-img {
        object-position: center center;
    }

    .low_fv__narrative-text {
        width: var(--sp-content-width);
        margin: 0 auto;
        padding: var(--sp-35) 0 0;
    }
    .low_fv__narrative-text .pc {
        display: none;
    }

    .low_fv__narrative-body {
        margin: 0;
        padding-right: 0;
        font-size: 3.59vw;
        line-height: 2.15;
        letter-spacing: 0.05em;
        font-weight: 500;
    }

    .low_fv__narrative-vertical {
        position: absolute;
        top: clamp(-694px, -90.26vw, -324px);
        right: 0;
        margin-right: 0;
        font-size: var(--sp-12);
        font-weight: 600;
        line-height: var(--sp-16);
        z-index: 2;
    }

    .low_fv__between-blob {
        top: clamp(645px, 179.49vw, 1381px);
        left: clamp(-434px, -56.41vw, -202px);
        width: 110vw;
        opacity: 1;
    }

    .about-page .low_fv__between-blob {
        display: none;
    }

    .low_fv__hero-image {
        width: clamp(351.923px, 93.846vw, 721.077px);
        height: clamp(258px, 71.79vw, 552px);
        aspect-ratio: 1424 / 937;
        margin: var(--sp-80) 0 0 var(--sp-24);
        border-radius: 2.564vw 0 0 2.564vw;
    }

    .low_fv__hero-image-img {
        object-position: center center;
    }

    .low_fv__nav {
        margin: 12.821vw var(--sp-24) 0;
        padding: 0 0;
        padding-bottom: 5.128vw;
        border-top: clamp(0px, 0vw, 0px) solid #000;
        border-bottom: 1px solid #000;
        width: clamp(315px, 87.69vw, 675px);
    }

    .low_fv__nav-inner {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 4.615vw 6.154vw;
        height: auto;
        overflow: visible;
        padding-right: 0;
    }

    .low_fv__nav-item {
        justify-content: flex-start;
        gap: var(--sp-12);
        min-width: 0;
    }

    .low_fv__nav-label {
        font-size: var(--sp-14);
        line-height: 1.25;
        white-space: normal;
    }

    .low_fv__nav-arrow img {
        width: var(--sp-16);
        height: var(--sp-22);
    }

    .low_fv__nav-border {
        display: none;
    }
}

@media screen and (max-width: 769px) {
    body.restaurant-page {
        width: 100%;
        min-width: 0;
    }

    .restaurant-page {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-12: 3.077vw;
        --sp-14: 3.59vw;
        --sp-16: 4.103vw;
        --sp-18: 4.615vw;
        --sp-20: 5.128vw;
        --sp-24: 6.154vw;
        --sp-28: 7.179vw;
        --sp-30: 7.692vw;
        --sp-32: 8.205vw;
        --sp-34: 8.718vw;
        --sp-44: 11.282vw;
        --sp-50: 12.821vw;
        --sp-56: 14.359vw;
        --sp-78: 20vw;
        --sp-84: 21.538vw;
        --sp-85: 21.795vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
        width: 100%;
        overflow-x: hidden;
        background: #fbfbf8;
    }

    .restaurant-page .pc {
        display: none !important;
    }

    .restaurant-page .sp {
        display: inline !important;
    }
.restaurant-page .cta {
        padding: var(--sp-40) 0;
        padding-bottom: clamp(105.769px, 28.205vw, 216.923px);
    }

    .restaurant-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        max-width: none;
        padding: 0 var(--sp-24);
    }

    .restaurant-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .restaurant-page .cta__card-content {
        padding: var(--sp-32) var(--sp-20);
        width: 100%;
    }

    .restaurant-page .cta__card-top {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        gap: 2.308vw;
    }

    .restaurant-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .restaurant-page .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    .restaurant-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .restaurant-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .restaurant-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .restaurant-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .restaurant-page .footer-marquee__text {
        font-size: 30.769vw;
        line-height: 1.1;
        height: var(--sp-90);
    }

    body.restaurant-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.restaurant-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.restaurant-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.restaurant-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.restaurant-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.restaurant-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.restaurant-page .footer-about__nav-link--privacy,
    body.restaurant-page .footer-about__sns-head,
    body.restaurant-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.restaurant-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.restaurant-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.restaurant-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.restaurant-page .footer-about__divider {
        display: none;
    }

    body.restaurant-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.restaurant-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.restaurant-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.restaurant-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.restaurant-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.restaurant-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: var(--sp-22);
        transform: rotate(-90deg);
    }

    .restaurant-page .page-breadcrumb {
        display: none;
    }

    .restaurant-page .low_fv__nav {
        margin-top: var(--sp-40);
        margin-bottom: var(--sp-16);
    }

    .restaurant-page .low_fv__nav-inner {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--sp-24) 6.154vw;
        overflow: visible;
        scroll-snap-type: none;
        scrollbar-width: none;
    }

    .restaurant-page .low_fv__nav-inner::-webkit-scrollbar {
        display: none;
    }

    .restaurant-page .low_fv__nav-item {
        flex: none;
        min-width: 0;
        scroll-snap-align: none;
    }
}

@media screen and (max-width: 769px) {
    body.rental-seller-page {
        width: 100%;
        min-width: 0;
        overflow-x: hidden;
    }

    .rental-seller-page {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-12: 3.077vw;
        --sp-14: 3.590vw;
        --sp-16: 4.103vw;
        --sp-18: 4.615vw;
        --sp-20: 5.128vw;
        --sp-24: 6.154vw;
        --sp-30: 7.692vw;
        --sp-32: 8.205vw;
        --sp-34: 8.718vw;
        --sp-40: 10.256vw;
        --sp-48: 12.308vw;
        --sp-56: 14.359vw;
        --sp-60: 15.385vw;
        --sp-72: 18.462vw;
        --sp-80: 20.513vw;
        --sp-84: 21.538vw;
        --sp-85: 21.795vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
    }

    .rental-seller-page .pc {
        display: none !important;
    }

    .rental-seller-page .sp {
        display: block !important;
    }
.rental-seller-page .cta {
        padding: var(--sp-80) 0 var(--sp-80);
    }

    .rental-seller-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        max-width: none;
        padding: 0 var(--sp-24);
    }

    .rental-seller-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .rental-seller-page .cta__card-content {
        width: 100%;
        padding: var(--sp-32) var(--sp-20);
    }

    .rental-seller-page .cta__card-top,
    .rental-seller-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
    }

    .rental-seller-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .rental-seller-page .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    .rental-seller-page .cta__desc {
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .rental-seller-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .rental-seller-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .rental-seller-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .rental-seller-page .footer-marquee__text {
        font-size: 30.769vw;
        line-height: 1.1;
        height: var(--sp-90);
    }

    body.rental-seller-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.rental-seller-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.rental-seller-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.rental-seller-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.rental-seller-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.rental-seller-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.rental-seller-page .footer-about__nav-link--privacy,
    body.rental-seller-page .footer-about__sns-head,
    body.rental-seller-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.rental-seller-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.rental-seller-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.rental-seller-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.rental-seller-page .footer-about__divider {
        display: none;
    }

    body.rental-seller-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.rental-seller-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.rental-seller-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.rental-seller-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.rental-seller-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.rental-seller-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: var(--sp-22, 5.641vw);
        transform: rotate(-90deg);
    }

    .rental-seller-page .page-breadcrumb {
        display: none;
    }

    .rental-seller-page .low_fv__nav {
        margin-top: var(--sp-40);
        margin-bottom: var(--sp-16);
    }

    .rental-seller-page .low_fv__nav-inner {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--sp-24) var(--sp-32);
        overflow: visible;
        scroll-snap-type: none;
        scrollbar-width: none;
    }

    .rental-seller-page .low_fv__nav-inner::-webkit-scrollbar {
        display: none;
    }

    .rental-seller-page .low_fv__nav-item {
        flex: none;
        min-width: 0;
        scroll-snap-align: none;
    }
}

@media screen and (max-width: 769px) {
    body.liquor-purchase-page {
        width: 100%;
        min-width: 0;
        overflow-x: hidden;
    }

    .liquor-purchase-page {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-12: 3.077vw;
        --sp-14: 3.590vw;
        --sp-16: 4.103vw;
        --sp-18: 4.615vw;
        --sp-20: 5.128vw;
        --sp-24: 6.154vw;
        --sp-28: 7.179vw;
        --sp-30: 7.692vw;
        --sp-32: 8.205vw;
        --sp-34: 8.718vw;
        --sp-40: 10.256vw;
        --sp-44: 11.282vw;
        --sp-50: 12.821vw;
        --sp-56: 14.359vw;
        --sp-60: 15.385vw;
        --sp-78: 20vw;
        --sp-80: 20.513vw;
        --sp-84: 21.538vw;
        --sp-85: 21.795vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
        width: 100%;
        overflow-x: hidden;
        background: #fbfbf8;
    }

    .liquor-purchase-page .pc {
        display: none !important;
    }

    .liquor-purchase-page .sp {
        display: inline !important;
    }
.liquor-purchase-page .cta {
        padding: var(--sp-80) 0 var(--sp-80);
    }

    .liquor-purchase-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        max-width: none;
        padding: 0 var(--sp-24);
    }

    .liquor-purchase-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .liquor-purchase-page .cta__card-content {
        width: 100%;
        padding: var(--sp-32) var(--sp-20);
    }

    .liquor-purchase-page .cta__card-top,
    .liquor-purchase-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
    }

    .liquor-purchase-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .liquor-purchase-page .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    .liquor-purchase-page .cta__desc {
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .liquor-purchase-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .liquor-purchase-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .liquor-purchase-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .liquor-purchase-page .footer-marquee__text {
        font-size: 30.769vw;
        line-height: 1.1;
        height: var(--sp-90);
    }

    body.liquor-purchase-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.liquor-purchase-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.liquor-purchase-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.liquor-purchase-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.liquor-purchase-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.liquor-purchase-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.liquor-purchase-page .footer-about__nav-link--privacy,
    body.liquor-purchase-page .footer-about__sns-head,
    body.liquor-purchase-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.liquor-purchase-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.liquor-purchase-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.liquor-purchase-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.liquor-purchase-page .footer-about__divider {
        display: none;
    }

    body.liquor-purchase-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.liquor-purchase-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.liquor-purchase-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.liquor-purchase-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.liquor-purchase-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.liquor-purchase-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: 5.641vw;
        transform: rotate(-90deg);
    }

    .liquor-purchase-page .page-breadcrumb {
        
    }

    .liquor-purchase-page .low_fv__nav {
        margin-top: var(--sp-40);
        margin-bottom: var(--sp-16);
    }

    .liquor-purchase-page .low_fv__nav-inner {
        display: flex;
        flex-wrap: wrap;
        gap: var(--sp-32);
        overflow: visible;
        scroll-snap-type: none;
        scrollbar-width: none;
    }

    .liquor-purchase-page .low_fv__nav-inner::-webkit-scrollbar {
        display: none;
    }

    .liquor-purchase-page .low_fv__nav-item {
        width: max-content;
        flex: 0 0 auto;
        min-width: 0;
        scroll-snap-align: none;
    }
}

@media screen and (max-width: 769px) {
    body.purchase-price-list-page {
        width: 100%;
        min-width: 0;
        overflow-x: hidden;
        background: #fbfbf8;
    }

    .purchase-price-list-page {
        --sp-u: calc(100vw / 390);
        --sp-10: 2.564vw;
        --sp-12: 3.077vw;
        --sp-14: 3.590vw;
        --sp-16: 4.103vw;
        --sp-18: 4.615vw;
        --sp-20: 5.128vw;
        --sp-24: 6.154vw;
        --sp-30: 7.692vw;
        --sp-32: 8.205vw;
        --sp-34: 8.718vw;
        --sp-40: 10.256vw;
        --sp-44: 11.282vw;
        --sp-50: 12.821vw;
        --sp-56: 14.359vw;
        --sp-60: 15.385vw;
        --sp-78: 20vw;
        --sp-84: 21.538vw;
        --sp-85: 21.795vw;
        --sp-content-width: calc(100vw - var(--sp-24) * 2);
        width: 100%;
        overflow-x: hidden;
        background: #fbfbf8;
    }

    .purchase-price-list-page .pc {
        display: none !important;
    }

    .purchase-price-list-page .sp {
        display: inline !important;
    }
.purchase-price-list-page .low_fv {
        width: 100%;
        max-width: none;
        margin: 0;
        overflow: hidden;
        background: #fbfbf8;
        padding-top: var(--sp-11);
    }

    .purchase-price-list-page .low_fv__visual {
        width: 100%;
        height: 193.846vw;
        min-height: 0;
        margin: var(--sp-60) 0 0;
        border-radius: var(--sp-10);
    }

    .purchase-price-list-page .low_fv__visual-img {
        display: block;
        object-fit: cover;
    }

    .purchase-price-list-page .low_fv__title-block {
        top: var(--sp-62);
        right: var(--sp-24);
        align-items: flex-end;
        text-align: right;
    }

    .purchase-price-list-page .low_fv__title-en {
        max-width: 78vw;
        margin-bottom: var(--sp-12);
        font-size: 9.231vw;
        line-height: 1.03;
        letter-spacing: 0.05em;
        text-align: right;
    }

    .purchase-price-list-page .low_fv__title-sub {
        gap: 0;
        width: auto;
        max-width: 78vw;
        margin-left: auto;
        justify-content: flex-end;
        align-self: flex-end;
    }

    .purchase-price-list-page .low_fv__title-line {
        height: clamp(0.535px, 0.069vw, 1.375px);
        display: none;
    }

    .purchase-price-list-page .low_fv__title-ja {
        font-size: var(--sp-14);
        line-height: 1.45;
        white-space: normal;
        text-align: right;
    }

    .purchase-price-list-page .low_fv__catch {
        top: clamp(534px, 148.72vw, 1144px);
        left: var(--sp-24);
        right: var(--sp-24);
    }

    .purchase-price-list-page .low_fv__catch-text {
        font-size: var(--sp-32);
        line-height: 1.5;
        letter-spacing: 0.05em;
        white-space: normal;
    }

    .purchase-price-list-page .low_fv__blob,
    .purchase-price-list-page .page-breadcrumb {
        display: none;
    }

    .purchase-price-list-page .cta {
        padding: var(--sp-80) 0 var(--sp-80);
    }

    .purchase-price-list-page .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        max-width: none;
        padding: 0 var(--sp-24);
    }

    .purchase-price-list-page .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    .purchase-price-list-page .cta__card-content {
        width: 100%;
        padding: var(--sp-32) var(--sp-20);
    }

    .purchase-price-list-page .cta__card-top,
    .purchase-price-list-page .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
    }

    .purchase-price-list-page .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    .purchase-price-list-page .cta__title {
        margin-bottom: 2.051vw;
        font-size: 8.205vw;
        line-height: 1;
    }

    .purchase-price-list-page .cta__desc {
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    .purchase-price-list-page .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    .purchase-price-list-page .cta__arrow-circle img {
        width: 4.615vw;
        height: 4.615vw;
    }

    .purchase-price-list-page .footer-marquee {
        height: var(--sp-85);
        overflow: visible;
    }

    .purchase-price-list-page .footer-marquee__text {
        height: var(--sp-90);
        font-size: 30.769vw;
        line-height: 1.1;
    }

    body.purchase-price-list-page .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body.purchase-price-list-page .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-bottom: var(--sp-84);
    }

    body.purchase-price-list-page .footer-about__col {
        gap: var(--sp-24);
    }

    body.purchase-price-list-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.purchase-price-list-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.purchase-price-list-page .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body.purchase-price-list-page .footer-about__nav-link--privacy,
    body.purchase-price-list-page .footer-about__sns-head,
    body.purchase-price-list-page .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body.purchase-price-list-page .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body.purchase-price-list-page .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body.purchase-price-list-page .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body.purchase-price-list-page .footer-about__divider {
        display: none;
    }

    body.purchase-price-list-page .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body.purchase-price-list-page .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body.purchase-price-list-page .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body.purchase-price-list-page .footer-about__copyright {
        font-size: 2.564vw;
    }

    body.purchase-price-list-page .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
    }

    body.purchase-price-list-page .footer-about__totop-arrow {
        width: var(--sp-30);
        height: 5.641vw;
        transform: rotate(-90deg);
    }
}

.liquor-sales-page .low_fv__nav-inner--sp {
    display: none;
}

@media screen and (max-width: 769px) {
    .liquor-sales-page .low_fv__nav-inner--pc {
        display: none;
    }

    .liquor-sales-page .low_fv__nav-inner--sp {
        display: flex;
    }

    .liquor-sales-page .low_fv__nav-inner--sp .low_fv__nav-item {
        flex: 0 0 clamp(162px, 45.13vw, 347px);
    }

    .liquor-sales-page .low_fv__nav-inner--sp .low_fv__nav-item__sp {
        margin-left: clamp(-47px, -6.15vw, -22px);
    }
}

.rental-seller-page .rs-features__item-imgs,
.rental-seller-page .rs-features__item--text-right .rs-features__item-imgs {
    position: relative;
    overflow: visible;
    height: clamp(220px, 37.71vw, 550px);
}

.rental-seller-page .rs-features__item-imgs__p2 {
    margin-top: clamp(104.667px, 13.611vw, 269.500px);
}

.rental-seller-page .rs-features__img {
    position: absolute;
    z-index: 1;
    width: clamp(157.489px, 20.486vw, 405.625px);
    height: clamp(217.369px, 28.264vw, 559.625px);
    object-fit: cover;
    border-radius: clamp(5px, 0.70vw, 14px);
    display: block;
}

.rental-seller-page .rs-features__item--text-left .rs-features__img--a,
.rental-seller-page .rs-features__item--text-right .rs-features__img--a {
    left: clamp(163.364px, 21.250vw, 420.750px);
    right: auto;
    top: clamp(-27.500px, -1.389vw, -10.681px);
}

.rental-seller-page .rs-features__item--text-right .rs-features__img--a2 {
    top: var(--top-6);
    left: var(--top--2);
}

.rental-seller-page .rs-features__item--text-left .rs-features__img--b,
.rental-seller-page .rs-features__item--text-right .rs-features__img--b {
    left: var(--top-9);
    right: auto;
    top: clamp(61.414px, 7.986vw, 158.125px);
}

.rental-seller-page .rs-features__item--text-right .rs-features__img--b2 {
    top: clamp(75.298px, 9.792vw, 193.875px);
    left: clamp(158.024px, 20.556vw, 407.000px);
}

@media screen and (max-width: 769px) {
    .rental-seller-page .rs-features__item-text,
    .rental-seller-page .rs-features__item--text-right .rs-features__item-text {
        order: 1;
    }

    .rental-seller-page .rs-features__item-imgs,
    .rental-seller-page .rs-features__item--text-right .rs-features__item-imgs {
        order: 2;
        width: 100%;
        height: clamp(499px, 138.97vw, 1069px);
        margin-top: 0;
    }

    .rental-seller-page .rs-features__img {
        width: 49.83%;
        height: 75.09%;
        border-radius: 2.051vw;
    }

    .rental-seller-page .rs-features__item--text-left .rs-features__img--a,
    .rental-seller-page .rs-features__item--text-right .rs-features__img--a {
        left: auto;
        right: clamp(-47px, -6.15vw, -22px);
        top: 0;
        width: clamp(221px, 61.54vw, 473px);
        height: clamp(258px, 71.79vw, 552px);
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .rental-seller-page .rs-features__item--text-left .rs-features__img--a2,
    .rental-seller-page .rs-features__item--text-right .rs-features__img--a2 {
        right: auto;
        left: clamp(-47px, -6.15vw, -22px);
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        border-top-right-radius: 2.051vw;;
        border-bottom-right-radius: 2.051vw;;
    }

    .rental-seller-page .rs-features__item--text-left .rs-features__img--b,
    .rental-seller-page .rs-features__item--text-right .rs-features__img--b {
        left: var(--sp-20);
        right: auto;
        top: 48%;
        width: clamp(221px, 61.54vw, 473px);
        height: clamp(258px, 71.79vw, 552px);
        z-index: -1;
    }

    .rental-seller-page .rs-features__item--text-left .rs-features__img--b2,
    .rental-seller-page .rs-features__item--text-right .rs-features__img--b2 {
        left: auto;
        right: var(--sp-36);
    }

    .rental-seller-page .rs-features__item-title::after {
        width: clamp(1px, 0.256vw, 2px);
        height: var(--sp-80);
        margin: 4.103vw 0 4.103vw -1.282vw;
        margin-left: var(--sp-20);
    }

    .rental-seller-page .low_fv__nav-inner {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        gap: var(--sp-24) 0;
    }

    .rental-seller-page .low_fv__nav-item {
        flex: 0 0 auto;
        width: fit-content;
        min-width: 0;
        margin-right: var(--sp-32);
    }

    .rental-seller-page .low_fv__nav-item:nth-child(2),
    .rental-seller-page .low_fv__nav-item:nth-child(4),
    .rental-seller-page .low_fv__nav-item:nth-child(5) {
        margin-right: 0;
    }

    .rental-seller-page .low_fv__nav-item:nth-child(3) {
        margin-right: var(--sp-21);
    }
}

.rental-seller-page .rs-features__item--text-right .rs-features__item-note {
    width: clamp(228.32px, 29.653vw, 586.70px);
    max-width: 100%;
}



@media screen and (max-width: 769px) {
    .rental-seller-page .rs-features__item--text-right .rs-features__item-title::after {
        margin-left: auto;
        margin-right: 0;
    }
    .rental-seller-page .rs-features__item--text-right .rs-features__item-title,
    .rental-seller-page .rs-features__item--text-right .rs-features__item-body,
    .rental-seller-page .rs-features__item--text-right .rs-features__item-note {
        margin-left: auto;
        margin-right: 0;
        text-align: left;
    }

    .rental-seller-page .rs-features__item--text-right .rs-features__item-title {
        width: fit-content;
        max-width: 100%;
    }

    .rental-seller-page .rs-features__item--text-right .rs-features__item-note {
        width: clamp(258px, 71.79vw, 552px);
        max-width: 100%;
    }

    .rental-seller-page .rs-features__item--text-right .rs-features__item-title::after {
        margin-left: auto;
        margin-right: var(--sp-20, 5.128vw);
    }

    .rental-seller-page .rs-access,
    .rental-seller-page .rs-access__inner,
    .rental-seller-page .rs-access__content,
    .rental-seller-page .rs-access__title-en,
    .rental-seller-page .rs-access__title-ja,
    .rental-seller-page .rs-access__address,
    .rental-seller-page .rs-access__info,
    .rental-seller-page .rs-access__info-label,
    .rental-seller-page .rs-access__info-value,
    .rental-seller-page .rs-access__links,
    .rental-seller-page .rs-access__link-btn,
    .rental-seller-page .rs-access__link-map {
        text-align: left;
    }

    .rental-seller-page .rs-access__links {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 100%;
        visibility: visible;
        opacity: 1;
    }

    .rental-seller-page .rs-access__link-btn,
    .rental-seller-page .rs-access__link-map {
        display: inline-flex;
        width: auto;
        color: #000;
        visibility: visible;
        opacity: 1;
    }

    .rental-seller-page .rs-access__link-btn {
        text-decoration: none;
    }

    .rental-seller-page .rs-access__link-map {
        text-decoration: underline;
        text-underline-offset: 0.35em;
    }

    .rental-seller-page .rs-access__link-icon {
        display: block;
        color: currentColor;
        width: 6.410vw;
        height: 6.410vw;
    }
}

.rental-seller-page .rs-access,
.rental-seller-page .rs-access__inner,
.rental-seller-page .rs-access__content,
.rental-seller-page .rs-access__title-en,
.rental-seller-page .rs-access__title-ja,
.rental-seller-page .rs-access__address,
.rental-seller-page .rs-access__info,
.rental-seller-page .rs-access__info-label,
.rental-seller-page .rs-access__info-value,
.rental-seller-page .rs-access__links,
.rental-seller-page .rs-access__link-btn,
.rental-seller-page .rs-access__link-map {
    text-align: left;
}

.rental-seller-page .rs-access__links {
    display: flex;
    justify-content: flex-start;
    visibility: visible;
    opacity: 1;
}

.rental-seller-page .rs-access__link-btn,
.rental-seller-page .rs-access__link-map {
    display: inline-flex;
    width: auto;
    color: #000;
    visibility: visible;
    opacity: 1;
}

.rental-seller-page .rs-access__link-btn {
    text-decoration: none;
}

.rental-seller-page .rs-access__link-map {
    text-decoration: underline;
    text-underline-offset: 0.35em;
}

.rental-seller-page .rs-access__link-icon {
    display: block;
    color: currentColor;
}

.rental-seller-page .rs-access__address br.sp {
    display: none;
}

@media screen and (max-width: 769px) {
    .rental-seller-page .rs-access__address br.sp {
        display: block;
    }
}

.rental-seller-page .rs-price__spec-bullet {
    color: #000;
    background: transparent;
    border: 0;
}

@media screen and (max-width: 769px) {
    .rental-seller-page .rs-price__spec-bullet {
        border: clamp(0.535px, 0.069vw, 1.375px) solid #000;
        box-sizing: border-box;
    }
}

.about-page br.pc {
    display: inline !important;
}

.about-page br.sp {
    display: none !important;
}

@media screen and (max-width: 769px) {
    .about-page br.pc {
        display: none !important;
    }

    .about-page br.sp {
        display: inline !important;
    }
}

@media screen and (max-width: 769px) {
    .about-page .low_fv__visual--no-img {
        height: clamp(479px, 133.33vw, 1026px);
    }

    .about-page .low_fv__nav-inner {
        display: flex;
        flex-wrap: wrap;
        column-gap: var(--sp-30);
        row-gap: var(--sp-24);
    }

    .about-page .low_fv__nav-item {
        flex: 0 0 auto;
        width: max-content;
        min-width: 0;
    }

    .page-breadcrumb {
        font-size: var(--sp-12);
        margin-bottom: var(--sp-95);
    }
}

@media screen and (max-width: 769px) {
    .low_fv__narrative-img-wrap {
        position: relative;
        z-index: 10001;
    }

    .low_fv__narrative-img {
        position: relative;
        z-index: 1;
    }

    .page-breadcrumb {
        padding-left: var(--sp-24);
    }
}
/* Shared footer: keep the common footer aligned with index.html. */
body .footer-marquee {
    height: clamp(49.91px, 6.483vw, 128.37px);
    margin: 0;
    padding: 0;
    overflow: visible;
    position: relative;
    z-index: 1;
}

body .footer-marquee__text {
    height: 109%;
    margin-bottom: var(--top-18);
    font-size: clamp(80.104px, 10.417vw, 206.250px);
    animation-duration: 40000ms;
    line-height: clamp(74.764px, 9.722vw, 192.500px);
}

body .footer.footer--about {
    margin-top: 0;
    position: relative;
    z-index: 2;
    min-height: var(--top-785);
    padding: var(--top-100) var(--top-120) var(--top-74);
    border-radius: var(--top-80) var(--top-80) 0 0;
}

body .footer-about__nav-grid {
    grid-template-columns: var(--top-343) var(--top-628) var(--top-229);
    flex-basis: clamp(236.39px, 30.694vw, 607.75px);
    column-gap: 0;
    padding-bottom: 0;
}

body .footer-about__col {
    gap: clamp(24.06px, 3.125vw, 61.88px);
    min-width: auto;
}

body .footer-about__nav-link {
    font-size: var(--top-22);
}

body .footer-about__separator {
    width: var(--top-10);
    height: var(--top-2);
    margin-bottom: var(--top-10);
}

body .footer-about__nav-link--privacy,
body .footer-about__sns-head,
body .footer-about__sns-link {
    font-size: var(--top-14);
}

body .footer-about__sns-link {
    gap: var(--top-8);
}

body .footer-about__sns-link span {
    min-width: auto;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

body .footer-about__sns-arrow {
    width: var(--top-16);
}

body .footer-about__bottom {
    padding-top: var(--top-40);
}

body .footer-about__logo-img {
    width: var(--top-185);
}

body .footer-about__copyright {
    font-size: var(--top-12);
}

body .footer-about__totop {
    width: var(--top-60);
    height: var(--top-60);
    transform: rotate(-90deg);
}

body .footer-about__totop-arrow {
    width: var(--top-20);
    transform: none;
}

@media screen and (max-width: 769px) {
    body .footer-marquee {
        height: var(--sp-85);
        overflow: hidden;
    }

    body .footer-marquee__text {
        height: 21.026vw;
        font-size: 30.769vw;
        line-height: var(--sp-79);
    }

    body .footer.footer--about {
        min-height: auto;
        padding: var(--sp-64) var(--sp-24) 10.256vw;
        border-radius: 10.256vw 10.256vw 0 0;
    }

    body .footer-about__nav-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8.718vw;
        padding-bottom: var(--sp-84);
    }

    body .footer-about__col {
        gap: var(--sp-24);
    }

    body .footer-about__col--sns {
        margin-top: var(--sp-46, 11.795vw);
    }

    body.contact-page .footer-about__nav-grid {
        gap: 0;
    }

    body.contact-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.contact-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body.recruit-page .footer-about__nav-grid {
        gap: 0;
    }

    body.recruit-page .footer-about__col--sub {
        margin-top: var(--sp-24);
    }

    body.recruit-page .footer-about__col--sns {
        margin-top: calc(8.718vw + var(--sp-46, 11.795vw));
    }

    body .footer-about__nav-link {
        width: max-content;
        font-size: var(--sp-18);
        line-height: 1;
    }

    body .footer-about__nav-link--privacy,
    body .footer-about__sns-head,
    body .footer-about__sns-link {
        font-size: var(--sp-14);
        line-height: 1;
    }

    body .footer-about__sns-links {
        gap: var(--sp-30);
    }

    body .footer-about__sns-link {
        width: clamp(221.154px, 58.974vw, 453.615px);
    }

    body .footer-about__sns-arrow {
        width: var(--sp-16);
    }

    body .footer-about__divider {
        display: none;
    }

    body .footer-about__bottom {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--sp-56);
        padding-top: 0;
    }

    body .footer-about__bottom-left {
        align-items: center;
        text-align: center;
        gap: var(--sp-16);
    }

    body .footer-about__logo-img {
        width: clamp(290.385px, 77.436vw, 595.482px);
    }

    body .footer-about__copyright {
        font-size: 2.564vw;
    }

    body .footer-about__totop {
        width: var(--sp-60);
        height: var(--sp-60);
        margin: 0 auto;
        transform: none;
    }

    body .footer-about__totop-arrow {
        width: var(--sp-30);
        height: var(--sp-22);
        transform: rotate(-90deg);
    }
}

@media screen and (max-width: 769px) {
    body:not(.home-page) .page-breadcrumb {
        display: flex;
        padding-left: var(--sp-24);
        margin: 0 0 var(--sp-95);
        font-size: var(--sp-12);
    }

    body .footer-marquee {
        height: var(--sp-85);
        overflow: hidden;
    }

    body .footer-marquee__text {
        height: var(--sp-90);
        font-size: 30.769vw;
        line-height: 1.1;
    }
}
/* Shared CTA: keep common CTA aligned with about.html. */
body:not(.home-page) .cta:not(.cta--recruit-contact-only) {
    padding-top: clamp(42.722px, 5.556vw, 110px);
    padding-bottom: clamp(42.78px, 5.556vw, 110px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__inner {
    grid-template-columns: 1fr 1fr;
    gap: clamp(22px, 2.78vw, 54px);
    padding: 0 clamp(65px, 8.333vw, 162px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card {
    aspect-ratio: 580 / 320;
    border-radius: clamp(5px, 0.694vw, 14px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card-content {
    padding: clamp(22px, 2.778vw, 54px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card-top {
    gap: clamp(6px, 0.833vw, 16px);
    max-width: calc(100% - clamp(43px, 5.556vw, 108px));
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__label {
    font-size: clamp(11px, 1.111vw, 22px);
    line-height: 1;
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__title {
    font-size: clamp(26px, 3.333vw, 65px);
    line-height: 1;
    margin: 0 0 clamp(6px, 0.833vw, 16px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__desc {
    width: auto;
    max-width: 50rem;
    font-size: clamp(10px, 0.972vw, 19px);
    line-height: 1.86;
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__arrow-circle {
    width: clamp(32px, 4.167vw, 81px);
    height: clamp(32px, 4.167vw, 81px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__arrow-circle img,
body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__arrow-circle svg {
    width: clamp(15px, 1.972vw, 38px);
    height: clamp(15px, 1.972vw, 38px);
}

body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card-arrow {
    right: clamp(22px, 2.778vw, 54px);
    bottom: clamp(22px, 2.778vw, 54px);
}

@media screen and (max-width: 769px) {
    body:not(.home-page) .cta:not(.cta--recruit-contact-only) {
        padding: var(--sp-80) 0 var(--sp-40);
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--sp-24);
        width: clamp(359px, 100vw, 769px);
        padding: 0 var(--sp-24);
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card {
        width: var(--sp-content-width);
        max-width: var(--sp-content-width);
        justify-self: center;
        aspect-ratio: 342 / 257;
        border-radius: 2.051vw;
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card-content {
        width: 100%;
        padding: var(--sp-32) var(--sp-20);
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__card-top {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        gap: 2.308vw;
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__label {
        font-size: var(--sp-16);
        line-height: 4.615vw;
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__title {
        font-size: 8.205vw;
        line-height: 1;
        margin-bottom: 2.051vw;
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__desc {
        width: clamp(290.385px, 77.436vw, 595.482px);
        max-width: 100%;
        font-size: var(--sp-14);
        line-height: 5.641vw;
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__arrow-circle {
        width: 11.282vw;
        height: 11.282vw;
    }

    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__arrow-circle img,
    body:not(.home-page) .cta:not(.cta--recruit-contact-only) .cta__arrow-circle svg {
        width: 4.615vw;
        height: 4.615vw;
    }

    body .footer-about__separator {
        height: var(--sp-2);
        width: var(--sp-10);
    }
}
@media screen and (max-width: 769px) {
    /* Keep SP low_fv narrative text above the between blob. */
    .low_fv__narrative-text,
    .low_fv__narrative-body {
        position: relative;
        z-index: 10002;
        width: clamp(315px, 87.69vw, 675px);
    }

    .low_fv__between-blob {
        z-index: 10000;
    }

    .news-sections__blob {
        top: clamp(32.083px, 4.167vw, 82.5px);
        right: clamp(-618.75px, -31.25vw, -240.625px);
        width: clamp(300px, 92vw, 492px);
        height: auto;
        opacity: 0.5;
    }
}

@media screen and (max-width: 769px) {
    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    @supports (overflow: clip) {
        html,
        body {
            overflow-x: clip;
        }
    }

    .header--about {
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100vw;
        overflow: hidden;
    }

    .header__inner--about {
        width: 100%;
        max-width: 100vw;
        min-width: 0;
        box-sizing: border-box;
    }

    .header__nav {
        min-width: 0;
        flex: 0 0 auto;
    }

    body.news-page #menuBtn.header__menu-circle,
    body.news-detail-page #menuBtn.header__menu-circle,
    body.contact-page #menuBtn.header__menu-circle {
        display: inline-flex !important;
        position: relative !important;
        width: 6.154vw !important;
        height: 6.154vw !important;
        margin-left: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #1a1a1a !important;
        overflow: hidden !important;
    }

    body.news-page,
    body.news-detail-page,
    body.contact-page {
        max-width: 100vw;
        overflow-x: hidden;
    }

    body.news-page #menuBtn.header__menu-circle .menu-flip,
    body.news-detail-page #menuBtn.header__menu-circle .menu-flip,
    body.contact-page #menuBtn.header__menu-circle .menu-flip,
    body.news-page #menuBtn.header__menu-circle .header__menu-img,
    body.news-detail-page #menuBtn.header__menu-circle .header__menu-img,
    body.contact-page #menuBtn.header__menu-circle .header__menu-img {
        display: none !important;
    }

    body.news-page #menuBtn.header__menu-circle::before,
    body.news-page #menuBtn.header__menu-circle::after,
    body.news-detail-page #menuBtn.header__menu-circle::before,
    body.news-detail-page #menuBtn.header__menu-circle::after,
    body.contact-page #menuBtn.header__menu-circle::before,
    body.contact-page #menuBtn.header__menu-circle::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: 6.154vw !important;
        height: clamp(0.535px, 0.069vw, 1.375px) !important;
        background: #000 !important;
        opacity: 1 !important;
        pointer-events: none !important;
        transform-origin: center center !important;
        transition: transform 0.22s ease !important;
    }

    body.news-page #menuBtn.header__menu-circle::before,
    body.news-detail-page #menuBtn.header__menu-circle::before,
    body.contact-page #menuBtn.header__menu-circle::before {
        transform: translate(-50%, -50%) !important;
    }

    body.news-page #menuBtn.header__menu-circle::after,
    body.news-detail-page #menuBtn.header__menu-circle::after,
    body.contact-page #menuBtn.header__menu-circle::after {
        transform: translate(-50%, -50%) rotate(90deg) !important;
    }

    body.news-page #menuBtn.header__menu-circle.is-open::after,
    body.news-page #menuBtn.header__menu-circle[aria-expanded="true"]::after,
    body.news-detail-page #menuBtn.header__menu-circle.is-open::after,
    body.news-detail-page #menuBtn.header__menu-circle[aria-expanded="true"]::after,
    body.contact-page #menuBtn.header__menu-circle.is-open::after,
    body.contact-page #menuBtn.header__menu-circle[aria-expanded="true"]::after {
        transform: translate(-50%, -50%) rotate(180deg) !important;
    }

    body.news-page .sidebar-overlay,
    body.news-page .sidebar,
    body.news-detail-page .sidebar-overlay,
    body.news-detail-page .sidebar,
    body.contact-page .sidebar-overlay,
    body.contact-page .sidebar {
        position: fixed !important;
        top: 0 !important;
        right: auto !important;
        bottom: auto !important;
        left: 0 !important;
        width: 100dvw !important;
        max-width: 100dvw !important;
        min-width: 0 !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        overflow-x: hidden !important;
    }

    body.news-page .sidebar,
    body.news-detail-page .sidebar,
    body.contact-page .sidebar {
        transform: none !important;
    }

    body.news-page .sidebar:not(.is-open),
    body.news-detail-page .sidebar:not(.is-open),
    body.contact-page .sidebar:not(.is-open) {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    body.news-page .sidebar.is-open,
    body.news-detail-page .sidebar.is-open,
    body.contact-page .sidebar.is-open {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    body.news-page .sidebar__header,
    body.news-detail-page .sidebar__header,
    body.contact-page .sidebar__header {
        position: fixed !important;
        top: 0 !important;
        right: auto !important;
        left: 0 !important;
        width: 100dvw !important;
        max-width: 100dvw !important;
    }

    body.news-page .sidebar__close,
    body.news-detail-page .sidebar__close,
    body.contact-page .sidebar__close {
        position: fixed !important;
        top: calc((var(--sp-79, 20.256vw) - 6.154vw) / 2) !important;
        right: var(--sp-24) !important;
        left: auto !important;
        width: 6.154vw !important;
        height: 6.154vw !important;
        z-index: 90003 !important;
    }

    body.news-page > picture[aria-hidden="true"],
    body.news-detail-page > picture[aria-hidden="true"],
    body.contact-page > picture[aria-hidden="true"] {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10000;
        display: block;
        width: 100%;
        max-width: 100vw;
        height: clamp(500px, 140vw, 1076.6px);
        overflow: hidden;
        pointer-events: none;
    }

    body.news-page > picture[aria-hidden="true"] .news-sections__blob,
    body.news-detail-page > picture[aria-hidden="true"] .news-sections__blob,
    body.contact-page > picture[aria-hidden="true"] .news-sections__blob {
        position: absolute;
        top: clamp(32.083px, 4.167vw, 82.5px);
        right: auto;
        left: clamp(432px, 120.51vw, 927px);
        width: clamp(300px, 92vw, 492px);
        max-width: none;
        height: auto;
        transform: translateX(calc(-100% + clamp(106.944px, 13.889vw, 275px)));
    }
}

@media screen and (max-width: 769px) {
    .liquor-purchase-page .liquor-purchase-main #purpose .sales-btn__arrow {
        right: var(--sp-32);
    }

    .cta--recruit-contact-only {
        width: clamp(359px, 100vw, 769px);
        height: clamp(236px, 65.90vw, 507px);
    }

    .cta.cta--recruit-contact-only .cta__inner {
        width: clamp(359px, 100vw, 769px);
        padding: 0 var(--sp-24);
        height: clamp(236px, 65.90vw, 507px);
    }
}

html,
body {
    background: #FBFBF8;
    width: 100%;
    max-width: none;
    overflow-x: hidden;
}

@supports (overflow: clip) {
    html,
    body {
        overflow-x: clip;
    }
}
