/* 概算見積り（T-34）：質問ごとに横一列×7段＋右に概算ボックス */
.ot-est{box-sizing:border-box;max-width:1180px;margin:0 auto;padding:0 24px}
.ot-est *{box-sizing:border-box}
.ot-est__in{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:8px;align-items:stretch}
.ot-est__g{display:flex;flex-direction:column;gap:6px;min-width:0}
.ot-est__row{display:grid;gap:2px;min-width:0}
.ot-est__lb{display:flex;align-items:center;height:40px;font-size:12px;font-weight:800;color:#04497D;border-left:3px solid #26A7E1;padding-left:10px;white-space:nowrap}
.ot-est__row.is-2 .ot-est__lb{grid-row:span 2;height:auto}
.ot-est__row.is-2 .ot-est__t{white-space:nowrap}
.ot-est__lb small{font-weight:500;color:#5a6b85;margin-left:4px;font-size:10px}
.ot-est__t{min-height:40px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:600;font-size:11.5px;line-height:1.3;font-family:inherit;word-break:keep-all;overflow-wrap:anywhere;color:#0f2a40;padding:0 4px;cursor:pointer;background:#EEF4FA;border:0;border-radius:0;min-width:0;overflow:hidden}
.ot-est__t:hover{outline:2px solid #26A7E1;outline-offset:-2px}
.ot-est__t:focus-visible{outline:2px solid #04497D;outline-offset:-2px}
.ot-est__t[aria-pressed="true"]{background:#04497D;color:#fff;font-weight:700}
.ot-est__t:disabled{opacity:.35;cursor:not-allowed;outline:0}
.ot-est__r{background:linear-gradient(160deg,#2470C9,#04497D);color:#fff;padding:20px;display:flex;flex-direction:column;clip-path:polygon(0 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%);min-width:0}
.ot-est__k{font-size:11px;letter-spacing:.2em;color:#9fdcff;margin:0}
.ot-est__p{font-family:Barlow,"Noto Sans JP",sans-serif;font-size:48px;font-weight:700;line-height:1;margin:8px 0 4px;white-space:nowrap}
.ot-est__p small{font-size:16px;margin-left:2px}
.ot-est__p .pre{font-size:15px;margin-right:4px}
.ot-est__p.is-soudan{font-size:26px;line-height:1.3;white-space:normal;font-family:"Noto Sans JP",sans-serif}
.ot-est__n{font-size:11px;opacity:.85;margin:0}
.ot-est__r ul{list-style:none;padding:10px 0 0;margin:10px 0;font-size:12px;line-height:1.8;border-top:1px solid rgba(255,255,255,.25);flex:1}
.ot-est__m{font-size:10.5px;line-height:1.6;opacity:.85;margin:0 0 10px}
.ot-est__cta{display:block;text-align:center;padding:13px;background:#fff;color:#04497D!important;font-weight:800;font-size:14px;text-decoration:none}
.ot-est__cta:hover{background:#e6f3ff}
@media(max-width:900px){
 .ot-est{padding:0 16px}
 .ot-est__in{grid-template-columns:1fr;gap:0}
 .ot-est__g{gap:14px}
 .ot-est__row{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px}
 .ot-est__lb,.ot-est__row.is-2 .ot-est__lb{grid-column:1/-1;grid-row:auto;height:auto;padding:2px 0 2px 10px}
 .ot-est__t,.ot-est__row.is-2 .ot-est__t{min-height:44px;font-size:12px;white-space:normal}
 .ot-est__r{position:sticky;bottom:0;z-index:5;margin:16px -16px 0;padding:12px 16px;clip-path:none;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"p cta" "n cta";column-gap:12px;align-items:center}
 .ot-est__k,.ot-est__r ul,.ot-est__m{display:none}
 .ot-est__p.is-soudan br{display:none}
 .ot-est__p{grid-area:p;font-size:30px;margin:0}
 .ot-est__p.is-soudan{font-size:18px}
 .ot-est__n{grid-area:n}
 .ot-est__cta{grid-area:cta;padding:12px 14px;font-size:13px;white-space:nowrap}
}
/* 幅の狭い本文（サービスページ）の中でも本文の幅いっぱいに広げる。画面からははみ出さない */
.container-narrow .ot-est{width:min(1180px,calc(100vw - 32px));position:relative;left:50%;transform:translateX(-50%);padding:0}
@media(max-width:900px){.container-narrow .ot-est{width:100%;left:0;transform:none}}
