/*!
Theme Name: Litty
Theme URI: http://underscores.me/
Author: YudaiHayakawa
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: litty
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* ====================
   Base
==================== */

:root {
        --ink: #081825;
        --bg-top: #f7f6f2;
        --bg-bottom: #f2e9d1;
        --font-jp: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Hiragino Kaku Gothic Pro", "Noto Sans JP", sans-serif;
      }

      @font-face {
        font-family: "Anzeigen Grotesk";
        src: local("Anzeigen Grotesk"), local("AnzeigenGrotesk");
        font-display: swap;
      }

      * {
        box-sizing: border-box;
      }

      html,
      body {
        margin: 0;
        padding: 0;
        min-height: 100%;
        width: 100%;
        overflow-x: hidden;
      }

      html {
        background: linear-gradient(to bottom, var(--bg-top), var(--bg-bottom));
      }

      body {
        color: var(--ink);
        font-family: "Abril Display", "Hiragino Sans", "Noto Sans JP", sans-serif;
        background: transparent;
      }

      p {
        margin: 0;
      }

      img {
        display: block;
        max-width: 100%;
      }

/* ====================
   Japanese Typography
==================== */

      .sp-news-excerpt,
      .sp-contact-text,
      .pc-profile-ja,
      .pc-contact-text,
      .archive-news-empty,
      .single-news-lead,
      .single-news-content,
      .site-footer-sub-nav-sp,
      .site-footer-sub-link-pc {
        font-family: var(--font-jp) !important;
        font-weight: 300 !important;
      }
/* ====================
   Layout Switch
==================== */

.layout-sp {
        display: block;
      }

      .layout-pc {
        display: none;
      }
/* ====================
   SP: Container and Decor
==================== */

.sp-top {
        position: relative;
        width: 100%;
        max-width: 393px;
        margin: 0 auto;
        min-height: 3500px;
        overflow: visible;
      }

      .sp-star {
        position: absolute;
        width: 141px;
        height: 141px;
        object-fit: cover;
        pointer-events: none;
        will-change: transform;
        --bubble-delay: 0s;
        --bubble-opacity: 1;
      }

      .sp-star-1 {
        left: -62px;
        top: 220px;
        --bubble-delay: 0.1s;
      }

      .sp-star-2 {
        left: 286px;
        top: 600px;
        --bubble-delay: 0.45s;
      }

      .sp-star-3 {
        left: 18px;
        top: 980px;
        --bubble-delay: 0.2s;
      }

      .sp-star-4 {
        left: 244px;
        top: 1360px;
        --bubble-delay: 0.65s;
      }

      .sp-star-5 {
        left: -70px;
        top: 1740px;
        --bubble-delay: 0.35s;
      }

      .sp-star-6 {
        left: 128px;
        top: 2120px;
        --bubble-delay: 0.85s;
      }

      .sp-star-7 {
        left: 275px;
        top: 2500px;
        --bubble-delay: 0.5s;
      }

      .sp-star-8 {
        left: -54px;
        top: 2880px;
        --bubble-delay: 1.05s;
      }

      .sp-star-9 {
        left: 32px;
        top: 3260px;
        --bubble-delay: 0.75s;
      }

      .sp-star-10 {
        left: 210px;
        top: 430px;
        --bubble-delay: 0.28s;
      }

      .sp-star-11 {
        left: -66px;
        top: 1180px;
        --bubble-delay: 0.58s;
      }

      .sp-star-12 {
        left: 250px;
        top: 1960px;
        --bubble-delay: 0.9s;
      }

      .sp-star-13 {
        left: 40px;
        top: 2740px;
        --bubble-delay: 0.42s;
      }

      .sp-star-14 {
        left: 282px;
        top: 3380px;
        --bubble-delay: 1.2s;
      }

      .star-bubble-ready {
        opacity: 0;
        margin-top: 120px;
      }

      .star-bubble-ready.is-bubble-rise {
        animation: star-bubble-rise 20s linear var(--bubble-delay, 0s) both;
      }

      @keyframes star-bubble-rise {
        0% {
          opacity: 0;
          margin-top: 120px;
        }
        8% {
          opacity: var(--bubble-opacity, 1);
        }
        100% {
          opacity: var(--bubble-opacity, 1);
          margin-top: 0;
        }
      }
/* ====================
   SP: Main Layout
==================== */

.sp-main {
        position: relative;
        width: 100%;
        max-width: 393px;
        padding-bottom: 50px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 125px;
      }
/* ====================
   SP: FV
==================== */

