/* 園向けフォームの見た目（モック v5 の form.html・followup-form.html の色と形）
   2026-10-04 オーナー決定：応募フォームと回答フォームだけ、見た目を v5（緑とクリーム色のやわらかいデザイン）に寄せる。
   動き・文言・部品の作り（DADS の部品と同じ HTML）はそのまま。ここでは色・文字・角丸・余白・カード・見出し・ボタン・入力欄・お知らせだけを変える。
   事務局の画面・巡回画面は v7（DADS）のまま（このファイルは読み込まない）。
   読み込む順：dads.css → 画面ごとの css（entry-form.css / answer-form.css）→ このファイル（後から上書きする）。
   守ること：文字は14px以上／押す部分は44px以上／文字と背景のコントラスト4.5以上／フォーカスが見える／左辺だけの色線は使わない。
   v5 の色のうち、文字に使うとコントラストが足りないもの（緑 #5a9e46 の白文字・灰 #8a927e・赤 #d94f3d）は、同じ色みで濃くして使う。 */
:root {
  /* v5 の色 */
  --v5-cream: #fdf6dc;
  --v5-cream-2: #fffdf6;       /* 入力欄の地 */
  --v5-yellow: #fae080;
  --v5-yellow-pale: #fdf3d7;
  --v5-green: #5a9e46;         /* 飾り（線・地）だけに使う */
  --v5-green-deep: #3f7d2f;    /* 文字・ボタンの地（白文字 5.0） */
  --v5-green-dark: #2b5c1f;
  --v5-green-pale: #eef6e8;
  --v5-blue-pale: #ecf7fa;
  --v5-ink: #3c4633;
  --v5-ink-2: #5d6652;         /* 補足の文字（白地 6.0・クリーム地 5.6） */
  --v5-line: #e5dfc8;          /* 区切りの線 */
  --v5-field: #958b6a;         /* 入力欄の枠（地との差 3.3） */
  --v5-red: #b3402c;           /* 誤りの文字（白地 5.7） */
  --v5-red-pale: #fdeae7;
  --v5-shadow: 0 2px 10px rgba(90, 110, 60, .08);
  --v5-round: "Zen Maru Gothic", "Zen Kaku Gothic New", "Hiragino Maru Gothic ProN", sans-serif;

  /* DADS の変数を v5 の色に差し替える（部品の色はここから決まる） */
  --font-family-sans: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  --color-key-50: #f4f9ef;
  --color-key-100: #e6f1dd;
  --color-key-200: #d5e8c7;
  --color-key-300: #bfdaa9;
  --color-key-900: var(--v5-green-deep);
  --color-key-1000: #346a26;
  --color-key-1100: var(--v5-green-dark);
  --color-key-1200: #234d19;
  --color-neutral-solid-gray-900: var(--v5-ink);
  --color-neutral-solid-gray-800: var(--v5-ink);
  --color-neutral-solid-gray-700: var(--v5-ink-2);
  --color-neutral-solid-gray-600: var(--v5-ink-2);
  --color-semantic-error-1: var(--v5-red);
  --color-primitive-red-1000: #8f3122;
  --color-semantic-success-2: var(--v5-green-deep);
  --color-primitive-green-1000: #346a26;
  --color-primitive-green-1200: #234d19;
  --color-primitive-green-200: #d5e8c7;
  --color-primitive-green-300: #bfdaa9;
  /* 画面ごとの css の変数も v5 に */
  --ink: var(--v5-ink);
  --ink-2: var(--v5-ink-2);
  --line: var(--v5-line);
  --line-strong: var(--v5-line);
  --surface-2: var(--v5-cream);
  --brand: var(--v5-green-deep);
}

body {
  background: var(--v5-cream); color: var(--v5-ink);
  font-family: var(--font-family-sans); font-size: 16px; line-height: 1.8; letter-spacing: .02em;
}
a:any-link, a:visited, .dads-checkbox__label a { color: var(--v5-green-deep); }
a:any-link:hover { color: var(--v5-green-dark); }
a:any-link:active { color: var(--v5-green-dark); }
/* フォーカス：濃い緑の線＋黄色のふち（クリーム地・白地・緑の地のどれでも見える） */
:focus-visible,
.dads-button:focus-visible,
.dads-input-text__input:focus-visible, .dads-textarea__textarea:focus-visible, .dads-select__select:focus-visible,
.dads-checkbox__input:focus, .dads-radio__input:focus,
.dads-disclosure__summary:focus-visible {
  outline: 3px solid var(--v5-green-dark); outline-offset: 2px; box-shadow: 0 0 0 5px var(--v5-yellow);
}
.dads-button[data-type="text"]:focus-visible, .dads-disclosure__summary:focus-visible { background-color: var(--v5-yellow-pale); }

