/*
  文書のページ（プライバシーポリシー・利用規約・運営者情報・推奨環境・T-205）。
  お手本はサウナイキタイの /privacy（PC 1280px・スマホ 390px で測った）。
    PC   白い箱 1100・角丸16・上下左右 80、本文の幅 700（中央）
         題 34px/51、本文 18px/35.1、見出し 20px（左に 18px 四方の青い四角・右 15）、上 64・下 26
         小見出し 16px 太字、箇条書き 18px・字下げ 21
    スマホ 箱は全幅・余白 20、題 24px/30、本文 15px/29.25、見出し 15px（四角 13px・右 10）、上 47・下 13
*/
.dp-wrap { max-width: 1100px; margin: 0 auto 60px; }
.dp-box { background: #fff; border-radius: 16px; padding: 80px; }
.dp { max-width: 700px; margin: 0 auto; color: #111; font-size: 18px; line-height: 1.95; }
.dp h1 { margin: 0 0 30px; font-size: 34px; line-height: 1.5; font-weight: 700; }
.dp h2 { display: flex; align-items: flex-start; margin: 64px 0 26px; font-size: 20px; line-height: 1.5; font-weight: 700; }
.dp h2::before { content: ""; flex-shrink: 0; width: 18px; height: 18px; margin: 6px 15px 0 0; background: #469BFF; }
.dp h3 { margin: 32px 0 12px; font-size: 16px; line-height: 1.95; font-weight: 700; }
.dp p { margin: 0 0 35px; }
.dp ul, .dp ol { margin: 0 0 32px; padding-left: 21px; }
.dp ul { list-style: disc; }
.dp ol { list-style: decimal; }
.dp li + li { margin-top: 4px; }
.dp a { color: #469BFF; text-decoration: underline; }
.dp table { width: 100%; margin: 0 0 32px; border-collapse: collapse; font-size: 16px; line-height: 1.8; }
.dp th, .dp td { padding: 14px 0; border-bottom: 1px solid #DDD; text-align: left; vertical-align: top; }
.dp th { width: 30%; padding-right: 16px; font-weight: 700; white-space: nowrap; }
.dp .dp-note { font-size: 14px; color: #666; }
.dp .dp-date { margin-top: 64px; font-size: 14px; color: #666; text-align: right; }
.dp-crumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 40px 0 0; font-size: 12px; color: #898989; }
.dp-crumbs a { color: #222; }

@media (max-width: 1023px) {
    .dp-wrap { margin: 0 0 40px; }
    .dp-box { border-radius: 0; padding: 20px 20px 40px; }
    .dp { font-size: 15px; }
    .dp h1 { margin: 0 0 16px; font-size: 24px; line-height: 1.25; }
    .dp h2 { margin: 47px 0 13px; font-size: 15px; }
    .dp h2::before { width: 13px; height: 13px; margin: 4px 10px 0 0; }
    .dp h3 { font-size: 15px; }
    .dp p { margin: 0 0 18px; }
    .dp ul, .dp ol { margin: 0 0 28px; padding-left: 18px; }
    .dp table { font-size: 14px; }
    .dp th { width: 34%; white-space: normal; }
    .dp-crumbs { padding: 0 20px; }
}

/* 相談できるところ・コミュニティガイドラインで使う部品（T-228）。文字の段階は本文 18／補足 16／小 14（スマホ 15／14／13） */
.dp .dp-card { margin: 0 0 20px; padding: 26px 30px; border: 1px solid #DDD; border-radius: 12px; }
.dp .dp-card p { margin: 0; }
.dp .dp-card__name { font-weight: 700; }
.dp .dp-card__tel { margin-top: 2px !important; font-size: 26px; line-height: 1.5; font-weight: 700; }
.dp .dp-card__tel a { text-decoration: none; }
.dp .dp-card__tel span { margin-left: 10px; font-size: 14px; font-weight: 400; color: #666; }
.dp .dp-card__text { margin-top: 10px !important; font-size: 16px; line-height: 1.8; }
.dp .dp-links { list-style: none; padding: 0; }
.dp .dp-links li + li { margin-top: 18px; }
.dp .dp-links a { font-weight: 700; }
.dp .dp-links span { display: block; font-size: 16px; color: #555; }
.dp .dp-okng { font-size: 16px; }
.dp .dp-okng th { width: 50%; white-space: normal; }
.dp .dp-okng td + td, .dp .dp-okng th + th { padding-left: 16px; }
.dp .dp-okng td + td { color: #888; }
.dp .dp-words { margin: 0 0 20px; }
.dp .dp-words p { margin: 0; }
.dp .dp-words__title { font-size: 16px; font-weight: 700; }
.dp .dp-words__list { margin-top: 4px !important; padding-left: 16px; border-left: 3px solid #DDD; font-size: 16px; color: #555; }
.dp .dp-quiet { font-size: 16px; color: #555; }

@media (max-width: 1023px) {
    .dp .dp-card { padding: 18px 20px; }
    .dp .dp-card__tel { font-size: 22px; }
    .dp .dp-card__tel span { font-size: 13px; }
    .dp .dp-card__text, .dp .dp-links span, .dp .dp-okng, .dp .dp-words__title, .dp .dp-words__list, .dp .dp-quiet { font-size: 14px; }
    .dp .dp-okng th { width: 50%; }
}

/* 題のすぐ下の添え書き（フリースクール運営者のみなさまへ・T-232） */
.dp .dp-lead { margin-top: -10px; font-size: 16px; color: #555; }
@media (max-width: 1023px) { .dp .dp-lead { margin-top: 0; font-size: 14px; } }

/* つなぎばの使いかた（T-235）。目次と、文と画面写真の2段。PC は右に写真（幅 260）、スマホは文の下に写真 */
.dp .dp-toc { margin: 0 0 20px; padding: 24px 30px; border-radius: 12px; background: #F4F8FF; }
.dp .dp-toc ol { margin: 0; padding-left: 22px; font-size: 16px; line-height: 2; }
.dp .dp-toc li + li { margin-top: 0; }
.dp .dp-step { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 40px; align-items: start; }
.dp .dp-step > div > :last-child { margin-bottom: 0; }
.dp .dp-shot { margin: 6px 0 0; }
.dp .dp-shot img { display: block; width: 260px; height: auto; border: 1px solid #DDD; border-radius: 16px; }
.dp h2[id] { scroll-margin-top: 90px; }
@media (max-width: 1023px) {
    .dp .dp-toc { padding: 18px 20px; }
    .dp .dp-toc ol { font-size: 15px; }
    .dp .dp-step { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .dp .dp-shot { margin: 0 auto 8px; }
    .dp .dp-shot img { width: 240px; margin: 0 auto; }
}

/* 「フリ活募集中」のポスター（/guideline/facility・T-284）。灰色の枠に絵・その下に青いボタン（お手本：サウナイキタイの POP ダウンロード） */
.dp .dp-pop { margin: 24px 0; padding: 12px; background: #EFEFEF; text-align: center; }
.dp .dp-pop img { display: inline-block; width: auto; max-width: 100%; height: 420px; box-shadow: 0 1px 4px rgba(0, 0, 0, .12); }
.dp .dp-dl { margin: 28px 0 48px; }
.dp .dp-dl a { display: block; padding: 18px 16px; border-radius: 6px; background: #469BFF; color: #fff; font-weight: 700; text-align: center; text-decoration: none; }
.dp .dp-dl a:hover { opacity: .85; }
@media (max-width: 1023px) {
    .dp .dp-pop img { height: 320px; }
}
