@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&family=Space+Mono:wght@400;700&display=swap');
:root{--paper:#edf0e9;--ink:#193b32;--muted:#66776c;--line:#b7c5b9;--acid:#d5f36a;--white:#f9faf4}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif}.grid-bg{position:fixed;inset:0;z-index:-2;background-image:linear-gradient(#244d3310 1px,transparent 1px),linear-gradient(90deg,#244d3310 1px,transparent 1px);background-size:32px 32px}.grid-bg:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,transparent,#edf0e9b8)}.scanline{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--acid);z-index:5}header{max-width:1240px;margin:auto;padding:30px 36px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font-weight:800;letter-spacing:.07em;font-size:17px}.brand-icon{font-size:40px;line-height:1}.brand small{display:block;font-family:'Space Mono',monospace;font-size:9px;letter-spacing:.14em;margin-top:4px}.status{font-size:11px;letter-spacing:.1em;display:flex;align-items:center;gap:8px}.status i{width:7px;height:7px;background:#58863c;border-radius:50%;box-shadow:0 0 0 4px #58863c15}main{max-width:1120px;margin:20px auto 60px;padding:0 30px;min-height:70vh}.eyebrow,.mono{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.12em}.eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:25px}.eyebrow:before{content:'';width:25px;height:2px;background:var(--ink)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding:40px 0 35px}h1{font-size:clamp(40px,5.1vw,65px);font-weight:900;letter-spacing:-.06em;line-height:1.35;margin:0 0 22px}h1 em{font-style:normal;position:relative;white-space:nowrap}h1 em:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:13px;background:var(--acid);z-index:-1}.lead{font-size:16px;line-height:2;letter-spacing:.03em}.muted{color:var(--muted);font-size:12px;line-height:1.9}.primary,.secondary,.choice{font:inherit;cursor:pointer;border:1px solid var(--ink);transition:background .15s,transform .15s}.primary{background:var(--ink);color:var(--white);padding:20px 26px;text-align:left;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:35px;width:100%;margin-top:27px}.primary:hover{background:#2c5345;transform:translateY(-2px)}.primary span{font-size:23px;color:var(--acid)}.meta-row{display:flex;gap:22px;font-size:11px;margin-top:15px;color:var(--muted)}.instrument{position:relative;border:1px solid var(--ink);background:#f6f8efbd;padding:24px;box-shadow:9px 9px 0 #193b320b;transform:rotate(2deg)}.instrument:before,.instrument:after{position:absolute;content:'+';font:16px monospace;background:var(--paper);padding:3px;top:-12px;left:-9px}.instrument:after{top:auto;left:auto;bottom:-12px;right:-9px}.instrument-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}.label{background:var(--acid);padding:5px 8px;font-size:10px;font-weight:700}.people{display:grid;grid-template-columns:repeat(10,1fr);gap:9px 7px;margin:25px 5px}.person{height:25px;position:relative;opacity:.18}.person:before{content:'';position:absolute;left:calc(50% - 4px);top:0;width:8px;height:8px;background:var(--ink);border-radius:50%}.person:after{content:'';position:absolute;left:calc(50% - 7px);top:10px;width:14px;height:15px;background:var(--ink);border-radius:5px 5px 1px 1px}.person.lit{opacity:1}.readout{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding-top:18px}.readout strong{font:700 65px/.95 'Space Mono',monospace;letter-spacing:-.07em}.readout strong small{font-size:20px}.readout p{font-size:11px;line-height:1.8;margin:0}.demo{font-size:10px;color:var(--muted);margin-top:18px}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px}.strip div{padding:22px;border-right:1px solid var(--line)}.strip div:last-child{border:0}.strip b{font-size:13px;display:block;margin:8px 0}.strip p{font-size:11px;color:var(--muted);margin:0;line-height:1.8}footer{max-width:1240px;margin:auto;padding:20px 36px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font:9px 'Space Mono',monospace;color:var(--muted);gap:20px}.test{max-width:720px;margin:35px auto}.test-head{display:flex;justify-content:space-between;margin-bottom:12px}.progress{height:4px;background:#193b321a;margin-bottom:35px}.progress div{height:100%;background:var(--ink);transition:width .3s}.panel{background:var(--white);border:1px solid var(--ink);padding:32px;position:relative}.panel h2{font-size:clamp(24px,4vw,33px);line-height:1.6;letter-spacing:-.03em;margin:18px 0 25px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{background:transparent;padding:19px 14px;text-align:center;font-weight:700}.choice:hover{background:#e7eddc}.choice.selected{background:var(--ink);color:var(--white)}.step-label{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--muted);margin-top:28px}.prediction{border-top:1px dashed var(--line);margin-top:27px;padding-top:3px}.range-value{font:700 65px 'Space Mono',monospace;text-align:center;margin:10px 0}.range-value small{font:14px 'Noto Sans JP',sans-serif;margin-left:5px}input[type=range]{width:100%;accent-color:var(--ink);cursor:pointer;height:25px}.range-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.primary:disabled{opacity:.35;cursor:not-allowed;transform:none}.reveal{background:var(--ink);color:var(--paper);padding:24px;margin-top:24px}.reveal .muted{color:#c2d0bf}.compare{display:flex;justify-content:space-between;gap:10px}.compare strong{font:700 38px 'Space Mono',monospace;display:block;color:var(--acid)}.compare small{font-size:11px}.secondary{background:transparent;color:var(--ink);padding:15px 20px;width:100%;margin-top:12px}.secondary:hover{background:#dfe7d5}.result{max-width:720px;margin:30px auto}.report{background:var(--white);border:1px solid var(--ink);padding:36px;position:relative}.report:after{content:'検査完了';position:absolute;right:24px;top:85px;border:2px solid #6b845a;color:#6b845a;padding:8px;font-size:14px;letter-spacing:.2em;transform:rotate(-12deg)}.report h2{font-size:25px;line-height:1.6;margin:30px 0 8px}.score{font:700 100px/1.2 'Space Mono',monospace;letter-spacing:-.08em}.score small{font:700 18px 'Noto Sans JP',sans-serif;letter-spacing:0;margin-left:10px}.verdict{background:var(--acid);display:inline-block;padding:7px 12px;font-weight:700;margin:10px 0 20px}.report-table{width:100%;border-collapse:collapse;font-size:11px;margin-top:20px}.report-table td,.report-table th{padding:13px 5px;border-bottom:1px solid var(--line);text-align:right}.report-table td:first-child,.report-table th:first-child{text-align:left}.toast{font-size:12px;min-height:24px;text-align:center;margin-top:12px}.back{border:0;background:none;font:inherit;font-size:11px;color:var(--muted);cursor:pointer;margin-top:20px;text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #78922b;outline-offset:4px}@media(max-width:700px){header{padding:24px 20px}.brand{font-size:14px}.brand-icon{font-size:32px}.status{font-size:9px}main{padding:0 20px;margin-top:0}.hero{grid-template-columns:1fr;gap:35px;padding-top:25px}h1{font-size:46px}.hero .instrument{max-width:400px;width:94%;margin:0 auto}.strip{margin-top:30px;grid-template-columns:1fr}.strip div{border-right:0;border-bottom:1px solid var(--line);padding:16px;display:grid;grid-template-columns:30px 1fr;column-gap:10px}.strip b{margin:0 0 5px}.strip p{grid-column:2}.panel,.report{padding:23px}.test{margin-top:20px}.score{font-size:85px}.report:after{right:18px;top:67px;font-size:11px}footer{padding:20px;flex-direction:column;font-size:8px}.people{gap:7px}.lead{font-size:14px}.report-table{font-size:10px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
 .reception{max-width:760px;margin:20px auto}.terminal-scene{height:250px;position:relative;overflow:hidden;border:1px solid var(--ink);border-bottom:0;background:linear-gradient(90deg,#cad4c7,#e3e9dd 45%,#c6d0c3)}.terminal-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent 0,transparent 3px,#193b3207 4px)}.door{position:absolute;width:180px;height:210px;border:7px solid #98aa9b;border-bottom:0;left:calc(50% - 90px);bottom:0;background:#e6ecdf;box-shadow:8px 0 0 #193b3215,inset 0 0 25px #193b3215}.door-light{width:70px;height:5px;background:var(--acid);margin:-17px auto 17px;box-shadow:0 0 20px #d5f36a}.door>span{font:9px 'Space Mono',monospace;display:block;text-align:center;padding:12px 0;border-bottom:1px solid #98aa9b}.door-seam{width:1px;height:100%;background:#98aa9b;position:absolute;left:50%}.door-window{border:4px solid #98aa9b;background:#193b32;width:64px;height:70px;position:absolute;left:calc(50% - 32px);top:65px;color:var(--acid);display:grid;place-items:center;font-size:35px}.wall-sign{position:absolute;left:9%;top:65px;font:9px/1.8 'Space Mono',monospace;letter-spacing:.12em;border-left:2px solid var(--ink);padding-left:12px}.floor-grid{position:absolute;bottom:-46px;left:-50%;width:200%;height:80px;transform:perspective(100px) rotateX(45deg);background-image:linear-gradient(#193b3220 1px,transparent 1px),linear-gradient(90deg,#193b3220 1px,transparent 1px);background-size:40px 20px}.dialog{position:relative;background:var(--white);border:1px solid var(--ink);padding:25px 30px 28px;box-shadow:6px 6px 0 #193b3210}.dialog-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;border-bottom:1px solid var(--line);padding-bottom:15px}.dialog-top i{display:inline-block;width:6px;height:6px;background:#6d954b;margin-right:8px}.dialog h2{font-size:clamp(24px,4vw,31px);line-height:1.6;margin:23px 0 14px;letter-spacing:-.03em}.dialog p{font-size:13px;line-height:2;color:var(--muted);min-height:54px}.dialog .primary{margin-top:20px;padding:15px 22px}.reception>.back{display:block;margin:22px auto}@media(max-width:700px){.terminal-scene{height:210px}.door{height:175px;width:150px;left:calc(50% - 75px)}.wall-sign{left:4%;font-size:7px;top:35px;padding-left:7px}.dialog{padding:22px}.dialog p{font-size:12px;min-height:72px}.door-window{top:55px;height:60px}}
html{overflow-anchor:none;scroll-behavior:auto}.dialog h2,.dialog p{position:relative}.type-space{visibility:hidden;display:block}.type-ink{position:absolute;inset:0;white-space:pre-line}.transmitting .type-ink:after{content:'▌';font-weight:400;color:#789e36;animation:terminal-cursor .65s steps(1) infinite}.transmitting .dialog-top .mono{color:#6d954b}.transmitting .dialog-top i{box-shadow:0 0 8px #95bd55;animation:terminal-cursor .65s steps(1) infinite}@keyframes terminal-cursor{50%{opacity:.15}}@media(prefers-reduced-motion:reduce){.transmitting .type-ink:after,.transmitting .dialog-top i{animation:none}}
.measurement{background:#f4f7ee;border-color:#547864;box-shadow:7px 7px 0 #193b320c}.measurement:before,.measurement:after{position:absolute;content:'';width:16px;height:16px;pointer-events:none;border-color:var(--ink)}.measurement:before{top:-2px;left:-2px;border-top:3px solid;border-left:3px solid}.measurement:after{bottom:-2px;right:-2px;border-bottom:3px solid;border-right:3px solid}.module-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px;gap:10px}.module-head .mono{font-size:10px}.signal{display:flex;align-items:center;gap:7px;font-size:10px;color:#517344}.signal i{width:5px;height:5px;border-radius:50%;background:#789e36;box-shadow:0 0 8px #a0ca62}.specimen-id{display:flex;justify-content:space-between;align-items:center;padding:21px 0 18px}.specimen-id strong{font:700 clamp(30px,6vw,42px)/1 'Space Mono',monospace;letter-spacing:-.06em}.specimen-id>span{text-align:right;font-size:9px;line-height:1.7;color:var(--muted)}.question-display{position:relative;overflow:hidden;background:#102d26;color:#edf7e7;padding:22px 24px;border:1px solid #5e846b;box-shadow:inset 0 0 35px #040f0b80;background-image:linear-gradient(#91bf6a08 1px,transparent 1px),linear-gradient(90deg,#91bf6a08 1px,transparent 1px);background-size:20px 20px}.question-display:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent,#c9f67d12,transparent);height:60%;animation:query-scan 4s linear infinite}.target-label{font-size:10px;letter-spacing:.07em;color:#bfd69f;border-left:2px solid var(--acid);padding-left:10px}.question-display h2{margin:22px 0 27px;position:relative;z-index:1;text-shadow:0 0 16px #c8ee8035;font-size:clamp(23px,4vw,31px);min-height:2em}.scan-caption{display:flex;justify-content:space-between;font:8px 'Space Mono',monospace;letter-spacing:.12em;color:#9db58d;border-top:1px solid #b4d09c26;padding-top:13px}.scan-caption b{color:var(--acid);animation:terminal-cursor .9s steps(1) infinite}.measurement .step-label{font-size:10px;letter-spacing:.05em}.measurement .choice{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;font-size:13px;background:#f9fbf4;border-color:#a1b59f;padding:20px 14px}.option-code{font:10px 'Space Mono',monospace;color:#6e8463;white-space:nowrap}.option-dot{flex-shrink:0;width:7px;height:7px;border:1px solid #8a9e7b}.measurement .choice.selected{background:var(--ink);border-color:var(--ink);color:#f4f9eb;box-shadow:0 0 0 2px #c9e99850}.choice.selected .option-code{color:#c6e29b}.choice.selected .option-dot{background:var(--acid);border-color:var(--acid);box-shadow:0 0 9px #d5f36a60}.measurement .range-value{color:var(--ink);text-shadow:2px 2px 0 #c8dfaa;letter-spacing:-.05em}.measurement .prediction{border-top:1px solid var(--line)}.analysis-label{font-size:9px;color:#c6e29b;padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid #c6e29b30}.measurement .reveal{border:1px solid #72925e;animation:analysis-in .3s ease-out}@keyframes query-scan{from{transform:translateY(-150%)}to{transform:translateY(250%)}}@keyframes analysis-in{from{opacity:0}to{opacity:1}}@media(max-width:700px){.question-display{padding:20px 17px}.module-head .mono{font-size:8px}.measurement .choices{gap:9px}.measurement .choice{font-size:12px;flex-wrap:wrap;padding:17px 12px}.option-code{width:100%;font-size:9px}.measurement .step-label{font-size:10px;line-height:1.8}.question-display h2{margin:20px 0 25px}}@media(prefers-reduced-motion:reduce){.question-display:after,.scan-caption b,.measurement .reveal{animation:none}}
.sound-toggle{margin-left:auto;margin-right:22px;font:10px 'Space Mono',monospace;letter-spacing:.06em;background:#f4f7ee;border:1px solid #9ab092;color:var(--ink);padding:10px 12px;cursor:pointer;white-space:nowrap}.sound-toggle[aria-pressed=true]{background:var(--ink);color:var(--acid);border-color:var(--ink)}@media(max-width:700px){header{flex-wrap:wrap;gap:16px}.sound-toggle{margin-right:0;font-size:9px;padding:9px}.status{display:none}.brand{letter-spacing:.02em;font-size:12px}.brand small{font-size:7px}.brand-icon{font-size:27px}}
#transition-noise{position:fixed;inset:0;z-index:50;pointer-events:none;opacity:0;visibility:hidden;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.35' d='M0 0h180v180H0z'/%3E%3C/svg%3E"),repeating-linear-gradient(0deg,#a1bd8e18 0px,#a1bd8e18 1px,transparent 1px,transparent 4px);background-color:#17372d08}#transition-noise:after{content:'';position:absolute;left:0;right:0;top:35%;height:3px;background:#afd07b55;box-shadow:0 32px 0 #7da78330,0 -50px 0 #bfd6a230,0 120px 0 #234c3d25}#transition-noise.active{visibility:visible;animation:screen-noise .7s ease-out forwards}@keyframes screen-noise{0%{opacity:0;transform:translateX(-3px)}12%{opacity:.85;transform:translateX(2px)}38%{opacity:.75;transform:translateX(-1px)}65%{opacity:.55;transform:translateX(1px)}100%{opacity:0;transform:none}}@media(prefers-reduced-motion:reduce){#transition-noise.active{display:none;animation:none}}

#transition-noise:before{content:"SIGNAL SYNC / 接続調整中";position:absolute;top:20px;right:20px;font:10px "Space Mono",monospace;letter-spacing:.15em;color:#d5f36a;background:#193b32e6;border:1px solid #afce8060;padding:10px 14px}#transition-noise.active:after{animation:transition-sweep .7s ease-out forwards}@keyframes transition-sweep{from{top:8%;opacity:.8}to{top:95%;opacity:0}}@media(prefers-reduced-motion:reduce){#transition-noise.active:after{animation:none}}
.report-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 16px;font:10px 'Space Mono','Noto Sans JP',monospace;color:var(--muted)}.report-controls>span:before{content:'■';color:#789e36;margin-right:8px}.report-controls button{font:inherit;color:var(--ink);background:#f4f7ee;border:1px solid var(--line);padding:9px 12px;cursor:pointer;white-space:nowrap}.report-stage{opacity:0;visibility:hidden;transition:opacity .35s ease-out;pointer-events:none}.report-stage.report-visible{opacity:1;visibility:visible;pointer-events:auto}.report-analyzing:after{opacity:0}.report .score{font-variant-numeric:tabular-nums}.report-stage.report-visible:not(tr){animation:report-materialize .4s ease-out}.report-table tr.report-visible{transition:opacity .3s ease-out;background:linear-gradient(90deg,#d5f36a14,transparent)}@keyframes report-materialize{from{filter:blur(3px);opacity:0}to{filter:blur(0);opacity:1}}@media(prefers-reduced-motion:reduce){.report-stage,.report-stage.report-visible{animation:none;transition:none}}
.report.laser-report .report-stage{position:relative;opacity:1;visibility:visible;clip-path:inset(0 0 100% 0);animation:none!important;transition:none;pointer-events:auto}.report.laser-report .report-stage.report-visible{clip-path:none}.report-laser{position:absolute;left:10px;right:10px;top:0;height:2px;z-index:4;pointer-events:none;background:#e5ffb5;box-shadow:0 0 3px 1px #deffa3,0 0 12px 3px #90cf51b0,0 -5px 25px 6px #8dbb4d40}.report-laser:before,.report-laser:after{content:'';position:absolute;top:-3px;width:5px;height:8px;background:#c8f778;box-shadow:0 0 10px #9bd454}.report-laser:before{left:-5px}.report-laser:after{right:-5px}.report-analyzing{box-shadow:inset 0 0 35px #abd17f0d}.laser-report .score{color:#234d35;text-shadow:0 0 16px #a4c76b30}@media(prefers-reduced-motion:reduce){.report-laser{display:none}}
.report-scan-text{display:block;min-height:1.9em}.report.horizontal-scan .report-stage{clip-path:inset(0 0 0 100%)}.horizontal-scan .report-laser{left:auto;right:auto;width:2px;height:30px;top:0;background:#ecffc9;box-shadow:0 0 4px 1px #d5f796,0 0 13px 3px #94c95090,8px 0 25px 5px #a4d76525}.horizontal-scan .report-laser:before,.horizontal-scan .report-laser:after{width:8px;height:3px;left:-3px;right:auto;box-shadow:0 0 7px #a1d65b}.horizontal-scan .report-laser:before{top:-2px}.horizontal-scan .report-laser:after{top:auto;bottom:-2px}
.report.horizontal-scan .report-stage{clip-path:inset(0 100% 0 0)}
