/* =========================================
   初期styleリセット
========================================= */
.lout-grid.lout-breadcrumbs {
    display: none !important;
}
.lout-grid h1 {
    display: none;
    border-bottom: none;
}
.lout-grid h1:after{
    content:none;
}
.lout-grid h2,.lout-grid h3{
    border-bottom: none;
}
.lout-grid.lout-breadcrumbs {
    width: 960px;
}
.lout-followmenu {
    display: none;
}

header.lout-header.lout-grid {
    width: 960px;
}
.lout-grid {
    width: 100%;
}
.lout-footer .lout-footer-inner {
    width: 100%;
max-width: 960px;
    margin: auto;
}
.lout-hamburgerbtn{
    display: none;
}
.lout-contents {
    padding-left: 0px;
    padding-right: 0px;
}
.sp-br{
    display: none;
}

.css-1r2yhgy.evf3f5610{
    display: none;
}

@media (min-width: 768px) {
.pc-br{
    display: none;
}
}


/* ---- WordPressテーマ リセット(「追加CSS」に入れる部分) ---- */
.lout-grid { width: 100%; }
.lout-contents { padding-left: 0; padding-right: 0; }
.lout-grid h1 { display: none; border-bottom: none; }
.lout-grid h1:after { content: none; }
.lout-grid h2, .lout-grid h3 { border-bottom: none; }

/* ---- デザイントークン ---- */
#custom-lp-wrapper {
  --yamato: #003A8D;        /* ヤマトブルー: 主役 */
  --yamato-deep: #002B69;   /* 濃青: 章扉グラデ・hover */
  --ink: #221815;           /* リッチブラック: 本文(純黒禁止) */
  --lavender: #E9E9F4;      /* ピル・淡面 */
  --lav-soft: #F4F5FA;      /* セクション淡地 */
  --peri: #7276AB;          /* ペリウィンクル: 眉・補足 */
  --coral: #EE7959;         /* 注目数値専用。CTA・装飾に使用禁止 */
  --gray-cmp: #B5B6B6;      /* 比較の「一般」側 */
  --ghost: #E2E2F0;         /* ゴースト英字・装飾数字 */
  --paper: #FFFFFF;
  --mincho: "Shippori Mincho", "Yu Mincho", serif;
  --gothic: "Yu Gothic Medium", "Yu Gothic", "BIZ UDPGothic", "Hiragino Kaku Gothic ProN", sans-serif;
  --helv: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --garamond: "EB Garamond", Georgia, serif;

  font-family: var(--gothic);
  color: var(--ink);
  background: var(--paper);
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: 0.03em;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

/* ---- wpautop 必須リセット ---- */
#custom-lp-wrapper p:empty { display: none !important; }
#custom-lp-wrapper p { margin: 0; margin-bottom: 0; }
#custom-lp-wrapper h1, #custom-lp-wrapper h2, #custom-lp-wrapper h3, #custom-lp-wrapper h4 {
  display: block !important; visibility: visible !important;
  margin: 0; padding: 0; font-weight: normal; border: none;
}
#custom-lp-wrapper h2:after, #custom-lp-wrapper h3:after { content: none; }
#custom-lp-wrapper img { max-width: 100%; height: auto; display: block; vertical-align: bottom; }
#custom-lp-wrapper ul, #custom-lp-wrapper ol, #custom-lp-wrapper dl { margin: 0; padding: 0; list-style: none; }
#custom-lp-wrapper figure { margin: 0; }
#custom-lp-wrapper a { text-decoration: none; color: inherit; }
#custom-lp-wrapper a:focus-visible { outline: 3px solid var(--yamato); outline-offset: 3px; }
#custom-lp-wrapper summary:focus-visible { outline: 3px solid var(--yamato); outline-offset: 3px; }
#custom-lp-wrapper table { border-collapse: collapse; }
#custom-lp-wrapper * { box-sizing: border-box; }

/* ---- 共通部品 ---- */
#custom-lp-wrapper .lp-full { width: 100vw; margin-left: calc(50% - 50vw); position: relative; }

/* 眉ラベル: スラッシュ見出し(青「／」+ペリウィンクル英字) */
#custom-lp-wrapper .lp-eyebrow {
  display: block;
  font-family: var(--helv);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.28em;
  color: var(--peri);
  margin-bottom: 10px;
}
#custom-lp-wrapper .lp-eyebrow:before { content: "／ "; color: var(--yamato); font-weight: 400; }
#custom-lp-wrapper .lp-h2 {
  font-family: var(--mincho);
  font-weight: 800;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.09em;
  font-size: 24px;
  line-height: 1.5;
  color: var(--ink);
  text-wrap: balance;
}

