/* Scale the shared PC footer as one composition (1920px / 1720px content master).
   Keep the existing tablet and smartphone rules completely outside this scope. */
@media (min-width:901px) {
  .site-footer {
    container-type:inline-size;
    padding-top:calc(min(calc(100vw - var(--pad) - var(--pad)),1720px) * .0406976744);
  }
  .site-footer .footer-main,
  .site-footer .copyright {
    --footer-unit:min(1cqw,17.2px);
    min-width:0;
    letter-spacing:.02em;
  }
  .site-footer .footer-main {
    display:grid;
    grid-template-columns:minmax(0,403fr) minmax(0,1004fr) minmax(0,313fr);
    gap:0;
    font-size:calc(var(--footer-unit) * 16 / 17.2);
    line-height:1.8;
    padding-bottom:calc(var(--footer-unit) * 44 / 17.2);
  }
  .site-footer .footer-main > div {min-width:0}
  .site-footer .footer-brand {
    margin-bottom:calc(var(--footer-unit) * 25 / 17.2);
  }
  .site-footer .footer-brand .brand-logo {
    width:auto;
    max-width:100%;
    height:calc(var(--footer-unit) * 45 / 17.2);
  }
  .site-footer .footer-main p {
    font-size:calc(var(--footer-unit) * 14 / 17.2);
    line-height:calc(var(--footer-unit) * 30.5 / 17.2);
    margin-bottom:1em;
    letter-spacing:.02em;
    white-space:nowrap;
  }
  .site-footer .footer-links {
    display:grid;
    grid-template-columns:calc(var(--footer-unit) * 265 / 17.2) minmax(0,1fr);
    grid-template-rows:repeat(6,auto);
    grid-auto-flow:column;
    gap:0;
    align-content:start;
    margin-top:calc(var(--footer-unit) * -16 / 17.2);
  }
  .site-footer .footer-links a {
    min-width:0;
    font-size:calc(var(--footer-unit) * 16 / 17.2);
    line-height:calc(var(--footer-unit) * 46 / 17.2);
    letter-spacing:.02em;
    white-space:nowrap;
    text-underline-offset:calc(var(--footer-unit) * 5 / 17.2);
  }
  .site-footer .footer-links a::before {
    margin-right:calc(var(--footer-unit) * 19 / 17.2);
  }
  .site-footer .company .outline-button {
    width:100%;
    min-width:0;
    min-height:calc(var(--footer-unit) * 62 / 17.2);
    padding:calc(var(--footer-unit) * 13 / 17.2) calc(var(--footer-unit) * 24 / 17.2);
    margin-bottom:calc(var(--footer-unit) * 25 / 17.2);
    font-size:calc(var(--footer-unit) * 16 / 17.2);
    line-height:1.8;
  }
  .site-footer .company p {letter-spacing:-.02em}
  .site-footer .social-links {
    flex-wrap:nowrap;
    gap:calc(var(--footer-unit) * 18 / 17.2);
    margin-top:calc(var(--footer-unit) * 34 / 17.2);
  }
  .site-footer .social-links img {
    width:calc(var(--footer-unit) * 40 / 17.2);
    height:calc(var(--footer-unit) * 40 / 17.2);
  }
  .site-footer .social-links .note-link {
    margin-left:calc(var(--footer-unit) * 12 / 17.2);
  }
  .site-footer .social-links .note-link img {
    width:calc(var(--footer-unit) * 92 / 17.2);
    height:calc(var(--footer-unit) * 20 / 17.2);
  }
  .site-footer .copyright {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    gap:calc(var(--footer-unit) * 20 / 17.2);
    font-size:calc(var(--footer-unit) * 14 / 17.2);
    line-height:1.8;
    padding:calc(var(--footer-unit) * 34 / 17.2) 0 calc(var(--footer-unit) * 50 / 17.2);
    white-space:nowrap;
  }
  .site-footer .footer-legal {
    min-width:0;
    flex-wrap:nowrap;
  }
}
