/* Property Workbench だけの見た目。
   ★型（kit.css）のあとに読まれる。型で足りるものはここに書かない。
   ★モック（_mock/pw）の色と形をそのまま写したもの。紺 #1c3558 と金 #e2bf7e が基調。 */
:root{
  --c-gold:#e2bf7e;      /* 差し色。第1弾リリースの札、見出しの上線、帯のボタン */
  --c-navy2:#2a4f7f;     /* 紺のグラデーションの明るい側 */
  --c-navy3:#2a4468;     /* 紺の上に置く箱 */
  --c-onnavy:#c6d2e3;    /* 紺の上の説明文 */
}

/* ── ヘッダーのロゴ（絵） ──────────────────────────────────────────────
   ★ロゴは背景が透けていて色も半透明なので、暗い地には置かない。
     フッターは絵を使わず白い文字で書く（型のフッターがそうなっている）。 */
.pw-logo{flex-direction:row;align-items:center;gap:12px}
.pw-logo img{height:44px;width:auto}
.pw-logo small{margin-top:0;letter-spacing:.06em;font-size:11px;white-space:nowrap}
@media (max-width:1180px){.pw-logo small{display:none}}
@media (max-width:960px){.pw-logo img{height:38px}}

/* ── 見出し ────────────────────────────────────────────────────────────
   h1・h2 は明朝（Shippori Mincho）。h3 から下はゴシックの 900。モックと同じ。 */
