/* フッター（紺。右に大きめのメニュー、左下にロゴ） */
.footer { position: relative; background: var(--navy); color: var(--on-dark); }
.footer__inr { position: relative; width: 81.25vw; margin: 0 auto; padding: 122px 0 92px; }
.footer__nav { font-size: 1.25rem; font-weight: 700; line-height: 2.5; text-align: right; }
.footer__nav a { position: relative; display: inline-block; }
.footer__nav a::after { content: ""; position: absolute; left: 0; bottom: .55em; width: 100%; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right top; transition: transform .6s cubic-bezier(.6, .25, 0, 1); }
.footer__nav a:hover::after { transform: scaleX(1); transform-origin: left top; }
.footer__logo { position: absolute; left: 12px; bottom: 175px; font-size: 30px; }
.footer__btm { display: flex; justify-content: flex-end; align-items: center; margin-top: 1rem; font-size: .8rem; }
.footer__sample { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0 1.4em; color: var(--on-dark-sub); line-height: 1.7; text-align: right; }
.footer__sample a { text-decoration: underline; text-underline-offset: .25em; }
.footer__sns { margin-left: 4.6875vw; line-height: 1; }
.footer__sns svg { display: block; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.3; color: var(--on-dark-sub); }
.footer__copy { position: absolute; left: 0; bottom: 100px; font-family: var(--jp); font-size: .7333rem; line-height: 1; color: var(--on-dark-sub); }
@media (max-width: 750px) {
  .footer__inr { width: auto; padding: 63px 9.6vw 49px; }
  .footer__nav { text-align: left; margin-bottom: 43px; }
  .footer__logo { position: static; font-size: 22px; align-items: flex-start; margin-bottom: 44px; }
  .footer__logo .logo__sub, .footer__logo .logo__name { margin-right: 0; }
  .footer__btm { display: block; }
  .footer__sample { display: block; text-align: left; margin-bottom: 28px; }
  .footer__sample li { line-height: 1.9; }
  .footer__sns { margin: 0 0 26px; }
  .footer__copy { position: static; }
}
