:root{--ink:#22201C;--sub:#5A544A;--accent:#A3241B;--rule:#D8D0C0;--ground:#F6F1E6}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font-family:'Noto Sans JP',system-ui,-apple-system,sans-serif;line-height:1.85;font-size:16px}
a{color:var(--accent)}a:hover{color:#7d1b14}
.wrap{max-width:720px;margin:0 auto;padding:0 20px}
header{border-bottom:3px double var(--ink)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.daiji{background:var(--accent);color:#fff;font-family:'Shippori Mincho B1',serif;font-weight:800;font-size:14px;line-height:1.05;padding:5px 6px;text-align:center}
.brand b{font-family:'Shippori Mincho B1',serif;font-size:21px}
nav{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px}
nav a{color:var(--ink);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
nav a[aria-current]{color:var(--accent);font-weight:700}
main{padding:28px 0 48px}
h1{font-family:'Shippori Mincho B1',serif;font-size:28px;line-height:1.4;margin:0 0 8px}
h2{font-family:'Shippori Mincho B1',serif;font-size:20px;margin:32px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--ink)}
h3{font-size:16px;margin:20px 0 4px}
p,li{margin:0 0 10px}
.lead{color:var(--sub)}
.hero{display:flex;gap:20px;align-items:center;margin-bottom:8px}
.hero img{width:96px;height:96px;border-radius:22px;flex:none}
.badge{display:inline-block;margin-top:8px;padding:10px 18px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;border-radius:8px}
.note{background:var(--ground);padding:14px 16px;font-size:14px;color:var(--sub)}
.meta{font-size:14px;color:var(--sub)}
dl{margin:0}dt{font-weight:700;margin-top:16px}dd{margin:4px 0 0}
footer{border-top:1px solid var(--rule);padding:18px 0 28px;font-size:13px;color:var(--sub)}
footer .wrap{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:space-between}
@media (max-width:520px){h1{font-size:23px}.hero{flex-direction:column;align-items:flex-start}header .wrap{flex-direction:column;align-items:flex-start;gap:4px}}
