:root { --wine:#681d2c; --yellow:#ffda3e; --ink:#171513; --paper:#fffdf8; --cream:#f5f0e7; --line:#ded5c8; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,sans-serif; line-height:1.9; }
.wrap { width:min(900px,calc(100% - 40px)); margin:0 auto; padding:64px 0 100px; }
.brand { display:inline-flex; align-items:center; margin-bottom:54px; color:inherit; text-decoration:none; font-weight:900; }
h1 { margin:0 0 8px; font-family:"Noto Serif JP",serif; font-size:clamp(30px,5vw,46px); line-height:1.4; }
h2 { margin:42px 0 12px; padding-left:14px; border-left:4px solid var(--yellow); font-size:20px; line-height:1.55; }
p,li,th,td { font-size:14px; }
ul { padding-left:1.4em; }
.meta { margin-bottom:36px; color:#736d66; font-size:12px; }
a { color:var(--wine); }
.back { display:inline-flex; margin-top:46px; padding:11px 20px; border-radius:999px; color:#fff; background:var(--wine); text-decoration:none; font-weight:700; }
table { width:100%; border-collapse:collapse; margin-top:20px; border:1px solid var(--line); background:#fff; }
th,td { padding:14px 16px; border-top:1px solid var(--line); text-align:left; vertical-align:top; }
tr:first-child th,tr:first-child td { border-top:0; }
th { width:220px; background:var(--cream); }
@media(max-width:640px){.wrap{padding-top:32px}.brand{margin-bottom:38px}table,tbody,tr,th,td{display:block;width:100%}tr{border-top:1px solid var(--line)}th,td{border:0;padding:10px 13px}td{padding-top:3px}}