/* CTAボタン(ヤマトブルー。青地上は白ボタン .lp-btn-white) */
#custom-lp-wrapper .lp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 14px 44px;
  background: var(--yamato);
  color: #fff;
  font-family: var(--gothic);
  font-weight: 700;
  font-size: 17px;
  letter-spacing: 0.06em;
  border-radius: 3px;
  box-shadow: 0 3px 12px rgba(0, 58, 141, 0.28);
  transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
#custom-lp-wrapper .lp-btn:hover {
  background: var(--yamato-deep);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 58, 141, 0.34);
}
#custom-lp-wrapper .lp-btn-white { background: #fff; color: var(--yamato); box-shadow: 0 3px 12px rgba(0, 22, 56, 0.3); }
#custom-lp-wrapper .lp-btn-white:hover { background: var(--lavender); color: var(--yamato-deep); }
#custom-lp-wrapper .lp-cta-micro { font-size: 12.5px; letter-spacing: 0.05em; color: var(--peri); margin-top: 10px; }

/* 写真の共通処理: 微影・回転なし・4:3統一(差し替え画像も自動で収まる) */
#custom-lp-wrapper .lp-photo { box-shadow: 0 4px 18px rgba(34, 24, 21, 0.14); width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 3px; }
#custom-lp-wrapper .lp-photo-cap { font-size: 12px; color: var(--peri); letter-spacing: 0.06em; margin-top: 10px; text-align: center; }

/* ============================================================
   ① ファーストビュー(紙地+切り抜き人物+青平行四辺形帯)
   写真に文字を直接置かないルール準拠
   ============================================================ */
#custom-lp-wrapper .lp-fv { background: var(--paper); padding: 44px 0 0; }
#custom-lp-wrapper .lp-fv-inner { max-width: 1040px; margin: 0 auto; padding: 0 24px; position: relative; }

/* ピルラベル(ラベンダー+青◆) */
#custom-lp-wrapper .lp-pill {
  display: inline-block;
  background: var(--lavender);
  color: var(--yamato);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 6px 18px;
  border-radius: 999px;
  margin-bottom: 22px;
}
#custom-lp-wrapper .lp-pill:before { content: "◆ "; font-size: 9px; vertical-align: 2px; }

#custom-lp-wrapper .lp-fv-title {
  font-family: var(--mincho);
  font-weight: 800;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.08em;
  font-size: clamp(29px, 6.5vw, 48px);
  line-height: 1.42;
  color: var(--ink);
  margin-bottom: 18px;
}
#custom-lp-wrapper .lp-fv-title em { font-style: normal; color: var(--yamato); }
#custom-lp-wrapper .lp-nb { display: inline-block; }
#custom-lp-wrapper .lp-fv-lead { font-size: 15.5px; line-height: 2; color: var(--ink); max-width: 32em; margin-bottom: 20px; }
#custom-lp-wrapper .lp-fv-cta { position: relative; z-index: 3; }
#custom-lp-wrapper .lp-fv .lp-btn { width: 100%; max-width: 400px; font-size: 18px; min-height: 60px; }

/* FV写真(HR-03ベース・画像を主役級に拡大した5:5分割) */
#custom-lp-wrapper .lp-fv-photo { width: 100%; max-width: 520px; margin: 30px auto 40px; }
#custom-lp-wrapper .lp-fv-photo img { width: 100%; }

/* 平行四辺形の青帯(実績バッジ3連) */
#custom-lp-wrapper .lp-fv-band { background: var(--yamato); padding: 20px 16px 22px; position: relative; z-index: 1; }
#custom-lp-wrapper .lp-fv-badges { max-width: 880px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 12px 0; }
#custom-lp-wrapper .lp-badge { flex: 1 1 33%; min-width: 108px; padding: 0 0px; text-align: center; border-left: 1px solid rgba(255, 255, 255, 0.3); }
#custom-lp-wrapper .lp-badge:first-child { border-left: none; }
#custom-lp-wrapper .lp-badge-num { display: block; font-family: var(--helv); font-weight: 700; font-size: 28px; line-height: 1.15; color: var(--coral); letter-spacing: 0.02em; }
#custom-lp-wrapper .lp-badge-num i { font-style: normal; font-family: var(--gothic); font-size: 12.5px; font-weight: 700; margin-left: 2px; color: #fff; }
#custom-lp-wrapper .lp-badge-label { display: block; font-size: 9.0px; letter-spacing: 0.06em; color: rgba(255, 255, 255, 0.85); margin-top: 3px; line-height: 1.5; }

