@charset "utf-8";
/* ============================================================
   山形版 TOPページ専用CSS（v3 / 2026-08）
   モックアップ画像(724×2172px)を実測し、実寸換算(×1.8)で反映。
   基準ビューポート 1302px / コンテナ 1200px。
   .nxp-top 配下にスコープ。他ページには影響しません。
============================================================ */

.nxp-top{
    --navy:#06203E;
    --navy-2:#0A2C52;
    --tag-blue:#EBF0F5;
    --tag-blue-bd:#D4DFEA;
    --cream:#FDF9F2;
    --panel:#FEFCF9;
    --beige:#F2EBE0;
    --bd:#EFE7DC;
    --red:#C51013;
    --red-dark:#A30D0F;
    --line:#02802F;
    --line-dark:#009A3A;
    --ink:#06203E;
    --ink-2:#4A4640;
    --r:6px;
    font-family:'Noto Sans JP',sans-serif;
    color:var(--ink);
    background:#fff;
    line-height:1.7;
}
.nxp-top *{box-sizing:border-box;}
.nxp-container{max-width:1200px;margin:0 auto;padding:0 48px;}
.nxp-container--narrow{max-width:1100px;margin-left:auto;margin-right:auto;}
.nxp-accent{color:var(--red);}
.nxp-sp{display:none;}
.nxp-ph{
    display:flex;align-items:center;justify-content:center;
    width:100%;height:100%;background:var(--beige);
    color:#B0A493;font-size:13px;letter-spacing:.08em;
}

/* ---------- セクション共通（実測：見出し40px / リード15px） ---------- */
.nxp-sec{padding:62px 0;}
.nxp-sec--alt{background:var(--cream);}
.nxp-sec__title{
    font-size:40px;font-weight:900;text-align:center;
    line-height:1.4;letter-spacing:.01em;margin:0 0 16px;color:var(--navy);
}
.nxp-sec__lead{
    font-size:15px;line-height:1.85;text-align:center;
    color:var(--ink-2);margin:0 auto 34px;max-width:900px;
}

/* ---------- ボタン共通 ---------- */
.nxp-btn{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-decoration:none;border-radius:var(--r);line-height:1.3;
    transition:background .2s,color .2s,border-color .2s;
}
.nxp-btn__main{font-size:20px;font-weight:700;}
.nxp-btn__sub{font-size:12px;font-weight:400;margin-top:3px;}
.nxp-btn__tel{font-size:72px;font-weight:900;letter-spacing:.01em;line-height:1;}

