/* ===== Header (scoped / cleaned) ===== */
body.no-scroll{ overflow:hidden; }

.header-wrapper .norel-header{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  height:110px;
  padding:0 40px;
  margin-top:0 !important;
  box-sizing:border-box !important;
  letter-spacing:.05em;
}

.header-wrapper .main-nav{ display:flex; gap:25px; font-weight:bold; font-size:16px; }
.header-wrapper .main-nav a{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  cursor:pointer;
  transition:color .5s ease;
}
.header-wrapper .main-nav > a:hover{ color:#288CD2; }

/* dropdown */
.header-wrapper .sub-menu{ display:none; position:absolute; background:#fff; padding:8px; z-index:1000; }
.header-wrapper .sub-menu a{ font-size:16px; color:#333; text-decoration:none; transition:color .5s; }
.header-wrapper .sub-menu a:hover{ color:#288CD2; }
.header-wrapper .menu-item-with-dropdown:hover .sub-menu{ display:block; }

/* toggler */
.header-wrapper .menu-toggle{ display:none; flex-direction:column; gap:4px; cursor:pointer; z-index:10002; }
.header-wrapper .menu-toggle span{ width:24px; height:3px; background:#333; display:block; border-radius:2px; }

/* logo */
.header-wrapper .norel-logo{ position:absolute; top:22px; left:53px; width:167px; height:auto; z-index:9998; }

/* extra links */
.header-wrapper .main-nav a.mobile-top-link{ display:none; font-size:16px; color:#333; text-decoration:none; transition:color .5s; }
.header-wrapper .main-nav a.daredemo-mobile{ display:none; margin-left:16px; color:#333; text-decoration:none; transition:color .5s; }
.header-wrapper .daredemo-mobile:hover{ color:#288CD2; }

/* category links below header */
.header-wrapper .category-links-table table{ width:100% !important; table-layout:fixed; border-collapse:collapse; }
.header-wrapper .category-links-table td{ width:1%; text-align:center; vertical-align:middle; white-space:nowrap; }
.header-wrapper .category-links-table a{ display:inline-block; line-height:1.4; font-weight:bold; font-size:14px; color:#333; text-decoration:none; transition:color .3s; }
.header-wrapper .category-links-table a:hover{ color:#288CD2; }
.header-wrapper .header-category-links{ margin-top:0 !important; }

/* responsive header */
@media (max-width:1023px){
  .header-wrapper .norel-header{ height:64px; padding:0; }
  .header-wrapper .norel-logo{ width:90px; top:14px; left:25px; }

  .header-wrapper .main-nav{
    display:none;
    flex-direction:column;
    background:#fff;
    padding:100px 50px;
    position:fixed; top:0; left:0;
    width:100vw; height:100vh; z-index:10001;
    overflow-y:auto; box-sizing:border-box; gap:20px !important;
  }
  .header-wrapper .main-nav.active{ display:flex; }
  .header-wrapper .main-nav .mobile-top-link{ display:none; }
  .header-wrapper .main-nav.active .mobile-top-link{ display:block; }

  .header-wrapper .menu-toggle{ display:flex; position:relative; padding:22px 9px; }

  .header-wrapper .main-nav a.daredemo-mobile{ display:block; font-size:16px !important; }
  .header-wrapper .main-nav .menu-item-with-dropdown .sub-menu{ display:none !important; }
  .header-wrapper .main-nav .menu-item-with-dropdown > a > .material-icons,
  .header-wrapper .main-nav .menu-item-with-dropdown > a > .material-icons-outlined,
  .header-wrapper .main-nav .menu-item-with-dropdown > a > .material-symbols-outlined{ display:none !important; }

  .header-wrapper .header-category-links td{ padding-left:0 !important; padding-right:0 !important; }
}

@media (min-width:1023px) and (max-width:1160px){
  .header-wrapper .norel-logo{ width:128px; top:32px; left:40px; }
}


/* ========== 360px以下（極小端末） ========== */
@media screen and (max-width: 360px) {
  .header-wrapper .category-links-table {
    transform-origin: top left;
    width: 100%;
    overflow: hidden;
    padding-left: 0;
    padding-right: 0;
    margin: 0 auto;
  }
  .header-wrapper .category-links-table table { width: 100% !important; table-layout: fixed; }
  .header-wrapper .category-links-table td { padding-left: 4px; padding-right: 4px; }
  .header-wrapper .category-links-table a { font-size: 12px; }
}