/* Site-wide corporate navigation, v1.0.4. Keep all selectors inside the component. */
/* Hide only known site headers and only if the new header was rendered. */
body:has(#khuf-site-header) #masthead:not(#khuf-site-header),
body:has(#khuf-site-header) header.site-header:not(#khuf-site-header),
body:has(#khuf-site-header) header#site-header:not(#khuf-site-header),
body:has(#khuf-site-header) .elementor-location-header,
body:has(#khuf-site-header) [data-elementor-type="header"],
body.khcases-production:has(#khuf-site-header) header.site-head,
body.kh-interview-template:has(#khuf-site-header) header.sitehead#sitehead {
  display:none!important;
}
#khuf-site-header, #khuf-site-header *, #khuf-site-header *::before, #khuf-site-header *::after { box-sizing:border-box; }
#khuf-site-header {
 --khuf-ah-navy:#071b29; --khuf-ah-gold:#e2c79f;
 position:relative!important; z-index:4000!important; display:block!important;
 width:100%!important; max-width:none!important; min-width:0;
 margin:0!important;padding:0!important;background:var(--khuf-ah-navy)!important;color:#fff!important;
 border:none;border-bottom:1px solid rgba(255,255,255,.16)!important;
 box-shadow:none!important; font:500 14px/1.5 Meiryo,"Noto Sans JP","Yu Gothic",sans-serif!important;
 letter-spacing:0;text-align:left;clear:both;
}
#khuf-site-header .khuf-ah-inner {
 width:min(1250px,calc(100% - 64px))!important;
 max-width:1250px;min-width:0;min-height:78px;
 padding:0!important;margin:0 auto!important;
 display:flex!important;align-items:center;gap:20px;position:relative;
}
#khuf-site-header a { border:0;box-shadow:none;text-decoration:none!important;outline-offset:4px; }
#khuf-site-header .khuf-ah-brand {
 display:flex;flex-direction:column;flex:0 0 auto;justify-content:center;gap:0;
 min-width:155px;color:#fff!important;line-height:1.25;
}
#khuf-site-header .khuf-ah-brand small {display:block;color:#b9ccd6!important;font-size:11px;line-height:1.35;font-weight:500;}
#khuf-site-header .khuf-ah-brand strong {display:block;font:600 23px/1.4 "Yu Mincho","Noto Serif JP",serif;letter-spacing:.025em;color:#fff!important;}
#khuf-site-header .khuf-ah-nav {
 display:flex;align-items:center;gap:clamp(12px,1.6vw,24px);margin:0 0 0 auto!important;
 padding:0!important;min-width:0;flex:0 1 auto;position:static;
 background:none;border:0;box-shadow:none;
}
#khuf-site-header .khuf-ah-nav a {
 display:inline-block;flex:0 0 auto; padding:7px 0!important; margin:0;
 font:600 13px/1.55 Meiryo,"Noto Sans JP",sans-serif!important;
 color:#edf3f6!important; white-space:nowrap;background:transparent!important;
 border-radius:0;line-height:1.55;
}
#khuf-site-header .khuf-ah-nav a:hover,
#khuf-site-header .khuf-ah-nav a.khuf-ah-active {color:#e2c79f!important;}
#khuf-site-header .khuf-ah-nav .khuf-ah-cta {
 background:#e2c79f!important;color:#102a38!important;padding:10px 16px!important;
 border-radius:2px!important;font-weight:700!important;box-shadow:none!important;
}
#khuf-site-header .khuf-ah-nav .khuf-ah-cta::after{content:' ↗';}
#khuf-site-header .khuf-ah-nav .khuf-ah-cta:hover {background:#f1d7b3!important;color:#102a38!important;}
#khuf-site-header .khuf-ah-menu {
 display:none;align-items:center;gap:5px;padding:8px 12px;margin:0 0 0 auto;
 border:1px solid #89a3b2;border-radius:5px;background:transparent;color:#fff;cursor:pointer;
 font:600 13px/1.5 Meiryo,"Noto Sans JP",sans-serif;box-shadow:none;white-space:nowrap;
}
#khuf-site-header .khuf-ah-menu:hover {background:rgba(255,255,255,.12)}
#khuf-site-header .khuf-ah-menu:focus-visible,
#khuf-site-header a:focus-visible {outline:2px solid #f4d7a8;outline-offset:3px;}
@media(max-width:1040px){
 #khuf-site-header .khuf-ah-inner{min-height:72px;width:calc(100% - 42px)!important;}
 #khuf-site-header .khuf-ah-menu{display:inline-flex;}
 #khuf-site-header .khuf-ah-nav {display:none;position:absolute;top:100%;left:-21px;right:-21px;
  z-index:4100;padding:12px 22px 20px!important;background:#071b29!important;
  box-shadow:0 12px 25px rgba(0,0,0,.42);border-bottom:1px solid #345163;
  flex-direction:column;align-items:stretch;gap:0;}
 #khuf-site-header.khuf-ah-open .khuf-ah-nav{display:flex;}
 #khuf-site-header .khuf-ah-nav a {padding:12px 7px!important;font-size:15px!important;white-space:normal;}
 #khuf-site-header .khuf-ah-nav .khuf-ah-cta {padding:12px 16px!important;margin-top:9px;text-align:center;}
}
@media(max-width:500px){
 #khuf-site-header .khuf-ah-inner {min-height:68px;width:calc(100% - 34px)!important;}
 #khuf-site-header .khuf-ah-brand{min-width:0;}
 #khuf-site-header .khuf-ah-brand strong{font-size:21px;}
 #khuf-site-header .khuf-ah-nav {left:-17px;right:-17px;}
}
@media print{#khuf-site-header{display:none!important}}
