/* ファーストビュー：パソコンの専用寸法と配置。スマホの変更は../responsive.css。 */
:where([data-section="hero"][data-ui="sui"]) .hero__scroll-line {
  --scroll-cue-x: 0%;
  --scroll-cue-y: 220%;
  position: relative;
  overflow: hidden;
  height: var(--size-scroll-line);
  width: var(--size-line);
  background: var(--color-shade);
}

:where([data-section="hero"][data-ui="sui"]).hero {
  min-height: var(--size-hero-height);
  color: var(--color-on-primary);
}

:where([data-section="hero"][data-ui="sui"]) .hero__media {
  position: absolute;
  inset: 0;
}

:where([data-section="hero"][data-ui="sui"]) .hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, var(--color-shade-strong), var(--color-shade-strong) var(--size-hero-shade), var(--color-transparent) calc(var(--size-hero-shade) * 2)), linear-gradient(90deg, var(--color-shade), var(--color-transparent));
}

:where([data-section="hero"][data-ui="sui"]) .hero__media img {
  object-position: 50% 50%;
}

:where([data-section="hero"][data-ui="sui"]) .hero__inner {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: var(--size-hero-height);
  padding-block: var(--space-hero);
}

:where([data-section="hero"][data-ui="sui"]) .hero__copy {
  max-width: var(--size-hero-copy);
}

:where([data-section="hero"][data-ui="sui"]) .hero__title {
  font-family: var(--font-title);
  font-size: var(--font-size-hero-title);
  font-weight: var(--weight-heading);
  line-height: var(--line-hero-title);
  letter-spacing: var(--track-heading);
}

:where([data-section="hero"][data-ui="sui"]) .hero__lead {
  margin-block: var(--space-stack);
  font-size: var(--font-size-lead);
}

:where([data-section="hero"][data-ui="sui"]) .hero__scroll {
  position: absolute;
  inset-inline-end: 0;
  inset-block-end: var(--space-hero);
  display: grid;
  justify-items: center;
  gap: var(--space-small);
  font-family: var(--font-latin);
  font-size: var(--font-size-small);
  letter-spacing: var(--track-eyebrow);
  text-decoration: none;
}

:where([data-section="hero"][data-ui="sui"]) .hero__scroll-line::after {
  content: "";
  position: absolute;
  inset: 0;
  background: currentColor;
  animation: sui-scroll-cue var(--motion-scroll-cue) ease-in-out infinite;
}

@keyframes sui-scroll-cue {
  0% {
    transform: translate(calc(var(--scroll-cue-x) * -1), calc(var(--scroll-cue-y) * -1));
  }
  70%, 100% {
    transform: translate(var(--scroll-cue-x), var(--scroll-cue-y));
  }
}
