/* サイト共通のフッター（LPと同じ構成：お問い合わせへの導線、扉の画像、会社情報） */
.sf{position:relative;overflow:hidden;margin-top:96px;background:linear-gradient(180deg,#1E2733 0%,#1C232D 40%,#141A22 100%);color:#EDF0F4}
.sf::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 1.3 -.4'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.12;pointer-events:none}
.sf-w{position:relative;z-index:1;max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.sf-cta{padding-top:clamp(64px,8vw,104px);display:flex;justify-content:space-between;align-items:flex-end;gap:24px 40px;flex-wrap:wrap}
.sf-cta small{display:block;font-family:"Manrope",sans-serif;font-size:11px;font-weight:700;letter-spacing:.22em;color:#A3BCE3}
.sf-cta p{margin:10px 0 0;font-size:clamp(20px,2.4vw,28px);font-weight:700;line-height:1.6;letter-spacing:.04em}
.sf-cta span{display:block;margin-top:8px;font-size:14px;font-weight:400;color:#A9B2BE;letter-spacing:.03em}
.sf-btns{display:flex;gap:10px;flex-wrap:wrap}
.sf-btns a{display:inline-flex;align-items:center;gap:10px;height:50px;padding:0 26px;border-radius:999px;text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.06em}
.sf-b1{background:#EDF0F4;color:#2B3440}
.sf-b2{border:1px solid rgba(237,240,244,.4);color:#EDF0F4}
.sf-b2:hover{border-color:#EDF0F4}
.fend{position:relative;z-index:1;margin-top:clamp(56px,7vw,96px);overflow:hidden;aspect-ratio:3/1;min-height:300px}
.fend-ph{position:absolute;inset:0}
.fend-ph img{width:100%;height:100%;object-fit:cover;object-position:85% 50%;display:block;filter:brightness(.35);transition:filter 2.6s ease .2s;-webkit-mask:linear-gradient(180deg,transparent 0,#000 28%,#000 82%,transparent 100%);mask:linear-gradient(180deg,transparent 0,#000 28%,#000 82%,transparent 100%)}
.fend.in .fend-ph img{filter:none}
.fend-in{position:absolute;left:0;right:0;top:30%}
.fend-logo{margin:0;width:clamp(200px,30vw,440px)}
.fend-logo img{display:block;width:100%;height:auto;opacity:.9}
.fend-tag{margin:14px 0 0;font-family:"Manrope",sans-serif;font-weight:600;font-size:11px;letter-spacing:.42em;color:rgba(237,240,244,.5)}
.sf .ft{position:relative;z-index:1;margin:0;border-top:1px solid #3A4452;padding:36px 0 40px;font-size:13px;color:#AEB7C2;line-height:1.9}
.sf .ft .sf-w{display:flex;justify-content:space-between;gap:24px 48px;flex-wrap:wrap;align-items:flex-start}
.sf .ft b{color:#EDF0F4;font-size:14px}
.sf .ft nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.sf .ft nav a{color:#AEB7C2;text-decoration:none}
.sf .ft nav a:hover{color:#EDF0F4}
.sf .ft .cr{width:100%;margin:0;font-family:"Manrope",sans-serif;font-size:11px;letter-spacing:.14em;color:#6E7886}
@media (max-width:720px){.fend{aspect-ratio:auto;height:min(92vw,420px)}.fend-ph img{object-position:70% 50%}.fend-in{top:20%}.fend-logo{width:58vw}.fend-tag{font-size:9.5px;letter-spacing:.32em}}
@media (prefers-reduced-motion:reduce){.fend-ph img{filter:none;transition:none}}
