:root,:root[data-theme=light]{color-scheme:light;--bg: #f4f7f9;--surface: #ffffff;--surface-alt: #eef3f6;--text: #16202a;--dim: #5b6b7a;--border: #dde5ea;--accent: #0e7c7b;--accent-strong: #12365e;--ring: rgba(14, 124, 123, .2);--ink: var(--text);--muted: var(--dim);--line: var(--border);--navy: #12365e}:root[data-theme=dark]{color-scheme:dark;--bg: #0e141a;--surface: #16202a;--surface-alt: #1c2a36;--text: #eef3f6;--dim: #9fb0be;--border: #2a3a47;--accent: #2dd4bf;--accent-strong: #7dd3fc;--ring: rgba(45, 212, 191, .28);--ink: var(--text);--muted: var(--dim);--line: var(--border);--navy: #12365e}:root[data-theme=contrast]{color-scheme:light;--bg: #ffffff;--surface: #ffffff;--surface-alt: #eeeeee;--text: #000000;--dim: #333333;--border: #707070;--accent: #005f5e;--accent-strong: #0b2a4a;--ring: rgba(0, 95, 94, .35);--ink: var(--text);--muted: var(--dim);--line: var(--border);--navy: #12365e}html[data-font-size=small]{font-size:14px}html[data-font-size=large]{font-size:18px}html[data-font-size=xlarge]{font-size:21px}html[data-font-size=xxlarge]{font-size:24px}html[data-font-size=large] :is(input,button,select,textarea),html[data-font-size=xlarge] :is(input,button,select,textarea),html[data-font-size=xxlarge] :is(input,button,select,textarea){font-size:1rem}html[data-font-size=large] :is(input,select,textarea),html[data-font-size=xlarge] :is(input,select,textarea),html[data-font-size=xxlarge] :is(input,select,textarea){min-height:48px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;margin:0;line-height:1.75;color:var(--text);background:var(--bg);overflow-wrap:break-word}img,svg,video{max-width:100%;height:auto}.wrap{max-width:48rem;margin:0 auto;padding:0 1rem}main{padding-top:.5rem;padding-bottom:2rem}a{color:var(--accent)}input,button,select,textarea{font-size:16px;min-height:44px}button{border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:0 1rem;cursor:pointer}button:hover{background:var(--surface-alt)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}h1{font-size:1.45rem;line-height:1.45;letter-spacing:-.01em;margin:.6em 0 .5em;color:var(--accent-strong)}h2{font-size:1.15rem;margin:1.4em 0 .4em;color:var(--accent-strong)}h3{font-size:1.02rem;margin:1.1em 0 .3em;color:var(--accent-strong)}:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3{color:var(--text)}.search-terms{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.search-terms[hidden]{display:none}.term-chip{display:inline-flex;align-items:center;gap:.3rem;border:1.5px solid var(--border);border-radius:999px;padding:.15rem .4rem .15rem .8rem;background:var(--surface-alt);color:var(--text);font-weight:600}.term-chip .chip-check{color:#0e7c7b;font-weight:800}:root[data-theme=dark] .term-chip .chip-check{color:#2dd4bf}:root[data-theme=contrast] .term-chip .chip-check{color:#005f5e}@keyframes chipFlash{0%{background:#0e7c7b;color:#fff}}.term-chip.is-new{animation:chipFlash 1.4s ease-out}.term-remove{min-height:36px;min-width:36px;border:0;border-radius:999px;background:var(--surface-alt);color:var(--text);cursor:pointer}.add-term-btn{flex:none;border:1.5px solid var(--accent);border-radius:999px;background:var(--surface);color:var(--accent);font-weight:700;font-size:.85rem;padding:0 .8rem;min-height:36px;cursor:pointer}.add-term-btn.is-ready{background:#0e7c7b;border-color:#0e7c7b;color:#fff;box-shadow:0 4px 16px #0e7c7b59}.add-term-btn:disabled{opacity:.45;cursor:default;box-shadow:none}:root[data-theme=dark] body{color:var(--dim)}:root[data-theme=dark] .meta-small{color:#7e93a5}dt{font-weight:700;margin-top:.8em}dd{margin:.2em 0 0}:root[data-banner-seen="1"] .site-banner{display:none}.site-banner{background:#12365e;color:#fff}.site-banner .wrap{position:relative;padding-top:.5rem;padding-bottom:.5rem;padding-right:3rem}.site-banner p{margin:0;font-size:.8rem;line-height:1.6;text-align:center}.banner-close{position:absolute;top:50%;right:.4rem;transform:translateY(-50%);width:36px;height:36px;min-height:36px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;font-size:.95rem;line-height:1}.settings-bar{background:var(--surface);border-bottom:1px solid var(--border)}.settings-bar-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .8rem;padding-top:.22rem;padding-bottom:.22rem}.settings-summary{font-size:.74rem;font-weight:500;color:var(--dim);margin-right:auto}.settings-open-btn{border:1px solid var(--accent);border-radius:999px;background:var(--surface);color:var(--accent);font-size:.76rem;font-weight:600;padding:0 .7rem;min-height:34px;box-shadow:0 1px 2px #12365e14}.settings-open-btn:hover{background:var(--surface)}.settings-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center}.settings-modal[hidden]{display:none}.settings-backdrop{position:absolute;inset:0;background:#00000073}.settings-sheet{position:relative;background:var(--surface);color:var(--text);width:100%;max-width:42rem;max-height:88vh;overflow:auto;border-radius:24px 24px 0 0;padding:1.2rem 1rem 1.4rem}@media(min-width:640px){.settings-modal{align-items:center}.settings-sheet{border-radius:24px}}.settings-sheet h2{margin-top:0}.settings-choices{display:flex;flex-wrap:wrap;gap:.5rem}.settings-choice{flex:1;min-width:6rem;padding:.7rem 1rem;font-size:.95rem;font-weight:700;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text)}.settings-choice.is-selected{background:#12365e;border-color:#12365e;color:#fff}.settings-choice.is-selected:after{content:"（選択中）"}.settings-choice[data-font-choice=small]{font-size:13px}.settings-choice[data-font-choice=standard]{font-size:15px}.settings-choice[data-font-choice=large]{font-size:17px}.settings-choice[data-font-choice=xlarge]{font-size:20px}.settings-choice[data-font-choice=xxlarge]{font-size:23px}.settings-note{border:1px solid var(--border);background:var(--surface-alt);border-radius:12px;padding:.6rem .8rem;font-size:.88rem;margin-top:1rem}.settings-close-btn{width:100%;background:#12365e;border:0;border-radius:999px;color:#fff;font-weight:700;padding:.8rem 1rem;margin-top:1rem;min-height:48px}.settings-close-btn:hover{background:#12365e}.breadcrumbs{font-size:.85rem;color:var(--muted);padding-top:.6rem}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem}.breadcrumbs li+li:before{content:"›";margin-right:.35rem;color:var(--muted)}.badge{display:inline-flex;align-items:center;font-weight:600;font-size:.8rem;line-height:1.4;padding:.15em .6em;border-radius:999px;border:1px solid var(--border);color:var(--text);background:var(--surface-alt);vertical-align:middle}.badge:before{content:"";width:.5em;height:.5em;border-radius:50%;background:var(--dot, currentColor);margin-right:.35em;flex:none}.badge--contra{background:#fef2f2;border-color:#fecaca;color:#991b1b;--dot: #dc2626}.badge--label{background:#fff7ed;border-color:#fed7aa;color:#9a3412;--dot: #ea7a1a}.badge--human{background:#fffbeb;border-color:#fde68a;color:#92400e;--dot: #d97706}.badge--general{background:#f0fdf9;border-color:#a7f3d0;color:#065f46;--dot: #0e7c7b}.badge--mechanism{background:#f5f3ff;border-color:#ddd6fe;color:#5b21b6;--dot: #7c3aed}.badge--none{background:#eff6ff;border-color:#bfdbfe;color:#1e40af;--dot: #2563eb}.badge--nodata{background:#f3f4f6;border-color:#e5e7eb;color:#374151;--dot: #6b7280}:root[data-theme=dark] .badge--contra{background:#450a0a;border-color:#991b1b;color:#fecaca;--dot: #f87171}:root[data-theme=dark] .badge--label{background:#431407;border-color:#9a3412;color:#fed7aa;--dot: #fb923c}:root[data-theme=dark] .badge--human{background:#451a03;border-color:#92400e;color:#fde68a;--dot: #fbbf24}:root[data-theme=dark] .badge--general{background:#022c22;border-color:#065f46;color:#a7f3d0;--dot: #34d399}:root[data-theme=dark] .badge--mechanism{background:#2e1065;border-color:#5b21b6;color:#ddd6fe;--dot: #a78bfa}:root[data-theme=dark] .badge--none{background:#172554;border-color:#1e40af;color:#bfdbfe;--dot: #60a5fa}:root[data-theme=dark] .badge--nodata{background:#1f2937;border-color:#4b5563;color:#d1d5db;--dot: #9ca3af}.note-box{border:1px solid var(--border);border-radius:12px;padding:.6rem .8rem;margin:.7rem 0;background:var(--surface-alt)}.note-box .note-label{font-weight:700;display:block;margin-bottom:.2rem}.meta-small{font-size:.85rem;color:var(--muted)}.related-btn{display:inline-flex;align-items:center;min-height:44px;padding:.4rem .9rem;margin:.25rem .3rem .25rem 0;border:1.5px solid var(--accent);border-radius:999px;color:var(--accent);font-weight:700;text-decoration:none;background:var(--surface)}.site-footer{border-top:1px solid var(--border);background:var(--surface);padding:1.2rem 0 2rem;font-size:.9rem}.site-footer nav ul{list-style:none;margin:0 0 .8rem;padding:0;display:flex;flex-wrap:wrap;gap:.2rem 1rem}.site-footer nav a{display:inline-flex;align-items:center;min-height:44px}.site-footer p{margin:.3rem 0}@media print{:root,:root[data-theme=dark]{--bg: #ffffff;--surface: #ffffff;--surface-alt: #ffffff;--text: #000000;--dim: #333333;--border: #666666;--accent: #0e7c7b;--accent-strong: #12365e}.settings-bar,.site-banner{display:none}}
