/* ==============================
   /privacy/ 紙と手書き 2026-10
   共通部品（.pp-*）は paper.css。ここには /privacy/ だけのレイアウトを置く。paper.css の後に読む。
============================== */

.hoppy-wp-v2.is-paper.privacy-page {
  --page-line: rgb(59 51 44 / 20%);
  font-size: 16px;
  line-height: 1.95;
}
.hoppy-wp-v2.is-paper.privacy-page .pp-sec { padding: 76px 5%; }
.hoppy-wp-v2.is-paper.privacy-page .section-header { margin: 0 0 30px; }
.hoppy-wp-v2.is-paper.privacy-page .pp-lead { max-width: 800px; color: var(--pp-ink); }
.hoppy-wp-v2.is-paper.privacy-page .section-header > .pp-lead:last-child { margin-bottom: 0; }
.hoppy-wp-v2.is-paper.privacy-page h1.pp-title { font-size: clamp(28px, 3.2vw, 42px); }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 112px;
  margin-bottom: 24px;
}
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__heading .pp-title { margin-bottom: 0; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__illust {
  display: block;
  flex: 0 0 auto;
  width: 112px;
  height: 112px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  mix-blend-mode: multiply;
  pointer-events: none;
}
.hoppy-wp-v2.is-paper.privacy-page a:focus-visible { outline: 2px solid var(--pp-accent-text); outline-offset: 5px; }

/* 文書は一列。紙片やCTAは足さず、見出しと行間で区切る。 */
.hoppy-wp-v2.is-paper.privacy-page .pp-inner { max-width: 820px; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__intro { padding-top: 52px; padding-bottom: 42px; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__intro .section-header { margin-bottom: 0; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__illust--document { width: 96px; height: 96px; background-image: url("../../images/about/flow-counseling.webp"); }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document { padding-top: 12px; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .section-header { margin-bottom: 0; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-title { display: block; margin: 44px 0 18px; padding: 0 0 12px; border-bottom: 1px solid var(--page-line); background: none; font-size: 23px; line-height: 1.7; letter-spacing: .01em; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-title:first-child { margin-top: 0; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document p,
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-dots { font-size: 16px; line-height: 2.1; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document p + p,
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document p + .pp-dots { margin-top: 16px; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-dots li { line-height: 2.1; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-dots li + li { margin-top: 12px; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document a { color: var(--pp-accent-text); text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .section-header > p:last-child { margin-top: 40px; font-size: 14px; color: var(--ink-soft); }
@media (max-width: 860px) {
  .hoppy-wp-v2.is-paper.privacy-page .pp-sec { padding: 48px 20px; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__intro { padding-top: 32px; padding-bottom: 36px; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__heading { flex-direction: column-reverse; align-items: flex-start; gap: 16px; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__illust { width: 64px; height: 64px; align-self: flex-end; }
  .hoppy-wp-v2.is-paper.privacy-page h1.pp-title { font-size: 28px; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__document { padding-top: 0; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-title { font-size: 21px; margin-top: 36px; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__document p,
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-dots { font-size: 15px; }
}
@media (max-width: 360px) {
  .hoppy-wp-v2.is-paper.privacy-page .pp-sec { padding-inline: 16px; }
  .hoppy-wp-v2.is-paper.privacy-page h1.pp-title { font-size: 27px; letter-spacing: 0; }
  .hoppy-wp-v2.is-paper.privacy-page .privacy-page__document .pp-title { font-size: 20px; letter-spacing: 0; }
}
