/**
 * footer.css — XiADEN サイトフッター
 * 元ファイル: company_top_D4_28_fresh.html <style> lines 319-412
 */

/* =============================================================
   FOOTER
   ============================================================= */
.site-footer {
  background:var(--nd); color:rgba(255,255,255,.56);
  padding:var(--sp64) 0 var(--sp32);
}
.footer-grid {
  display:grid; grid-template-columns:2fr 1fr 1fr 1fr;
  gap:var(--sp48); margin-bottom:var(--sp48);
}

/* Footer Brand */
.footer-logo-img-full {
  height:56px; width:auto; display:block;
  filter:brightness(0) invert(1); opacity:.78;
  margin-bottom:var(--sp16);
}
.footer-logo-img {
  height:28px; width:auto; display:block;
  filter:brightness(0) invert(1); opacity:.72;
}
.footer-desc { font-size:var(--f-sm); line-height:1.85; margin-bottom:var(--sp16); }

/* 2電話番号 */
.footer-tel-block {
  display:flex; flex-direction:column; gap:10px; margin-bottom:10px;
}
.footer-tel-area {
  display:block; font-size:10px; color:rgba(255,255,255,.52);
  font-weight:700; letter-spacing:.1em; margin-bottom:3px;
}
.footer-tel-num {
  display:block; font-size:16px; font-weight:900; color:var(--w); letter-spacing:.04em;
}
.footer-tel-hours { display:block; font-size:11px; margin-top:3px; }
.footer-reg-num {
  display:block; margin-top:10px;
  font-size:11px; color:rgba(255,255,255,.45);
}

/* Footer Columns */
.footer-col-title {
  font-size:12px; font-weight:700; color:var(--w);
  letter-spacing:.08em; margin-bottom:var(--sp16);
  padding-bottom:10px; border-bottom:1px solid rgba(255,255,255,.1);
}
.footer-links { display:flex; flex-direction:column; gap:var(--sp8); }
.footer-links a {
  font-size:var(--f-sm); color:rgba(255,255,255,.48);
  transition:color .15s;
}
.footer-links a:hover { color:rgba(255,255,255,.85); }

/* Footer Bottom */
.footer-bottom {
  border-top:1px solid rgba(255,255,255,.08); padding-top:var(--sp24);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px;
}
.footer-copy { font-size:12px; color:rgba(255,255,255,.3); }
.footer-policy { display:flex; gap:20px; }
.footer-policy a { font-size:12px; color:rgba(255,255,255,.32); transition:color .15s; }
.footer-policy a:hover { color:rgba(255,255,255,.65); }

/* =============================================================
   RESPONSIVE
   ============================================================= */
@media (max-width:768px) {
  .footer-grid { grid-template-columns:1fr 1fr; gap:var(--sp32); }
  .footer-logo-img-full { height:44px; }
}
@media (max-width:480px) {
  .footer-grid { grid-template-columns:1fr; }
}
