@charset "utf-8";

/* =========================================================
   プライバシーポリシー / サイトポリシー
   （style.css → page.css → このファイル の順で読む）

   実測の縦位置（1440幅レンダリング / ページ左上原点）
     パン屑        y=100     和文見出し y=179（1000版面 x=220）/ 欧文 y=248
     ページ内リンク y=327.7  （2項目）
     見出し「プライバシーポリシー」 y=481.7（1000×59.6）
     前文          y=601.3   （1000×81.9 / 2行 / 下罫0.667 #d0d0d0 / pad-bottom30）
     小見出し      20px/600 lh28 + 20×2の青いダッシュ（左端 / text x=+41.7）
       小見出し→本文 +10 ／ 本文→次の小見出し +40.2
     本文          16px/400 lh28.8 / 幅1000
     番号つき箇条  番号22幅（左端）+ 本文 x=+26 / 行送り 28.8+4.2
     連絡先ブロック lh25.6 / 段落間 +0.9
     見出し「サイトポリシー」 y=3576（前の段落から +201.4）
     署名（右寄せ） y=5979 （2行 / lh25.6 / 前から+80.2）
     main 下端     y=6170.2
   ========================================================= */

.pg-pol { position: relative; z-index: 1; }
.pg-pol--privacy { padding-top: 129.4px; }
.pg-pol--site { padding-top: 192.4px; padding-bottom: 135.8px; }

/* 前文（下に罫） */
.pg-pol__intro {
  margin-top: 60px;
  padding-bottom: 30px;
  border-bottom: .667px solid var(--c-rule-d);
  font-size: 16px;
  font-weight: 400;
  line-height: 25.6px;
  color: var(--c-ink);
}

.pg-pol__blk + .pg-pol__blk { margin-top: 40.2px; }
.pg-pol__blk:first-of-type { margin-top: 29.8px; }
.pg-pol--site .pg-pol__blk:first-of-type { margin-top: 25.6px; }

/* 小見出し（20×2の青いダッシュ + 20px） */
.pg-pol__h {
  display: flex;
  align-items: center;
  gap: 14.2px;
  font-size: 20px;
  font-weight: 500;
  line-height: 28px;
  color: var(--c-ink);
}
.pg-pol__h i {
  flex: none;
  width: 20px;
  height: 2px;
  border-radius: 8px;
  background: var(--c-blue);
}

/* 本文 */
.pg-pol__p {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 400;
  line-height: 28.8px;
  color: var(--c-ink);
}
.pg-pol__p + .pg-pol__p { margin-top: .2px; }
.pg-pol__p--s { margin-top: 8.2px; }
.pg-pol__p--s2 { margin-top: 20.2px; }
.pg-pol__ol + .pg-pol__p--s0 { margin-top: .2px; }
.pg-pol__p--top { margin-top: 60.4px; }

/* 箇条書き（番号 / ・） */
.pg-pol__ol { margin-top: 8.4px; }
.pg-pol__ol li {
  display: flex;
  align-items: flex-start;
  font-size: 16px;
  font-weight: 400;
  line-height: 28.8px;
  color: var(--c-ink);
}
.pg-pol__ol li + li { margin-top: 4.2px; }
.pg-pol__no { flex: none; width: 26px; }

/* 連絡先 */
.pg-pol__addr { margin-top: 23.4px; }
.pg-pol__addr p {
  font-size: 16px;
  font-weight: 400;
  line-height: 25.6px;
  color: var(--c-ink);
}
.pg-pol__addr p + p { margin-top: .9px; }
.pg-pol__addr a { color: var(--c-blue); text-decoration: underline; }

/* 署名（右寄せ2行） */
.pg-pol__sign {
  margin-top: 80.2px;
  text-align: right;
}
.pg-pol__sign p {
  font-size: 16px;
  font-weight: 400;
  line-height: 25.6px;
  color: var(--c-ink);
}

/* =========================================================
   スマホ（〜767px）
   ========================================================= */
@media (max-width: 767px) {
  .pg-pol--privacy { padding-top: 80px; }
  .pg-pol--site { padding-top: 100px; padding-bottom: 80px; }
  .pg-pol__intro { margin-top: 32px; padding-bottom: 20px; font-size: 14px; line-height: 22.4px; }
  .pg-pol__blk + .pg-pol__blk { margin-top: 32px; }
  .pg-pol__blk:first-of-type { margin-top: 24px; }
  .pg-pol--site .pg-pol__blk:first-of-type { margin-top: 32px; }
  .pg-pol__h { gap: 10px; font-size: 17px; line-height: 23.8px; }
  .pg-pol__p { font-size: 14px; line-height: 25.2px; }
  .pg-pol__p--top { margin-top: 32px; }
  .pg-pol__ol li { font-size: 14px; line-height: 25.2px; }
  .pg-pol__no { width: 24px; }
  .pg-pol__addr p { font-size: 14px; line-height: 22.4px; }
  .pg-pol__sign { margin-top: 48px; }
  .pg-pol__sign p { font-size: 14px; line-height: 22.4px; }
}
