/* ════════════════════════════════════════════════
   rights.css ― 権利整理LP（/assetmanagement/rights/）固有レイアウト
   ・ヒーロー/ボタン/見出し/パンくずはグローバル(style.css, relation.css)を流用
   ・本ファイルは rt-* の固有セクションのみ。色は :root トークンのみ使用
   ════════════════════════════════════════════════ */

/* ══ HERO 付加（.page-hero を流用しCTA等だけ補う） ══ */
.rt-hero-tag{font-family:'Cormorant Garamond',serif;font-size:13px;letter-spacing:.28em;color:var(--gold-lt);margin-bottom:18px;}
.rt-hero .page-hero-h1{font-size:clamp(29px,4.6vw,48px);line-height:1.4;letter-spacing:.02em;font-weight:900;}
.rt-hero-em{color:var(--gold-lt);}
.rt-hero .page-hero-sub{max-width:660px;font-size:clamp(14px,1.6vw,16px);color:rgba(255,255,255,.82);line-height:1.85;}
.rt-hero-cta{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap;}

/* ══ セクション共通 ══ */
.rt-sec{padding:76px 72px;border-top:1px solid var(--border);}
.rt-sec:nth-of-type(even){background:var(--cream);}
.rt-sec-hd{max-width:1040px;margin:0 auto 36px;}
.rt-sec-hd .section-ja{margin-top:6px;}
.rt-sec-lead{margin-top:14px;font-size:14.5px;color:var(--muted);line-height:1.85;}

