/* =========================================================
   Saisho Giken Header
   ========================================================= */

html{
  scroll-behavior:smooth;
}

body{
  padding-top:86px;
}

.sg-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:9999;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(226,232,240,.9);
}

.sg-header-inner{
  max-width:1180px;
  height:86px;
  margin:0 auto;
  padding:0 clamp(24px, 5vw, 72px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  box-sizing:border-box;
}

.sg-header-logo{
  display:flex;
  flex-direction:column;
  gap:4px;
  text-decoration:none !important;
  color:#0F172A !important;
  line-height:1;
  white-space:nowrap;
}

.sg-header-logo-en{
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
  color:#06B6D4;
}

.sg-header-logo-ja{
  font-size:26px;
  font-weight:800;
  letter-spacing:.08em;
  color:#0F172A;
}

.sg-header-nav{
  display:flex;
  align-items:center;
}

.sg-header-menu{
  display:flex;
  align-items:center;
  gap:34px;
  list-style:none;
  margin:0;
  padding:0;
}

.sg-header-menu li{
  margin:0;
  padding:0;
}

.sg-header-menu a{
  position:relative;
  display:block;
  color:#0F172A !important;
  text-decoration:none !important;
  font-size:14px;
  font-weight:700;
  letter-spacing:.04em;
  padding:32px 0;
  transition:color .2s ease;
}

.sg-header-menu a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:24px;
  height:1px;
  background:#06B6D4;
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .24s ease;
}

.sg-header-menu a:hover{
  color:#06B6D4 !important;
}

.sg-header-menu a:hover::after{
  transform:scaleX(1);
  transform-origin:left;
}

/* Lightning default header parts hidden for this child header */
.siteHeader,
.l-header,
.vk-mobile-nav-menu-btn{
  display:none !important;
}

/* Fixed header anchor offset */
#technology,
#field,
#software,
#contact{
  scroll-margin-top:110px;
}

/* Mobile */
@media(max-width:900px){
  body{
    padding-top:74px;
  }

  .sg-header-inner{
    height:74px;
    padding-left:24px;
    padding-right:24px;
  }

  .sg-header-logo-en{
    font-size:10px;
  }

  .sg-header-logo-ja{
    font-size:22px;
  }

  .sg-header-menu{
    gap:18px;
  }

  .sg-header-menu a{
    font-size:13px;
    padding:27px 0;
  }
}

@media(max-width:640px){
  body{
    padding-top:112px;
  }

  .sg-header-inner{
    height:auto;
    min-height:112px;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:14px;
    padding-top:16px;
    padding-bottom:16px;
  }

  .sg-header-nav{
    width:100%;
    overflow-x:auto;
    padding-bottom:2px;
  }

  .sg-header-menu{
    min-width:max-content;
    gap:22px;
  }

  .sg-header-menu a{
    padding:8px 0;
    font-size:13px;
  }

  .sg-header-menu a::after{
    bottom:2px;
  }

  #technology,
  #field,
  #software,
  #contact{
    scroll-margin-top:132px;
  }
}
