/* MIEKATA 細部の基準（全ページ。2026-10-23 吉田さんの改修指示書「細部の基準」）
   - ボタンは3種類だけ：主（朱の塗り）・副（線）・文字リンク。高さ PC 52px／スマホ 48px、角丸 999px
     主は mcta-btn・mtp-btn（cta.css・home.css）。ここでは古い部品（button・primary128・cf176 など）を同じ形にそろえる
   - カードは角丸 12px。線か影のどちらか一方（古い部品の角丸 20px をそろえる）
   - 古い CSS（:not(#a255)×12 など）に負けないよう、:is(#m×13, *) で強くする */

:root {
  --mdt-ink: var(--ds-ink, #1b1e2b);
  --mdt-blue: var(--ds-blue, #2448d8);
  --mdt-cta: var(--ds-cta, #bf5139);
  --mdt-cta-hover: var(--ds-cta-dk, #a8452f);
  --mdt-pale: var(--ds-pale, #f4f7fc);
  --mdt-white: #fff;
}

/* 副ボタン（線） */
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button:not(.primary128), a.wk175-site, button.bk155-reset) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  height: 52px !important;
  min-height: 0 !important;
  padding: 0 28px !important;
  border: 1px solid var(--mdt-ink) !important;
  border-radius: 999px !important;
  background: var(--mdt-white) !important;
  box-shadow: none !important;
  color: var(--mdt-ink) !important;
  font: 700 15px/1 'Noto Sans JP', sans-serif !important;
  letter-spacing: .04em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button:not(.primary128), a.wk175-site, button.bk155-reset):hover { background: var(--mdt-pale) !important; }
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main a.button:not(.primary128) .cta-icon128 { width: 18px !important; height: 18px !important; border: 0 !important; background: none !important; }

/* 主ボタン（朱の塗り）：古い部品 */
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button.primary128, button.cf176-next, button.cf176-send) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  height: 52px !important;
  min-height: 0 !important;
  padding: 0 28px 0 32px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--mdt-cta) !important;
  box-shadow: none !important;
  color: var(--mdt-white) !important;
  font: 700 16px/1 'Noto Sans JP', sans-serif !important;
  letter-spacing: .06em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button.primary128, button.cf176-next, button.cf176-send):hover { background: var(--mdt-cta-hover) !important; }
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main a.button.primary128 :is(.cta-label128, .cta-icon128, svg, path) { color: inherit !important; background: none !important; border: 0 !important; }
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main a.button.primary128 .cta-icon128 { width: 18px !important; height: 18px !important; }
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button, a.wk175-site, button.bk155-reset, button.cf176-next, button.cf176-send):focus-visible { outline: 2px solid var(--mdt-blue) !important; outline-offset: 3px !important; }

/* カードの角丸は 12px */
html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(.wk175-before, .wk175-step, .mon224-card, .mon224-calc, .price-panel, .cf154-chart, .cf154-sum-item, .ex163-card, .mo165, .bk155, .bk155-base, .bk155-stack, .bk155-stage, .bk155-total, .cf176, .term185, .b158-blog, .m243-simcta) {
  border-radius: 12px !important;
}

@media (max-width: 767px) {
  html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button, a.wk175-site, button.bk155-reset, button.cf176-next, button.cf176-send) { height: 48px !important; }
  html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main .page-hero { padding: 40px 0 !important; }
  html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main .crumb { padding-top: 16px !important; padding-bottom: 8px !important; }
}
@media (prefers-reduced-motion: reduce) {
  html body:is(#m#m#m#m#m#m#m#m#m#m#m#m#m, *) main :is(a.button, a.wk175-site, button.bk155-reset) { transition: none !important; }
}