/* FV staggered reveal(ロード時1回のみ) */
@keyframes lpFadeUp {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
#custom-lp-wrapper .lp-pill { animation: lpFadeUp 0.7s ease both; }
#custom-lp-wrapper .lp-fv-title { animation: lpFadeUp 0.7s ease 0.12s both; }
#custom-lp-wrapper .lp-fv-lead { animation: lpFadeUp 0.7s ease 0.24s both; }
#custom-lp-wrapper .lp-fv-photo { animation: lpFadeUp 0.7s ease 0.36s both; }
#custom-lp-wrapper .lp-fv-cta { animation: lpFadeUp 0.7s ease 0.4s both; }
@media (prefers-reduced-motion: reduce) {
  #custom-lp-wrapper .lp-pill, #custom-lp-wrapper .lp-fv-title, #custom-lp-wrapper .lp-fv-lead,
  #custom-lp-wrapper .lp-fv-photo, #custom-lp-wrapper .lp-fv-cta { animation: none; }
  #custom-lp-wrapper .lp-btn { transition: none; }
}

/* ============================================================
   ② お悩み共感(白・一段組+左罫+相談写真)
   ============================================================ */
#custom-lp-wrapper .lp-nayami { padding: 72px 24px 64px; max-width: 760px; margin: 0 auto; }
#custom-lp-wrapper .lp-nayami .lp-h2 { margin-bottom: 30px; }
#custom-lp-wrapper .lp-check li {
  position: relative;
  padding: 13px 0 13px 44px;
  border-bottom: 1px solid var(--lavender);
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.7;
}
#custom-lp-wrapper .lp-check li:before {
  content: "✓";
  position: absolute;
  left: 4px;
  top: 14px;
  width: 26px;
  height: 26px;
  border: 2px solid var(--peri);
  border-radius: 3px;
  color: var(--yamato);
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  text-align: center;
}
#custom-lp-wrapper .lp-nayami-turn { margin-top: 34px; padding-left: 20px; border-left: 3px solid var(--yamato); }
#custom-lp-wrapper .lp-nayami-turn p { font-size: 15.5px; line-height: 2.1; margin-bottom: 12px; }
#custom-lp-wrapper .lp-nayami-turn strong { color: var(--yamato); font-weight: 700; }
#custom-lp-wrapper .lp-nayami-photo { max-width: 420px; margin: 32px auto 0; }

/* ============================================================
   ③ 3つの約束(白・3段組・Garamond装飾数字+スタッフ写真)
   ============================================================ */
#custom-lp-wrapper .lp-yakusoku { padding: 24px 24px 84px; max-width: 1040px; margin: 0 auto; }
#custom-lp-wrapper .lp-yaku-head { margin-bottom: 36px; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 20px 40px; }
#custom-lp-wrapper .lp-yaku-headtxt { flex: 1 1 320px; }
#custom-lp-wrapper .lp-yaku-photo { flex: 0 1 220px; max-width: 220px; }
#custom-lp-wrapper .lp-yaku-grid { display: grid; grid-template-columns: 1fr; gap: 30px; }
#custom-lp-wrapper .lp-yaku-item { border-top: 1px solid var(--lavender); padding-top: 6px; }
#custom-lp-wrapper .lp-yaku-no {
  display: block;
  font-family: var(--garamond);
  font-style: italic;
  font-weight: 500;
  font-size: 58px;
  line-height: 1.1;
  color: var(--ghost);
}
#custom-lp-wrapper .lp-yaku-item h3 {
  font-family: var(--mincho);
  font-weight: 800;
  font-feature-settings: "palt" 1;
  font-size: 22px;
  letter-spacing: 0.08em;
  line-height: 1.5;
  color: var(--yamato);
  margin-top: -14px;
  margin-bottom: 12px;
}
#custom-lp-wrapper .lp-yaku-item p { font-size: 14.5px; line-height: 2; color: var(--ink); }

/* ============================================================
   ④ Reason Why(章扉様式: 濃青→青グラデ+白縦罫+ゴーストREASON)
   ============================================================ */
