/* Comparison candidate: home hero and consultation steps only. */
.visual-home .visual-hero-layout { max-width: 1080px; }
.visual-home .first-view { padding-top: 66px; padding-bottom: 58px; }
.top-page.visual-home .first-view .hero-title { width: auto; max-width: 100%; margin-bottom: 24px; }
.visual-home .hero-story-row { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 44px; align-items: center; }
.visual-home .hero-story-row .first-view-text { grid-column: 1; grid-row: 1; }
.visual-home .first-view-text p:last-child { margin-bottom: 0; }
.visual-home .hero-story-art { grid-column: 2; grid-row: 1; width: 100%; }
.visual-home .hero-story-art img { display: block; width: 100%; height: auto; }
.visual-home .step-drawing { width: 150px; height: 96px; margin: 0 0 15px; }
.visual-home .step-drawing svg { display: block; width: 100%; height: 100%; }
.top-page.visual-home #support .support-step { padding-top: 24px; }
@media (min-width: 821px) and (max-width: 1050px) {
  .visual-home .hero-story-row { gap: 26px; }
}
@media (max-width: 820px) {
  .visual-home .first-view { padding-top: 44px; padding-bottom: 44px; }
  .visual-home .hero-story-row { grid-template-columns: 1fr; gap: 18px; }
  .visual-home .hero-story-art { grid-column: 1; grid-row: 1; max-width: 380px; margin-inline: auto; }
  .visual-home .hero-story-row .first-view-text { grid-column: 1; grid-row: 2; }
  .top-page.visual-home #support .support-step { display: grid; grid-template-columns: minmax(0, 1fr) 110px; column-gap: 12px; padding-top: 0; }
  .top-page.visual-home #support .support-step + .support-step { padding-top: 27px; }
  .visual-home .step-drawing { grid-column: 2; grid-row: 1 / 3; width: 110px; height: 78px; margin: 0; align-self: center; }
  .top-page.visual-home #support .support-step-number { grid-column: 1; grid-row: 1; }
  .top-page.visual-home #support .support-step h3 { grid-column: 1; grid-row: 2; }
  .top-page.visual-home #support .support-step > p:last-child { grid-column: 1 / -1; grid-row: 3; }
}
@media (max-width: 640px) {
  .visual-home .first-view { padding-top: 28px; padding-bottom: 28px; }
  .top-page.visual-home .first-view .hero-title { margin-bottom: 16px; }
  .visual-home .hero-story-row { gap: 16px; }
  .visual-home .hero-story-art { max-width: 300px; }
  .top-page.visual-home #support .support-step { grid-template-columns: minmax(0, 1fr) 92px; column-gap: 8px; }
  .visual-home .step-drawing { width: 92px; height: 66px; }
}
@media (max-width: 360px) {
  .visual-home .hero-story-art { max-width: 256px; }
  .top-page.visual-home #support .support-step { grid-template-columns: minmax(0, 1fr) 72px; }
  .visual-home .step-drawing { width: 72px; height: 58px; }
}
