
.dh2-lead{padding:80px 0 60px;background:#fff}
.dh2-lead .inner{max-width:1000px;margin:0 auto;padding:0 24px;text-align:center}
.dh2-lead .pull-quote{font-family:var(--body-jp);font-size:32px !important;font-weight:700 !important;line-height:1.9;letter-spacing:.06em;color:var(--ink)}
.dh2-lead .body{margin-top:36px;font-size:15px;line-height:2;color:var(--ink-soft)}
.dh2-ch{padding:100px 0}
.dh2-ch:nth-of-type(odd){background:#F7F5F1}
.dh2-inner{max-width:1200px;margin:0 auto;padding:0 40px}
.dh2-head{text-align:center;margin-bottom:60px}
.dh2-eb{font-family:var(--label-en);font-size:12px;letter-spacing:.3em;color:var(--accent);margin-bottom:14px;position:relative;display:inline-block;padding:0 42px}
.dh2-eb::before,.dh2-eb::after{content:'';position:absolute;top:50%;width:32px;height:1px;background:var(--accent)}
.dh2-eb::before{left:0}.dh2-eb::after{right:0}
.dh2-tt{font-family:var(--body-jp);font-size:34px;font-weight:900;letter-spacing:.08em;color:var(--ink);line-height:1.5;margin:0}
.dh2-tt .sm{display:block;font-size:14px;font-weight:500;color:var(--ink-soft);margin-top:12px;letter-spacing:.2em;font-family:var(--label-en)}
.dh2-desc{max-width:820px;margin:24px auto 0;font-size:15px;line-height:2;color:var(--ink-soft);text-align:center}
.dh2-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:20px}
.dh2-pillar{background:#fff;padding:36px 30px;border-radius:8px;box-shadow:0 8px 30px rgba(43,38,34,.06)}
.dh2-pillar .lb{font-family:var(--label-en);font-size:11px;letter-spacing:.3em;color:var(--accent);margin-bottom:8px}
.dh2-pillar .lb-jp{font-family:var(--body-jp);font-size:26px;font-weight:900;letter-spacing:.14em;color:var(--ink);padding-bottom:16px;border-bottom:1px solid #E5DFD5;margin-bottom:20px}
.dh2-pillar .tag{font-size:13px;color:var(--ink-soft);line-height:1.8;margin-bottom:16px}
.dh2-pillar ul{list-style:none;padding:0;margin:0}
.dh2-pillar li{padding:14px 0;border-bottom:1px dashed #E5DFD5;font-size:14px;color:var(--ink)}
.dh2-pillar li:last-child{border-bottom:none}
.dh2-pillar li .item-t{font-weight:900;display:block;letter-spacing:.04em}
.dh2-pillar li .item-s{font-size:12px;color:var(--ink-soft);display:block;margin-top:6px;line-height:1.7}
.dh2-cols{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:flex-start;margin-top:20px}
.dh2-cols img{width:100%;object-fit:cover;border-radius:8px;aspect-ratio:4/3}
.dh2-spec{margin:0}
.dh2-spec dt{font-family:var(--body-jp);font-size:15px;font-weight:900;letter-spacing:.08em;color:var(--accent);border-left:3px solid var(--accent);padding-left:12px;margin-bottom:10px}
.dh2-spec dd{margin:0 0 20px;padding:0 0 0 15px;font-size:13px;line-height:1.9;color:var(--ink)}
.dh2-list{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;list-style:none;padding:0;margin:16px 0 0}
.dh2-list li{font-size:13px;color:var(--ink);padding:6px 0 6px 16px;position:relative;line-height:1.6}
.dh2-list li::before{content:'';position:absolute;left:0;top:12px;width:6px;height:6px;background:var(--accent)}
.dh2-floor{margin-top:40px}
.dh2-floor h4{font-family:var(--label-en);font-size:22px;letter-spacing:.16em;color:var(--ink);margin:0 0 8px;padding-bottom:10px;border-bottom:1px solid var(--ink)}
.dh2-floor h4 .jp{font-family:var(--body-jp);font-size:12px;color:var(--ink-soft);margin-left:14px;letter-spacing:.2em}
.dh2-hybrid{background:#fff;border:1px solid #E5DFD5;padding:22px 24px;margin-top:30px;text-align:center;border-radius:6px}
.dh2-hybrid .badge{display:inline-block;background:var(--accent);color:#fff;padding:6px 14px;font-size:11px;letter-spacing:.2em;margin-bottom:10px}
.dh2-hybrid .formula{font-family:var(--body-jp);font-size:16px;font-weight:700;color:var(--ink);letter-spacing:.1em}
.dh2-hybrid .formula .op{color:var(--accent);margin:0 10px;font-weight:900}
.dh2-hybrid .figure{font-family:var(--body-jp);font-size:22px;font-weight:900;color:var(--accent);letter-spacing:.06em;margin-top:8px}
.dh2-cards2{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}
.dh2-card{background:#fff;padding:30px;border:1px solid #E5DFD5;border-radius:4px}
/* interior 2col */
.dh-int-grid{grid-template-columns:1fr !important;align-items:start}
.dh-int-grid > div{grid-template-columns:1fr 1fr !important;grid-template-rows:auto !important;gap:16px !important}
.dh-int-grid > div img{width:100% !important;height:auto !important;display:block;border-radius:4px}

.dh2-card img{margin-left:auto;margin-right:auto;}.dh2-card div[style*="grid"] img{margin-left:0;margin-right:0;}/*dh2imgctr*/.dh2-card .brand{font-family:var(--label-en);font-size:11px;letter-spacing:.2em;color:var(--accent);margin-bottom:6px}
.dh2-card h5{font-family:var(--body-jp);font-size:22px;font-weight:900;letter-spacing:.06em;color:var(--ink);margin:0 0 10px}
.dh2-card .sub{font-size:13px;color:var(--ink);line-height:1.8;margin-bottom:16px}
.dh2-card .features{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dh2-card .features > div h6{font-size:13px;font-weight:900;color:var(--accent);letter-spacing:.06em;margin:0 0 6px}
.dh2-card .features > div p{font-size:12px;color:var(--ink-soft);line-height:1.7;margin:0}
.dh2-roof{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:20px}
.dh2-roof-card{background:#fff;padding:24px;border:1px solid #E5DFD5;border-radius:4px}
.dh2-roof-card .brand{font-family:var(--label-en);font-size:11px;letter-spacing:.2em;color:var(--accent)}
.dh2-roof-card h5{font-size:18px;font-weight:900;color:var(--ink);letter-spacing:.04em;margin:4px 0 10px}
.dh2-roof-card .sub{font-size:12px;color:var(--ink);line-height:1.7;margin-bottom:12px}
.dh2-roof-card ul{list-style:none;padding:0;margin:0}
.dh2-roof-card li{font-size:12px;color:var(--ink-soft);padding:4px 0 4px 12px;position:relative;line-height:1.6}
.dh2-roof-card li::before{content:'・';position:absolute;left:0;color:var(--accent)}
.dh2-warranty{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:20px}
.dh2-warranty-card{border:2px solid var(--accent);padding:24px;text-align:center;background:#fff;border-radius:4px}
.dh2-warranty-card h5{font-size:15px;font-weight:900;color:var(--ink);letter-spacing:.06em;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid #E5DFD5}
.dh2-warranty-card .years{font-family:var(--label-en);font-size:28px;font-weight:900;color:var(--accent);letter-spacing:.04em;line-height:1;margin:6px 0}
.dh2-warranty-card .note{font-size:11px;color:var(--ink-soft);line-height:1.6}
.dh2-fire{background:linear-gradient(90deg,#F7F5F1 0%,#EBE5D8 100%);padding:32px;margin-top:40px;border-radius:6px}
.dh2-fire h4{font-family:var(--body-jp);font-size:20px;font-weight:900;color:var(--ink);text-align:center;margin:0 0 8px;letter-spacing:.06em}
.dh2-fire .subtitle{text-align:center;font-size:13px;color:var(--ink-soft);margin-bottom:20px;line-height:1.8}
.dh2-fire .cmp{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}
.dh2-fire .cmp-box{background:#fff;padding:20px;text-align:center;border-radius:4px}
.dh2-fire .cmp-box .lb{font-size:13px;color:var(--ink);letter-spacing:.06em;margin-bottom:8px;line-height:1.6}
.dh2-fire .cmp-box .amt{font-family:var(--label-en);font-size:24px;font-weight:900;color:var(--accent);letter-spacing:.02em}
.dh2-fire .save{text-align:center;font-size:20px;font-weight:900;color:#fff;letter-spacing:.06em;width:fit-content;max-width:100%;margin:24px auto 0;padding:14px 32px;background:linear-gradient(180deg,#3a4656,#2d3744);border:2px solid #2d3744;border-radius:999px;box-shadow:0 8px 24px rgba(45,55,68,.32)}
.dh2-fire .save .big{font-size:46px;padding:0 8px;color:#fff;line-height:1}
.dh2-quake{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
.dh2-quake-card{background:#fff;padding:26px;border:1px solid #E5DFD5;text-align:center;border-radius:4px}
.dh2-quake-card .grade{font-family:var(--label-en);font-size:10px;letter-spacing:.2em;color:var(--ink-soft);margin-bottom:8px;line-height:1.4}
.dh2-quake-card .num{font-family:var(--label-en);font-size:44px;font-weight:900;color:var(--ink);line-height:1}
.dh2-quake-card.hl{background:var(--accent);color:#fff;border-color:var(--accent)}
.dh2-quake-card.hl .grade,.dh2-quake-card.hl .num{color:#fff}
.dh2-quake-card .desc{font-size:12px;line-height:1.7;margin-top:10px}
.dh2-highlight{background:var(--accent);color:#fff;padding:36px 24px;margin-top:40px;text-align:center;border-radius:8px}
.dh2-highlight .caption{font-family:var(--label-en);font-size:12px;letter-spacing:.2em;opacity:.7;margin-bottom:8px}
.dh2-highlight h4{font-family:var(--body-jp);font-size:22px;font-weight:900;letter-spacing:.08em;margin:0;line-height:1.7}
@media (max-width:1023px){
  .dh2-pillars,.dh2-warranty,.dh2-roof,.dh2-quake{grid-template-columns:1fr}
  .dh2-cols,.dh2-cards2,.dh2-fire .cmp{grid-template-columns:1fr;gap:30px}
  .dh2-list{grid-template-columns:1fr}
  .dh2-tt{font-size:26px}
}