.sp-section-fv {
        position: relative;
        width: 100vw;
        height: 100vh;
        display: block;
        overflow: hidden;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        left: auto;
        transform: none;
        margin-bottom: 0;
      }

      @supports (height: 100svh) {
        .sp-section-fv {
          height: 100svh;
        }
      }

      .sp-section-fv .fv-swiper,
      .pc-section-fv .fv-swiper {
        position: absolute !important;
        inset: 0;
        z-index: 0;
        overflow: hidden;
      }

      .sp-section-fv .fv-swiper .swiper-wrapper,
      .sp-section-fv .fv-swiper .swiper-slide,
      .pc-section-fv .fv-swiper .swiper-wrapper,
      .pc-section-fv .fv-swiper .swiper-slide,
      .sp-section-fv .sp-fv-bg-wrap,
      .pc-section-fv .pc-fv-bg-wrap,
      .sp-section-fv .sp-fv-bg-wrap a,
      .pc-section-fv .pc-fv-bg-wrap a {
        width: 100%;
        height: 100%;
      }

      .sp-section-fv .fv-swiper .swiper-slide,
      .pc-section-fv .fv-swiper .swiper-slide {
        position: relative;
        opacity: 1 !important;
        visibility: visible !important;
      }

      .sp-section-fv .fv-swiper,
      .sp-section-fv .fv-swiper .swiper-wrapper,
      .sp-section-fv .fv-swiper .swiper-slide {
        height: 100% !important;
      }

      .pc-section-fv .fv-swiper,
      .pc-section-fv .fv-swiper .swiper-wrapper,
      .pc-section-fv .fv-swiper .swiper-slide {
        height: 1080px !important;
      }

      .sp-fv-bg-wrap {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
        z-index: 0;
      }

      .sp-fv-bg-wrap a,
      .pc-fv-bg-wrap a {
        display: block !important;
      }

      .sp-fv-bg {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        max-width: none !important;
        display: block !important;
      }

      .sp-fv-header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 84px;
        padding: 12px 19px;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        background: rgba(255, 255, 255, 0.34);
        z-index: 60;
      }

      .sp-fv-menu-btn {
        position: relative;
        width: 66px;
        height: 66px;
        margin: -13px -19px -13px 0;
        border: 0;
        padding: 0;
        background: transparent;
        cursor: pointer;
      }

      .sp-fv-menu-line {
        position: absolute;
        left: 19px;
        top: 32px;
        width: 28px;
        height: 2px;
        background-color: #081825;
        transition: transform 0.2s ease-out, opacity 0.2s ease-out;
      }

      .sp-fv-menu-line--top {
        transform: translateY(-9px);
      }

      .sp-fv-menu-line--middle {
        transform: translateY(0);
      }

      .sp-fv-menu-line--bottom {
        transform: translateY(9px);
      }

      .sp-fv-menu-btn.is-open .sp-fv-menu-line--middle {
        opacity: 1;
      }

      .sp-fv-menu-btn.is-open .sp-fv-menu-line--top {
        transform: translateY(-9px);
      }

      .sp-fv-menu-btn.is-open .sp-fv-menu-line--bottom {
        transform: translateY(9px);
      }

      .sp-fv-logo {
        position: absolute;
        left: 50%;
        top: 50%;
        height: 60px;
        width: auto;
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 0;
      }

      .sp-fv-logo img {
        width: auto;
        height: 100%;
        object-fit: contain;
      }

      .sp-menu-overlay {
        display: none;
        position: fixed;
        inset: 0;
        background: rgba(255, 255, 255, 0.02);
        z-index: 80;
      }

      .sp-menu-overlay.is-show,
      .sp-menu-overlay.is-hide {
        display: block;
      }

      .sp-menu-overlay.is-show {
        animation: sp-menu-overlay-show 0.28s ease-out both;
      }

      .sp-menu-overlay.is-hide {
        animation: sp-menu-overlay-hide 0.22s ease-out both;
      }

      .sp-menu-inner {
        width: min(335px, calc(100vw - 58px));
        height: 100%;
        margin-left: auto;
        padding: 75px 0 32px 50px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 38px;
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
        transform: translate3d(100%, 0, 0);
      }

      .sp-menu-overlay.is-show .sp-menu-inner {
        animation: sp-menu-body-show 0.3s cubic-bezier(0.22, 0.8, 0.24, 1) both;
      }

      .sp-menu-overlay.is-hide .sp-menu-inner {
        animation: sp-menu-body-hide 0.22s cubic-bezier(0.4, 0, 1, 1) both;
      }

      .sp-menu-nav {
        width: 73px;
        display: flex;
        flex-direction: column;
        gap: 20px;
      }

      .sp-menu-nav a {
        color: #081825;
        text-decoration: none;
        font-family: "Abril Display", "Times New Roman", serif;
        font-size: 19px;
        font-weight: 400;
        line-height: normal;
        letter-spacing: 0.19px;
      }

      .sp-menu-sns {
        display: flex;
        align-items: center;
        gap: 8px;
      }

      .sp-menu-sns a {
        line-height: 0;
      }

      .sp-menu-sns img {
        height: 20px;
        width: auto;
      }

      body.sp-menu-open {
        overflow: hidden;
      }

      @keyframes sp-menu-overlay-show {
        0% {
          opacity: 0;
        }
        100% {
          opacity: 1;
        }
      }

      @keyframes sp-menu-overlay-hide {
        0% {
          opacity: 1;
        }
        100% {
          opacity: 0;
        }
      }

      @keyframes sp-menu-body-show {
        0% {
          transform: translate3d(100%, 0, 0);
        }
        100% {
          transform: translate3d(0, 0, 0);
        }
      }

      @keyframes sp-menu-body-hide {
        0% {
          transform: translate3d(0, 0, 0);
        }
        100% {
          transform: translate3d(100%, 0, 0);
        }
      }

      .sp-fv-title {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: fit-content;
        max-width: calc(100vw - 24px);
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        color: #fff;
        text-align: center;
        font-family: "Anzeigen Grotesk", "Oswald", "Abril Display", "Hiragino Sans", "Noto Sans JP", sans-serif;
        font-style: normal;
        z-index: 1;
      }

      .layout-sp .sp-section-fv .sp-fv-title,
      .layout-sp .sp-section-fv .sp-fv-title-main,
      .layout-sp .sp-section-fv .sp-fv-title-sub {
        font-family: "Anzeigen Grotesk", "Oswald", "Abril Display", "Hiragino Sans", "Noto Sans JP", sans-serif !important;
      }

      .layout-sp .sp-section-fv .sp-fv-title-main {
        position: static !important;
        left: auto !important;
        transform: none !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        text-align: center !important;
      }

      .layout-sp .sp-section-fv .sp-fv-title {
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
      }

      .sp-fv-title-main {
        width: auto;
        max-width: 100%;
        display: block;
        align-self: center;
        text-align: center;
        font-size: 62px;
        letter-spacing: 0.62px;
        line-height: 1;
        white-space: nowrap;
      }

      .sp-fv-title-sub {
        font-size: 26px;
        letter-spacing: 0.26px;
        line-height: 28px;
      }

      .sp-fv-dots {
        position: absolute;
        left: 50%;
        bottom: 24px;
        transform: translateX(-50%);
        width: 26px;
        height: 6px;
        z-index: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
      }

      .sp-fv-dots .swiper-pagination-bullet {
        width: 6px;
        height: 6px;
        margin: 0 !important;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.6);
        opacity: 1;
      }

      .sp-fv-dots .swiper-pagination-bullet-active {
        background: #fff;
      }
