@charset "utf-8";
/* ===========================================================
   re-hako.com トップページ（投資家向け）新デザイン 2026-09-17
   見本: design/site-design-4.html を .rz- 接頭辞で移植したもの。
   スマホ実寸(390px)＝見本のまま。900px以上でPCレイアウトに組み替える。
   色: 深緑#123B2A / 金#B5975A / 淡金#D8C79A / 真鍮#9A7F45 / 文字#15201A / 罫線#CBC8BE
   書体: 見出し・縦書き・数字=Shippori Mincho(600) / 本文=Zen Kaku Gothic New / 英字ラベル=Marcellus
   規則: 深緑の面は硬い境界線で始めない（mask-image で必ずフェードさせる）
   =========================================================== */

body.rz-rd .rz-top {
    --ink: #15201A;
    --forest: #123B2A;
    --gold: #B5975A;
    --goldl: #D8C79A;
    --brass: #9A7F45;
    --rule: #CBC8BE;
    --sub: #56605A;
    --x: 22px;   /* 罫線まわりの左右余白 */
    --x2: 36px;  /* 文章・ボタンの左右余白 */
    color: var(--ink);
    background: #fff;
    font-family: 'Zen Kaku Gothic New', 'Hiragino Sans', 'Yu Gothic', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 34px;
    letter-spacing: .06em;
    font-feature-settings: "palt";
    overflow-x: hidden;
}

body.rz-rd .rz-top * { box-sizing: border-box; }
body.rz-rd .rz-top p, body.rz-rd .rz-top h3, body.rz-rd .rz-top h4, body.rz-rd .rz-top dl, body.rz-rd .rz-top dd, body.rz-rd .rz-top ul, body.rz-rd .rz-top figure { margin: 0; }
body.rz-rd .rz-top ul { padding: 0; list-style: none; }
body.rz-rd .rz-top img { display: block; max-width: 100%; }
body.rz-rd .rz-top a { color: inherit; text-decoration: none; }

body.rz-rd .rz-top .rz-mi { font-family: 'Shippori Mincho', 'Hiragino Mincho ProN', 'Yu Mincho', serif; font-weight: 600; font-feature-settings: "palt"; }
body.rz-rd .rz-top .rz-en { font-family: 'Marcellus', 'Times New Roman', serif; text-transform: uppercase; letter-spacing: .2em; font-size: 12px; line-height: 1; font-weight: 400; }
body.rz-rd .rz-top .rz-no { font-family: 'Shippori Mincho', 'Hiragino Mincho ProN', serif; font-weight: 500; font-variant-numeric: lining-nums; letter-spacing: .08em; }

/* 写真を強くぼかした生成りの地 */
body.rz-rd .rz-top .rz-fog { background-size: 100% 100%; background-repeat: no-repeat; }
body.rz-rd .rz-top .rz-fog1 { background-image: url(../../img/redesign/fog1.webp); }
body.rz-rd .rz-top .rz-fog2 { background-image: url(../../img/redesign/fog2.webp); }

/* 深緑の面（グラデーションではなく、深さを出すための放射） */
body.rz-rd .rz-top .rz-forest {
    background:
        radial-gradient(55% 32% at 75% 22%, rgba(30,84,60,.75), transparent 72%),
        radial-gradient(50% 30% at 15% 60%, rgba(8,34,23,.9), transparent 72%),
        radial-gradient(55% 30% at 85% 88%, rgba(28,78,56,.6), transparent 72%),
        #123B2A;
    color: #fff;
}

/* ---------- 1. ヒーロー（A案 一枚絵） ---------- */
body.rz-rd .rz-top .rz-hero { position: relative; }
body.rz-rd .rz-top .rz-hero .rz-pic { position: relative; }
body.rz-rd .rz-top .rz-hero .rz-pic img { width: 100%; height: 640px; object-fit: cover; object-position: 42% 50%; }
body.rz-rd .rz-top .rz-hero .rz-pic::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(9,22,15,.62) 0, rgba(9,22,15,.08) 26%, rgba(9,22,15,.12) 48%, rgba(9,22,15,.9) 100%);
}
/* 右: 白い縦書き明朝のコピー */
body.rz-rd .rz-top .rz-hv { position: absolute; z-index: 2; top: 104px; right: 30px; writing-mode: vertical-rl; color: #fff;
    font-size: 32px; line-height: 60px; letter-spacing: .22em; white-space: nowrap; text-shadow: 0 2px 22px rgba(0,0,0,.4); margin: 0; }
body.rz-rd .rz-top .rz-hv span { display: block; }
body.rz-rd .rz-top .rz-hv .rz-l2 { margin-top: 52px; }
/* 左: 淡い金の縦書き（左に金の1px罫） */
body.rz-rd .rz-top .rz-hkind { position: absolute; z-index: 2; left: 22px; top: 108px; writing-mode: vertical-rl; color: var(--goldl);
    font-size: 17px; letter-spacing: .2em; white-space: nowrap; border-left: 1px solid var(--gold); padding-left: 12px; }