#custom-lp-wrapper .lp-reason {
  background: linear-gradient(180deg, var(--yamato-deep) 0%, var(--yamato) 34%, var(--yamato) 100%);
  color: rgba(255, 255, 255, 0.95);
  padding: 96px 24px 92px;
  overflow: hidden;
}
#custom-lp-wrapper .lp-reason:before {
  content: "REASON";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--helv);
  font-weight: 700;
  font-size: clamp(72px, 16vw, 190px);
  line-height: 1;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.055);
  white-space: nowrap;
}
#custom-lp-wrapper .lp-reason:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 14px;
  height: 54px;
  border-left: 1px solid rgba(255, 255, 255, 0.55);
  border-right: 1px solid rgba(255, 255, 255, 0.55);
}
#custom-lp-wrapper .lp-reason-head { text-align: center; margin-bottom: 40px; position: relative; }
#custom-lp-wrapper .lp-reason .lp-eyebrow { color: rgba(255, 255, 255, 0.75); }
#custom-lp-wrapper .lp-reason .lp-eyebrow:before { color: #fff; }
#custom-lp-wrapper .lp-reason .lp-h2 { color: #fff; }
#custom-lp-wrapper .lp-reason-story { max-width: 36em; margin: 0 auto 52px; position: relative; }
#custom-lp-wrapper .lp-reason-story p { font-size: 16px; line-height: 2.2; margin-bottom: 26px; }
#custom-lp-wrapper .lp-reason-story strong { color: #fff; font-weight: 700; border-bottom: 1px solid rgba(255, 255, 255, 0.45); padding-bottom: 1px; }

/* 構造図: 転売型 vs 自社建築型(比較ルール: 一般=グレー/ヤマト=ブルー) */
#custom-lp-wrapper .lp-flowbox { max-width: 720px; margin: 0 auto; display: grid; gap: 18px; position: relative; }
#custom-lp-wrapper .lp-flowrow { background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.25); border-radius: 4px; padding: 16px 12px 18px; }
#custom-lp-wrapper .lp-flowrow.is-yamato { background: #fff; color: var(--ink); border-color: #fff; }
#custom-lp-wrapper .lp-flow-label { display: block; font-size: 12px; font-weight: 700; letter-spacing: 0.18em; color: #C9CACA; margin-bottom: 12px; }
#custom-lp-wrapper .lp-flowrow.is-yamato .lp-flow-label { color: var(--yamato); }
#custom-lp-wrapper .lp-fbox { display: inline-block; border: 1px solid rgba(255, 255, 255, 0.55); border-radius: 3px; padding: 6px 8px; font-size: 12.5px; font-weight: 700; letter-spacing: 0.02em; text-align: center; white-space: nowrap; }
#custom-lp-wrapper .lp-flowrow.is-yamato .lp-fbox { border-color: var(--yamato); color: var(--yamato); }
#custom-lp-wrapper .lp-flowrow.is-yamato .lp-fbox.is-goal, #custom-lp-wrapper .lp-fbox.is-goal { background: var(--yamato); color: #fff; border-color: var(--yamato); }
#custom-lp-wrapper .lp-flow-line { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px; }
#custom-lp-wrapper .lp-farr { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; font-size: 10px; line-height: 1.3; letter-spacing: 0.04em; opacity: 0.9; white-space: nowrap; }
#custom-lp-wrapper .lp-farr b { font-weight: 400; font-size: 14px; line-height: 1; transform: scaleX(2.2); }
#custom-lp-wrapper .lp-flow-note { margin-top: 12px; font-size: 12px; color: rgba(255, 255, 255, 0.65); }
#custom-lp-wrapper .lp-flowrow.is-yamato .lp-flow-note { color: var(--peri); }

/* 握手写真(章扉の感情的アンカー) */
#custom-lp-wrapper .lp-reason-photo { max-width: 440px; margin: 44px auto 0; position: relative; }
#custom-lp-wrapper .lp-reason-photo .lp-photo-cap { color: rgba(255, 255, 255, 0.8); }

/* ============================================================
   ⑤ 仲介との比較(淡ラベンダー・表組・グレーvsブルー固定)
   ============================================================ */