/* ====================
   SP: Video
==================== */

.sp-section-video {
        width: 330.066px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 50px;
      }

      .sp-video-image {
        width: 330.066px;
        height: 185.35px;
        display: block;
      }

      .sp-video-logo {
        position: relative;
        width: 165px;
        height: auto;
      }

      .sp-video-logo img {
        display: block;
        width: 100%;
        height: auto;
      }

/* ====================
   SP: News
==================== */

.sp-section-news {
        width: 324px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
      }

      .sp-title-news {
        width: 100px;
        height: auto;
        margin-bottom: 50px;
        display: block;
      }

      .sp-news-list {
        display: grid;
        gap: 20px;
        width: 100%;
        margin: 0 0 35px;
      }

      .sp-news-item {
        display: flex;
        flex-direction: column;
        gap: 15px;
        width: 100%;
      }

      .sp-news-date {
        width: 100%;
        border-bottom: 0.5px solid var(--ink);
        padding-bottom: 2px;
        margin: 0;
        font-family: "Abril Display", "Times New Roman", serif;
        font-size: 17px;
        letter-spacing: 0.17px;
        line-height: normal;
      }

      .sp-news-body {
        display: flex;
        gap: 10px;
        align-items: start;
        width: 100%;
      }

      .sp-news-body > div {
        flex: 1 1 auto;
        min-width: 0;
      }

      .sp-news-item--noimg .sp-news-body {
        display: block;
      }

      .sp-news-title {
        font-family: "Abril Display", "Times New Roman", serif;
        font-size: 12px;
        letter-spacing: 0.12px;
        line-height: 12px;
        margin-bottom: 15px;
      }

      .sp-news-excerpt {
        font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
        font-size: 10px;
        line-height: 1.5;
        letter-spacing: 0.1px;
        margin-bottom: 0;
      }

      .sp-news-link {
        display: block;
        width: 100%;
        margin-top: 2px;
        font-family: "Abril Display", "Times New Roman", serif;
        font-size: 10px;
        line-height: 12px;
        text-align: right;
        color: var(--ink);
        text-decoration: underline;
      }

      .sp-news-link:visited,
      .sp-news-link:hover,
      .sp-news-link:focus,
      .sp-news-link:active {
        color: var(--ink);
      }

      .sp-news-thumb {
        width: 141.75146px;
        height: 112.3125px;
        overflow: hidden;
        flex-shrink: 0;
      }

      .sp-news-thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .sp-news-more-wrap {
        width: 100%;
        text-align: center;
      }

      .sp-boyfriend-2 {
        width: 156px;
        align-self: flex-start;
        margin-left: 6px;
        margin-top: -154px;
        pointer-events: none;
        z-index: 2;
        transform-origin: 56% 52%;
        will-change: transform;
        animation: sp-gif-tilt 1.2s steps(4, end) infinite;
      }

      @keyframes sp-gif-tilt {
        0% {
          transform: rotate(0deg);
        }
        30% {
          transform: rotate(2deg);
        }
        60% {
          transform: rotate(-10deg);
        }
        100% {
          transform: rotate(0deg);
        }
      }
/* ====================
   SP: Goods
==================== */

.sp-section-goods {
        width: 324px;
        display: flex;
        flex-direction: column;
        gap: 50px;
      }

      .sp-title-goods {
        position: relative;
        width: 107px;
        height: auto;
      }

      .sp-title-goods img {
        display: block;
        width: 100%;
        height: auto;
      }


      .sp-goods-wrap {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 60px;
      }

      .sp-goods-items {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        gap: 35px 15px;
      }

      .sp-goods-card {
        width: 150.998px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        color: var(--ink);
        text-decoration: none;
      }

      .sp-goods-card:visited,
      .sp-goods-card:hover,
      .sp-goods-card:focus,
      .sp-goods-card:active {
        color: var(--ink);
      }

      .sp-goods-image {
        width: 150.998px;
        height: 170.587px;
        object-fit: cover;
      }

      .sp-goods-text {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 5px;
        text-align: center;
      }

      .sp-goods-name {
        font-size: 10px;
        letter-spacing: 0.12px;
      }

      .sp-goods-price {
        font-size: 10px;
        letter-spacing: 0.1px;
      }

      .sp-viewmore,
      .pc-viewmore {
        border: 0;
        border-bottom: 0.5px solid var(--ink);
        box-shadow: none;
        padding: 5px 15px;
        font-size: 12px;
        letter-spacing: 0.12px;
        line-height: 1;
        color: var(--ink);
        text-decoration: none;
      }

      .sp-viewmore:visited,
      .sp-viewmore:hover,
      .sp-viewmore:focus,
      .sp-viewmore:active,
      .pc-viewmore:visited,
      .pc-viewmore:hover,
      .pc-viewmore:focus,
      .pc-viewmore:active {
        color: var(--ink);
      }

      .pc-viewmore {
        font-size: 18px;
      }

/* ====================
   SP: Cheers
==================== */