h1,h2{color:var(--c-main);letter-spacing:.02em;line-height:1.4}
h3{font-family:var(--f-body);font-weight:900}
.bg-deep h1,.bg-deep h2,.pw-navy h2{color:#fff}
.eyebrow{color:var(--c-main2);letter-spacing:.2em}
.bg-deep .eyebrow,.pw-navy .eyebrow{color:var(--c-gold)}

/* ── 地の色 ────────────────────────────────────────────────────────────*/
.pw-sky{background:linear-gradient(180deg,#eef6fd 0%,#fff 100%)}
.pw-navy{background:var(--c-main);color:#fff}
.pw-navy .lead,.pw-navy p{color:var(--c-onnavy)}
.pw-dawn{background:linear-gradient(135deg,#d6e8f8 0%,#eaf4fd 42%,#fff 72%,#fcf3e2 100%)}

/* ── 札（バッジ） ──────────────────────────────────────────────────────*/
.tag{display:inline-block;font-size:12px;font-weight:700;padding:4px 13px;border-radius:999px;background:var(--c-soft);color:var(--c-main);white-space:nowrap}
.tag.gold{background:var(--c-gold);color:var(--c-ink)}
.tag.soon{background:#ecebf5;color:#544683}
.tag.ok{background:#e1f1ea;color:#1b5f4a}
.tag.human{background:#f8eed8;color:#77510f}
.tag.line{background:#fff;border:1px solid var(--c-line);color:var(--c-main)}
.pw-navy .tag.line{background:transparent;border-color:#5c7598;color:var(--c-onnavy)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}

/* ── 箱 ────────────────────────────────────────────────────────────────*/
.box{background:var(--c-pale);border:1px solid var(--c-line2);border-radius:14px;padding:18px 20px}
.box b{display:block;color:var(--c-main);font-size:16px}
.box span{display:block;font-size:13.5px;color:var(--c-text2)}
.panel{background:var(--c-main);color:#fff;border-radius:18px;padding:30px}
.panel h3{margin:12px 0 6px;font-size:clamp(22px,2.2vw,28px)}
.panel p{margin:0;color:#d3dcea;font-size:15px}
.pw-navy .box{background:var(--c-navy3);border-color:var(--c-gold);color:#fff}
.pw-navy .box b{color:#fff}
.pw-navy .box span{color:var(--c-onnavy)}
.white-card{background:#fff;color:var(--c-ink);border-radius:18px;overflow:hidden}

/* ── 上に金の線を引いた短い説明 ───────────────────────────────────────*/
.notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:44px}
.notes div{border-top:2px solid var(--c-gold);padding-top:14px}
.notes b{display:block;font-size:17px;color:var(--c-main)}
.notes span{display:block;font-size:14px;color:var(--c-text2);margin-top:6px}
.pw-navy .notes b{color:#fff}
.pw-navy .notes span{color:var(--c-onnavy)}

/* ── 紺の帯（次のページへ誘う） ───────────────────────────────────────*/
.band{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
 background:linear-gradient(120deg,var(--c-main) 0%,var(--c-navy2) 100%);border-radius:22px;
 padding:clamp(26px,3vw,36px);box-shadow:0 18px 44px rgba(28,53,88,.18);margin-top:44px}
.band .eyebrow{color:var(--c-gold);margin:0 0 6px}
.band b{display:block;font-size:clamp(19px,2vw,24px);font-weight:900;color:#fff}
.band p{margin:6px 0 0;font-size:14.5px;color:var(--c-onnavy)}
.band .btn{background:var(--c-gold);color:var(--c-ink);box-shadow:0 10px 24px rgba(226,191,126,.35);flex:none}
.band .btn:hover{background:#efd6a4;color:var(--c-ink)}

/* ── 一覧の行（値と根拠） ──────────────────────────────────────────────*/
.rows{border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--c-line2)}
.rows .head{display:flex;justify-content:space-between;gap:12px;padding:10px 16px;font-size:12px;color:var(--c-text2);border-bottom:1px solid var(--c-line2);background:var(--c-pale)}
.rows .ln{display:flex;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--c-line2)}
.rows .ln:last-child{border-bottom:0}
.rows .ln small{display:block;font-size:11px;color:var(--c-text2)}
.rows .ln b{display:block;font-size:15px}
.rows .ln em{display:block;font-style:normal;font-size:11px;color:var(--c-main2)}

/* ── 写真 ──────────────────────────────────────────────────────────────*/
.pic{border-radius:18px;overflow:hidden;position:relative}
.pic img{width:100%;height:100%;object-fit:cover;display:block}
.pic.tall{aspect-ratio:4/3}
.pic.wide{aspect-ratio:16/9}

/* ── 2枚並び（文と写真） ──────────────────────────────────────────────*/
.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center}
.duo.rev>:first-child{order:2}

/* ── 番号つきの手順（使い方の10ステップ） ─────────────────────────────*/
.steps2{list-style:none;margin:44px 0 0;padding:0;display:grid;gap:12px;counter-reset:s2}
.steps2 li{display:grid;grid-template-columns:52px 1fr;gap:18px;align-items:start;background:#fff;border:1px solid var(--c-line2);border-radius:16px;padding:20px 24px}
.steps2 li::before{counter-increment:s2;content:counter(s2,decimal-leading-zero);font-family:var(--f-body);font-weight:900;font-size:26px;color:var(--c-main2);line-height:1.2}
.steps2 b{display:block;font-size:17.5px;color:var(--c-main)}
.steps2 span{display:block;color:var(--c-text2);font-size:15px;margin-top:2px}

/* ── 料金 ──────────────────────────────────────────────────────────────*/
.plan{border:1px solid var(--c-line);border-radius:22px;padding:32px;background:#fff}
.plan.lead-plan{background:var(--c-main);color:#fff;border-color:var(--c-main)}
.plan .yen{font-family:var(--f-body);font-weight:900;font-size:clamp(30px,3.4vw,42px);color:var(--c-main);line-height:1.2}
.plan.lead-plan .yen{color:#fff}
.plan .yen small{font-size:15px;font-weight:700}
.plan ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px}
.plan li{padding-left:22px;position:relative;font-size:15px;color:var(--c-text2)}
.plan li::before{content:"";position:absolute;left:2px;top:9px;width:11px;height:6px;border-left:2.5px solid var(--c-main2);border-bottom:2.5px solid var(--c-main2);transform:rotate(-45deg)}
.plan.lead-plan li{color:var(--c-onnavy)}
.plan.lead-plan li::before{border-color:var(--c-gold)}

/* ── よくある質問 ──────────────────────────────────────────────────────*/
.qa{display:grid;gap:14px;margin-top:40px}
.qa div{background:#fff;border:1px solid var(--c-line2);border-radius:16px;padding:22px 26px}
.qa b{display:block;color:var(--c-main);font-size:17px}
.qa p{margin:8px 0 0;color:var(--c-text2);font-size:15px}

/* ── 比べる表 ──────────────────────────────────────────────────────────*/
.tablewrap{overflow-x:auto;margin-top:40px}
.tbl{width:100%;min-width:680px;border-collapse:collapse;font-size:15px}
.tbl th,.tbl td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--c-line2);vertical-align:top}
.tbl thead th{background:var(--c-main);color:#fff;font-weight:700;white-space:nowrap}
.tbl thead th:first-child{border-top-left-radius:12px}
.tbl thead th:last-child{border-top-right-radius:12px}
.tbl tbody th{font-weight:700;color:var(--c-main);white-space:nowrap}
.tbl td{color:var(--c-text2)}

/* ── フォーム ──────────────────────────────────────────────────────────*/
form.apply select{width:100%;min-height:50px;padding:10px 14px;border-radius:12px;border:1px solid var(--c-line);background:#fff;font-size:16px;font-family:inherit;color:var(--c-ink)}
form.apply select:focus{outline:3px solid rgba(var(--c-main-rgb),.25);border-color:var(--c-main)}
form.apply textarea{min-height:110px;line-height:1.7;resize:vertical}
.formrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:clamp(32px,4vw,64px);align-items:start;margin-top:44px}

/* ── スマホ ────────────────────────────────────────────────────────────*/
@media (max-width:960px){
 .notes{grid-template-columns:1fr;gap:20px;margin-top:32px}
 .duo,.formrow{grid-template-columns:1fr}
 .duo.rev>:first-child{order:0}
 .band{flex-direction:column;align-items:flex-start}
 .band .btn{width:100%}
 .steps2 li{grid-template-columns:40px 1fr;gap:12px;padding:18px}
 .steps2 li::before{font-size:20px}
}

/* ── トップの大見出し（写真が左半分いっぱい） ─────────────────────────*/
.pw-hero{padding:0;display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);align-items:stretch;background:#fff}
.pw-hero .shotpic{position:relative;min-height:clamp(430px,50vw,760px)}
.pw-hero .shotpic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left center}
.pw-hero .body{display:flex;flex-direction:column;justify-content:center;
 padding:clamp(96px,9vw,120px) clamp(20px,5vw,110px) clamp(48px,6vw,80px) clamp(24px,5vw,72px)}
.pw-hero h1{font-size:clamp(30px,4.2vw,60px);margin:22px 0 0}
.pw-hero .lead{margin:20px 0 0;max-width:560px}
.pw-hero .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.pw-hero .rel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;font-size:14px;font-weight:700;color:var(--c-main)}
.pw-hero .yen{margin:8px 0 0;font-size:13px;color:var(--c-text2)}
@media (max-width:960px){
 .pw-hero{grid-template-columns:1fr}
 .pw-hero .shotpic{min-height:0;aspect-ratio:4/3;order:-1}
 /* ★写真が上に来るので、ヘッダーぶんの上の余白は要らない */
 .pw-hero .body{padding-top:clamp(28px,6vw,40px)}
 .pw-hero .acts .btn{flex:1 1 100%}
}

/* ── 写真つきのカード（業務・広がり） ─────────────────────────────────*/
.photocards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:40px}
.photocards.g3x{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pcard{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--c-line2);text-decoration:none;color:inherit;transition:transform .3s,box-shadow .3s}
a.pcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(28,53,88,.12)}
.pcard>.pic{border-radius:0;aspect-ratio:4/3}
.pcard .txt{padding:18px 20px;display:flex;flex-direction:column;gap:4px;flex:1}
.pcard .no{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--c-main2)}
.pcard .nm{font-family:var(--f-body);font-weight:900;font-size:18px;color:var(--c-main)}
.pcard p{margin:0;font-size:14px;color:var(--c-text2)}
.pcard .foot{margin-top:auto;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pcard .foot a{font-weight:700;font-size:14px;text-decoration:none}
@media (max-width:1100px){.photocards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.photocards,.photocards.g3x{grid-template-columns:1fr}}

/* ── 状態の凡例 ────────────────────────────────────────────────────────*/
.legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin:22px 0 0;padding:0;list-style:none;font-size:13.5px;color:var(--c-text2)}
.legend li{display:flex;align-items:center;gap:8px}

/* ── 4つの動き ─────────────────────────────────────────────────────────*/
.core{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:44px}
.core div.one{background:#fff;border:1px solid var(--c-line2);border-radius:20px;padding:30px}
.core .no{font-family:var(--f-body);font-weight:900;font-size:13px;letter-spacing:.14em;color:var(--c-main2)}
.core h3{margin:6px 0 2px;font-size:22px;color:var(--c-main)}
.core .sub{font-size:15.5px;font-weight:700;color:var(--c-ink)}
.core p{margin:10px 0 0;font-size:15px;color:var(--c-text2)}
.core .eg{margin-top:14px;background:var(--c-pale);border-radius:12px;padding:12px 16px;font-size:13.5px;color:var(--c-text2)}
.core .eg b{color:var(--c-main);margin-right:8px}
.core .hu{margin-top:8px;font-size:13.5px;color:var(--c-main2);font-weight:700}
@media (max-width:860px){.core{grid-template-columns:1fr}}

/* ── 決まりごと（紺地の大きな一言） ───────────────────────────────────*/
.rule2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,56px);align-items:center}
.rule2 h2{font-size:clamp(28px,3.4vw,44px)}
.rule2 ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.rule2 li{font-size:15.5px;color:var(--c-onnavy);padding-left:20px;position:relative}
.rule2 li::before{content:"";position:absolute;left:0;top:13px;width:9px;height:9px;border-radius:2px;background:var(--c-gold)}
@media (max-width:860px){.rule2{grid-template-columns:1fr}}

/* ── 読み込みの場面（紺地・3列） ──────────────────────────────────────*/
.reading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,240px) minmax(0,1.25fr);gap:22px;align-items:start;margin-top:32px}
.reading .docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.reading .docs .wide{grid-column:1/-1;border-style:dashed}
.reading .count{align-self:center;background:#fff;color:var(--c-main);border-radius:18px;padding:26px 18px;text-align:center}
.reading .count .big{font-family:var(--f-body);font-size:clamp(34px,3.4vw,46px);font-weight:900;line-height:1.3}
.reading .count .bar{margin-top:14px;height:6px;background:var(--c-soft);border-radius:9px;overflow:hidden}
.reading .count .bar i{display:block;width:90%;height:6px;background:#2f7a63;border-radius:9px}
.reading .count small{display:block;margin-top:12px;font-size:12px;color:var(--c-text2)}
@media (max-width:1100px){.reading{grid-template-columns:1fr}.reading .count{max-width:340px;margin:0 auto}}

/* ── 業務ごとの大きなカード（5つの業務） ─────────────────────────────*/
.cat{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(24px,3vw,36px);
 background:#fff;border:1px solid var(--c-line2);border-radius:22px;padding:clamp(24px,3vw,36px);
 box-shadow:0 14px 36px rgba(28,53,88,.07);scroll-margin-top:96px}
.cat+.cat{margin-top:20px}
.cat .pic{aspect-ratio:4/3;margin-bottom:16px}
.cat .no{font-family:var(--f-head);font-size:15px;font-weight:800;color:#a97b1f;letter-spacing:.1em}
.cat h2{margin:4px 0 6px;font-size:clamp(24px,2.6vw,32px)}
.cat .who{font-size:13.5px;color:var(--c-text2)}
.cat .plans{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.flowline{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}
.flowline span{font-size:13px;font-weight:700;color:var(--c-main);background:#eef5fc;border:1px solid #d3e3f3;border-radius:999px;padding:5px 13px}
.flowline span.pw{background:var(--c-main);color:#fff;border-color:var(--c-main)}
.flowline i{font-style:normal;color:#9fb3cc;font-size:12px}
.flowttl{font-size:12.5px;font-weight:700;color:var(--c-main)}
.flowttl em{font-style:normal;font-weight:400;color:var(--c-text2);margin-left:8px}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.two div{background:var(--c-pale);border-radius:12px;padding:14px 16px;font-size:14px;color:var(--c-ink)}
.two b{display:block;font-size:11px;letter-spacing:.1em;color:var(--c-main2);margin-bottom:2px}
.lk{margin:14px 0 0;display:flex;gap:18px;flex-wrap:wrap;font-size:14px;font-weight:700}
.mini{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:30px}
.mini a{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--c-line2);border-radius:16px;padding:18px;transition:border-color .2s,transform .2s}
.mini a:hover{border-color:var(--c-main2);transform:translateY(-3px)}
.mini .no{display:block;font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--c-main2)}
.mini b{display:block;font-size:17px;color:var(--c-main);margin-top:2px}
.mini small{display:block;font-size:12px;color:var(--c-text2);margin-top:4px}
.mini .foot{margin-top:10px}
@media (max-width:1100px){.mini{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.cat{grid-template-columns:1fr}.two{grid-template-columns:1fr}.mini{grid-template-columns:1fr}}

/* ── 使い方の 10 ステップ（文と、その画面） ───────────────────────────*/
.gd-s{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start;padding:clamp(32px,4vw,52px) 0;border-top:1px solid var(--c-line2)}
.gd-s:first-of-type{border-top:0}
.gd-s .who{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;font-weight:700;letter-spacing:.12em;color:var(--c-main2)}
.gd-s h2{font-size:clamp(22px,2.6vw,30px);margin:8px 0 0}
.gd-s>div>p{margin:12px 0 0;color:var(--c-text2);font-size:15.5px}
.gd-s ul{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:7px}
.gd-s li{padding-left:22px;position:relative;font-size:14.5px;color:var(--c-text2)}
.gd-s li::before{content:"";position:absolute;left:2px;top:10px;width:9px;height:9px;border-radius:3px;background:var(--c-main2)}
.who .me{background:var(--c-main);color:#fff;padding:3px 11px;border-radius:999px;letter-spacing:.06em}
.who .pw{background:var(--c-soft);color:var(--c-main);padding:3px 11px;border-radius:999px;letter-spacing:.06em}
.scr{background:#fff;border:1px solid var(--c-line2);border-radius:18px;box-shadow:0 18px 44px rgba(28,53,88,.10);overflow:hidden;font-size:13.5px}
.scr .ttl{padding:11px 16px;border-bottom:1px solid var(--c-line2);font-size:12.5px;font-weight:700;color:var(--c-main);background:var(--c-pale)}
.scr .it{padding:12px 16px;border-bottom:1px solid var(--c-line2)}
.scr .it:last-child{border-bottom:0}
.scr .lab{font-size:11px;color:var(--c-text2)}
.scr .v{font-weight:700;color:var(--c-ink)}
.scr .src{margin-top:6px;font-size:12px;color:var(--c-text2);background:var(--c-pale);border:1px dashed var(--c-line2);border-radius:8px;padding:6px 10px}
.scr .src b{color:var(--c-main2);margin-right:6px}
.scr .split{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.scr .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.scr .chips span{font-size:12px;font-weight:700;color:var(--c-main);background:#eef5fc;border:1px solid #d3e3f3;border-radius:999px;padding:4px 12px}
.scr .chips span.on{background:var(--c-main);color:#fff;border-color:var(--c-main)}
.scr .go{margin:12px 16px 16px;display:inline-block;background:var(--c-main);color:#fff;font-size:13px;font-weight:700;padding:9px 18px;border-radius:999px}
@media (max-width:860px){.gd-s{grid-template-columns:1fr}}

/* ── 書式に書き込むところ（見本） ─────────────────────────────────────*/
.sheet{background:#fff;border:1px solid var(--c-line2);border-radius:18px;overflow:hidden;box-shadow:0 18px 44px rgba(28,53,88,.10)}
.sheet .head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 18px;background:var(--c-main);color:#fff;font-size:13px;font-weight:700}
.sheet .fld{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr) auto;gap:14px;align-items:start;padding:13px 18px;border-bottom:1px solid var(--c-line2)}
.sheet .fld:last-child{border-bottom:0}
.sheet .fld>.n{font-size:13px;color:var(--c-text2)}
.sheet .fld b{display:block;font-size:15px;color:var(--c-ink)}
.sheet .fld em{display:block;font-style:normal;font-size:11.5px;color:var(--c-main2);margin-top:3px}
.sheet .fld i{font-style:normal;font-size:11.5px;color:var(--c-text2)}
@media (max-width:680px){.sheet .fld{grid-template-columns:1fr;gap:6px}}

/* ── これまで／PW では ─────────────────────────────────────────────────*/
.beforeafter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:36px}
.beforeafter div{border-radius:18px;padding:26px 28px;background:var(--c-pale);border:1px solid var(--c-line2)}
.beforeafter div.after{background:var(--c-main);border-color:var(--c-main);color:#fff}
.beforeafter .n{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--c-main2)}
.beforeafter div.after .n{color:var(--c-gold)}
.beforeafter p{margin:8px 0 0;font-size:15px;color:var(--c-text2)}
.beforeafter div.after p{color:var(--c-onnavy)}
@media (max-width:760px){.beforeafter{grid-template-columns:1fr}}

/* ── ご注意の箱 ────────────────────────────────────────────────────────*/
.caution{display:flex;gap:12px;align-items:flex-start;background:#fcf6e9;border:1px solid #ecd9ae;border-radius:14px;padding:14px 18px;margin-top:22px;font-size:14px;color:var(--c-text2)}
.caution b{flex:none;color:#7a5a12}

/* ── 土地・競合・3D のページ切り替え ─────────────────────────────────*/
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.tabs a{font-size:14px;font-weight:700;text-decoration:none;color:var(--c-main);background:#fff;border:1px solid var(--c-line);border-radius:999px;padding:9px 20px;transition:background .2s,color .2s}
.tabs a:hover{background:var(--c-soft)}
.tabs a[aria-current="page"]{background:var(--c-main);color:#fff;border-color:var(--c-main)}

/* ── デモへの誘い ──────────────────────────────────────────────────────*/
.demo{background:#fff;border:1px solid var(--c-line2);border-radius:22px;overflow:hidden;box-shadow:0 18px 44px rgba(28,53,88,.10);margin-top:40px}
.demo .cap{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 22px;border-bottom:1px solid var(--c-line2);background:var(--c-pale)}
.demo .cap b{color:var(--c-main);font-size:15px}
.demo .inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(20px,3vw,36px);align-items:center;padding:clamp(20px,3vw,32px)}
.demo .inner .pic{aspect-ratio:16/10}
.demo .inner b{display:block;font-size:clamp(19px,2vw,24px);font-weight:900;color:var(--c-main)}
.demo .inner span{display:block;margin-top:8px;font-size:14.5px;color:var(--c-text2)}
.demo .note{margin:0;padding:0 clamp(20px,3vw,32px) clamp(20px,3vw,28px);font-size:13px;color:var(--c-text2)}
@media (max-width:860px){.demo .inner{grid-template-columns:1fr}}

/* ── 6つの問い・番号つきの小さな箱 ───────────────────────────────────*/
.qgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:40px}
.qgrid div{background:#fff;border:1px solid var(--c-line2);border-radius:16px;padding:20px 22px}
.qgrid b{display:block;font-size:13px;letter-spacing:.08em;color:var(--c-main2)}
.qgrid span{display:block;font-size:17px;font-weight:900;color:var(--c-main);margin-top:2px}
.qgrid small{display:block;font-size:13px;color:var(--c-text2);margin-top:6px}
@media (max-width:860px){.qgrid{grid-template-columns:1fr}}

/* ── 賃貸管理の部屋の並び ─────────────────────────────────────────────*/
.rooms{display:grid;gap:10px;margin-top:20px}
.floor{display:grid;grid-template-columns:44px repeat(4,minmax(0,1fr));gap:8px;align-items:stretch}
.floor>.f{display:flex;align-items:center;font-size:12px;font-weight:700;color:var(--c-text2)}
.room{background:#fff;border:1px solid var(--c-line2);border-radius:12px;padding:10px 12px;border-left:4px solid var(--c-line)}
.room b{display:block;font-size:15px;color:var(--c-ink)}
.room span{display:block;font-size:11.5px;color:var(--c-text2)}
.room.live{border-left-color:#2f7a63}
.room.free{border-left-color:#9fb3cc}
.room.out{border-left-color:#7a6bb0}
.room.work{border-left-color:#c2701c}
.room.due{border-left-color:#c2a03c}
.roomkey{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:12.5px;color:var(--c-text2)}
.roomkey span{display:flex;align-items:center;gap:6px}
.roomkey i{width:12px;height:12px;border-radius:3px;display:block}
@media (max-width:760px){.floor{grid-template-columns:36px repeat(2,minmax(0,1fr))}}

/* ── 質問の帯 ──────────────────────────────────────────────────────────*/
.asks{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding:0;list-style:none}
.asks li{background:#fff;border:1px solid var(--c-line);border-radius:999px;padding:10px 20px;font-size:14.5px;color:var(--c-main);font-weight:700}
.pw-navy .asks li{background:var(--c-navy3);border-color:#5c7598;color:#fff}

/* フッターは 4 列（型は 3 列）。ロゴは絵ではなく白い文字を使う。 */
.site-footer .top{grid-template-columns:1.5fr 1fr 1fr 1fr}
@media (max-width:960px){.site-footer .top{grid-template-columns:1fr}}

/* ★縦並び（flex column）の中では、札とボタンの行が横いっぱいに伸びてしまう。
   自分の幅で止める（モックと同じ見え方にする）。 */
.pw-hero .body>.pill{align-self:flex-start}
.pw-hero .body>.tags,.pw-hero .body>.acts,.pw-hero .body>.rel{align-self:flex-start}

/* ★紺地の節（.pw-navy / .bg-deep）は color:#fff を配るので、
   その中に置いた白い箱の文字まで白くなって読めなくなる。箱の中は地の色に戻す。 */
.pw-navy .rows,.pw-navy .white-card,.pw-navy .scr,.pw-navy .sheet,.pw-navy .count,
.bg-deep .rows,.bg-deep .white-card,.bg-deep .scr,.bg-deep .sheet{color:var(--c-ink)}
.pw-navy .rows p,.pw-navy .scr p,.bg-deep .rows p{color:var(--c-text2)}
.rows .ln b{color:var(--c-ink)}

/* 行の右端の札は、縮めない（flex の中で潰れて楕円になるため） */
.rows .ln>.tag,.sheet .fld>.tag,.scr .split>.tag{flex:none;align-self:flex-start}

/* ══════════════════════════════════════════════════════════════════════
   スクロールの動き（モック v5 から戻したもの。正本は _mock/pw/v5/）
   ★HTML は「動き終わったあとの形」で書いてあります。動きを切っている人と、
     GSAP が読めなかったときは、巻き戻しが起きないのでそのまま最後の形が見えます。
   ★GSAP・ScrollTrigger・Lenis は型（layout.html）がすでに読んでいます。
     ここで読み直すと二重になり、画面を止める動きとなめらかスクロールがぶつかります。
   ══════════════════════════════════════════════════════════════════════ */

/* ── 1. 読み込みの場面（トップ・画面を止めて 56 → 3）────────────────── */
.reel{padding:0}
.reel-stage{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:92px 0 22px}
.reel-top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.reel-top .eyebrow{margin:0 0 8px}
.reel .reel-top h2{margin:0;font-size:clamp(21px,2.6vw,33px)}

.rd-phase{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}
.rd-phase li{font-size:12px;padding:5px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.28);color:rgba(255,255,255,.6);transition:background .3s,color .3s,border-color .3s}
.rd-phase li.on{background:var(--c-gold);color:var(--c-deep);border-color:var(--c-gold);font-weight:700}

.rd-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,228px) minmax(0,1.3fr);gap:18px;align-items:start;margin-top:20px}

/* 資料カード（.box の見た目のまま、スキャンの線と「済」の丸を足す） */
.rd-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}
.rd-doc{position:relative;overflow:hidden;padding:11px 14px}
.rd-doc b{font-size:14px;padding-right:28px}
.rd-doc span{font-size:11px}
.rd-doc .rd-scan{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--c-gold),transparent);opacity:0}
.rd-doc .rd-chk{position:absolute;top:9px;right:9px;width:21px;height:21px;border-radius:50%;background:var(--c-gold);display:grid;place-items:center}
.rd-doc .rd-chk::after{content:"✓";font-size:12px;font-weight:900;font-style:normal;color:var(--c-deep)}
.rd-docs .wide{grid-column:1/-1;border-style:dashed}

/* 数のカード */
.rd-count{align-self:center;background:#fff;color:var(--c-ink);border-radius:18px;padding:22px 16px;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.22)}
.rd-lbl{font-size:12.5px;font-weight:700;color:var(--c-text2)}
.rd-num{font-family:var(--f-body);font-weight:900;font-size:clamp(52px,5.6vw,84px);line-height:1;margin:8px 0 2px;color:var(--c-main);font-variant-numeric:tabular-nums}
.rd-unit{font-size:12.5px;color:var(--c-text2)}
.rd-meter{margin-top:14px;height:6px;background:var(--c-soft);border-radius:9px;overflow:hidden}
.rd-meter i{display:block;height:6px;width:95%;background:#2f7a63;border-radius:9px}
.pw-navy .rd-count .rd-sub{margin:11px 0 0;font-size:12px;line-height:1.6;color:var(--c-text2);min-height:4.8em;text-align:left}

/* 重説の行（型の .rows をそのまま使い、止めている間に収まるよう詰める） */
#rd-rows{box-shadow:0 20px 50px rgba(0,0,0,.22)}
#rd-rows .ln{padding:6px 15px;align-items:flex-start}
#rd-rows .ln small{font-size:10.5px}
#rd-rows .ln b{font-size:13.5px;line-height:1.5;min-height:1.5em;transition:color .3s}
#rd-rows .ln b.dim{color:#b7c2d2}
#rd-rows .ln em{font-size:10.5px;overflow:hidden}
.reel .rd-foot{margin:12px 0 0;font-size:11px;color:var(--c-onnavy);text-align:right}  /* ★rgba(255,255,255,.5) は紺地でコントラスト 4.33 で落ちた（2026-09-30 実測） */

@media (min-width:901px) and (max-width:1180px){
 .rd-board{grid-template-columns:minmax(0,1fr) minmax(0,190px) minmax(0,1.25fr);gap:14px}
 .rd-doc b{font-size:13px}
}
/* ★画面が低いと、止めている間に9行が入りません。入らない分だけ畳みます。
   畳むのは公的な情報から入る2行（用途地域は残るので、動きの見え方は変わりません）。
   display:none にはせず高さ 0 にするだけなので、文章はページに残ります。 */
@media (min-width:901px) and (max-height:960px){
 .reel-stage{padding:84px 0 16px}
 #rd-rows .ln{padding:4px 15px}
 #rd-rows .ln:nth-child(7),#rd-rows .ln:nth-child(8){max-height:0;overflow:hidden;padding:0;border:0}
}
@media (min-width:901px) and (max-height:740px){
 #rd-rows .ln:nth-child(4){max-height:0;overflow:hidden;padding:0;border:0}
 #rd-rows .ln b{font-size:13px}
}
@media (max-width:900px){
 .reel-stage{padding:80px 0 14px}
 .reel .reel-top h2{font-size:20px}
 .rd-phase li{font-size:11px;padding:3px 10px}
 .rd-board{grid-template-columns:1fr;gap:12px}
 .rd-count{order:-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;text-align:left;padding:14px 18px}
 .rd-lbl{width:100%}
 .rd-num{font-size:46px;margin:2px 0 0}
 .rd-meter{width:100%;margin-top:8px}
 .pw-navy .rd-count .rd-sub{width:100%;min-height:3.4em;margin-top:6px}
 .rd-docs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .rd-doc{padding:9px 11px}
 .rd-doc span{max-height:0;overflow:hidden}   /* display:none にしない＝文章はページに残す */
 /* ★スマホでは、止めている間に右の表まで入りません。display:none にはせず
    高さ 0 にするだけなので、文章はページに残り検索エンジンからは読めます。 */
 #rd-rows{max-height:0;overflow:hidden;border:0;box-shadow:none}
}

/* ── 2. 書類の先へ（PC は画面を止めて横に流れる）────────────────────
   ★.on は JS が 901px 以上のときだけ付けます。付かないときは、
     いままでと同じ縦に並ぶカードのままです。 */
.fl-rail{display:none;height:2px;background:var(--c-line2);border-radius:2px}
.fl-rail i{display:block;height:2px;width:0;background:var(--c-main);border-radius:2px}
.flowsec.on{padding:0;height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.flowsec.on .fl-intro{padding-top:0;padding-bottom:14px}
.flowsec.on .fl-intro .lead{font-size:15px;margin-top:12px}
.flowsec.on .fl-rail{display:block;margin:0 32px}
.flowsec.on .fl-track{display:flex;gap:24px;margin-top:20px;padding:0 32px 6px;will-change:transform}
.flowsec.on .pcard{flex:0 0 min(70vw,700px);display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);height:min(54vh,420px)}
.flowsec.on .pcard>.pic{aspect-ratio:auto;height:100%}
.flowsec.on .pcard .txt{padding:26px 30px;justify-content:center;overflow:hidden}
.flowsec.on .pcard .nm{font-size:21px}
.flowsec.on .pcard p{font-size:15px}

/* ── 3. 使い方：右の画面を貼り付け、左の段に合わせて切り替える ───────── */
.gd-bar{position:sticky;top:72px;z-index:40;background:rgba(246,249,252,.94);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--c-line2)}
.gd-bar .wrap{position:relative;display:flex;gap:6px;overflow-x:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none}
.gd-bar .wrap::-webkit-scrollbar{display:none}
.gd-bar a{flex:0 0 auto;display:flex;gap:8px;align-items:center;text-decoration:none;font-size:13px;color:var(--c-text2);padding:6px 13px;border-radius:999px;border:1px solid transparent;white-space:nowrap;transition:background .25s,border-color .25s,color .25s}
.gd-bar a em{font-style:normal;font-weight:700;font-size:11px;letter-spacing:.08em;color:var(--c-main2)}
.gd-bar a.on{background:#fff;border-color:var(--c-gold);color:var(--c-main);font-weight:700}
@media (max-width:960px){.gd-bar{top:64px}}

.gd-stage{display:none}
/* ★align-items は既定（stretch）のまま。start にすると右の入れ物が中身の高さで止まり、
   貼り付け（sticky）が 600px で外れて、下が真っ白になります（2026-09-30 実測）。 */
.gd.on .gd-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,4vw,56px)}
.gd.on .gd-stage{display:block;position:relative}
.gd.on .gd-inline{display:none}
.gd.on .gd-s{display:flex;flex-direction:column;justify-content:center;min-height:76vh;padding:44px 0;scroll-margin-top:150px}
.gd-pin{position:sticky;top:152px;height:calc(100vh - 200px);max-height:600px;display:flex;flex-direction:column;justify-content:center}
.gd-frame{background:#fff;border:1px solid var(--c-line2);border-radius:18px;box-shadow:0 18px 44px rgba(28,53,88,.10);overflow:hidden}
.gd-fbar{display:flex;align-items:center;gap:6px;padding:10px 16px;border-bottom:1px solid var(--c-line2);background:var(--c-pale);font-size:12.5px}
.gd-fbar i{width:9px;height:9px;border-radius:50%;background:var(--c-line);flex:none}
.gd-fbar b{margin-left:8px;color:var(--c-main)}
.gd-fbar span{margin-left:auto;font-size:11px;color:var(--c-text2);font-variant-numeric:tabular-nums}
.gd-prog{height:3px;background:var(--c-soft)}
.gd-prog i{display:block;height:3px;width:10%;background:var(--c-gold);transition:width .5s}
.gd-screens{position:relative;height:min(58vh,470px)}
.gd-screens .scr{position:absolute;inset:0;opacity:0;transform:translateY(14px);transition:opacity .4s,transform .4s;pointer-events:none;border:0;border-radius:0;box-shadow:none;overflow:auto}
.gd-screens .scr.on{opacity:1;transform:none;pointer-events:auto}
.gd-screens .scr .ttl{display:none}
