:root{--ink:#26211d;--mut:#6b625a;--red:#b6482f;--navy:#1d3a5f;--paper:#fbf8f1;--line:#e6dfd2}
*{box-sizing:border-box}body{margin:0;font:17px/1.85 Georgia,"Hiragino Mincho ProN","Noto Serif JP",serif;color:var(--ink);background:var(--paper)}
a{color:var(--navy)}.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:6px;z-index:9}
.top{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding:14px 5vw;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:5}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink)}.brand small{display:block;font:11px system-ui,sans-serif;color:var(--mut)}
.seal{display:grid;place-items:center;width:38px;height:38px;background:var(--red);color:#fff;font-size:22px}
.top nav{display:flex;gap:16px;align-items:center;font:14px system-ui,sans-serif}.top nav a{text-decoration:none;color:var(--ink)}.lang{border:1px solid var(--navy);border-radius:99px;padding:2px 12px;color:var(--navy)!important}
main{max-width:960px;margin:0 auto;padding:24px 5vw 64px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;padding:20px 0}.art{width:100%;height:auto;border:1px solid var(--line)}
.eyebrow{font:700 12px system-ui,sans-serif;letter-spacing:.14em;color:var(--red);margin:0}h1{font-size:clamp(30px,5vw,46px);line-height:1.2;margin:.3em 0}h2{font-size:24px;margin:1.6em 0 .4em}
.lead{font-size:18px;color:#3d352f}.small{font:13px system-ui,sans-serif;color:var(--mut)}
.hana{display:flex;gap:16px;align-items:center;background:#f4ede2;border-radius:12px;padding:16px 20px;margin:18px 0}.hana p{margin:.2em 0}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}.filters button{font:14px system-ui,sans-serif;border:1px solid var(--line);background:#fff;border-radius:99px;padding:4px 14px;cursor:pointer}.filters button[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 18px}.card[hidden]{display:none}.card h3{font-size:19px;line-height:1.4;margin:.2em 0}.card p{font-size:15px;margin:.3em 0}
.tags{font:700 12px system-ui,sans-serif;color:var(--red);margin:0;letter-spacing:.06em}.more{font:14px system-ui,sans-serif}
.policy ol{padding-left:1.3em}.crumb{font:14px system-ui,sans-serif}
.art-page{max-width:720px;margin:0 auto}.art-page section{margin:1.4em 0}.art-page h2{border-left:4px solid var(--red);padding-left:12px;font-size:21px}
.page{max-width:720px;margin:0 auto}footer{text-align:center;color:var(--mut);font:13px system-ui,sans-serif;padding:24px;border-top:1px solid var(--line)}
@media(max-width:720px){.hero{grid-template-columns:1fr}}
