
    .visual .img {
      background-image: var(--lp-hero-bg, none);
    }

    .nav-visual-anchor {
      display: none;
    }

    .visual .img iframe {
      border: 0;
      height: 100%;
      inset: 0;
      pointer-events: none;
      touch-action: pan-y;
      position: absolute;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) {
      --lp-accent: #4a4dae;
      background: #fff;
      font-family: "Plus Jakarta Sans", "Noto Sans JP", sans-serif;
      overflow-x: clip;
      transition: background-color 220ms ease;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi).contents_loaded {
      overflow-x: clip;
    }

    body.nav-on-page :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) {
      background-color: #fff;
    }

    body.nav-over-visual :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) {
      background-color: #e9ebec;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .navi::before {
      background: none;
      opacity: 0;
      width: 200%;
    }

    body.nav-on-visual :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .navi::before,
    body.nav-over-visual :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .navi::before {
      background: linear-gradient(to right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
      opacity: 1;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail {
      max-width: none;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual {
      background-color: var(--lp-accent);
      min-height: 660px;
      overflow: visible;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual.lp-main-visual {
      margin-bottom: 0;
    }

    /* .hero-slideshow（複数枚の切り替えビジュアル）を持つページだけ、その下に隠れる
       静的背景（--lp-hero-bg由来）を消す。hibarings のように .hero-slideshow を
       持たず --lp-hero-bg の静的背景だけでメインビジュアルを表示しているページを
       ここで巻き込んで真っ白にしてしまわないよう :has() で限定している。 */
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual.lp-main-visual:has(.hero-slideshow) .img {
      background-image: none;
    }

    /* デザイン詳細ページのヒーローロゴ列（.lp-hero-logos）は、ビジュアルトピックスカードが
       表示されている状態でのrightをブレークポイントに関係なく同じ式に統一している
       （767px以下のメディアクエリを個別に持つ必要がない）。ページごとの個別 <style> 側にあった
       right指定はここに一本化する目的で削除済み。yamazumiのみ design-detail.css を
       読み込まない独立実装のため、同じ式をページ側にも直接反映している。
       トピックスカードが無い場合は下の no-hero-topic ルールが優先される。 */
    .lp-main-visual .lp-hero-logos {
      right: calc(20px + (4vw + 4vh));
    }

    /* .lp-hero-topic（最新トピックカード）が0件でJSにより削除された場合、
       design-detail.js が .visual.lp-main-visual に no-hero-topic を付与する。
       その場合はロゴをトピックカード用に空けていたスペースへ寄せる。
       右余白はロゴの top 側の余白（clamp(24px, 5vw, 72px)）と揃えている。
       各ページの個別 <style> 側で right を指定していても、このルールは
       :is()内がID相当のためより高い詳細度を持ち、確実に上書きされる。 */
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual.lp-main-visual.no-hero-topic .lp-hero-logos {
      right: clamp(24px, 5vw, 72px);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .hero-slideshow {
      position: absolute;
      inset: 0;
      overflow: hidden;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .hero-slide {
      position: absolute;
      inset: 0;
      background-position: center;
      background-size: cover;
      opacity: 0;
      transform: scale(1);
      transition: opacity 1s cubic-bezier(0.45, 0, 0.55, 1);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .hero-slide.is-active {
      opacity: 1;
      animation: lpHeroZoom 5s cubic-bezier(0.45, 0, 0.55, 1) forwards;
    }

    @keyframes lpHeroZoom {
      from {
        transform: scale(1.12);
      }

      to {
        transform: scale(1);
      }
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav {
      box-sizing: border-box;
      color: #4a4dae;
      margin: -29px 10% 0 25%;
      padding: 14px clamp(16px, 3vw, 32px);
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(74, 77, 174, 0.18);
      border-radius: 12px;
      width: 65%;
      z-index: 20;
      background-color:#FFF;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav::after {
      content: "";
      position: absolute;
      top: -1px;
      right: -2px;
      bottom: -1px;
      width: min(26%, 124px);
      background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #fff 78%);
      border-radius: 0 12px 12px 0;
      pointer-events: none;
      z-index: 2;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav__track {
      align-items: center;
      display: flex;
      flex-wrap: nowrap;
      gap: clamp(16px, 2.2vw, 34px);
      min-width: 0;
      overflow-x: auto;
      scrollbar-width: none;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav__track::-webkit-scrollbar {
      display: none;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav a {
      align-items: center;
      color: #4a4dae;
      display: inline-flex;
      flex: 0 0 auto;
      font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
      font-size: 0.86rem;
      font-weight: 600;
      justify-content: center;
      letter-spacing: 0;
      min-height: 28px;
      position: relative;
      text-decoration: none;
      white-space: nowrap;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav a span {
      display: inline-block;
      position: relative;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav a span::after {
      background-color: currentColor;
      bottom: -2px;
      content: "";
      height: 2px;
      left: 0;
      opacity: 0;
      position: absolute;
      right: 0;
      transform: scaleX(0.4);
      transition: opacity 180ms ease, transform 180ms ease;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav a:hover span::after {
      opacity: 1;
      transform: scaleX(1);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav__separator {
      display: none;
      flex: 0 0 auto;
      height: 28px;
      pointer-events: none;
      width: 1px;
    }

    /* メインビジュアル右上の「ヒーロートピックスカード」（.lp-hero-topic）の
       内部レイアウト・「予定」バッジの配置は、ページIDに依存しない共通
       コンポーネントとして cmn/css/base.css 側に一本化した。今後ページが
       増えても、.lp-hero-topic 要素さえ置けば自動的に同じ見た目になる
       （このファイルにページIDを追記する必要はない）。 */

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual::after {
      background: linear-gradient(to right, rgba(var(--lp-hero-tint-rgb, 35, 20, 20), var(--lp-hero-tint-alpha, 0.35)) 0%, rgba(var(--lp-hero-tint-rgb, 35, 20, 20), 0) 62%);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual .img {
      overflow: hidden;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual .img::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(var(--lp-hero-tint-rgb, 35, 20, 20), var(--lp-hero-tint-alpha, 0.35)) 0%, rgba(var(--lp-hero-tint-rgb, 35, 20, 20), 0) 58%);
      pointer-events: none;
      z-index: 2;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual .title .txt-anm {
      color: #fff;
      text-shadow: none;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual .title .txt-anm.lp-hero-date {
      margin-bottom: 28px;
    }
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual .arch
    {
      display:none;

    }
    .lp-actions,
    .lp-tag-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .lp-actions {
      margin-top: 30px;
    }

    .lp-actions .boxLink {
      background: #fff;
      min-width: 190px;
    }

    .lp-actions .boxLink.secondary {
      background: rgba(255, 255, 255, 0.18);
      border-color: rgba(255, 255, 255, 0.65);
      color: #fff;
    }

    .lp-actions .boxLink.secondary .boxLink__arrow {
      border-color: #fff;
    }
    .boxLink:hover {
      background-color: rgb(74, 77, 174);
      color: #FFF;
    }
    .lp-section {
      padding-top: 0;
    }

    .design-detail-page > .visual:not(.map):not(.concept) + .detail.lp-section,
    .design-detail-page > .lp-anchor-nav + .detail.lp-section {
      padding-top: 5%;
    }

    .topics-detail-page > .visual:not(.map):not(.concept) + .detail.lp-section {
      padding-top: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) {
      --lp-lower-section-gap: clamp(56px, 8vw, 110px);
      --lp-lower-content-gap: clamp(28px, 3.25vw, 46px);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-lower-section {
      padding-top: var(--lp-lower-section-gap);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-lower-section-title {
      padding-top: var(--lp-lower-section-gap);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) #matchProducts-heading,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) #matchProducts + .detail.lp-section {
      padding-top: var(--lp-lower-section-gap);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-lower-section-title + .section_topics {
      padding-top: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .section_topics.lp-lower-section-body {
      margin-bottom: var(--lp-lower-content-gap);
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .section_shop.lp-lower-section-body {
      height: auto;
      margin-bottom: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) #matchProducts:has(.lp-link-list) {
      height: auto;
      margin-bottom: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual.map.lp-lower-section {
      margin-top: var(--lp-lower-section-gap);
      padding-top: 0;
    }

    .detail .item.wide .lp-photo-grid {
      background: transparent;
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      grid-template-rows: minmax(0, 1.35fr) minmax(0, 1fr);
      min-height: 420px;
    }

    .lp-photo-grid .photo1 {
      grid-column: 1 / -1;
    }

    .lp-photo-grid .lp-photo {
      background-color: #f7f7fb;
      background-position: center;
      background-size: cover;
      border-radius: 10px;
      min-height: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block {
      align-items: stretch;
      flex-direction: column;
      gap: 36px;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .txt,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .img {
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .txt {
      order: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .lp-photo-grid {
      grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
      grid-template-rows: repeat(2, minmax(0, 1fr));
      min-height: clamp(360px, 45vw, 620px);
      order: 1;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .lp-photo-grid .photo1 {
      grid-column: 1;
      grid-row: 1 / -1;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .lp-photo-grid .photo2 {
      grid-column: 2;
      grid-row: 1;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.lp-material-block .lp-photo-grid .photo3 {
      grid-column: 2;
      grid-row: 2;
    }

    .lp-video {
      overflow: hidden;
      position: relative;
    }

    .lp-video video {
      display: block;
      height: 100%;
      inset: 0;
      object-fit: cover;
      opacity: 0;
      position: absolute;
      transition: opacity 520ms ease;
      width: 100%;
    }

    .lp-video.is-video-loaded video {
      opacity: 1;
    }

    .lp-gallery-section {
      box-sizing: border-box;
      overflow: hidden;
      padding-bottom: 2%;
      padding-left: 0;
      padding-right: 0;
      width: 100%;
      max-width: none;
    }

    .lp-gallery-section .titleHead {
      box-sizing: border-box;
      padding-left: 25%;
      padding-right: 5%;
      width: 100%;
    }

    .lp-gallery-stack {
      display: grid;
      gap: 16px;
      width: 100%;
    }

    .lp-gallery-swiper {
      cursor: grab;
      left: auto;
      margin-left: 0;
      margin-right: 0;
      overflow: hidden;
      position: relative;
      width: 100%;
    }

    .lp-gallery-swiper.is-dragging {
      cursor: grabbing;
    }

    .lp-gallery-swiper .swiper-wrapper {
      display: flex;
      width: max-content;
      will-change: transform;
    }

    .lp-gallery-swiper .swiper-slide {
      flex: 0 0 auto;
      height: clamp(90px, 12.5vw, 180px);
      position: relative;
      width: clamp(110px, 17vw, 240px);
    }

    .lp-gallery-pic {
      background-color: #fafafa;
      background-position: center;
      background-size: cover;
      border-radius: 10px;
      height: 100%;
      overflow: hidden;
      position: relative;
      width: 100%;
    }

    .lp-gallery-pic[data-debug-index]::before {
      content: none;
    }

    body.show-gallery-debug-numbers .lp-gallery-pic[data-debug-index]::before {
      align-items: center;
      background: rgba(20, 20, 30, 0.78);
      border-radius: 4px;
      color: #fff;
      content: attr(data-debug-index);
      display: flex;
      font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
      font-size: 12px;
      font-weight: 700;
      justify-content: center;
      left: 6px;
      line-height: 1;
      min-width: 20px;
      padding: 5px 7px;
      pointer-events: none;
      position: absolute;
      top: 6px;
      z-index: 5;
    }

    .lp-piece-combo {
      display: grid;
      gap: 28px;

    }

    .lp-piece-images,
    .lp-piece-texts {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      width: 100%;
    }

    .lp-piece-images {
      gap: 28px;
    }

    .lp-piece-texts {
      gap: 56px;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail.scroll.section_topics {
      /* base.css 側の `.detail.scroll.section_topics { margin-bottom: 50px; }` (詳細度 0,3,0) に
         確実に勝てるよう、実際の要素クラスと同じ詳細度 (0,4,0) まで揃えている。 */
      margin-bottom: 8%;
    }

    /* STORE&STUDIOセクション側にも独立した上余白を持たせることで、
       TOPICSセクションの有無（0件で非表示）に関わらず余白が破綻しないようにする。
       通常時はsection_topicsのmargin-bottomと相殺（マージン相殺）され見た目は変わらない。 */
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual.map {
      margin-top: 8%;
    }

    /* TOPICS: 17件以下は固定gap・共通幅のグリッド表示。
       18件以上はカルーセル(ヤマヅミと同じ .detail_scroll__wrap のドラッグスクロール)のまま。
       #matchTopics.topics-grid は関連トピックス件数に応じて JS が付与する。 */
    #matchTopics.topics-grid {
      box-sizing: content-box;
      height: auto;
      overflow: visible;
      padding: 0 5% 0 20%;
      width: 65%;
    }

    #matchTopics.topics-grid::after {
      display: none;
    }

    #matchTopics.topics-grid .detail_scroll__wrap {
      overflow: visible;
      width: 100%;
    }

    @media screen and (max-width: 414px) {
      #matchTopics.topics-grid {
        padding-left: 25%;
      }
    }

    #matchTopics.topics-grid .optionList {
      display: grid;
      gap: 16px;
      grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
      justify-content: start;
      margin-bottom: 0;
      margin-left: 0;
      margin-right: 0;
      width: 100%;
    }

    #matchTopics.topics-grid .optionList::after {
      content: none;
    }

    #matchTopics.topics-grid .optionList .optionList_item,
    #matchTopics.topics-grid .optionList .optionList_item.future,
    #matchTopics.topics-grid .optionList .optionList_item.days,
    #matchTopics.topics-grid .optionList .optionList_item.days.future,
    #matchTopics.topics-grid .optionList .optionList_item.topics-more {
      box-sizing: border-box;
      width: 100%;
      min-width: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-members {
      display: grid;
      gap: 14px;
      grid-template-columns: minmax(0, 1fr);
      padding-top: 1%;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member {
      align-items: stretch;
      background: #fff;
      border: 1px solid rgba(74, 77, 174, 0.3);
      border-radius: 10px;
      color: #4a4dae;
      display: grid;
      gap: 24px;
      grid-template-columns: clamp(100px, 16vw, 180px) minmax(0, 1fr);
      min-height: clamp(150px, 14vw, 210px);
      padding: 16px;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member .portrait {
      background-color: rgba(255, 255, 255, 0.8);
      background-position: center;
      background-size: cover;
      border-radius: 8px;
      height: 100%;
      min-height: 118px;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member.member-tamaki .portrait {
      background-image: url("../../../cmn/img/member/thumbnail/tamaki_thumb.jpg");
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member.member-takeshi .portrait {
      background-image: url("../../../cmn/img/member/thumbnail/yampuu_thumb.jpg");
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member .profile {
      align-content: center;
      display: grid;
      gap: 6px;
      min-width: 0;
      padding: 10px 6px 10px 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member .role {
      font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.4;
      opacity: 0.72;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member h3 {
      font-size: clamp(18px, 1.6vw, 24px);
      font-weight: 700;
      line-height: 1.28;
      margin: 0;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member p {
      font-size: clamp(13px, 1.05vw, 15px);
      font-weight: 500;
      line-height: 1.55;
      margin: 0;
    }

    .lp-piece-image {
      aspect-ratio: 4 / 3;
      border-radius: 10px;
      min-height: 260px;
      width: 100%;
    }

    .lp-piece-panel {
      display: flex;
      flex-direction: column;
      gap: 28px;
    }

    .lp-piece-panel h2 {
      color: #4a4dae;
      font-size: 200%;
      line-height: 1.2;
      margin: 0;
      padding: 0;
    }

    .lazy-bg {
      background-color: #fafafa;
      overflow: hidden;
      opacity: 1;
      position: relative;
    }

    .lazy-bg::after {
      background-image: var(--lazy-bg-image);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      content: "";
      inset: 0;
      opacity: 0;
      pointer-events: none;
      position: absolute;
      transition: opacity 520ms ease;
    }

    .lazy-bg.is-bg-loaded::after {
      opacity: 1;
    }

    .lazy-bg.lp-contain-gray {
      background-color: #e9ebec;
    }

    .lazy-bg.lp-contain-gray::after {
      background-size: contain;
    }

    .lp-copy {
      display: grid;
      gap: 24px;
      grid-template-columns: 1fr;
      line-height: 2;
    }

    .lp-copy p {
      margin: 0;
    }

    .lp-copy h3,
    .lp-card h3 {
      font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
      font-size: 120%;
      letter-spacing: 0;
      margin: 0 0 12px;
    }

    .lp-en {
      color: inherit;
    }

    .lp-info {
      border-bottom: solid 1px rgba(74, 77, 174, 0.22);
      width: 100%;
    }

    .lp-info-row {
      align-items: flex-start;
      border-top: solid 1px rgba(74, 77, 174, 0.22);
      display: grid;
      gap: 18px;
      grid-template-columns: 28% 1fr;
      padding: 18px 0;
    }

    .lp-info-row dt {
      font-size: 80%;
      font-weight: 800;
      margin: 0;
    }

    .lp-info-row dd {
      font-size: 88%;
      line-height: 1.7;
      margin: 0;
    }

    .lp-cards {
      display: grid;
      gap: 16px;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      width: 100%;
    }

    .lp-card {
      background: #f2f3ff;
      border: 1px solid rgba(74, 77, 174, 0.16);
      border-radius: 8px;
      padding: 22px;
    }

    .lp-card .num {
      color: #4a4dae;
      display: block;
      font-size: 210%;
      font-weight: 700;
      line-height: 1;
      margin-bottom: 14px;
    }

    .lp-card p {
      font-size: 84%;
      line-height: 1.8;
      margin: 0;
      text-align: left;
    }

    .lp-stroke-divider {
      align-items: center;
      display: flex;
      justify-content: center;
      padding-bottom: 2%;
      padding-top: 8%;
    }

    .lp-stroke-divider svg {
      display: block;
      height: auto;
      width: clamp(21px, 10vw, 100px);
    }

    .lp-stroke-divider path {
      stroke-dasharray: 1;
      stroke-dashoffset: 1;
      transition: stroke-dashoffset 1200ms cubic-bezier(0.65, 0, 0.35, 1);
    }

    .lp-stroke-divider.is-visible path {
      stroke-dashoffset: 0;
    }

    .lp-map {
      border: 0;
      border-radius: 10px;
      filter: grayscale(1) ;
      min-height: 360px;
      width: 60%;
    }

    .lp-note {
      border-left: 3px solid rgba(74, 77, 174, 0.35);
      color: rgba(74, 77, 174, 0.78);
      font-size: 78%;
      line-height: 1.8;
      padding-left: 18px;
      text-align: left;
    }

    .lp-tag {
      background: #f7f7fb;
      border-radius: 999px;
      display: inline-flex;
      font-size: 78%;
      font-weight: 700;
      padding: 8px 14px;
    }

    .lp-small-title {
      font-size: 30%;
    }
    .lp-small-title.margin-left {
      margin:auto 0;
      margin-left:1em;
    }

    .language-toggle {
      align-items: center;
      background: rgba(255, 255, 255, 0.92);
      border-radius: 8px;
      box-shadow: 0 8px 24px rgba(31, 35, 94, 0.12);
      bottom: calc(1vw + 1vh);
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      gap: 4px;
      padding: 0;
      position: fixed;
      right: calc(1vw + 1vh);
      width: 60px;
      z-index: 20000;
    }

    .language-toggle button {
      appearance: none;
      background: transparent;
      border: 0;
      border-radius: 999px;
      color: #4a4dae;
      cursor: pointer;
      font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0;
      min-width: 0;
      padding: 18px 0 16px;
      width: 100%;
    }

    .language-toggle button.is-active {
      background: #4a4dae;
      border-radius: 8px;
      color: #fff;
    }

    body.lang-en [data-lang="ja"],
    body.lang-ja [data-lang="en"] {
      display: none !important;
    }

    body.lang-en,
    body.lang-en .visual .title .txt-anm,
    body.lang-en .detail .titleHead,
    body.lang-en .detail .item .txt h2,
    body.lang-en .lp-piece-panel h2,
    body.lang-en .boxLink,
    body.lang-en .lp-info-row dt {
      font-family: "Plus Jakarta Sans", "Noto Sans JP", sans-serif;
      letter-spacing: 0;
    }

    body.lang-en .lp-card .num {
      font-family: "Plus Jakarta Sans", sans-serif;
      font-weight: 400;
    }

    body.lang-en .lp-copy,
    body.lang-en .lp-info-row dd,
    body.lang-en .lp-card p,
    body.lang-en .lp-note {
      font-family: "Plus Jakarta Sans", "Noto Sans JP", sans-serif;
    }

    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .titleHead,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item .txt h2,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-piece-panel h2,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-copy,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-copy p,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-info-row dt,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-info-row dd,
    body.lang-en :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-card p {
      text-align: left;
    }

    body.lang-ja .visual .title .txt-anm,
    body.lang-ja .detail .titleHead,
    body.lang-ja .detail .item .txt h2,
    body.lang-ja .lp-piece-panel h2,
    body.lang-ja .titleHead .subTitle {
      font-family: "Plus Jakarta Sans", "Noto Sans JP", sans-serif;
      letter-spacing: 0;
    }

    body.lang-ja :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) {
      font-family: "Plus Jakarta Sans", "Noto Sans JP", sans-serif;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .navi,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .navi .navi__list a {
      font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
      font-weight: 600;
    }

    body.lang-ja .lp-tag {
      padding: 14px 20px 10px;
    }

    /* ---- LINK section: vertical stacked cards (no carousel), same feel as the members list ---- */
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list {
      display: grid;
      gap: 14px;
      grid-template-columns: minmax(0, 1fr);
      margin-bottom: 0;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item {
      align-items: center;
      background-color: #fff;
      border: 1px solid rgba(74, 77, 174, 0.3);
      border-radius: 10px;
      color: #4a4dae;
      display: grid !important;
      gap: 20px;
      grid-template-columns: clamp(90px, 14vw, 160px) minmax(0, 1fr) auto;
      height: auto;
      margin: 0;
      min-height: clamp(110px, 11vw, 150px);
      min-width: 0;
      padding: 16px;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .img {
      border-radius: 8px;
      height: 100%;
      min-height: 90px;
      width: 100%;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .txt {
      display: block;
      height: auto;
      text-align: left;
      width: auto;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .txt .title,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .txt .subTitle {
      display: block;
      height: auto;
      max-width: none;
      text-align: left;
      text-orientation: mixed;
      width: auto;
      writing-mode: horizontal-tb;
      -webkit-writing-mode: horizontal-tb;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .txt .title {
      font-size: clamp(16px, 1.6vw, 20px);
      font-weight: 700;
      line-height: 1.35;
      margin-bottom: 6px;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .txt .subTitle {
      font-size: 13px;
      opacity: 0.75;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .date {
      align-items: flex-end;
      flex-direction: column;
      margin: 0;
      padding: 0;
      text-align: right;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .date .year,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .date .monthdate {
      writing-mode: horizontal-tb;
      -webkit-writing-mode: horizontal-tb;
    }

    @media screen and (max-width: 767px) {
      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item {
        grid-template-columns: 96px minmax(0, 1fr);
        padding: 14px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item .date {
        grid-column: 1 / -1;
        align-items: flex-start;
        flex-direction: row;
        gap: 8px;
      }
    }

    /* Hover: keep text/background colors as-is, only darken the outline */
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover {
      background-color: #fff;
      border-color: #4a4dae;
      color: #4a4dae;
    }

    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover .txt,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover .txt .title,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover .txt .subTitle,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover .date,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover .date .year,
    :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-link-list .optionList_item:hover .date .monthdate {
      color: #4a4dae;
    }

    @media screen and (max-width: 900px) {
      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .visual {
        min-height: 580px;
      }

      .lp-info-row,
      .lp-cards {
        grid-template-columns: 1fr;
      }

      .lp-map {
        min-height: 300px;
        width: 100%;
      }

      .lp-gallery-swiper .swiper-slide {
        height: 110px;
        width: 150px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item {
        flex-wrap: wrap;
        justify-content: center;
        min-height: 200px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item .img {
        min-height: 200px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item .txt {
        font-size: 0.9rem;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.wide {
        justify-content: center;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.wide .img,
      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.wide.txtNa .img {
        height: auto;
        min-height: 300px;
        order: 1;
        width: 100%;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.wide .txt,
      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .detail .item.wide.txtNa .txt {
        order: 0;
        width: 100%;
      }

      .lp-piece-images,
      .lp-piece-texts {
        gap: 28px;
        grid-template-columns: 1fr;
      }

      .lp-piece-panel h2 {
        font-size: 140%;
      }
    }

    @media screen and (max-width: 767px) {
      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) {
        --lp-lower-content-gap: 52px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-anchor-nav {
        margin-top: -29px;
        margin-left: 25vw;
        margin-right: auto;
        width: calc(100% - 35vw);
      }

      .lp-actions .boxLink {
        width: 100%;
      }

      .lp-piece-images,
      .lp-piece-texts {
        gap: 24px;
      }

      .lp-piece-image {
        min-height: 220px;
      }

      .lp-gallery-swiper .swiper-slide {
        height: 90px;
        width: 125px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-members {
        grid-template-columns: 1fr;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member {
        gap: 14px;
        grid-template-columns: 100px minmax(0, 1fr);
        min-height: 150px;
        padding: 18px 16px;
      }

      :is(#page-hibarings, #page-ayabe, #page-furusato, #page-kabars, #page-kisocycle, #page-liandbagel, #page-lisur, #page-mobile, #page-lifecyclemarket, #page-poh, #page-riverseaground, #page-solg, #page-taigendo, #page-takaoka, #page-tsukigase, #page-uraoni, #page-dots, #page-airshodou, #page-botanico, #page-pyconjp, #page-foobaz, #page-riverdohow, #page-itsumoya, #page-kamihachi) .lp-related-member .portrait {
        min-height: 114px;
      }

    }

    /* トピックス記事ページ（topics/pages/<id>/）のうち、写真点数が多く
       デザイン詳細ページ的なレイアウト（複数画像のヒーロースライドショー、
       写真グリッド付きセクション分割）に合わせたものだけを対象にするブロック。
       トピックス側の個別仕様（ナビの「トピックス」ハイライト、タイトル上の
       年号・日付表示）はそのまま維持し、ここではヒーロースライドショーの
       表示と、写真つきビジュアル上でのナビのグラデーション演出のみを
       デザイン詳細ページと揃えている。id="page-topics-<id>" というユニークな
       コンテナIDを持つページだけがこの :is() リストに追加される想定。
       ID に含まれる "." は CSS セレクタで解釈できないため、フォルダ名/CSV上の
       id は "20260715yamazumi.hibarings" のままでも、ここでは "-" に置換した
       "20260715yamazumi-hibarings" を使う（生成スクリプト側のsafe_id()と対応）。
       （既存の #page-topics-detail 共通IDのページには影響しない。この
       ブロックはトップレベル、つまり全ビューポート幅で適用される） */
    :is(#page-topics-20260809kouhoulab, #page-topics-20260806poh, #page-topics-20260717poh, #page-topics-20260715yamazumi-hibarings, #page-topics-20260418gooddesign, #page-topics-20260621soluce, #page-topics-20260801airshodou-kiro, #page-topics-20260806sukima-catmobile, #page-topics-20260831sukima-lect) .navi::before {
      background: none;
      opacity: 0;
      width: 200%;
    }

    body.nav-on-visual :is(#page-topics-20260809kouhoulab, #page-topics-20260806poh, #page-topics-20260717poh, #page-topics-20260715yamazumi-hibarings, #page-topics-20260418gooddesign, #page-topics-20260621soluce, #page-topics-20260801airshodou-kiro, #page-topics-20260806sukima-catmobile, #page-topics-20260831sukima-lect) .navi::before,
    body.nav-over-visual :is(#page-topics-20260809kouhoulab, #page-topics-20260806poh, #page-topics-20260717poh, #page-topics-20260715yamazumi-hibarings, #page-topics-20260418gooddesign, #page-topics-20260621soluce, #page-topics-20260801airshodou-kiro, #page-topics-20260806sukima-catmobile, #page-topics-20260831sukima-lect) .navi::before {
      background: linear-gradient(to right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
      opacity: 1;
    }

    :is(#page-topics-20260809kouhoulab, #page-topics-20260806poh, #page-topics-20260717poh, #page-topics-20260715yamazumi-hibarings, #page-topics-20260418gooddesign, #page-topics-20260621soluce, #page-topics-20260801airshodou-kiro, #page-topics-20260806sukima-catmobile, #page-topics-20260831sukima-lect) .hero-slideshow {
      position: absolute;
      inset: 0;
      overflow: hidden;
    }

    :is(#page-topics-20260809kouhoulab, #page-topics-20260806poh, #page-topics-20260717poh, #page-topics-20260715yamazumi-hibarings, #page-topics-20260418gooddesign, #page-topics-20260621soluce, #page-topics-20260801airshodou-kiro, #page-topics-20260806sukima-catmobile, #page-topics-20260831sukima-lect) .hero-slide {
      position: absolute;
      inset: 0;
      background-position: center;
      background-size: cover;
      opacity: 0;
      transform: scale(1);
      transition: opacity 1s cubic-bezier(0.45, 0, 0.55, 1);
    }

    :is(#page-topics-20260809kouhoulab, #page-topics-20260806poh, #page-topics-20260717poh, #page-topics-20260715yamazumi-hibarings, #page-topics-20260418gooddesign, #page-topics-20260621soluce, #page-topics-20260801airshodou-kiro, #page-topics-20260806sukima-catmobile, #page-topics-20260831sukima-lect) .hero-slide.is-active {
      opacity: 1;
      animation: lpHeroZoom 5s cubic-bezier(0.45, 0, 0.55, 1) forwards;
    }
  
