/*
Theme Name:  セイガステージ国立4 専用（SWELL child）
Theme URI:   https://seiga-stage-kunitachi4.jp/
Description: セイガステージ国立4（Ⅳ）特化サイト用のSWELL子テーマ。販売住戸・相場履歴・物件概要のデータ構造を含む。株式会社ライフノード運営（非公式情報サイト）。
Author:      株式会社ライフノード
Template:    swell
Version:     0.1.0
Text Domain: seiga4
*/

/* ------------------------------------------------------------------
   子テーマ独自CSSはここに最小限だけ書く。
   汎用の見た目はSWELL親テーマに任せる（速度目標のため肥大させない）。
   物件専用パーツ（販売住戸カード・相場表・追従CTA等）のみ後続で追加。
------------------------------------------------------------------ */

/* 非公式ディスクレーマ帯 */
.seiga-disclaimer{
  font-size:13px;line-height:1.7;padding:10px 16px;
  background:#f4f1ea;color:#5a5346;border:1px solid #e3ddcf;border-radius:6px;
}

/* サイト最下部の非公式ディスクレーマ（全ページ） */
.seiga-sitedisclaimer{
  background:#eceae3;border-top:1px solid #ddd9cf;
  padding:16px 0;font-size:12px;line-height:1.7;color:#6b6459;
}
.seiga-sitedisclaimer .seiga-container{max-width:960px;margin:0 auto;padding:0 20px}
@media(max-width:767px){ .seiga-sitedisclaimer{margin-bottom:58px} } /* SP追従CTAと重ならないように */

