:root{
  --ink:#05080d;
  --paper:#f5f2eb;
  --white:#fff;
  --muted:#687078;
  --line:rgba(9,17,28,.15);
  --serif:'Noto Serif JP',serif;
  --sans:'Noto Sans JP',sans-serif;
  --display:'Bebas Neue','Arial Narrow',sans-serif;
  --container:min(1280px,calc(100% - 64px));
  --ease:cubic-bezier(.2,.75,.25,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;color:#101820;background:var(--paper);font-family:var(--sans);font-feature-settings:'palt';-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a{touch-action:manipulation}
::selection{background:var(--accent);color:var(--ink)}
.skip{position:fixed;left:12px;top:-100px;z-index:1000;padding:12px 16px;background:var(--accent);color:var(--ink);font-weight:900}.skip:focus{top:12px}
.container{width:var(--container);margin-inline:auto}
.theme-blue{--accent:#65f3ea;--accent-2:#238cff;--accent-rgb:101,243,234;--dark:#03111e;--dark-2:#071f34;--soft:#e9f6f8}
.theme-red{--accent:#ff3d29;--accent-2:#ff9b27;--accent-rgb:255,61,41;--dark:#0b0808;--dark-2:#24100d;--soft:#f8ede7}

.slp-header{position:fixed;z-index:80;inset:0 0 auto;height:78px;color:#fff;transition:background .35s,backdrop-filter .35s,border-color .35s}
.slp-header.scrolled{background:rgba(3,8,13,.84);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.12)}
.slp-header-inner{width:var(--container);height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.slp-brand{display:flex;align-items:center}.slp-brand img{width:174px;height:auto;filter:brightness(0) invert(1)}
.slp-nav{display:flex;align-items:center;gap:28px;color:rgba(255,255,255,.7);font-family:var(--display);letter-spacing:.12em}.slp-nav a{position:relative}.slp-nav a::after{content:'';position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:.3s var(--ease)}.slp-nav a:hover{color:#fff}.slp-nav a:hover::after{transform:scaleX(1);transform-origin:left}
.slp-consult{display:flex;align-items:center;gap:12px;padding:13px 19px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(0,0,0,.18);font-size:.78rem;font-weight:900;backdrop-filter:blur(10px)}.slp-consult b{font-family:var(--display);color:var(--accent);font-size:1.1rem}.slp-consult-mobile{display:none}

.lp-hero{position:relative;min-height:100svh;color:#fff;display:grid;align-items:end;isolation:isolate;background:var(--dark);overflow:hidden}
.hero-media{position:absolute;z-index:-3;inset:0;background-image:var(--hero-image);background-size:cover;background-position:center;transform:scale(calc(1.02 + var(--hero-shift,0)*.00002));filter:saturate(.92) contrast(1.05)}
.lp-hero::before{content:'';position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(2,7,12,.96) 0%,rgba(2,7,12,.83) 36%,rgba(2,7,12,.24) 64%,rgba(2,7,12,.08) 100%),linear-gradient(0deg,rgba(2,7,12,.9) 0%,transparent 46%)}
.lp-hero::after{content:'';position:absolute;z-index:-1;inset:0;opacity:.13;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E")}
.hero-shell{width:var(--container);margin:auto;padding:150px 0 92px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.42fr);gap:7vw;align-items:end}
.hero-edition{display:flex;align-items:center;gap:14px;margin-bottom:22px;font-family:var(--display);font-size:1rem;letter-spacing:.2em;color:var(--accent)}.hero-edition::before{content:'';width:54px;height:2px;background:var(--accent)}
.hero-title{margin:0;max-width:880px;font-family:var(--serif);font-weight:900;font-size:clamp(3.7rem,7.3vw,8.2rem);line-height:.95;letter-spacing:-.075em;text-wrap:balance}.hero-title em{font-style:normal;color:var(--accent)}
.hero-sub{margin:28px 0 0;max-width:760px;font-family:var(--serif);font-size:clamp(1.1rem,1.7vw,1.55rem);font-weight:700;line-height:1.7;color:rgba(255,255,255,.94)}
.hero-answer{margin:20px 0 0;max-width:760px;padding-left:18px;border-left:3px solid var(--accent);font-size:.95rem;line-height:1.95;color:rgba(255,255,255,.72)}.hero-answer strong{color:#fff}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.slp-btn{min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:0 24px;border-radius:999px;font-size:.88rem;font-weight:900;letter-spacing:.04em;transition:transform .3s var(--ease),background .3s,color .3s}.slp-btn:hover{transform:translateY(-3px)}
.slp-btn-primary{background:var(--accent);color:var(--ink)}.slp-btn-ghost{border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.07);color:#fff;backdrop-filter:blur(8px)}
.hero-aside{display:flex;flex-direction:column;gap:14px}.hero-card{padding:24px;border:1px solid rgba(255,255,255,.2);background:rgba(1,8,14,.56);backdrop-filter:blur(18px)}.hero-card small{display:block;font-family:var(--display);letter-spacing:.16em;color:var(--accent)}.hero-card strong{display:block;margin-top:10px;font-family:var(--serif);font-size:1.2rem;line-height:1.55}.hero-card p{margin:10px 0 0;font-size:.76rem;line-height:1.75;color:rgba(255,255,255,.62)}
.hero-card-index{display:flex;justify-content:space-between;align-items:end;border-top:1px solid rgba(255,255,255,.22);padding-top:18px;font-family:var(--display);letter-spacing:.14em;color:rgba(255,255,255,.55)}.hero-card-index b{font-size:3rem;color:var(--accent);font-weight:400;line-height:.8}
.hero-scroll{position:absolute;right:24px;bottom:28px;writing-mode:vertical-rl;display:flex;align-items:center;gap:12px;font-family:var(--display);letter-spacing:.18em;color:rgba(255,255,255,.55)}.hero-scroll::after{content:'';width:1px;height:72px;background:linear-gradient(var(--accent),transparent)}

.signal{overflow:hidden;background:var(--accent);color:var(--ink);border-block:1px solid rgba(0,0,0,.35)}.signal-track{display:flex;width:max-content;animation:signal 30s linear infinite}.signal span{display:flex;align-items:center;gap:24px;padding:14px 18px;font-family:var(--display);font-size:clamp(1.15rem,1.8vw,1.75rem);letter-spacing:.12em;white-space:nowrap}.signal i{font-style:normal;font-size:.65em}@keyframes signal{to{transform:translateX(-50%)}}

.lp-section{position:relative;padding:clamp(92px,10vw,164px) 0;overflow:hidden}.paper{background:var(--paper)}.soft{background:var(--soft)}.dark{background:var(--dark);color:#fff}.deep{background:linear-gradient(135deg,var(--dark),var(--dark-2));color:#fff}
.section-grid{display:grid;grid-template-columns:1fr .58fr;gap:8vw;align-items:end}.section-no{font-family:var(--display);font-size:.9rem;letter-spacing:.17em;color:var(--accent-2)}.dark .section-no,.deep .section-no{color:var(--accent)}
.section-title{margin:18px 0 0;font-family:var(--serif);font-size:clamp(2.45rem,5vw,5.8rem);font-weight:900;line-height:1.08;letter-spacing:-.065em;text-wrap:balance}.section-title em{font-style:normal;color:var(--accent-2)}.dark .section-title em,.deep .section-title em{color:var(--accent)}
.section-copy{font-size:.98rem;line-height:2;color:#53606a}.dark .section-copy,.deep .section-copy{color:rgba(255,255,255,.62)}

.direct-answer{margin-top:76px;display:grid;grid-template-columns:.48fr 1fr;gap:6vw;padding-top:42px;border-top:1px solid var(--line)}.answer-label{font-family:var(--display);font-size:clamp(4.5rem,10vw,10rem);line-height:.78;color:var(--accent-2);letter-spacing:-.03em}.answer-body{font-family:var(--serif);font-size:clamp(1.3rem,2.45vw,2.35rem);font-weight:700;line-height:1.7;letter-spacing:-.035em}.answer-body mark{background:linear-gradient(transparent 61%,rgba(var(--accent-rgb),.35) 61%);color:inherit}
.answer-detail{grid-column:2;margin:0;color:#55616a;line-height:2}.dark .answer-detail{color:rgba(255,255,255,.64)}

.origin{margin-top:78px;display:grid;grid-template-columns:.72fr 1fr;border:1px solid var(--line);background:#fff}.origin-number{display:flex;flex-direction:column;justify-content:space-between;min-height:360px;padding:36px;background:var(--dark);color:#fff}.origin-number b{font-family:var(--display);font-size:clamp(7rem,14vw,14rem);line-height:.72;color:var(--accent);font-weight:400}.origin-number span{font-family:var(--display);letter-spacing:.15em;color:rgba(255,255,255,.58)}.origin-copy{padding:clamp(32px,5vw,70px)}.origin-copy h3{margin:0;font-family:var(--serif);font-size:clamp(1.7rem,3vw,3rem);line-height:1.5;letter-spacing:-.045em}.origin-copy p{margin:24px 0 0;line-height:2;color:#57636b}

.phase-grid{margin-top:76px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}.phase-card{min-height:390px;padding:34px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);position:relative;overflow:hidden;transition:background .3s}.phase-card:hover{background:rgba(var(--accent-rgb),.07)}.phase-card::after{content:attr(data-no);position:absolute;right:-.1em;bottom:-.25em;font-family:var(--display);font-size:10rem;color:rgba(255,255,255,.035);line-height:1}.phase-card small{font-family:var(--display);letter-spacing:.16em;color:var(--accent)}.phase-card h3{margin:70px 0 16px;font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2.15rem)}.phase-card p{margin:0;color:rgba(255,255,255,.64);line-height:1.95}.phase-goal{display:block;margin-top:25px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:.82rem;color:var(--accent)}

.module-grid{margin-top:74px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.module{min-height:260px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.45);transition:background .3s,color .3s}.module:hover{background:var(--dark);color:#fff}.module-index{font-family:var(--display);font-size:1.1rem;letter-spacing:.14em;color:var(--accent-2)}.module h3{margin:46px 0 12px;font-family:var(--serif);font-size:1.3rem;line-height:1.5}.module p{margin:0;color:#5b6870;font-size:.86rem;line-height:1.85}.module:hover p{color:rgba(255,255,255,.65)}

.process{margin-top:76px;counter-reset:process}.process-row{counter-increment:process;display:grid;grid-template-columns:150px 1fr .8fr;gap:38px;align-items:center;min-height:160px;border-top:1px solid var(--line)}.process-row:last-child{border-bottom:1px solid var(--line)}.process-row::before{content:'0' counter(process);font-family:var(--display);font-size:clamp(3.2rem,6vw,6.2rem);line-height:1;color:var(--accent-2)}.process-row h3{margin:0;font-family:var(--serif);font-size:clamp(1.3rem,2.3vw,2rem)}.process-row p{margin:0;color:#5b6870;line-height:1.85;font-size:.88rem}

.evidence-grid{margin-top:74px;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16)}.evidence{min-height:290px;padding:34px;background:rgba(255,255,255,.045);position:relative}.evidence small{font-family:var(--display);letter-spacing:.15em;color:var(--accent)}.evidence h3{margin:42px 0 12px;font-family:var(--serif);font-size:1.4rem;line-height:1.5}.evidence p{margin:0;color:rgba(255,255,255,.62);line-height:1.9;font-size:.88rem}.evidence b{display:block;margin-top:22px;color:var(--accent);font-size:.82rem}

.ba-grid{margin-top:76px;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.ba-col{padding:clamp(30px,5vw,60px);background:#fff}.ba-col+ .ba-col{background:var(--dark);color:#fff}.ba-label{font-family:var(--display);font-size:clamp(2.5rem,5vw,5rem);letter-spacing:.06em;color:#91989d}.ba-col:last-child .ba-label{color:var(--accent)}.ba-list{list-style:none;margin:28px 0 0;padding:0}.ba-list li{padding:15px 0;border-bottom:1px solid var(--line);line-height:1.65;font-weight:700}.ba-col:last-child .ba-list li{border-color:rgba(255,255,255,.14)}

.profile{margin-top:76px;display:grid;grid-template-columns:.55fr 1fr;background:#fff;border:1px solid var(--line)}.profile-visual{min-height:380px;padding:40px;background:linear-gradient(145deg,var(--dark),var(--dark-2));color:#fff;display:flex;flex-direction:column;justify-content:space-between}.profile-visual small{font-family:var(--display);letter-spacing:.15em;color:var(--accent)}.profile-monogram{font-family:var(--display);font-size:clamp(7rem,14vw,14rem);line-height:.7;color:var(--accent)}.profile-copy{padding:clamp(34px,5vw,70px)}.profile-copy h3{margin:0;font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.8rem)}.profile-role{margin:10px 0 0;color:var(--accent-2);font-weight:800}.profile-copy p{margin:24px 0 0;color:#58656d;line-height:2}.profile-note{font-size:.76rem;color:#7e878d!important}.profile-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.profile-links a{padding:11px 15px;border:1px solid var(--line);border-radius:999px;font-size:.78rem;font-weight:800}

.faq-grid{margin-top:70px;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(9,17,28,.16);border:1px solid rgba(9,17,28,.16)}.faq-item{min-height:240px;padding:34px;background:#fff}.faq-q{font-family:var(--display);font-size:2rem;color:var(--accent-2)}.faq-item h3{margin:16px 0 12px;font-family:var(--serif);font-size:1.16rem;line-height:1.55}.faq-item p{margin:0;color:#58656d;line-height:1.9;font-size:.86rem}

.related-grid{margin-top:60px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related-card{min-height:220px;padding:26px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);display:flex;flex-direction:column;justify-content:space-between;transition:background .3s,transform .3s}.related-card:hover{background:rgba(var(--accent-rgb),.1);transform:translateY(-4px)}.related-card small{font-family:var(--display);letter-spacing:.15em;color:var(--accent)}.related-card h3{margin:30px 0 0;font-family:var(--serif);font-size:1.25rem;line-height:1.5}.related-card span{margin-top:24px;color:var(--accent)}

.lp-closing{position:relative;min-height:84svh;color:#fff;display:grid;place-items:center;text-align:center;background:var(--dark);isolation:isolate;overflow:hidden}.lp-closing::before{content:'';position:absolute;z-index:-2;inset:0;background-image:var(--hero-image);background-size:cover;background-position:center;filter:saturate(.7)}.lp-closing::after{content:'';position:absolute;z-index:-1;inset:0;background:rgba(2,7,12,.84)}.closing-inner{width:min(980px,calc(100% - 40px));padding:110px 0}.closing-kicker{font-family:var(--display);letter-spacing:.18em;color:var(--accent)}.lp-closing h2{margin:24px 0 0;font-family:var(--serif);font-size:clamp(2.9rem,7vw,7.2rem);line-height:1.06;letter-spacing:-.07em}.lp-closing h2 em{font-style:normal;color:var(--accent)}.lp-closing p{max-width:720px;margin:28px auto 0;color:rgba(255,255,255,.68);line-height:2}.lp-closing .slp-btn{margin-top:36px;min-width:min(100%,360px)}
.slp-footer{background:#02070c;color:rgba(255,255,255,.55);padding:36px 0 calc(36px + env(safe-area-inset-bottom));font-size:.74rem}.slp-footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.slp-footer-links{display:flex;flex-wrap:wrap;gap:18px}.slp-footer a:hover{color:#fff}

@supports (animation-timeline:view()){
  .reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 4% cover 27%}
  @keyframes reveal{from{opacity:.16;transform:translateY(42px)}to{opacity:1;transform:none}}
}
@media(max-width:980px){
  :root{--container:min(100% - 36px,760px)}.slp-nav{display:none}.slp-header{height:70px}.slp-brand img{width:152px}
  .hero-shell{grid-template-columns:1fr;padding:128px 0 72px;gap:38px}.hero-title{font-size:clamp(3.4rem,11vw,6.5rem)}.hero-aside{display:grid;grid-template-columns:1fr 1fr}.hero-scroll{display:none}
  .section-grid{grid-template-columns:1fr;gap:30px}.direct-answer{grid-template-columns:1fr;gap:30px}.answer-detail{grid-column:auto}.origin{grid-template-columns:1fr}.origin-number{min-height:240px}
  .phase-grid,.module-grid{grid-template-columns:1fr 1fr}.phase-card:last-child,.module:last-child{grid-column:1/-1}.process-row{grid-template-columns:110px 1fr}.process-row p{grid-column:2}.profile{grid-template-columns:1fr}.profile-visual{min-height:270px}.related-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  :root{--container:calc(100% - 28px)}.slp-header{height:66px}.slp-brand img{width:132px}.slp-consult{padding:10px 13px;gap:7px}.slp-consult-desktop{display:none}.slp-consult-mobile{display:inline;font-size:.72rem}
  .lp-hero{min-height:100svh}.hero-media{background-position:64% center}.lp-hero::before{background:linear-gradient(180deg,rgba(2,7,12,.12),rgba(2,7,12,.52) 35%,rgba(2,7,12,.96) 70%,rgba(2,7,12,.99))}.hero-shell{display:block;padding:110px 0 34px}.hero-edition{font-size:.78rem;margin-bottom:14px}.hero-edition::before{width:34px}.hero-title{font-size:clamp(3rem,15vw,4.9rem);line-height:.99}.hero-sub{margin-top:20px;font-size:1.02rem}.hero-answer{font-size:.82rem;line-height:1.85}.hero-actions{margin-top:22px}.slp-btn{width:100%;min-height:53px}.hero-aside{display:block;margin-top:20px}.hero-card{padding:19px}.hero-card-index{display:none}
  .signal span{padding:12px;font-size:1.08rem}.lp-section{padding:82px 0}.section-no{font-size:.76rem}.section-title{font-size:clamp(2.15rem,11vw,3.2rem);line-height:1.16}.section-copy{font-size:.88rem;line-height:1.9}
  .direct-answer{margin-top:48px;padding-top:30px}.answer-label{font-size:5.3rem}.answer-body{font-size:1.24rem}.answer-detail{font-size:.86rem}
  .origin{margin-top:50px}.origin-number{min-height:200px;padding:28px}.origin-number b{font-size:7rem}.origin-copy{padding:30px 24px}.origin-copy h3{font-size:1.45rem}.origin-copy p{font-size:.86rem}
  .phase-grid,.module-grid{grid-template-columns:1fr;margin-top:48px}.phase-card,.phase-card:last-child,.module,.module:last-child{grid-column:auto;min-height:0;padding:26px}.phase-card h3{margin-top:44px}.module h3{margin-top:28px}
  .process{margin-top:50px}.process-row{grid-template-columns:64px 1fr;gap:16px;padding:24px 0;min-height:0}.process-row::before{font-size:3.1rem}.process-row h3{font-size:1.16rem}.process-row p{font-size:.79rem}
  .evidence-grid,.ba-grid,.faq-grid{grid-template-columns:1fr;margin-top:50px}.evidence{min-height:0;padding:27px}.ba-col{padding:30px 24px}.profile{margin-top:50px}.profile-visual{min-height:220px;padding:28px}.profile-copy{padding:30px 24px}.profile-copy p{font-size:.86rem}.faq-item{min-height:0;padding:28px 24px}
  .lp-closing{min-height:76svh}.closing-inner{padding:86px 0}.lp-closing h2{font-size:clamp(2.5rem,13vw,4rem)}.lp-closing p{font-size:.85rem}.slp-footer-inner{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.signal-track{animation:none}.hero-media{transform:none}.reveal{animation:none!important}.slp-btn,.related-card{transition:none}}