#custom-lp-wrapper .lp-hikaku { background: var(--lav-soft); padding: 76px 0 80px; }
#custom-lp-wrapper .lp-hikaku .lp-sec-head { text-align: center; margin-bottom: 38px; padding: 0 24px; }
#custom-lp-wrapper .lp-tbl-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 0 24px; }
#custom-lp-wrapper .lp-tbl { width: 100%; max-width: 860px; margin: 0 auto; min-width: 560px; background: #fff; box-shadow: 0 2px 12px rgba(34, 24, 21, 0.07); }
#custom-lp-wrapper .lp-tbl th, #custom-lp-wrapper .lp-tbl td {
  padding: 15px 18px;
  border: 1px solid var(--lavender);
  font-size: 14.5px;
  line-height: 1.7;
  text-align: left;
  vertical-align: middle;
}
#custom-lp-wrapper .lp-tbl thead th { text-align: center; font-size: 15px; }
#custom-lp-wrapper .lp-tbl .col-chukai { background: var(--gray-cmp); color: #fff; font-weight: 700; letter-spacing: 0.06em; }
#custom-lp-wrapper .lp-tbl .col-kaitori { background: var(--yamato); color: #fff; font-weight: 700; letter-spacing: 0.06em; }
#custom-lp-wrapper .lp-tbl .row-label { background: var(--lav-soft); font-weight: 700; font-size: 13.5px; white-space: nowrap; }
#custom-lp-wrapper .lp-tbl .cell-kaitori { color: var(--yamato); font-weight: 700; background: rgba(233, 233, 244, 0.35); }
#custom-lp-wrapper .lp-tbl .lp-num-coral { font-family: var(--helv); font-weight: 700; font-size: 21px; color: var(--coral); letter-spacing: 0.02em; }
#custom-lp-wrapper .lp-fair { max-width: 720px; margin: 26px auto 0; padding: 0 24px; font-size: 13.5px; color: var(--peri); line-height: 2; }

/* SPは表をやめて「項目ごとの縦カード」に再構成(横スクロール廃止) */
@media (max-width: 767px) {
  #custom-lp-wrapper .lp-tbl { display: block; min-width: 0; background: transparent; box-shadow: none; }
  #custom-lp-wrapper .lp-tbl thead { display: none; }
  #custom-lp-wrapper .lp-tbl tbody { display: block; }
  #custom-lp-wrapper .lp-tbl tr {
    display: block;
    background: #fff;
    border: 1px solid var(--lavender);
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 12px;
    box-shadow: 0 2px 8px rgba(34, 24, 21, 0.06);
  }
  #custom-lp-wrapper .lp-tbl .row-label {
    display: block;
    width: 100%;
    background: var(--lavender);
    color: var(--ink);
    font-size: 14px;
    padding: 9px 14px;
    border: none;
    white-space: normal;
  }
  #custom-lp-wrapper .lp-tbl td {
    display: flex;
    align-items: center;
    gap: 12px;
    border: none;
    border-top: 1px solid var(--lav-soft);
    padding: 12px 14px;
    font-size: 14px;
    line-height: 1.7;
  }
  #custom-lp-wrapper .lp-tbl td:before {
    content: "仲介";
    flex: 0 0 5.5em;
    text-align: center;
    background: var(--gray-cmp);
    color: #fff;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 4px 6px;
    border-radius: 2px;
  }
  #custom-lp-wrapper .lp-tbl td.cell-kaitori { background: rgba(233, 233, 244, 0.35); }
  #custom-lp-wrapper .lp-tbl td.cell-kaitori:before { content: "ヤマト住建"; background: var(--yamato); }
}

/* ============================================================
   ⑥ こんな状態でも(白・カード+青◆)
   ============================================================ */
#custom-lp-wrapper .lp-genjo { padding: 80px 24px 84px; max-width: 1040px; margin: 0 auto; }
#custom-lp-wrapper .lp-genjo .lp-sec-head { margin-bottom: 36px; }
#custom-lp-wrapper .lp-gcards { display: grid; grid-template-columns: 1fr; gap: 14px; }
#custom-lp-wrapper .lp-gcard { background: #fff; border: 1px solid var(--ghost); border-radius: 3px; padding: 18px 20px; box-shadow: 0 1px 6px rgba(34, 24, 21, 0.05); }
#custom-lp-wrapper .lp-gcard h3 { font-size: 16.5px; font-weight: 700; margin-bottom: 4px; color: var(--ink); }
#custom-lp-wrapper .lp-gcard h3:before { content: "◆"; color: var(--yamato); font-size: 10px; margin-right: 8px; vertical-align: 2px; }
#custom-lp-wrapper .lp-gcard p { font-size: 13.5px; line-height: 1.8; color: var(--peri); }
#custom-lp-wrapper .lp-genjo-cta { text-align: center; margin-top: 40px; }
#custom-lp-wrapper .lp-genjo-lead { font-family: var(--mincho); font-weight: 700; font-size: 18px; letter-spacing: 0.1em; margin-bottom: 14px; }