/* 販売状況バッジ（販売中/商談中/成約済） */
.seiga-status{display:inline-block;font-size:12px;font-weight:700;padding:2px 10px;border-radius:100px}
.seiga-status--onsale{background:#e5f2ea;color:#1f7a4d}
.seiga-status--talking{background:#f6ecd6;color:#8a5a12}
.seiga-status--sold{background:#e9e7e0;color:#6b736e}

/* 数値の桁揃え（価格・面積・単価） */
.seiga-num{font-variant-numeric:tabular-nums}

/* ==================================================================
   Ph.2 セクション・カード・表・CTA
   カラー: pine=購入/信頼, navy=売却。清潔感・情報量重視・スマホファースト
================================================================== */
:root{
  --sg-ink:#1b201d; --sg-ink2:#4a534d; --sg-ink3:#7b837c; --sg-line:#e2ddd2;
  --sg-paper:#f7f6f2; --sg-pine:#1f5c46; --sg-pine-d:#184b39;
  --sg-navy:#234a63; --sg-navy-d:#1b3a4e; --sg-card:#fff;
}
.seiga-main{color:var(--sg-ink);line-height:1.8}
.seiga-container{max-width:960px;margin:0 auto;padding:0 20px}

/* 見出し */
.seiga-h1{font-size:clamp(24px,5vw,34px);font-weight:700;line-height:1.3;margin:0 0 8px}
.seiga-h2{font-size:clamp(20px,4vw,27px);font-weight:700;line-height:1.35;margin:0 0 18px;
  padding-bottom:10px;border-bottom:2px solid var(--sg-pine)}
.seiga-lead{color:var(--sg-ink2);margin:0 0 18px}
.seiga-more{margin:16px 0 0}
.seiga-more a{color:var(--sg-pine);font-weight:700;text-decoration:none}

/* セクション帯 */
.seiga-sec{padding:44px 0}
.seiga-sec--alt{background:var(--sg-paper)}

/* ディスクレーマ */
.seiga-disclaimer{font-size:13px;line-height:1.7;padding:10px 16px;margin:0 0 20px;
  background:#f4f1ea;color:#5a5346;border:1px solid #e3ddcf;border-radius:6px}

/* ボタン */
.seiga-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;
  font-weight:700;font-size:15px;line-height:1.3;text-decoration:none;
  padding:13px 22px;border-radius:8px;transition:opacity .15s;min-height:48px}
.seiga-btn:hover{opacity:.88}
.seiga-btn--primary,.seiga-btn--buy{background:var(--sg-pine);color:#fff}
.seiga-btn--sell{background:var(--sg-navy);color:#fff}
.seiga-btn--ghost{background:#fff;color:var(--sg-pine);border:1.5px solid var(--sg-pine)}

/* メインビジュアル（外観） */
.seiga-hero{margin:0 0 20px;border-radius:14px;overflow:hidden;aspect-ratio:16/9;background:#eee}
.seiga-hero img{width:100%;height:100%;object-fit:cover;display:block}

/* 建物・共用部ギャラリー */
.seiga-bgallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.seiga-bgallery__item{margin:0}
.seiga-bgallery__item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block;background:#eee}
.seiga-bgallery__item figcaption{font-size:13px;color:var(--sg-ink2);margin-top:6px}

/* FV */
.seiga-fv{padding:40px 0 36px;background:linear-gradient(180deg,#fff, var(--sg-paper))}
.seiga-fv__h1{font-size:clamp(28px,6vw,44px);font-weight:800;letter-spacing:.02em;margin:0 0 10px}
.seiga-fv__sub{color:var(--sg-ink2);font-size:16px;margin:0 0 22px}
.seiga-fv__cta{display:flex;flex-wrap:wrap;gap:12px}
.seiga-fv__cta .seiga-btn{flex:1 1 auto}

/* ===== LP型ヒーロー（単一住戸フォーカス） ===== */
.seiga-btn--lg{font-size:17px;padding:16px 30px;min-height:56px}
.seiga-lp{padding:28px 0 36px;background:linear-gradient(180deg,#fff,var(--sg-paper))}
.seiga-lp__inner{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center}
.seiga-lp__media{position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:#eee}
.seiga-lp__media img{width:100%;height:100%;object-fit:cover;display:block}
.seiga-lp__noimg{position:absolute;inset:0;display:grid;place-items:center;color:#999;font-size:15px}
.seiga-lp__badge{position:absolute;top:12px;left:12px;font-size:13px;padding:4px 14px}
.seiga-lp__building{font-size:14px;color:var(--sg-ink2);margin:0 0 6px;font-weight:600}
.seiga-lp__h1{font-size:clamp(22px,3.6vw,30px);font-weight:800;line-height:1.35;margin:0 0 14px}
.seiga-lp__price{font-size:clamp(30px,6vw,40px);font-weight:800;color:var(--sg-pine);margin:0 0 6px}
.seiga-lp__specs{font-size:15px;color:var(--sg-ink2);margin:0 0 20px}
.seiga-lp__cta .seiga-btn{width:100%}
.seiga-lp__legal{font-size:12px;color:#8b9088;margin:12px 0 0;line-height:1.6}
.seiga-lp--empty{text-align:center}

/* 推しポイント */
.seiga-points{list-style:none;margin:0 0 8px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.seiga-points__item{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--sg-line);
  border-radius:10px;padding:14px 16px;font-weight:600;line-height:1.6}
.seiga-points__check{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--sg-pine);color:#fff;
  display:grid;place-items:center;font-size:13px;margin-top:2px}

/* 売却帯（従） */
.seiga-sellband{background:var(--sg-navy);color:#fff;padding:20px 0}
.seiga-sellband .seiga-container{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.seiga-sellband p{margin:0;font-size:14px}
.seiga-sellband .seiga-btn--sell{background:#fff;color:var(--sg-navy)}

@media(max-width:767px){
  .seiga-lp__inner{grid-template-columns:1fr;gap:18px}
  .seiga-sellband .seiga-container{flex-direction:column;text-align:center}
}

/* 販売住戸カード */
.seiga-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,340px));justify-content:center;gap:24px;margin:0 0 8px}
/* カードはFlexにしない（通常フロー）。
   Flex縦積みだとiOS Safariでカード高さの見積もりがズレた時に body だけが潰され、
   中のボタンがカード枠の外へはみ出して下の要素と重なるため。 */
.seiga-card{background:var(--sg-card);border:1px solid var(--sg-line);border-radius:12px;
  display:block}
.seiga-card__media{position:relative;display:block;aspect-ratio:4/3;background:#f4f2ed;overflow:hidden;border-radius:11px 11px 0 0}
.seiga-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.seiga-card__noimg{position:absolute;inset:0;display:grid;place-items:center;color:#999;font-size:14px}
.seiga-card__badge{position:absolute;top:10px;left:10px}
.seiga-card__body{padding:16px 18px;display:block}
.seiga-card__body>*+*{margin-top:10px} /* 旧 gap:10px 相当 */
.seiga-card__price{font-size:24px;font-weight:800;color:var(--sg-pine);margin:0}
.seiga-card__unit{font-size:15px;font-weight:700;margin-left:2px}
.seiga-card__spec{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:14px}
.seiga-card__spec li{display:flex;justify-content:space-between;border-bottom:1px dotted var(--sg-line);padding-bottom:4px}
.seiga-card__spec b{font-weight:600;color:var(--sg-ink2);font-size:12px}
.seiga-card__updated{font-size:12px;color:#8b9088;margin:0}
/* 詳細ボタンは幅いっぱい・カード内の最後。高さは自前で確保する */
.seiga-card__more{display:flex;width:100%;margin-top:16px}
.seiga-card__access{font-size:13px;color:var(--sg-ink2);margin:0;display:flex;gap:8px;line-height:1.5}
.seiga-card__access b{flex:0 0 auto;font-weight:600;color:var(--sg-ink3);font-size:12px;padding-top:1px}
/* 管理費・修繕積立金の値を右詰め（数字＋単位をまとめて右寄せ） */
.seiga-card__spec .seiga-card__v{text-align:right;white-space:nowrap}

/* 住宅ローン シミュレーション */
.seiga-loan{max-width:760px;margin:24px auto 0;background:#fff;border:1px solid var(--sg-line);border-radius:12px;padding:26px}
.seiga-loan__h{font-size:20px;font-weight:800;margin:0 0 4px}
.seiga-loan__lead{font-size:13px;color:var(--sg-ink2);margin:0 0 18px}
.seiga-loan__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}
.seiga-loan__grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--sg-ink2)}
.seiga-loan__grid label>span{display:flex;align-items:center;gap:8px;font-weight:400;color:var(--sg-ink);font-size:14px}
.seiga-loan__grid input,.seiga-loan__grid select{flex:1;min-width:0;width:100%;border:1px solid #d8d4c9;border-radius:6px;padding:10px 12px;font-size:15px;font-family:inherit;background:#fdfcfa}
.seiga-loan__result{margin:20px 0 0;padding:18px 20px;background:var(--sg-paper);border-radius:10px;text-align:center}
.seiga-loan__monthly{display:flex;align-items:baseline;justify-content:center;gap:8px;font-size:15px;color:var(--sg-ink2)}
.seiga-loan__monthly b{font-size:clamp(28px,7vw,36px);font-weight:800;color:var(--sg-pine)}
.seiga-loan__sub{font-size:13px;color:var(--sg-ink2);margin-top:8px}
.seiga-loan__sub b{color:var(--sg-ink);font-weight:700}
.seiga-loan__note{font-size:11px;color:#9a9a90;margin:12px 0 0;line-height:1.6}
@media(max-width:600px){.seiga-loan__grid{grid-template-columns:1fr}}
/* スペックは2カラムのまま。管理費・修繕積立金だけモバイルで全幅にして折り返し崩れを防ぐ */
.seiga-card__spec .seiga-card__v{white-space:nowrap}
@media(max-width:600px){
  .seiga-card__spec li.wide{grid-column:1 / -1}
}

/* 販売中カードは縦型・幅広（画像上・情報下）。単体でも様になる幅に */
#sale .seiga-cards{grid-template-columns:1fr;max-width:600px;margin-left:auto;margin-right:auto}
#sale .seiga-card__media{aspect-ratio:4/3}
#sale .seiga-card__media img{object-fit:cover}
#sale .seiga-card__body{padding:24px 26px}
#sale .seiga-card__price{font-size:30px}

/* 状況バッジ（既存 .seiga-status を流用） */

/* テーブル */
.seiga-tablewrap{overflow-x:auto;border:1px solid var(--sg-line);border-radius:10px;margin:0 0 12px}
.seiga-table{border-collapse:collapse;width:100%;font-size:14px;min-width:520px}
.seiga-table th,.seiga-table td{padding:10px 14px;border-bottom:1px solid var(--sg-line);text-align:left;vertical-align:top}
.seiga-table thead th{background:var(--sg-paper);font-size:12px;letter-spacing:.03em;white-space:nowrap}
.seiga-table tbody tr:last-child td,.seiga-table tbody tr:last-child th{border-bottom:none}
.seiga-table .seiga-num{text-align:right;white-space:nowrap}
.seiga-table--spec{min-width:0}
.seiga-table--spec th{width:34%;background:var(--sg-paper);font-weight:600;color:var(--sg-ink2);white-space:nowrap}
.seiga-tag{display:inline-block;font-size:12px;font-weight:700;padding:1px 9px;border-radius:100px}
.seiga-tag--listing{background:#e5eef4;color:#234a63}
.seiga-tag--closed{background:#e5f2ea;color:#1f7a4d}
.seiga-note{font-size:12px;color:#8b9088;margin:6px 0 0}

/* CTAブロック */
.seiga-cta{margin:24px 0 0;padding:22px;border-radius:12px;background:var(--sg-paper);
  border:1px solid var(--sg-line);text-align:center}
.seiga-cta__lead{margin:0 0 14px;font-weight:700}
.seiga-cta__btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* CV 2枚 */
.seiga-cvsec{background:var(--sg-pine);color:#fff}
.seiga-cvsec .seiga-h2{color:#fff;border-bottom-color:rgba(255,255,255,.4)}
.seiga-cv2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.seiga-cv2__box{background:#fff;color:var(--sg-ink);border-radius:12px;padding:22px}
.seiga-cv2__box h3{margin:0 0 8px;font-size:18px}
.seiga-cv2__box p{margin:0 0 16px;font-size:14px;color:var(--sg-ink2)}
.seiga-cv2__box .seiga-btn{width:100%}

/* リンクカード */
.seiga-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.seiga-linkcard{display:block;padding:18px;background:#fff;border:1px solid var(--sg-line);
  border-radius:10px;text-decoration:none;color:var(--sg-ink)}
.seiga-linkcard:hover{border-color:var(--sg-pine)}
.seiga-linkcard b{display:block;font-size:16px;margin-bottom:4px}
.seiga-linkcard span{font-size:13px;color:var(--sg-ink2)}

/* 住戸詳細 */
.seiga-unit__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.seiga-unit__price{font-size:32px;font-weight:800;color:var(--sg-pine);margin:16px 0}
.seiga-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:16px 0}
.seiga-gallery img{width:100%;border-radius:10px}
.seiga-unit__note{background:var(--sg-paper);border-radius:10px;padding:16px;margin:16px 0}
.seiga-notice{background:#f6ecd6;border:1px solid #e6cf9c;color:#7a5512;border-radius:8px;padding:12px 16px;margin:0 0 16px}

.seiga-empty{padding:22px;text-align:center;color:var(--sg-ink2);background:var(--sg-paper);border-radius:10px}

/* 本文（ギャラリーブロック等）と住戸ヒーロー画像 */
.seiga-richtext{margin:0 0 8px}
.seiga-richtext img{max-width:100%;height:auto;border-radius:8px}
.seiga-richtext figure{margin:0 0 14px}
.seiga-richtext p{margin:0 0 14px}
.seiga-unit__hero{margin:0 0 18px;border-radius:14px;overflow:hidden}
.seiga-unit__hero img{width:100%;height:auto;display:block}

/* ==================================================================
   Ph.3 新TOP（写真ヒーロー＋販売中/成約済＋フォーム＋フッター）
================================================================== */
:root{ --sg-serif:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif; }

/* ヒーロー（フル幅スライド） */
.seiga-hero{position:relative;height:74vh;min-height:460px;color:#fff;overflow:hidden;
  aspect-ratio:auto;border-radius:0;background:#2a302c;margin:0}
.seiga-hero__slides{position:absolute;inset:0}
.seiga-hero__slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}
.seiga-hero__slide.is-on{opacity:1}
.seiga-hero__slide img{width:100%;height:100%;object-fit:cover;display:block}
.seiga-hero__ph{display:grid;place-items:center;color:rgba(255,255,255,.55);font-weight:700;
  background:repeating-linear-gradient(45deg,#8a908a,#8a908a 16px,#7e847e 16px,#7e847e 32px)}
.seiga-hero::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,rgba(20,28,24,.40),rgba(20,28,24,.08) 40%,rgba(20,28,24,.66))}
.seiga-hero__dots{position:absolute;z-index:4;bottom:20px;right:26px;display:flex;gap:8px}
.seiga-hero__dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45)}
.seiga-hero__dots i.is-on{background:#fff}
.seiga-hero__in{position:absolute;z-index:3;left:0;right:0;bottom:54px}
.seiga-hero__en{font-size:12px;letter-spacing:.32em;font-weight:700;opacity:.9}
.seiga-hero__h1{font-family:var(--sg-serif);font-weight:600;font-size:clamp(28px,5.4vw,50px);
  line-height:1.42;letter-spacing:.04em;margin:16px 0 12px;text-shadow:0 2px 20px rgba(0,0,0,.3)}
.seiga-hero__sub{font-size:15px;opacity:.95}
/* ヒーロー左上のブランド名（ヘッダー非表示のためロゴ代わり） */
/* 物件名（H1）。以前はCSSの ::before で描いていたが、CSSのcontentは検索エンジンに
   読まれないため、実テキストのH1に変更した。見た目は同じ位置・同じ大きさ。 */
.seiga-hero__brand{position:absolute;z-index:4;top:32px;left:44px;margin:0;padding:0;border:0;
  color:#fff;font-family:var(--sg-serif);font-size:clamp(22px,2.8vw,36px);font-weight:600;
  line-height:1.3;letter-spacing:.14em;text-shadow:0 2px 18px rgba(0,0,0,.55)}
@media(max-width:600px){
  .seiga-hero__brand{top:18px;left:20px;font-size:22px;letter-spacing:.1em}
}
@media(prefers-reduced-motion:reduce){.seiga-hero__slide{transition:none}}

/* セクション見出し（中央） */
.seiga-shead{text-align:center;margin-bottom:36px}
.seiga-en{font-size:12px;letter-spacing:.3em;color:var(--sg-pine);font-weight:700}
.seiga-en--sold{color:#8a8f88}
.seiga-shead h2{font-family:var(--sg-serif);font-weight:600;font-size:clamp(22px,3.6vw,30px);
  margin-top:8px;letter-spacing:.03em;border:0;padding:0}
.seiga-shead p{font-size:14px;color:var(--sg-ink2);margin-top:8px}
.seiga-sec--paper{background:var(--sg-paper)}
.seiga-sec--sold{background:#eceae4}
.seiga-center{text-align:center;margin-top:32px}
.seiga-btn--p{background:var(--sg-pine);color:#fff}
/* ゴーストボタンは background:transparent にしない。
   色つきセクション(--paper / --sold)の上だと地の色と同化して「ボタンが消えた」ように見えるため、
   白地＋緑の枠で必ず輪郭が出るようにする。 */
.seiga-btn--ghost{background:#fff;border:1.5px solid var(--sg-pine);color:var(--sg-pine)}

/* 成約カード */
.seiga-card--sold{background:#fff}
.seiga-soldtime{font-size:13px;font-weight:700;color:#6b6f68;margin:0 0 6px;display:flex;align-items:center;gap:8px}
.seiga-sold-bldg{font-size:15px;font-weight:800;color:var(--sg-ink);margin:0 0 10px}
/* 坪単価（自動計算・強調表示） */
.seiga-tsubo{display:flex;align-items:baseline;gap:6px;font-size:18px;font-weight:800;color:var(--sg-pine);margin:0 0 10px}
.seiga-tsubo b{font-size:11px;font-weight:700;color:var(--sg-ink3);letter-spacing:.04em}
.seiga-tsubo span{font-size:12px;font-weight:700}
.seiga-card__price--sold{color:#7a7f78}

/* お問い合わせフォーム */
.seiga-contactsec{background:var(--sg-paper)}
.seiga-cform,.seiga-cform-done{max-width:620px;margin:0 auto;background:#fff;border:1px solid var(--sg-line);border-radius:8px;padding:30px}
.seiga-cform-done{text-align:center;padding:40px 30px}
.seiga-cform-done p{margin:0 0 8px}
.seiga-seg{display:flex;gap:10px;margin-bottom:20px}
.seiga-seg label{flex:1;text-align:center;padding:12px;border:1px solid var(--sg-line);border-radius:6px;font-weight:700;font-size:14px;cursor:pointer;color:var(--sg-ink2)}
.seiga-seg label.on{background:var(--sg-pine);color:#fff;border-color:var(--sg-pine)}
.seiga-seg input{position:absolute;opacity:0;pointer-events:none}
.seiga-fld{margin-bottom:16px}
.seiga-fld>label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.seiga-rq{color:#c0392b;font-size:11px;margin-left:5px}
.seiga-fld input[type=text],.seiga-fld input[type=date],.seiga-fld textarea{width:100%;border:1px solid #d8d4c9;border-radius:6px;padding:12px;font-size:15px;font-family:inherit;background:#fdfcfa}
.seiga-fld textarea{min-height:110px;resize:vertical}
.seiga-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seiga-hint{font-size:12px;color:#9a9a90;margin-top:6px}
.seiga-chk{display:flex;align-items:center;gap:8px;font-size:13px;margin:8px 0 20px}
.seiga-chk a{color:var(--sg-pine);text-decoration:underline}
.seiga-submit{width:100%;background:var(--sg-pine);color:#fff;border:0;border-radius:6px;padding:16px;font-size:16px;font-weight:700;cursor:pointer}
.seiga-submit:hover{opacity:.9}
.seiga-cnote{font-size:12px;color:#9a9a90;text-align:center;margin-top:12px}
.seiga-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* フッターリンク */
.seiga-footlinks{background:#1c2320;padding:26px 0}
.seiga-footlinks .seiga-container{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 26px}
.seiga-footlinks a{color:#cfd2cd;font-size:14px;text-decoration:none}
.seiga-footlinks a:hover{color:#fff}

/* 建物概要の本文 */
.seiga-buildingtext{margin-top:22px}

/* ===== 住戸詳細ページ：写真スライダー（SUUMO風・横スワイプ） ===== */
.seiga-slider{position:relative;max-width:760px;margin:0 auto 20px;border-radius:10px;overflow:hidden;background:#f4f2ed}
.seiga-slider__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}
.seiga-slider__track::-webkit-scrollbar{display:none}
.seiga-slider__track{scrollbar-width:none}
.seiga-slider__slide{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.seiga-slider__slide img{width:100%;height:100%;object-fit:contain}
.seiga-slider--empty{aspect-ratio:4/3;display:grid;place-items:center;color:#9a9a90;font-weight:700}
.seiga-slider__nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:0;
  background:rgba(20,28,24,.5);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:2}
.seiga-slider__nav:hover{background:rgba(20,28,24,.72)}
.seiga-slider__prev{left:12px}.seiga-slider__next{right:12px}
.seiga-slider__dots{position:absolute;bottom:12px;left:0;right:0;display:flex;gap:7px;justify-content:center;z-index:2}
.seiga-slider__dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 0 2px rgba(0,0,0,.3)}
.seiga-slider__dots i.on{background:#fff}

/* SWELLのコンテンツ枠(.l-content.l-container: max-width 1200px)をトップだけ全幅化。
   中身は各 .seiga-container が中央寄せするので読みやすさは保つ。 */
.home .l-content.l-container{max-width:100%!important;padding-left:0!important;padding-right:0!important;margin:0!important}
.home .l-mainArea{margin:0!important}
.seiga-main{width:100%!important;max-width:100%!important;margin:0!important;flex:1 1 100%!important}
/* サイドバーはこのサイトのデザインに無い。空カラム(304px)が残ると本文が左に寄るので消す。 */
#sidebar,.l-sidebar{display:none!important}
/* iOSでページ幅が押し広げられないよう、中身に上限を効かせる */
.seiga-main img,.seiga-main table,.seiga-main iframe{max-width:100%;height:auto}
.seiga-main *{min-width:0}
/* ↑の height:auto は同詳細度・後勝ちで枠に収める画像まで潰すので、ここで戻す。
   （枠側の aspect-ratio + object-fit で表示を制御する画像たち） */
.seiga-hero img,.seiga-hero__slide img,.seiga-lp__media img,
.seiga-card__media img,.seiga-slider__slide img{height:100%}

/* カスタマイザー「追加CSS」に残っている旧レイアウト指定(!important)を打ち消す。
   追加CSSはこのstyle.cssより前に読まれるので、同詳細度＋!importantで後勝ちできる。
   ※本来は管理画面の「追加CSS」を空にするのが正しい（内容は全てこのCSSに入っている）。 */
#sale .seiga-cards{max-width:600px!important}
#sale .seiga-card{flex-direction:column!important}
#sale .seiga-card__media{aspect-ratio:4/3!important;flex:none!important}
/* 旧・追加CSSの ::before で物件名を描いていた分を消す。
   物件名は実テキストのH1（.seiga-hero__brand）に移したので、残すと二重に表示される。 */
.home .seiga-hero::before{content:none!important;display:none!important}
/* ヘッダー下の余白（SWELL）を詰める */
.home #main_content{margin-top:0!important}
/* ヘッダー(帯・ロゴ行・メニュー)は全ページ非表示。ナビはフッターに集約。
   ※パンくず(#breadcrumb)は残す（青枠の要望） */
#header,#fix_header{display:none!important}
/* SWELLのスマホメニュー(画面外左に残りiOSで横スクロールを起こす)を消す。ナビはフッターにあるので不要。
   ※SWELL側ルールに勝つため body を付けて詳細度を上げる */
body .p-spMenu,body .p-spMenu__overlay,body .c-drawer{display:none!important}
/* 横溢れを止める(clipはfixed/stickyを壊さない) */
html,body{overflow-x:clip;max-width:100%}
.l-mainArea{padding-top:0!important}
/* パンくずが最上部に来るので少し余白を足す */
#breadcrumb{padding-top:14px!important}

/* スマホ追従CTA（SPのみ表示） */
.seiga-fixcta{display:none}
@media(max-width:767px){
  .seiga-fixcta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9990;
    gap:1px;background:var(--sg-line);box-shadow:0 -2px 10px rgba(0,0,0,.12)}
  .seiga-fixcta__btn{flex:1;text-align:center;padding:12px 6px;font-weight:700;font-size:15px;
    text-decoration:none;color:#fff}
  .seiga-fixcta__btn--buy{background:var(--sg-pine)}
  .seiga-fixcta__btn--sell{background:var(--sg-navy)}
  .seiga-fixcta{padding-bottom:env(safe-area-inset-bottom)} /* iPhoneのホームバー分 */
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))} /* 追従CTAでコンテンツが隠れないように */
  html{scroll-padding-bottom:84px}
  .seiga-cv2{grid-template-columns:1fr}
  /* 販売カードの詳細ボタン周りに余白（詰まり防止） */
  #sale .seiga-card__more{margin-top:16px}
  #sale .seiga-cards{margin-bottom:8px}
}


/* ==================================================================
   規約系ページ（プライバシーポリシー等）
   長文を読ませるページなので、行長を詰めて余白を大きく取る。
================================================================== */
.seiga-legal{max-width:760px;margin:0 auto;color:var(--sg-ink);line-height:1.9;font-size:15px}
.seiga-legal__lead{margin:0 0 40px;padding:20px 22px;background:var(--sg-paper);
  border-left:3px solid var(--sg-pine);border-radius:0 8px 8px 0;font-size:14px;color:var(--sg-ink2)}
.seiga-legal__sec{margin:0 0 38px}
/* SWELLの .post_content h2（濃紺の帯）に勝つ必要があるので詳細度を上げて上書きする */
.seiga-legal h2.seiga-legal__h{
  font-family:var(--sg-serif)!important;font-size:19px!important;font-weight:600!important;
  letter-spacing:.02em!important;text-align:left!important;color:var(--sg-ink)!important;
  background:none!important;box-shadow:none!important;border-radius:0!important;
  margin:0 0 14px!important;padding:0 0 8px!important;
  border:0!important;border-bottom:1px solid var(--sg-line)!important}
.seiga-legal h2.seiga-legal__h::before,.seiga-legal h2.seiga-legal__h::after{display:none!important}
/* 小見出し。SWELLの .post_content h3（左に色帯が付く）を打ち消す */
.seiga-legal h3.seiga-legal__h3{
  font-size:16px!important;font-weight:700!important;color:var(--sg-ink)!important;
  background:none!important;box-shadow:none!important;border-radius:0!important;
  margin:26px 0 8px!important;padding:0 0 0 12px!important;
  border:0!important;border-left:3px solid var(--sg-pine)!important;line-height:1.5!important}
.seiga-legal h3.seiga-legal__h3::before,.seiga-legal h3.seiga-legal__h3::after{display:none!important}
.seiga-legal__sec>.seiga-legal__h+.seiga-legal__h3{margin-top:14px!important}
.seiga-legal p{margin:0 0 14px}
.seiga-legal p:last-child{margin-bottom:0}
.seiga-legal ul{margin:0 0 14px;padding-left:1.2em;list-style:none}
.seiga-legal li{position:relative;margin:0 0 8px;padding-left:2px}
.seiga-legal li::before{content:"";position:absolute;left:-1em;top:.72em;
  width:5px;height:5px;border-radius:50%;background:var(--sg-pine);opacity:.5}
/* 本文中のリンク。ボタンは対象外にする（:not が無いと .seiga-legal a の方が詳細度で勝ち、
   ボタンの文字が緑＋下線になって、濃紺の地に緑文字＝読めない状態になる） */
.seiga-legal a:not(.seiga-btn){color:var(--sg-pine);text-decoration:underline;text-underline-offset:2px}
/* ボタンは色を明示し直す（SWELLの .post_content a にも勝たせる） */
.seiga-legal a.seiga-btn{text-decoration:none}
.seiga-legal a.seiga-btn--sell{background:var(--sg-navy);color:#fff}
.seiga-legal a.seiga-btn--buy,
.seiga-legal a.seiga-btn--primary,
.seiga-legal a.seiga-btn--p{background:var(--sg-pine);color:#fff}
.seiga-legal a.seiga-btn--ghost{background:#fff;color:var(--sg-pine);border:1.5px solid var(--sg-pine)}

/* 事業者情報・窓口の表 */
.seiga-legal__table{width:100%;border-collapse:collapse;font-size:14px;margin:0 0 6px}
.seiga-legal__table th,.seiga-legal__table td{text-align:left;vertical-align:top;
  padding:12px 14px;border-bottom:1px solid var(--sg-line)}
.seiga-legal__table th{width:34%;font-weight:600;color:var(--sg-ink2);background:var(--sg-paper);white-space:nowrap}
@media(max-width:600px){
  .seiga-legal__table th,.seiga-legal__table td{display:block;width:auto;white-space:normal;border-bottom:0;padding:10px 14px}
  .seiga-legal__table th{padding-bottom:2px;background:none;font-size:12px;color:var(--sg-ink3)}
  .seiga-legal__table tr{display:block;border-bottom:1px solid var(--sg-line)}
}

.seiga-legal__date{margin:44px 0 0;padding-top:18px;border-top:1px solid var(--sg-line);
  font-size:13px;color:var(--sg-ink3);text-align:right}

/* 編集者にだけ見える未入力アラート（公開側には出ない） */
.seiga-legal__todo{margin:28px 0 0;padding:14px 16px;font-size:13px;line-height:1.7;
  background:#fdf3e7;border:1px solid #e8c99a;border-radius:8px;color:#7a5320}

/* ==================================================================
   情報ページ（価格相場・物件概要）— .seiga-legal の上に足すパーツ
================================================================== */
.seiga-doc__note{font-size:13px;color:var(--sg-ink3);line-height:1.7}
.seiga-doc__sub{display:inline-block;margin-top:4px;font-size:12px;color:var(--sg-ink3);line-height:1.6}
.seiga-doc__box{padding:14px 16px;background:var(--sg-paper);border-radius:8px;font-size:14px}
.seiga-doc__cta{margin-top:20px}
.seiga-doc__cta .seiga-btn{width:100%;max-width:360px}

/* 設備タグ */
.seiga-doc__tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 14px;padding:0}
.seiga-doc__tags li{margin:0;padding:6px 14px;font-size:13px;font-weight:600;
  background:var(--sg-paper);border:1px solid var(--sg-line);border-radius:100px;color:var(--sg-ink2)}
.seiga-doc__tags li::before{display:none} /* .seiga-legal li の丸ポチを打ち消す */

/* 事例テーブル（横に長いので枠内スクロール） */
.seiga-table--price{min-width:720px;font-size:13.5px}
.seiga-table--price thead th{background:var(--sg-paper);font-weight:700;color:var(--sg-ink2);
  white-space:nowrap;text-align:left;padding:10px 12px;border-bottom:1px solid var(--sg-line)}
.seiga-table--price td{padding:10px 12px;border-bottom:1px solid var(--sg-line);vertical-align:middle}
.seiga-table--price td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.seiga-table--price td.nowrap{white-space:nowrap}
.seiga-table--price tbody tr:last-child td{border-bottom:0}

/* トップの「くわしく見る」ボタン並び */
.seiga-center{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
@media(max-width:600px){
  .seiga-center .seiga-btn{width:100%}
  .seiga-doc__cta .seiga-btn{max-width:none}
}

/* エリア相場との比較 */
.seiga-compare{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;margin:0 0 18px}
.seiga-compare__item{display:flex;flex-direction:column;justify-content:center;gap:6px;
  padding:20px 18px;background:var(--sg-paper);border:1px solid var(--sg-line);border-radius:12px;text-align:center}
.seiga-compare__label{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--sg-ink3)}
.seiga-compare__val{font-size:clamp(24px,5vw,32px);font-weight:800;line-height:1.1;
  color:var(--sg-ink2);font-variant-numeric:tabular-nums}
.seiga-compare__val small{font-size:13px;font-weight:700;margin-left:4px}
.seiga-compare__vs{display:flex;align-items:center;font-size:12px;font-weight:700;color:var(--sg-ink3)}
/* 自社物件側。エリア平均を下回るときだけ緑で強調する（上回るときは中立表示） */
.seiga-compare__item--own{background:#fff;border-color:var(--sg-pine)}
.seiga-compare__item--own .seiga-compare__val{color:var(--sg-ink)}
.seiga-compare__item--own.is-lower{background:#eef5f1;border-color:var(--sg-pine)}
.seiga-compare__item--own.is-lower .seiga-compare__val{color:var(--sg-pine)}
.seiga-compare__result{font-size:16px;line-height:1.8}
@media(max-width:600px){
  .seiga-compare{grid-template-columns:1fr;gap:8px}
  .seiga-compare__vs{justify-content:center}
}

/* ローン: ボーナス返済 */
.seiga-loan__hint{font-size:12px;color:var(--sg-ink3);line-height:1.6;margin:10px 0 0}
.seiga-loan__bonus{margin-top:8px;font-size:14px;color:var(--sg-ink2)}
.seiga-loan__bonus b{font-size:20px;font-weight:800;color:var(--sg-pine);
  font-variant-numeric:tabular-nums;margin:0 2px}
.seiga-loan__bonus[hidden]{display:none}

/* 住戸の動画（YouTube埋め込み） */
/* 写真スライダーの上に置くので、下側に余白をとる（幅はスライダーと揃える） */
.seiga-movie{max-width:760px;margin:0 auto 24px}
.seiga-movie__h{font-family:var(--sg-serif);font-size:20px;font-weight:600;letter-spacing:.02em;
  margin:0 0 12px;padding:0;border:0;background:none;color:var(--sg-ink)}
.seiga-movie__frame{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}
.seiga-movie__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.seiga-movie__note{font-size:12px;color:var(--sg-ink3);line-height:1.7;margin:10px 0 0}

/* ==================================================================
   TOP(LP) 追加パーツ：地図・周辺施設・間取りタイプ・推移グラフ・FAQ
================================================================== */
.seiga-h3{font-size:17px;font-weight:700;margin:30px 0 10px;padding:0 0 0 12px;
  border-left:3px solid var(--sg-pine);line-height:1.5;color:var(--sg-ink)}
.seiga-plain{margin:0 0 8px;line-height:1.9}

/* 地図 */
.seiga-map{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#eee;
  border:1px solid var(--sg-line)}
/* iframeは操作させない（ドラッグされると自前のピンと位置がずれるため。
   スマホでページをスクロールするとき地図に取られない利点もある） */
.seiga-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;pointer-events:none}
/* 物件位置のピン。地図は座標を中央に置くので、中央＝物件の位置 */
.seiga-map__pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);z-index:2;
  pointer-events:none;display:flex;flex-direction:column;align-items:center}
.seiga-map__pin b{background:var(--sg-pine);color:#fff;font-size:12px;font-weight:700;
  padding:5px 12px;border-radius:100px;white-space:nowrap;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.seiga-map__pin i{width:0;height:0;border:7px solid transparent;border-top:10px solid var(--sg-pine);margin-top:-1px}
.seiga-map__pin s{width:10px;height:10px;border-radius:50%;background:var(--sg-pine);border:2px solid #fff;
  box-shadow:0 1px 4px rgba(0,0,0,.4);margin-top:-4px}
.seiga-map__open{position:absolute;right:10px;bottom:10px;z-index:3;background:#fff;color:var(--sg-pine);
  font-size:12px;font-weight:700;padding:8px 14px;border-radius:8px;text-decoration:none;
  box-shadow:0 2px 8px rgba(0,0,0,.25)}
.seiga-map__open:hover{opacity:.88}
.seiga-map__foot{font-size:13px;color:var(--sg-ink3);line-height:1.7;margin:10px 0 0}
@media(max-width:600px){ .seiga-map{aspect-ratio:4/3} }

/* 周辺施設 */
.seiga-facilities{list-style:none;margin:0 0 8px;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 24px}
.seiga-facilities li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  padding:11px 2px;border-bottom:1px dotted var(--sg-line);font-size:14px}
.seiga-facilities__name{font-weight:600}
.seiga-facilities__dist{flex:0 0 auto;font-size:13px;color:var(--sg-ink3);
  font-variant-numeric:tabular-nums;white-space:nowrap}

/* 間取りタイプ */
.seiga-mtypes{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.seiga-mtypes li{padding:8px 16px;font-size:14px;font-weight:600;background:#fff;
  border:1px solid var(--sg-line);border-radius:8px}

/* 坪単価の推移グラフ（自前SVG） */
.seiga-chart{margin:0;max-width:820px;margin-left:auto;margin-right:auto}
.seiga-chart svg{width:100%;height:auto;display:block;overflow:visible}
.seiga-chart__grid{stroke:var(--sg-line);stroke-width:1}
.seiga-chart__line{fill:none;stroke:var(--sg-pine);stroke-width:2.5;
  stroke-linejoin:round;stroke-linecap:round}
.seiga-chart__dot{fill:#fff;stroke:var(--sg-pine);stroke-width:2.5}
.seiga-chart__val{font-size:13px;font-weight:800;fill:var(--sg-pine);text-anchor:middle}
.seiga-chart__xtick{font-size:12px;fill:var(--sg-ink3);text-anchor:middle}
.seiga-chart__ytick{font-size:11px;fill:var(--sg-ink3);text-anchor:end}
.seiga-chart figcaption{font-size:12px;color:var(--sg-ink3);line-height:1.7;margin-top:10px;text-align:center}

/* FAQ */
.seiga-faq{max-width:820px;margin:0 auto;text-align:left}
.seiga-faq__q{font-weight:700;font-size:16px;line-height:1.6;margin:0;padding:20px 0 0 34px;
  position:relative;color:var(--sg-ink)}
.seiga-faq__q::before{content:"Q";position:absolute;left:0;top:19px;
  width:24px;height:24px;border-radius:50%;background:var(--sg-pine);color:#fff;
  font-size:13px;font-weight:800;display:grid;place-items:center}
.seiga-faq__a{margin:8px 0 0;padding:0 0 20px 34px;font-size:15px;line-height:1.9;
  color:var(--sg-ink2);border-bottom:1px solid var(--sg-line)}
.seiga-faq__a:last-child{border-bottom:0}

/* エリア相場グラフ：件数の少ない期の点 */
.seiga-chart__dot.is-low{fill:#fff;stroke-dasharray:3 2}

/* リノベーション表示 */
.seiga-reno{display:inline-block;font-size:12px;font-weight:700;padding:3px 12px;border-radius:100px;
  background:var(--sg-pine);color:#fff;letter-spacing:.02em}
.seiga-reno--partial{background:#3c7f63}
.seiga-reno--plan{background:#7b837c}
/* カード画像の右上（販売状況バッジは左上） */
.seiga-card__reno{position:absolute;top:10px;right:10px;box-shadow:0 2px 8px rgba(0,0,0,.25)}

.seiga-reno-sec{max-width:760px;margin:24px auto 0;padding:22px 24px;
  background:var(--sg-paper);border:1px solid var(--sg-line);border-radius:12px}
.seiga-reno-sec__h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-family:var(--sg-serif);font-size:19px;font-weight:600;margin:0 0 14px;padding:0;border:0;background:none}
.seiga-reno-sec__list{list-style:none;margin:0 0 14px;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 16px}
.seiga-reno-sec__list li{position:relative;padding-left:22px;font-size:14px;line-height:1.7}
.seiga-reno-sec__list li::before{content:"";position:absolute;left:4px;top:.62em;
  width:6px;height:11px;border-right:2px solid var(--sg-pine);border-bottom:2px solid var(--sg-pine);
  transform:rotate(45deg)}
@media(max-width:600px){ .seiga-reno-sec{padding:18px 16px} }

/* 毎月の保有コスト */
.seiga-cost{max-width:760px;margin:28px auto 0;padding:24px 26px;background:#fff;
  border:2px solid var(--sg-pine);border-radius:12px}
.seiga-cost__h{font-family:var(--sg-serif);font-size:20px;font-weight:600;margin:0 0 16px;
  padding:0;border:0;background:none;color:var(--sg-ink)}
.seiga-cost__table{width:100%;border-collapse:collapse;font-size:15px}
.seiga-cost__table th,.seiga-cost__table td{text-align:left;vertical-align:top;padding:12px 4px;
  border-bottom:1px solid var(--sg-line)}
.seiga-cost__table th{width:46%;font-weight:600;color:var(--sg-ink2)}
.seiga-cost__table td{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}
.seiga-cost__note{display:block;margin-top:4px;font-size:12px;font-weight:400;
  color:var(--sg-ink3);line-height:1.6;text-align:right}
.seiga-cost__total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin:16px 0 0;padding:14px 16px;background:var(--sg-paper);border-radius:8px}
.seiga-cost__total span{font-size:15px;font-weight:700}
.seiga-cost__total b{font-size:clamp(28px,6vw,36px);font-weight:800;color:var(--sg-pine);
  font-variant-numeric:tabular-nums;margin-left:auto}
.seiga-cost__lead{font-size:14px;color:var(--sg-ink2);margin:12px 0 0;line-height:1.8}
@media(max-width:600px){ .seiga-cost{padding:18px 16px} .seiga-cost__table th{width:52%} }

/* ローン結果に足す「毎月の支出合計」 */
.seiga-loan__with{margin-top:12px;padding-top:12px;border-top:1px dashed var(--sg-line);
  font-size:14px;color:var(--sg-ink2)}
.seiga-loan__with b{font-weight:800;color:var(--sg-ink);font-variant-numeric:tabular-nums}
.seiga-loan__grand{display:block;margin-top:8px;font-size:15px;font-weight:700;color:var(--sg-ink)}
.seiga-loan__grand b{font-size:clamp(24px,5vw,30px);color:var(--sg-pine);margin:0 4px}

/* 設備仕様 */
.seiga-equip{max-width:760px;margin:24px auto 0}
.seiga-equip__h{font-family:var(--sg-serif);font-size:19px;font-weight:600;margin:0 0 12px;
  padding:0 0 8px;border:0;border-bottom:1px solid var(--sg-line);background:none}
.seiga-equip__list{list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px 18px}
.seiga-equip__list li{position:relative;padding-left:20px;font-size:14px;line-height:1.7}
.seiga-equip__list li::before{content:"";position:absolute;left:2px;top:.62em;
  width:6px;height:11px;border-right:2px solid var(--sg-pine);border-bottom:2px solid var(--sg-pine);
  transform:rotate(45deg)}

/* 購入ガイド */
.seiga-guide__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.seiga-guide__card{display:flex;flex-direction:column;gap:6px;padding:20px 22px;background:#fff;
  border:1px solid var(--sg-line);border-radius:12px;text-decoration:none;color:var(--sg-ink);
  transition:border-color .15s,transform .15s}
.seiga-guide__card:hover{border-color:var(--sg-pine);transform:translateY(-2px)}
.seiga-guide__t{font-size:17px;font-weight:700;color:var(--sg-pine);
  display:flex;align-items:center;gap:8px}
.seiga-guide__t::after{content:"›";margin-left:auto;font-size:20px;line-height:1;color:var(--sg-ink3)}
.seiga-guide__d{font-size:13px;line-height:1.7;color:var(--sg-ink2)}

/* 手順リスト */
.seiga-steps{list-style:none;counter-reset:step;margin:0 0 8px;padding:0}
.seiga-steps li{counter-increment:step;position:relative;padding:0 0 22px 46px;
  border-left:2px solid var(--sg-line);margin-left:15px}
.seiga-steps li:last-child{border-left-color:transparent;padding-bottom:0}
.seiga-steps li::before{content:counter(step);position:absolute;left:-16px;top:-2px;
  width:30px;height:30px;border-radius:50%;background:var(--sg-pine);color:#fff;
  font-size:14px;font-weight:800;display:grid;place-items:center}
.seiga-steps li b{display:block;font-size:16px;font-weight:700;margin-bottom:4px;line-height:1.5}
.seiga-steps li span{display:block;font-size:14px;line-height:1.85;color:var(--sg-ink2)}
.seiga-steps--compact li{padding-bottom:16px}
@media(max-width:600px){ .seiga-steps li{padding-left:36px} }
