*{box-sizing:border-box}
body{margin:0;background:#f4f2ee;color:#1c1c1c;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.7}
a{color:#20423a}
a:visited{color:#3c5a52}
.wrap{max-width:980px;margin:0 auto;padding:0 22px 60px}

/* ヘッダー・パンくず */
.hdr{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:16px 0;border-bottom:2px solid #d8d3ca;margin-bottom:10px}
.hdr .brand{font-weight:700;font-size:17px;color:#20423a;text-decoration:none}
.hdr .navlinks a{margin-left:14px;font-size:13px;color:#5c5750;text-decoration:none;white-space:nowrap}
.hdr .navlinks a:hover{text-decoration:underline}
.crumb{font-size:12px;color:#8a8378;margin:10px 0 18px}
.crumb a{color:#8a8378}

h1{font-size:25px;margin:6px 0 10px;line-height:1.4}
h2{font-size:19px;margin:30px 0 10px;padding-top:6px;border-top:1px solid #e0dcd4}
h3{font-size:15px;margin:18px 0 6px}
.lead{font-size:15px;color:#5c5750;margin:0 0 18px}
.sub{font-size:13px;color:#8a8378;margin:-4px 0 18px}

/* 概要ボックス */
.answer{background:#20423a;color:#fff;border-radius:6px;padding:16px 20px;font-size:16px;font-weight:600;margin:16px 0;line-height:1.6}
.answer small{display:block;font-size:12px;font-weight:400;opacity:.85;margin-top:8px;line-height:1.8}
.warnbox{background:#fdf5f5;border:1px solid #e0c8c8;padding:13px 16px;margin:16px 0;border-radius:4px;font-size:13px;color:#5c3a3a}
.warnbox b{color:#a33}
.notebox{background:#f4f1ea;border:1px solid #d8d3ca;padding:13px 16px;margin:16px 0;border-radius:4px;font-size:13px}
.ask{background:#f4f1ea;border:1px solid #d8d3ca;padding:16px;margin:16px 0;border-radius:4px;font-size:14px}
.ask p{margin:0 0 10px}
.ask p:last-child{margin-bottom:0}
.ask b{font-size:14px}
.ask small{color:#8a8378;display:block;margin-top:2px;font-size:12px}
.ask a{margin-right:14px;white-space:nowrap;display:inline-block}

/* カード（用途・メーカー入口） */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:14px 0}
.card{background:#fff;border:1px solid #e0dcd4;border-radius:6px;padding:14px 16px;text-decoration:none;color:#1c1c1c;display:block}
.card:hover{border-color:#20423a}
.card .cardtitle{font-weight:700;font-size:15px;margin-bottom:6px;color:#20423a}
.card .cardnum{font-size:12px;color:#5c5750;line-height:1.6}
.card .cardnum b{color:#1c1c1c}

/* テーブル */
table{width:100%;border-collapse:collapse;background:#fff;font-size:13px;margin:12px 0}
.tablewrap{overflow-x:auto}
th,td{border:1px solid #e0dcd4;padding:8px 10px;text-align:left;vertical-align:top}
thead th{background:#efece6;font-weight:700;white-space:nowrap;font-size:12px;position:sticky;top:0}
td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.bad{color:#a33;font-weight:700}
.good{color:#2a7050;font-weight:700}
.mid{color:#a5761b;font-weight:700}
.flagcell{color:#a5761b;font-size:12px}

/* スペック表（1工法ページ） */
.spec{width:100%;border-collapse:collapse;background:#fff;font-size:14px;margin:10px 0}
.spec th{width:9.5em;background:#efece6;text-align:left;padding:9px 12px;font-weight:700;font-size:12.5px;border:1px solid #e0dcd4;vertical-align:top}
.spec td{padding:9px 12px;border:1px solid #e0dcd4}
.calcgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:12px 0}
.calcbox{background:#fff;border:1px solid #e0dcd4;border-radius:6px;padding:12px 14px}
.calcbox .k{font-size:12px;color:#8a8378;margin-bottom:4px}
.calcbox .v{font-size:19px;font-weight:700;color:#20423a}
.calcbox .v.flag{font-size:14px;font-weight:700;color:#a5761b}

/* タグ・引用 */
.tag{display:inline-block;background:#fff;border:1px solid #dcd8d0;border-radius:3px;padding:2px 9px;margin:2px 4px 2px 0;font-size:12px}
.voice{background:#fff;border-left:4px solid #20423a;padding:10px 16px;margin:12px 0;font-size:14px}
.voice .vsrc{font-size:11.5px;color:#8a8378;margin-top:6px}
.voice .vsrc a{color:#8a8378}
.rulebox{background:#fff;border:1px solid #e0dcd4;border-radius:6px;padding:14px 16px;margin:14px 0;font-size:13px}
.rulebox ol{margin:8px 0 0;padding-left:1.4em}
.rulebox li{margin:4px 0}
.rulebox li.cur{font-weight:700;color:#20423a}

/* フッター */
.foot{margin-top:40px;border-top:2px solid #d8d3ca;padding-top:16px;font-size:12.5px;color:#4a463f}
.foot-source{margin:0 0 10px}
.foot-disclaimer{background:#fff6d8;border:1px solid #e4cf8a;color:#7a5c10;padding:9px 13px;border-radius:4px;margin:0 0 12px}
.foot-links a{margin-right:12px}
.foot-copy{color:#8a8378;margin-top:8px}

@media (max-width:600px){
  .hdr .navlinks a{margin-left:0;margin-right:12px}
  .spec th{width:7.5em}
}