/* ============================================================
   ⑧ 買取の流れ(淡ラベンダー・アイコン+STEP連番)
   ============================================================ */
#custom-lp-wrapper .lp-flow { background: var(--lav-soft); padding: 76px 24px 80px; }
#custom-lp-wrapper .lp-flow .lp-sec-head { text-align: center; margin-bottom: 40px; }
#custom-lp-wrapper .lp-steps { max-width: 1040px; margin: 0 auto; display: grid; grid-template-columns: 1fr; gap: 14px; }
#custom-lp-wrapper .lp-step { background: #fff; padding: 22px 24px; border-radius: 3px; box-shadow: 0 2px 10px rgba(34, 24, 21, 0.06); }
#custom-lp-wrapper .lp-step-ico { width: auto; height: 52px; margin-bottom: 12px; }
#custom-lp-wrapper .lp-step-no { display: block; font-family: var(--helv); font-weight: 700; font-size: 12px; letter-spacing: 0.22em; color: var(--peri); margin-bottom: 8px; }
#custom-lp-wrapper .lp-step-no b { font-size: 25px; letter-spacing: 0.04em; margin-left: 6px; line-height: 1; color: var(--yamato); }
#custom-lp-wrapper .lp-step h3 { font-size: 17.5px; font-weight: 700; margin-bottom: 6px; color: var(--ink); }
#custom-lp-wrapper .lp-step p { font-size: 13.5px; line-height: 1.9; color: var(--peri); }

/* ============================================================
   ⑨ 土地募集エリア(白・定義リスト+青地図)
   ============================================================ */
#custom-lp-wrapper .lp-area { padding: 80px 24px 84px; max-width: 980px; margin: 0 auto; }
#custom-lp-wrapper .lp-area .lp-sec-head { margin-bottom: 20px; }
/* 積極買取フラグ(オレンジの平行四辺形バッジ・ページ内で「！」を使う唯一の箇所) */
#custom-lp-wrapper .lp-area-flag {
  display: inline-block;
  background: #D0522E; /* 公式コーラルを白文字コントラスト4.5:1まで深めた実装色(総合LP v3で確立) */
  color: #fff;
  font-weight: 700;
  font-size: 16.5px;
  letter-spacing: 0.1em;
  padding: 9px 24px;
  border-radius: 2px;
  transform: skewX(-10deg);
  box-shadow: 0 3px 12px rgba(208, 82, 46, 0.3);
  margin: 0 6px 28px;
}
#custom-lp-wrapper .lp-area-flag span { display: inline-block; transform: skewX(10deg); }
#custom-lp-wrapper .lp-area-grid { display: grid; grid-template-columns: 1fr; gap: 28px; align-items: center; }
#custom-lp-wrapper .lp-area-map { max-width: 380px; margin: 0 auto; }
#custom-lp-wrapper .lp-area-dl dt {
  display: inline-block;
  background: var(--yamato);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  padding: 3px 14px;
  border-radius: 2px;
  margin-top: 20px;
}
#custom-lp-wrapper .lp-area-dl dt:first-child { margin-top: 0; }
#custom-lp-wrapper .lp-area-dl dd { margin: 8px 0 0; font-size: 15.5px; font-weight: 700; letter-spacing: 0.04em; line-height: 1.9; }
#custom-lp-wrapper .lp-area-note { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--lavender); font-size: 14px; color: var(--peri); }
#custom-lp-wrapper .lp-area-cta { text-align: center; margin-top: 36px; }

/* ============================================================
   ⑩ FAQ(白・details/summary)
   ============================================================ */
#custom-lp-wrapper .lp-faq { padding: 4px 24px 84px; max-width: 800px; margin: 0 auto; }
#custom-lp-wrapper .lp-faq .lp-sec-head { text-align: center; margin-bottom: 28px; }
#custom-lp-wrapper .lp-faq details { border-bottom: 1px solid var(--lavender); }
#custom-lp-wrapper .lp-faq summary {
  list-style: none;
  cursor: pointer;
  position: relative;
  padding: 20px 44px 20px 40px;
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.7;
}
#custom-lp-wrapper .lp-faq summary::-webkit-details-marker { display: none; }
#custom-lp-wrapper .lp-faq summary:before {
  content: "Q";
  position: absolute;
  left: 2px;
  top: 20px;
  font-family: var(--helv);
  font-weight: 700;
  font-size: 18px;
  line-height: 1.5;
  color: var(--yamato);
}
#custom-lp-wrapper .lp-faq summary:after {
  content: "+";
  position: absolute;
  right: 8px;
  top: 50%;
  margin-top: -14px;
  font-size: 24px;
  font-weight: 400;
  color: var(--peri);
  transition: transform 0.25s ease;
  line-height: 1;
}
#custom-lp-wrapper .lp-faq details[open] summary:after { transform: rotate(45deg); }
#custom-lp-wrapper .lp-faq-a { position: relative; padding: 0 8px 22px 40px; font-size: 14.5px; line-height: 2; color: var(--ink); }
#custom-lp-wrapper .lp-faq-a:before {
  content: "A";
  position: absolute;
  left: 2px;
  top: 0;
  font-family: var(--helv);
  font-weight: 700;
  font-size: 18px;
  color: var(--peri);
}

