@charset "UTF-8";

/*--------------------------------------------------------------------------
   .g-header
---------------------------------------------------------------------------*/
.g-header {
  position: fixed;
  top: 88px;
  z-index: 99;
  width: 100%;
  min-width: 1024px;
  -webkit-transition: .2s top;
          transition: .2s top;
          background: #000;
}

.g-header.fixed {
  position: fixed;
  top: 48px;
}

.g-header__ttl {
  letter-spacing: .2em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  box-sizing: border-box;
  position: relative;
  z-index: 100;
  width: 100%;
  border-top: 2px solid #41a6f9;
  height: 60px;
  box-shadow: 1px 1px 10px rgba(0, 0, 0, .6);
  background-color: #000;
  color: #fff;
  font-family: sans-serif;
  font-size: 22px;
  font-weight: bold;
          flex-direction: column;

  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
  
}

@media all and (-ms-high-contrast: none) {
/*
  .g-header__ttl {
    font-family: 'YakuHanJP', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'Noto Serif Japanese', serif, sans-serif;
  }
*/
}

.g-header__ttl a {
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-shadow: 2px 2px 10px #0082c7, -2px -2px 10px #0082c7, 0px 0px 10px #0082c7, 0px 0px 10px #0082c7, 0px 0px 10px #0082c7;
}

.g-header__menu .menu {
  position: relative;
}

.g-header__menu .menu__btn {
  position: relative;
  width: 1024px;
  margin: 0 auto;
}

.g-header__menu .menu__btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -46px;
  right: 25px;
  z-index: 100;
  box-sizing: border-box;
  padding: 2px 0 0 28px;
  width: 120px;
  height: 32px;
  background-color: #18348a;
  border-radius: 2px;
  color: #fff;
  text-decoration: none;
  letter-spacing: 2px;
  line-height: 1;
/*
  background-image: url(../img/common/header/btn_menu.png);
  background-size: cover;
  text-indent: -9999px;
*/
  -webkit-transition: .2s;
          transition: .2s;
  opacity: 1;
}

.g-header__menu .menu__btn a::before {
  position: absolute;
  top: 12px;
  left: 10px;
  width: 13px;
  height: 9px;
  background-image: url(../img/common/header/menu_arrow.png);
  background-size: cover;
  content: '';
  -webkit-transition: .2s;
          transition: .2s;
}

.g-header__menu .menu__curtain {
  display: none;
  position: relative;
  z-index: 9;
  width: 1280px;
  max-width: 96vw;
  margin: 0 auto;
}


.g-header__menu .menu__inner {
  overflow: hidden;
  position: relative;
  z-index: 10;
  height: 0;
  background-color: #232323;
}

.g-header__menu .menu__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  width: 100%;
  margin: 0 auto;
  padding: 30px 0;

  -webkit-justify-content: center;
          justify-content: center;
}

.g-header__menu .menu__item {
  width: 320px;
  text-align: center;
}

.g-header__menu .menu__item .img {
  display: block;
  margin-bottom: 0;
}

.g-header__menu .menu__item .img img {
  -webkit-transition: .4s;
          transition: .4s;
  width: 95%;
}

.g-header__menu .menu__item .hdg {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #fff;
  text-align: center;
  color: #fff;
  font-family: 'YakuHanJP', '游明朝体', 'YuMincho', '游明朝', 'Yu Mincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'Noto Serif Japanese', serif, sans-serif;
/*   font-size: 16px; */
  font-size: 14px;
  -webkit-transition: .2s;
          transition: .2s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  min-height: 55px;
}

.g-header__menu .menu__item .hdg.line1 {
  padding-top: 12px;
}
@media all and (-ms-high-contrast: none) {
  .g-header__menu .menu__item .hdg {
    font-family: 'YakuHanJP', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'Noto Serif Japanese', serif, sans-serif;
  }
}

.g-header__menu .menu__item a:hover .hdg {
  opacity: .6;
}

.g-header__menu .menu__item .list {
  padding: 0 0;
}

.g-header__menu .menu__item .list__item {
  margin-bottom: 10px;
  line-height: 1.5;
}

.g-header__menu .menu__item .list__item:last-of-type {
  margin-bottom: 0;
}

.g-header__menu .menu__item .list__item a {
  display: block;
  position: relative;
  padding: 0 0 0 12px;
  color: #fff;
  font-family: 'YakuHanJP', '游明朝体', 'YuMincho', '游明朝', 'Yu Mincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'Noto Serif Japanese', serif, sans-serif;
  font-size: 13px;
  -webkit-transition: .2s;
          transition: .2s;
  opacity: 1;
}

@media all and (-ms-high-contrast: none) {
  .g-header__menu .menu__item .list__item a {
    font-family: 'YakuHanJP', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'Noto Serif Japanese', serif, sans-serif;
  }
}

.g-header__menu .menu__item .list__item a:hover {
  opacity: .6;
}

.g-header__menu .menu__item .list__item a::before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 4px;
  height: 4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: '';
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.g-header__menu .menu__item .list__item--indent {
  margin-top: -5px;
  padding: 0 0 0 1em;
}
.g-header__menu .menu__item .list__item--indent a::before {
  -webkit-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

.g-header__menu .menu.is-open .menu__btn a::before {
  -webkit-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

