*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f3ee;color:#193731;font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Meiryo",sans-serif;line-height:1.9}a{color:#126b58;text-underline-offset:.2em}a:focus-visible{outline:3px solid #ab651e;outline-offset:4px}.wrap{max-width:1050px;margin:auto;padding:0 28px}.brand{padding:22px 0;border-bottom:1px solid #d5ded5;font-weight:700;letter-spacing:.1em}.notice{background:#e5eae1;padding:14px 20px;font-size:.85rem;border-left:4px solid #547c59;margin:26px 0}.eyebrow{font-size:.8rem;letter-spacing:.13em;color:#587664;margin:36px 0 14px}h1{font-size:clamp(1.8rem,4.7vw,3.2rem);line-height:1.5;letter-spacing:-.04em;max-width:940px;margin:0 0 24px}h2{font-size:1.45rem;line-height:1.65;margin:0 0 22px}p{margin:0 0 20px}.intro{max-width:800px;font-size:1.06rem}.meta{font-size:.82rem;color:#586b61}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:42px;margin:40px 0}nav{font-size:.84rem;align-self:start;position:sticky;top:24px}nav a{display:block;padding:9px 0;border-bottom:1px solid #d5ded5;text-decoration:none}section{background:#fffefb;border:1px solid #dce2d8;border-radius:12px;padding:28px;margin-bottom:24px;scroll-margin-top:20px}ul{padding-left:1.3em}li{margin:12px 0}.table-scroll{overflow:auto;margin:24px -10px}table{border-collapse:collapse;width:100%;font-size:.88rem;min-width:570px}caption{text-align:left;padding:10px;font-size:.78rem;color:#586b61}th,td{text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid #dce2d8}th{background:#e8eee5}td:first-child{font-weight:600}small{font-size:.76rem}footer{padding:28px 0 50px;font-size:.82rem;color:#586b61}.sources{font-size:.8rem;overflow-wrap:anywhere}.cite{font-size:.78rem;white-space:nowrap}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;background:white;padding:8px}.muted{color:#586b61}@media(max-width:760px){.wrap{padding:0 18px}.layout{display:block;margin-top:28px}nav{position:static;margin-bottom:28px}nav a{padding:7px 0}section{padding:22px 18px}.notice{font-size:.78rem}.brand{font-size:.86rem}h2{font-size:1.22rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.site-nav{position:static;display:flex;flex-wrap:wrap;gap:4px 20px;margin:12px 0 22px}.site-nav a{border:0}.reading{max-width:820px;margin:30px auto}p,li{overflow-wrap:anywhere}
