@charset "utf-8";
/* 紺の主ボタン、白い相談ボタン、橙の矢印を共通の形にする。 */
:is(.poster-page,.poster-subpage) .header-action {border-radius:999px;background:var(--brand-navy);color:var(--brand-white);border:1px solid var(--brand-navy);padding:7px 9px 7px 20px;gap:18px;min-height:48px;font-weight:700}
:is(.poster-page,.poster-subpage) .header-action::after {content:"↗";display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand-orange);color:var(--brand-navy);font:20px/1 Arial,sans-serif;flex:none}
:is(.poster-page,.poster-subpage) .header-action:hover {background:var(--brand-muted);color:var(--brand-white);border-color:var(--brand-muted)}
.poster-page .poster-primary {min-height:64px;border-radius:999px;padding:8px 8px 8px 28px;gap:40px;background:var(--brand-navy);border-color:var(--brand-navy);color:var(--brand-white);box-shadow:0 5px 0 rgba(11,36,71,.08)}
.poster-page .poster-primary span {display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:50%;background:var(--brand-orange);color:var(--brand-navy);font:26px/1 Arial,sans-serif}
.poster-page .poster-primary:hover {background:var(--brand-muted);border-color:var(--brand-muted);color:var(--brand-white)}
.poster-page .scene-consult {display:inline-flex;align-items:center;justify-content:space-between;max-width:100%;min-height:54px;margin:28px 0 0;padding:8px 8px 8px 20px;gap:24px;border:1px solid #A7B5C8;border-radius:999px;background:var(--brand-white);color:var(--brand-navy);font-size:16px;text-decoration:none;line-height:1.6;white-space:normal;min-width:0}
.poster-page .scene-consult::after {content:"↗";display:grid;place-items:center;width:36px;height:36px;flex:none;margin:0;border-radius:50%;background:var(--brand-orange);color:var(--brand-navy);font:23px/1 Arial,sans-serif}
.poster-page .scene-consult:hover {background:var(--brand-navy);color:var(--brand-white);border-color:var(--brand-navy)}
.poster-page .scene-actions {justify-content:center;margin-top:40px}
.poster-page .scene-actions .btn-primary {display:inline-flex;align-items:center;justify-content:space-between;max-width:100%;min-height:60px;padding:10px 10px 10px 26px;gap:28px;border:1px solid var(--brand-navy);border-radius:999px;background:var(--brand-navy);color:var(--brand-white);font-size:16px;white-space:normal;line-height:1.7;text-align:left}
.poster-page .scene-actions .btn-primary::after {content:"↗";display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--brand-orange);color:var(--brand-navy);font:24px/1 Arial,sans-serif}
.poster-page .scene-actions .btn-primary:hover {background:var(--brand-muted);border-color:var(--brand-muted)}
.poster-page #contact-band {padding:32px 0 56px;background:var(--brand-white)}
.poster-page #contact-band .container {max-width:1240px;padding-inline:48px}
.poster-page .cta-card {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;padding:44px 48px;background:var(--brand-pale);border:1px solid #D6DFEB;border-radius:28px}
.poster-page .cta-card h2 {font-size:clamp(28px,3.5vw,44px);line-height:1.5}
.poster-page .cta-card p {margin-top:18px;font-size:17px;max-width:42em}
.poster-page .cta-card__go {display:grid;place-items:center;width:84px;height:84px;margin:0;border-radius:50%;background:var(--brand-orange);border:0}
.poster-page .cta-card__go svg {width:34px;height:28px;stroke:var(--brand-navy)}
.poster-page .cta-card:hover {background:var(--brand-pale);border-color:var(--brand-navy);color:var(--brand-navy)}
.poster-page .cta-card:hover .cta-card__go {background:var(--brand-navy)}
.poster-page .cta-card:hover .cta-card__go svg {stroke:var(--brand-white)}
.poster-dock {padding:5px;gap:4px;border:1px solid #D6DFEB;border-radius:999px;background:var(--brand-white);color:var(--brand-navy);box-shadow:0 8px 28px rgba(11,36,71,.12)}
.poster-dock :is(button,a,summary) {min-height:48px;padding:10px 14px;border-radius:999px;color:var(--brand-navy)}
.poster-dock :is(button,a,summary):hover {background:var(--brand-pale)}
.poster-dock :is(button,a,summary):focus-visible {outline:2px solid var(--brand-navy);outline-offset:2px}
.poster-toc summary span:first-child,.poster-motion-icon {color:var(--brand-navy)}
.poster-dock .poster-dock-consult {background:var(--brand-navy);color:var(--brand-white);border:0;padding:7px 8px 7px 18px;gap:14px}
.poster-dock .poster-dock-consult span {display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--brand-orange);color:var(--brand-navy);font-size:22px}
.poster-dock .poster-dock-consult:hover {background:var(--brand-muted);color:var(--brand-white)}
.poster-toc-links {background:var(--brand-white);border:1px solid #D6DFEB;border-radius:18px;box-shadow:0 8px 28px rgba(11,36,71,.12);padding:8px;bottom:calc(100% + 14px)}
.poster-dock .poster-toc-links a {border-radius:10px;color:var(--brand-navy)}
.poster-subpage .form-submit,.poster-subpage .btn-primary {border-radius:999px;background:var(--brand-navy);color:var(--brand-white);border-color:var(--brand-navy)}
.poster-subpage .form-submit:hover,.poster-subpage .btn-primary:hover {background:var(--brand-muted);color:var(--brand-white);border-color:var(--brand-muted)}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  :is(.poster-primary,.scene-consult,.scene-actions .btn-primary,.header-action) {transition:background-color 180ms,border-color 180ms,color 180ms}
  :is(.poster-primary span,.scene-consult::after,.scene-actions .btn-primary::after,.header-action::after) {transition:transform 180ms}
  :is(.poster-primary:hover span,.scene-consult:hover::after,.scene-actions .btn-primary:hover::after,.header-action:hover::after) {transform:translate(2px,-2px)}
}
@media(min-width:1024px) and (max-width:1199px) {
  .poster-page .header-action {gap:10px;padding-left:16px}
}
@media(max-width:1023px) {
  .poster-page #contact-band .container {padding-inline:32px}
  .poster-page .cta-card {padding:36px 32px;gap:28px}
}
@media(max-width:639px) {
  .poster-page .poster-primary {justify-content:space-between;padding-left:26px;gap:20px}
  .poster-page .scene-consult {margin-top:0;align-self:flex-start;min-height:54px;gap:16px;padding-left:16px}
  .poster-page .scene-actions {margin-top:28px}
  .poster-page .scene-actions .btn-primary {border-radius:24px;padding-left:20px;gap:14px}
  .poster-page #contact-band {padding:20px 0 36px}
  .poster-page #contact-band .container {padding-inline:24px}
  .poster-page .cta-card {padding:28px 24px;border-radius:24px;display:block}
  .poster-page .cta-card h2 {font-size:30px}
  .poster-page .cta-card p {font-size:16px}
  .poster-page .cta-card__go {width:60px;height:60px;margin:24px 0 0 auto}
  .poster-dock {padding:4px;gap:2px;left:10px;right:10px}
  .poster-dock :is(button,a,summary) {min-height:48px;padding:10px;font-size:16px;gap:6px}
  .poster-toc summary {width:42px}
  .poster-dock .poster-dock-consult {padding:7px 6px 7px 12px;gap:10px}
  .poster-dock .poster-dock-consult span {width:28px;height:28px;font-size:20px}
}