/* 写真の下端に直接、実例の数字 */
body.rz-rd .rz-top .rz-over { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 26px; color: #fff; }
body.rz-rd .rz-top .rz-over .rz-hd { display: flex; justify-content: space-between; align-items: baseline; border-bottom: 1px solid var(--gold); padding-bottom: 12px; margin-bottom: 16px; }
body.rz-rd .rz-top .rz-over .rz-hd .rz-en { color: var(--goldl); }
body.rz-rd .rz-top .rz-over .rz-hd .rz-no { font-size: 14px; color: var(--goldl); }
body.rz-rd .rz-top .rz-over .rz-hd span + span { font-size: 13px; opacity: .9; letter-spacing: .08em; }
body.rz-rd .rz-top .rz-nums { display: grid; grid-template-columns: 1fr 1fr 1fr; }
body.rz-rd .rz-top .rz-nums div { padding: 0 0 0 14px; border-left: 1px solid rgba(216,199,154,.45); }
body.rz-rd .rz-top .rz-nums div:first-child { padding-left: 0; border-left: 0; }
body.rz-rd .rz-top .rz-nums dt { font-size: 12px; line-height: 1; letter-spacing: .12em; color: var(--goldl); }
body.rz-rd .rz-top .rz-nums dd { font-size: 34px; line-height: 1.15; margin: 9px 0 0; letter-spacing: .02em; color: #fff; }
body.rz-rd .rz-top .rz-nums dd small { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 12px; margin-left: 2px; color: var(--goldl); }

/* ボタン（角丸・影・グラデーションなし。右の帯だけが色） */
body.rz-rd .rz-top .rz-btn { display: grid; grid-template-columns: 1fr 40px; align-items: center; height: 84px; border: 1px solid var(--ink); background: #fff; padding-left: 26px; color: var(--ink); }
body.rz-rd .rz-top .rz-btn b { display: block; font-size: 18px; line-height: 1; letter-spacing: .14em; font-weight: 600; }
body.rz-rd .rz-top .rz-btn .rz-en { display: block; font-size: 10.5px; color: var(--brass); margin-top: 12px; }
body.rz-rd .rz-top .rz-btn::after { content: ""; justify-self: stretch; align-self: stretch; background: var(--forest); }
body.rz-rd .rz-top .rz-btn + .rz-btn { margin-top: 12px; }

body.rz-rd .rz-top .rz-act { padding: 26px var(--x) 34px; }
body.rz-rd .rz-top .rz-act .rz-btn { height: 88px; border-color: var(--ink); background: #fff; color: var(--ink); }
body.rz-rd .rz-top .rz-act .rz-btn .rz-en { color: var(--brass); }
body.rz-rd .rz-top .rz-act .rz-btn::after { background: var(--forest); } /* 白地の上のボタン＝右帯は深緑 */
body.rz-rd .rz-top .rz-txl { display: block; text-align: center; margin-top: 20px; font-size: 14px; line-height: 1; letter-spacing: .12em; }
body.rz-rd .rz-top .rz-txl::after { content: ""; display: block; width: 150px; height: 1px; background: var(--gold); margin: 9px auto 0; }

/* ---------- 2. あなたは、買うだけ（深緑） ---------- */
body.rz-rd .rz-top .rz-sec2 { margin-top: 0; padding-bottom: 84px; }
body.rz-rd .rz-top .rz-th { display: grid; grid-template-columns: 230px 1fr; }
body.rz-rd .rz-top .rz-sec2 .rz-th { padding-top: 84px; }
body.rz-rd .rz-top .rz-th img { width: 230px; height: 330px; object-fit: cover; outline: 1px solid rgba(216,199,154,.6); outline-offset: -8px; }
body.rz-rd .rz-top .rz-tv { writing-mode: vertical-rl; justify-self: center; font-size: 26px; line-height: 48px; letter-spacing: .18em; white-space: nowrap; height: 330px; color: #fff; }
body.rz-rd .rz-top .rz-tv span { display: block; border-right: 1px solid var(--gold); padding-right: 5px; }
body.rz-rd .rz-top .rz-tv .rz-l2 { margin-top: 50px; }
body.rz-rd .rz-top .rz-lead { padding: 70px var(--x2) 0; font-size: 16px; line-height: 36px; letter-spacing: .08em; color: #fff; }
body.rz-rd .rz-top .rz-lead p + p { margin-top: 30px; }
body.rz-rd .rz-top .rz-lead p:first-of-type { font-family: 'Shippori Mincho', 'Hiragino Mincho ProN', serif; font-weight: 600; font-size: 20px; line-height: 38px; letter-spacing: .06em; color: var(--goldl); }
body.rz-rd .rz-top .rz-kind { display: block; color: #fff; font-size: 22px; line-height: 38px; letter-spacing: .14em; padding: 0 0 26px; margin-bottom: 30px; border-bottom: 1px solid var(--gold); }

/* ---------- 3. 役割分担＋実績の帯 ---------- */
body.rz-rd .rz-top .rz-rolew { padding-top: 70px; }
body.rz-rd .rz-top .rz-role { margin: 0 var(--x); border-top: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-role .rz-r { display: grid; grid-template-columns: 46px 1fr 84px; align-items: center; padding: 22px 0; border-bottom: 1px solid var(--rule); }
body.rz-rd .rz-top .rz-role .rz-no { font-size: 18px; color: var(--brass); }
body.rz-rd .rz-top .rz-role b { font-size: 22px; letter-spacing: .14em; }
body.rz-rd .rz-top .rz-role small { display: block; font-size: 14px; line-height: 24px; color: #3F4943; letter-spacing: .06em; margin-top: 6px; }
body.rz-rd .rz-top .rz-who { justify-self: end; width: 84px; font-size: 10.5px; letter-spacing: .2em; padding: 9px 0; text-align: center; line-height: 1; }
body.rz-rd .rz-top .rz-who.rz-rh { background: var(--forest); color: #fff; }
body.rz-rd .rz-top .rz-who.rz-you { border: 1px solid var(--gold); color: var(--brass); }
body.rz-rd .rz-top .rz-rolecap { padding: 18px var(--x) 70px; font-size: 14px; line-height: 26px; color: #3F4943; }

body.rz-rd .rz-top .rz-evz { padding: 44px var(--x) 0; }
body.rz-rd .rz-top .rz-ev { display: grid; grid-template-columns: 1.3fr 1.1fr .9fr; border-top: 1px solid var(--gold); border-bottom: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-ev div { padding: 22px 14px 20px 18px; border-left: 1px solid rgba(216,199,154,.35); }
body.rz-rd .rz-top .rz-ev div:first-child { padding-left: 0; border-left: 0; }
body.rz-rd .rz-top .rz-ev b { display: block; font-size: 40px; line-height: 1; color: #fff; letter-spacing: .01em; white-space: nowrap; }
body.rz-rd .rz-top .rz-ev b small { font-family: 'Zen Kaku Gothic New', sans-serif; font-size: 12px; font-weight: 500; margin-left: 3px; color: var(--goldl); }
body.rz-rd .rz-top .rz-ev span { display: block; font-size: 12px; line-height: 1; letter-spacing: .12em; color: var(--goldl); margin-top: 12px; }
body.rz-rd .rz-top .rz-evz .rz-tail { height: 56px; }

/* ---------- 章見出し ---------- */
body.rz-rd .rz-top .rz-ttl { padding: 88px var(--x) 0; display: grid; grid-template-columns: auto 1fr; column-gap: 16px; align-items: center; }
body.rz-rd .rz-top .rz-ttl .rz-en { color: var(--brass); }
body.rz-rd .rz-top .rz-ttl::after { content: ""; height: 1px; background: var(--gold); opacity: .7; }
body.rz-rd .rz-top .rz-ttl h2, body.rz-rd .rz-top .rz-ttl h3 { grid-column: 1 / -1; font-size: 26px; line-height: 44px; letter-spacing: .12em; margin-top: 16px; font-weight: 600; }

/* ---------- 4. なぜ安く仕入れられるのか ---------- */
body.rz-rd .rz-top .rz-blk { position: relative; margin-top: 54px; }
body.rz-rd .rz-top .rz-blk .rz-bgc { position: absolute; left: 0; top: 110px; bottom: 0; width: 100%; }
body.rz-rd .rz-top .rz-blk .rz-pic { position: relative; margin-left: var(--x2); }
body.rz-rd .rz-top .rz-blk .rz-pic img { width: 100%; height: 236px; object-fit: cover; }
body.rz-rd .rz-top .rz-lab { position: absolute; left: -14px; bottom: -17px; background: #fff; color: var(--forest); padding: 12px 16px; outline: 1px solid var(--gold); outline-offset: -4px; }
body.rz-rd .rz-top .rz-lab .rz-en { font-size: 12px; }
body.rz-rd .rz-top .rz-lab .rz-no { font-size: 14px; margin-left: 6px; letter-spacing: .1em; }
body.rz-rd .rz-top .rz-blk .rz-tx { position: relative; color: #fff; padding: 56px var(--x2) 54px; }
body.rz-rd .rz-top .rz-tx h3, body.rz-rd .rz-top .rz-wh h3, body.rz-rd .rz-top .rz-tx h4, body.rz-rd .rz-top .rz-wh h4 { font-size: 22px; line-height: 38px; letter-spacing: .12em; margin-bottom: 22px; font-weight: 600; }
body.rz-rd .rz-top .rz-lg { border-top: 1px solid var(--goldl); }
body.rz-rd .rz-top .rz-lg li { display: grid; grid-template-columns: 40px 1fr; align-items: baseline; padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.28); font-size: 16px; line-height: 28px; }
body.rz-rd .rz-top .rz-lg .rz-no { font-size: 14px; color: var(--goldl); }
body.rz-rd .rz-top .rz-blk.rz-r .rz-bgc { top: 0; bottom: 120px; left: auto; right: 0; width: 72%; }
body.rz-rd .rz-top .rz-blk.rz-r .rz-pic { margin: 40px var(--x2) 0 0; }
body.rz-rd .rz-top .rz-blk.rz-r .rz-lab { left: auto; right: -14px; background: var(--forest); color: #fff; outline-color: rgba(216,199,154,.7); }
body.rz-rd .rz-top .rz-wh { padding: 50px var(--x2) 0; }
body.rz-rd .rz-top .rz-wh .rz-lg { border-top-color: var(--gold); }
body.rz-rd .rz-top .rz-wh .rz-lg li { border-bottom-color: var(--rule); }
body.rz-rd .rz-top .rz-wh .rz-lg .rz-no { color: var(--brass); }

/* ---------- 5. 実例の数字 ---------- */
body.rz-rd .rz-top .rz-case { margin-top: 96px; }
body.rz-rd .rz-top .rz-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; margin-top: 30px; }
body.rz-rd .rz-top .rz-ba figure { position: relative; }
body.rz-rd .rz-top .rz-ba img { width: 100%; height: 150px; object-fit: cover; }
body.rz-rd .rz-top .rz-ba figcaption { position: absolute; left: 0; bottom: 0; background: #fff; padding: 8px 12px; color: var(--forest); font-size: 12px; }
body.rz-rd .rz-top .rz-ba figure + figure figcaption { background: var(--forest); color: #fff; outline: 1px solid rgba(216,199,154,.7); outline-offset: -4px; }
body.rz-rd .rz-top .rz-led { margin: 26px var(--x) 0; border-top: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-led .rz-r { display: grid; grid-template-columns: 1.55fr 1fr 1fr 1fr; align-items: baseline; border-bottom: 1px solid var(--rule); padding: 17px 0; }
body.rz-rd .rz-top .rz-led .rz-r.rz-h { font-size: 12px; line-height: 1; color: var(--sub); padding: 11px 0; letter-spacing: .12em; }
body.rz-rd .rz-top .rz-led .rz-r span { text-align: right; }
body.rz-rd .rz-top .rz-led .rz-r span:first-child { text-align: left; font-size: 14px; line-height: 22px; }
body.rz-rd .rz-top .rz-led .rz-r b { font-size: 24px; line-height: 1; color: var(--forest); letter-spacing: .02em; }
body.rz-rd .rz-top .rz-led small { font-size: 11px; margin-left: 1px; }
body.rz-rd .rz-top .rz-note { padding: 12px var(--x) 0; font-size: 12.5px; line-height: 23px; color: var(--sub); letter-spacing: .04em; }
body.rz-rd .rz-top .rz-btnw { padding: 44px var(--x2) 90px; }

/* ---------- 6. いくらから始められるか（深緑） ---------- */
body.rz-rd .rz-top .rz-money { margin-top: 0; padding-bottom: 70px; }
body.rz-rd .rz-top .rz-money .rz-ttl { padding-top: 84px; }
body.rz-rd .rz-top .rz-money .rz-ttl h3 { color: #fff; }
body.rz-rd .rz-top .rz-money .rz-ttl .rz-en { color: var(--goldl); }
body.rz-rd .rz-top .rz-mrow { display: flex; justify-content: space-between; align-items: baseline; margin: 0 var(--x); padding: 20px 0; border-bottom: 1px solid rgba(216,199,154,.4); color: #fff; }
body.rz-rd .rz-top .rz-money .rz-ttl + .rz-mrow { margin-top: 26px; border-top: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-mrow span { font-size: 14px; line-height: 22px; letter-spacing: .08em; }
body.rz-rd .rz-top .rz-mrow span i { display: block; font-style: normal; font-size: 12px; color: var(--goldl); }
body.rz-rd .rz-top .rz-mrow b { font-size: 34px; line-height: 1; }
body.rz-rd .rz-top .rz-mrow b small { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 13px; margin-left: 3px; color: var(--goldl); }
body.rz-rd .rz-top .rz-mrow b.rz-tx2 { font-size: 20px; letter-spacing: .1em; }
body.rz-rd .rz-top .rz-mrow.rz-who2 { display: block; }
body.rz-rd .rz-top .rz-mrow.rz-who2 span { display: block; margin-bottom: 14px; }
body.rz-rd .rz-top .rz-mrow.rz-who2 b { font-size: 30px; display: block; line-height: 1.2; }
body.rz-rd .rz-top .rz-mrow.rz-who2 b em { display: block; font-style: normal; font-size: 19px; letter-spacing: .12em; margin-top: 12px; color: #fff; }
body.rz-rd .rz-top .rz-mnote { padding: 16px var(--x) 0; font-size: 12.5px; line-height: 23px; color: rgba(255,255,255,.75); }

/* ---------- 7. 家賃が入るまでの流れ ---------- */
body.rz-rd .rz-top .rz-flowi { margin: 26px var(--x) 0; border-top: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-flowi > div { display: grid; grid-template-columns: 40px 1fr auto; align-items: start; padding: 20px 0; border-bottom: 1px solid var(--rule); }
body.rz-rd .rz-top .rz-flowi .rz-no { font-size: 14px; color: var(--brass); line-height: 32px; }
body.rz-rd .rz-top .rz-flowi b { display: block; font-size: 20px; line-height: 32px; letter-spacing: .12em; }
body.rz-rd .rz-top .rz-flowi small { display: block; font-size: 14px; line-height: 24px; color: #3F4943; margin-top: 4px; }
body.rz-rd .rz-top .rz-flowi em { font-style: normal; font-size: 12px; line-height: 1; letter-spacing: .1em; border: 1px solid var(--gold); color: var(--brass); padding: 7px 9px; margin-top: 6px; white-space: nowrap; }

/* ---------- 8. 自分も、大家です ---------- */
body.rz-rd .rz-top .rz-person { margin-top: 96px; padding: 84px 0; }
body.rz-rd .rz-top .rz-person > img { width: 250px; height: 300px; object-fit: cover; object-position: 50% 20%; outline: 1px solid rgba(181,151,90,.7); outline-offset: -8px; }
body.rz-rd .rz-top .rz-ptx { padding: 40px var(--x2) 0; }
body.rz-rd .rz-top .rz-ptx .rz-en { color: var(--brass); }
body.rz-rd .rz-top .rz-ptx h2, body.rz-rd .rz-top .rz-ptx h4 { font-family: 'Shippori Mincho', 'Hiragino Mincho ProN', serif; font-weight: 600; font-size: 26px; line-height: 44px; letter-spacing: .12em; margin: 16px 0 18px; }
body.rz-rd .rz-top .rz-ptx p { font-size: 16px; line-height: 34px; }
body.rz-rd .rz-top .rz-psig { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; border-top: 1px solid var(--gold); padding-top: 16px; margin-top: 24px; color: #3F4943; letter-spacing: .1em; }
body.rz-rd .rz-top .rz-psig b { font-size: 22px; letter-spacing: .16em; color: var(--ink); }
body.rz-rd .rz-top .rz-psig span { font-size: 13px; }

/* ---------- 9. よくあるご不安 ---------- */
body.rz-rd .rz-top .rz-faq { margin: 26px var(--x) 0; border-top: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-faq > div { padding: 22px 0 20px; border-bottom: 1px solid var(--rule); }
body.rz-rd .rz-top .rz-faq b { display: block; font-size: 18px; line-height: 30px; letter-spacing: .1em; padding-left: 30px; position: relative; }
body.rz-rd .rz-top .rz-faq b::before { content: "Q"; position: absolute; left: 0; top: 0; font-family: 'Marcellus', serif; font-weight: 400; font-size: 16px; color: var(--brass); }
body.rz-rd .rz-top .rz-faq p { font-size: 15px; line-height: 30px; padding-left: 30px; margin-top: 8px; color: #2E3832; }

/* ---------- 10. コラム・実績 ---------- */
body.rz-rd .rz-top .rz-journal { margin-top: 96px; }
body.rz-rd .rz-top .rz-idx { margin: 26px var(--x) 0; border-top: 1px solid var(--gold); }
body.rz-rd .rz-top .rz-idx a { display: grid; grid-template-columns: 40px 1fr; align-items: baseline; padding: 17px 0; border-bottom: 1px solid var(--rule); font-size: 16px; line-height: 28px; color: var(--ink); }
body.rz-rd .rz-top .rz-idx .rz-no { font-size: 14px; color: var(--brass); }
body.rz-rd .rz-top .rz-works { margin: 26px var(--x) 0; display: grid; gap: 22px; }
body.rz-rd .rz-top .rz-more--last { padding-bottom: 90px; }
body.rz-rd .rz-top .rz-wk img { width: 100%; height: 190px; object-fit: cover; }
body.rz-rd .rz-top .rz-wk p { display: grid; grid-template-columns: 40px 1fr; align-items: baseline; font-size: 16px; line-height: 28px; padding-top: 12px; }
body.rz-rd .rz-top .rz-wk .rz-no { font-size: 14px; color: var(--brass); }
body.rz-rd .rz-top .rz-more { margin-top: 22px; padding-right: var(--x); text-align: right; font-size: 14px; letter-spacing: .14em; }
body.rz-rd .rz-top .rz-more a { border-bottom: 1px solid var(--ink); padding-bottom: 3px; }

/* ---------- 11. 締めのCTA ---------- */
body.rz-rd .rz-top .rz-team img { width: 100%; height: 250px; object-fit: cover; object-position: 55% 45%; }
body.rz-rd .rz-top .rz-cta { padding: 70px var(--x2) 80px; position: relative; }
body.rz-rd .rz-top .rz-cta p { color: #fff; font-size: 22px; line-height: 42px; letter-spacing: .1em; margin-bottom: 32px; text-align: center; }
body.rz-rd .rz-top .rz-cta .rz-btn { border-color: var(--gold); background: transparent; color: #fff; }
body.rz-rd .rz-top .rz-cta .rz-btn .rz-en { color: var(--goldl); }
body.rz-rd .rz-top .rz-cta .rz-btn::after { background: var(--gold); }

/* ---------- 12. 空き家を売りたい方へ ---------- */
body.rz-rd .rz-top .rz-ownmini { display: grid; grid-template-columns: 1fr 40px; align-items: center; padding: 30px var(--x); background: #F2F0EA; border-top: 1px solid var(--rule); }
body.rz-rd .rz-top .rz-ownmini .rz-en { display: block; color: var(--brass); font-size: 10.5px; }
body.rz-rd .rz-top .rz-ownmini b { display: block; font-size: 19px; line-height: 1; letter-spacing: .12em; margin-top: 12px; }
body.rz-rd .rz-top .rz-ownmini small { display: block; font-size: 13px; line-height: 1; color: #3F4943; margin-top: 12px; letter-spacing: .06em; }
body.rz-rd .rz-top .rz-ownmini i { justify-self: end; width: 26px; height: 1px; background: var(--forest); }

/* ===========================================================
   PC（900px以上）
   縦書きは維持。最大幅1200px・読み物は760pxの中央寄せ。
   =========================================================== */
@media (min-width: 900px) {
    body.rz-rd .rz-top { --x: 56px; --x2: 56px; font-size: 17px; line-height: 36px; }
    body.rz-rd .rz-top .rz-wide { max-width: 1200px; margin-left: auto; margin-right: auto; }
    body.rz-rd .rz-top .rz-narrow { max-width: 760px; margin-left: auto; margin-right: auto; }

    /* 1. ヒーロー: 写真を横いっぱい・高さ720px。縦書きは右寄り、数字の帯は左下に幅560px */
    body.rz-rd .rz-top .rz-hero .rz-pic img { height: 720px; object-position: 46% 50%; }
    body.rz-rd .rz-top .rz-hv { font-size: 44px; line-height: 84px; top: 130px; right: 6vw; }
    body.rz-rd .rz-top .rz-hv .rz-l2 { margin-top: 64px; }
    body.rz-rd .rz-top .rz-hkind { font-size: 19px; left: 6vw; top: 140px; letter-spacing: .24em; }
    body.rz-rd .rz-top .rz-over { left: 6vw; right: auto; width: 560px; bottom: 48px; }
    body.rz-rd .rz-top .rz-over .rz-hd span + span { font-size: 14px; }
    body.rz-rd .rz-top .rz-nums dd { font-size: 40px; }
    body.rz-rd .rz-top .rz-act { max-width: 1200px; margin: 0 auto; padding: 44px 56px 56px; display: grid; grid-template-columns: 440px auto; gap: 40px; align-items: center; justify-content: start; }
    body.rz-rd .rz-top .rz-act .rz-btn { height: 96px; }
    body.rz-rd .rz-top .rz-txl { margin-top: 0; text-align: left; }
    body.rz-rd .rz-top .rz-txl::after { margin-left: 0; }

    /* 2. 深緑の面: 写真＋縦書きを左、リードを右 */
    body.rz-rd .rz-top .rz-sec2 .rz-inner { max-width: 1200px; margin: 0 auto; padding: 0 56px; display: grid; grid-template-columns: 420px 1fr; align-items: center; column-gap: 72px; }
    body.rz-rd .rz-top .rz-sec2 .rz-th { padding-top: 110px; padding-bottom: 110px; }
    body.rz-rd .rz-top .rz-th img { width: 280px; height: 400px; }
    body.rz-rd .rz-top .rz-th { grid-template-columns: 280px 1fr; }
    body.rz-rd .rz-top .rz-tv { height: 400px; font-size: 30px; line-height: 56px; }
    body.rz-rd .rz-top .rz-sec2 .rz-lead { padding: 0; }
    body.rz-rd .rz-top .rz-sec2 { padding-bottom: 0; }

    /* 3. 役割・実績 */
    body.rz-rd .rz-top .rz-rolew { padding-top: 110px; }
    body.rz-rd .rz-top .rz-role, body.rz-rd .rz-top .rz-rolecap { max-width: 860px; margin-left: auto; margin-right: auto; padding-left: 0; padding-right: 0; }
    body.rz-rd .rz-top .rz-role .rz-r { grid-template-columns: 70px 1fr 120px; padding: 26px 0; }
    body.rz-rd .rz-top .rz-role b { font-size: 24px; }
    body.rz-rd .rz-top .rz-who { width: 120px; }
    body.rz-rd .rz-top .rz-evz { padding-left: 0; padding-right: 0; }
    body.rz-rd .rz-top .rz-ev { max-width: 860px; margin: 0 auto; }
    body.rz-rd .rz-top .rz-ev b { font-size: 54px; }
    body.rz-rd .rz-top .rz-ev div { padding: 30px 20px 26px 26px; }

    /* 章見出し */
    body.rz-rd .rz-top .rz-ttl { max-width: 860px; margin: 0 auto; padding-left: 0; padding-right: 0; padding-top: 110px; }
    body.rz-rd .rz-top .rz-ttl h2, body.rz-rd .rz-top .rz-ttl h3 { font-size: 34px; line-height: 58px; }
    body.rz-rd .rz-top .rz-money .rz-ttl, body.rz-rd .rz-top .rz-journal .rz-ttl, body.rz-rd .rz-top .rz-case .rz-ttl { max-width: 860px; }

    /* 4. Reason: 写真と文を左右に */
    body.rz-rd .rz-top .rz-blk { max-width: 1200px; margin: 64px auto 0; display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
    body.rz-rd .rz-top .rz-blk .rz-bgc { left: 260px; width: calc(100% - 260px); top: 0; bottom: 0; }
    body.rz-rd .rz-top .rz-blk .rz-pic { margin-left: 56px; }
    body.rz-rd .rz-top .rz-blk .rz-pic img { height: 420px; }
    body.rz-rd .rz-top .rz-blk .rz-tx { padding: 64px 56px; }
    body.rz-rd .rz-top .rz-r2 { max-width: 1200px; margin: 64px auto 0; display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
    body.rz-rd .rz-top .rz-r2 .rz-blk { margin: 0; display: block; order: 2; }
    body.rz-rd .rz-top .rz-r2 .rz-blk.rz-r .rz-bgc { left: 0; right: auto; width: calc(100% - 200px); top: 0; bottom: 0; }
    body.rz-rd .rz-top .rz-r2 .rz-blk.rz-r .rz-pic { margin: 0 56px 0 0; }
    body.rz-rd .rz-top .rz-r2 .rz-blk.rz-r .rz-pic img { height: 420px; }
    body.rz-rd .rz-top .rz-r2 .rz-wh { order: 1; padding: 0 56px; }

    /* 5. 実例 */
    body.rz-rd .rz-top .rz-ba { max-width: 860px; margin: 40px auto 0; gap: 4px; }
    body.rz-rd .rz-top .rz-ba img { height: 300px; }
    body.rz-rd .rz-top .rz-led, body.rz-rd .rz-top .rz-note { max-width: 860px; margin-left: auto; margin-right: auto; padding-left: 0; padding-right: 0; }
    body.rz-rd .rz-top .rz-led .rz-r b { font-size: 28px; }
    body.rz-rd .rz-top .rz-btnw { max-width: 520px; margin: 0 auto; padding: 56px 0 110px; }

    /* 6. Budget */
    body.rz-rd .rz-top .rz-money .rz-inner { max-width: 860px; margin: 0 auto; }
    body.rz-rd .rz-top .rz-mrow { margin: 0; }
    body.rz-rd .rz-top .rz-mrow b { font-size: 40px; }
    body.rz-rd .rz-top .rz-mnote { padding-left: 0; padding-right: 0; }

    /* 7. 流れ */
    body.rz-rd .rz-top .rz-flowi { max-width: 860px; margin-left: auto; margin-right: auto; }
    body.rz-rd .rz-top .rz-flowi > div { grid-template-columns: 60px 1fr auto; }

    /* 8. 森田: 写真左・文右 */
    body.rz-rd .rz-top .rz-person { max-width: 1200px; margin: 120px auto 0; padding: 110px 56px; display: grid; grid-template-columns: 340px 1fr; column-gap: 72px; align-items: center; background-size: cover; }
    body.rz-rd .rz-top .rz-person > img { width: 340px; height: 440px; }
    body.rz-rd .rz-top .rz-ptx { padding: 0; }
    body.rz-rd .rz-top .rz-ptx h2, body.rz-rd .rz-top .rz-ptx h4 { font-size: 32px; line-height: 56px; }

    /* 9-10 */
    body.rz-rd .rz-top .rz-faq, body.rz-rd .rz-top .rz-idx, body.rz-rd .rz-top .rz-works { max-width: 860px; margin-left: auto; margin-right: auto; }
    body.rz-rd .rz-top .rz-faq b { font-size: 20px; }
    body.rz-rd .rz-top .rz-works { grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)); gap: 32px; }
    body.rz-rd .rz-top .rz-wk img { height: 260px; }
    body.rz-rd .rz-top .rz-more { max-width: 860px; margin-left: auto; margin-right: auto; padding-right: 0; }

    /* 11-12 */
    body.rz-rd .rz-top .rz-team img { height: 480px; object-position: 55% 45%; }
    body.rz-rd .rz-top .rz-cta { padding: 140px 56px 110px; }
    body.rz-rd .rz-top .rz-cta p { font-size: 30px; line-height: 58px; }
    body.rz-rd .rz-top .rz-cta .rz-inner { max-width: 900px; margin: 0 auto; }
    body.rz-rd .rz-top .rz-cta .rz-btns { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
    body.rz-rd .rz-top .rz-cta .rz-btn + .rz-btn { margin-top: 0; }
    body.rz-rd .rz-top .rz-ownmini { max-width: 1200px; margin: 0 auto; padding: 40px 56px; }
    body.rz-rd .rz-top .rz-ownmini b { font-size: 22px; }
}

/* 中間（560〜899px） */
@media (min-width: 560px) and (max-width: 899px) {
    body.rz-rd .rz-top .rz-hero .rz-pic img { height: 680px; }
    body.rz-rd .rz-top .rz-hv { font-size: 38px; line-height: 70px; }
}

/* ===========================================================
   2026-09-17 夜 追補: ヒーローをコンパクトに・文字を中央寄りに／全体の幅を詰める（PC）
   =========================================================== */
@media (min-width: 900px) {
    /* トップのヘッダーはPCでは写真に重ねず、ぼかした地の上に通常色で置く */
    body.rz-shell.home .rz-header { position: relative; background: transparent; }
    body.rz-shell.home .rz-logo b { color: var(--forest); }
    body.rz-shell.home .rz-logo .rz-en { color: var(--ink); }
    body.rz-shell.home .rz-gnav ul a, body.rz-shell.home .rz-gnav__sell { color: var(--ink); }
    body.rz-shell.home .rz-gnav__sell { border-bottom-color: var(--gold); }
    body.rz-shell.home .rz-gnav__cta { background: #fff; border-color: var(--ink); color: var(--ink); }
    body.rz-shell.home .rz-gnav__cta::after { background: var(--forest); }

    body.rz-rd .rz-top .rz-hero { max-width: 1040px; margin: 8px auto 0; padding: 0 40px; box-sizing: content-box; }
    body.rz-rd .rz-top .rz-hero .rz-pic img { height: 640px; object-position: 45% 50%; }
    body.rz-rd .rz-top .rz-hv { font-size: 38px; line-height: 72px; top: 64px; right: 30%; }
    body.rz-rd .rz-top .rz-hv .rz-l2 { margin-top: 44px; }
    body.rz-rd .rz-top .rz-hkind { font-size: 18px; left: 30%; top: 72px; }
    body.rz-rd .rz-top .rz-over { left: 50%; right: auto; transform: translateX(-50%); width: 520px; bottom: 40px; }
    body.rz-rd .rz-top .rz-nums dd { font-size: 36px; }
    body.rz-rd .rz-top .rz-act { max-width: 1040px; padding: 40px 40px 56px; grid-template-columns: 440px auto; justify-content: center; }

    body.rz-rd .rz-top .rz-sec2 .rz-inner,
    body.rz-rd .rz-top .rz-blk,
    body.rz-rd .rz-top .rz-r2,
    body.rz-rd .rz-top .rz-person,
    body.rz-rd .rz-top .rz-ownmini { max-width: 1040px; }
    body.rz-rd .rz-top .rz-sec2 .rz-inner { grid-template-columns: 380px 1fr; column-gap: 56px; padding: 0 40px; }
    body.rz-rd .rz-top :is(.rz-role, .rz-rolecap, .rz-ev, .rz-ttl, .rz-ba, .rz-led, .rz-note, .rz-flowi, .rz-faq, .rz-idx, .rz-works, .rz-more),
    body.rz-rd .rz-top .rz-money .rz-inner,
    body.rz-rd .rz-top :is(.rz-money, .rz-journal, .rz-case) .rz-ttl { max-width: 760px; }
    body.rz-rd .rz-top .rz-cta .rz-inner { max-width: 760px; }
    body.rz-rd .rz-top .rz-team img, body.rz-rd .rz-top .rz-team { max-width: 1040px; margin-left: auto; margin-right: auto; }
}

/* 2026-09-17 夜 追補（トップ）: ぼかした地・ぼかした深緑を redesign-top.css 側でも効かせる */
body.rz-rd .rz-top { background: transparent; }
body.rz-rd .rz-top .rz-fog { background: transparent !important; }
body.rz-rd .rz-top .rz-forest { background: #123B2A url(../../img/redesign/forest-blur.webp) center / cover no-repeat; }

/* 2026-09-17 夜 追補: リノベーション実績をセクション2の直後に（写真を大きく・グリッド） */
body.rz-rd .rz-top .rz-worksec { padding-bottom: 72px; }
body.rz-rd .rz-top .rz-worksec .rz-works { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 12px; margin: 26px var(--x) 0; }
body.rz-rd .rz-top .rz-worksec .rz-wk img { width: 100%; height: 128px; object-fit: cover; }
body.rz-rd .rz-top .rz-worksec .rz-wk p { display: block; font-size: 13px; line-height: 22px; padding-top: 10px; }
body.rz-rd .rz-top .rz-worksec .rz-wk .rz-no { display: block; font-size: 12px; color: var(--brass); line-height: 1; margin-bottom: 6px; }
body.rz-rd .rz-top .rz-worksec .rz-more { margin-top: 26px; }
@media (min-width: 900px) {
    body.rz-rd .rz-top .rz-worksec { padding-bottom: 64px; }
    body.rz-rd .rz-top .rz-worksec .rz-ttl { max-width: 1040px; }
    body.rz-rd .rz-top .rz-worksec .rz-works { max-width: 1040px; margin: 40px auto 0; grid-template-columns: repeat(3, 1fr); gap: 40px 24px; }
    body.rz-rd .rz-top .rz-worksec .rz-wk img { height: 240px; }
    body.rz-rd .rz-top .rz-worksec .rz-wk p { font-size: 15px; line-height: 26px; padding-top: 14px; }
    body.rz-rd .rz-top .rz-worksec .rz-more { max-width: 1040px; }
}

/* ===========================================================
   2026-09-18 夕: ヒーローは写真を目一杯（PCは横幅いっぱい）・文字は中央寄りのまま大きく
   =========================================================== */
body.rz-rd .rz-top .rz-forest { background: #1E563C url(../../img/redesign/forest-blur.webp) center / cover no-repeat; }
body.rz-rd .rz-top .rz-hero .rz-pic img { height: max(640px, calc(100svh - 72px)); }
body.rz-rd .rz-top .rz-hero .rz-pic::after { background: linear-gradient(180deg, rgba(9,22,15,.55) 0, rgba(9,22,15,.06) 26%, rgba(9,22,15,.1) 50%, rgba(9,22,15,.78) 100%); }
body.rz-rd .rz-top .rz-hv { font-size: 36px; line-height: 66px; top: 112px; right: 26px; }
body.rz-rd .rz-top .rz-hv .rz-l2 { margin-top: 56px; }
body.rz-rd .rz-top .rz-hkind { font-size: 19px; top: 116px; }
body.rz-rd .rz-top .rz-nums dd { font-size: 36px; }
body.rz-rd .rz-top .rz-over .rz-hd span + span { font-size: 14px; }
@media (min-width: 900px) {
    body.rz-rd .rz-top .rz-hero { max-width: none; margin: 0; padding: 0; }
    body.rz-rd .rz-top .rz-hero .rz-pic img { height: clamp(620px, calc(100vh - 170px), 860px); object-position: 45% 55%; }
    body.rz-rd .rz-top .rz-hv { font-size: 48px; line-height: 92px; top: 84px; right: calc(50% - 250px); }
    body.rz-rd .rz-top .rz-hv .rz-l2 { margin-top: 60px; }
    body.rz-rd .rz-top .rz-hkind { font-size: 22px; left: calc(50% - 260px); top: 92px; }
    body.rz-rd .rz-top .rz-over { width: 620px; bottom: 48px; }
    body.rz-rd .rz-top .rz-over .rz-hd span + span { font-size: 16px; }
    body.rz-rd .rz-top .rz-nums dd { font-size: 44px; }
}
body.rz-rd .rz-top .rz-nums dt { font-size: 13px; }
body.rz-rd .rz-top .rz-nums dd small { font-size: 13px; }
@media (min-width: 900px) { body.rz-rd .rz-top .rz-nums dt { font-size: 14px; } }
@media (min-width: 900px) {
    body.rz-rd .rz-top .rz-hv { font-size: 44px; line-height: 84px; letter-spacing: .14em; top: 56px; right: calc(50% - 240px); }
    body.rz-rd .rz-top .rz-hv .rz-l2 { margin-top: 52px; }
    body.rz-rd .rz-top .rz-hkind { font-size: 20px; letter-spacing: .16em; top: 64px; left: calc(50% - 250px); }
    body.rz-rd .rz-top .rz-over { bottom: 36px; }
}

/* 2026-09-18 22時: トップの文字リンク（フォームで受け取る 等）が共通 .rz-txl の下線と ::after の下線で二重線になっていたので、共通側の下線を外す */
body.rz-rd .rz-top .rz-txl { border-bottom: 0; padding-bottom: 0; }
/* ===========================================================
   2026-09-20 導線の組み替え（トップ →「記事LPを読む」→ 実例受け取り）
   ＋ ヒーロー左の金の縦書きを読めるように
   =========================================================== */

/* --- ヒーロー左の肩書き: 深緑の下敷きを敷いて大きく --- */
body.rz-rd .rz-top .rz-hkind {
    font-size: 20px; letter-spacing: .18em; line-height: 1;
    color: var(--brass);
    background: rgba(255,255,255,.72);
    padding: 18px 10px;
    border-left: 1px solid var(--gold);
}
@media (min-width: 900px) {
    body.rz-rd .rz-top .rz-hkind { font-size: 24px; }
}
@media (min-width: 1200px) {
    body.rz-rd .rz-top .rz-hkind { font-size: 26px; }
}

/* --- ヒーロー直下の白帯 --- */
body.rz-rd .rz-top .rz-act .rz-btn { height: auto; min-height: 88px; padding-top: 16px; padding-bottom: 16px; }
body.rz-rd .rz-top .rz-act .rz-btn b { font-size: 16px; line-height: 1.6; letter-spacing: .1em; }
body.rz-rd .rz-top .rz-actnote { font-family: var(--gothic); font-size: 13px; line-height: 1.9; color: var(--sub2); margin: 16px 0 0; }

/* --- 特集セクション（記事LPへ） --- */
body.rz-rd .rz-feat { padding: 64px var(--x) 66px; background: #fff; }
body.rz-rd .rz-feat__in { border-left: 1px solid var(--gold); padding-left: 20px; }
body.rz-rd .rz-feat .rz-en { display: block; font-size: 11px; letter-spacing: .22em; color: var(--brass); }
body.rz-rd .rz-feat h2 { font-family: var(--mincho); font-size: 26px; line-height: 1.6; letter-spacing: .1em; color: var(--forest); margin: 14px 0 0; font-weight: 600; }
body.rz-rd .rz-feat__lead { font-family: var(--gothic); font-size: 16px; line-height: 2.1; color: var(--sub2); margin: 20px 0 0; }
body.rz-rd .rz-feat__pts { list-style: none; margin: 22px 0 0; padding: 0; }
body.rz-rd .rz-feat__pts li { font-family: var(--gothic); font-size: 14px; line-height: 1.9; color: var(--ink); padding-left: 1.1em; text-indent: -1.1em; }
body.rz-rd .rz-feat__pts li::before { content: "・"; color: var(--gold); }
body.rz-rd .rz-feat .rz-btn { margin-top: 26px; height: auto; min-height: 84px; padding-top: 16px; padding-bottom: 16px; }
body.rz-rd .rz-feat__note { font-family: var(--gothic); font-size: 13px; line-height: 1.9; color: var(--sub); margin: 14px 0 0; }
body.rz-rd .rz-feat__pic { margin-top: 26px; }
body.rz-rd .rz-feat__pic img { width: 100%; height: 220px; object-fit: cover; display: block; }
@media (min-width: 900px) {
    body.rz-rd .rz-feat { padding: 92px 0 96px; }
    body.rz-rd .rz-feat__in { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 420px; gap: 56px; align-items: center; padding-left: 26px; }
    body.rz-rd .rz-feat h2 { font-size: 34px; }
    body.rz-rd .rz-feat__pic { margin-top: 0; }
    body.rz-rd .rz-feat__pic img { height: 380px; }
    body.rz-rd .rz-feat .rz-btn { max-width: 460px; }
}

/* --- 実例の数字・締めのCTA --- */
body.rz-rd .rz-top .rz-case .rz-btnw .rz-btn { height: auto; min-height: 84px; padding-top: 16px; padding-bottom: 16px; }
body.rz-rd .rz-top .rz-cta .rz-cta__lead { font-family: var(--gothic); font-size: 14px; line-height: 2.1; color: rgba(255,255,255,.86); margin: 18px 0 0; }
body.rz-rd .rz-top .rz-cta .rz-btn { height: auto; min-height: 84px; padding-top: 16px; padding-bottom: 16px; }
body.rz-rd .rz-top .rz-cta .rz-btns.is-one { display: block; max-width: 460px; margin-left: auto; margin-right: auto; }
@media (min-width: 900px) {
    body.rz-rd .rz-top .rz-cta .rz-btns.is-one { grid-template-columns: 1fr; }
}

/* 2026-09-21: 「空き家リノベーション実績」は12字あり、SP幅だと1行に収まらず「績」だけ折り返すため、この見出しだけ詰める */
@media (max-width: 899px) {
    body.rz-rd .rz-top .rz-worksec .rz-ttl h2 { font-size: 24px; letter-spacing: .08em; }
}
