.elementor-2828 .elementor-element.elementor-element-14ef182{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2828 .elementor-element.elementor-element-14ef182:not(.elementor-motion-effects-element-type-background), .elementor-2828 .elementor-element.elementor-element-14ef182 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E2F33;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for wp-widget-custom_html, class: .elementor-element-56447f1 *//* Footer */
footer{
  background: var(--brand-deep);
  color:#E5E7EB;
  padding:32px 0 14px;
}
.footer-grid--wide{
  display:grid;
  grid-template-columns: 2.2fr 1.2fr 1.2fr 1.4fr;
  align-items:start;
  gap:24px;
  font-size:13px;
}
.footer-title{font-size:14px; font-weight:900; margin:0 0 10px}
.footer-text{margin:0; color:#CBD5F5; line-height:1.7;}
.footer-links a{display:block; margin:8px 0; opacity:.95}
.footer-links a:hover{text-decoration:underline}
.footer-badges{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px;}
.footer-badge{
  font-size:11px; font-weight:900; letter-spacing:.06em;
  padding:6px 10px; border-radius:999px;
  border:1px solid rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.06);
  color:#E5E7EB;
}
.footer-mini{margin-top:10px; font-size:11px; color:rgba(229,231,235,0.70); line-height:1.6;}
.footer-cta{margin-top:12px; display:flex; flex-wrap:wrap; gap:10px;}
.footer-bottom{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(148,163,184,0.20);
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}
.footer-copy{color:#9CA3AF; font-size:11px}
.footer-bottom__link{font-size:12px; color:rgba(229,231,235,0.85); opacity:.95;}
.footer-bottom__link:hover{text-decoration:underline}

/* Responsive */
@media (max-width: 1020px){
  header nav{display:none}
  .menu-btn{display:inline-flex}

  .hero-grid{ grid-template-columns:1fr; gap:18px; }
  .hero .container{ padding-top: 86px; padding-bottom: 46px; }

  .proof-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
  .grid-2,.grid-3,.tiles,.footer-grid--wide{grid-template-columns:1fr}
  .footer-bottom{ flex-direction:column; align-items:flex-start; }
  .hero h1{font-size:32px}
}
/* フッター内リンク色を強制的に白寄せ */
footer a,
footer a:visited{
  color:#E5E7EB;
}

/* hover時だけアクセントにしたいなら */
footer a:hover{
  color: var(--brand-accent);
}/* End custom CSS */