/*
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-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,1fr));gap:20px;margin:0 0 8px}
.seiga-card{background:var(--sg-card);border:1px solid var(--sg-line);border-radius:12px;overflow:hidden;
  display:flex;flex-direction:column}
.seiga-card__media{position:relative;display:block;aspect-ratio:4/3;background:#eee}
.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:flex;flex-direction:column;gap:10px;flex:1}
.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{margin-top:auto}

/* 状況バッジ（既存 .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}
@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}
.seiga-btn--ghost{background:transparent;border:1px 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 10px;display:flex;align-items:center;gap:8px}
.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}

/* SWELLの列幅を無視して全幅にする（ぶち抜き）。※サイドバーはカスタマイザーでOFF前提 */
.seiga-main{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);overflow-x:hidden}
/* SWELLの記事内デフォルト余白を打ち消す */
.seiga-main > section,
.seiga-main > nav{max-width:none}

/* スマホ追従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:14px 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)}
  body{padding-bottom:58px} /* 追従CTAでコンテンツが隠れないように */
  .seiga-cv2{grid-template-columns:1fr}
}