.sp-cheers {
        position: relative;
        width: 145px;
        height: 118px;
        align-self: flex-end;
        margin-right: 24px;
        margin-top: -62px;
        margin-bottom: -86px;
        pointer-events: none;
        z-index: 2;
      }

      .sp-cheers-glass {
        position: absolute;
        bottom: 0;
        width: 72px;
        height: 110px;
        object-fit: contain;
        transform-origin: 50% 86%;
        will-change: transform;
      }

      .sp-cheers-glass-left {
        left: 0;
        animation: sp-cheers-left 1.5s steps(8, end) infinite;
      }

      .sp-cheers-glass-right {
        right: 0;
        animation: sp-cheers-right 1.5s steps(8, end) infinite;
      }

      @keyframes sp-cheers-left {
        0%, 15% {
          transform: translateX(0) rotate(-12deg);
        }
        33%, 42% {
          transform: translateX(5px) rotate(-8deg);
        }
        55%, 100% {
          transform: translateX(0) rotate(-12deg);
        }
      }

      @keyframes sp-cheers-right {
        0%, 15% {
          transform: translateX(0) rotate(12deg);
        }
        33%, 42% {
          transform: translateX(-5px) rotate(8deg);
        }
        55%, 100% {
          transform: translateX(0) rotate(12deg);
        }
      }
/* ====================
   SP: Profile
==================== */

.sp-section-profile {
        width: 373.499px;
        display: flex;
        flex-direction: column;
        gap: 36px;
      }

      .sp-title-profile {
        position: relative;
        width: 114px;
        height: auto;
        margin-left: 27px;
      }

      .sp-title-profile img {
        display: block;
        width: 100%;
        height: auto;
      }


      .sp-profile-main {
        width: 373.5px;
        object-fit: cover;
      }

      .sp-profile-sns {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 8px;
      }

      .sp-profile-sns .w20 {
        width: 20px;
        height: 20px;
      }

      .sp-profile-sns .w18 {
        width: 18px;
        height: 20px;
      }

      .sp-profile-sns .w19 {
        width: 19px;
        height: 20px;
      }

      .sp-profile-bottom {
        width: 100%;
        height: auto;
        object-fit: cover;
      }

      .sp-profile-bottom-wrap {
        position: relative;
        width: 373.5px;
      }

      .sp-profile-boyfriend {
        position: absolute;
        right: 192px;
        top: 718px;
        width: 184px;
        height: auto;
        z-index: 2;
        pointer-events: none;
        transform-origin: 52% 58%;
        will-change: transform;
        animation: sp-gif-tilt 1.2s steps(4, end) infinite;
      }
/* ====================
   SP: Contact
==================== */

.sp-section-contact {
        width: 316px;
        display: flex;
        flex-direction: column;
        gap: 40px;
        margin-bottom: 125px;
      }

      .sp-title-contact {
        position: relative;
        width: 129px;
        height: auto;
      }

      .sp-title-contact img {
        display: block;
        width: 100%;
        height: auto;
      }

      .sp-contact-wrap {
        display: flex;
        flex-direction: column;
        gap: 25px;
        font-size: 12px;
        letter-spacing: 0.12px;
      }

      .sp-contact-text {
        height: 55px;
        line-height: 18px;
      }

      .sp-contact-mail {
        width: 154px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-family: "Abril Display", "Times New Roman", serif;
        font-weight: 400;
      }

      .sp-contact-mail .underline {
        color: var(--ink);
        text-decoration: underline;
      }

      .sp-contact-mail .underline:visited,
      .sp-contact-mail .underline:hover,
      .sp-contact-mail .underline:focus,
      .sp-contact-mail .underline:active {
        color: var(--ink);
      }
/* ====================
   PC: Base
==================== */

.pc-root {
        position: relative;
        width: 100%;
        min-height: 7130px;
        background: transparent;
      }

      .pc-main {
        position: relative;
        z-index: 1;
        width: 100%;
        max-width: 1920px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 300px;
      }

      .pc-star {
        position: absolute;
        width: 286px;
        height: 286px;
        object-fit: cover;
        pointer-events: none;
        opacity: 0.9;
        z-index: 0;
        --bubble-opacity: 0.9;
        --bubble-delay: 0s;
      }

      .pc-star-1 {
        left: -58px;
        top: 420px;
        --bubble-delay: 0.25s;
      }

      .pc-star-2 {
        right: -42px;
        top: 1180px;
        --bubble-delay: 0.6s;
      }

      .pc-star-3 {
        left: -44px;
        top: 2420px;
        --bubble-delay: 0.4s;
      }

      .pc-star-4 {
        right: -52px;
        top: 3560px;
        --bubble-delay: 0.85s;
      }

      .pc-star-5 {
        left: -36px;
        top: 4960px;
        --bubble-delay: 0.55s;
      }

      .pc-star-6 {
        right: -40px;
        top: 6240px;
        --bubble-delay: 1s;
      }

      .pc-star-7 {
        left: 170px;
        top: 1720px;
        --bubble-delay: 0.32s;
      }

      .pc-star-8 {
        right: 140px;
        top: 2920px;
        --bubble-delay: 0.68s;
      }

      .pc-star-9 {
        left: 120px;
        top: 4420px;
        --bubble-delay: 0.46s;
      }

      .pc-star-10 {
        right: 180px;
        top: 5680px;
        --bubble-delay: 0.92s;
      }

      .pc-star-11 {
        left: 260px;
        top: 760px;
        --bubble-delay: 0.38s;
      }

      .pc-star-12 {
        right: 220px;
        top: 1960px;
        --bubble-delay: 0.72s;
      }

      .pc-star-13 {
        left: -70px;
        top: 3180px;
        --bubble-delay: 0.52s;
      }

      .pc-star-14 {
        right: -20px;
        top: 4180px;
        --bubble-delay: 1.08s;
      }

      .pc-star-15 {
        left: 210px;
        top: 5480px;
        --bubble-delay: 0.66s;
      }

      .pc-star-16 {
        right: 130px;
        top: 6760px;
        --bubble-delay: 1.24s;
      }