/* ===== 上の帯（サービス名）と見出し ===== */
.pub-bar { border-bottom: 0; background: transparent; }
.pub-bar-in {
  max-width: 640px; padding: 16px 18px 0; justify-content: center;
  font-family: var(--v5-round); font-weight: 700; font-size: 15px; color: var(--v5-green-deep); letter-spacing: .06em;
}
.pub-bar .mark { width: 10px; height: 10px; border-radius: 50%; background: var(--v5-green); }

.wrap { max-width: 640px; padding: 16px 18px 80px; }
.site-head { position: relative; text-align: center; padding: 18px 0 6px; }
/* 札（v5 の kicker：黄色の丸い札） */
.dads-chip-label.tag {
  display: inline-block; min-height: 0; border: 0; border-radius: 999px; background: var(--v5-yellow); color: var(--v5-ink);
  padding: 4px 18px; font-family: var(--v5-round); font-size: 14px; font-weight: 700; line-height: 1.6; letter-spacing: .04em;
}
.page-h, .site-head h1 {
  font-family: var(--v5-round); font-weight: 700; font-size: 26px; line-height: 1.5; color: var(--v5-green-deep); margin: 10px 0 4px;
}
.page-h:focus { outline: none; }
.page-h:focus-visible { outline: 3px solid var(--v5-green-dark); outline-offset: 4px; box-shadow: none; border-radius: 8px; }
.site-head .lead, .site-head .lead p, .site-head p.lead { color: var(--v5-ink-2); font-size: 14px; text-align: center; }
.lead { color: var(--v5-ink-2); }
.lead b { color: var(--v5-ink); }
.draft-note { justify-content: center; font-size: 14px; color: var(--v5-green-deep); }

/* 無料開催の丸いバッジ（v5 と同じ画像・右上）。白い枠（カード）から右へ最大48px はみ出し、画面の端から 8px 内側に収める */
.site-badge {
  position: absolute; top: 8px; right: calc(-1 * min(48px, max(10px, (100vw - 640px) / 2 + 10px)));
  width: 150px; height: auto; pointer-events: none;
}
/* 完了画面などで見出しが短くなっても、バッジが下のお知らせに重ならないよう高さを取っておく */
.site-head.has-badge { min-height: 172px; }
@media (max-width: 1024px) { .site-badge { width: 110px; } .site-head.has-badge { min-height: 132px; } }
@media (max-width: 560px) {
  .site-badge { width: 80px; top: 4px; }
  .site-head.has-badge { padding-top: 80px; min-height: 0; }
}

/* 応募フォームの見出し：v5 と同じ「ドール食育キャラバン（改行）応募フォーム」の2行・同じ大きさ。上の帯は見出しと重なるので出さない */
.page-h .page-h-brand { display: inline; }

