@charset "utf-8";
/* =============================================================
   南紀黒潮パートナーズ株式会社 公式サイト｜静的HTML本制作
   pages/privacy-policy.css ─ プライバシーポリシー固有

   1. ページヒーロー（高さを抑える）
   2. 本文（番号付きの章・段落・箇条書き・リンク・窓口）
   3. レスポンシブ

   画像なし。法律文書風に黒文字を詰め込まず、企業サイトの文章として読ませる。
   本文幅 720px。章は細い罫線で区切り、番号は金の小さなアクセント。
   Phase 2 で WordPress の固定ページにする場合は、お知らせ個別記事の
   .entry-content（pages/news-single.css）を共通化して使う判断を行う。
   ============================================================= */

/* -------------------------------------------------------------
   1. ページヒーロー
   ------------------------------------------------------------- */
.page-hero-policy{
  padding:calc(var(--header-h) + clamp(44px,6vw,80px)) 0 clamp(48px,6vw,80px);
}
.page-hero-policy .page-hero-lead{max-width:40em}

/* -------------------------------------------------------------
   2. 本文
   ------------------------------------------------------------- */
.policy{background:var(--white)}
.policy-inner{max-width:720px;padding-block:clamp(48px,6vw,88px) var(--section-pad)}

/* 冒頭の一文 */
.policy-intro{
  padding-bottom:clamp(28px,3.4vw,44px);
  font-size:15.5px;line-height:2.15;letter-spacing:.045em;color:var(--ink-soft);
  text-wrap:pretty;
}

/* 章：上に細い罫線。番号（金）＋明朝の見出し */
.policy-section{padding-block:clamp(34px,4.2vw,52px);border-top:1px solid var(--line)}
.policy-section:last-of-type{border-bottom:1px solid var(--line)}
.policy-section h2{
  display:flex;align-items:baseline;gap:16px;
  font-size:clamp(19px,1.8vw,22px);font-weight:500;line-height:1.7;letter-spacing:.08em;color:var(--ink);
}
.policy-num{
  flex:0 0 auto;
  font-family:var(--font-en);font-size:12px;font-weight:600;letter-spacing:.2em;color:var(--gold-text);
}
.policy-section > * + *{margin-top:1.3em}
.policy-section h2 + *{margin-top:1.1em}
.policy-section p,.policy-section li,.policy-section dd{
  font-size:15.5px;line-height:2.1;letter-spacing:.045em;color:var(--ink-soft);
}
.policy-section :is(p,li,dd){text-wrap:pretty}

/* 箇条書き：標準の記号を残し、色だけ金に */
.policy-section ul{list-style:disc;padding-left:1.5em}
.policy-section li{padding-left:.3em}
.policy-section li + li{margin-top:.4em}
.policy-section li::marker{color:var(--gold);font-size:.85em}
.policy-links{list-style:none;padding-left:0}
.policy-links li{padding-left:0}

/* リンク：濃紺の文字＋金の下線。青のデフォルトにしない */
.policy-section a:not(.text-link){
  color:var(--blue);
  text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1px;text-underline-offset:.3em;
  transition:color .35s var(--ease),text-decoration-color .35s var(--ease);
}
.policy-section a:not(.text-link):is(:hover,:focus-visible){color:var(--gold-text);text-decoration-color:currentColor}

/* 窓口：ラベルと値の定義リスト */
.policy-contact{display:grid;gap:10px 28px;grid-template-columns:auto minmax(0,1fr)}
.policy-contact > div{display:contents}
.policy-contact dt{
  padding-top:2px;
  font-size:12.5px;font-weight:500;letter-spacing:.12em;line-height:1.9;color:var(--muted);white-space:nowrap;
}
.policy-contact dd{color:var(--ink)}
.policy-section-contact .text-link{margin-top:clamp(20px,2.4vw,28px)}

/* -------------------------------------------------------------
   3. レスポンシブ
   ------------------------------------------------------------- */
@media (max-width:600px){
  .page-hero-policy{padding:calc(var(--header-h) + clamp(40px,7vw,56px)) 0 clamp(40px,6vw,56px)}
  .policy-inner{padding-top:clamp(36px,6vw,48px)}
  .policy-intro,.policy-section p,.policy-section li,.policy-section dd{font-size:15px;line-height:2.05}
  .policy-section h2{font-size:18px;gap:12px}
  /* 窓口は ラベル → 値 の縦積み */
  .policy-contact{grid-template-columns:1fr;gap:4px}
  .policy-contact > div{display:block}
  .policy-contact > div + div{margin-top:14px}
  .policy-contact dt{white-space:normal}
}
