@charset "UTF-8";
/*================================================================
# プライバシーポリシー(privacy/index.html 専用)
  リセット・変数・フォント・ヘッダー・フッターは style.css のものを使う。
  ここには、このページの本文のレイアウトだけを書く。
  長い文章を読むページなので、1カラムで行を短めにし、装飾は細い罫線だけにしている。
================================================================*/
.privacy {
  padding-block: 48px 72px;
}

/* 本文の幅。1行が長くなりすぎないようにする(全角で約40文字) */
.privacy__inner {
  width: calc(100% - var(--gutter) * 2);
  max-width: 720px;
  margin-inline: auto;
}

/*--------------------------------------------
## タイトル
--------------------------------------------*/
.privacy__head {
  padding-bottom: var(--space32);
  border-bottom: 1px solid var(--color-border);
}

.privacy__title {
  margin-top: var(--space16);
  font-family: var(--font-mincho);
  font-size: clamp(1.5rem, 1.05rem + 1.5vw, 2.25rem);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.08em;
}

.privacy__date {
  margin-top: var(--space16);
  font-size: var(--font12);
  line-height: 1.6;
  letter-spacing: 0.08em;
  color: var(--color-text-sub);
}

/*--------------------------------------------
## 本文
--------------------------------------------*/
.privacy__lead {
  margin-top: var(--space32);
}

.privacy__section {
  margin-top: 48px;
  /* フッターの「お問い合わせ」から飛んできたとき、固定のヘッダーに隠れないようにする */
  scroll-margin-top: calc(var(--header-height) + var(--space16));
}

.privacy__heading {
  font-family: var(--font-mincho);
  font-size: var(--font18);
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.08em;
}

.privacy__lead p,
.privacy__section p {
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.04em;
}

.privacy__lead p + p,
.privacy__section p + p {
  margin-top: 12px;
}

.privacy__heading + p {
  margin-top: var(--space16);
}

/*--------------------------------------------
## お問い合わせ先
--------------------------------------------*/
.privacy__contact {
  margin-top: var(--space24);
  border-top: 1px solid var(--color-border);
}

.privacy__contact-row {
  padding-block: 14px;
  font-size: 0.9375rem;
  line-height: 1.8;
  letter-spacing: 0.04em;
  border-bottom: 1px solid var(--color-border);
}

.privacy__contact-row dt {
  font-size: var(--font12);
  letter-spacing: 0.08em;
  color: var(--color-text-sub);
}

.privacy__contact-row a {
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: opacity 0.2s;
}

.privacy__contact-row a:hover {
  opacity: 0.6;
}

/* * タブレット・PC：768px〜 ----- */
@media (min-width: 768px) {
  .privacy {
    padding-block: clamp(64px, 6.5vw, 96px) clamp(88px, 9vw, 128px);
  }

  .privacy__head {
    padding-bottom: var(--space40);
  }

  .privacy__lead {
    margin-top: var(--space40);
  }

  .privacy__section {
    margin-top: var(--space64);
  }

  .privacy__heading {
    font-size: var(--font20);
  }

  .privacy__lead p,
  .privacy__section p {
    font-size: var(--font16);
  }

  /* 項目名を左、内容を右に並べる */
  .privacy__contact-row {
    display: grid;
    grid-template-columns: 9em minmax(0, 1fr);
    align-items: baseline;
    padding-block: var(--space16);
    font-size: var(--font16);
  }

  .privacy__contact-row dt {
    font-size: 0.8125rem;
  }
}
