/* ==========================================================================
   建築進路シリーズ 特設ページ（kenchiku-shinro.html）専用スタイル
   共通ヘッダー/フッターは css/style.css に依存。ここでは .tp-page 配下のみを装飾する。
   ========================================================================== */
.tp-page{
  --tp-bg:#f7f3ea; --tp-paper:#fffdf7; --tp-ink:#2b2a26; --tp-muted:#6f6a5e; --tp-line:#e3dccb;
  --tp-gold:#a8843c; --tp-p1:#3c6b55; --tp-p2:#2f5a8f; --tp-p3:#b3541e;
  background:var(--tp-bg);
  color:var(--tp-ink);
  font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;
  line-height:1.9;
  font-size:16px;
}
.tp-page *{box-sizing:border-box}
.tp-wrap{max-width:920px;margin:0 auto;padding:0 20px}
.tp-page section{padding:64px 0;border-bottom:1px solid var(--tp-line)}
.tp-page h2{font-size:26px;font-weight:600;margin-bottom:8px;letter-spacing:.04em}
.tp-en{color:var(--tp-gold);font-size:12px;letter-spacing:.28em;text-transform:uppercase;font-family:Georgia,serif;margin-bottom:10px}
.tp-lead{color:var(--tp-muted);margin-top:14px}
.tp-page table{width:100%;border-collapse:collapse;background:var(--tp-paper);margin-top:20px;font-size:15px}
.tp-page th,.tp-page td{border:1px solid var(--tp-line);padding:12px 14px;text-align:left;vertical-align:top}
.tp-page th{background:#efe9da;font-weight:600;white-space:nowrap}
.tp-table-scroll{overflow-x:auto}
.tp-btn{display:inline-block;background:var(--tp-gold);color:#fff;text-decoration:none;padding:16px 34px;border-radius:4px;font-size:16px;letter-spacing:.06em;margin:8px 8px 0 0;border:0;cursor:pointer;font-family:inherit;line-height:inherit}
.tp-btn--outline{background:transparent;color:var(--tp-gold);border:1px solid var(--tp-gold)}
.tp-btn:disabled{opacity:.6;cursor:wait}
.tp-note{font-size:13px;color:var(--tp-muted);margin-top:10px}
/* hero */
.tp-hero{padding:88px 0 72px;border-bottom:1px solid var(--tp-line);text-align:center}
.tp-hero h1{font-size:32px;font-weight:600;letter-spacing:.06em;line-height:1.7}
.tp-hero-sub{margin-top:18px;color:var(--tp-muted)}
.tp-covers{display:flex;gap:18px;justify-content:center;margin:44px 0 10px;flex-wrap:wrap}
.tp-cover{width:180px;text-align:center}
.tp-cover-img{width:100%;height:auto;display:block;border-radius:2px;box-shadow:0 8px 24px rgba(43,42,38,.2);border-bottom:4px solid var(--tp-gold)}
.tp-cover--1 .tp-cover-img{border-bottom-color:var(--tp-p1)}
.tp-cover--2 .tp-cover-img{border-bottom-color:var(--tp-p2)}
.tp-cover--3 .tp-cover-img{border-bottom-color:var(--tp-p3)}
.tp-cover-sub{margin-top:10px;font-size:12px;color:var(--tp-muted);letter-spacing:.02em}
.tp-arrowline{color:var(--tp-muted);font-size:13px;letter-spacing:.1em;margin-top:6px}
/* book cards */
.tp-book{background:var(--tp-paper);border:1px solid var(--tp-line);border-left:6px solid var(--tp-gold);padding:28px;margin-top:24px}
.tp-book--1{border-left-color:var(--tp-p1)} .tp-book--2{border-left-color:var(--tp-p2)} .tp-book--3{border-left-color:var(--tp-p3)}
.tp-book h3{font-size:19px;font-weight:600;margin-bottom:12px}
.tp-book ul{margin:14px 0 0 1.4em;color:var(--tp-muted);font-size:15px}
.tp-tag{display:inline-block;font-size:11px;letter-spacing:.12em;color:#fff;background:var(--tp-gold);padding:2px 10px;margin-bottom:10px}
.tp-book--1 .tp-tag{background:var(--tp-p1)} .tp-book--2 .tp-tag{background:var(--tp-p2)} .tp-book--3 .tp-tag{background:var(--tp-p3)}
/* faq */
.tp-page details{background:var(--tp-paper);border:1px solid var(--tp-line);margin-top:12px;padding:16px 20px}
.tp-page summary{cursor:pointer;font-weight:600;font-size:15px}
.tp-page details p{margin-top:10px;font-size:15px;color:var(--tp-muted)}
.tp-center{text-align:center}
.tp-price-big{font-size:30px;color:var(--tp-p3);font-weight:700}
.tp-strike{text-decoration:line-through;color:var(--tp-muted);font-size:16px}
.tp-footnote{padding:40px 0 64px;font-size:12px;color:var(--tp-muted);text-align:center}
.tp-footnote a{color:var(--tp-muted)}
@media(max-width:640px){
  .tp-hero h1{font-size:24px} .tp-page h2{font-size:22px}
  .tp-covers{gap:10px} .tp-cover{width:46%}
}