/* ====================
   PC: FV
==================== */

.pc-section-fv {
        position: relative;
        width: 100%;
        height: 1080px;
        overflow: hidden;
      }

      .pc-section-fv::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 160px;
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0) 100%);
        pointer-events: none;
        z-index: 1;
      }

      .pc-fv-swiper {
        position: absolute;
        inset: 0;
        z-index: 0;
        overflow: hidden;
      }

      .pc-fv-swiper .swiper-wrapper,
      .pc-fv-swiper .swiper-slide {
        width: 100%;
        height: 100%;
      }

      .pc-fv-swiper .swiper-slide {
        position: relative;
      }

      .pc-fv-bg-wrap {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
      }

      .pc-fv-bg {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        max-width: none !important;
        display: block !important;
      }

      .pc-fv-header {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        padding: 10px 20px;
        background: transparent;
        transition: background-color 0.25s ease;
        z-index: 60;
      }

      .pc-fv-header.is-scrolled {
        background: rgba(0, 0, 0, 0.22);
      }

      .pc-fv-header-inner {
        width: 100%;
        max-width: 1920px;
        margin: 0 auto;
        padding: 0 0 0 8px;
        min-height: 84px;
        display: flex;
        align-items: center;
        justify-content: space-between;
      }

      .pc-fv-header-right {
        display: flex;
        align-items: center;
        gap: 50px;
      }

      .pc-fv-nav {
        display: flex;
        align-items: center;
        gap: 50px;
      }

      .pc-fv-nav a {
        color: #fff;
        text-decoration: none;
        font-family: "Abril Display", "Times New Roman", serif;
        font-size: 20px;
        line-height: 1;
        letter-spacing: 0.3px;
      }

      .pc-fv-logo {
        position: relative;
        width: auto;
        height: 60px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 0;
      }

      .pc-fv-logo img {
        width: auto;
        height: 100%;
        object-fit: contain;
        filter: brightness(0) invert(1);
      }

      .pc-fv-sns {
        display: flex;
        align-items: center;
        gap: 12px;
        padding-right: 8px;
      }

      .pc-fv-sns a {
        width: 28px;
        height: 28px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
      }

      .pc-fv-sns img {
        width: 28px;
        height: 28px;
        filter: brightness(0) invert(1);
      }

      .pc-fv-title {
        position: absolute;
        left: 50%;
        top: 50%;
        width: 850px;
        transform: translate(-50%, -50%);
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 34px;
        text-align: center;
        color: #fff;
        font-family: "Anzeigen Grotesk", "Oswald", "Abril Display", "Hiragino Sans", "Noto Sans JP", sans-serif;
      }

      .pc-fv-title-main {
        font-size: 132px;
        line-height: 0.95;
        letter-spacing: 1.32px;
        white-space: nowrap;
      }

      .pc-fv-title-sub {
        font-size: 50px;
        line-height: 56px;
        letter-spacing: 0.5px;
      }

      .pc-fv-dots {
        position: absolute;
        left: 50%;
        bottom: 60px;
        width: 52px;
        height: 12px;
        transform: translateX(-50%);
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
      }

      .pc-fv-dots .swiper-pagination-bullet {
        width: 12px;
        height: 12px;
        margin: 0 !important;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.6);
        opacity: 1;
      }

      .pc-fv-dots .swiper-pagination-bullet-active {
        background: #fff;
      }
/* ====================
   PC: Video
==================== */

.pc-section-video {
        width: 100%;
        padding: 0 100px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 50px;
      }

      .pc-video-logo-wrap {
        width: 100%;
        display: flex;
        justify-content: flex-start;
      }

      .pc-video-logo {
        position: relative;
        width: max-content;
        height: auto;
      }

      .pc-video-logo img {
        display: block;
        width: max-content;
        height: auto;
      }

      .pc-video-image-wrap {
        width: 1376px;
      }

      .pc-video-image {
        width: 1376px;
        height: 772.699463px;
        display: block;
      }
/* ====================
   PC: News and Goods
==================== */

