@charset "UTF-8";
:root{--paper:#f6f4ec;--ink:#193930;--body:#293c35;--muted:#63746a;--line:#d7ddce;--accent:#b9ca8d;--white:#fffef9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--body);font-family:Arial,"Yu Gothic",Meiryo,sans-serif;line-height:1.85}a{color:#275743;text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid #8b9b34;outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:5px;z-index:20;background:#fff;padding:10px}.site-header{padding:18px max(4vw,20px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--paper)}.brand{font-family:Georgia,serif;font-size:23px;letter-spacing:.03em;text-decoration:none;color:var(--ink)}.brand span{font-family:Arial,sans-serif;font-size:10px;display:block;letter-spacing:.2em}.language-switch{display:flex;border:1px solid #a6b4a2;border-radius:30px;overflow:hidden;flex-shrink:0}.language-switch a{font-size:12px;padding:8px 16px;text-decoration:none}.language-switch a[aria-current]{background:var(--ink);color:white}.masthead{max-width:1280px;margin:auto;padding:74px 5vw 55px;position:relative}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:bold;color:#536c52;text-transform:uppercase;margin:0 0 22px}.masthead h1{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(34px,4.8vw,65px);font-weight:normal;line-height:1.15;letter-spacing:-.025em;color:var(--ink);max-width:1050px;margin:0 0 26px}.masthead .deck{max-width:780px;font-size:18px;color:#54675c;line-height:1.65}.metadata{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;margin-top:28px;color:var(--muted)}.ribbon{background:var(--ink);color:#fffef8;padding:30px max(5vw,20px);}.ribbon-inner{max-width:1140px;margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.ribbon strong{display:block;font:normal 34px Georgia,serif;color:#d4e2b1}.ribbon span{font-size:12px;line-height:1.6;display:block;max-width:300px}.layout{max-width:1280px;margin:55px auto 90px;padding:0 5vw;display:grid;grid-template-columns:230px minmax(0,820px);gap:65px;align-items:start}.sidebar{position:sticky;top:25px}.sidebar h2{font-size:11px;text-transform:uppercase;letter-spacing:.18em;margin:0 0 20px;color:var(--muted)}.sidebar ol{list-style:none;margin:0;padding:0}.sidebar li{border-top:1px solid var(--line)}.sidebar a{display:block;padding:10px 0;font-size:12px;line-height:1.55;text-decoration:none;color:#526758}.sidebar a:hover{color:#102f22}.article{min-width:0}.notice{padding:24px 28px;border-left:4px solid #91a864;background:#e9efdc;font-size:15px;margin:0 0 45px}.notice strong{color:var(--ink)}.notice p{margin:8px 0 0}.chapter{padding:0 0 35px;margin:0 0 38px;border-bottom:1px solid var(--line)}.chapter h2{font-family:Georgia,"Yu Mincho",serif;color:var(--ink);font-size:30px;line-height:1.4;font-weight:normal;margin:0 0 25px}.chapter h3{font-size:19px;line-height:1.6;margin:34px 0 18px;color:var(--ink)}p{margin:0 0 21px}.article strong{color:#173d2c}figure{margin:34px 0 15px;background:#e9ece2;border:1px solid var(--line)}figure img{display:block;width:100%;height:auto}figure.map img{max-width:638px;margin:auto}figcaption{padding:17px 22px;font-size:12px;line-height:1.75;color:#4e6357}figcaption b{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#49623d;margin-bottom:6px}.table-scroll{overflow-x:auto;margin:26px 0;border:1px solid var(--line);border-radius:3px}table{border-collapse:collapse;width:100%;min-width:460px;font-size:14px}th,td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top}thead{background:#e7eddd;color:var(--ink)}tr:last-child td{border-bottom:0}.chapter ol,.chapter ul{padding-left:25px}.chapter li{margin:12px 0}.source-note{font-size:12px;color:var(--muted);padding:15px 0 0;border-top:1px dashed var(--line)}.sources{background:#edeedf;padding:30px;margin-top:25px;overflow-wrap:anywhere}.sources h2{font-size:25px;font-family:Georgia,"Yu Mincho",serif;font-weight:normal;line-height:1.4}.sources li{font-size:13px;margin:14px 0}.sources p{font-size:13px}.read-end{font-family:Georgia,"Yu Mincho",serif;font-size:23px;color:var(--ink);padding:20px 0}.site-footer{padding:32px 5vw;border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.site-footer a{color:inherit}.top-link{position:fixed;bottom:20px;right:20px;background:var(--ink);color:white;text-decoration:none;border-radius:50%;width:40px;height:40px;text-align:center;line-height:40px}body[lang=ja] .masthead h1{font-size:clamp(32px,4vw,56px);line-height:1.45;letter-spacing:.025em}body[lang=ja] .article{line-height:2.1}body[lang=ja] .chapter h2{font-size:27px;line-height:1.65}@media(max-width:1000px){.layout{grid-template-columns:175px minmax(0,1fr);gap:35px}}@media(max-width:720px){.site-header{padding:16px 20px}.brand{font-size:20px}.brand span{font-size:8px}.language-switch a{padding:7px 11px;font-size:11px}.masthead{padding:45px 6vw 35px}.masthead h1{line-height:1.18}.masthead .deck{font-size:16px}.ribbon{padding:22px 6vw}.ribbon-inner{grid-template-columns:1fr;gap:18px}.ribbon-inner>div{display:grid;grid-template-columns:105px 1fr;gap:10px;align-items:center}.ribbon strong{font-size:26px}.layout{display:block;padding:0 6vw;margin-top:30px}.sidebar{position:static;margin-bottom:30px;padding:20px;border:1px solid var(--line)}.sidebar ol{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.sidebar a{font-size:11px}.notice{padding:20px;font-size:14px}.chapter h2{font-size:26px}.chapter h3{font-size:18px}.sources{padding:23px}.article{font-size:16px}.chapter{margin-bottom:30px}.metadata{gap:12px}figcaption{padding:15px}.site-footer{padding-bottom:65px}}@media print{.sidebar,.top-link,.language-switch{display:none}.layout{display:block;margin:20px;padding:0}.site-header,.ribbon{background:white;color:black}.ribbon strong{color:black}.masthead{padding:25px 0}.chapter{break-inside:auto}figure{break-inside:avoid}.sources{background:white}a{color:black}body{background:white}}
