*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f2ed;color:#342e29;font-family:Meiryo,"Yu Gothic",sans-serif;line-height:1.95}a{color:#a33424;text-underline-offset:4px}a:hover{color:#6c2016}a:focus-visible,summary:focus-visible{outline:3px solid #a33424;outline-offset:5px}header,main,footer{max-width:1100px;margin:auto;padding:30px}header{border-bottom:1px solid #d7cbbb}.brand{display:block;text-decoration:none;font-size:clamp(20px,3vw,29px);font-weight:bold;color:#59493f}.brand span{display:block;font-size:11px;letter-spacing:.2em;color:#786854}nav{display:flex;gap:12px 22px;flex-wrap:wrap;margin-top:20px}nav a{font-size:14px}nav [aria-current]{font-weight:bold}main{background:white;margin-top:28px;margin-bottom:28px;border-radius:12px;padding:40px;min-height:50vh}h1{font-size:clamp(26px,4vw,40px);line-height:1.5;margin:12px 0 25px}h2{font-size:24px;border-left:5px solid #ae3927;padding-left:15px;margin-top:44px}h3{font-size:19px}p,li{overflow-wrap:anywhere}.lead{font-size:18px;color:#635344}.eyebrow{color:#a33424;font-weight:bold}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}.hero img{width:100%;height:auto;border-radius:8px}.button{display:inline-block;padding:10px 20px;background:#a33424;color:white;border-radius:5px;text-decoration:none}.button:hover{background:#6c2016;color:white}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards>a{background:#f5f2ed;padding:20px;border:1px solid #e0d6c9;border-radius:8px;text-decoration:none;color:#342e29}.cards h3{color:#a33424;margin-top:0}.article-image{max-width:180px;height:auto;float:left;margin:0 22px 12px 0}aside{clear:both;padding:20px;background:#f5f2ed;border-radius:8px}.breadcrumb{font-size:13px;color:#716151}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}td,th{border:1px solid #d7cbbb;padding:12px;text-align:left}th{background:#f5f2ed}caption{text-align:left;font-weight:bold}footer{font-size:13px;color:#635344;border-top:1px solid #d7cbbb}footer nav{margin-bottom:20px}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px}.skip:focus{top:10px}@media(max-width:720px){header,footer{padding:22px}main{margin:15px;padding:24px}.hero,.cards{grid-template-columns:1fr}.hero img{max-width:500px}.article-image{float:none;display:block}nav{gap:10px 15px}h2{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
