/* ==========================================================
   Lead Campus — Legal pages (利用規約 / プライバシー / 特商法)
   - lc-styles.css を土台に、法務ページ共通コンポーネントを定義
   - privacy / terms は .lc-policy（番号つき条項）
   - 特商法は .lc-tokuhyo（定義テーブル）＋ .lc-pricetable
   ========================================================== */

/* ----- 共通：ヒーロー幅・本文コンテナ ----- */
.lc-lhero .lc-pagehero__inner{padding:92px 24px 76px;max-width:960px}
.lc-legal{max-width:840px;margin:0 auto}
.lc-legal__intro{font-size:16px;line-height:2.05;color:var(--lc-text);margin-bottom:8px}
.lc-legal__toc{margin:32px 0 8px;padding:22px 26px;background:var(--lc-bg-alt);border:1px solid var(--lc-line);border-radius:var(--radius-card)}
.lc-legal__toc-head{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.12em;color:var(--lc-navy);margin-bottom:12px}
.lc-legal__toc ol{list-style:none;counter-reset:toc;display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}
.lc-legal__toc li{counter-increment:toc;font-size:14px;line-height:1.6}
.lc-legal__toc a{color:var(--lc-text);display:flex;gap:10px;align-items:baseline}
.lc-legal__toc a::before{content:counter(toc,decimal-leading-zero);font-family:var(--font-display);font-weight:700;font-size:12px;color:var(--lc-gold);flex:none}
.lc-legal__toc a:hover{color:var(--lc-navy)}
@media (max-width:768px){.lc-legal__toc ol{grid-template-columns:1fr}}

/* ----- 番号つき条項（privacy / terms 共通） ----- */
.lc-policy{max-width:840px;margin:0 auto}
.lc-policy__intro{font-size:16px;line-height:2;color:var(--lc-text);margin-bottom:8px}
.lc-policy__item{scroll-margin-top:96px;padding:30px 0;border-top:1px solid var(--lc-line);display:grid;grid-template-columns:54px 1fr;gap:22px;align-items:start}
.lc-policy__item:last-of-type{border-bottom:1px solid var(--lc-line)}
.lc-policy__no{font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--lc-gold);letter-spacing:.04em;padding-top:2px}
.lc-policy__h{font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--lc-navy);letter-spacing:.04em;margin-bottom:12px;line-height:1.5}
.lc-policy__t{font-size:15.5px;line-height:2;color:var(--lc-text)}
.lc-policy__t + .lc-policy__t{margin-top:14px}
.lc-policy__t a{color:var(--lc-navy);border-bottom:1px solid var(--lc-gold)}
.lc-policy__t strong{font-weight:700;color:var(--lc-navy)}
/* 条項内のリスト（号） */
.lc-policy__list{list-style:none;margin:14px 0 2px;display:flex;flex-direction:column;gap:9px}
.lc-policy__list li{position:relative;padding-left:30px;font-size:15px;line-height:1.85;color:var(--lc-text)}
.lc-policy__list li::before{content:"("counter(lcnum)")";counter-increment:lcnum;position:absolute;left:0;top:0;
  font-variant-numeric:tabular-nums;color:var(--lc-gold);font-weight:700;font-size:14px}
.lc-policy__list{counter-reset:lcnum}
/* 定義リスト型（号がラベル付き） */
.lc-policy__defs{margin:14px 0 2px;display:flex;flex-direction:column;gap:10px}
.lc-policy__def{display:grid;grid-template-columns:148px 1fr;gap:16px;font-size:15px;line-height:1.85}
.lc-policy__def dt{font-weight:700;color:var(--lc-navy)}
.lc-policy__def dd{color:var(--lc-text)}
@media (max-width:768px){
  .lc-policy__item{grid-template-columns:1fr;gap:8px}
  .lc-policy__no{font-size:15px}
  .lc-policy__def{grid-template-columns:1fr;gap:2px}
}
.lc-policy__meta{margin-top:44px;font-size:13.5px;color:var(--lc-text-sub);line-height:1.95}
.lc-policy__rev{margin-top:18px;font-size:13px;color:var(--lc-text-sub);line-height:1.9;
  padding-top:18px;border-top:1px dashed var(--lc-line)}

/* ----- 特商法：定義テーブル ----- */
.lc-tokuhyo{width:100%;border-collapse:collapse;margin-top:8px;border-top:2px solid var(--lc-navy)}
.lc-tokuhyo th,.lc-tokuhyo td{text-align:left;vertical-align:top;padding:20px 24px;border-bottom:1px solid var(--lc-line);line-height:1.95;font-size:15px}
.lc-tokuhyo th{width:240px;background:var(--lc-bg-alt);font-family:var(--font-display);font-weight:700;color:var(--lc-navy);letter-spacing:.03em}
.lc-tokuhyo td{color:var(--lc-text)}
.lc-tokuhyo td a{color:var(--lc-navy);border-bottom:1px solid var(--lc-gold)}
.lc-tokuhyo td strong{font-weight:700;color:var(--lc-navy)}
.lc-tokuhyo__note{display:block;margin-top:6px;font-size:13px;color:var(--lc-text-sub);line-height:1.8}
@media (max-width:768px){
  .lc-tokuhyo,.lc-tokuhyo tbody,.lc-tokuhyo tr,.lc-tokuhyo th,.lc-tokuhyo td{display:block;width:auto}
  .lc-tokuhyo tr{border-bottom:1px solid var(--lc-line);padding:6px 0}
  .lc-tokuhyo th{background:transparent;padding:14px 4px 2px;font-size:13px;color:var(--lc-gold);border-bottom:none}
  .lc-tokuhyo td{padding:0 4px 16px;border-bottom:none}
}

/* ----- 価格表（特商法 内 / 利用規約 内） ----- */
.lc-pricetable{width:100%;border-collapse:collapse;margin:6px 0 2px;font-size:14.5px}
.lc-pricetable caption{caption-side:top;text-align:left;font-family:var(--font-display);font-weight:700;
  font-size:15px;color:var(--lc-navy);padding:18px 0 8px}
.lc-pricetable th,.lc-pricetable td{text-align:left;vertical-align:top;padding:12px 16px;border-bottom:1px solid var(--lc-line);line-height:1.75}
.lc-pricetable thead th{background:var(--lc-navy);color:#fff;font-weight:700;font-size:12.5px;letter-spacing:.04em;white-space:nowrap}
.lc-pricetable tbody th{font-weight:700;color:var(--lc-navy);width:46%}
.lc-pricetable .price{font-family:var(--font-display);font-weight:700;color:var(--lc-navy);white-space:nowrap}
.lc-pricetable .price small{font-size:.78em;font-weight:500;color:var(--lc-text-sub);margin-left:3px}
.lc-pricetable tbody tr:nth-child(even) td,.lc-pricetable tbody tr:nth-child(even) th{background:#FAFBFC}
.lc-pricetable__sub{font-size:12.5px;color:var(--lc-text-sub);line-height:1.7;margin-top:2px}
@media (max-width:768px){
  .lc-pricetable thead{display:none}
  .lc-pricetable tbody th,.lc-pricetable tbody td{display:block;width:auto;border-bottom:none;padding:2px 0}
  .lc-pricetable tbody tr{display:block;padding:14px 0;border-bottom:1px solid var(--lc-line)}
  .lc-pricetable tbody th{color:var(--lc-navy);font-size:15px;padding-top:0}
}