.pc-section-news,
      .pc-section-goods {
        width: 100%;
        padding: 0 100px;
        display: flex;
        flex-direction: column;
        gap: 50px;
      }

      .pc-title-news,
      .pc-title-goods {
        position: relative;
        width: max-content;
        height: auto;
      }

      .pc-title-news img,
      .pc-title-goods img {
        display: block;
        width: max-content;
        height: auto;
      }

      

      .pc-news-wrap,
      .pc-goods-wrap {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 60px;
      }

      .pc-news-item {
        width: 1200px;
        border-bottom: 1px solid var(--ink);
        padding-bottom: 40px;
        display: flex;
        gap: 15px;
        align-items: flex-start;
      }

      .pc-news-content {
        flex: 1 0 0;
        display: flex;
        justify-content: center;
        gap: 100px;
        font-size: 25px;
        letter-spacing: 0.25px;
        line-height: 1;
      }

      .pc-news-content,
      .pc-news-content:visited,
      .pc-news-content:hover,
      .pc-news-content:focus,
      .pc-news-content:active {
        color: var(--ink);
        text-decoration: none;
      }

      .pc-news-arrow {
        width: 24px;
        height: 24px;
      }

      .pc-news-arrow-link {
        display: block;
        width: 24px;
        height: 24px;
        flex-shrink: 0;
      }

      .pc-news-meta {
        display: none;
      }

      .visually-hidden {
        position: absolute !important;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      .pc-goods-items {
        width: 1208px;
        display: flex;
        gap: 49px;
      }

      .pc-goods-card {
        width: 370px;
        display: flex;
        flex-direction: column;
        gap: 15px;
        color: var(--ink);
        text-decoration: none;
      }

      .pc-goods-card:visited,
      .pc-goods-card:hover,
      .pc-goods-card:focus,
      .pc-goods-card:active {
        color: var(--ink);
      }

      .pc-goods-image {
        width: 370px;
        height: 418px;
        object-fit: cover;
      }

      .pc-goods-text {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 10px;
        text-align: center;
      }

      .pc-goods-name {
        font-size: 15px;
        letter-spacing: 0.12px;
      }

      .pc-goods-price {
        font-size: 15px;
        letter-spacing: 0.1px;
      }
/* ====================
   PC: Profile
==================== */

.pc-section-profile {
        width: 100%;
        padding: 0 100px;
        display: flex;
        flex-direction: column;
        gap: 66px;
        align-items: center;
      }

      .pc-title-profile-wrap {
        width: 100%;
      }

      .pc-title-profile {
        position: relative;
        width: max-content;
        height: auto;
      }

      .pc-title-profile img {
        display: block;
        width: max-content;
        height: auto;
      }


      .pc-profile-wrap {
        width: 1050px;
        display: flex;
        flex-direction: column;
        gap: 79px;
      }

      .pc-profile-top-wrap {
        position: relative;
        width: 100%;
        overflow: hidden;
      }

      .pc-profile-top {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .pc-cheers {
        position: absolute;
        right: 0px;
        bottom: 182px;
        width: 330px;
        height: 270px;
        pointer-events: none;
        z-index: 3;
      }

      .pc-cheers-glass {
        position: absolute;
        bottom: 0;
        width: 164px;
        height: 252px;
        object-fit: contain;
        transform-origin: 50% 86%;
        will-change: transform;
      }

      .pc-cheers-glass-left {
        left: 4px;
        animation: pc-cheers-left 1.2s steps(8, end) infinite;
      }

      .pc-cheers-glass-right {
        right: 4px;
        animation: pc-cheers-right 1.2s steps(8, end) infinite;
      }

      @keyframes pc-cheers-left {
        0%, 15% {
          transform: translateX(0) rotate(-12deg);
        }
        33%, 42% {
          transform: translateX(10px) rotate(-8deg);
        }
        55%, 100% {
          transform: translateX(0) rotate(-12deg);
        }
      }

      @keyframes pc-cheers-right {
        0%, 15% {
          transform: translateX(0) rotate(12deg);
        }
        33%, 42% {
          transform: translateX(-10px) rotate(8deg);
        }
        55%, 100% {
          transform: translateX(0) rotate(12deg);
        }
      }

      .pc-profile-box {
        width: 100%;
        border: 1px solid var(--ink);
      }

      .pc-profile-head {
        display: flex;
        width: 100%;
      }

      .pc-profile-head-left {
        width: 30.8458%;
        height: 111px;
        border-right: 1px solid var(--ink);
        border-bottom: 1px solid var(--ink);
        display: flex;
        align-items: center;
        padding: 0 50px;
        font-size: 30px;
        letter-spacing: 0.3px;
      }

      .pc-profile-head-right {
        width: 69.1542%;
        height: 111px;
        border-bottom: 1px solid var(--ink);
        display: flex;
        align-items: center;
        padding: 0 50px;
        font-size: 42px;
        letter-spacing: 0.42px;
      }

      .pc-profile-head-right-logo {
        display: block;
        width: auto;
        height: 42px;
        max-width: 100%;
        object-fit: contain;
      }

      .pc-profile-body {
        width: 100%;
        padding: 90px 50px;
        display: flex;
        flex-direction: column;
        gap: 40px;
      }

      .pc-profile-en {
        min-height: 147px;
        font-size: 17px;
        letter-spacing: 0.2px;
        line-height: 25px;
      }

      .pc-profile-ja {
        min-height: 169px;
        font-size: 17px;
        letter-spacing: 0.2px;
        line-height: 30px;
      }

      .pc-profile-sns {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 15px;
      }

      .pc-profile-sns .w33 {
        width: 33px;
      }

      .pc-profile-bottom {
        width: 100%;
        height: auto;
        object-fit: cover;
      }

      .pc-profile-bottom-wrap {
        position: relative;
        width: 100%;
      }

      .pc-profile-bottom-illust {
        position: absolute;
        left: -58px;
        bottom: -28px;
        width: 268px;
        height: auto;
        transform-origin: 52% 58%;
        pointer-events: none;
        z-index: 2;
        will-change: transform;
        animation: pc-profile-bottom-tilt 1.2s steps(24, end) infinite;
      }

      @keyframes pc-profile-bottom-tilt {
        0% {
          transform: rotate(7deg);
        }
        30% {
          transform: rotate(20deg);
        }
        60% {
          transform: rotate(18deg);
        }
        100% {
          transform: rotate(3deg);
        }
      }
/* ====================
   PC: Contact
==================== */

.pc-section-contact {
        width: 100%;
        padding: 0 100px;
        display: flex;
        flex-direction: column;
        gap: 69px;
        align-items: center;
        margin-bottom: 300px;
      }

      .pc-title-contact-wrap {
        width: 100%;
      }

      .pc-title-contact {
        position: relative;
        width: max-content;
        height: auto;
      }

      .pc-title-contact img {
        display: block;
        width: max-content;
        height: auto;
      }


      .pc-contact-wrap {
        width: 1097px;
        display: flex;
        flex-direction: column;
        gap: 35px;
        font-size: 20px;
        letter-spacing: 0.2px;
      }

      .pc-contact-text {
        min-height: 55px;
        line-height: 30px;
      }

      .pc-contact-mail {
        display: flex;
        align-items: center;
        gap: 48px;
        font-family: "Abril Display", "Times New Roman", serif !important;
        font-weight: 400 !important;
      }

      .pc-contact-mail .underline {
        color: var(--ink);
        text-decoration: underline;
      }

      .pc-contact-mail .underline:visited,
      .pc-contact-mail .underline:hover,
      .pc-contact-mail .underline:focus,
      .pc-contact-mail .underline:active {
        color: var(--ink);
      }
/* ====================
   Responsive
==================== */

      @media (min-width: 1280px) {
        .layout-sp {
          display: none;
        }

        .layout-pc {
          display: block;
        }
      }

      @media (prefers-reduced-motion: reduce) {
        .sp-cheers-glass-left,
        .sp-cheers-glass-right,
        .sp-boyfriend-2,
        .sp-profile-boyfriend,
        .pc-cheers-glass-left,
        .pc-cheers-glass-right,
        .star-bubble-ready.is-bubble-rise {
          animation: none;
        }

        .star-bubble-ready {
          opacity: var(--bubble-opacity, 1);
          margin-top: 0;
        }

        .sp-boyfriend-2,
        .sp-profile-boyfriend {
          transform: none;
        }

        .sp-cheers-glass-left {
          transform: translateX(5px) rotate(-8deg);
        }

        .sp-cheers-glass-right {
          transform: translateX(-5px) rotate(8deg);
        }

        .pc-cheers-glass-left {
          transform: translateX(10px) rotate(-8deg);
        }

        .pc-cheers-glass-right {
          transform: translateX(-10px) rotate(8deg);
        }
      }

/* ====================
   Archive: News
==================== */

.archive-news-page {
  min-height: 100vh;
  padding: 110px 0 120px;
  background: linear-gradient(to bottom, var(--bg-top), var(--bg-bottom));
}

.archive-news-sp {
  width: 393px;
  margin: 0 auto;
}

.archive-news-sp .sp-section-news {
  margin: 0 auto;
}

.archive-news-sp .sp-title-news {
}

.archive-news-pc {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding: 140px 0 180px;
}

.archive-news-empty {
  font-size: 12px;
  line-height: 1.6;
}

.archive-news-pagination {
  margin-top: 8px;
  width: 100%;
  color: var(--ink);
}

.archive-news-pagination .page-numbers {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  font-family: "Abril Display", "Hiragino Sans", "Noto Sans JP", sans-serif;
  font-weight: 400;
}

.archive-news-pagination .page-numbers li {
  list-style: none;
}

.archive-news-pagination .page-numbers a,
.archive-news-pagination .page-numbers span {
  display: inline-block;
  padding: 0;
  border: 0;
  color: var(--ink);
  text-decoration: none;
  font-size: 10px;
  letter-spacing: 0.1px;
  line-height: 1;
}

.archive-news-pagination .page-numbers .current {
  font-weight: 400;
}

.archive-news-pagination .page-numbers .dots {
  font-size: 0;
  letter-spacing: 0;
}

.archive-news-pagination .page-numbers .dots::before {
  content: "•••";
  font-size: 10px;
  letter-spacing: 0.1px;
}

.archive-news-pagination .page-numbers .prev,
.archive-news-pagination .page-numbers .next {
  display: none;
}

@media (min-width: 1280px) {
  .archive-news-page {
    padding: 120px 0 180px;
  }

  .archive-news-pc .pc-title-news img {
    width: 100%;
    height: 100%;
    max-width: none;
  }

  .archive-news-pc .archive-news-empty {
    font-size: 20px;
  }

  .archive-news-pagination {
    margin-top: 20px;
  }

  .archive-news-pagination .page-numbers a,
  .archive-news-pagination .page-numbers span {
    font-size: 10px;
    letter-spacing: 0.1px;
  }

  .archive-news-pagination--pc .page-numbers a,
  .archive-news-pagination--pc .page-numbers span {
    font-size: 17px;
  }

  .archive-news-pagination .page-numbers .prev,
  .archive-news-pagination .page-numbers .next {
    display: none;
  }
}

/* ====================
   Footer
==================== */

.site-footer {
  padding-bottom: 24px;
  color: var(--ink);
}

.site-footer a {
  color: var(--ink);
  text-decoration: none;
}

.site-footer a:visited,
.site-footer a:hover,
.site-footer a:focus,
.site-footer a:active {
  color: var(--ink);
}

.site-footer .layout-sp,
.site-footer .layout-pc {
  width: 100%;
}

.site-footer-sp {
  width: 393px;
  margin: 0 auto;
}

.site-footer-sp-inner {
  width: 290px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 53px;
}

.site-footer-links-sp {
  width: 290px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 35px;
}

.site-footer-main-nav-sp {
  width: 290px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  font-family: "Abril Display", "Times New Roman", serif;
  font-size: 10px;
  letter-spacing: 0.1px;
  line-height: 11px;
}

.site-footer-sub-nav-sp {
  display: flex;
  align-items: center;
  gap: 33px;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  font-size: 10px;
  letter-spacing: 0.1px;
  line-height: 15px;
}

.site-footer-main-nav-sp + .site-footer-sub-nav-sp {
  margin-top: -17.5px;
}

.site-footer-sns {
  display: flex;
  align-items: center;
  gap: 10px;
}

.site-footer-sns-item {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.site-footer-sns-item img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.site-footer-sns-item-20 {
  width: 30px;
}

.site-footer-sns-item-18 {
  width: 30px;
}

.site-footer-sns-item-19 {
  width: 30px;
}

.site-footer-logo-sp {
  width: auto;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.site-footer-logo-sp img {
  width: auto;
  height: 100%;
  object-fit: contain;
}

.site-footer-pc {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}

.site-footer-pc-inner {
  width: 672px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 60px;
}

.site-footer-links-pc {
  width: 672px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 35px;
}

.site-footer-link-row-pc {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  white-space: nowrap;
}

.site-footer-main-link-pc {
  font-family: "Abril Display", "Times New Roman", serif;
  font-size: 18px;
  letter-spacing: 0.18px;
  line-height: 20px;
}

.site-footer-sub-link-pc {
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  letter-spacing: 0.1px;
  line-height: 15px;
}

.site-footer-logo-pc {
  width: auto;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.site-footer-logo-pc img {
  width: auto;
  height: 100%;
  object-fit: contain;
}

@media (min-width: 1280px) {
  .site-footer {
    padding-bottom: 0;
  }
}

/* ====================
   Single: News
==================== */

.single-news-page {
  min-height: 100vh;
  width: 100%;
}

.single-news-article {
  color: var(--ink);
  width: 300px;
  margin: 0 auto 90px;
  padding-top: 160px;
}

.single-news-head {
  width: 100%;
}

.single-news-date {
  display: block;
  width: 100%;
  font-family: "Abril Display", "Times New Roman", serif;
  font-weight: 400;
}

.single-news-body {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.single-news-title {
  width: 100%;
  margin: 0;
  border-bottom: 0.5px solid var(--ink);
  font-family: "Abril Display", "Times New Roman", serif;
  font-weight: 400;
}

.single-news-lead {
  width: 100%;
  margin: 0;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  font-weight: 300;
}

.single-news-thumb {
  width: 100%;
  margin: 0;
  aspect-ratio: 302 / 169;
  overflow: hidden;
}

.single-news-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-news-content {
  width: 100%;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  font-weight: 300;
}

.single-news-content > *:first-child {
  margin-top: 0;
}

.single-news-content > *:last-child {
  margin-bottom: 0;
}

.single-news-content p {
  margin: 0 0 0.65em;
}

.single-news-content img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.single-news-article .single-news-head {
  margin-bottom: 15px;
}

.single-news-article .single-news-date {
  font-size: 12px;
  letter-spacing: 0.12px;
  line-height: 12px;
}

.single-news-article .single-news-body {
  gap: 15px;
}

.single-news-article .single-news-title {
  padding-bottom: 1px;
  font-size: 17px;
  letter-spacing: 0.17px;
  line-height: 1;
}

.single-news-article .single-news-lead {
  font-size: 10px;
  letter-spacing: 0.1px;
  line-height: 15px;
}

.single-news-article .single-news-content {
  font-size: 10px;
  letter-spacing: 0.1px;
  line-height: 18px;
}

@media (min-width: 1280px) {
  .single-news-article {
    width: 1000px;
    margin: 0 auto 300px;
    padding-top: 180px;
  }

  .single-news-article .single-news-thumb {
    width: 1000px;
    max-width: 100%;
    margin: 0 auto;
  }

  .single-news-article .single-news-thumb img {
    width: 100%;
  }

  .single-news-article .single-news-head {
    margin-bottom: 35px;
  }

  .single-news-article .single-news-date {
    font-size: 17px;
    letter-spacing: 0.32px;
    line-height: 1.2;
  }

  .single-news-article .single-news-body {
    gap: 35px;
  }

  .single-news-article .single-news-title {
    padding-bottom: 4px;
    font-size: 42px;
    letter-spacing: 0.42px;
    line-height: 1;
  }

  .single-news-article .single-news-lead {
    font-size: 20px;
    letter-spacing: 0.2px;
    line-height: 1.6;
  }

  .single-news-article .single-news-content {
    font-size: 1.3rem;
    letter-spacing: 0.2px;
    line-height: 1.8;
  }
}

/* ====================
   Page: Text Only
==================== */

.text-only-page {
  min-height: 100vh;
  width: 100%;
  padding: 90px 0 90px;
}

.text-only-inner {
  width: 307.499px;
  max-width: calc(100vw - 85.501px);
  margin: 0 auto;
  color: var(--ink);
}

.text-only-title {
  margin: 0 0 18px;
  font-family: var(--font-jp);
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.12px;
  line-height: 1.5;
}

.text-only-content {
  display: flex;
  flex-direction: column;
  gap: 30px;
  font-family: var(--font-jp);
  font-weight: 300;
  font-size: 12px;
  letter-spacing: 0.12px;
  line-height: 1.5;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.text-only-content > *:first-child {
  margin-top: 0;
}

.text-only-content > *:last-child {
  margin-bottom: 0;
}

.text-only-content p {
  margin: 0;
}

.text-only-content a {
  color: var(--ink);
  text-decoration: underline;
}

.text-only-content a:visited,
.text-only-content a:hover,
.text-only-content a:focus,
.text-only-content a:active {
  color: var(--ink);
}

.text-only-content ul,
.text-only-content ol {
  margin: 0;
  padding-left: 1.2em;
}

.text-only-content img {
  width: auto;
  max-width: 100%;
  height: auto;
}

@media (min-width: 1280px) {
  .text-only-page {
    padding: 90px 0 120px;
  }

  .text-only-inner {
    width: min(1000px, calc(100% - 240px));
    max-width: none;
  }

  .text-only-title {
    margin-bottom: 40px;
    font-size: 24px;
    letter-spacing: 0.24px;
    line-height: 1.4;
  }

  .text-only-content {
    font-size: 16px;
    letter-spacing: 0.16px;
    line-height: 1.9;
  }
}
