:root{--ink:#193147;--navy:#102e4b;--gold:#aa8350;--paper:#f7f5f0;--line:#d9dfe2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;line-height:1.85}a{color:inherit}a:hover{color:#8c6a3d}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;z-index:110}.eyebrow{margin:0 0 12px;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.18em}.breadcrumb{padding:18px 0;font-size:13px;color:#536579}.breadcrumb a{text-underline-offset:3px}.hero{background:#f4f1eb}.hero-grid{display:grid;grid-template-columns:1fr 47%;align-items:center;gap:48px;padding:40px 0 58px}.hero h1{margin:0 0 24px;font-size:clamp(36px,5vw,58px);line-height:1.35;letter-spacing:.03em}.hero .lead{font-size:clamp(18px,2vw,22px);font-weight:700}.hero p{max-width:650px}.hero figure{margin:0}.hero img{display:block;width:100%;height:470px;object-fit:cover;border-radius:3px}.hero figcaption,.case-card figcaption{padding-top:9px;color:#536579;font-size:12px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;padding:12px 23px;background:var(--navy);color:white;text-decoration:none;font-weight:700;border-radius:3px}.button.secondary{background:white;color:var(--navy);border:1px solid var(--line)}.section{padding:78px 0}.section.tinted{background:var(--paper)}.section h2{margin:0 0 28px;font-size:clamp(27px,3.5vw,39px);line-height:1.45}.section h3{margin:0 0 12px;font-size:21px;line-height:1.5}.section p{margin:0 0 1em}.section-lead{max-width:850px;font-size:18px}.check-grid,.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.check-grid article,.choice-grid article{padding:28px;background:#fff;border-top:3px solid var(--gold)}.check-grid article{border:1px solid var(--line);border-top:3px solid var(--gold)}.check-grid p,.choice-grid p{margin:0}.number{display:block;color:var(--gold);font-weight:700;margin-bottom:8px}.note{max-width:900px;margin-top:28px!important;padding:15px 20px;border-left:3px solid var(--gold);background:#fff}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0;padding:0}.steps li{padding:24px;background:#fff;border:1px solid var(--line)}.steps strong{display:block;margin:7px 0;color:var(--navy)}.steps p{font-size:14px;margin:0}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.case-card{border:1px solid var(--line);background:#fff}.case-card figure{margin:0}.case-card img{display:block;width:100%;height:280px;object-fit:cover}.case-card figcaption{padding:8px 22px 0}.case-card>div{padding:14px 22px 26px}.case-card p{margin:0 0 15px}.case-card a,.text-link{font-weight:700;text-underline-offset:4px;color:var(--navy)}.related-links{display:flex;gap:15px;flex-wrap:wrap}.related-links a{padding:12px 16px;border:1px solid var(--line);text-decoration:none;font-weight:700}.cta{padding:65px 0;background:var(--navy);color:#fff;text-align:center}.cta h2{font-size:clamp(25px,4vw,36px);margin:0 0 8px}.cta p{margin:0}.cta .hero-actions{justify-content:center}.cta .button{background:#fff;color:var(--navy)}.cta .button.secondary{background:#c5a16c;border:0;color:#172b3d}footer{padding:34px 0;background:#0b2238;color:#fff}footer a{text-decoration:none;font-weight:700}footer p{margin:6px 0}footer small{color:#bfcbd3}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;gap:20px;padding:22px 0 48px}.hero img{height:340px}.section{padding:56px 0}.check-grid,.choice-grid{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.case-grid{grid-template-columns:1fr}}@media(max-width:520px){.wrap{width:calc(100% - 30px)}.hero img{height:260px}.steps{grid-template-columns:1fr}.case-card img{height:240px}}
.roof-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:30px 0}.roof-compare figure{margin:0}.roof-compare img{display:block;width:100%;height:340px;object-fit:cover}.roof-compare figcaption{padding:9px 0;color:#536579;font-size:13px;font-weight:700}@media(max-width:700px){.roof-compare{grid-template-columns:1fr}.roof-compare img{height:auto;max-height:420px;object-fit:contain;background:#f7f5f0}}
.roof-page .hero img{height:360px}.roof-page .roof-compare{max-width:820px;margin:30px auto}.roof-page .roof-compare img{height:225px}@media(max-width:700px){.roof-page .hero img{height:260px}.roof-page .roof-compare{max-width:440px}.roof-page .roof-compare img{height:auto;max-height:290px}}
.condition-example{margin:30px 0 36px}.condition-example h3{margin-bottom:8px}.condition-example>p{max-width:850px}.condition-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}.condition-gallery figure{margin:0}.condition-gallery img{display:block;width:100%;height:320px;object-fit:cover;object-position:center 44%;background:#eee8df}.condition-gallery figcaption{padding:8px 0;color:#536579;font-size:13px}@media(max-width:900px){.condition-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.condition-gallery{grid-template-columns:1fr;gap:24px}.condition-gallery img{height:300px}}

.roof-damage-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.roof-damage-gallery figure{margin:0}.roof-damage-gallery img{display:block;width:100%;height:280px;object-fit:cover;object-position:center 44%;background:#eee8df}.roof-damage-gallery figcaption{padding:9px 0;color:#536579;font-size:13px;font-weight:700}@media(max-width:900px){.roof-damage-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.roof-damage-gallery{grid-template-columns:1fr;gap:24px}.roof-damage-gallery img{height:300px}}