/* ============================================================
   ⑪ 会社の信頼性(淡ラベンダー・神戸写真+数値バー)
   ============================================================ */
#custom-lp-wrapper .lp-company { background: var(--lav-soft); padding: 76px 14px 78px; }
#custom-lp-wrapper .lp-company-in { max-width: 860px; margin: 0 auto; text-align: center; }
#custom-lp-wrapper .lp-company .lp-h2 { margin-bottom: 22px; }
#custom-lp-wrapper .lp-company-txt { max-width: 36em; margin: 0 auto 32px; font-size: 15px; line-height: 2.1; text-align: left; }
#custom-lp-wrapper .lp-company-photo { max-width: 480px; margin: 0 auto 36px; }
#custom-lp-wrapper .lp-stats { display: flex; flex-wrap: wrap; gap: 20px 0; border-top: 1px solid var(--peri); border-bottom: 1px solid var(--peri); padding: 24px 0; background: transparent; }
#custom-lp-wrapper .lp-stat { flex: 1 1 50%; min-width: 140px; padding: 0 10px; border-left: 1px solid var(--lavender); }
#custom-lp-wrapper .lp-stat:first-child { border-left: none; }
#custom-lp-wrapper .lp-stat-num { display: block; font-family: var(--helv); font-weight: 700; font-size: 32px; line-height: 1.15; color: var(--yamato); letter-spacing: 0.02em; }
#custom-lp-wrapper .lp-stat-num i { font-style: normal; font-family: var(--gothic); font-size: 13.5px; font-weight: 700; margin-left: 2px; }
#custom-lp-wrapper .lp-stat-num.is-coral { color: var(--coral); }
#custom-lp-wrapper .lp-stat-label { display: block; font-size: 11.5px; letter-spacing: 0.06em; color: var(--peri); margin-top: 4px; line-height: 1.6; }
#custom-lp-wrapper .lp-stats-note { margin-top: 14px; font-size: 11px; color: var(--peri); text-align: right; }

/* ============================================================
   ⑫ 最終CTA(ヤマトブルー全面・白ボタン)
   ============================================================ */
#custom-lp-wrapper .lp-final {
  background: linear-gradient(180deg, var(--yamato) 0%, var(--yamato) 72%, var(--yamato-deep) 100%);
  padding: 84px 20px 88px;
  color: #fff;
  overflow: hidden;
}
#custom-lp-wrapper .lp-final-in { max-width: 760px; margin: 0 auto; text-align: center; position: relative; }
#custom-lp-wrapper .lp-final .lp-h2 { color: #fff; margin-bottom: 18px; font-size: clamp(24px, 5.4vw, 38px); }
#custom-lp-wrapper .lp-final-txt { max-width: 30em; margin: 0 auto 34px; font-size: 15px; line-height: 2.1; color: rgba(255, 255, 255, 0.92); text-align: left; }
#custom-lp-wrapper .lp-final .lp-btn-white { width: 100%; max-width: 420px; font-size: 18px; min-height: 62px; }
#custom-lp-wrapper .lp-final .lp-cta-micro { color: rgba(255, 255, 255, 0.82); margin-bottom: 34px; }
#custom-lp-wrapper .lp-tel-box { border-top: 1px solid rgba(255, 255, 255, 0.3); padding-top: 28px; max-width: 480px; margin: 0 auto; }
#custom-lp-wrapper .lp-tel-label { display: block; font-size: 13px; letter-spacing: 0.14em; color: rgba(255, 255, 255, 0.85); margin-bottom: 6px; }
#custom-lp-wrapper .lp-tel-num { display: inline-block; font-family: var(--helv); font-weight: 700; font-size: 34px; line-height: 1.2; color: #fff; letter-spacing: 0.03em; }
#custom-lp-wrapper .lp-tel-hours { display: block; font-size: 12.5px; color: rgba(255, 255, 255, 0.78); margin-top: 6px; }
#custom-lp-wrapper .lp-tel-alt { display: block; font-size: 12.5px; color: rgba(255, 255, 255, 0.78); margin-top: 12px; }

