:root,[data-theme="running"]{--bg:#EEF3F7;--surface:#FFFFFF;--ink:#252B2F;--cat:#35C4E8;--cat-soft:#C2EFFB;--saiyasu:#FF8A73;--cv:#D04826;--ink-muted:#5A6270;--line-strong:#7F8C98;--line:#E3E8EC;--saiyasu-soft:#FFE1D9;--cv-hover:#BC401F;--danger:#B42318;--swatch-black:#222222;--swatch-white:#FFFFFF;--swatch-gray:#9AA0A6;--swatch-silver:#C3CAD1;--swatch-navy:#1F2F5C;--swatch-blue:#2F6BDB;--swatch-light-blue:#6EC6F0;--swatch-green:#2E9E5B;--swatch-lime:#A6D63A;--swatch-yellow:#F2CF2E;--swatch-orange:#F08A24;--swatch-red:#D23B3B;--swatch-pink:#F08BB4;--swatch-purple:#7B4FC4;--swatch-beige:#D9C4A3;--swatch-brown:#8A5A3B;--swatch-gold:#C9A13B;}
[data-theme="green"]{--cat:#3DD68C;--cat-soft:#C6F1D9;}
:root{--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-24:24px;--space-32:32px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-pill:999px;--tap-min:44px;--chip-height:40px;--cta-height:52px;--content-max:1200px;--logo-pc:36px;--logo-sp:30px;--bp-sp:640px;--font-sans:"Noto Sans JP", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;--font-num:"Barlow Condensed", "Arial Narrow", sans-serif;}
.ss-h1{font-family:var(--font-sans);font-size:28px;line-height:1.4;font-weight:700}
.ss-h2{font-family:var(--font-sans);font-size:20px;line-height:1.5;font-weight:700}
.ss-h3{font-family:var(--font-sans);font-size:17px;line-height:1.5;font-weight:700}
.ss-h4{font-family:var(--font-sans);font-size:14px;line-height:1.5;font-weight:700}
.ss-title{font-family:var(--font-sans);font-size:18px;line-height:1.45;font-weight:700}
.ss-body{font-family:var(--font-sans);font-size:15px;line-height:1.75;font-weight:400}
.ss-body-sm{font-family:var(--font-sans);font-size:14px;line-height:1.6;font-weight:400}
.ss-caption{font-family:var(--font-sans);font-size:13px;line-height:1.6;font-weight:400}
.ss-micro{font-family:var(--font-sans);font-size:12px;line-height:1.5;font-weight:400}
.ss-price-hero{font-family:var(--font-num);font-size:52px;line-height:1.05;font-weight:700}
.ss-price-lg{font-family:var(--font-num);font-size:28px;line-height:1.15;font-weight:700}
.ss-price-md{font-family:var(--font-num);font-size:22px;line-height:1.2;font-weight:700}
.ss-price-sm{font-family:var(--font-num);font-size:18px;line-height:1.3;font-weight:600}
