/* クジョシル共通ヘッダー v1.0 | Cocoonページ専用。TOPは既存 kujosiru-home.css を使用 */
body:not(.kujosiru-custom-home) #header-container.ks-global-header-container {
  --ks-green:#0f5c4a; --ks-text:#1f2b28; --ks-line:#e2e9e6;
  width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important;
  position:sticky; top:0; z-index:9990; background:#fff !important;
  border-bottom:1px solid #edf1ef; box-shadow:none !important;
}
body.admin-bar:not(.kujosiru-custom-home) #header-container.ks-global-header-container {top:32px;}
/* Cocoonの独自モバイルヘッダーボタンと二重表示させない。フッターのボタンは残す */
body:not(.kujosiru-custom-home) .mobile-header-menu-buttons,
body:not(.kujosiru-custom-home) #mobile-header-menu-buttons { display:none !important; }
#header-container.ks-global-header-container .ks-site,
#header-container.ks-global-header-container .ks-site * {box-sizing:border-box;}
#header-container.ks-global-header-container .ks-site {
  color:var(--ks-text);background:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
  font-size:16px;line-height:1.7;
}
#header-container.ks-global-header-container .ks-site a {color:inherit;text-decoration:none;}
#header-container.ks-global-header-container .ks-site img {max-width:100%;height:auto;display:block;}
#header-container.ks-global-header-container .ks-container {width:min(1180px,92vw);margin:0 auto;max-width:none;}
#header-container.ks-global-header-container .ks-header {
  position:relative;top:auto;background:#fff !important;border:0;margin:0;z-index:1;
  box-shadow:none;min-height:0;
}
#header-container.ks-global-header-container .ks-header-inner {
  min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0;
}
#header-container.ks-global-header-container .ks-logo {
  display:inline-flex;align-items:center;gap:10px;color:var(--ks-green);flex:0 0 auto;font-weight:normal;
}
#header-container.ks-global-header-container .ks-logo-mark {width:48px;height:48px;display:block;}
#header-container.ks-global-header-container .ks-logo-mark svg {width:100%;height:100%;}
#header-container.ks-global-header-container .ks-logo strong {
  display:block;font-size:24px;line-height:1.05;letter-spacing:.03em;font-weight:800;color:#1f2b28;
}
#header-container.ks-global-header-container .ks-logo small {
  display:block;margin-top:5px;font-size:11px;font-weight:700;color:#365b51;line-height:1.5;
}
#header-container.ks-global-header-container .ks-nav {
  display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700;margin-left:auto;
}
#header-container.ks-global-header-container .ks-nav a {padding:8px 0;position:relative;white-space:nowrap;}
#header-container.ks-global-header-container .ks-nav a:after {
  content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--ks-green);transition:.2s ease;
}
#header-container.ks-global-header-container .ks-nav a:hover:after {right:0;}
#header-container.ks-global-header-container .ks-header-actions {display:flex;align-items:center;gap:10px;}
#header-container.ks-global-header-container .ks-menu-btn {
  display:none;border:0;background:transparent;color:var(--ks-green);padding:4px 6px;cursor:pointer;
}
#header-container.ks-global-header-container .ks-menu-btn span {display:block;width:26px;height:2px;background:currentColor;margin:5px 0;border-radius:2px;}
#header-container.ks-global-header-container .ks-menu-btn em {display:block;font-size:10px;font-style:normal;font-weight:700;margin-top:3px;}
#header-container.ks-global-header-container .ks-mobile-nav {
  padding:8px 4vw 18px;background:#fff;border-top:1px solid var(--ks-line);
}
#header-container.ks-global-header-container #ks-mobile-nav[hidden] {display:none!important;}
#header-container.ks-global-header-container .ks-mobile-nav a {display:block;padding:13px 6px;font-weight:700;border-bottom:1px solid #eff3f1;}
#header-container.ks-global-header-container .ks-search {position:relative;display:block;width:42px;height:42px;border-radius:50%;color:var(--ks-green);}
#header-container.ks-global-header-container .ks-search summary {
  width:42px;height:42px;display:grid;place-items:center;cursor:pointer;list-style:none;border-radius:50%;padding:0;background:transparent;border:0;
}
#header-container.ks-global-header-container .ks-search summary::-webkit-details-marker {display:none;}
#header-container.ks-global-header-container .ks-search summary img {width:24px;height:24px;}
#header-container.ks-global-header-container .ks-search-panel {
  position:absolute;z-index:10000;right:0;top:calc(100% + 12px);width:min(340px,90vw);
  background:#fff;border:1px solid #dce7e1;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.15);
  padding:16px;color:#1f2b28;
}
#header-container.ks-global-header-container .ks-search-panel label {display:block;font-size:13px;font-weight:800;margin-bottom:8px;}
#header-container.ks-global-header-container .ks-search-fields {display:flex;gap:8px;}
#header-container.ks-global-header-container .ks-search-fields input {
  min-width:0;flex:1;width:100%;padding:10px 9px;border:1px solid #b9cec4;border-radius:7px;font-size:14px;
}
#header-container.ks-global-header-container .ks-search-fields button {
  flex:0 0 auto;border:0;border-radius:7px;padding:0 14px;cursor:pointer;
  font-size:14px;font-weight:700;background:#0f5c4a;color:#fff;
}
#header-container.ks-global-header-container a:focus-visible,
#header-container.ks-global-header-container button:focus-visible,
#header-container.ks-global-header-container summary:focus-visible {
  outline:3px solid #f97316;outline-offset:3px;
}
@media (max-width:1050px) {
  #header-container.ks-global-header-container .ks-nav {gap:18px;font-size:13px;}
}
@media (max-width:800px) {
  #header-container.ks-global-header-container .ks-header-inner {min-height:68px;}
  #header-container.ks-global-header-container .ks-logo-mark {width:40px;height:40px;}
  #header-container.ks-global-header-container .ks-logo strong {font-size:21px;}
  #header-container.ks-global-header-container .ks-logo small {font-size:9px;margin-top:3px;}
  #header-container.ks-global-header-container .ks-nav {display:none;}
  #header-container.ks-global-header-container .ks-menu-btn {display:block;}
}
@media (max-width:782px) {
  body.admin-bar:not(.kujosiru-custom-home) #header-container.ks-global-header-container {top:46px;}
}
@media (max-width:470px) {
  #header-container.ks-global-header-container .ks-container {width:min(94vw,1180px);}
  #header-container.ks-global-header-container .ks-logo small {max-width:170px;}
  #header-container.ks-global-header-container .ks-search {width:36px;height:36px;}
  #header-container.ks-global-header-container .ks-search summary {width:36px;height:36px;}
  #header-container.ks-global-header-container .ks-search summary img {width:20px;height:20px;}
}