/* ============================================================
   追従CTA(SP/タブレットのみ・常時表示)
   ============================================================ */
#custom-lp-wrapper .lp-fixbar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  display: flex;
  gap: 8px;
  padding: 10px 12px;
  padding-bottom: calc(10px + env(safe-area-inset-bottom));
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 -4px 18px rgba(34, 24, 21, 0.16);
}
#custom-lp-wrapper .lp-fixbar-form {
  flex: 1.5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  background: var(--yamato);
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: 0.04em;
  border-radius: 3px;
}
#custom-lp-wrapper .lp-fixbar-tel {
  flex: 1;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  border: 2px solid var(--yamato);
  color: var(--yamato);
  font-weight: 700;
  border-radius: 3px;
  background: #fff;
  line-height: 1.3;
}
#custom-lp-wrapper .lp-fixbar-tel span { font-family: var(--helv); font-size: 14.5px; letter-spacing: 0.02em; }
#custom-lp-wrapper .lp-fixbar-tel small { font-size: 9.5px; font-weight: 400; color: var(--peri); }
#custom-lp-wrapper { padding-bottom: 78px; }

/* ============================================================
   レスポンシブ(768px〜 / 1024px〜)
   ============================================================ */
@media (min-width: 768px) {
  #custom-lp-wrapper .lp-fv { padding-top: 72px; }
  #custom-lp-wrapper .lp-fv-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; align-items: center; padding: 0 32px 56px; }
  #custom-lp-wrapper .lp-fv-photo { max-width: 520px; margin: 0; justify-self: end; }
  #custom-lp-wrapper .lp-fv-band { padding: 24px 32px 26px; clip-path: polygon(0 16px, 100% 0, 100% 100%, 0 100%); }
  #custom-lp-wrapper .lp-fv-lead { font-size: 16.5px; }
  #custom-lp-wrapper .lp-badge-num { font-size: 34px; }
  #custom-lp-wrapper .lp-badge-label { font-size: 12px; }
  #custom-lp-wrapper .lp-h2 { font-size: 34px; }
  #custom-lp-wrapper .lp-nayami { padding: 100px 32px 84px; }
  #custom-lp-wrapper .lp-yakusoku { padding: 32px 32px 110px; }
  #custom-lp-wrapper .lp-yaku-grid { grid-template-columns: 1fr 1fr 1fr; gap: 44px; }
  #custom-lp-wrapper .lp-reason { padding: 120px 32px 116px; }
  #custom-lp-wrapper .lp-reason-story p { font-size: 17px; }
  #custom-lp-wrapper .lp-flowrow { padding: 18px 18px 20px; }
  #custom-lp-wrapper .lp-flow-line { gap: 10px; }
  #custom-lp-wrapper .lp-fbox { font-size: 15px; padding: 8px 18px; }
  #custom-lp-wrapper .lp-farr { font-size: 11.5px; }
  #custom-lp-wrapper .lp-hikaku { padding: 100px 0 104px; }
  #custom-lp-wrapper .lp-genjo { padding: 104px 32px 108px; }
  #custom-lp-wrapper .lp-gcards { grid-template-columns: 1fr 1fr; gap: 18px; }
  #custom-lp-wrapper .lp-flow { padding: 100px 32px 104px; }
  #custom-lp-wrapper .lp-steps { grid-template-columns: repeat(4, 1fr); gap: 18px; }
  #custom-lp-wrapper .lp-area { padding: 104px 32px 108px; }
  #custom-lp-wrapper .lp-area-grid { grid-template-columns: 1fr 380px; gap: 48px; }
  #custom-lp-wrapper .lp-faq { padding: 8px 32px 108px; }
  #custom-lp-wrapper .lp-company { padding: 100px 32px 102px; }
  #custom-lp-wrapper .lp-stat { flex: 1 1 25%; }
  #custom-lp-wrapper .lp-final { padding: 108px 32px 112px; }
}
@media (min-width: 1024px) {
  #custom-lp-wrapper .lp-gcards { grid-template-columns: 1fr 1fr 1fr; }
  #custom-lp-wrapper .lp-fixbar { display: none; }
  #custom-lp-wrapper { padding-bottom: 0; }
}
