
:root{--accent:#b21f2d;--bg:#f6f1e8;--paper:#fffdf8;--text:#2d2b28;--muted:#706b64;}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,'Noto Sans JP',sans-serif;line-height:1.9}
a{color:inherit;text-decoration:none} .wrap{max-width:1120px;margin:auto;padding:0 22px}
header{background:#fffdf8;border-bottom:1px solid #ddd3c6} nav{display:flex;justify-content:space-between;align-items:center;padding:18px 0} .logo{font-family:Georgia,serif;font-size:25px;font-weight:900} nav .links{display:flex;gap:17px;font-size:13px;flex-wrap:wrap}
.hero{padding:75px 0 50px;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center} .hero img{width:100%;height:430px;object-fit:cover;border-radius:2px} .kicker{color:var(--accent);font-size:12px;letter-spacing:.2em;font-weight:900} h1{font-family:Georgia,'Noto Serif JP',serif;font-size:clamp(43px,6vw,76px);line-height:1.08;margin:12px 0} .lead{font-size:18px;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px} .card{background:var(--paper);border:1px solid #e2d9cd;padding:18px} .card img{width:100%;height:180px;object-fit:cover;margin-bottom:10px} .date{font-size:11px;color:var(--accent);font-weight:900} section{padding:60px 0} h2{font-family:Georgia,serif;font-size:32px} .prose{max-width:800px;font-size:17px;color:var(--muted)} table{width:100%;border-collapse:collapse;background:var(--paper)} th,td{padding:13px;border-bottom:1px solid #e2d9cd;text-align:left} th{color:var(--accent)} footer{padding:35px 0;border-top:1px solid #ddd3c6;color:var(--muted);font-size:12px} .comment{padding:13px 0;border-bottom:1px dashed #d9cfc2} .nick{font-weight:800;color:var(--accent)}
@media(max-width:800px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr}}
