@charset "UTF-8";
/* --------------------------------------
header
---------------------------------------*/
header {
  padding: 20px 0;
  /*　ハンバーガーボタン　*/
}
header .hamburger {
  display: block;
  position: fixed;
  z-index: 999;
  right: 9px;
  top: 9px;
  width: 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
  /* ナビ開いてる時のボタン */
}
header .hamburger span {
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 6px;
  background: #fff;
  transition: 0.3s ease-in-out;
}
header .hamburger span:nth-child(1) {
  top: 10px;
}
header .hamburger span:nth-child(2) {
  top: 20px;
}
header .hamburger span:nth-child(3) {
  top: 30px;
}
header .hamburger.active {
  transition: all 0.3s ease-in-out;
  transition-delay: 0.6s;
  transform: rotate(45deg);
}
header .hamburger.active span:nth-child(2) {
  width: 0px;
}
header .hamburger.active span:nth-child(1), header .hamburger.active span:nth-child(3) {
  transition-delay: 0.3s;
}
header .hamburger.active span:nth-child(1) {
  transform: translateY(4px);
}
header .hamburger.active span:nth-child(3) {
  transform: translateY(-16px) rotate(90deg);
}
header .hamburger.scrolled {
  background: #002553;
}
header .flexbox {
  display: block;
}
header .flexbox .logo {
  max-width: 140px;
}
header .flexbox .logo img {
  width: 100%;
}
header .flexbox .gNav {
  position: fixed;
  padding: 50px 0;
  z-index: 99;
  top: 0;
  left: 0;
  background-image: url(../img/common_bg.jpg);
  background-repeat: no-repeat;
  background-size: 300%;
  background-position: left top;
  text-align: center;
  transform: translateY(-100%);
  transition: all 0.7s;
  width: 100%;
  height: 100vh;
}
header .flexbox .gNav.active {
  transform: translateY(0%);
}
header .flexbox .gNav .logo {
  max-width: 170px;
}
header .flexbox .gNav .menu {
  display: block;
}
header .flexbox .gNav .menu li {
  width: 100%;
  margin-bottom: 1px;
}
header .flexbox .gNav .menu li a {
  padding: 15px;
  text-align: left;
  width: 100%;
  display: block;
  margin: 0;
  background: rgba(0, 37, 83, 0.8);
  font-size: 15px;
}
header .flexbox .gNav .menu li .menu-modal {
  background: transparent;
  display: block !important;
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  margin-top: 1px;
}
header .flexbox .gNav .menu li .menu-modal li a {
  background: rgba(0, 37, 83, 0.8);
}
header .flexbox .gNav .pc-hyde.flexbox {
  display: flex;
  padding: 20px;
}
header .flexbox .gNav .pc-hyde.flexbox .jp-link,
header .flexbox .gNav .pc-hyde.flexbox .en-link {
  height: auto;
  width: calc(50% - 1px);
  position: relative;
  right: auto;
  top: auto;
}
header .flexbox .gNav .pc-hyde.flexbox .jp-link a,
header .flexbox .gNav .pc-hyde.flexbox .en-link a {
  font-size: 18px;
  padding: 10px 15px;
  background: rgba(0, 37, 83, 0.8);
}/*# sourceMappingURL=sp-header.css.map */