/**
 * プライバシーポリシー — Figma .privacypage
 * 装飾下線なし · セクション区切りは border-bottom のみ
 */

.privacy-page {
  background-color: #fff;
  padding-top: clamp(var(--space-16), 8vw, var(--space-24));
  padding-bottom: clamp(var(--space-16), 10vw, var(--space-24));
}

.privacy-page__inner {
  max-width: 800px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-8); /* [r5] 32px · React --privacy-stack-gap（Figma .container gap）に統一 */
}

/* ----- ページ見出し（Hero なし · container） ----- */
.privacy-page__masthead {
  display: flex;
  flex-direction: column;
  gap: 18px; /* 他ページ eyebrow → 見出し（募集要項・CTA帯等）と同じ */
}

.privacy-page__eyebrow {
  margin: 0;
  font-family: var(--font-en);
  font-size: 13px;
  font-weight: 900;
  line-height: 16.5px;
  letter-spacing: 0.25em; /* 2.75px @ 13px */
  text-transform: uppercase;
  color: var(--brand-primary);
}

.privacy-page__title {
  margin: 0;
  font-family: var(--font-jp);
  font-size: clamp(1.5rem, calc(1.5rem + 0.5vw), 2rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--ink-900);
}

/* [r5] React は intro/section を .privacy-page__inner 直下の flex 子として並べ、
   段間と区切りラインの上下に inner の gap(32px) を均等に効かせている。
   WP はラッパ構造を保ったまま display:contents で同じレイアウトを再現する。 */
.privacy-page__content {
  display: contents;
}

/* ----- リード（container3） ----- */
.privacy-page__intro {
  border-bottom: 1px solid color-mix(in srgb, var(--ink-900) 8%, transparent);
  padding-bottom: var(--space-8); /* [r5] 32px · React --privacy-stack-gap に統一 */
  margin-bottom: 0;
}

.privacy-page__intro-title {
  margin: 0 0 var(--space-3);
  font-family: var(--font-jp);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.59375; /* 25.5px */
  color: var(--brand-primary);
}

.privacy-page__prose {
  margin: 0;
  padding-left: clamp(var(--space-6), 4vw, 36px); /* [r5] React .privacy-page__section-body の indent 実値 */
  font-family: var(--font-jp);
  font-size: 14px;
  font-weight: 400;
  line-height: 30px;
  color: var(--ink-700);
}

.privacy-page__prose > p {
  margin: 0;
}

.privacy-page__prose > p + p,
.privacy-page__prose > p + ol,
.privacy-page__prose > ol + p {
  margin-top: 0; /* [r5] React 準拠（独自に入れていた 1em を撤去。詰まり感はライン余白側で解消） */
}

.privacy-page__list {
  margin: 0;
  padding-left: 19px;
  font-family: inherit;
  font-size: inherit;
  line-height: 30px;
  color: inherit;
}

.privacy-page__list li {
  margin-bottom: 0;
}

/* ----- 番号付きセクション（01–14） ----- */
.privacy-page__section {
  border-bottom: 1px solid color-mix(in srgb, var(--ink-900) 8%, transparent);
  padding-bottom: var(--space-8); /* [r5] 32px · React --privacy-stack-gap に統一 */
}

/* [r5] React は最終セクションも border-bottom + padding を保持（contact の上にラインが出る）。
   従来あった :last-of-type のライン消去はReact非準拠のため撤去。 */

.privacy-page__section-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: var(--space-3);
}

.privacy-page__section-num {
  flex-shrink: 0;
  font-family: var(--font-en);
  font-size: 18px;
  font-weight: 900;
  line-height: 27px;
  color: color-mix(in srgb, var(--brand-primary) 15%, transparent);
}

.privacy-page__section-title {
  margin: 0;
  font-family: var(--font-jp);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--brand-primary);
}

/* h2-section の縁ラインを付けない */
.privacy-page__section-title::after {
  display: none;
}

/* ----- お問い合わせ先（container33） ----- */
.privacy-page__contact {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 2px; /* [r5] React 実値。区切りライン→contact の 32px は inner の gap で確保 */
  font-family: var(--font-jp);
  font-size: 14px;
  line-height: 1.8;
}

.privacy-page__contact-name {
  margin: 0;
  font-weight: 700;
  line-height: 25.2px;
  color: var(--ink-900);
}

.privacy-page__contact-address {
  margin: 0;
  line-height: 24px;
  color: var(--ink-500);
}

.privacy-page__contact-tel {
  margin: 0;
  font-family: var(--font-en-body, var(--font-en));
  font-weight: 600;
  line-height: 25.2px;
  color: var(--brand-primary);
}
