/* ==================================================
   PRIVACY POLICY PAGE
   既存デザインシステム（brand.css）準拠
================================================== */

.privacy-page {
  position: relative;

  padding-top: 120px;
  /* 固定ヘッダー分のオフセット（category-pageと同様） */
}


/* ==================================================
   BREADCRUMB
================================================== */

.privacy-breadcrumb {
  margin: 0 auto 42px;

  color: #555;

  font-size: 14px;
  line-height: 1;
}

.privacy-breadcrumb a {
  color: #555;

  text-decoration: none;

  transition: color 0.3s ease;
}

.privacy-breadcrumb a:hover {
  color: #3694c9;
}

.privacy-breadcrumb span {
  margin-inline: 6px;

  color: #97cae3;
}


/* ==================================================
   HEADING
================================================== */

.privacy-heading {
  margin-bottom: 56px;
}

.privacy-heading__eyebrow {
  margin: 0 0 8px;

  color: #97cae3;

  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.08em;

  font-weight: 600;
}

.privacy-heading__title {
  margin: 0;

  color: #3694c9;

  font-size: clamp(32px, 2.6vw, 48px);
  line-height: 1.3;

  font-weight: 600;
}


/* ==================================================
   CONTENT
================================================== */

.privacy-content {
  margin-top: 96px;
  /* .section と同等の余白 */
}

.privacy-content .wrapper {
  max-width: 960px;
  /* 本文は読みやすい幅に制限 */
}

.privacy-content__lead {
  margin: 0 0 64px;

  padding-bottom: 40px;

  border-bottom: 1px solid #97cae3;

  color: #555;

  font-size: 15px;
  line-height: 1.9;
}


/* -------------------------
   各項目ブロック
------------------------- */

.privacy-content__block {
  padding-bottom: 40px;
  margin-bottom: 40px;

  border-bottom: 1px solid #e5e5e5;
}

.privacy-content__block:last-of-type {
  border-bottom: 0;
}

.privacy-content__heading {
  position: relative;

  margin: 0 0 20px;
  padding-left: 18px;

  color: #3694c9;

  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.5;

  font-weight: 600;
}

/* 見出し左のアクセントバー */
.privacy-content__heading::before {
  content: "";

  position: absolute;

  left: 0;
  top: 6px;
  bottom: 6px;

  width: 4px;

  border-radius: 999px;

  background: #3694c9;
}

.privacy-content__text {
  margin: 0 0 16px;

  color: #555;

  font-size: 15px;
  line-height: 1.9;
}

.privacy-content__text:last-child {
  margin-bottom: 0;
}

/* 管理画面で登録された本文（改行はそのまま活かしつつ、フォント・折返しはサイトに合わせる） */
.privacy-content__text--pre {
  margin: 0;

  font-family: "Noto Sans JP", sans-serif;

  white-space: pre-wrap;
  word-break: break-word;
}


/* -------------------------
   一覧（ecforce loop 出力用）
------------------------- */

.privacy-content__items {
  margin: 0;
  padding: 0;

  list-style: none;
}

/* 会社情報など強調ブロック */
.privacy-content__text--company {
  padding: 24px 28px;

  border: 1px solid #97cae3;
  background: rgba(151, 202, 227, 0.08);

  line-height: 1.9;
}

.privacy-content__text--company a {
  color: #3694c9;

  text-decoration: underline;

  transition: opacity 0.25s ease;
}

.privacy-content__text--company a:hover {
  opacity: 0.7;
}


/* -------------------------
   リスト
------------------------- */

.privacy-content__list {
  margin: 0 0 16px;
  padding-left: 1.6em;

  color: #555;

  font-size: 15px;
  line-height: 1.9;
}

.privacy-content__list:last-child {
  margin-bottom: 0;
}

.privacy-content__list li {
  margin-bottom: 10px;
}

.privacy-content__list li:last-child {
  margin-bottom: 0;
}

.privacy-content__list li::marker {
  color: #3694c9;
}

/* ネストしたリスト */
.privacy-content__list--nested {
  margin-top: 10px;
  margin-bottom: 0;
  padding-left: 1.4em;

  font-size: 14px;
}

.privacy-content__list--nested li::marker {
  color: #97cae3;
}


/* -------------------------
   制定日・改定日
------------------------- */

.privacy-content__date {
  margin-top: 56px;

  text-align: right;

  color: #888;

  font-size: 13px;
  line-height: 1.8;
}

.privacy-content__date p {
  margin: 0;
}


/* ==================================================
   SP
================================================== */

@media (max-width: 1170px) {

  .privacy-page {
    padding-top: 92px;
  }

  .privacy-breadcrumb {
    margin-bottom: 28px;

    font-size: 11px;
  }

  .privacy-heading {
    margin-bottom: 36px;
  }

  .privacy-heading__eyebrow {
    font-size: 11px;
  }

  .privacy-content {
    margin-top: 64px;
  }

  .privacy-content__lead {
    margin-bottom: 40px;
    padding-bottom: 28px;

    font-size: 13px;
    line-height: 1.8;
  }

  .privacy-content__block {
    padding-bottom: 28px;
    margin-bottom: 28px;
  }

  .privacy-content__heading {
    padding-left: 14px;

    font-size: clamp(16px, 4.5vw, 19px);
  }

  .privacy-content__heading::before {
    top: 4px;
    bottom: 4px;

    width: 3px;
  }

  .privacy-content__text,
  .privacy-content__list {
    font-size: 13px;
    line-height: 1.8;
  }

  .privacy-content__text--company {
    padding: 18px 20px;
  }

  .privacy-content__date {
    margin-top: 40px;

    font-size: 11px;
  }

}



.privacy-heading__title {
  font-size: var(--top-h1) !important;
}

.privacy-heading__eyebrow,
.privacy-content__lead,
.privacy-content__text,
.privacy-content__text, .privacy-content__list {
  font-size: var(--top-16) !important;
}

.privacy-breadcrumb {
  font-size: var(--top-small) !important;
}
