/* TOPで採用されている紫色と書体を、devの指定ページだけに適用します。 */
body.page-id-4591.wp-child-theme-oltana-002-child {
  --um-text: #292740;
  --um-text-secondary: #494759;
  --um-text-tertiary: #635f74;
  --um-bg: #fff;
  --um-bg-alt: #f3f1f8;
  --um-bg-dark: #37357a;
  --um-aa-line: #e2dfee;
  background: #faf9fd !important;
  color: var(--um-text);
  font-family: "Zen Maru Gothic UMK", "Noto Sans JP", sans-serif;
}
body.page-id-4591 .um-aa,
body.page-id-4591.ol-oswald .ol-font-en {
  font-family: "Zen Maru Gothic UMK", "Noto Sans JP", sans-serif;
}
body.page-id-4591 button,
body.page-id-4591 input { font-family: inherit; }
body.page-id-4591 #olHeader { font-family: inherit; }
body.page-id-4591 .ol-dual-heading-wrap { color: #37357a; }

/* TOPと同じ白いピル型ナビゲーションです。 */
@media (min-width: 1024px) {
  body.page-id-4591 #olHeader .custom-global-nav .custom-global-nav-list {
    background: rgba(255,255,255,.88) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border-radius: 40px !important;
  }
}
@media (max-width: 1023px) {
  body.page-id-4591 #umMobileMenu {
    top: 80px;
    height: calc(100vh - 80px);
    height: calc(100dvh - 80px);
    max-height: calc(100dvh - 80px);
  }
}

body.page-id-4591 .um-aa {
  background: #fff;
  color: var(--um-text);
}
body.page-id-4591 .um-aa-hero {
  background: radial-gradient(ellipse at 79% 46%,#e9e8f4 0%,#f4f3fa 33%,transparent 65%),
    linear-gradient(120deg,#fff 5%,#fbfafc 65%,#f5f4fa 100%);
  color: #37357a;
}
body.page-id-4591 .um-aa-hero-title { color: #37357a; }
body.page-id-4591 .um-aa-hero-desc { color: #494759; }
body.page-id-4591 .um-aa-hero-domains li {
  border-color: #c9c5df;
  background: rgba(255,255,255,.7);
  color: #37357a;
}
body.page-id-4591 .um-aa-hero-usp {
  background: #e9e6f3;
  color: #37357a;
}
body.page-id-4591 .um-aa-btn-pill {
  background: #37357a;
  color: #fff;
  font-weight: 700;
  border: 1px solid transparent;
}
body.page-id-4591 .um-aa-btn-pill:hover { background: #29275e; opacity: 1; }
body.page-id-4591 .um-aa a:focus-visible,
body.page-id-4591 .um-aa summary:focus-visible {
  outline: 3px solid #7772b1;
  outline-offset: 5px;
}
body.page-id-4591 .um-aa-section { background: #fff; }
body.page-id-4591 .um-aa-section-alt,
body.page-id-4591 .um-aa-benefits { background: #f3f1f8; }
body.page-id-4591 .um-aa-section-num,
body.page-id-4591 .um-aa-section-title,
body.page-id-4591 .um-aa-problem-heading,
body.page-id-4591 .um-aa-gap-title,
body.page-id-4591 .um-aa-mechanism-title,
body.page-id-4591 .um-aa-why-title,
body.page-id-4591 .um-aa-tech-title,
body.page-id-4591 .um-aa-process-title,
body.page-id-4591 .um-aa-app-title { color: #37357a; }
body.page-id-4591 .um-aa-section-title-ja { color: #292740; }
body.page-id-4591 .um-aa-problem-card {
  background: #f6f5fa;
  border: 1px solid #e2dfee;
  border-radius: 18px;
}
body.page-id-4591 .um-aa-gap-card,
body.page-id-4591 .um-aa-app-card,
body.page-id-4591 .um-aa-voice-card {
  background: #fff;
  border: 1px solid #e2dfee;
  border-radius: 18px;
}
body.page-id-4591 .um-aa-mechanism-divider { background: #d5d0e7; }
body.page-id-4591 .um-aa-record {
  background: #f6f5fa;
  border: 1px solid #e2dfee;
  border-radius: 18px;
}
body.page-id-4591 .um-aa-record-tag { background: #e9e6f3; color: #37357a; }
body.page-id-4591 .um-aa-record-title,
body.page-id-4591 .um-aa-metric-value,
body.page-id-4591 .um-aa-record-dl dt { color: #37357a; }
body.page-id-4591 .um-aa-metric { border: 1px solid #e2dfee; border-radius: 14px; }
body.page-id-4591 .um-aa-metric-detail,
body.page-id-4591 .um-aa-voice-role { color: #635f74; }
body.page-id-4591 .um-aa-record-quote { background: #eeebf6; border-left-color: #7772b1; }
body.page-id-4591 .um-aa-benefit-text { color: #37357a; white-space: normal; }
body.page-id-4591 .um-aa-app-list li::before { color: #7772b1; }
body.page-id-4591 .um-aa-voice-quote,
body.page-id-4591 .um-aa-voice-who,
body.page-id-4591 .um-aa-faq-answer { color: #494759; }
body.page-id-4591 .um-aa-why-card,
body.page-id-4591 .um-aa-tech-block,
body.page-id-4591 .um-aa-process-step,
body.page-id-4591 .um-aa-voice-meta { border-color: #e2dfee; }
body.page-id-4591 .um-aa-process-num { color: #7772b1; }
body.page-id-4591 .um-aa-faq details {
  margin-bottom: 12px;
  border: 1px solid #e2dfee;
  border-radius: 12px;
  overflow: hidden;
}
body.page-id-4591 .um-aa-faq summary { color: #37357a; border-radius: 12px; }
body.page-id-4591 .um-aa-faq summary::after { color: #37357a; }
body.page-id-4591 .um-aa-faq summary:hover { background: #eeebf6; }
body.page-id-4591 .um-aa-footer-cta { background: #37357a; }
body.page-id-4591 .um-aa-footer-title { color: #fff; }
body.page-id-4591 .um-aa-footer-desc { color: #eeecf7; }
body.page-id-4591 .um-aa-footer-cta .um-aa-btn-pill { background: #fff; color: #37357a; }
body.page-id-4591 .um-aa-footer-cta .um-aa-btn-pill-inv {
  background: transparent;
  color: #fff;
  border-color: #b7b2d7;
}
@media (max-width: 480px) {
  body.page-id-4591 .um-aa-benefit { align-items: flex-start; }
  body.page-id-4591 .um-aa-benefit-grid { gap: 20px 14px; }
  body.page-id-4591 .um-aa-hero-title { font-size: clamp(24px,6.15vw,29px); }
}
