/* deck-home：2026-11-12 資料に合わせたトップ（既存の白・黒の細線・直角・緑を使う） */
.dh-close{margin-top:var(--sp-8);max-width:40em;font-weight:500}
.dh-close + .tiles{margin-top:var(--sp-6)}
.dh-sub{margin-top:var(--sp-12);margin-bottom:var(--sp-4)}
.dh-num{display:block;font-family:var(--font-en);font-size:var(--fs-xs);letter-spacing:.12em;color:var(--ink-2);line-height:1.4}
.dh-pt{padding:var(--card-pad);gap:var(--sp-3)}
.dh-pt h3{font-size:var(--fs-h3)}
.dh-pt p{font-size:var(--fs-sm)}
.dh-pt .roof-list{margin-top:var(--sp-2)}

/* SERVICE */
.dh-steps{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-top:var(--sp-6);border-top:1.5px solid var(--ink)}
.dh-step{padding:var(--sp-4) 0;border-bottom:var(--bw) solid var(--line);min-width:0}
.dh-name{font-size:var(--fs-h3);margin-top:var(--sp-1)}
.dh-step p{font-size:var(--fs-sm);color:var(--ink-2);margin-top:var(--sp-1)}
.dh-bars{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-2);margin-top:var(--sp-4)}
.dh-bars li{border:var(--bw) solid var(--ink);padding:var(--sp-3) var(--sp-4);font-weight:500;background:var(--fig-bg)}
.dh-bars span{font-weight:400;font-size:var(--fs-sm);color:var(--ink-2);margin-left:.5em}
@media (min-width:768px){
  .dh-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--sp-4);border-top:0}
  .dh-step{border-top:1.5px solid var(--ink);border-bottom:0;padding:var(--sp-3) 0 0}
  .dh-bars{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}
}

/* TOOLS */
.dh-fig{display:block;padding:0}
.dh-fig img{display:block;width:100%;height:100%;object-fit:cover;object-position:top left}
.dh-fig.is-phone{display:flex;justify-content:center;align-items:center;padding:var(--sp-4)}
.dh-fig.is-phone img{flex:none;width:auto;height:100%;max-width:100%;object-fit:contain;border:var(--bw) solid var(--card-line)}
.dh-fig{height:clamp(200px,56vw,300px)}
.dh-when{font-size:var(--fs-xs)!important;color:var(--ink-2)}
.dh-end{margin-top:auto;padding-top:var(--sp-3);font-weight:500}

/* WORK */
.dh-work{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}
.dh-work > li{display:flex;min-width:0}
.dh-work > li > .tile{flex:1}
.dh-work .tile-fig{height:auto;aspect-ratio:8/5}
.dh-work .dh-fig img{object-position:top center}
.dh-work .tile-body{gap:var(--sp-2)}
.dh-role{margin-top:auto;padding-top:var(--sp-2)}
.dh-role .chip{display:inline-block;min-height:0;padding:0 .625rem;font-size:var(--fs-xs);line-height:1.8}
@media (min-width:600px){.dh-work{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.dh-work{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-6)}}

/* PRICING */
.dh-plans{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-6)}
.dh-plans > li{min-width:0}
.dh-price{height:100%}
.dh-price.is-rec{border-top-color:var(--green)}
.dh-price .price-num{margin:var(--sp-3) 0}
.dh-price .price-num small{font-size:var(--fs-sm);margin-left:.25rem}
@media (min-width:768px){.dh-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-8)}}
.dh-offer{margin-top:var(--sp-8);border:var(--bw) solid var(--green);background:var(--green-tint);padding:var(--sp-4) var(--sp-6);display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-6);align-items:baseline}
.dh-offer-tag{font-weight:500;color:var(--green-ink)}
.dh-offer-main{font-size:var(--fs-h3);font-weight:500}
.dh-offer-main s{color:var(--ink-2);font-weight:400}
.dh-offer-main strong{font-size:var(--fs-num);font-weight:500;line-height:1.1}

/* PROCESS */
.dh-flow{display:grid;grid-template-columns:minmax(0,1fr);gap:0;border-top:1.5px solid var(--ink)}
.dh-flow > li{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-1) var(--sp-4);padding:var(--sp-4) 0;border-bottom:var(--bw) solid var(--line);min-width:0}
.dh-flow .dh-num{font-size:var(--fs-sm);min-width:2ch}
.dh-flow h3{font-size:var(--fs-body)}
@media (min-width:768px){
  .dh-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 var(--sp-6);border-top:0}
  .dh-flow > li{display:block;border-top:1.5px solid var(--ink);border-bottom:0;padding:var(--sp-3) 0 var(--sp-8)}
  .dh-flow h3{margin:var(--sp-2) 0}
}

/* MEMBER */
.members .member h3 small{font-size:var(--fs-xs);font-weight:400;color:var(--ink-2);margin-left:.5em}
.members .member-photo{width:min(160px,40vw)}
.members .bio{line-height:1.9}
