@charset "UTF-8";

/* 写真背景型サブページのPC用FV。位置と文字幅を独立させる。 */
@media (min-width: 881px) {
  :root {
    --subpage-hero-header-height: 88px;
  }

  .ab-hero-inner,
  .ac-hero-inner,
  .pg-hero-inner,
  .fq-hero-inner,
  .fl-hero-inner,
  .rc-hero-inner,
  .rs-hero-inner,
  .st-hero-inner,
  .tc-hero-inner,
  .vo-hero-inner {
    min-height: max(560px, calc(100vh - var(--subpage-hero-header-height)));
    min-height: max(560px, calc(100svh - var(--subpage-hero-header-height)));
  }

  .ab-hero-copy,
  .ac-hero-copy,
  .pg-hero-copy,
  .fq-hero-copy,
  .fl-hero-copy,
  .rc-hero-copy,
  .rs-hero-copy,
  .st-hero-copy,
  .tc-hero-copy,
  .vo-hero-copy {
    max-width: none;
    width: min(clamp(720px, 47vw, 1200px), 62vw);
    margin-left: max(var(--gutter), min(calc((100vw - 1600px) / 2 + 56px), clamp(56px, 12vw, 320px)));
    padding-left: 0;
    padding-right: clamp(28px, 5vw, 72px);
  }

  .ab-hero-copy h1,
  .ac-hero-copy h1,
  .pg-hero-copy h1,
  .fq-hero-copy h1,
  .fl-hero-copy h1,
  .rc-hero-copy h1,
  .rs-hero-copy h1,
  .st-hero-copy h1,
  .tc-hero-copy h1,
  .vo-hero-copy h1,
  .ab-hero-copy h1 .line,
  .ac-hero-copy h1 .line,
  .pg-hero-copy h1 .line,
  .fq-hero-copy h1 .line,
  .fl-hero-copy h1 .line,
  .rc-hero-copy h1 .line,
  .rs-hero-copy h1 .line,
  .st-hero-copy h1 .line,
  .tc-hero-copy h1 .line,
  .vo-hero-copy h1 .line {
    white-space: normal;
  }
}

@media (min-width: 1440px) {
  .ab-hero-copy,
  .ac-hero-copy,
  .pg-hero-copy,
  .fq-hero-copy,
  .fl-hero-copy,
  .rc-hero-copy,
  .rs-hero-copy,
  .st-hero-copy,
  .tc-hero-copy,
  .vo-hero-copy {
    padding-right: clamp(72px, 4vw, 128px);
  }

  .ab-hero-copy p,
  .ac-hero-copy p,
  .pg-hero-copy p,
  .fq-hero-copy p,
  .fl-hero-copy p,
  .rc-hero-copy p,
  .rs-hero-copy p,
  .st-hero-copy p,
  .tc-hero-copy p,
  .vo-hero-copy p {
    max-width: clamp(32em, 32vw, 44em);
    font-size: clamp(14px, .55vw, 19.8px);
  }

  .ab-hero-en,
  .ac-hero-en,
  .pg-hero-en,
  .fq-hero-en,
  .fl-hero-en,
  .rc-hero-en,
  .rs-hero-en,
  .st-hero-en,
  .tc-hero-en,
  .vo-hero-en {
    font-size: clamp(12.5px, .55vw, 18px);
  }
}

@media (min-width: 1800px) {
  :root {
    --subpage-hero-header-height: 95.35px;
  }
}

@media (min-width: 1100px) {
  .ab-hero-copy h1,
  .ac-hero-copy h1,
  .pg-hero-copy h1,
  .fq-hero-copy h1,
  .fl-hero-copy h1,
  .rc-hero-copy h1,
  .rs-hero-copy h1,
  .st-hero-copy h1,
  .tc-hero-copy h1,
  .vo-hero-copy h1 {
    font-size: clamp(36.8px, 2.2vw, 72px);
  }

  .ab-hero-copy h1 .line,
  .ac-hero-copy h1 .line,
  .pg-hero-copy h1 .line,
  .fq-hero-copy h1 .line,
  .fl-hero-copy h1 .line,
  .rc-hero-copy h1 .line,
  .rs-hero-copy h1 .line,
  .st-hero-copy h1 .line,
  .tc-hero-copy h1 .line,
  .vo-hero-copy h1 .line {
    white-space: nowrap;
  }
}
