@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&family=Noto+Sans+JP:wght@400;500;700;900&family=Inter:wght@400;600;800&display=swap');

/* アクアリピュア400 申込フォーム（新潟仕送り部）
   配色：焦茶 #3d2717 ／ 水色 #1a7ba8 ／ 濃い青 #12597b ／ 生成り #fbf5e9 ／ 枠 #cfe0ea
   書体：見出し・ボタン Zen Maru Gothic ／ 本文 Noto Sans JP ／ 数字 Inter
   ※ お守りスターブレッドのフォーム（.sk-）とは別のクラス名です。混ざりません。 */

.aq-page{--ink:#3d2717;--accent:#1a7ba8;--deep:#12597b;--cream:#f2f8fb;--line:#cfe0ea;--muted:rgba(61,39,23,.66);
  font-family:"Noto Sans JP",system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  color:var(--ink);line-height:1.9;background:#fff;max-width:940px;margin:0 auto}
.aq-page *{box-sizing:border-box}
.aq-page [hidden]{display:none!important}
.aq-page h1,.aq-page h2,.aq-page h3{line-height:1.45;margin:0;font-family:"Zen Maru Gothic","Noto Sans JP",sans-serif}
.aq-page p{margin:0}
.aq-page a{color:var(--accent);text-decoration:underline}
.aq-page a:hover{color:var(--deep)}

.aq-band{height:8px;background:linear-gradient(90deg,#12597b,#1a7ba8,#8fd6f5,#1a7ba8,#12597b)}

.aq-hero{background:var(--cream)}
.aq-hero-in{padding:30px 22px 28px}
.aq-badge{display:inline-block;background:var(--accent);color:#fff;font:800 11.5px "Zen Maru Gothic",sans-serif;
  padding:6px 15px;border-radius:999px;line-height:1.6}
.aq-h1{margin-top:12px;font-size:clamp(21px,4.2vw,32px);font-weight:900}
.aq-hero-p{margin-top:12px;font-size:13.5px;color:var(--muted);max-width:660px}

.aq-body{padding:26px 22px 60px}

.aq-steps{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.aq-step{display:flex;align-items:center;gap:8px}
.aq-step-n{width:26px;height:26px;border-radius:50%;background:rgba(61,39,23,.14);color:rgba(61,39,23,.45);
  font:800 12px Inter,sans-serif;display:flex;align-items:center;justify-content:center;flex:none}
.aq-step-t{font-size:12.5px;font-weight:700;color:rgba(61,39,23,.45)}
.aq-step.is-on .aq-step-n{background:var(--accent);color:#fff}
.aq-step.is-on .aq-step-t{color:var(--ink);font-weight:800}
.aq-step-bar{flex:none;width:26px;height:2px;background:var(--line)}
.aq-step-sp{flex:1}
.aq-step-note{font-size:11.5px;font-weight:700;color:var(--muted)}

.aq-noscript{background:#fdf1f2;border:1.5px solid rgba(192,57,43,.4);border-radius:12px;padding:16px 18px;font-size:13px;margin-bottom:20px}

.aq-head{border:2.5px solid var(--line);background:var(--cream);border-radius:18px;padding:20px 22px;margin-bottom:24px}
.aq-head-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.aq-head-title{font:900 18px "Zen Maru Gothic",sans-serif;color:var(--ink)}
.aq-chip{display:inline-block;background:var(--accent);color:#fff;font:800 11px "Zen Maru Gothic",sans-serif;
  padding:4px 11px;border-radius:6px;line-height:1.6}
.aq-head-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:14px}
.aq-head-cell{background:#fff;border-radius:12px;padding:12px 14px}
.aq-head-k{font-size:10.5px;font-weight:800;letter-spacing:.08em;color:var(--accent)}
.aq-head-v{font:800 15px Inter,sans-serif;margin-top:3px;color:var(--ink)}
.aq-head-v--s{font:800 13.5px "Zen Maru Gothic",sans-serif}
.aq-head-note{font-size:11.5px;color:var(--muted);margin-top:12px}

.aq-sec{font:900 16px "Zen Maru Gothic",sans-serif;border-left:6px solid var(--accent);padding-left:12px;margin:34px 0 14px}
.aq-lead{font-size:12.5px;color:var(--muted);margin-bottom:14px}

.aq-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.aq-grid-zip{display:grid;grid-template-columns:170px 1fr;gap:16px}
@media(max-width:520px){.aq-grid-zip{grid-template-columns:1fr}}

.aq-field{margin-bottom:18px}
.aq-label{font:800 12.5px "Zen Maru Gothic",sans-serif;margin-bottom:6px}
.aq-req{color:#c0392b}
.aq-help{font-size:11.5px;color:var(--muted);margin-bottom:6px;line-height:1.8}
.aq-box{background:var(--cream);border:1.5px solid var(--line);border-radius:14px;padding:16px 18px}
.aq-must{display:inline-block;background:#c0392b;color:#fff;font:800 10.5px "Noto Sans JP",sans-serif;
  letter-spacing:.06em;padding:3px 9px;border-radius:5px;line-height:1.6;margin-bottom:9px}

.aq-page input[type=text],.aq-page input[type=email],.aq-page input[type=tel],
.aq-page input[type=number],.aq-page select,.aq-page textarea{
  width:100%;padding:13px 14px;border:2px solid var(--line);border-radius:11px;
  font:500 15px "Noto Sans JP",sans-serif;background:#fff;color:var(--ink);line-height:1.7}
.aq-page textarea{line-height:1.9}
.aq-page input:focus,.aq-page select:focus,.aq-page textarea:focus{outline:2px solid rgba(26,123,168,.55);outline-offset:1px}

/* 個数の選択だけ、大きく太く */
.aq-qty-field select{font:800 19px Inter,"Zen Maru Gothic",sans-serif;max-width:220px;padding:14px 14px}

/* 選択肢はボタン型 */
.aq-page .wpcf7-list-item{display:block;margin:0 0 9px}
.aq-page .wpcf7-list-item label{display:flex;gap:11px;align-items:flex-start;cursor:pointer;
  background:#fff;border:2.5px solid var(--line);border-radius:13px;padding:14px 17px;
  font-size:14px;line-height:1.8;transition:border-color .12s ease,background .12s ease}
.aq-page .wpcf7-list-item label:hover{border-color:rgba(26,123,168,.7)}
.aq-page .wpcf7-list-item label:has(input:checked){border-color:var(--accent);background:#e8f3f9}
.aq-page .wpcf7-list-item input{margin-top:4px;flex:none;width:18px;height:18px;accent-color:var(--accent)}

/* 合計金額の表示 */
.aq-total{margin:6px 0 20px;border:3px solid var(--accent);border-radius:16px;background:#fff;overflow:hidden}
.aq-total-h{background:var(--accent);color:#fff;font:900 12.5px "Zen Maru Gothic",sans-serif;padding:8px 18px;letter-spacing:.04em}
.aq-total-in{padding:14px 18px 16px}
.aq-total-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:5px 0;color:var(--muted)}
.aq-total-row b{font-weight:700;color:var(--ink)}
.aq-total-sum{display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  border-top:2px dashed var(--line);margin-top:8px;padding-top:12px}
.aq-total-sum span{font:900 14px "Zen Maru Gothic",sans-serif}
.aq-total-sum b{font:800 30px Inter,sans-serif;color:#c0392b;letter-spacing:.01em}
.aq-total-sum b small{font:900 15px "Zen Maru Gothic",sans-serif;margin-left:2px}
.aq-total-note{font-size:11.5px;color:var(--muted);margin-top:10px;line-height:1.85}

.aq-note-box{margin-bottom:16px}
.aq-note-h{font:900 13px "Zen Maru Gothic",sans-serif;color:var(--accent);margin-bottom:8px}
.aq-note-box p{font-size:12.5px;line-height:1.95;color:var(--muted)}
.aq-note-box p + p{margin-top:10px}
.aq-note-box b{color:var(--ink)}

.aq-hp-wrap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.aq-actions{margin-top:30px}
.aq-btn{display:inline-block;border:none;border-radius:14px;padding:17px 32px;
  font:900 15px "Zen Maru Gothic",sans-serif;cursor:pointer;text-decoration:none;line-height:1.5;text-align:center}
.aq-btn--go{background:#b8570c;color:#fff;box-shadow:0 6px 18px rgba(184,87,12,.28);width:100%}
.aq-btn--ghost{background:#fff;color:var(--ink);border:2px solid var(--line)}
.aq-btn--ghost:hover{border-color:rgba(61,39,23,.4)}
.aq-page .wpcf7-submit{-webkit-appearance:none;appearance:none}

.aq-errs{background:#fdf1f2;border:2px solid rgba(192,57,43,.4);border-radius:14px;padding:16px 18px;margin:20px 0}
.aq-errs-h{font:800 13px "Zen Maru Gothic",sans-serif;color:#c0392b;margin-bottom:4px}
.aq-errs li{font-size:12.5px;font-weight:700;color:#c0392b;line-height:1.9;margin-left:1.1em}
.aq-field.is-err input,.aq-field.is-err select,.aq-field.is-err textarea{border-color:#c0392b;background:#fffafa}
.aq-field.is-err .wpcf7-list-item label{border-color:#c0392b}

.aq-review-body{border-top:1.5px solid var(--line)}
.aq-rv{display:grid;grid-template-columns:14em 1fr;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line)}
@media(max-width:640px){.aq-rv{grid-template-columns:1fr;gap:2px}}
.aq-rv-k{font:800 12.5px "Zen Maru Gothic",sans-serif;color:var(--muted)}
.aq-rv-v{font-size:13.5px;font-weight:500;word-break:break-word}
.aq-rv-none{color:rgba(61,39,23,.38)}
.aq-review-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px;align-items:center}
.aq-review-actions .aq-btn--go{width:auto;flex:1 1 240px}

.aq-done{padding:10px 0}
.aq-done-in{border:2.5px solid #2c7a4b;background:#eaf5ee;border-radius:18px;padding:30px 26px;text-align:center}
.aq-done-mark{width:52px;height:52px;border-radius:50%;background:#2c7a4b;color:#fff;font-size:26px;
  display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.aq-done-h{font:900 20px "Zen Maru Gothic",sans-serif;color:#2c7a4b}
.aq-done-p{font-size:13px;color:var(--muted);margin-top:10px}
.aq-done-bango{margin-top:16px;font-size:14px;font-weight:700}
.aq-done-bango b{font:800 20px Inter,sans-serif;letter-spacing:.04em}
.aq-done-next{margin-top:16px;font-size:13px;text-align:left;max-width:560px;margin-left:auto;margin-right:auto;
  background:#fff;border-radius:12px;padding:16px 18px;line-height:1.95}
.aq-done-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}

.aq-foot{margin-top:56px;border-top:2px solid var(--line);padding-top:28px}
.aq-foot-h{font:900 15px "Zen Maru Gothic",sans-serif}
.aq-foot-p{font-size:12.5px;color:var(--muted);margin-top:8px}
.aq-foot-contact{margin-top:20px;background:var(--cream);border-radius:14px;padding:16px 18px;font-size:12.5px;line-height:2}
.aq-foot-small{color:var(--muted)}

@media print{
  body *{visibility:hidden}
  .aq-page .aq-review,.aq-page .aq-review *,
  .aq-page .aq-done,.aq-page .aq-done *{visibility:visible}
  .aq-page .aq-review{position:absolute;left:0;top:0;width:100%}
  .aq-review-actions,.aq-done-actions{display:none!important}
}

/* ===== このページ専用のヘッダー・フッター ===== */
body.fmsa-order-page header.wp-block-template-part,
body.fmsa-order-page footer.wp-block-template-part,
body.fmsa-order-page .wp-site-blocks > header,
body.fmsa-order-page .wp-site-blocks > footer{display:none!important}
body.fmsa-order-page .wp-site-blocks{padding-top:0!important;margin-top:0!important}
body.fmsa-order-page .wp-block-post-title{display:none!important}

.aq-topbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.aq-topbar-in{max-width:940px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:10px 20px}
.aq-logo{display:block;width:46px;height:46px;flex:none;border-radius:50%;
  background:url(logo-round.png) center/contain no-repeat}
.aq-topbar-t{font:900 15px "Zen Maru Gothic",sans-serif;color:var(--ink);line-height:1.4;flex:1}
.aq-topbar-s{font-size:11.5px;font-weight:700;color:var(--muted);text-align:right;line-height:1.5}
@media(max-width:520px){.aq-topbar-s{display:none}}

.aq-sitefoot{background:#3d2717;color:#fff;margin-top:48px}
.aq-sitefoot-in{max-width:940px;margin:0 auto;padding:30px 22px 34px}
.aq-sitefoot-org{font:900 16px "Zen Maru Gothic",sans-serif;color:#fff}
.aq-sitefoot-sub{font-size:12px;color:rgba(255,255,255,.72);margin-top:4px}
.aq-sitefoot-nav{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px}
.aq-sitefoot-nav a{font:700 12.5px "Zen Maru Gothic",sans-serif;color:#fff;text-decoration:none}
.aq-sitefoot-nav a:hover{color:#8fd6f5;text-decoration:underline}
.aq-sitefoot-c{font-size:11px;color:rgba(255,255,255,.55);margin-top:20px}