/* ══ 2. 悩み ══ */
.rt-worries{background:var(--warm);}
.rt-wlist{list-style:none;margin:0 auto;padding:0;max-width:1040px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.rt-wlist li{display:flex;gap:14px;align-items:center;background:var(--white);border:1px solid var(--border);border-radius:10px;padding:24px 22px;}
.rt-wnum{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:600;color:var(--gold-lt);flex:none;line-height:1;}
.rt-wtxt{font-size:15.5px;font-weight:500;color:var(--ink);line-height:1.6;}

/* ══ 3. 私たちの違い ══ */
.rt-diff-body{max-width:840px;margin:0 auto;}
.rt-diff-body p{font-size:16px;color:var(--ink-soft);line-height:2;margin:0 0 1.4em;}
.rt-diff-lead{font-size:clamp(16px,2vw,19px);color:var(--ink);font-weight:500;line-height:1.9;margin:0 0 26px;}
.rt-points{list-style:none;margin:26px 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.rt-points li{position:relative;padding:14px 18px 14px 40px;background:var(--white);border:1px solid var(--border);border-radius:8px;font-size:14.5px;color:var(--ink);line-height:1.7;}
.rt-points li::before{content:'';position:absolute;left:18px;top:21px;width:8px;height:8px;border-radius:50%;background:var(--gold-lt);}
.rt-diff-note{font-size:12.5px;color:var(--muted);line-height:1.9;border-top:1px solid var(--border);padding-top:16px;margin-top:8px;}

/* ══ 4. 対応できる権利関係（表） ══ */
.rt-table-wrap{max-width:1040px;margin:0 auto;overflow-x:auto;}
.rt-table{width:100%;border-collapse:collapse;background:var(--white);border:1px solid var(--border);font-size:14.5px;}
.rt-table thead th{background:var(--ink);color:#fff;font-weight:600;text-align:left;padding:14px 18px;letter-spacing:.04em;font-size:14px;}
.rt-table tbody th{background:var(--warm);color:var(--ink);font-weight:700;text-align:left;padding:16px 18px;width:20%;border-top:1px solid var(--border);vertical-align:top;white-space:nowrap;}
.rt-table tbody td{padding:16px 18px;color:var(--ink-soft);line-height:1.7;border-top:1px solid var(--border);vertical-align:top;}
.rt-table tbody td:first-of-type{width:34%;}

/* ══ 5. 解決事例（要約カード／詳細は不動産相談トップの事例へ） ══ */
.rt-case-grid{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.rt-case2{background:var(--white);border:1px solid var(--border);border-top:3px solid var(--gold-lt);border-radius:12px;padding:26px 24px;display:flex;flex-direction:column;gap:12px;}
.rt-case2-tag{align-self:flex-start;font-size:12px;color:var(--gold);border:1px solid var(--gold-lt);border-radius:4px;padding:3px 10px;letter-spacing:.04em;}
.rt-case2 h3{font-family:'Noto Serif JP',serif;font-size:17px;font-weight:700;color:var(--ink);line-height:1.55;margin:0;}
.rt-case2-lead{font-size:13.5px;color:var(--ink-soft);line-height:1.85;margin:0;}
.rt-case2-res{font-size:14px;color:var(--ink);font-weight:500;line-height:1.7;margin:0;padding-top:12px;border-top:1px dashed var(--border);}
.rt-case2-res::before{content:'→ ';color:var(--gold);}
.rt-cases-more{max-width:1040px;margin:26px auto 0;text-align:center;}

/* ══ 6. 流れ ══ */
.rt-flow-grid{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.rt-step{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:24px 22px;}
.rt-step-no{font-family:'Cormorant Garamond',serif;font-size:13px;letter-spacing:.2em;color:var(--gold);margin-bottom:12px;}
.rt-step-h{font-size:16px;font-weight:700;color:var(--ink);line-height:1.5;margin:0 0 10px;}
.rt-step p{font-size:13.5px;color:var(--ink-soft);line-height:1.85;margin:0;}

/* ══ 7. FAQ ══ */
.rt-faq-list{max-width:880px;margin:0 auto;display:grid;gap:10px;}
.rt-faq-item{background:var(--white);border:1px solid var(--border);border-radius:8px;overflow:hidden;}
.rt-faq-item summary{list-style:none;cursor:pointer;padding:18px 48px 18px 22px;position:relative;font-size:15px;font-weight:600;color:var(--ink);line-height:1.6;}
.rt-faq-item summary::-webkit-details-marker{display:none;}
.rt-faq-item summary::before{content:'Q';position:absolute;left:22px;display:none;}
.rt-faq-item summary::after{content:'＋';position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--gold);transition:transform .2s;}
.rt-faq-item[open] summary::after{content:'－';}
.rt-faq-a{padding:0 22px 20px;font-size:14px;color:var(--ink-soft);line-height:1.9;}

/* ══ 9. フォーム＋最終CTA ══ */
.rt-formsec{background:var(--ink);color:#fff;padding:76px 72px;border-top:1px solid var(--border);}
.rt-formsec .rt-sec-hd{margin-bottom:20px;}
.rt-formsec .section-ja{color:#fff;}
.rt-form-lead{max-width:760px;margin:0 auto 30px;text-align:center;font-size:14.5px;color:rgba(255,255,255,.8);line-height:1.95;}
.rt-form-card{max-width:680px;margin:0 auto;background:var(--white);border-radius:12px;padding:34px 34px 30px;}
.rt-form{display:grid;gap:16px;}
.rt-frow{display:flex;flex-direction:column;gap:7px;}
.rt-frow label{font-size:13.5px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px;}
.rt-req{background:var(--red);color:#fff;font-size:11px;font-weight:500;padding:2px 8px;border-radius:3px;}
.rt-opt{background:var(--warm);color:var(--muted);font-size:11px;padding:2px 8px;border-radius:3px;border:1px solid var(--border);}
.rt-frow input,.rt-frow select,.rt-frow textarea{font-family:inherit;font-size:15px;color:var(--ink);background:var(--cream);border:1px solid var(--border);border-radius:6px;padding:13px 14px;width:100%;box-sizing:border-box;}
.rt-frow textarea{min-height:120px;resize:vertical;}
.rt-frow input:focus,.rt-frow select:focus,.rt-frow textarea:focus{outline:none;border-color:var(--gold-lt);}
.rt-form-submit{margin-top:6px;}
.rt-form-submit .btn-red{width:100%;justify-content:center;font-size:15px;padding:18px;}
.rt-fnote{font-size:12px;color:var(--muted);line-height:1.8;margin:16px 0 0;}
.rt-form-tel{text-align:center;color:rgba(255,255,255,.85);font-size:14px;line-height:1.9;margin:26px 0 0;}
.rt-form-tel a{color:#fff;font-size:20px;font-weight:700;text-decoration:none;letter-spacing:.04em;}
.rt-form-tel small{color:rgba(255,255,255,.6);font-size:12px;}

/* ══ レスポンシブ ══ */
@media(max-width:900px){
  .rt-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rt-wlist{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:768px){
  .rt-sec,.rt-formsec{padding:48px 24px;}
  .rt-hero-cta{flex-direction:column;}
  .rt-hero-cta .btn-red,.rt-hero-cta .btn-light{width:100%;justify-content:center;}
  .rt-wlist,.rt-points{grid-template-columns:1fr;}
  .rt-flow-grid{grid-template-columns:1fr;}
  .rt-case-grid{grid-template-columns:1fr;}
  .rt-table tbody th{white-space:normal;}
  .rt-form-card{padding:26px 20px;}
}