.nxp-btn--tel{background:var(--red);color:#fff;height:76px;padding:8px 16px;}
.nxp-btn--tel .nxp-btn__sub{color:#F3B9C2;margin:0 0 4px;font-size:14px;font-weight:700;}
.nxp-btn--tel:hover{background:var(--red-dark);}

.nxp-btn--line{background:var(--line);color:#fff;height:67px;padding:8px 14px;}
.nxp-btn--line .nxp-btn__sub{color:#FFE9A8;font-weight:700;}
.nxp-btn--line:hover{background:var(--line-dark);}

.nxp-btn--web{background:#fff;color:var(--navy);border:1.5px solid var(--navy);height:67px;padding:8px 14px;}
.nxp-btn--web .nxp-btn__sub{color:#7A8390;}
.nxp-btn--web:hover{background:var(--tag-blue);}

.nxp-btn--outline{
    display:inline-flex;flex-direction:row;align-items:center;
    background:#fff;color:var(--navy);border:1.5px solid var(--navy);
    font-weight:700;font-size:15px;padding:14px 36px;
}
.nxp-btn--outline:hover{background:var(--navy);color:#fff;}

/* ============================================================
   1. FV（モックアップ 1672×941px を実測して実装）
   基準幅1672px。数値は原寸、以下は vw で等比縮小。
   ・背景：全幅写真＋上部クリームのグラデーション
   ・左にコピー、右上に赤いプロモ、CTAは画面下部の固定バーへ
============================================================ */
.ynk-fv{
    position:relative;
    /* --fv-ratio: FV背景画像の縦横比（1855÷740＝2.507）。画像を差し替えたらここを更新 */
    --fv-ratio:2.507;
    /* 画像の自然な高さに合わせる＝上下の余白も切れも出ない。
       ただし画面が低い場合は「ヘッダー74px＋固定バー144px」を除いた高さで頭打ちにし、
       初期表示で機械が最下部まで見えるようにする（はみ出す分は上の空だけが切れる） */
    /* 画面が低いほど上の空を切って詰めるが、切りすぎるとコピーが機械に重なるため
       自然な高さの88%を下限とする（余白は cover が受け持つので、ここは可読性の担保） */
    height:clamp(
        calc(100vw / var(--fv-ratio) * .88),
        calc(100vh - 74px - 144px),
        calc(100vw / var(--fv-ratio))
    );
    min-height:400px;
    display:flex;align-items:stretch;
    background:#FDF7EC;
    overflow:hidden;
}
.ynk-fv__bg{
    position:absolute;inset:0;
    background-image:var(--fv-pc);
    /* --fv-fit: contain = 画像を切らずに全部見せる（上に余白／既定）
                cover   = 枠いっぱいに敷き詰める（左右または上下が切れる）
       .ynk-fv 側で --fv-fit:cover; を指定すれば即座に元の挙動へ戻せます */
    background-size:var(--fv-fit,cover);   /* cover＝どんな比率でも余白が出ない（切れる方向に倒す） */
    background-repeat:no-repeat;
    background-position:center bottom;
    z-index:0;
}
/* 可読性の保険（支給画像に既にクリーム処理がある前提で、ごく薄く）
   焼き込みの無い素の写真を使う場合は下の --fv-veil を 1 に上げてください */
.ynk-fv__bg::after{
    content:"";position:absolute;inset:0;
    opacity:var(--fv-veil,.28);
    background:
        linear-gradient(to bottom,
            rgba(253,247,236,1) 0%,
            rgba(253,247,236,.92) 46%,
            rgba(253,247,236,.45) 66%,
            rgba(253,247,236,0)   84%),
        linear-gradient(to right,
            rgba(253,247,236,.9) 0%,
            rgba(253,247,236,.35) 46%,
            rgba(253,247,236,0)   64%);
}
.ynk-fv__inner{
    position:relative;z-index:1;
    width:100%;max-width:1672px;margin:0 auto;
    display:flex;justify-content:space-between;align-items:flex-start;
    padding:34px 4.96% 0 12.32%;      /* 上はヘッダー(74px固定)からの余裕を確保 */
}

/* --- 左：コピー --- */
.ynk-fv__copy{max-width:none;flex:1 1 auto;min-width:0;}

.ynk-fv__badge{
    display:inline-block;margin:0 0 28px;
    background:#F0E7D6;color:#06203E;
    font-size:23px;font-weight:700;letter-spacing:.04em;
    padding:14px 26px;border-radius:6px;
}
.ynk-fv__catch{
    margin:0 0 16px;color:#06203E;
    font-size:68px;font-weight:900;
    line-height:1.16;letter-spacing:.005em;
    white-space:nowrap;              /* 折り返し厳禁：2行の塊として見せる */
}
.ynk-fv__catch-l1,
.ynk-fv__catch-l2{display:block;}
.ynk-fv__catch-l2{color:#C51013;}

.ynk-fv__lead{
    margin:0;color:#3D3A34;
    font-size:18px;line-height:1.5;font-weight:500;
    white-space:nowrap;
}

/* --- 右上：プロモバッジ（2026/08 実測：淡色カード＋紺枠＋赤帯）---
   モック1672px基準：カード379×239 / 枠2px / 角丸18px / 右余白83px / FV上端から84px --- */
.ynk-fv__promo-wrap{
    flex-shrink:0;margin-top:0;
}
.ynk-fv__promo{
    width:379px;min-height:239px;
    background:rgba(255,255,255,.35);
    border:2px solid #06203E;border-radius:18px;
    padding:22px 25px 18px;
    display:flex;flex-direction:column;align-items:center;
    text-align:center;color:#06203E;
}
.ynk-fv__promo-label{
    font-size:51px;font-weight:900;line-height:1.22;letter-spacing:.01em;
}
.ynk-fv__promo-line{
    display:block;width:100%;height:2px;
    background:#06203E;margin:11px 0 14px;
}
.ynk-fv__promo-target{
    display:block;width:100%;
    background:#C51013;border-radius:5px;
    padding:7px 6px;color:#fff;
    font-size:26px;font-weight:900;line-height:1.2;letter-spacing:.005em;
    white-space:nowrap;
}

/* --- 1672px 未満は等比縮小（vw換算：値 ÷ 1672 × 100） --- */
@media(max-width:1671px){
    .ynk-fv__inner{padding-top:2.03vw;}
    .ynk-fv__badge{font-size:1.08vw;padding:.42vw 1.08vw;margin-bottom:.72vw;}
    .ynk-fv__catch{font-size:4.07vw;margin-bottom:.96vw;}
    .ynk-fv__lead{font-size:1.08vw;margin-bottom:0;}
    .ynk-fv__promo-wrap{margin-top:0;}
    .ynk-fv__promo{
        width:22.67vw;min-height:14.29vw;
        border-radius:1.08vw;border-width:.12vw;
        padding:1.32vw 1.50vw 1.08vw;
    }
    .ynk-fv__promo-label{font-size:3.05vw;}
    .ynk-fv__promo-line{height:.12vw;margin:.66vw 0 .84vw;}
    .ynk-fv__promo-target{font-size:1.55vw;padding:.42vw .36vw;border-radius:.30vw;}
}

/* --- タブレット：プロモを下げ、コピー幅を広げる --- */
@media(max-width:900px){
    .ynk-fv{height:auto;min-height:0;padding-bottom:40vw;}   /* PCの高さ固定を解除し縦組みへ（100÷2.507≒40vw） */
    .ynk-fv__inner{
        flex-direction:column;align-items:stretch;
        padding:32px 24px 0;
        width:100%;max-width:100%;
    }
    .ynk-fv__copy{max-width:none;width:100%;}
    .ynk-fv__catch{font-size:6.9vw;white-space:nowrap;}
    .ynk-fv__lead{font-size:2.1vw;white-space:normal;}
    .ynk-fv__promo-wrap{margin:22px auto 0 0;}
    .ynk-fv__promo{
        width:fit-content;min-width:320px;min-height:0;
        border-radius:14px;border-width:2px;padding:16px 20px 14px;
    }
    .ynk-fv__promo-label{font-size:3.4vw;}
    .ynk-fv__promo-line{width:100%;height:2px;margin:10px 0 12px;}
    .ynk-fv__promo-target{font-size:2.4vw;padding:7px 10px;border-radius:5px;}
}

/* --- スマートフォン --- */
@media(max-width:767px){
    .ynk-fv{height:auto;min-height:0;padding-bottom:60vw;}   /* 写真を下に見せる領域 */
    .ynk-fv__bg{background-image:var(--fv-sp,var(--fv-pc));background-size:var(--fv-fit-sp,cover);background-position:center bottom;}
    .ynk-fv__bg::after{
        background:linear-gradient(to bottom,
            rgba(253,247,236,.99) 0%,
            rgba(253,247,236,.98) 40%,
            rgba(253,247,236,.55) 55%,
            rgba(253,247,236,0)   72%);
    }
    .ynk-fv__inner{padding:22px 18px 0;width:100%;max-width:100%;}
    /* SPは中央基調に揃える（バッジ・キャッチ・リード・プロモすべて） */
    .ynk-fv__copy{text-align:center;}
    .ynk-fv__copy{width:100%;max-width:100%;min-width:0;}
    .ynk-fv__badge{font-size:12px;padding:8px 14px;margin-bottom:14px;letter-spacing:.02em;}
    /* 2行目「農機具を高く買います。」は全角11文字。
       nowrap のため、狭い端末でも収まるよう vw で上限を掛ける（11字×font ≦ 画面幅-左右余白） */
    .ynk-fv__catch{font-size:min(30px,7.6vw);line-height:1.18;margin-bottom:14px;white-space:nowrap;}
    .ynk-fv__lead{font-size:13px;line-height:1.7;margin-bottom:7px;white-space:normal;word-break:break-word;}
    .ynk-fv__lead br{display:none;}
    /* SP：バッジ全体を横1列（ラベル｜縦罫｜赤帯）にして中央配置 */
    .ynk-fv__promo-wrap{width:fit-content;max-width:100%;align-self:center;margin:8px auto 0;filter:none;}
    .ynk-fv__promo{
        width:fit-content;max-width:100%;min-width:0;min-height:0;
        flex-direction:row;align-items:center;
        border-radius:9px;border-width:1.5px;padding:8px 12px;
    }
    .ynk-fv__promo-label{
        font-size:min(13px,3.4vw);line-height:1.3;white-space:nowrap;
    }
    .ynk-fv__promo-label br{display:none;}   /* 1行に畳む */
    /* 罫線を縦向きに */
    .ynk-fv__promo-line{
        width:1.5px;height:min(22px,5.8vw);
        margin:0 min(10px,2.6vw);flex-shrink:0;
    }
    .ynk-fv__promo-target{
        width:auto;flex-shrink:0;
        font-size:min(12px,3.1vw);padding:4px min(11px,2.9vw);border-radius:4px;
    }
}

/* ============================================================
   2. 信頼バー（実測：高さ65px）
============================================================ */
.nxp-trust{background:var(--navy);}
.nxp-trust__list{
    display:grid;grid-template-columns:repeat(4,1fr);
    list-style:none;margin:0 auto;padding:0;max-width:1200px;height:65px;
}
.nxp-trust__list li{
    display:flex;align-items:center;justify-content:center;
    color:#DCE3EC;font-size:15px;font-weight:700;
    border-right:1px solid rgba(255,255,255,.16);
}
.nxp-trust__list li:last-child{border-right:none;}

/* ============================================================
   3. 大型機の価値（アイコンバッジ＋赤の強調行＋下部に写真）
============================================================ */
.nxp-value__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.nxp-value__card{
    background:#fff;border:1px solid var(--bd);border-radius:var(--r);
    padding:20px 20px 20px;display:flex;flex-direction:column;
}
.nxp-value__head{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
/* 番号バッジ（全角数字。買取の流れ・選ばれる理由と記号を統一） */
.nxp-value__badge{
    display:flex;align-items:center;justify-content:center;
    width:34px;height:34px;border-radius:5px;background:var(--navy);flex-shrink:0;
    color:#fff;font-size:17px;font-weight:900;line-height:1;
    /* 全角は字面が中央よりやや下に寄るため、光学的に中央へ寄せる */
    text-indent:.02em;padding-bottom:1px;
}
.nxp-value__title{font-size:19px;font-weight:900;margin:0;color:var(--navy);letter-spacing:.01em;}
.nxp-value__text{font-size:14px;line-height:1.85;color:var(--ink-2);margin:0 0 16px;flex:1;}
.nxp-value__text strong{color:var(--red);font-weight:700;}
.nxp-value__figure{aspect-ratio:16/9;border-radius:5px;overflow:hidden;background:var(--beige);}
.nxp-value__figure img{width:100%;height:100%;object-fit:cover;display:block;}

/* ============================================================
   4. 高価買取の対象機械（見出し上／写真中／説明下）
============================================================ */
.nxp-target__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;}
.nxp-target__card{
    background:#fff;border:1px solid var(--bd);border-radius:var(--r);
    padding:18px 18px 20px;text-decoration:none;color:inherit;
    display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s;
}
a.nxp-target__card:hover{border-color:var(--navy);box-shadow:0 4px 14px rgba(6,32,62,.08);}
.nxp-target__name{font-size:20px;font-weight:900;text-align:center;margin:0 0 12px;color:var(--navy);}
.nxp-target__figure{aspect-ratio:16/10;margin-bottom:14px;display:flex;align-items:center;justify-content:center;}
.nxp-target__figure img{max-width:var(--img-scale,100%);max-height:var(--img-scale,100%);object-fit:contain;display:block;}
.nxp-target__text{font-size:13px;line-height:1.8;color:var(--ink-2);margin:0;}

/* ============================================================
   5. 買取実績（万円表記・価格はラベル横並び）
============================================================ */
.nxp-cases__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;}
.nxp-cases__card{
    background:#fff;border:1px solid var(--bd);border-radius:var(--r);
    overflow:hidden;transition:border-color .2s,box-shadow .2s;
}
.nxp-cases__card:hover{border-color:var(--navy);box-shadow:0 4px 14px rgba(6,32,62,.08);}
.nxp-cases__link{display:block;text-decoration:none;color:inherit;padding:16px 14px 18px;}
.nxp-cases__type{font-size:22px;font-weight:900;text-align:center;margin:0 0 2px;color:var(--navy);}
.nxp-cases__area{font-size:13px;text-align:center;color:var(--ink-2);margin:0 0 10px;}
.nxp-cases__figure{
    aspect-ratio:4/3;margin-bottom:12px;display:flex;align-items:center;justify-content:center;
    overflow:hidden;
}
.nxp-cases__figure img{width:100%;height:100%;object-fit:contain;display:block;}
.nxp-cases__feature{font-size:13px;text-align:center;color:var(--ink-2);margin:0 0 8px;min-height:1.3em;}
.nxp-cases__price{display:flex;align-items:baseline;justify-content:center;gap:7px;margin:0;}
.nxp-cases__price-label{font-size:13px;font-weight:700;color:var(--ink);}
.nxp-cases__price-main{font-size:34px;font-weight:900;color:var(--red);line-height:1;}
.nxp-cases__price-main--na{font-size:18px;}
.nxp-cases__price-unit{font-size:15px;font-weight:700;margin-left:1px;}
.nxp-cases__note{font-size:12px;color:var(--ink-2);text-align:center;margin:16px 0 0;}
.nxp-cases__more{text-align:center;margin-top:24px;}

/* ============================================================
   6. 複数台売却（PC実測：カード4列＋赤CTAを下に中央 / SP：2×2）
   基準：PCモック1448px・コンテナ1339px → 当サイトのコンテナ1200pxへ等比換算
============================================================ */
.nxp-bulk{background:var(--navy);padding:52px 0 56px;color:#fff;}

.nxp-bulk__title{font-size:29px;font-weight:900;text-align:center;line-height:1.45;margin:0 0 14px;letter-spacing:.01em;}
.nxp-bulk__lead{font-size:15px;line-height:1.85;text-align:center;color:#C3CCD9;margin:0 0 26px;}

.nxp-bulk__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.nxp-bulk__card{
    display:flex;align-items:center;
    min-height:150px;padding:22px 24px;
    border:1px solid rgba(255,255,255,.28);border-radius:10px;
    background:linear-gradient(135deg,rgba(255,255,255,.085) 0%,rgba(255,255,255,.02) 60%,rgba(255,255,255,0) 100%);
}
.nxp-bulk__text{width:100%;min-width:0;}
.nxp-bulk__card-title{font-size:20px;font-weight:900;margin:0 0 10px;line-height:1.4;letter-spacing:0;}
.nxp-bulk__card-desc{font-size:14.5px;line-height:1.8;color:#D5DDE7;margin:0;}

.nxp-bulk__cta-wrap{display:flex;justify-content:center;margin-top:27px;}
.nxp-bulk__cta{
    display:inline-flex;align-items:center;justify-content:center;gap:26px;
    width:470px;max-width:100%;height:67px;
    background:#CB1513;border-radius:8px;
    color:#fff;font-size:21px;font-weight:900;letter-spacing:.02em;
    text-decoration:none;transition:background .2s;
}
.nxp-bulk__cta:hover{background:#A81110;}
.nxp-bulk__cta i,.nxp-bulk__cta svg{width:21px;height:21px;stroke-width:3;color:#fff;stroke:currentColor;}

/* ============================================================
   7. 買取の流れ（ステップ間にシェブロン）
============================================================ */
.nxp-flow__list{
    display:grid;grid-template-columns:repeat(4,1fr);gap:38px;
    list-style:none;margin:0 0 24px;padding:0;
}
.nxp-flow__item{
    background:#fff;border:1px solid var(--bd);border-radius:8px;
    padding:18px 16px 20px;position:relative;
}
.nxp-flow__head{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.nxp-flow__num{
    display:flex;align-items:center;justify-content:center;
    width:26px;height:26px;border-radius:50%;flex-shrink:0;
    background:var(--navy);color:#fff;font-size:14px;font-weight:900;
}
.nxp-flow__title{font-size:17px;font-weight:900;margin:0;color:var(--navy);}
.nxp-flow__head{border-bottom:1px solid var(--bd);padding-bottom:9px;}
.nxp-flow__body{display:flex;align-items:flex-start;gap:9px;}
.nxp-flow__body i,.nxp-flow__body svg{width:22px;height:22px;color:var(--navy);stroke:currentColor;flex-shrink:0;margin-top:2px;}
.nxp-flow__body p{font-size:13.5px;line-height:1.75;color:var(--ink-2);margin:0;}
.nxp-flow__arrow{
    position:absolute;display:none;align-items:center;justify-content:center;color:#AAB3BE;
}
.nxp-flow__arrow i,.nxp-flow__arrow svg{width:20px;height:20px;stroke-width:2.5;color:inherit;stroke:currentColor;}
.nxp-flow__arrow--right{right:-29px;top:50%;transform:translateY(-50%);}
.nxp-flow__arrow--down{left:50%;bottom:-27px;transform:translateX(-50%);}
/* PC：横一列なので右矢印のみ（最後の1つを除く） */
.nxp-flow__item:not(:last-child) .nxp-flow__arrow--right{display:flex;}
.nxp-flow__band{
    background:var(--beige);border-radius:var(--r);
    text-align:center;font-size:17px;font-weight:700;color:var(--navy);
    padding:15px;margin:0;
}

/* ============================================================
   8. FAQ
============================================================ */
.nxp-faq__list{display:flex;flex-direction:column;gap:8px;}
.nxp-faq__item{background:#fff;border:1px solid var(--bd);border-radius:var(--r);}
.nxp-faq__q{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    width:100%;background:none;border:none;cursor:pointer;
    padding:14px 18px;text-align:left;
    font-family:inherit;font-size:16px;font-weight:700;color:var(--navy);
}
.nxp-faq__mark{width:18px;height:18px;color:#7A8390;flex-shrink:0;}
.nxp-faq__a{display:none;padding:0 18px 15px;}
.nxp-faq__item.is-open .nxp-faq__a{display:block;}
.nxp-faq__a p{font-size:14px;line-height:1.8;color:var(--ink-2);margin:0;}
.nxp-faq__more{text-align:center;margin-top:26px;}

/* ============================================================
   9. 最終CTA（実測：見出し38px）
============================================================ */
.nxp-final{background:var(--cream);padding:56px 0 60px;text-align:center;}
.nxp-final__title{font-size:38px;font-weight:900;line-height:1.45;margin:0 0 8px;color:var(--navy);}
.nxp-final__lead{font-size:16px;color:var(--ink-2);margin:0 0 26px;}
.nxp-final__cta{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.nxp-final__cta .nxp-btn--tel{height:67px;}
.nxp-final__cta .nxp-btn__tel{font-size:38px;}
.nxp-final__cta .nxp-btn--tel .nxp-btn__sub{font-size:13px;}

/* ============================================================
   タブレット
============================================================ */
@media(max-width:1200px){
    .nxp-container{padding:0 32px;}
    .nxp-fv__catch{font-size:5.4vw;}
    .nxp-btn__tel{font-size:5.6vw;}
    .nxp-sec__title{font-size:3.2vw;}
}
@media(max-width:1024px){
    .nxp-fv{grid-template-columns:1fr;}
    .nxp-fv__media{min-height:0;aspect-ratio:16/9;}
    .nxp-fv__panel-inner{padding:32px;}
    .nxp-fv__catch{font-size:44px;}
    .nxp-btn__tel{font-size:52px;}
    .nxp-sec__title{font-size:30px;}
    .nxp-final__title{font-size:28px;}
    .nxp-value__grid,.nxp-cases__grid{grid-template-columns:repeat(2,1fr);}
    .nxp-target__grid{grid-template-columns:repeat(3,1fr);gap:9px;}
    .nxp-target__name{font-size:17px;}
    .nxp-target__text{font-size:12px;}

    /* BtoB：2×2 */
    .nxp-bulk__grid{grid-template-columns:repeat(2,1fr);gap:16px;}
    .nxp-bulk__card{min-height:0;padding:20px 22px;}
    .nxp-bulk__card-title{font-size:19px;margin-bottom:9px;}
    .nxp-bulk__card-desc{font-size:14px;}
    .nxp-bulk__title{font-size:27px;}
    .nxp-bulk__cta{width:440px;height:64px;font-size:20px;gap:20px;}

    /* フロー：2×2（右→と下∨を併用） */
    .nxp-flow__list{grid-template-columns:repeat(2,1fr);gap:44px 42px;}
    .nxp-flow__item:not(:last-child) .nxp-flow__arrow--right{display:none;}
    .nxp-flow__item:nth-child(odd) .nxp-flow__arrow--right{display:flex;right:-31px;}
    .nxp-flow__item:nth-child(1) .nxp-flow__arrow--down,
    .nxp-flow__item:nth-child(2) .nxp-flow__arrow--down{display:flex;bottom:-32px;}
}

/* ============================================================
   スマートフォン
============================================================ */
@media(max-width:767px){
    .nxp-sp{display:block;}
    .nxp-container{padding:0 18px;}
    .nxp-sec{padding:44px 0;}
    .nxp-sec__title{font-size:24px;}
    .nxp-sec__lead{font-size:14px;text-align:left;margin-bottom:26px;}

    .nxp-fv__media{aspect-ratio:4/3;background-image:none !important;}
    .nxp-fv__media-img{display:block;width:100%;height:100%;object-fit:cover;}
    .nxp-fv__panel-inner{padding:26px 18px 30px;}
    .nxp-fv__badge{font-size:12px;padding:8px 14px;}
    .nxp-fv__catch{font-size:34px;line-height:1.36;margin-bottom:16px;}
    .nxp-fv__lead{font-size:13px;}
    .nxp-fv__tags{grid-template-columns:repeat(2,1fr);}
    .nxp-fv__tag{height:44px;font-size:12px;}
    .nxp-fv__record{height:auto;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 16px;}
    .nxp-fv__record-body{text-align:left;}
    .nxp-fv__record-value{font-size:17px;}
    .nxp-fv__record-value strong{font-size:24px;}
    .nxp-btn--tel{height:70px;}
    .nxp-btn__tel{font-size:36px;}
    .nxp-fv__cta-row{grid-template-columns:1fr;gap:7px;}

    .nxp-trust__list{grid-template-columns:repeat(2,1fr);height:auto;}
    .nxp-trust__list li{
        font-size:13px;padding:12px 6px;
        border-bottom:1px solid rgba(255,255,255,.16);
    }
    .nxp-trust__list li:nth-child(2n){border-right:none;}
    .nxp-trust__list li:nth-last-child(-n+2){border-bottom:none;}

    .nxp-value__grid,.nxp-target__grid,.nxp-cases__grid,
    .nxp-final__cta{grid-template-columns:1fr;}

    /* BtoB：SPも2×2を維持（モック準拠）。ただし文字は可読サイズを確保 */
    .nxp-bulk{padding:34px 0 36px;}
    .nxp-bulk__title{font-size:21px;line-height:1.5;}
    .nxp-bulk__lead{font-size:13px;margin-bottom:18px;}
    .nxp-bulk__grid{grid-template-columns:repeat(2,1fr);gap:10px;}
    .nxp-bulk__card{padding:13px 12px;border-radius:8px;}
    .nxp-bulk__card-title{font-size:14.5px;margin-bottom:6px;line-height:1.4;}
    .nxp-bulk__card-desc{font-size:12.5px;line-height:1.7;}
    .nxp-bulk__cta-wrap{margin-top:18px;}
    .nxp-bulk__cta{width:100%;height:56px;font-size:16px;gap:12px;border-radius:6px;}
    .nxp-bulk__cta i,.nxp-bulk__cta svg{width:18px;height:18px;}

    /* フロー：SPも2×2 */
    .nxp-flow__list{grid-template-columns:repeat(2,1fr);gap:30px 26px;}
    .nxp-flow__item{padding:12px 11px 14px;}
    .nxp-flow__head{gap:7px;padding-bottom:7px;}
    .nxp-flow__num{width:22px;height:22px;font-size:12px;}
    .nxp-value__badge{width:28px;height:28px;border-radius:4px;font-size:14px;}
    .nxp-flow__title{font-size:13.5px;}
    .nxp-flow__body{gap:7px;}
    .nxp-flow__body i,.nxp-flow__body svg{width:18px;height:18px;}
    .nxp-flow__body p{font-size:11.5px;line-height:1.65;}
    .nxp-flow__arrow i,.nxp-flow__arrow svg{width:15px;height:15px;}
    .nxp-flow__item:nth-child(odd) .nxp-flow__arrow--right{right:-20px;}
    .nxp-flow__item:nth-child(1) .nxp-flow__arrow--down,
    .nxp-flow__item:nth-child(2) .nxp-flow__arrow--down{bottom:-22px;}
    .nxp-final__title{font-size:23px;}
    .nxp-final__cta .nxp-btn__tel{font-size:34px;}
    .nxp-flow__band{font-size:14px;}
}


/* 狭幅端末（iPhone SE / 360px級Android）：2列だと本文が読めない大きさになるため1列へ
   390px以上（iPhone 12〜16, 主要Android）はモック通り2×2を維持 */
@media(max-width:389px){
    .nxp-top .nxp-bulk__grid,
    .nxp-top .nxp-flow__list{grid-template-columns:1fr;gap:10px;}
    .nxp-top .nxp-flow__arrow{display:none !important;}
    .nxp-top .nxp-bulk__card-title{font-size:16px;}
    .nxp-top .nxp-bulk__card-desc{font-size:13px;}
}


/* ============================================================
   10. 査定フォーム（CF7）
============================================================ */
.nxp-form{background:var(--cream);}
.nxp-form__box{
    background:#fff;border:1px solid var(--bd);border-radius:8px;
    padding:36px 40px;
}
/* CF7 既定の max-width:640px が効いてフォームが枠内で左寄りになるため、
   TOPの査定フォームだけ枠幅いっぱいに広げる（他ページの /contact/ には影響なし） */
.nxp-form__box .wpcf7{max-width:none;width:100%;margin:0;}
@media(max-width:767px){
    .nxp-form__box{padding:20px 16px;border-radius:6px;}
}


/* ============================================================
   6.5 最近売れた○○県の買取実績
   カードは既存 .nxp-cases__card をそのまま流用し、ここには差分のみを記述。
   すべて .nxp-cases--recent 配下に限定しているため「5. 大型機の買取実績」には影響しない。
============================================================ */
.nxp-cases--recent .nxp-cases__figure{position:relative;border-radius:5px;}
/* バッジを写真の上に乗せるため、新セクションのみ cover（既存「5.」は contain のまま） */
.nxp-cases--recent .nxp-cases__figure img{object-fit:cover;}
.nxp-cases--recent .nxp-cases__badge{
    position:absolute;top:8px;left:8px;z-index:1;
    background:var(--navy);color:#fff;
    font-size:11px;font-weight:700;line-height:1;letter-spacing:.02em;
    padding:5px 8px;border-radius:4px;
    max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.nxp-cases--recent .nxp-cases__type{font-size:18px;}
/* nxp_format_price は円単位（例：300,000円）のため、万円表記の既存より桁が多い → 数字を一段小さく */
.nxp-cases--recent .nxp-cases__price-main{font-size:26px;}
.nxp-cases--recent .nxp-cases__price-unit{font-size:14px;}
.nxp-cases--recent .nxp-cases__price-note{
    font-size:11px;color:var(--ink-2);text-align:center;margin:6px 0 0;
}

/* SP：2列（既存「5.」は1列のまま） */
@media(max-width:767px){
    .nxp-cases__grid.nxp-cases__grid--recent{grid-template-columns:repeat(2,1fr);gap:10px;}
    .nxp-cases--recent .nxp-cases__link{padding:12px 10px 14px;}
    .nxp-cases--recent .nxp-cases__type{font-size:14px;line-height:1.35;}
    .nxp-cases--recent .nxp-cases__area,
    .nxp-cases--recent .nxp-cases__feature{font-size:11.5px;}
    .nxp-cases--recent .nxp-cases__price{flex-wrap:wrap;gap:0 6px;}
    .nxp-cases--recent .nxp-cases__price-label{font-size:11px;width:100%;text-align:center;}
    .nxp-cases--recent .nxp-cases__price-main{font-size:19px;}
    .nxp-cases--recent .nxp-cases__price-unit{font-size:12px;}
    .nxp-cases--recent .nxp-cases__badge{font-size:10px;padding:4px 6px;top:6px;left:6px;}
    .nxp-cases--recent .nxp-cases__price-note{font-size:10px;}
}
