:root{color-scheme:light;--color-ink-950:#102725;--color-ink-900:#17312f;--color-ink-700:#3f5a56;--color-ink-600:#58706c;--color-paper-50:#fbfaf6;--color-paper-100:#f4f1e8;--color-paper-200:#ebe6d9;--color-surface:#fff;--color-pine-800:#123f39;--color-pine-700:#175047;--color-pine-600:#23675b;--color-mint-100:#dcebe5;--color-mint-50:#edf5f1;--color-gold-600:#a96f24;--color-gold-500:#c88937;--color-gold-100:#f5e4c7;--color-warning-50:#fff6df;--color-warning-200:#efd79d;--color-border:#d9ded7;--color-border-strong:#b9c6c0;--font-sans:Inter, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Iowan Old Style", "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", Georgia, serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:clamp(1.75rem, 3vw, 2.5rem);--text-3xl:clamp(2.25rem, 5vw, 4.5rem);--text-hero:clamp(3rem, 7vw, 6.25rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-xl:34px;--radius-pill:999px;--shadow-sm:0 8px 24px #1027250f;--shadow-md:0 20px 54px #1027251a;--shadow-focus:0 0 0 4px #c8893738;font-family:var(--font-sans);color:var(--color-ink-900);background:var(--color-paper-50);font-synthesis:none}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{min-width:320px;color:var(--color-ink-900);background:radial-gradient(circle at 82% 2%, #dcebe5b8, transparent 31rem), var(--color-paper-50);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.8}a{color:inherit;text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit}::selection{color:var(--color-ink-950);background:var(--color-gold-100)}:focus-visible{outline:2px solid var(--color-gold-500);outline-offset:3px;box-shadow:var(--shadow-focus)}.skip-link{z-index:100;border-radius:var(--radius-sm);color:#fff;background:var(--color-pine-800);padding:10px 16px;font-weight:800;text-decoration:none;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.container{width:min(1180px,100% - 48px);margin-inline:auto}.site-main{min-height:calc(100vh - 220px)}.site-header{z-index:30;backdrop-filter:blur(18px)saturate(130%);background:#fbfaf6e0;border-bottom:1px solid #b9c6c09e;position:sticky;top:0}.header-inner{grid-template-columns:minmax(250px,1fr) auto minmax(106px,1fr);align-items:center;gap:28px;min-height:82px;display:grid}.brand{align-items:center;gap:12px;width:fit-content;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:var(--color-pine-800);border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 9px 22px #123f392e}.brand-mark svg{width:30px;height:30px}.brand-mark path{fill:none;stroke:currentColor;stroke-width:3.8px;stroke-linecap:round}.brand-mark circle{fill:var(--color-gold-500)}.brand-copy{line-height:1.2;display:grid}.brand-copy small{color:var(--color-gold-600);letter-spacing:.14em;text-transform:uppercase;font-size:.64rem;font-weight:900}.brand-copy strong{color:var(--color-ink-950);letter-spacing:.01em;margin-top:4px;font-size:.94rem}.primary-nav{justify-content:center;align-items:center;gap:30px;display:flex}.primary-nav a{color:var(--color-ink-700);font-size:var(--text-sm);font-weight:800;text-decoration:none;position:relative}.primary-nav a:after{content:"";background:var(--color-gold-500);transform-origin:50%;height:2px;transition:transform .18s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.primary-nav a:hover:after{transform:scaleX(1)}.header-actions{justify-content:flex-end;align-items:center;display:flex}.language-switcher{border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:#ffffffd1;padding:3px;display:inline-flex}.language-switcher a{border-radius:var(--radius-pill);min-width:42px;color:var(--color-ink-600);letter-spacing:.08em;text-align:center;padding:7px 10px;font-size:.73rem;font-weight:900;text-decoration:none}.language-switcher a[aria-current=page]{color:#fff;background:var(--color-pine-800)}.eyebrow{color:var(--color-gold-600);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-weight:900;line-height:1.4}.eyebrow-light{color:#efd7a9}.section-title{max-width:720px;color:var(--color-ink-950);font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.035em;margin:0;font-weight:600;line-height:1.25}.section-intro{max-width:520px;color:var(--color-ink-600);font-size:var(--text-lg);margin:5px 0 0}.button{border:1px solid var(--color-pine-800);border-radius:var(--radius-pill);justify-content:center;align-items:center;gap:18px;min-height:52px;padding:0 24px;font-size:.92rem;font-weight:900;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.button-primary{color:#fff;background:var(--color-pine-800)}.button-primary:hover{background:var(--color-pine-700)}.button-secondary{color:var(--color-pine-800);background:#ffffff6b}.button-light{color:var(--color-pine-800);background:#fff;border-color:#fff}.text-link{color:var(--color-pine-700);align-items:center;gap:12px;font-weight:900;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.home-hero{padding:clamp(72px,9vw,128px) 0 0;position:relative;overflow:hidden}.home-hero:before{content:"";pointer-events:none;border:1px solid #23675b21;border-radius:50%;width:540px;height:540px;position:absolute;top:-190px;right:-180px;box-shadow:inset 0 0 0 72px #dcebe52b,inset 0 0 0 144px #dcebe51f}.home-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(380px,.82fr);align-items:center;gap:clamp(48px,7vw,96px);display:grid;position:relative}.home-hero-copy{padding-bottom:18px}.home-title{max-width:760px;color:var(--color-ink-950);font-family:var(--font-display);font-size:var(--text-hero);letter-spacing:-.06em;margin:0;font-weight:500;line-height:.98}.home-title span,.home-title strong{display:block}.home-title strong{color:var(--color-pine-700);font-weight:600}.home-lead{max-width:690px;color:var(--color-ink-700);margin:32px 0 0;font-size:clamp(1.03rem,1.65vw,1.22rem);line-height:1.95}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.proof-list{color:var(--color-ink-700);font-size:var(--text-sm);flex-wrap:wrap;gap:12px 24px;margin:28px 0 0;padding:0;font-weight:800;list-style:none;display:flex}.proof-list li{align-items:center;gap:8px;display:inline-flex}.proof-list span{color:var(--color-gold-600)}.evidence-guide{border-radius:var(--radius-xl);box-shadow:var(--shadow-md);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #b9c6c0e6;padding:32px;position:relative}.evidence-guide:after{content:"";filter:blur(13px);background:#123f3921;border-radius:50%;width:84px;height:24px;position:absolute;bottom:-12px;right:28px}.evidence-guide-topline{color:var(--color-gold-600);letter-spacing:.14em;justify-content:space-between;align-items:center;gap:16px;font-size:.68rem;font-weight:900;display:flex}.guide-status{color:var(--color-ink-600);letter-spacing:.04em;text-transform:none;align-items:center;gap:8px;display:inline-flex}.guide-status i{background:var(--color-pine-600);width:7px;height:7px;box-shadow:0 0 0 5px var(--color-mint-100);border-radius:50%}.evidence-guide h2{color:var(--color-ink-950);font-family:var(--font-display);letter-spacing:-.035em;margin:22px 0 10px;font-size:clamp(1.8rem,3vw,2.7rem);font-weight:600;line-height:1.3}.evidence-guide>p{color:var(--color-ink-600);margin:0}.evidence-axis-list{margin:26px 0 0;padding:0;list-style:none}.evidence-axis-list li{border-top:1px solid var(--color-border);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;padding:15px 0;display:grid}.axis-number{width:34px;height:34px;color:var(--color-pine-700);background:var(--color-mint-100);border-radius:50%;place-items:center;font-size:.7rem;font-weight:900;display:grid}.axis-copy{line-height:1.45;display:grid}.axis-copy strong{color:var(--color-ink-950);font-size:.94rem}.axis-copy small{color:var(--color-ink-600);margin-top:2px;font-size:.76rem}.safety-strip{border:1px solid var(--color-warning-200);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(90deg, var(--color-warning-50), #fffaeea3);grid-template-columns:42px minmax(0,1fr);gap:16px;margin-top:clamp(62px,8vw,104px);padding:22px 26px;display:grid;position:relative}.safety-icon{color:#fff;background:var(--color-gold-600);width:34px;height:34px;font-family:var(--font-display);border-radius:50%;place-items:center;font-size:1.1rem;font-style:italic;font-weight:700;display:grid}.safety-strip strong{color:var(--color-ink-950)}.safety-strip p{color:var(--color-ink-700);font-size:var(--text-sm);margin:3px 0 0;line-height:1.7}.home-section{padding:clamp(80px,10vw,126px) 0}.home-section-radar{border-top:1px solid var(--color-paper-200);background:var(--color-paper-100)}.section-heading-row{grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);align-items:end;gap:48px;display:grid}.radar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px;display:grid}.radar-card{border-radius:var(--radius-lg);min-height:292px;box-shadow:var(--shadow-sm);background:#ffffffdb;border:1px solid #b9c6c0d1;padding:26px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.radar-card:hover{border-color:var(--color-pine-600);box-shadow:var(--shadow-md);transform:translateY(-4px)}.radar-card:after{border:20px solid var(--color-mint-50);content:"";border-radius:50%;width:130px;height:130px;position:absolute;bottom:-48px;right:-32px}.radar-card-meta{z-index:1;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.radar-index{color:var(--color-ink-600);font-family:var(--font-display);font-size:.8rem;font-weight:700}.status-badge{border-radius:var(--radius-pill);color:var(--color-pine-700);background:var(--color-mint-100);padding:5px 10px;font-size:.67rem;font-weight:900}.radar-category{z-index:1;letter-spacing:.08em;text-transform:uppercase;margin:28px 0 5px;font-weight:900;position:relative;color:var(--color-gold-600)!important;font-size:.72rem!important}.radar-card h3{z-index:1;color:var(--color-ink-950);font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:1.55rem;font-weight:600;line-height:1.35;position:relative}.radar-card>p{z-index:1;color:var(--color-ink-600);margin:11px 0 0;font-size:.9rem;line-height:1.75;position:relative}.radar-progress{z-index:1;border-radius:var(--radius-pill);background:var(--color-paper-200);height:3px;position:absolute;bottom:24px;left:26px;right:26px;overflow:hidden}.radar-progress span{width:var(--progress);border-radius:inherit;background:linear-gradient(90deg, var(--color-pine-700), var(--color-gold-500));height:100%;display:block}.area-grid{border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:54px;display:grid}.area-card{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:#ffffff57;min-height:244px;padding:30px;transition:background .18s}.area-card:hover{background:var(--color-mint-50)}.area-card>span{color:var(--color-gold-600);font-family:var(--font-display);font-size:.85rem;font-weight:700}.area-card h3{color:var(--color-ink-950);font-family:var(--font-display);letter-spacing:-.025em;margin:34px 0 10px;font-size:1.55rem;font-weight:600;line-height:1.4}.area-card p{color:var(--color-ink-600);margin:0;font-size:.9rem}.process-section{background:linear-gradient(180deg, var(--color-mint-50), #edf5f147)}.process-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.15fr);gap:clamp(56px,9vw,120px);display:grid}.process-heading{align-self:start;position:sticky;top:124px}.process-heading .text-link{margin-top:28px}.process-list{counter-reset:research-step;margin:0;padding:0;list-style:none}.process-list li{border-top:1px solid var(--color-border-strong);grid-template-columns:58px minmax(0,1fr);gap:24px;padding:30px 0;display:grid}.process-list li:last-child{border-bottom:1px solid var(--color-border-strong)}.process-list>li>span{border:1px solid var(--color-border-strong);width:44px;height:44px;color:var(--color-gold-600);font-family:var(--font-display);background:#ffffff94;border-radius:50%;place-items:center;font-size:.8rem;font-weight:700;display:grid}.process-list h3{color:var(--color-ink-950);font-family:var(--font-display);margin:0;font-size:1.45rem;font-weight:600}.process-list p{color:var(--color-ink-600);margin:7px 0 0}.promise-section{color:#fff;background:var(--color-pine-800);padding:clamp(78px,10vw,124px) 0}.promise-grid{grid-template-columns:minmax(180px,.4fr) minmax(0,1fr);align-items:start;gap:48px;display:grid}.promise-section h2{max-width:820px;font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(2.35rem,5vw,4.9rem);font-weight:500;line-height:1.15}.promise-section p{color:#cfe1dc;max-width:760px;font-size:var(--text-lg);margin:28px 0 0}.promise-section .button{margin-top:32px}.document{width:min(860px,100% - 48px);margin:0 auto;padding:clamp(64px,8vw,104px) 0 110px}.document h1{color:var(--color-ink-950);font-family:var(--font-display);letter-spacing:-.045em;margin:0 0 32px;font-size:clamp(2.5rem,6vw,4.7rem);font-weight:600;line-height:1.18}.document h2{color:var(--color-ink-950);font-family:var(--font-display);margin:58px 0 16px;font-size:clamp(1.55rem,3vw,2.25rem);font-weight:600;line-height:1.4}.document h3{color:var(--color-ink-950);margin-top:36px}.document p,.document li{color:var(--color-ink-700)}.document a{color:var(--color-pine-700);font-weight:700}.document blockquote{border:1px solid var(--color-warning-200);border-radius:var(--radius-md);background:var(--color-warning-50);margin:32px 0;padding:22px 26px}.document blockquote p{color:var(--color-ink-900);font-family:var(--font-display);margin:0;font-size:1.15rem}.document table{border-collapse:collapse;width:100%;margin:28px 0;font-size:.9rem}.document th,.document td{border:1px solid var(--color-border);text-align:left;vertical-align:top;padding:12px 14px}.document th{background:var(--color-mint-50)}.document code{background:var(--color-paper-200);border-radius:5px;padding:.16em .38em}.root-selector{text-align:center;place-items:center;min-height:100vh;padding:32px;display:grid}.root-selector>div{max-width:680px}.site-footer{border-top:1px solid var(--color-border);background:#f0ede4;padding:68px 0 24px}.footer-grid{grid-template-columns:minmax(280px,1.3fr) minmax(150px,.45fr) minmax(240px,.75fr);gap:62px;display:grid}.brand-footer .brand-mark{border-radius:13px;width:38px;height:38px}.footer-brand>p{max-width:440px;color:var(--color-ink-600);margin:22px 0 0;font-size:.9rem}.footer-column{align-content:start;gap:14px;display:grid}.footer-column>strong{color:var(--color-ink-950);font-size:.82rem}.footer-column nav{gap:8px;display:grid}.footer-column a{width:fit-content;color:var(--color-ink-600);font-size:.86rem;text-decoration:none}.footer-column a:hover{color:var(--color-pine-700);text-decoration:underline}.footer-status p{color:var(--color-ink-700);align-items:flex-start;gap:9px;margin:0;font-size:.84rem;line-height:1.6;display:flex}.footer-status p span{background:var(--color-pine-600);width:8px;height:8px;box-shadow:0 0 0 5px var(--color-mint-100);border-radius:50%;flex:none;margin-top:.5em}.footer-status small{color:var(--color-ink-600);line-height:1.7}.footer-bottom{border-top:1px solid var(--color-border);color:var(--color-ink-600);justify-content:space-between;gap:24px;margin-top:56px;padding-top:20px;font-size:.76rem;display:flex}@media (width<=1040px){.header-inner{grid-template-columns:minmax(220px,1fr) auto}.primary-nav{display:none}.home-hero-grid{grid-template-columns:1fr}.home-hero-copy{max-width:820px}.evidence-guide{width:min(660px,100%)}.radar-grid,.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading-row{grid-template-columns:1fr;gap:20px}.section-intro{max-width:720px}}@media (width<=780px){html{scroll-padding-top:76px}.container{width:min(100% - 28px,1180px)}.header-inner{gap:12px;min-height:68px}.brand-mark{border-radius:12px;width:36px;height:36px}.brand-mark svg{width:26px;height:26px}.brand-copy small{display:none}.brand-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:168px;margin-top:0;font-size:.78rem;overflow:hidden}.language-switcher a{min-width:38px;padding:6px 8px}.home-hero{padding-top:62px}.home-hero:before{top:-250px;right:-300px}.home-title{font-size:clamp(2.8rem,14.5vw,4.6rem);line-height:1.03}.home-lead{margin-top:24px;font-size:1rem;line-height:1.85}.hero-actions{margin-top:28px;display:grid}.button{width:100%}.proof-list{gap:8px;margin-top:22px;display:grid}.evidence-guide{border-radius:25px;padding:24px 20px}.evidence-guide-topline{align-items:flex-start}.evidence-guide h2{margin-top:18px}.evidence-axis-list li{grid-template-columns:38px minmax(0,1fr);gap:10px}.safety-strip{border-radius:var(--radius-lg) var(--radius-lg) 0 0;grid-template-columns:34px minmax(0,1fr);margin-top:64px;padding:18px 16px}.safety-icon{width:30px;height:30px}.home-section{padding:78px 0}.radar-grid{grid-template-columns:1fr;margin-top:34px}.radar-card{min-height:270px}.area-grid{grid-template-columns:1fr;margin-top:38px}.area-card{min-height:0;padding:24px 22px}.area-card h3{margin-top:22px}.process-layout{grid-template-columns:1fr;gap:34px}.process-heading{position:static}.process-list li{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:24px 0}.process-list>li>span{width:38px;height:38px}.promise-grid{grid-template-columns:1fr;gap:22px}.promise-section h2{font-size:clamp(2.25rem,10vw,3.5rem)}.footer-grid{grid-template-columns:1fr;gap:38px}.footer-bottom{flex-direction:column;gap:8px;margin-top:42px}.document{width:min(100% - 28px,860px);padding-top:58px}.document table{max-width:100%;display:block;overflow-x:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