/* ===== 進み具合（入力 → 確認 → 完了）：v5 の緑の丸 ===== */
.steps { margin: 0 -18px 4px; }
.dads-step-navigation { color: var(--v5-ink-2); }
.dads-step-navigation__step::before, .dads-step-navigation__step::after { border-color: var(--v5-field) !important; }
.dads-step-navigation__number { background-color: #fff; border-color: var(--v5-field); color: var(--v5-ink-2); font-family: var(--v5-round); font-weight: 700; }
.dads-step-navigation__step[data-state="reached"] .dads-step-navigation__number { background-color: var(--v5-green-deep); border-color: var(--v5-green-deep); color: #fff; }
.dads-step-navigation__step[data-state="completed"] .dads-step-navigation__number { background-color: var(--v5-green-pale); border-color: var(--v5-green-deep); color: var(--v5-green-deep); }
.dads-step-navigation__step[aria-current] .dads-step-navigation__number { outline-color: var(--v5-green-deep); box-shadow: 0 0 0 2px var(--v5-cream); }
.dads-step-navigation__state-icon { background-color: var(--v5-cream); }
.dads-step-navigation__state-icon circle { fill: var(--v5-green-deep); }
.dads-step-navigation__title { font-family: var(--v5-round); color: var(--v5-ink-2); }
.dads-step-navigation__step[aria-current] .dads-step-navigation__title { color: var(--v5-green-deep); }

/* ===== カード（v5 の step-card / card：白・角丸16・やわらかい影） ===== */
.sec, .cf-sec, .info-sec, .mail-check, .found-card, #showInfo > .info-table {
  background: #fff; border: 0; border-radius: 16px; box-shadow: var(--v5-shadow);
  padding: 24px 22px; margin-top: 18px;
}
.sec:first-of-type { margin-top: 18px; }
/* 控え（完了画面）の中の表はカードの中なので、さらにカードにしない */
.info-sec .cf-sec { background: transparent; box-shadow: none; padding: 0; margin-top: 24px; border-radius: 0; }
.sec-h, .cf-head h2, .info-sec h2 {
  font-family: var(--v5-round); font-weight: 700; font-size: 18px; line-height: 1.5; color: var(--v5-green-deep);
  display: flex; align-items: center; gap: 10px;
}
.sec-h .no {
  width: 30px; height: 30px; border-radius: 50%; background: var(--v5-green-deep); color: #fff;
  display: inline-flex; align-items: center; justify-content: center; font-size: 15px; flex-shrink: 0;
}
.sec-lead { color: var(--v5-ink-2); font-size: 15px; }
.fields { gap: 24px; margin-top: 18px; }
.fields-sm { gap: 18px; }
/* 設問と設問のあいだは v5 と同じ点線で区切る */
/* 線は前の設問の下に引く（fieldset の上の線は見出し（legend）に重なって切れるため） */
.sec .fields > .dads-form-control-label:has(+ .dads-form-control-label:not([hidden])) { border-bottom: 1px dashed var(--v5-line); padding-bottom: 24px; }
/* 回答フォームの送るところは v5 と同じく白いカードに入れる */
#formArea .submit-area { background: #fff; border-radius: 16px; box-shadow: var(--v5-shadow); padding: 22px 20px; margin-top: 18px; }

/* ===== 項目（見出し・必須・補足・誤り） ===== */
.dads-form-control-label { color: var(--v5-ink); }
.dads-form-control-label[data-size] .dads-form-control-label__label,
.dads-form-control-label__label { font-size: 16px; font-weight: 700; color: var(--v5-ink); line-height: 1.6; }
.dads-form-control-label__requirement { font-size: 14px; font-weight: 700; color: var(--v5-ink-2); }
.dads-form-control-label__requirement[data-required="true"] { color: var(--v5-red); }
.dads-form-control-label__support-text, .field-note { font-size: 14px; color: var(--v5-ink-2); line-height: 1.7; }
.dads-form-control-label__error-text, .dads-input-text__error-text, .err { color: var(--v5-red); font-size: 15px; font-weight: 700; line-height: 1.6; }

/* ===== 入力欄（v5：角丸10・クリームの地） ===== */
.dads-input-text__input, .dads-textarea__textarea, .dads-select__select {
  border: 1.5px solid var(--v5-field); border-radius: 10px; background-color: var(--v5-cream-2); color: var(--v5-ink);
  font-family: var(--font-family-sans);
}
.dads-input-text__input:not(:read-only):hover, .dads-textarea__textarea:not(:read-only):hover, .dads-select__select:hover { border-color: var(--v5-green-deep); }
.dads-input-text__input:focus-visible, .dads-textarea__textarea:focus-visible, .dads-select__select:focus-visible { background-color: #fff; border-color: var(--v5-green-deep); }
.dads-input-text__input:is(:user-invalid, [aria-invalid="true"]),
.dads-textarea__textarea:is(:user-invalid, [aria-invalid="true"]),
.dads-select__select:is(:user-invalid, [aria-invalid="true"]) { border-color: var(--v5-red); border-width: 2px; background-color: #fffaf8; }
.dads-input-text__input::placeholder, .dads-textarea__textarea::placeholder { color: #857c60; }
.dads-select__chevron { color: var(--v5-green-deep); }
.with-unit > span:last-child { font-weight: 700; }

/* ===== はい・いいえ（v5 の yn：横に2つ並ぶ丸いボタン。選んだ方が色で分かる） ===== */
.radio-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.radio-row .dads-radio {
  width: auto; min-height: 48px; padding: 6px 14px; gap: 8px; align-items: center; justify-content: center;
  border: 1.5px solid var(--v5-field); border-radius: 999px; background: var(--v5-cream-2); cursor: pointer;
}
.radio-row .dads-radio__radio { width: 28px; height: 28px; }
.radio-row .dads-radio__label { padding-top: 0; font-weight: 700; font-size: 16px; color: var(--v5-ink); }
.radio-row .dads-radio:hover { border-color: var(--v5-green-deep); }
.radio-row .dads-radio:has(input[value="yes"]:checked) { background: var(--v5-green-deep); border-color: var(--v5-green-deep); }
.radio-row .dads-radio:has(input[value="yes"]:checked) .dads-radio__label { color: #fff; }
.radio-row .dads-radio:has(input[value="yes"]:checked) .dads-radio__input { --_base-color: #fff; --_accent-color: var(--v5-green-deep); --_accent-hover-color: var(--v5-green-dark); --_border-color: #fff; --_border-hover-color: #fff; }
.radio-row .dads-radio:has(input[value="no"]:checked) { background: var(--v5-red-pale); border-color: var(--v5-red); }
.radio-row .dads-radio:has(input[value="no"]:checked) .dads-radio__label { color: var(--v5-red); }
.radio-row .dads-radio:has(input[value="no"]:checked) .dads-radio__input { --_accent-color: var(--v5-red); --_accent-hover-color: #8f3122; --_border-color: var(--v5-red); }
.radio-row .dads-radio:has([aria-invalid="true"]) { border-color: var(--v5-red); border-width: 2px; }

/* ===== チェックボックス ===== */
.dads-checkbox__input { --_border-color: var(--v5-field); --_accent-color: var(--v5-green-deep); --_accent-hover-color: var(--v5-green-dark); border-radius: 6px; }
.dads-checkbox__label { color: var(--v5-ink); }

/* 日付と時間帯（v5 の chip / mini-chip：選んだら緑の地に白文字） */
.date-grid { gap: 8px; }
.date-grid .dads-checkbox, .day-slot-row .opts .dads-checkbox {
  width: 100%; min-height: 48px; padding: 6px 10px; gap: 6px; align-items: center; justify-content: center;
  border: 1.5px solid var(--v5-field); border-radius: 10px; background: var(--v5-cream-2); cursor: pointer;
}
.day-slot-row .opts .dads-checkbox { width: auto; min-height: 44px; border-radius: 999px; padding: 4px 14px 4px 8px; }
.date-grid .dads-checkbox .dads-checkbox__label, .day-slot-row .opts .dads-checkbox__label { padding-top: 0; font-size: 15px; font-weight: 700; white-space: nowrap; }
.date-grid .dads-checkbox, .day-slot-row .opts .dads-checkbox { --_checkbox-size: 28px; --_checkbox-scale: calc(17 / 14); }
/* 実施可能日の札：v5 と同じく四角いチェックは見せない（選ぶと緑の札）。チェックボックスは札いっぱいに重ねて透明にし、
   読み上げ・キーボード（Tab・スペース）・押せる範囲はそのまま。フォーカスは札の枠で見せる */
.date-grid .dads-checkbox { position: relative; padding: 6px 8px; }
.date-grid .dads-checkbox .dads-checkbox__checkbox { position: absolute; inset: 0; width: auto; height: auto; margin: 0; }
.date-grid .dads-checkbox .dads-checkbox__input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.date-grid .dads-checkbox .dads-checkbox__label { position: relative; pointer-events: none; }
.date-grid .dads-checkbox:has(.dads-checkbox__input:focus-visible) { outline: 3px solid var(--v5-green-dark); outline-offset: 2px; box-shadow: 0 0 0 5px var(--v5-yellow); }
.date-grid .dads-checkbox:has(.dads-checkbox__input[aria-invalid="true"]) { border-color: var(--v5-red); border-width: 2px; }
.date-grid .dads-checkbox:hover, .day-slot-row .opts .dads-checkbox:hover { border-color: var(--v5-green-deep); }
.date-grid .dads-checkbox:has(:checked), .day-slot-row .opts .dads-checkbox:has(:checked) { background: var(--v5-green-deep); border-color: var(--v5-green-deep); }
.date-grid .dads-checkbox:has(:checked) .dads-checkbox__label, .day-slot-row .opts .dads-checkbox:has(:checked) .dads-checkbox__label { color: #fff; }
.date-grid .dads-checkbox:has(:checked) .dads-checkbox__input, .day-slot-row .opts .dads-checkbox:has(:checked) .dads-checkbox__input {
  --_accent-color: #fff; --_accent-hover-color: #fff; --_check-color: var(--v5-green-deep); --_border-color: #fff;
}
.date-grid .dads-checkbox__checkbox:has(:not(:focus, :disabled):hover), .day-slot-row .opts .dads-checkbox__checkbox:has(:not(:focus, :disabled):hover) { background: transparent; }
.day-slot-row { border-top: 1px dashed var(--v5-line); }
.day-slot-row:last-child { border-bottom: 1px dashed var(--v5-line); }
.day-slot-row legend { font-weight: 700; color: var(--v5-ink); }
.day-slot-row .opts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 4px 0; }
.day-slot-row .opts .dads-checkbox { width: 100%; padding: 4px 8px; gap: 4px; }
.day-slot-row .opts .dads-checkbox { --_checkbox-size: 24px; --_checkbox-scale: 1; }
@media (min-width: 560px) {
  .day-slot-row .opts { display: flex; flex-wrap: wrap; }
  .day-slot-row .opts .dads-checkbox { width: auto; padding: 4px 14px 4px 8px; gap: 6px; }
}
.ds-empty { background: var(--v5-cream-2); border: 1.5px dashed var(--v5-field); border-radius: 12px; color: var(--v5-ink-2); font-size: 15px; }
.ds-summary { font-size: 14px; color: var(--v5-ink-2); }
.ds-summary b { color: var(--v5-green-deep); }

/* ===== ボタン（v5：丸い緑のボタン。下に濃い緑の影） ===== */
.dads-button { font-family: var(--v5-round); font-weight: 700; letter-spacing: .04em; }
.dads-button[data-size="lg"], .dads-button[data-size="md"] { border-radius: 999px; }
.dads-button[data-size="md"] { min-height: 44px; padding: 6px 20px; font-size: 15px; text-wrap: balance; }
.dads-button[data-type="solid-fill"] {
  border: 0; background-color: var(--button-color); color: #fff;
  box-shadow: 0 4px 0 var(--button-active-color); transition: transform .1s ease, box-shadow .1s ease;
}
.dads-button[data-type="solid-fill"]:hover { background-color: var(--button-color); transform: translateY(2px); box-shadow: 0 2px 0 var(--button-active-color); }
.dads-button[data-type="solid-fill"]:active { transform: translateY(4px); box-shadow: 0 0 0 var(--button-active-color); }
.dads-button[data-type="solid-fill"]:focus-visible { box-shadow: 0 4px 0 var(--button-active-color), 0 0 0 5px var(--v5-yellow); }
.dads-button[data-type="solid-fill"]:disabled { background-color: #b9c4ae; color: #3c4633; box-shadow: 0 4px 0 #9aa691; transform: none; }
.dads-button[data-size="lg"] { min-height: 56px; font-size: 18px; padding: 12px 24px; }
.dads-button[data-type="outline"] { border: 1.5px solid currentcolor; background-color: #fff; }
.dads-button[data-type="text"] { min-height: 44px; border-radius: 8px; padding: 4px 8px; font-family: var(--font-family-sans); }

/* ===== お知らせ（v5 の誤り・注意の箱：やわらかい地・角丸12・細い枠） ===== */
.dads-notification-banner[data-style="standard"] { border-width: 1.5px; border-radius: 12px; background: #fff; }
.dads-notification-banner { padding: 16px 18px 18px; column-gap: 12px; grid-template-columns: 28px 1fr auto; }
.dads-notification-banner__icon { width: 28px; height: 28px; margin: 0; padding-top: 2px; color: var(--_base-color); }
.dads-notification-banner__heading-text { font-family: var(--v5-round); font-size: 16px; line-height: 1.6; color: var(--v5-ink); padding-top: 2px; }
.dads-notification-banner__body { color: var(--v5-ink); font-size: 15px; line-height: 1.8; }
.dads-notification-banner[data-type="error"] { --_base-color: var(--v5-red); background: var(--v5-red-pale); border-color: #e9b4aa; }
.dads-notification-banner[data-type="error"] .dads-notification-banner__heading-text { color: #8f3122; }
.dads-notification-banner[data-type="warning"] { --_base-color: #8c5a00; background: var(--v5-yellow-pale); border-color: #e9cf7a; }
.dads-notification-banner[data-type="success"] { --_base-color: var(--v5-green-deep); background: var(--v5-green-pale); border-color: #b9d6a8; }
.dads-notification-banner[data-type="info-1"], .dads-notification-banner[data-type="info-2"] { --_base-color: #2f6a7c; background: var(--v5-blue-pale); border-color: #b8dbe5; }
.dads-notification-banner[data-type="info-1"] .dads-button, .dads-notification-banner[data-type="info-2"] .dads-button {
  --button-color: var(--v5-green-deep); --button-hover-color: #346a26; --button-active-color: #234d19; --button-outline-hover-bg-color: #e6f1dd; --button-outline-active-bg-color: #d5e8c7;
}
.dads-notification-banner[data-type="warning"] .dads-button { --button-color: #7a4f00; --button-active-color: #5a3a00; }
.dads-notification-banner__actions { gap: 8px 12px; }
.dads-notification-banner a { color: inherit; }
.dads-notification-banner[data-type="error"] a { color: #8f3122; }

/* ===== 表（確認画面・公演の内容・控え） ===== */
.dads-table { color: var(--v5-ink); }
.dads-table__row-header { background-color: #faf5e1; color: var(--v5-ink); }
.dads-table [data-cell-border~="bottom"] :where(td, th) { border-bottom-color: var(--v5-line); }
.dads-table__row-header:last-of-type { border-right: 0; }
.dads-table__table :is(td, th) { font-size: 15px; }
.cf-no { color: var(--v5-red); }
.cf-head { align-items: center; }
/* スマホでは表の見出しと中身を縦に積む（回答フォームの確認画面も応募フォームと同じに） */
@media (max-width: 559px) {
  .cf-table tr, .cf-table th, .cf-table td { display: block; width: 100%; }
  .cf-table .dads-table__table th { border-bottom: 0; padding-top: 8px; padding-bottom: 8px; }
  .cf-table .dads-table__table td { padding-top: 8px; padding-bottom: 16px; }
}
/* 回答フォームの完了画面の連絡先（v5 の白いカード） */
.done-sub { background: #fff; border-radius: 16px; box-shadow: var(--v5-shadow); padding: 20px 22px; margin-top: 18px; color: var(--v5-ink); font-size: 15px; }

/* 折りたたみ（当日までの流れ など） */
details.dads-disclosure { border: 1.5px solid var(--v5-line); border-radius: 12px; background: var(--v5-cream-2); padding: 0 14px; }
details.dads-disclosure > summary.dads-disclosure__summary { color: var(--v5-green-deep); font-family: var(--v5-round); }
.dads-disclosure__icon { color: var(--v5-green-deep); }

/* ===== 送るところ ===== */
.submit-area { border-top: 0; margin-top: 24px; padding-top: 8px; }
.submit-area .note { font-size: 14px; color: var(--v5-ink-2); text-align: center; }
.confirm-acts { margin-top: 24px; }

/* ===== 応募フォームだけの部品 ===== */
/* 照合できた園（v5 の selected-park：薄い水色の箱） */
.found { background: var(--v5-blue-pale); border: 0; border-radius: 12px; padding: 16px 18px; }
.found h3 { font-family: var(--v5-round); font-size: 17px; color: var(--v5-green-deep); }
.kv > div { border-top: 1px dashed #c9dfe6; }
.kv dt { color: var(--v5-ink-2); font-weight: 700; }
.found .note { color: var(--v5-ink); }
.sub-box { border-top: 1px dashed var(--v5-line); }
/* 確認画面のメールアドレス・完了画面の受付番号と問い合わせ先 */
.mail-check { border: 2px solid var(--v5-green); }
.mail-check .addr { color: var(--v5-green-deep); }
.done-kv { background: #fff; border-radius: 16px; box-shadow: var(--v5-shadow); padding: 8px 22px; }
.done-kv > div:first-child { border-top: 0; }
.done-kv .rno { color: var(--v5-green-deep); font-family: var(--v5-round); }
.contact { background: var(--v5-cream-2); border: 1.5px solid var(--v5-line); border-radius: 12px; }
.contact .tel { font-family: var(--v5-round); }

@media (min-width: 768px) {
  .wrap { padding: 24px 18px 80px; }
  .page-h, .site-head h1 { font-size: 28px; }
  .sec-h, .cf-head h2, .info-sec h2 { font-size: 19px; }
  .submit-area .dads-button, .confirm-acts .dads-button { width: 100%; min-width: 0; justify-self: stretch; }
}
@media print {
  body { background: #fff; }
  .sec, .cf-sec, .info-sec, .mail-check { box-shadow: none; border: 1px solid var(--v5-line); }
  .site-badge { display: none; }
}
