@charset "UTF-8";
/* ==========================================================================
   RUSH3.0 — SPECTRUM / QUANTUM / POP LAYER
   style.css（構造・文字組み）の上に重ねる、色と光だけを担当するレイヤー。
   レインボー × ハイテク × 量子力学 × POP。
   ========================================================================== */

/* --------------------------------------------------------- R1. 章ごとのスペクトル回転
   スクロールで章が変わるたび、背景全体の色相がゆっくり回る（このサイトのキー演出）。 */
:root{
  --hue:0deg;
  --pop-op:.55;
  --prism-op:.5;
}
html[data-chapter="opportunity"]{--hue:0deg;--prism-op:.42;--pop-op:.5}
html[data-chapter="ai"]        {--hue:48deg;--prism-op:.85;--pop-op:.9}
html[data-chapter="portfolio"] {--hue:96deg;--prism-op:.6;--pop-op:.85}
html[data-chapter="revenue"]   {--hue:144deg;--prism-op:.55;--pop-op:.7}
html[data-chapter="global"]    {--hue:200deg;--prism-op:.8;--pop-op:.6}
html[data-chapter="strategy"]  {--hue:250deg;--prism-op:.45;--pop-op:.5}
html[data-chapter="risk"]      {--hue:300deg;--prism-op:.22;--pop-op:.2}
html[data-chapter="plan"]      {--hue:335deg;--prism-op:.5;--pop-op:.65}

.bg-canvas,.bg-field,.bg-orbits,.bg-prism,.bg-quantum,.bg-pop,.bg-net{
  filter:hue-rotate(var(--hue));
  transition:filter 2.4s var(--ease),opacity 1.8s var(--ease);
}

