<style>
/* TOTAL MAINTENANCE | Professional body repair page | 2026-10 */

.tm-bodyrepair{--ink:#10283f;--deep:#0d2339;--blue:#176ead;--gold:#c99a51;--orange:#df673d;--muted:#50667a;--edge:#cbd8e2;--mist:#ecf2f7;color:var(--ink);background:#fff;font:400 16px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;overflow:hidden}
.tm-bodyrepair,.tm-bodyrepair *,.tm-bodyrepair *::before,.tm-bodyrepair *::after{box-sizing:border-box}
.tm-bodyrepair img{display:block;max-width:100%}
.tm-bodyrepair a{text-decoration:none;color:inherit}
.tm-bodyrepair :is(h1,h2,h3,p){overflow-wrap:anywhere}
.tm-bodyrepair .container{width:min(1160px,calc(100% - 48px));max-width:1160px;margin-inline:auto}
.tm-bodyrepair section{padding:clamp(60px,6.5vw,100px) 0}
.tm-bodyrepair .gray{background:linear-gradient(135deg,#e8eff5,#f4f7fa 52%,#e6eef5)}
.tm-bodyrepair .section-head{max-width:900px;margin:0 0 36px}
.tm-bodyrepair .kicker{display:block;color:#a66d1d;font-size:12px;font-weight:900;letter-spacing:.18em;margin-bottom:10px}
.tm-bodyrepair h2{font-size:clamp(28px,3.5vw,42px);line-height:1.3;margin:0 0 16px;color:var(--ink);letter-spacing:.005em}
.tm-bodyrepair .lead{font-size:16px;color:var(--muted);line-height:1.85;margin:0}
.tm-bodyrepair .btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:13px 22px;border-radius:9px;font-weight:800;line-height:1.45;text-align:center;transition:transform .2s,filter .2s}
.tm-bodyrepair .btn-red{background:var(--orange);color:#fff;box-shadow:0 10px 22px rgba(125,48,22,.18)}
.tm-bodyrepair .btn-outline{border:1px solid rgba(255,255,255,.8);color:#fff;background:rgba(255,255,255,.06)}
@media(hover:hover){.tm-bodyrepair .btn:hover{transform:translateY(-2px);filter:brightness(1.05)}}

/* HERO */
.tm-bodyrepair .hero{color:white;background:linear-gradient(106deg,rgba(7,22,38,.94),rgba(14,43,66,.78) 58%,rgba(12,41,68,.42)),url("https://wfield.jp/wp-content/uploads/2026/10/01_hero-paint-booth_1600x900.jpg") center/cover no-repeat;padding:clamp(90px,9vw,134px) 0}
.tm-bodyrepair .hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.65fr);gap:40px;align-items:center}
.tm-bodyrepair .eyebrow{color:#e9bb73;font-size:13px;font-weight:900;letter-spacing:.16em}
.tm-bodyrepair .hero h1{margin:16px 0 22px;font-size:clamp(34px,4.3vw,54px);line-height:1.33;color:#fff}
.tm-bodyrepair .hero p{max-width:670px;color:#e6edf4;font-size:16px;margin:0;line-height:1.95}
.tm-bodyrepair .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.tm-bodyrepair .hero-card{background:rgba(12,34,56,.78);border:1px solid rgba(225,236,246,.24);border-radius:20px;padding:27px;box-shadow:0 22px 50px rgba(0,0,0,.2);backdrop-filter:blur(6px)}
.tm-bodyrepair .hero-card h3{font-size:19px;color:#fff;line-height:1.5;margin:0 0 12px}
.tm-bodyrepair .hero-card ul{padding-left:1.2em;margin:0}
.tm-bodyrepair .hero-card li{margin:5px 0;color:#e1eaf2;font-size:14px}

/* トップ4項目 */
.tm-bodyrepair .trustbar{background:#f8fafc;border-bottom:1px solid var(--edge)}
.tm-bodyrepair .trustgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.tm-bodyrepair .trustitem{min-width:0;min-height:146px;display:grid;grid-template-rows:44px 45px;align-content:center;justify-items:center;gap:6px;padding:20px 12px;text-align:center;border-right:1px solid #d5dfe7}
.tm-bodyrepair .trustitem:last-child{border-right:0}
.tm-bodyrepair .trustitem strong{align-self:end;font-size:18px;color:var(--ink);line-height:1.4;font-weight:900}
.tm-bodyrepair .trustitem span{align-self:start;font-size:13px;color:var(--muted);line-height:1.65}

/* A・B・C ／ 修理メニュー01〜06 */
.tm-bodyrepair :is(#trust,#service) .cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px;align-items:stretch}
.tm-bodyrepair :is(#trust,#service) .card{min-width:0;position:relative;isolation:isolate;display:grid!important;grid-template-rows:62px 78px minmax(74px,auto) 1fr;min-height:350px;float:none!important;margin:0!important;padding:28px 28px 32px;border:1px solid #bfd0dc;border-radius:18px;background:linear-gradient(150deg,#fff 0%,#f7fafc 46%,#e7f0f7 100%);box-shadow:0 12px 28px rgba(16,40,63,.10);transition:transform .25s,box-shadow .25s}
.tm-bodyrepair :is(#trust,#service) .icon{grid-row:1;width:60px;height:60px;display:grid;place-items:center;margin:0;border-radius:13px;color:#fff;background:linear-gradient(150deg,#173f61,#0d2339);font-size:20px;font-weight:900}
.tm-bodyrepair :is(#trust,#service) .card h3{grid-row:3;margin:0;padding:0 0 12px;display:flex;align-items:flex-end;min-height:0;font-size:19px;font-weight:900;line-height:1.45;color:var(--ink);border-bottom:2px solid var(--gold)}
.tm-bodyrepair :is(#trust,#service) .card p{grid-row:4;margin:0;padding:20px 0 0;font-size:15px;line-height:1.86;color:var(--muted)}
.tm-bodyrepair #trust .card::after{content:"";position:absolute;right:-40px;top:-40px;width:118px;height:118px;background:rgba(23,110,173,.05);border-radius:50%;pointer-events:none;z-index:-1}
@media(hover:hover){.tm-bodyrepair :is(#trust,#service) .card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(16,40,63,.16)}}

/* 鈑金塗装メニュー：アップロード済み背景画像 */
.tm-bodyrepair #service{position:relative;isolation:isolate;background:#10283f url("https://wfield.jp/wp-content/uploads/2026/10/75f5b59559228a057329bc5711e167e8.png") center center/cover no-repeat}
.tm-bodyrepair #service::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,25,43,.18),rgba(7,25,43,.34));pointer-events:none}
.tm-bodyrepair #service .container{position:relative;z-index:1}
.tm-bodyrepair #service .kicker{color:#f0c785}
.tm-bodyrepair #service h2{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.34)}
.tm-bodyrepair #service .lead{color:#ecf4fb;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.tm-bodyrepair #service .card{background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(229,239,248,.97));box-shadow:0 18px 38px rgba(0,16,34,.22)}

/* 設備紹介 */
.tm-bodyrepair .equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch;margin-top:32px}
.tm-bodyrepair .equipment-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:#fff;border:1px solid var(--edge);box-shadow:0 13px 30px rgba(17,47,72,.09)}
.tm-bodyrepair .equipment-card>img{width:100%;height:290px;object-fit:cover;object-position:center;flex-shrink:0}
.tm-bodyrepair .equipment-card>img.spot-full{object-fit:contain;background:#e9eff4;padding:10px}
.tm-bodyrepair .equipment-body{flex:1;display:grid;grid-template-rows:46px minmax(78px,auto) 1fr;padding:26px 27px 30px;background:linear-gradient(155deg,#fff,#f0f5f9)}
.tm-bodyrepair .equipment-no{font-size:12px;font-weight:900;letter-spacing:.11em;color:#176ead}
.tm-bodyrepair .equipment-card h3{display:flex;align-items:flex-end;margin:0;padding:0 0 12px;border-bottom:2px solid var(--gold);font-size:21px;line-height:1.45;color:var(--ink)}
.tm-bodyrepair .equipment-card p{margin:0;padding-top:20px;color:var(--muted);font-size:15px;line-height:1.85}
.tm-bodyrepair .equipment-card.mix-card{grid-column:1/-1;width:min(760px,100%);justify-self:center}
.tm-bodyrepair .equipment-note{margin-top:24px;padding:17px 20px;border-left:4px solid var(--blue);border-radius:9px;background:#dae9f4;color:#34536d;font-size:14px}

/* 施工事例：PCでは必ず3枚横並び */
.tm-bodyrepair #repair-case .tm-repair-three{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:22px!important;align-items:stretch!important;justify-content:space-between!important;width:100%!important;max-width:none!important;margin:30px 0 0!important;padding:0!important;float:none!important;clear:both!important}
.tm-bodyrepair #repair-case .tm-repair-three>.tm-repair-item{display:flex!important;flex-direction:column!important;flex:1 1 0!important;width:0!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;float:none!important;clear:none!important;grid-column:auto!important;grid-row:auto!important;position:relative!important;overflow:hidden;background:#fff;border:1px solid #c0ced9;border-radius:18px;box-shadow:0 14px 32px rgba(14,43,67,.11)}
.tm-bodyrepair #repair-case .tm-repair-photo{position:relative;flex-shrink:0;width:100%}
.tm-bodyrepair #repair-case .tm-repair-photo img{display:block!important;width:100%!important;max-width:none!important;height:auto!important;aspect-ratio:16/10;object-fit:cover;margin:0!important}
.tm-bodyrepair #repair-case .tm-repair-photo span{position:absolute;left:12px;top:12px;z-index:2;background:var(--deep);color:#fff;border-radius:99px;padding:7px 11px;font-size:11px;line-height:1.4;font-weight:900}
.tm-bodyrepair #repair-case .tm-repair-body{flex:1;display:flex;flex-direction:column;min-width:0;padding:24px 22px 27px;background:linear-gradient(155deg,#fff,#f0f5f9)}
.tm-bodyrepair #repair-case .tm-repair-body h3{display:flex;align-items:flex-end;min-height:76px;font-size:18px;line-height:1.45;color:var(--ink);font-weight:900;margin:0;padding:0 0 12px;border-bottom:2px solid var(--gold)}
.tm-bodyrepair #repair-case .tm-repair-body p{font-size:14px;line-height:1.84;color:var(--muted);margin:0;padding-top:18px}

/* STEP1〜5 */
.tm-bodyrepair .steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:16px}
.tm-bodyrepair .step{min-width:0;display:grid;grid-template-rows:54px 62px minmax(72px,auto) 1fr;min-height:335px;padding:22px 18px;background:linear-gradient(155deg,#fff,#edf4f8);border-radius:16px;border:1px solid #bdcedb;box-shadow:0 10px 24px rgba(16,40,63,.07)}
.tm-bodyrepair .step-no{display:grid;place-items:center;width:max-content;min-width:78px;height:48px;padding:0 10px;background:var(--deep);color:#fff;border-radius:11px;font-weight:900;font-size:12px}
.tm-bodyrepair .step h3{grid-row:3;align-self:stretch;display:flex;align-items:flex-end;margin:0;padding:0 0 11px;border-bottom:2px solid var(--gold);font-size:17px;line-height:1.45;color:var(--ink)}
.tm-bodyrepair .step p{grid-row:4;margin:0;padding-top:18px;color:var(--muted);font-size:14px;line-height:1.85}

/* FAQ・お問い合わせ */
.tm-bodyrepair .faq{display:grid;gap:12px}
.tm-bodyrepair .faq details{padding:19px 22px;border-radius:12px;border:1px solid var(--edge);background:#f7fafc}
.tm-bodyrepair .faq summary{cursor:pointer;font-weight:800;color:var(--ink)}
.tm-bodyrepair .faq details p{margin:12px 0 0;color:var(--muted)}
.tm-bodyrepair .cta{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:30px;align-items:center;border-radius:22px;padding:clamp(26px,4vw,48px);color:white;background:linear-gradient(115deg,#0d2339,#1c577d);box-shadow:0 18px 35px rgba(13,35,57,.15)}
.tm-bodyrepair .cta h2{color:#fff}
.tm-bodyrepair .cta p{color:#dfeaf3}
.tm-bodyrepair .cta-actions{display:flex;flex-direction:column;gap:11px}
.tm-bodyrepair .small{font-size:12px;color:#cfdfeb}
.tm-bodyrepair .contact-card{margin-top:24px;padding:30px;border-radius:18px;border:1px solid var(--edge);background:#f7fafc}
.tm-bodyrepair .contact-card h3{font-size:21px;margin:0 0 8px;color:var(--ink)}
.tm-bodyrepair .wpcf7{margin-top:18px}
.tm-bodyrepair .wpcf7-form p{margin:0 0 16px}
.tm-bodyrepair .wpcf7-form label{font-weight:700}
.tm-bodyrepair .wpcf7-form :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea){width:100%;border:1px solid #c7d4df;padding:12px;border-radius:8px;background:#fff;color:var(--ink);font:inherit}
.tm-bodyrepair .wpcf7-form textarea{min-height:140px}
.tm-bodyrepair .wpcf7-form input[type="submit"]{border:0;border-radius:8px;background:var(--orange);color:#fff;padding:13px 26px;font-weight:900;cursor:pointer}

/* タブレット */
@media(max-width:960px){
  .tm-bodyrepair .hero-grid,
  .tm-bodyrepair .cta{grid-template-columns:1fr}
  .tm-bodyrepair .trustgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-bodyrepair .trustitem:nth-child(2){border-right:0}
  .tm-bodyrepair :is(#trust,#service) .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .tm-bodyrepair .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-bodyrepair #repair-case .tm-repair-three{flex-wrap:wrap!important}
  .tm-bodyrepair #repair-case .tm-repair-three>.tm-repair-item{flex:0 0 calc(50% - 11px)!important;width:calc(50% - 11px)!important}
}

@media(max-width:760px){
  .tm-bodyrepair .equipment-grid{grid-template-columns:1fr}
  .tm-bodyrepair .equipment-card.mix-card{grid-column:auto;width:100%}
  .tm-bodyrepair .equipment-card>img{height:auto;aspect-ratio:16/9;object-fit:cover}
  .tm-bodyrepair .equipment-card>img.spot-full{object-fit:contain}
}

/* スマートフォン */
@media(max-width:620px){
  .tm-bodyrepair .container{width:calc(100% - 32px)}
  .tm-bodyrepair section{padding:56px 0}
  .tm-bodyrepair .hero{padding:clamp(220px,58vw,330px) 0 54px;background:linear-gradient(180deg,rgba(13,35,57,.06),rgba(13,35,57,.20) 38%,rgba(13,35,57,.94) 68%,#0d2339 100%),url("https://wfield.jp/wp-content/uploads/2026/10/01_hero-paint-booth_1600x900.jpg") center top/100% auto no-repeat;background-color:#0d2339}
  .tm-bodyrepair .hero h1{font-size:clamp(27px,7.5vw,34px)}
  .tm-bodyrepair .hero p{font-size:15px}
  .tm-bodyrepair .hero-actions{flex-direction:column}
  .tm-bodyrepair .hero-actions .btn{width:100%}
  .tm-bodyrepair .hero-card{padding:22px}
  .tm-bodyrepair .trustitem{min-height:115px;padding:13px 8px;grid-template-rows:42px auto}
  .tm-bodyrepair .trustitem strong{font-size:15px}
  .tm-bodyrepair .trustitem span{font-size:11px}
  .tm-bodyrepair :is(#trust,#service) .cards{grid-template-columns:1fr!important}
  .tm-bodyrepair :is(#trust,#service) .card{min-height:0;grid-template-rows:58px 22px auto auto;padding:24px}
  .tm-bodyrepair :is(#trust,#service) .card h3{grid-row:3;padding-bottom:12px}
  .tm-bodyrepair :is(#trust,#service) .card p{grid-row:4;padding-top:15px}
  .tm-bodyrepair #service{background-position:68% center}
  .tm-bodyrepair .equipment-body{display:flex;flex-direction:column;padding:24px}
  .tm-bodyrepair .equipment-no{margin-bottom:16px}
  .tm-bodyrepair .equipment-card h3{padding-bottom:14px}
  .tm-bodyrepair .equipment-card p{padding-top:16px}
  .tm-bodyrepair #repair-case .tm-repair-three{flex-direction:column!important;flex-wrap:nowrap!important;gap:18px!important}
  .tm-bodyrepair #repair-case .tm-repair-three>.tm-repair-item{flex:none!important;width:100%!important}
  .tm-bodyrepair #repair-case .tm-repair-body h3{min-height:0}
  .tm-bodyrepair .steps{grid-template-columns:1fr}
  .tm-bodyrepair .step{min-height:0;grid-template-rows:50px 24px auto auto}
  .tm-bodyrepair .step h3{grid-row:3}
  .tm-bodyrepair .step p{grid-row:4}
  .tm-bodyrepair .cta{padding:26px}
  .tm-bodyrepair .contact-card{padding:22px}
}

@media(prefers-reduced-motion:reduce){
  .tm-bodyrepair *{
    transition:none!important;
    scroll-behavior:auto!important;
  }
}

/* =========================================
   設備紹介カード 最終レイアウト修正
   PC：2列 / スマホ：1列
   ========================================= */

/* 設備紹介の2列表示を修正 */
.tm-bodyrepair #quality .equipment-grid{
  display:grid !important;
  grid-template-columns:
    repeat(2,minmax(0,1fr)) !important;
  gap:26px !important;
  align-items:stretch !important;
  width:100% !important;
}

/* WordPress側の疑似要素によるズレを防止 */
.tm-bodyrepair #quality .equipment-grid::before,
.tm-bodyrepair #quality .equipment-grid::after{
  content:none !important;
  display:none !important;
}

/* 左右のカードのサイズを統一 */
.tm-bodyrepair #quality .equipment-card{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:100% !important;
  margin:0 !important;
  float:none !important;
  grid-column:auto !important;
  align-self:stretch !important;
}

/* 写真の高さを統一 */
.tm-bodyrepair #quality .equipment-card > img{
  display:block !important;
  width:100% !important;
  height:285px !important;
  object-fit:cover !important;
  flex-shrink:0 !important;
}

/* スポット溶接機は全体を表示 */
.tm-bodyrepair #quality .equipment-card > img.spot-full{
  object-fit:contain !important;
  background:#EAF0F5 !important;
  padding:12px !important;
}

/* 写真下の本文位置・高さを統一 */
.tm-bodyrepair #quality .equipment-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  padding:26px !important;
  min-height:0 !important;
}

/* 設備番号 */
.tm-bodyrepair #quality .equipment-no{
  margin:0 0 16px !important;
}

/* 設備名 */
.tm-bodyrepair #quality .equipment-card h3{
  display:block !important;
  margin:0 !important;
  min-height:68px !important;
  padding:0 0 12px !important;
  border-bottom:2px solid #C9974C !important;
}

/* 説明文 */
.tm-bodyrepair #quality .equipment-card p{
  margin:0 !important;
  padding-top:18px !important;
}

/* 5枚目のミキシングマシーンは中央 */
.tm-bodyrepair #quality .equipment-card.mix-card{
  grid-column:1 / -1 !important;
  width:min(760px,100%) !important;
  justify-self:center !important;
  height:auto !important;
}

/* スマホでは1列 */
@media(max-width:620px){

  .tm-bodyrepair #quality .equipment-grid{
    grid-template-columns:1fr !important;
  }

  .tm-bodyrepair #quality .equipment-card{
    height:auto !important;
  }

  .tm-bodyrepair #quality .equipment-card.mix-card{
    grid-column:auto !important;
    width:100% !important;
  }

}

/* ==========================================
   設備紹介：2列配置を強制修正
   ========================================== */

/* 親グリッドを2列に */
.tm-bodyrepair #quality .equipment-grid{
  display:grid !important;
  grid-template-columns:
    minmax(0,1fr) minmax(0,1fr) !important;
  grid-auto-flow:row !important;
  gap:26px !important;
  width:100% !important;
  align-items:stretch !important;
  justify-items:stretch !important;
}

/* WordPressの回り込み要素対策 */
.tm-bodyrepair #quality .equipment-grid::before,
.tm-bodyrepair #quality .equipment-grid::after{
  content:none !important;
  display:none !important;
}

/* 全カードの配置を初期化 */
.tm-bodyrepair #quality .equipment-grid
> .equipment-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:100% !important;
  margin:0 !important;
  float:none !important;
  clear:none !important;
  grid-column:auto !important;
  grid-row:auto !important;
}

/* 1段目左：塗装ブース */
.tm-bodyrepair #quality .equipment-grid
> .equipment-card:nth-child(1){
  grid-column:1 !important;
  grid-row:1 !important;
}

/* 1段目右：デジタル調色 */
.tm-bodyrepair #quality .equipment-grid
> .equipment-card:nth-child(2){
  grid-column:2 !important;
  grid-row:1 !important;
}

/* 2段目左：フレーム修正機 */
.tm-bodyrepair #quality .equipment-grid
> .equipment-card:nth-child(3){
  grid-column:1 !important;
  grid-row:2 !important;
}

/* 2段目右：スポット溶接機 */
.tm-bodyrepair #quality .equipment-grid
> .equipment-card:nth-child(4){
  grid-column:2 !important;
  grid-row:2 !important;
}

/* 3段目中央：ミキシングマシーン */
.tm-bodyrepair #quality .equipment-grid
> .equipment-card:nth-child(5){
  grid-column:1 / -1 !important;
  grid-row:3 !important;
  width:min(760px,100%) !important;
  justify-self:center !important;
}

/* 写真の高さを統一 */
.tm-bodyrepair #quality .equipment-card > img{
  width:100% !important;
  height:285px !important;
  object-fit:cover !important;
}

/* 溶接機だけ全体が見える表示 */
.tm-bodyrepair #quality .equipment-card
> img.spot-full{
  object-fit:contain !important;
  background:#EAF0F5 !important;
}

/* カードの説明部分 */
.tm-bodyrepair #quality .equipment-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0 !important;
}

/* スマートフォン */
@media(max-width:620px){

  .tm-bodyrepair #quality .equipment-grid{
    grid-template-columns:1fr !important;
  }

  .tm-bodyrepair #quality .equipment-grid
  > .equipment-card:nth-child(n){
    grid-column:1 !important;
    grid-row:auto !important;
    width:100% !important;
  }
}

/* ========================================
   EQUIPMENT FIXED 3-ROW LAYOUT
   2枚・2枚・中央1枚
   ======================================== */

/* 既存のグリッド指定を解除 */
.tm-bodyrepair #quality .equipment-grid{
  display:block !important;
  width:100% !important;
  margin:30px 0 0 !important;
  padding:0 !important;
}

/* 各段を独立した横並びにする */
.tm-bodyrepair #quality .tm-equip-row{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:26px !important;
  width:100% !important;
  margin:0 0 26px !important;
  padding:0 !important;
  clear:both !important;
}

/* 各段の2枚を同じ幅と高さに */
.tm-bodyrepair #quality .tm-equip-row
> .equipment-card{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 0 !important;
  width:0 !important;
  min-width:0 !important;
  max-width:none !important;
  height:auto !important;
  margin:0 !important;
  float:none !important;
  align-self:stretch !important;
}

/* 写真の高さを統一 */
.tm-bodyrepair #quality .tm-equip-row
> .equipment-card > img{
  width:100% !important;
  height:285px !important;
  object-fit:cover !important;
  flex:none !important;
}

/* 溶接機は全体を表示 */
.tm-bodyrepair #quality .tm-equip-row
> .equipment-card > img.spot-full{
  object-fit:contain !important;
  background:#EAF0F5 !important;
  padding:12px !important;
}

/* 本文の高さを左右で揃える */
.tm-bodyrepair #quality .tm-equip-row
.equipment-body{
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  padding:26px !important;
}

/* 設備名のライン位置を揃える */
.tm-bodyrepair #quality .tm-equip-row
.equipment-card h3{
  min-height:76px !important;
  margin:0 !important;
  padding:0 0 12px !important;
  border-bottom:2px solid #C9974C !important;
}

/* 3段目中央 */
.tm-bodyrepair #quality .tm-equip-center{
  justify-content:center !important;
}

.tm-bodyrepair #quality .tm-equip-center
> .equipment-card.mix-card{
  flex:0 1 760px !important;
  width:min(760px,100%) !important;
  max-width:760px !important;
}

/* スマホは1枚ずつ表示 */
@media(max-width:620px){

  .tm-bodyrepair #quality .tm-equip-row{
    flex-direction:column !important;
    gap:20px !important;
  }

  .tm-bodyrepair #quality .tm-equip-row
  > .equipment-card,
  .tm-bodyrepair #quality .tm-equip-center
  > .equipment-card.mix-card{
    flex:none !important;
    width:100% !important;
    max-width:100% !important;
  }

  .tm-bodyrepair #quality .tm-equip-row
  > .equipment-card > img{
    height:auto !important;
    aspect-ratio:16/9;
  }

  .tm-bodyrepair #quality .tm-equip-row
  .equipment-card h3{
    min-height:0 !important;
  }

}

/* =====================================
   STEP1〜5 カードの高さ・上端を完全統一
   ===================================== */

/* 5枚を同じ行に配置 */
.tm-bodyrepair #flow .steps{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}

/* カード外側の位置と高さを統一 */
.tm-bodyrepair #flow .steps > .step{
  box-sizing:border-box !important;
  position:relative !important;

  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  grid-template-rows:
    48px 88px 64px 1fr !important;

  align-self:stretch !important;
  height:100% !important;
  min-height:350px !important;

  margin:0 !important;
  padding:22px 18px 26px !important;

  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  vertical-align:top !important;
}

/* STEP番号を同じ位置へ */
.tm-bodyrepair #flow .step-no{
  grid-row:1 !important;
  margin:0 !important;
  align-self:start !important;
}

/* 見出しを同じ位置へ */
.tm-bodyrepair #flow .step h3{
  grid-row:3 !important;
  margin:0 !important;
  align-self:stretch !important;
  display:flex !important;
  align-items:flex-end !important;
}

/* 説明文を同じ位置へ */
.tm-bodyrepair #flow .step p{
  grid-row:4 !important;
  margin:0 !important;
  align-self:start !important;
}

/* タブレット */
@media(max-width:960px){
  .tm-bodyrepair #flow .steps{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* スマホ */
@media(max-width:620px){
  .tm-bodyrepair #flow .steps{
    grid-template-columns:1fr !important;
  }

  .tm-bodyrepair #flow .steps > .step{
    height:auto !important;
    min-height:0 !important;
    grid-template-rows:46px 26px auto auto !important;
  }
}
</style>
