/* Global footer v1.0.0. Matches the approved v2.0.8 case-footer layout. */
.khuf-footer,
.khuf-footer *{box-sizing:border-box}
.khuf-footer[hidden]{display:none!important}
.khuf-footer{
  display:block!important; clear:both!important;
  width:100%;max-width:none;min-width:0;
  padding:56px 0 0;margin:0;
  background:#061927!important;border-top:1px solid #345163;
  color:#f3f7f9!important;
  font:500 14px/1.7 Meiryo,"Noto Sans JP","Noto Sans CJK JP","Yu Gothic",sans-serif;
  text-align:left;letter-spacing:0;
  position:relative;z-index:1;
}
.khuf-footer .khuf-width{width:min(1180px,calc(100% - 64px));max-width:1180px;margin-left:auto;margin-right:auto;padding:0}
.khuf-footer .khuf-grid{display:grid;grid-template-columns:minmax(230px,260px) minmax(0,1fr);gap:clamp(26px,3vw,44px);align-items:center}
.khuf-footer .khuf-company{min-width:0;max-width:420px}
.khuf-footer .khuf-company-name{margin:0 0 12px;padding:0;color:#fff!important;font:600 clamp(22px,2.1vw,27px)/1.5 "Yu Mincho","Noto Serif JP",serif;letter-spacing:.045em}
.khuf-footer .khuf-address{display:block;color:#dce8ee!important;font-style:normal;font-size:14px;font-weight:500;line-height:2;letter-spacing:.015em}
.khuf-footer .khuf-nav{min-width:0}
.khuf-footer .khuf-links{list-style:none;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;column-gap:clamp(12px,1.6vw,20px);row-gap:16px;padding:0;margin:0}
.khuf-footer .khuf-links li{flex:0 0 auto;min-width:0;padding:0;margin:0;list-style:none}
.khuf-footer .khuf-links a{display:block;padding:5px 0;font-size:13px;line-height:1.6;font-weight:600;color:#eaf2f6!important;text-decoration:none!important;white-space:nowrap;border:none;background:transparent;transition:color .15s ease}
.khuf-footer .khuf-links a:hover,.khuf-footer .khuf-links a:focus-visible{color:#f3d7ab!important;text-decoration:underline!important;text-decoration-thickness:1px;text-underline-offset:5px}
.khuf-footer .khuf-bottom{margin-top:42px;padding:20px 0 27px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;border-top:1px solid rgba(202,226,239,.22);color:#c7d9e2;font-size:12px;line-height:1.7}
.khuf-footer .khuf-bottom small{font-size:12px;color:#c7d9e2!important}
.khuf-footer .khuf-bottom a{color:#e6f0f6!important;text-decoration:none!important;font-size:12px}
.khuf-footer .khuf-bottom a:hover{color:#f3d7ab!important;text-decoration:underline!important}
@media(max-width:860px){
  .khuf-footer{padding-top:44px}
  .khuf-footer .khuf-grid{grid-template-columns:minmax(0,1fr);gap:30px;align-items:start}
  .khuf-footer .khuf-nav{order:1}
  .khuf-footer .khuf-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:10px;justify-content:start}
  .khuf-footer .khuf-links li{min-width:0}
  .khuf-footer .khuf-links a{font-size:14px;white-space:normal}
  .khuf-footer .khuf-company{order:2;max-width:none;padding-top:25px;border-top:1px solid rgba(202,226,239,.19)}
  .khuf-footer .khuf-bottom{margin-top:27px}
}
@media(max-width:420px){
  .khuf-footer{padding-top:35px}
  .khuf-footer .khuf-width{width:calc(100% - 34px)}
  .khuf-footer .khuf-links{row-gap:8px}
  .khuf-footer .khuf-links a{font-size:13px}
  .khuf-footer .khuf-company-name{font-size:22px;margin-bottom:10px}
  .khuf-footer .khuf-address{font-size:13px;line-height:2.05}
  .khuf-footer .khuf-bottom{padding:17px 0 22px}
}
@media print{.khuf-footer{display:none!important}}