/* --------------------------------------------------------- R2. 地の色（スペクトル・ネビュラ） */
.bg-canvas{
  background-image:
    radial-gradient(120% 66% at 50% -14%, rgba(155,107,255,.30) 0%, rgba(155,107,255,0) 60%),
    radial-gradient(80% 52% at 102% 16%, rgba(255,61,154,.20) 0%, rgba(255,61,154,0) 62%),
    radial-gradient(78% 54% at -8% 44%, rgba(53,231,255,.20) 0%, rgba(53,231,255,0) 62%),
    radial-gradient(70% 46% at 18% 96%, rgba(77,255,168,.13) 0%, rgba(77,255,168,0) 60%),
    radial-gradient(86% 50% at 92% 92%, rgba(255,154,61,.12) 0%, rgba(255,154,61,0) 62%),
    linear-gradient(180deg,#07060F 0%,#0A0817 28%,#05040C 58%,#0A0816 82%,#06050E 100%);
  filter:hue-rotate(var(--hue)) blur(.4px);
}

/* スクロール連動オーラもスペクトルに */
.bg-aura{
  background:radial-gradient(closest-side,
    rgba(255,61,154,.10) 0%, rgba(155,107,255,.07) 34%,
    rgba(53,231,255,.05) 56%, rgba(53,231,255,0) 72%);
}

/* --------------------------------------------------------- R3. 量子干渉縞（2波源をマゼンタ×シアンに） */
.bg-field{mix-blend-mode:screen}
.bg-field__a{
  background:repeating-radial-gradient(circle at 50% 50%,
    rgba(255,61,154,.155) 0 1px, rgba(255,61,154,0) 1px 26px);
}
.bg-field__b{
  background:repeating-radial-gradient(circle at 50% 50%,
    rgba(53,231,255,.135) 0 1px, rgba(53,231,255,0) 1px 34px);
}

/* --------------------------------------------------------- R4. 軌道リング（レインボー・ジャイロ） */
.bg-orbits .ring > i{border-color:rgba(var(--accRGB),.20)}
.bg-orbits .ring--dash > i{border-color:rgba(255,61,154,.22)}
.bg-orbits .ring--e3 > i{border-color:rgba(155,107,255,.20)}
.bg-orbits .ring__core{
  background:var(--sp-yel);
  box-shadow:0 0 14px 4px rgba(255,228,94,.55),0 0 40px 12px rgba(255,61,154,.25);
}
/* 分光リング：conic を細いリング状にマスクして虹の輪をつくる */
.ring--spectrum{
  position:absolute;inset:6%;display:block;border-radius:50%;
  background:var(--grad-conic);
  -webkit-mask:radial-gradient(circle at 50% 50%, transparent 0 48.4%, #000 48.4% 49.6%, transparent 49.6%);
  mask:radial-gradient(circle at 50% 50%, transparent 0 48.4%, #000 48.4% 49.6%, transparent 49.6%);
  opacity:.55;mix-blend-mode:screen;
  animation:ogSpin 90s linear infinite;
}
.ring--spectrum2{
  inset:22%;opacity:.4;
  animation:ogSpin 140s linear infinite reverse;
  -webkit-mask:radial-gradient(circle at 50% 50%, transparent 0 47.6%, #000 47.6% 49.2%, transparent 49.2%);
  mask:radial-gradient(circle at 50% 50%, transparent 0 47.6%, #000 47.6% 49.2%, transparent 49.2%);
}

/* --------------------------------------------------------- R5. プリズム・ビーム
   分光した光が斜めに横切る。screen 合成で地に溶かす。 */
.bg-prism{
  position:fixed;inset:-20vmax;z-index:-6;pointer-events:none;overflow:hidden;
  opacity:var(--prism-op);mix-blend-mode:screen;
}
.bg-prism i{
  position:absolute;display:block;left:-30%;width:160%;height:22vmax;
  filter:blur(38px);opacity:.5;
  background:linear-gradient(90deg,
    rgba(255,61,154,0) 0%, rgba(255,61,154,.5) 12%, rgba(255,154,61,.45) 26%,
    rgba(255,228,94,.42) 40%, rgba(77,255,168,.42) 56%, rgba(53,231,255,.48) 72%,
    rgba(155,107,255,.5) 86%, rgba(155,107,255,0) 100%);
}
.bg-prism i:nth-child(1){top:6%;animation:prismA 34s ease-in-out infinite alternate}
.bg-prism i:nth-child(2){top:44%;opacity:.34;animation:prismB 46s ease-in-out infinite alternate}
.bg-prism i:nth-child(3){top:78%;opacity:.3;animation:prismA 58s ease-in-out infinite alternate-reverse}
@keyframes prismA{
  0%{transform:rotate(-14deg) translate3d(-6%,0,0) scaleY(1)}
  100%{transform:rotate(-9deg) translate3d(6%,3vmax,0) scaleY(1.25)}
}
@keyframes prismB{
  0%{transform:rotate(9deg) translate3d(5%,0,0) scaleY(1.15)}
  100%{transform:rotate(4deg) translate3d(-5%,-3vmax,0) scaleY(.9)}
}

/* --------------------------------------------------------- R6. 量子HUD（ハイテクの格子と確率雲） */
.bg-quantum{
  position:fixed;inset:0;z-index:-6;pointer-events:none;overflow:hidden;
  opacity:.5;
}
.bg-quantum__grid{
  position:absolute;inset:-10%;
  background-image:
    linear-gradient(90deg, rgba(var(--accRGB),.075) 1px, transparent 1px),
    linear-gradient(0deg,  rgba(155,107,255,.06) 1px, transparent 1px);
  background-size:76px 76px, 76px 76px;
  -webkit-mask:radial-gradient(120% 80% at 50% 30%, #000 0%, rgba(0,0,0,.35) 55%, transparent 82%);
  mask:radial-gradient(120% 80% at 50% 30%, #000 0%, rgba(0,0,0,.35) 55%, transparent 82%);
  animation:qGrid 60s linear infinite;
}
@keyframes qGrid{to{transform:translate3d(-76px,-76px,0)}}

/* 確率雲：ゆっくり呼吸する彩雲 */
.bg-quantum__cloud{
  position:absolute;border-radius:50%;filter:blur(60px);mix-blend-mode:screen;
  will-change:transform,opacity;
}
.bg-quantum__cloud--a{
  width:46vmax;height:46vmax;left:-8vmax;top:8vh;
  background:radial-gradient(closest-side, rgba(255,61,154,.30), rgba(255,61,154,0) 70%);
  animation:qFloatA 38s ease-in-out infinite alternate;
}
.bg-quantum__cloud--b{
  width:40vmax;height:40vmax;right:-6vmax;top:34vh;
  background:radial-gradient(closest-side, rgba(53,231,255,.28), rgba(53,231,255,0) 70%);
  animation:qFloatB 46s ease-in-out infinite alternate;
}
.bg-quantum__cloud--c{
  width:36vmax;height:36vmax;left:32vw;bottom:-10vmax;
  background:radial-gradient(closest-side, rgba(77,255,168,.22), rgba(77,255,168,0) 70%);
  animation:qFloatA 54s ease-in-out infinite alternate-reverse;
}
@keyframes qFloatA{
  0%{transform:translate3d(0,0,0) scale(1);opacity:.75}
  100%{transform:translate3d(7vmax,-5vh,0) scale(1.18);opacity:1}
}
@keyframes qFloatB{
  0%{transform:translate3d(0,0,0) scale(1.12);opacity:.6}
  100%{transform:translate3d(-8vmax,6vh,0) scale(.92);opacity:.95}
}

/* 量子ビット：軌道上を回る発光点 */
.bg-quantum__qubit{
  position:absolute;left:50%;top:44%;width:0;height:0;
  animation:qOrbit var(--qd,30s) linear infinite;
}
.bg-quantum__qubit::before{
  content:"";position:absolute;width:5px;height:5px;border-radius:50%;
  background:var(--qc,#35E7FF);
  box-shadow:0 0 10px 2px var(--qc,#35E7FF),0 0 26px 8px rgba(255,255,255,.10);
  transform:translate(var(--qr,26vmax),0);
}
@keyframes qOrbit{to{transform:rotate(360deg)}}

/* --------------------------------------------------------- R7. POPレイヤー（浮遊する幾何） */
.bg-pop{
  position:fixed;inset:0;z-index:-5;pointer-events:none;overflow:hidden;
  opacity:var(--pop-op);
}
.bg-pop span{
  position:absolute;display:block;
  will-change:transform;
  animation:popDrift var(--pd,26s) ease-in-out infinite alternate;
}
.pop--ring{
  width:var(--s,120px);height:var(--s,120px);border-radius:50%;
  border:2px solid var(--pc,#FF3D9A);opacity:.42;
}
.pop--tri{
  width:0;height:0;
  border-left:calc(var(--s,52px) / 2) solid transparent;
  border-right:calc(var(--s,52px) / 2) solid transparent;
  border-bottom:var(--s,52px) solid var(--pc,#FFE45E);
  opacity:.30;
}
.pop--plus{width:var(--s,40px);height:var(--s,40px);opacity:.5}
.pop--plus::before,.pop--plus::after{
  content:"";position:absolute;left:50%;top:50%;background:var(--pc,#35E7FF);
  transform:translate(-50%,-50%);border-radius:2px;
}
.pop--plus::before{width:100%;height:2.5px}
.pop--plus::after{width:2.5px;height:100%}
.pop--dots{
  width:var(--s,160px);height:var(--s,160px);opacity:.30;
  background-image:radial-gradient(var(--pc,#4DFFA8) 1.6px, transparent 1.7px);
  background-size:14px 14px;
  -webkit-mask:radial-gradient(closest-side,#000 40%,transparent 100%);
  mask:radial-gradient(closest-side,#000 40%,transparent 100%);
}
.pop--sq{
  width:var(--s,64px);height:var(--s,64px);border:2px solid var(--pc,#9B6BFF);
  opacity:.34;border-radius:6px;
}
@keyframes popDrift{
  0%  {transform:translate3d(0,0,0) rotate(0deg)}
  100%{transform:translate3d(var(--dx,3vw),var(--dy,-4vh),0) rotate(var(--dr,40deg))}
}

/* --------------------------------------------------------- R8. HUDフレーム（ハイテクの視認記号） */
.bg-hud{position:fixed;inset:0;z-index:-4;pointer-events:none;opacity:.5}
.bg-hud i{
  position:absolute;width:26px;height:26px;
  border:1px solid rgba(var(--accRGB),.34);
}
.bg-hud i:nth-child(1){left:18px;top:calc(var(--header-h) + 14px);border-right:0;border-bottom:0}
.bg-hud i:nth-child(2){right:18px;top:calc(var(--header-h) + 14px);border-left:0;border-bottom:0}
.bg-hud i:nth-child(3){left:18px;bottom:18px;border-right:0;border-top:0}
.bg-hud i:nth-child(4){right:18px;bottom:18px;border-left:0;border-top:0}
@media (max-width:820px){.bg-hud{display:none}}

/* --------------------------------------------------------- R9. グレイン（バンディング除去） */
.bg-grain{opacity:.065}

/* --------------------------------------------------------- R10. コンポーネントのスペクトル化 */

/* 分光テキスト：虹全体を常に見せ、動きは色相の回転で与える */
@keyframes hueSpin{to{filter:hue-rotate(360deg)}}

.display span,
.loader__word:nth-child(2) > span{
  background-size:100% 100%;
  animation:hueSpin 18s linear infinite;
}

.sechead__no,.mgrowth__cap,.ladder__cap,.phases__cap,.plans__cap,
.why__cap,.biz__cap,.compare__cap,.maturity__cap,.exitbox__cap,
.dash__cap,.cta__cap,.pv__core-cap,.final__cap{
  background:var(--grad-rb90);
  background-size:100% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* セクション区切りの光の帯を虹に */
.sec::before{
  height:1px;opacity:.7;
  background:linear-gradient(90deg,
    transparent 0%, rgba(255,61,154,.55) 18%, rgba(255,228,94,.5) 38%,
    rgba(77,255,168,.5) 56%, rgba(53,231,255,.55) 74%, transparent 100%);
}

/* ボタン */
.btn--gold{
  color:#07060D;
  background-size:100% 100%;
  animation:hueSpin 16s linear infinite;
  box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,
             0 10px 30px -12px rgba(255,61,154,.55),
             0 10px 30px -12px rgba(53,231,255,.45);
}
.btn--gold:hover{transform:translateY(-2px)}
.btn--gold::before{background-size:100% 100%}
.btn--ghost:hover{border-color:rgba(var(--accRGB),.45);color:#FFFFFF}
.btn--ghost::before{
  background:linear-gradient(100deg,
    rgba(255,61,154,.16),rgba(255,228,94,.12),rgba(53,231,255,.16),rgba(155,107,255,.18));
}

/* ブランドマーク：虹のコニックが回る */
.brand__mark{animation:ogSpin 8s linear infinite}
.brand__mark::after{background:#08060F}

/* ヘッダー進捗バー・ローダーバー */
.header__progress i,.loader__bar i{background-size:100vw 100%;background-repeat:no-repeat}

/* HERO */
.hero__title .line:nth-child(2) > span{
  background:var(--grad-rb);
  background-size:100% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:hueSpin 20s linear infinite;
}
.hero__eyebrow .dot{
  background:#FF3D9A;
  box-shadow:0 0 0 4px rgba(255,61,154,.16),0 0 14px 3px rgba(255,61,154,.5);
}
.hero__scrim{
  background:
    linear-gradient(180deg, rgba(6,5,14,.30) 0%, rgba(6,5,14,.60) 46%, rgba(6,5,14,.92) 100%),
    linear-gradient(92deg, rgba(155,107,255,.18) 0%, rgba(255,61,154,.10) 42%, rgba(53,231,255,.16) 100%);
}

/* ティッカーを1語ずつスペクトルで塗る（POP） */
.ticker__track span{opacity:.85}
.ticker__track span:nth-child(12n+1){color:var(--sp-mag)}
.ticker__track span:nth-child(12n+3){color:var(--sp-org)}
.ticker__track span:nth-child(12n+5){color:var(--sp-yel)}
.ticker__track span:nth-child(12n+7){color:var(--sp-lim)}
.ticker__track span:nth-child(12n+9){color:var(--sp-cyn)}
.ticker__track span:nth-child(12n+11){color:var(--sp-vio)}

/* カード類：ホバーで虹の縁が立ち上がる */
.sitecard,.pillar,.plan{position:relative;isolation:isolate}
.sitecard::after,.pillar::after,.plan::after{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;
  padding:1px;background:var(--grad-rb);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;
  opacity:0;transition:opacity .5s var(--ease);
  pointer-events:none;
}
.sitecard:hover::after,.pillar:hover::after,.plan:hover::after{opacity:.75}
.sitecard__line{background:var(--grad-rb90)}
.plan--feature::after{opacity:.55}
.plan__badge{
  background:var(--grad-rb90);background-size:100% 100%;
  color:#07060D;animation:hueSpin 14s linear infinite;
}

/* 番号・キャプションのスペクトル循環（POPな色分け） */
.pillar__no,.risks__no,.adv__no,.phase__no,.plan__no,.sitecard__no{color:var(--sp-cyn)}
.risks li:nth-child(8n+1) .risks__no{color:var(--sp-mag)}
.risks li:nth-child(8n+2) .risks__no{color:var(--sp-org)}
.risks li:nth-child(8n+3) .risks__no{color:var(--sp-yel)}
.risks li:nth-child(8n+4) .risks__no{color:var(--sp-lim)}
.risks li:nth-child(8n+5) .risks__no{color:var(--sp-cyn)}
.risks li:nth-child(8n+6) .risks__no{color:var(--sp-vio)}
.risks li:nth-child(8n+7) .risks__no{color:var(--sp-mag)}
.risks li:nth-child(8n+8) .risks__no{color:var(--sp-lim)}
.adv__item:nth-child(8n+1) .adv__no{color:var(--sp-mag)}
.adv__item:nth-child(8n+2) .adv__no{color:var(--sp-org)}
.adv__item:nth-child(8n+3) .adv__no{color:var(--sp-yel)}
.adv__item:nth-child(8n+4) .adv__no{color:var(--sp-lim)}
.adv__item:nth-child(8n+5) .adv__no{color:var(--sp-cyn)}
.adv__item:nth-child(8n+6) .adv__no{color:var(--sp-vio)}
.adv__item:nth-child(8n+7) .adv__no{color:var(--sp-mag)}
.adv__item:nth-child(8n+8) .adv__no{color:var(--sp-cyn)}
.sitecard:nth-child(6n+1) .sitecard__no{color:var(--sp-mag)}
.sitecard:nth-child(6n+2) .sitecard__no{color:var(--sp-org)}
.sitecard:nth-child(6n+3) .sitecard__no{color:var(--sp-yel)}
.sitecard:nth-child(6n+4) .sitecard__no{color:var(--sp-lim)}
.sitecard:nth-child(6n+5) .sitecard__no{color:var(--sp-cyn)}
.sitecard:nth-child(6n+6) .sitecard__no{color:var(--sp-vio)}
.pillar:nth-child(1) .pillar__no{color:var(--sp-mag)}
.pillar:nth-child(2) .pillar__no{color:var(--sp-lim)}
.pillar:nth-child(3) .pillar__no{color:var(--sp-cyn)}

/* 言語チップ／サービス一覧／成熟指標をPOPに色分け */
.langs li:nth-child(7n+1) span{color:var(--sp-mag)}
.langs li:nth-child(7n+2) span{color:var(--sp-org)}
.langs li:nth-child(7n+3) span{color:var(--sp-yel)}
.langs li:nth-child(7n+4) span{color:var(--sp-lim)}
.langs li:nth-child(7n+5) span{color:var(--sp-cyn)}
.langs li:nth-child(7n+6) span{color:var(--sp-vio)}
.langs li:nth-child(7n+7) span{color:var(--sp-mag)}
.services li:nth-child(6n+1) em{color:var(--sp-mag)}
.services li:nth-child(6n+2) em{color:var(--sp-org)}
.services li:nth-child(6n+3) em{color:var(--sp-yel)}
.services li:nth-child(6n+4) em{color:var(--sp-lim)}
.services li:nth-child(6n+5) em{color:var(--sp-cyn)}
.services li:nth-child(6n+6) em{color:var(--sp-vio)}
.maturity__list li:nth-child(8n+1){color:var(--sp-mag)}
.maturity__list li:nth-child(8n+2){color:var(--sp-org)}
.maturity__list li:nth-child(8n+3){color:var(--sp-yel)}
.maturity__list li:nth-child(8n+4){color:var(--sp-lim)}
.maturity__list li:nth-child(8n+5){color:var(--sp-cyn)}
.maturity__list li:nth-child(8n+6){color:var(--sp-vio)}
.maturity__list li:nth-child(8n+7){color:var(--sp-cyn)}
.maturity__list li:nth-child(8n+8){color:var(--sp-lim)}

/* フローライン／why の矢印 */
.flowline--exit{
  background:var(--grad-rb90);background-size:100% 100%;
  color:#07060D;animation:hueSpin 14s linear infinite;
}
.why__arrow{background:var(--grad-rb90);opacity:.6}
.why__list li:nth-child(5n+1) .why__k{color:var(--sp-mag)}
.why__list li:nth-child(5n+2) .why__k{color:var(--sp-org)}
.why__list li:nth-child(5n+3) .why__k{color:var(--sp-lim)}
.why__list li:nth-child(5n+4) .why__k{color:var(--sp-cyn)}
.why__list li:nth-child(5n+5) .why__k{color:var(--sp-vio)}

/* ポートフォリオ可視化のリング */
.pv__ring--1{border-color:rgba(255,61,154,.22)}
.pv__ring--2{border-color:rgba(53,231,255,.18)}
.pv__ring--3{border-color:rgba(155,107,255,.14)}

/* チャプターレールのアクティブ表示 */
.rail li.is-active .rail__num{color:var(--sp-cyn)}
.rail li.is-active .rail__label{color:#FFFFFF}

/* --------------------------------------------------------- R11. 映像のカラーグレード統一
   素材は流用しつつ、彩度と色相を持ち上げてスペクトルの空気に馴染ませる。 */
.video-slot video{
  filter:saturate(1.5) contrast(1.06) hue-rotate(-14deg) brightness(1.02);
}
.video-slot::before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  mix-blend-mode:screen;opacity:.30;
  background:linear-gradient(118deg,
    rgba(255,61,154,.45) 0%, rgba(255,154,61,.22) 22%, rgba(255,228,94,.16) 38%,
    rgba(77,255,168,.20) 56%, rgba(53,231,255,.40) 76%, rgba(155,107,255,.45) 100%);
  transition:opacity 1.2s var(--ease);
}
.video-slot--hero::before{opacity:.24}
.video-slot__tag i{background:#FF3D9A;box-shadow:0 0 8px 2px rgba(255,61,154,.6)}
.video-slot.is-playing::after{
  background:linear-gradient(180deg,rgba(6,5,14,0) 40%,rgba(6,5,14,.55) 100%);
}
.final__scrim{
  background:
    linear-gradient(180deg,rgba(6,5,14,.45) 0%,rgba(6,5,14,.72) 55%,rgba(6,5,14,.95) 100%),
    linear-gradient(92deg,rgba(255,61,154,.16) 0%,rgba(53,231,255,.14) 100%);
}

/* --------------------------------------------------------- R12. フォーム／CTA */
.form input:focus,.form select:focus,.form textarea:focus{
  border-color:rgba(var(--accRGB),.55);
  box-shadow:0 0 0 3px rgba(53,231,255,.10),0 0 0 1px rgba(255,61,154,.18);
}
.cta__box{position:relative;isolation:isolate}
.cta__box::after{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;
  background:var(--grad-rb);background-size:100% 100%;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;
  opacity:.45;animation:hueSpin 22s linear infinite;
  pointer-events:none;
}
/* TEL / FAX / EMAIL の3枠を揃える（FAXはリンクではないので a の見た目を写す） */
.direct__list .direct__fax{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:16px 12px;border:1px solid var(--line);border-radius:2px;
}
.direct__list li:nth-child(1) span{color:var(--sp-mag)}
.direct__list li:nth-child(2) span{color:var(--sp-yel)}
.direct__list li:nth-child(3) span{color:var(--sp-cyn)}
.direct__list a:hover{border-color:rgba(var(--accRGB),.4);background:rgba(var(--accRGB),.06)}

/* 選択範囲・フォーカス */
::selection{background:rgba(255,61,154,.35);color:#FFFFFF}
:focus-visible{outline-color:#35E7FF}

/* --------------------------------------------------------- R13. モーション配慮 */
@media (prefers-reduced-motion:reduce){
  .bg-prism i,.bg-quantum__cloud,.bg-quantum__qubit,.bg-quantum__grid,
  .bg-pop span,.ring--spectrum,.brand__mark,
  .display span,.loader__word:nth-child(2) > span,
  .sechead__no,.btn--gold,.header__progress i,.loader__bar i,
  .hero__title .line:nth-child(2) > span,.cta__box::after,
  .plan__badge,.flowline--exit{
    animation:none;
  }
  .bg-canvas,.bg-field,.bg-orbits,.bg-prism,.bg-quantum,.bg-pop,.bg-net{transition:none}
}

/* --------------------------------------------------------- R14. モバイル調整 */
@media (max-width:640px){
  .bg-prism{opacity:calc(var(--prism-op) * .7)}
  .bg-prism i{filter:blur(30px)}
  .bg-pop{opacity:calc(var(--pop-op) * .55)}
  .bg-quantum__cloud{filter:blur(44px)}
  .bg-quantum__qubit--e,.bg-quantum__qubit--c{display:none}
}

/* --------------------------------------------------------- R15. 市場グラフの分光 */
.mchart .mline--gl,.mchart .mline--gl.mline--fc{stroke:url(#mgLine)}
.mchart .mdot--gl{fill:#4DFFA8}
.mchart .mcall__v--gl{fill:#35E7FF}
.mlg--gl i{background:var(--grad-rb90)}
