@charset "UTF-8";
.akiya-lp {
  --ak-ink: #203449;
  --ak-blue: #17618a;
  --ak-blue-dark: #124b6b;
  --ak-soft: #eef6f8;
  --ak-line: #cfe0e7;
  --ak-accent: #a9661f;
  color: var(--ak-ink);
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 1.85;
  max-width: 960px;
  margin: 0 auto;
  overflow-wrap: anywhere;
}
.akiya-lp, .akiya-lp * { box-sizing: border-box; }
.akiya-lp h1, .akiya-lp h2, .akiya-lp h3 { color: #183a54 !important; line-height: 1.45; }
.akiya-lp h1 { margin: 10px 0 18px; font-size: clamp(30px, 5vw, 48px); letter-spacing: .02em; }
.akiya-lp h2 { margin: 0 0 20px; font-size: clamp(24px, 3.5vw, 32px); }
.akiya-lp h3 { margin: 0 0 9px; font-size: 20px; }
.akiya-lp p { margin: 0 0 16px; }
.akiya-lp a { color: var(--ak-blue-dark); }
.akiya-section, .akiya-hero, .akiya-footer { padding: 58px 30px; }
.akiya-hero { background: linear-gradient(145deg, #e5f1f6, #fff); border-radius: 18px; }
.akiya-eyebrow { margin-bottom: 6px !important; color: #416b85; font-size: 14px; font-weight: 700; letter-spacing: .08em; }
.akiya-lead { font-size: clamp(18px, 2.6vw, 23px); font-weight: 700; }
.akiya-sub, .akiya-small { color: #526b7b; font-size: 13px; }

/* SIRIUS2テンプレートのリンク指定を上書きする、ファーストビュー専用ボタン */
.akiya-lp .akiya-hero-buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 22px 0 0 !important;
}
.akiya-lp .akiya-hero-buttons a.akiya-hero-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 10px 8px !important;
  border: 2px solid var(--ak-blue) !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-align: center !important;
  text-decoration: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.akiya-lp .akiya-hero-buttons a.akiya-hero-btn--primary { background: var(--ak-blue) !important; color: #fff !important; }
.akiya-lp .akiya-hero-buttons a.akiya-hero-btn--outline { background: #fff !important; color: var(--ak-blue-dark) !important; }
.akiya-lp .akiya-hero-buttons a.akiya-hero-btn:hover { filter: brightness(.94); }
.akiya-lp a:focus-visible, .akiya-lp button:focus-visible { outline: 3px solid #e5a74b; outline-offset: 3px; }

.akiya-section--soft { background: var(--ak-soft); }
.akiya-stat-panel { margin: 22px 0; padding: 23px 26px; background: #f5fafc; border-left: 5px solid #76a8bf; }
.akiya-stat-number { margin: 0 !important; color: var(--ak-blue-dark); font-size: clamp(37px, 6vw, 58px); font-weight: 800; line-height: 1.1; }
.akiya-stat-number span { font-size: .48em; }
.akiya-stat-caption { margin: 8px 0 0 !important; }
.akiya-lp .akiya-options-list { display: flex !important; flex-wrap: wrap !important; align-items: stretch !important; gap: 18px !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
/* SIRIUS2テーマのclearfix疑似要素をレイアウト要素にしない */
.akiya-lp .akiya-options-list::before,
.akiya-lp .akiya-options-list::after {
  content: none !important;
  display: none !important;
}
.akiya-lp .akiya-options-list > .akiya-card { flex: 0 0 calc(50% - 9px) !important; width: calc(50% - 9px) !important; min-width: 0 !important; margin: 0 !important; float: none !important; }
.akiya-card { padding: 22px; background: #fff; border: 1px solid var(--ak-line); border-radius: 13px; }
.akiya-card p { margin-bottom: 0; }
.akiya-note { position: relative; margin-top: 22px; padding: 17px 20px; background: #fff8df; border-left: 4px solid #d19a47; }
.akiya-term { position: relative; display: inline; padding: 0; border: 0; border-bottom: 2px dotted var(--ak-accent); background: transparent; color: inherit; font: inherit; font-weight: 700; cursor: help; }
.akiya-term::after { content: attr(data-note); position: absolute; z-index: 30; left: 0; bottom: calc(100% + 9px); display: none; width: min(290px, 76vw); padding: 12px 14px; background: #fff4c9; border: 1px solid #cfb366; border-radius: 6px; color: #332d20; font-size: 13px; font-weight: 400; line-height: 1.65; text-align: left; box-shadow: 0 8px 20px #0003; }
.akiya-term:hover::after, .akiya-term:focus::after { display: block; }
.akiya-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.akiya-steps { margin: 0; padding: 0; list-style: none; counter-reset: ak-step; }
.akiya-steps li { position: relative; padding: 0 0 22px 52px; counter-increment: ak-step; }
.akiya-steps li::before { content: counter(ak-step); position: absolute; left: 0; top: 1px; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #d9ebf1; color: var(--ak-blue-dark); font-weight: 800; }
.akiya-steps strong, .akiya-steps span { display: block; }
.akiya-steps .akiya-term { display: inline; }
.akiya-action { margin-top: 24px !important; }
.akiya-lp a.akiya-wide-btn { display: block !important; width: 100% !important; padding: 14px 18px !important; border-radius: 9px !important; background: var(--ak-blue) !important; color: #fff !important; font-weight: 700 !important; text-align: center !important; text-decoration: none !important; }
.akiya-footer { margin-top: 0; background: #e8f1f5; color: #405666; font-size: 13px; }
.akiya-footer p:last-child { margin-bottom: 0; }

@media (max-width: 640px) {
  .akiya-lp { font-size: 15.5px; }
  .akiya-section, .akiya-hero, .akiya-footer { padding: 42px 17px; }
  .akiya-hero { border-radius: 12px; }
  .akiya-lp .akiya-options-list { gap: 13px !important; }
  /* SIRIUS2のプレビュー幅でも、選択肢カードは2列を維持 */
  .akiya-lp .akiya-options-list > .akiya-card { flex-basis: calc(50% - 6.5px) !important; width: calc(50% - 6.5px) !important; padding: 15px !important; }
  .akiya-lp .akiya-options-list > .akiya-card h3 { font-size: 18px !important; }
  .akiya-card { padding: 18px; }
  .akiya-lp .akiya-hero-buttons { gap: 7px !important; }
  .akiya-lp .akiya-hero-buttons a.akiya-hero-btn { min-height: 46px !important; padding: 8px 4px !important; font-size: 12px !important; }
  .akiya-term::after { width: min(290px, calc(100vw - 34px)); }
}
@media (max-width: 360px) { .akiya-lp .akiya-hero-buttons a.akiya-hero-btn { font-size: 11px !important; } }
@media (prefers-reduced-motion: reduce) { .akiya-lp * { scroll-behavior: auto !important; } }