:root{--paper:#EDF0EA;--grid:rgba(43,89,195,.075);--ink:#1B2530;--ink-2:#4E5A65;--ink-3:#86909A;--line:#C6CEC9;--card:#FAFBF8;--card-2:#F2F4EF;--blue:#2B59C3;--marker:#F5D451;--marker-ink:#1B2530;--good:#2F7D52;--r:6px;
--fd:'Dela Gothic One','Hiragino Sans','Noto Sans JP',sans-serif;--fb:'Zen Kaku Gothic New','Hiragino Sans','Noto Sans JP','Yu Gothic',sans-serif;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--paper:#0E1F35;--grid:rgba(150,190,255,.085);--ink:#E6EDF6;--ink-2:#AEBED2;--ink-3:#7D91A9;--line:#2A4466;--card:#132A48;--card-2:#183356;--blue:#8DB1FF;--marker:#F2CF4A;--marker-ink:#14202E;--good:#7BCB9B;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:20px 20px;color:var(--ink);font-family:var(--fb);font-size:15px;line-height:1.8}
a{color:var(--blue)}
.wrap{max-width:680px;margin:0 auto;padding-block:16px 56px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:grid;gap:12px}
.top{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;font-size:13px;padding-bottom:8px;border-bottom:1.5px solid var(--ink)}
.top a{color:var(--ink-2);text-decoration:none}
.top .logo{font-family:var(--fd);font-size:18px;color:var(--ink);margin-right:auto}
h1{font-family:var(--fd);font-weight:400;font-size:clamp(26px,7vw,36px);line-height:1.3;margin:4px 0 0;text-wrap:balance}
h2{font-size:18px;margin:18px 0 0;padding-top:12px;border-top:1px dashed var(--line);text-wrap:balance}
p,ul,ol{margin:0}
ul,ol{padding-left:1.3em;display:grid;gap:4px}
.eyebrow{font-size:12px;letter-spacing:.14em;color:var(--ink-2);font-weight:700}
.mk{background:linear-gradient(transparent 58%,var(--marker) 58%,var(--marker) 92%,transparent 92%)}
.tag{display:inline-block;border:1.5px solid var(--ink);border-radius:999px;padding:2px 12px;font-size:13px;font-weight:700}
.lead{font-size:16px}
.small{font-size:12.5px;color:var(--ink-2)}
.card{width:100%;height:auto;border:1.5px solid var(--ink);border-radius:2px;background:var(--card)}
.tip{background:var(--card-2);border-radius:var(--r);padding:12px 14px;font-size:14px}
.tip b{display:block;font-size:12px;letter-spacing:.1em}
.grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.grid li{display:grid;padding:10px 12px;border:1.5px solid var(--line);border-radius:var(--r);background:var(--card)}
.grid li a{font-weight:700;text-decoration:none;color:var(--ink)}
.grid small{color:var(--ink-2);font-size:12px}
.prs{display:grid;gap:8px;margin-top:8px}
.pr{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border:1.5px solid var(--ink);border-radius:var(--r);background:var(--card);color:var(--ink);font-weight:700;text-decoration:none;font-size:14px}
.pr small{border:1px solid currentColor;border-radius:3px;padding:0 5px;font-size:10.5px;color:var(--ink-3);white-space:nowrap}
.pr.empty{border-style:dashed;color:var(--ink-2)}
.cta-box{display:grid;gap:10px;border:2px solid var(--ink);border-radius:var(--r);padding:16px;background:var(--card);margin-top:8px}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 22px;border-radius:var(--r);background:var(--ink);color:var(--paper);font-weight:700;text-decoration:none}
.tbl{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:520px;font-size:13px;font-variant-numeric:tabular-nums}
th,td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:right;vertical-align:top}
thead th{font-size:11.5px;color:var(--ink-2);text-align:right}
tbody th{text-align:left;white-space:nowrap}
td small{display:block;color:var(--ink-2);font-size:11px}
.foot{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:var(--ink-3);border-top:1.5px solid var(--ink);padding-top:12px;margin-top:20px}
.foot a{color:var(--ink-2)}
