@charset "UTF-8";
/* ============================================================
   栃木版 TOPページ専用スタイル
   デザインカンプ（724×2172px）を実測し、
   コンテナ実測680px = 実装1180px（縮尺 1.743）で換算した値を使用。
   ============================================================ */

.t-top{
    --g:#1b5e3a;
    --g-d:#14472c;
    --g-dd:#0e3220;
    --g-l:#e7f1ea;
    --g-ll:#f2f8f4;
    --o:#e8820c;
    --o-d:#cc7009;
    --line:#22b14c;
    --line-d:#1a9440;
    --cream:#fdf8ef;
    --ink:#2c322e;
    --ink-s:#6b746d;
    --bd:#e0e4e0;
    --wrap:1180px;
    --pad:40px;
    font-family:'Noto Sans JP',sans-serif;
    color:var(--ink);
    line-height:1.7;
}
.t-top *{box-sizing:border-box}
.t-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.t-sec{padding:28px 0}
.t-sec--cream{background:var(--cream)}
.t-sec--white{background:#fff}

/* セクション見出し：カンプ実測 32px */
.t-h2{
    text-align:center;font-size:32px;font-weight:900;color:var(--g);
    letter-spacing:.02em;line-height:1.4;margin:0 0 32px;
}
.t-h2 em{font-style:normal;color:var(--o)}

/* SPだけで効かせる改行 */
.t-br-sp{display:none}

/* ------------------------------------------------------------
   1〜3. FV / CTAカード / 信頼バー
   カンプ実測（1672×941px）を vw 換算して再現。
   基準：1672px時に実測値と一致し、狭い/広い画面では clamp で頭打ち。
   ------------------------------------------------------------ */

/* ---- FV本体：実測 高さ611px = 36.5vw ----
   上限を640→700pxに引き上げ。写真を下端合わせにしたとき、
   広い画面ほど上側の切り取り量が増えてキャビンが欠けるため */
.t-fv{
    position:relative;
    min-height:clamp(430px,36.5vw,700px);
    background:var(--cream);
    display:flex;align-items:center;
    overflow:hidden;
}
/* 写真は全面に敷き、左側は半透明のベールで覆う。
   斜め分割：実測 上端54.7% → 下端40.5%
   --veil-op でベールの不透明度を調整（1 = 完全に不透明＝元のベタ塗り） */
.t-fv{--veil-op:.86}
/* 写真は下端合わせ。中央合わせだと画像の下（タイヤ〜地面）が
   切り取られてしまうため、下を基準に置いて上側だけを切る */
.t-fv__photo{
    position:absolute;inset:0;
    background:var(--g-l) center bottom/cover no-repeat;
    z-index:0;
}
.t-fv__veil{
    position:absolute;inset:0;z-index:1;
    background:rgba(253,248,239,var(--veil-op));
    clip-path:polygon(0 0, 54.7% 0, 40.5% 100%, 0 100%);
    -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
    pointer-events:none;
}
.t-fv__text{
    position:relative;z-index:2;
    width:100%;
    /* 実測：左余白49px = 2.93vw。カードが下に66px重なるぶん下側を空ける */
    padding:clamp(24px,3.3vw,58px) 0 clamp(48px,5.2vw,92px) clamp(18px,2.93vw,64px);
    display:flex;flex-direction:column;align-items:flex-start;
}

/* ---- リボン：実測 高さ54px / 文字25.8px / 右端に13pxのV字切り欠き ---- */
.t-fv__ribbon{
    display:inline-block;
    background:var(--g);color:#fff;
    font-size:clamp(14px,1.544vw,27px);
    font-weight:700;letter-spacing:.04em;line-height:1;
    padding:clamp(9px,.93vw,17px) clamp(28px,2.9vw,52px) clamp(9px,.93vw,17px) clamp(16px,1.55vw,28px);
    clip-path:polygon(0 0, 100% 0, calc(100% - .78vw) 50%, 100% 100%, 0 100%);
    white-space:nowrap;
}

/* ---- 見出し：実測 69px / 行送り1.33 / リボンとの間30px ---- */
.t-fv__head{
    margin:clamp(14px,1.79vw,32px) 0 0;
    font-size:clamp(30px,4.126vw,72px);
    font-weight:900;color:var(--g);
    line-height:1.33;letter-spacing:0;
    white-space:nowrap;
}
.t-fv__head em{font-style:normal;color:var(--o)}

/* ---- サブ：実測 24px / 行送り1.58（装飾罫を廃止したぶん上余白を確保） ---- */
.t-fv__sub{
    margin:clamp(20px,2.6vw,46px) 0 0;
    font-size:clamp(14px,1.441vw,25px);
    font-weight:500;line-height:1.58;color:var(--ink);
    white-space:nowrap;
}

/* ---- タグ：実測 高さ51px / 文字23.8px / サブとの間26px ---- */
.t-fv__tags{
    display:flex;flex-wrap:wrap;
    gap:clamp(8px,.9vw,16px);
    margin-top:clamp(14px,1.55vw,28px);
}
.t-fv__tag{
    background:#fff;border:1.5px solid #cfe0d5;color:var(--g);
    font-size:clamp(13px,1.423vw,25px);
    font-weight:700;line-height:1;
    padding:clamp(9px,.95vw,17px) clamp(12px,1.25vw,22px);
    border-radius:8px;white-space:nowrap;
}

/* ---- CTAカード：実測 x42-1634 / 高さ96px / FVに66px重なる ----
   JSで translateY を当てて画面下端まで移動させるため、
   ラッパー(.t-ctacard)が流れの中で高さを保持する ---- */
/* カードの重なりを浅くする。深く重ねると写真の下端（タイヤ）が
   カードの裏に隠れてしまうため */
.t-ctacard{
    position:relative;z-index:80;
    margin-top:clamp(-26px,-2.2vw,-18px);
    padding:0 clamp(12px,2.4vw,42px);
}
.t-ctacard__inner{
    background:#fff;border-radius:12px;
    box-shadow:0 4px 20px rgba(20,28,23,.14);
    min-height:clamp(72px,5.74vw,100px);
    padding:clamp(10px,.9vw,16px) clamp(16px,3.3vw,58px);
    display:flex;align-items:center;
    gap:clamp(12px,1.5vw,26px);
    will-change:transform;
}
/* 画面下端に貼り付いたら、角丸と影を切り替えてバーらしく見せる */
.t-ctacard.is-pinned .t-ctacard__inner{
    box-shadow:0 -4px 20px rgba(20,28,23,.18);
}
.t-ctacard__lead{flex-shrink:0;text-align:center}
.t-ctacard__lead-main{
    display:block;font-size:clamp(15px,1.583vw,28px);
    font-weight:900;color:var(--g);line-height:1.3;letter-spacing:.01em;white-space:nowrap;
}
.t-ctacard__lead-sub{
    display:block;font-size:clamp(11px,1.237vw,21px);
    font-weight:500;color:var(--ink);margin-top:2px;line-height:1.3;white-space:nowrap;
}
.t-ctacard__div{
    flex-shrink:0;width:1px;align-self:stretch;
    margin:clamp(4px,.5vw,9px) 0;background:#cfd4cf;
}
/* 電話番号：実測 送り換算で約68px（1672px時） */
.t-ctacard__tel{
    flex:1;min-width:0;
    display:flex;align-items:center;justify-content:center;gap:clamp(6px,.6vw,11px);
    color:var(--g);text-decoration:none;
}
.t-ctacard__tel:hover{color:var(--g-d)}
.t-ctacard__tel-icon{width:clamp(20px,2.1vw,37px);height:auto;flex-shrink:0}
.t-ctacard__tel-num{
    font-size:clamp(26px,4.1vw,72px);
    font-weight:900;line-height:1.05;letter-spacing:.005em;white-space:nowrap;
}
.t-ctacard__btns{display:flex;gap:clamp(8px,1.5vw,26px);flex-shrink:0}
.t-lbl--sp{display:none}

/* ---- ボタン：実測 高さ59px / オレンジ314px / LINE283px ---- */
.t-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:.6em;
    font-size:clamp(13px,1.31vw,23px);
    font-weight:700;text-decoration:none;line-height:1.3;
    height:clamp(46px,3.53vw,62px);
    padding:0 clamp(12px,1.2vw,22px);
    border-radius:8px;text-align:center;
    transition:background .2s,transform .15s,color .2s;
}
.t-btn:hover{transform:translateY(-1px)}
.t-btn--o{background:var(--o);color:#fff;min-width:clamp(150px,18.8vw,330px)}
.t-btn--o:hover{background:var(--o-d);color:#fff}
.t-btn--line{background:var(--line);color:#fff;min-width:clamp(130px,16.9vw,297px)}
.t-btn--line:hover{background:var(--line-d);color:#fff}
.t-btn__line-icon{width:1.35em;height:1.35em;flex-shrink:0}
.t-btn--ghost{
    background:#fff;color:var(--g);border:2px solid var(--g);
    min-width:min(380px,100%);font-size:21px;height:63px;
}
.t-btn--ghost:hover{background:var(--g-ll);color:var(--g)}

/* ---- 信頼バー：実測 高さ48px / 文字にトラッキングあり / カードとの間17px ---- */
.t-trust{
    background:var(--g);
    margin-top:clamp(10px,1.02vw,18px);
    padding:clamp(9px,.75vw,14px) 0;
}
.t-trust__inner{
    display:flex;justify-content:center;align-items:center;flex-wrap:wrap;
    padding:0 clamp(12px,2.4vw,42px);
}
.t-trust__item{
    color:#fff;
    font-size:clamp(12px,1.45vw,25px);
    font-weight:700;letter-spacing:.1em;line-height:1.4;
    padding:0 clamp(14px,2.2vw,40px);position:relative;white-space:nowrap;
}
.t-trust__item + .t-trust__item::before{
    content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
    width:1px;height:1.1em;background:rgba(255,255,255,.45);
}

/* ------------------------------------------------------------
   4. 実績バー（実測高 138px）
   ------------------------------------------------------------ */
.t-stats{background:var(--cream);padding:26px 0}
.t-stats__grid{
    max-width:var(--wrap);margin:0 auto;padding:0 var(--pad);
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
}
.t-stats__item{text-align:center;padding:0 20px;position:relative}
.t-stats__item + .t-stats__item::before{
    content:"";position:absolute;left:0;top:4px;bottom:4px;width:1px;background:#d8d3c6;
}
.t-stats__num{font-size:46px;font-weight:900;color:var(--g);line-height:1.15;letter-spacing:.01em}
.t-stats__unit{font-size:26px;font-weight:900;margin-left:1px}
.t-stats__cap{font-size:21px;font-weight:700;color:var(--ink);margin-top:2px;line-height:1.5}

/* ------------------------------------------------------------
   5. お悩み（実測高 260px）
   ------------------------------------------------------------ */
.t-worry__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.t-worry__card{
    background:var(--g-ll);border-radius:10px;padding:24px 20px;
    display:flex;gap:14px;align-items:center;
}
.t-worry__check{
    flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--g);
    display:flex;align-items:center;justify-content:center;color:#fff;
}
.t-worry__text{font-size:23px;font-weight:700;line-height:1.55;color:var(--ink);margin:0}

/* ------------------------------------------------------------
   6. 買取実績ピックアップ（実測高 539px）
   カンプ：白カード / 画像は角丸でカード内にインセット / バッジなし
   ------------------------------------------------------------ */
.t-res__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.t-res__card{
    display:block;background:#fff;border-radius:12px;padding:10px 10px 20px;
    text-decoration:none;color:inherit;
    box-shadow:0 2px 10px rgba(20,28,23,.06);
    transition:box-shadow .2s,transform .2s;
}
.t-res__card:hover{box-shadow:0 10px 26px rgba(20,28,23,.13);transform:translateY(-3px)}
.t-res__imgwrap{aspect-ratio:4/3;background:var(--g-l);overflow:hidden;border-radius:8px}
.t-res__img{width:100%;height:100%;object-fit:cover;display:block}
.t-res__noimg{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    color:var(--ink-s);font-size:15px;
}
.t-res__body{padding:16px 8px 0;text-align:center}
.t-res__price{font-size:44px;font-weight:900;color:var(--g);line-height:1.15;letter-spacing:.01em}
.t-res__price-unit{font-size:24px;font-weight:900;margin-left:1px}
.t-res__note{display:block;font-size:14px;font-weight:400;color:var(--ink-s);margin-top:2px}
.t-res__meta{font-size:19px;font-weight:500;color:var(--ink);margin-top:8px;line-height:1.5}
.t-res__more{text-align:center;margin-top:26px}

/* ------------------------------------------------------------
   9-2. 最近売れた実績（買取実績ピックアップのカード部品を流用）
   ここでは4列化・機種バッジ・補足行だけを追加する
   ------------------------------------------------------------ */
.t-sec--recent{background:var(--g-ll)}
.t-res__grid.t-res__grid--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.t-res__grid--4 .t-res__imgwrap{position:relative}
.t-res__badge{
    position:absolute;left:8px;top:8px;
    background:var(--g);color:#fff;
    font-size:13px;font-weight:700;line-height:1;
    padding:6px 10px;border-radius:5px;
}
.t-res__grid--4 .t-res__price{font-size:34px}
.t-res__grid--4 .t-res__price-unit{font-size:19px}
.t-res__grid--4 .t-res__meta{font-size:17px;font-weight:700;margin-top:6px}
.t-res__sub{font-size:14px;color:var(--ink-s);line-height:1.5;margin-top:2px;overflow-wrap:anywhere}

/* ------------------------------------------------------------
   7. 選ばれる理由（実測高 296px・列間に縦罫）
   ------------------------------------------------------------ */
.t-reason__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.t-reason__item{text-align:center;padding:0 26px;position:relative}
.t-reason__item + .t-reason__item::before{
    content:"";position:absolute;left:0;top:28px;bottom:4px;width:1px;background:var(--bd);
}
.t-reason__num{
    width:50px;height:50px;border-radius:50%;background:var(--o);color:#fff;
    font-size:22px;font-weight:900;letter-spacing:.02em;
    display:flex;align-items:center;justify-content:center;margin:0 auto 14px;
}
.t-reason__title{font-size:26px;font-weight:900;color:var(--g);margin:0 0 10px;line-height:1.4}
.t-reason__text{font-size:18px;line-height:1.7;color:var(--ink);margin:0}

/* ------------------------------------------------------------
   8. 買取の流れ（実測高 192px）
   ------------------------------------------------------------ */
.t-flow__grid{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center}
.t-flow__step{display:flex;align-items:center;gap:16px;padding:0 10px}
.t-flow__num{
    flex-shrink:0;width:50px;height:50px;border-radius:50%;background:var(--g);color:#fff;
    font-size:24px;font-weight:900;display:flex;align-items:center;justify-content:center;
}
.t-flow__title{font-size:24px;font-weight:900;color:var(--g);margin:0 0 2px;line-height:1.4}
.t-flow__text{font-size:17px;color:var(--ink-s);margin:0;line-height:1.55}
.t-flow__arrow{color:var(--o);display:flex;align-items:center;flex-shrink:0;padding:0 4px}

/* ------------------------------------------------------------
   9. 対応エリア（実測高 434px）
   ------------------------------------------------------------ */
.t-area__layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:56px;align-items:center}
.t-area__mapwrap{display:flex;justify-content:center}
.t-area__map{width:100%;height:auto;display:block;max-width:300px}
.t-area__list{display:flex;flex-direction:column}
.t-area__row{
    display:grid;grid-template-columns:113px minmax(0,1fr);gap:26px;align-items:center;
    padding:16px 0;border-bottom:1px solid var(--bd);
}
.t-area__row:last-child{border-bottom:0}
.t-area__name{
    text-align:center;font-size:20px;font-weight:700;color:var(--ink);
    padding:9px 0;border-radius:7px;line-height:1.4;
}
.t-area__name--c{background:#c9e6cf}
.t-area__name--s{background:#f4c2ce}
.t-area__name--e{background:#fbdf9b}
.t-area__name--n{background:#bfdcf2}
.t-area__cities{font-size:21px;line-height:1.6;color:var(--ink);margin:0}

/* ------------------------------------------------------------
   10. お客様の声（実測高 309px）
   ------------------------------------------------------------ */
.t-voice__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.t-voice__card{background:#fff;border-radius:10px;padding:18px;box-shadow:0 2px 10px rgba(20,28,23,.05)}
.t-voice__head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.t-voice__avatar{
    width:44px;height:44px;border-radius:50%;background:#e6e9e6;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;color:#9aa39c;
}
.t-voice__who{font-size:19px;font-weight:700;color:var(--ink);line-height:1.4}
.t-voice__stars{color:var(--o);font-size:17px;letter-spacing:.1em;line-height:1.3;margin-top:2px}
.t-voice__quote{font-size:21px;font-weight:700;color:var(--g);line-height:1.6;margin:0}

/* ------------------------------------------------------------
   11. よくある質問（実測高 293px）
   ------------------------------------------------------------ */
.t-faq__list{display:flex;flex-direction:column;gap:10px}
.t-faq__item{border:1px solid var(--bd);border-radius:8px;background:#fff;overflow:hidden}
.t-faq__q{
    width:100%;background:none;border:0;cursor:pointer;text-align:left;
    display:flex;align-items:center;gap:16px;padding:14px 22px;font-family:inherit;
}
.t-faq__mark{flex-shrink:0;font-size:24px;font-weight:900;color:var(--o);line-height:1;width:20px}
.t-faq__qtext{flex:1;font-size:21px;font-weight:700;color:var(--g);line-height:1.5}
.t-faq__chev{flex-shrink:0;color:#9aa39c;transition:transform .25s;display:flex}
.t-faq__item.is-open .t-faq__chev{transform:rotate(180deg)}
.t-faq__a{display:none;padding:0 22px 20px 58px}
.t-faq__item.is-open .t-faq__a{display:block}
.t-faq__atext{font-size:18px;line-height:1.85;color:var(--ink);margin:0}


/* ------------------------------------------------------------
   12. 無料査定フォーム
   ------------------------------------------------------------ */
.t-form{background:var(--cream);padding:44px 0 48px;scroll-margin-top:110px}
.t-form__wrap{max-width:820px;margin:0 auto;padding:0 var(--pad)}
.t-form__lead{
    text-align:center;font-size:17px;line-height:1.85;color:var(--ink);
    margin:-24px 0 28px;
}
.t-form__box{
    background:#fff;border:1px solid var(--bd);border-radius:12px;
    padding:32px 34px;
    box-shadow:0 2px 12px rgba(20,28,23,.05);
}
/* CF7未設定時のフォールバック表示 */
.t-form__box .contact-fallback{text-align:center}
.t-form__box .contact-fallback__text{font-size:17px;font-weight:700;color:var(--g);margin:0}

@media (max-width:900px){
    .t-form{padding:32px 0 36px;scroll-margin-top:80px}
    .t-form__wrap{padding:0 18px}
    .t-form__lead{font-size:15px;margin:-16px 0 20px}
    .t-form__box{padding:20px 18px;border-radius:10px}
}

/* ------------------------------------------------------------
   13. 最終CTA（実測高 291px）
   ------------------------------------------------------------ */
.t-final{background:var(--g-dd);padding:28px 0 32px;text-align:center}
.t-final__head{font-size:40px;font-weight:900;color:#fff;margin:0 0 4px;line-height:1.4}
.t-final__sub{font-size:24px;font-weight:700;color:#fff;margin:0 0 16px;line-height:1.45}
.t-final__telbox{
    width:717px;max-width:100%;margin:0 auto 16px;background:#fff;border-radius:7px;padding:6px 20px;
}
.t-final__tel{
    display:block;font-size:56px;font-weight:900;color:var(--g);text-decoration:none;
    letter-spacing:.005em;line-height:1.25;white-space:nowrap;
}
.t-final__tel:hover{color:var(--g-d)}
.t-final__btns{display:flex;gap:17px;justify-content:center;flex-wrap:wrap}
.t-final__btns .t-btn--o{min-width:410px}
.t-final__btns .t-btn--line{min-width:296px}

/* ------------------------------------------------------------
   レスポンシブ（カンプはPCのみ。以下は実装上の縮退）
   ------------------------------------------------------------ */
@media (max-width:1180px){
    .t-h2{font-size:28px;margin-bottom:28px}
    .t-btn--ghost{font-size:18px;height:56px}
    .t-area__layout{grid-template-columns:220px minmax(0,1fr);gap:32px}
    .t-area__cities{font-size:18px}
    .t-stats__num{font-size:38px}
    .t-stats__unit{font-size:22px}
    .t-stats__cap{font-size:17px}
    .t-res__price{font-size:38px}
    .t-reason__title{font-size:24px}
    .t-flow__title{font-size:22px}
    .t-voice__quote{font-size:19px}
    .t-faq__qtext{font-size:19px}
    .t-final__tel{font-size:44px}
    .t-final__telbox{width:auto}
}

/* ---- タブレット以下：FVは縦積みに切り替える ---- */
@media (max-width:900px){
    .t-sec{padding:32px 0}
    /* コンテナの左右余白をSP用に詰める（見出しが1行に収まらない主因だった） */
    .t-wrap{padding:0 18px}
    .t-h2{font-size:22px;margin-bottom:24px;line-height:1.45;letter-spacing:0}
    .t-br-sp{display:inline}

    /* 信頼バーと実績バーで区切り線の位置を揃える */
    .t-trust__inner{padding:0 10px}
    .t-stats__grid{padding:0 10px}
    .t-stats__item{padding:0 6px}

    /* --- FV：テキストが上、写真が下。写真はFV全面に敷き、
           上部だけ半透明のベールで覆うのでPC同様に背景が透ける --- */
    .t-fv{
        /* 写真の見える高さ。SP画像は上端60%から下が農機なので、
           テキスト部の高さに対して 0.67 倍あれば上下とも切れない。
           必要以上に長くすると写真パートが間延びするため240pxに設定 */
        --sp-photo:240px;
        /* さらに写真を下へずらしたいときに使う微調整用 */
        --sp-photo-shift:0px;
        /* PCより背景が明るく出るぶん、同じ見え方になるよう少し薄める */
        --veil-op:.78;
        display:block;min-height:0;position:relative;
        padding-bottom:var(--sp-photo);
    }
    /* 写真の枠をFVより下へ --sp-photo-shift ぶん伸ばす。
       はみ出た分は overflow:hidden で切られるので、
       結果として写真だけが下へずれ、被写体の上側（トラクターの頭）が入る。
       縦横比の都合で background-position では動かせないため、この方法を採る */
    .t-fv__photo{
        position:absolute;
        top:0;left:0;right:0;bottom:calc( var(--sp-photo-shift) * -1 );
        background-position:center bottom;
    }
    .t-fv__veil{
        display:block;
        clip-path:polygon(0 0,100% 0,100% calc(100% - var(--sp-photo)),0 calc(100% - var(--sp-photo)));
    }
    .t-fv__text{position:relative;z-index:2;padding:26px 20px 15px}
    .t-fv__ribbon{font-size:15px;padding:9px 26px 9px 15px;clip-path:polygon(0 0,100% 0,calc(100% - 9px) 50%,100% 100%,0 100%)}
    .t-fv__head{font-size:clamp(34px,6.4vw,38px);margin-top:14px;white-space:normal}
    .t-fv__sub{font-size:15px;margin-top:18px;white-space:normal}
    .t-fv__tags{gap:6px;margin-top:14px;flex-wrap:nowrap}
    .t-fv__tag{
        font-size:clamp(10.5px,3.05vw,13px);
        padding:7px clamp(6px,2vw,11px);
        border-radius:6px;
    }

    /* --- CTAカード：SPは最初から画面下端に固定した細い1行バー。
           流れの中では高さ0にして、FVと信頼バーの間に隙間を作らない --- */
    .t-ctacard{margin-top:0;padding:0;height:0;overflow:visible}
    .t-ctacard__inner{
        position:fixed;left:0;right:0;bottom:0;
        transform:none;
        border-radius:0;min-height:0;
        flex-direction:row;align-items:center;
        gap:8px;padding:6px 10px;
        border-top:1px solid var(--g);
        box-shadow:0 -4px 16px rgba(20,28,23,.18);
        transition:transform .25s ease-out;
    }
    .t-ctacard.is-off .t-ctacard__inner{transform:translateY(110%)}
    .t-ctacard__lead{display:none}
    .t-ctacard__div{display:none}
    .t-ctacard__tel{
        flex:0 0 auto;gap:4px;padding-right:8px;border-right:1px solid #dfe4df;
    }
    .t-ctacard__tel-icon{width:18px}
    .t-ctacard__tel-num{font-size:16px;letter-spacing:-.01em}
    .t-ctacard__btns{flex-direction:row;gap:6px;flex:1;min-width:0}
    .t-ctacard .t-btn{height:40px;font-size:12.5px;padding:0 6px;flex:1;width:auto;min-width:0}
    .t-ctacard .t-btn__line-icon{width:1.2em;height:1.2em}
    .t-lbl{display:none}
    .t-lbl--sp{display:inline}

    /* --- 信頼バー：3項目を横一列のまま、区切り線あり --- */
    .t-trust{margin-top:0;padding:9px 0}
    .t-trust__inner{flex-direction:row;flex-wrap:nowrap;gap:0;padding:0 8px}
    .t-trust__item{
        flex:1;min-width:0;justify-content:center;text-align:center;
        font-size:13px;padding:0 6px;letter-spacing:.02em;white-space:normal;line-height:1.35;
    }
    .t-trust__item + .t-trust__item::before{display:block;height:2.2em}

    .t-stats__num{font-size:30px}
    .t-stats__unit{font-size:17px}
    .t-stats__cap{font-size:14px}
    .t-stats__item{padding:0 8px}
    .t-worry__grid,.t-res__grid,.t-voice__grid{grid-template-columns:1fr;gap:14px}
    .t-res__grid.t-res__grid--4{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
    .t-res__grid--4 .t-res__card{padding:6px 6px 12px}
    .t-res__grid--4 .t-res__price{font-size:22px}
    .t-res__grid--4 .t-res__price-unit{font-size:13px}
    .t-res__grid--4 .t-res__meta{font-size:13px}
    .t-res__grid--4 .t-res__body{padding:10px 4px 0}
    .t-res__sub{font-size:11.5px}
    .t-res__badge{font-size:11px;padding:4px 7px;left:6px;top:6px}
    .t-worry__text{font-size:18px}
    .t-res__price{font-size:34px}
    .t-res__meta{font-size:16px}
    .t-reason__grid{grid-template-columns:1fr;gap:26px}
    .t-reason__item{padding:0}
    .t-reason__item + .t-reason__item::before{display:none}
    .t-reason__title{font-size:22px}
    .t-reason__text{font-size:16px}
    .t-flow__grid{grid-template-columns:1fr}
    .t-flow__step{padding:8px 0}
    .t-flow__title{font-size:21px}
    .t-flow__arrow{transform:rotate(90deg);margin:0 auto}
    .t-area__layout{grid-template-columns:1fr;gap:22px}
    .t-area__map{max-width:230px;margin:0 auto}
    .t-area__row{grid-template-columns:96px minmax(0,1fr);gap:14px}
    .t-area__name{font-size:16px}
    .t-area__cities{font-size:16px}
    .t-voice__quote{font-size:18px}
    .t-faq__qtext{font-size:17px}
    .t-faq__a{padding:0 20px 18px 20px}
    .t-faq__atext{font-size:16px}
    .t-btn--ghost{min-width:0;width:100%;font-size:17px;height:54px}
    .t-final__head{font-size:26px}
    .t-final__sub{font-size:17px}
    .t-final__tel{font-size:34px}
    .t-final__btns{flex-direction:column;gap:10px}
    .t-final__btns .t-btn,
    .t-final__btns .t-btn--o,
    .t-final__btns .t-btn--line{width:100%;min-width:0;height:52px;font-size:16px;padding:0 14px}
}

@media (max-width:600px){
    .t-final__tel{font-size:28px}
    .t-stats__num{font-size:26px}
}

/* 小型端末（iPhone SE 等）：FVのタグ3つと見出しを1行に収めきる */
@media (max-width:360px){
    .t-h2{font-size:19px}
    .t-fv__text{padding-left:16px;padding-right:16px}
    .t-fv__tags{gap:5px}
    .t-fv__tag{font-size:10px;padding:6px 5px}
    .t-ctacard__tel-num{font-size:15px}
    .t-ctacard .t-btn{font-size:11.5px}
}


/* ============================================================
   ヘッダー電話番号：追従CTAバナーと同じ濃緑に統一
   （main.css の後半で --c-gold-deep が当たっているため上書き）
   ============================================================ */
.i-header__tel,
.i-header__tel:hover,
.i-header__tel svg,
.i-header__tel-num{color:#1b5e3a}
.i-header__tel:hover{opacity:.82}

/* SP用ヘッダー（別クラス）も同じ濃緑に揃える。SP幅でしか出ない要素なのでPCへの影響なし */
@media (max-width:900px){
    .i-header__sp-tel,
    .i-header__sp-tel:hover,
    .i-header__sp-tel svg,
    .i-header__sp-tel-num{color:#1b5e3a}
}
