/* Shared footer for the homepage, articles and pages using the site layout. */
.site-footer{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:28px max(24px,calc((100vw - 1132px)/2));border:0;background:#10363e;color:#e7f8f4;font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;font-size:16px;line-height:1.75;letter-spacing:normal}
.site-footer strong{color:#e7f8f4;font-family:Arial,Helvetica,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.05em;line-height:1.75}
.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:10px}
.site-footer nav a{display:flex;align-items:center;min-height:44px;color:#e7f8f4;font-size:16px;line-height:1.75;text-decoration:underline;text-underline-offset:.2em}
.site-footer nav a:hover{color:#e7f8f4;text-decoration-thickness:2px}
.site-footer a:focus-visible{outline:3px solid #e7f8f4;outline-offset:3px}
.site-footer .footer-social{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:8px;font-size:14px}
.site-footer .footer-social span{color:#e7f8f4;margin-right:6px}
.site-footer .footer-social a{display:inline-flex;justify-content:center;width:44px;min-height:44px;border-radius:8px;text-decoration:none}
.site-footer .footer-social a:hover{background:#ffffff1a}
.site-footer .footer-social a:focus-visible{outline:2px solid #e7f8f4;outline-offset:2px}
.site-footer .footer-social-icon{display:block;width:24px;height:24px;object-fit:contain;filter:invert(1)}
