:root{--bg: #faf8f3;--bg-card: #fffdf8;--panel: #f3efe6;--ink: #26221c;--body: #34302a;--lead: #4a453c;--muted: #6f675a;--faint: #a49a86;--accent: #47598c;--accent-deep: #354571;--accent-soft: #ecedf4;--line: #e6dfd1;--radius: 7px;--serif: "Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #17171b;--bg-card: #1f1e23;--panel: #24232a;--ink: #e9e4d9;--body: #d6d0c4;--lead: #b7b1a4;--muted: #a39a8b;--faint: #7a7264;--accent: #9aabd6;--accent-deep: #b3c0e2;--accent-soft: #23262f;--line: #2f2e37}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);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='0.85' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.4 0 0 0 0 0.32 0 0 0 0.025 0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");color:var(--body);font-family:var(--serif);line-height:1.95;font-size:16px;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-deep);text-decoration:underline}.site-header{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 90%,transparent);position:sticky;top:0;z-index:10;backdrop-filter:blur(6px)}.site-header .inner{max-width:760px;margin:0 auto;padding:15px 24px;display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.brand{font-family:var(--serif);font-size:19px;font-weight:700;letter-spacing:.08em;color:var(--ink);white-space:nowrap}.brand:hover{text-decoration:none;color:var(--accent)}.brand .en{font-family:var(--sans);font-size:10px;color:var(--faint);letter-spacing:.18em;margin-left:9px}nav.global{display:flex;gap:18px;font-family:var(--sans);font-size:13.5px;flex-wrap:wrap}nav.global a{color:var(--muted);white-space:nowrap}nav.global a:hover{color:var(--accent);text-decoration:none}.site-footer{margin-top:72px;border-top:1px solid var(--line);padding:30px 24px 52px}.site-footer .inner{max-width:760px;margin:0 auto}.site-footer nav{display:flex;gap:16px;font-family:var(--sans);font-size:12.5px;margin-bottom:12px}.site-footer p{font-family:var(--sans);font-size:12px;color:var(--muted);line-height:2;margin:3px 0}.sheet{max-width:720px;margin:0 auto 40px;padding:0 24px}.file-head{padding:46px 0 22px;border-bottom:3px double var(--line)}.file-head .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--sans);font-size:12px;letter-spacing:.06em;color:var(--faint)}.file-head .row .label{color:var(--accent)}.file-head h1{font-family:var(--serif);font-weight:700;font-size:clamp(27px,5vw,40px);line-height:1.5;letter-spacing:.03em;color:var(--ink);margin:16px 0 0;text-wrap:pretty}.file-head .tagline{color:var(--muted);font-size:14.5px;margin:12px 0 0;line-height:1.9}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:18px 0 0}.meta-grid .cell{padding:11px 0;border-bottom:1px dashed var(--line)}.meta-grid .k{font-family:var(--sans);font-size:11px;letter-spacing:.1em;color:var(--faint);display:block;margin-bottom:3px}.meta-grid .v{font-family:var(--sans);font-size:14px;color:var(--ink)}@media(max-width:520px){.meta-grid{grid-template-columns:1fr;gap:0}}.phasebar{margin:22px 0 0;padding:16px 0 2px}.phasebar .cap{font-family:var(--sans);font-size:11px;letter-spacing:.12em;color:var(--faint);margin-bottom:14px}.phasebar .steps{display:flex;align-items:flex-start}.phasebar .step{flex:1;text-align:center}.phasebar .joint{flex:.6;height:1px;background:var(--line);margin-top:5px}.phasebar .joint.done{background:var(--accent)}.phasebar .dot{width:7px;height:7px;border-radius:50%;background:var(--faint);margin:1px auto 8px}.phasebar .step.now .dot{width:11px;height:11px;background:var(--accent);margin-top:-1px;margin-bottom:6px}.phasebar .step.todo .dot{background:transparent;border:1.5px solid var(--faint)}.phasebar .lbl{font-family:var(--sans);font-size:10px;color:var(--faint);line-height:1.5}.phasebar .step.now .lbl{font-weight:700;color:var(--accent)}.phasebar .step.todo .lbl{color:var(--muted)}.body-area{padding:32px 0 0}.plain-head{padding:44px 0 20px;border-bottom:3px double var(--line)}.plain-head h1{font-family:var(--serif);font-weight:700;font-size:clamp(24px,4.4vw,33px);line-height:1.6;margin:12px 0;color:var(--ink)}.plain-head .meta{font-family:var(--sans);font-size:12px;color:var(--faint);display:flex;gap:14px;flex-wrap:wrap}.prose{font-size:16.5px;color:var(--body)}.prose p{margin:0 0 1.9em;line-height:1.98}.prose h2{font-family:var(--serif);font-weight:700;font-size:21px;color:var(--ink);margin:2.5em 0 1.1em;padding-left:15px;border-left:3px solid var(--accent);line-height:1.6}.prose h3{font-family:var(--sans);font-weight:700;font-size:16px;margin:2.1em 0 1em;color:var(--ink)}.prose blockquote{margin:1.9em 0;padding:2px 0 2px 20px;border-left:2px solid var(--accent);color:var(--muted);font-style:normal}.prose blockquote p{margin:0}.prose hr{border:none;margin:3em auto;text-align:center}.prose hr:after{content:"・　・　・";color:var(--faint);font-size:13px;letter-spacing:.3em}.prose strong{font-weight:700;color:var(--ink)}.prose ul,.prose ol{padding-left:24px;margin:0 0 1.9em}.prose li{margin:6px 0;line-height:1.95}.lead{font-family:var(--serif);font-weight:500;font-size:16.5px;line-height:2;color:var(--lead);margin:0 0 38px}.section-cap{font-family:var(--sans);font-size:12.5px;letter-spacing:.1em;color:var(--muted);padding:30px 4px 12px;margin-top:6px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline}.section-cap .count{color:var(--faint);font-size:11.5px}.ledger-item{display:block;padding:20px 14px;border-bottom:1px solid var(--line);border-left:2px solid transparent;color:inherit;transition:border-color .18s,background .18s}.ledger-item:hover{border-left-color:var(--accent);background:color-mix(in srgb,var(--bg-card) 60%,transparent);text-decoration:none}.ledger-item .top{display:flex;gap:13px;align-items:baseline;font-family:var(--sans);font-size:12px;color:var(--faint);flex-wrap:wrap}.ledger-item .top .no{color:var(--accent);font-weight:700;letter-spacing:.04em}.ledger-item .top .anken{color:var(--muted)}.ledger-item h3{font-family:var(--serif);font-weight:700;font-size:19px;line-height:1.65;color:var(--ink);margin:7px 0 5px}.ledger-item:hover h3{color:var(--accent)}.ledger-item .desc{font-family:var(--sans);font-size:13.5px;color:var(--muted);line-height:1.9;margin:0}.badge{display:inline-block;padding:1px 9px;border-radius:4px;font-size:11px;font-family:var(--sans);letter-spacing:.04em;background:var(--accent-soft);color:var(--accent)}.badge.taiken{background:var(--accent-soft);color:var(--accent)}.badge.draft{background:transparent;border:1px dashed var(--line);color:var(--faint)}.fiction-note{margin:42px 0 0;padding:15px 18px;background:var(--panel);border-radius:var(--radius);font-family:var(--sans);font-size:12.5px;color:var(--muted);line-height:1.85}.fiction-note .cap{font-family:var(--sans);font-size:11px;letter-spacing:.12em;color:var(--faint);display:block;margin-bottom:5px}.cta-card{margin:38px 0 0;padding:24px;background:var(--bg-card);border:1px solid var(--line);border-radius:12px}.cta-card h4{margin:0 0 8px;font-size:16px;font-family:var(--sans);font-weight:700;color:var(--ink)}.cta-card p{margin:0 0 15px;font-size:13.5px;color:var(--muted);font-family:var(--sans);line-height:1.85}.btn{display:inline-block;padding:11px 22px;border-radius:var(--radius);background:var(--accent);color:#fff;font-family:var(--sans);font-size:14px;letter-spacing:.05em;border:1px solid var(--accent);cursor:pointer}.btn:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff;text-decoration:none}.btn.ghost{background:transparent;color:var(--accent)}.btn.ghost:hover{background:transparent;color:var(--accent-deep);border-color:var(--accent-deep)}@media(prefers-color-scheme:dark){.btn,.btn:hover{color:#16161b}}.quiz-box{background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:32px 28px;margin:0 0 8px}.quiz-progress{font-family:var(--sans);font-size:12px;color:var(--faint);letter-spacing:.1em;margin-bottom:16px}.quiz-bar{height:3px;background:var(--line);border-radius:2px;margin-bottom:26px;overflow:hidden}.quiz-bar>div{height:100%;background:var(--accent);transition:width .25s ease}.quiz-q{font-family:var(--serif);font-size:18.5px;font-weight:700;line-height:1.8;margin:0 0 24px;min-height:3.4em;color:var(--ink)}.quiz-choices{display:flex;flex-direction:column;gap:12px}.quiz-choices button{text-align:left;padding:15px 18px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--body);font-family:var(--serif);font-size:15px;line-height:1.7;cursor:pointer;transition:border-color .15s,background .15s}.quiz-choices button:hover{border-color:var(--accent);background:var(--accent-soft)}.quiz-back{display:inline-block;margin-top:20px;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:12.5px;color:var(--faint);padding:4px 0}.quiz-back:hover{color:var(--accent);text-decoration:underline}.quiz-back:disabled{visibility:hidden}.quiz-box.result-type{padding:40px clamp(24px,8%,60px) 34px}.result-type{text-align:center}.result-type .emblem{margin:0 auto 6px;width:124px;height:124px}.result-type .code{font-family:var(--sans);font-size:11px;letter-spacing:.26em;color:var(--faint)}.result-type h2{font-family:var(--serif);font-weight:700;font-size:clamp(26px,5vw,34px);margin:8px 0 6px;letter-spacing:.04em;color:var(--ink)}.result-type .catch{color:var(--muted);font-size:14.5px;margin-bottom:22px}.result-block{text-align:left;margin:24px 0}.result-block+.result-block{border-top:1px dashed var(--line);padding-top:22px}.result-block h4{font-family:var(--sans);font-size:12.5px;letter-spacing:.08em;color:var(--accent);margin:0 0 10px;font-weight:700}.result-block p,.result-block li{font-size:14.5px;color:var(--body);line-height:2}.result-block ul{margin:0;padding-left:20px}.axis-meter{display:flex;align-items:center;gap:10px;font-family:var(--sans);font-size:11.5px;color:var(--faint);margin:8px 0}.axis-meter .track{flex:1;height:5px;border-radius:3px;background:var(--line);position:relative}.axis-meter .track>i{position:absolute;top:-3.5px;width:12px;height:12px;border-radius:50%;background:var(--accent);transform:translate(-50%)}.share-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:28px 0 6px}
