@charset "UTF-8";


/*------------------------------------------------*/
/*------------------- header ---------------------*/
/*------------------------------------------------*/

.header{
background-color: var(--color-white);
z-index: 50;
height: 53px;
}

/* header logo */
.header .header-logo a{
padding: 7px 10px;
display: flex;
justify-content: flex-start;
display: inline-block;
}
.header .header-logo img{
width:70px;
}
.header .header-logo h2{
display: inline-block;
margin-left: 10px;
font-weight: 100;
font-size: var(--s14);
letter-spacing: 1px;
vertical-align: middle;
margin-top: 7px;
}


/* 展開メニュー */
.header-nav {
position: fixed;
top: 0;
bottom: 0;
overflow-x: hidden;
-webkit-transition: all 0.3s;
transition: all 0.3s;
z-index: 3;
opacity: 0;
display: grid;
place-content: center;/*gridの中央配置*/
place-items: center;/*要素二つ以上ある場合に*/
width:0;
height:0;
padding: 20px 0;
margin: 20px 0;
overflow-y: scroll;
/* IE, Edge 対応 */
-ms-overflow-style: none;
/* Firefox 対応 */
scrollbar-width: none;
}
/* Chrome, Safari 対応 */
.header-nav::-webkit-scrollbar {
display:none;
}



.open .header-nav {
left: 0;
opacity: 1;
width: 100%;
height:auto;
}

.header-nav__group .header-nav__item{
font-size: var(--s16);
color: var(--color-white);
margin: 5px 0;
display: block;
}
.header-nav__group .header-nav__item a{
color: var(--color-white);
display: block;
padding: 7px 10px;
}
/* lang mail */
.header-nav__group .item09,
.header-nav__group .item10{
margin-top: 30px;
width: 48%;
height: 30px;
padding: 5 5px;
  display: grid;
  place-content: center;/*gridの中央配置*/
  place-items: center;/*要素二つ以上ある場合に*/
}
.header-nav__group .item09 img,
.header-nav__group .item10 img{
width: 30px;
}
.header-nav__group .item09{float: left;}
.header-nav__group .item10{float: right;}

/* メニュー内ランゲージボタン調整 */
a.gt_switcher-popup{
display: block;
background-image: url(../img/icon_lang.svg);
background-position: center center;
background-size: 25px;
width: 60px;
height:60px;
}
a.gt_switcher-popup img,
a.gt_switcher-popup span{
display: none!important;
width: 0;
height: 0;
}






/* nav sub */
.header-nav__group-sub{
margin-left: 20px;
border-left: 1px solid var(--color-white);
}
.header-nav__group-sub .header-nav__group-sub-item{
display: block;
width: 170px;
margin: 5px 0;
}



/* メニュー外ランゲージを非表示 */
.sp_lang a.gt_switcher-popup{
display: block;
position: fixed;
top: 0px;
right: 0px;
background-color: var(--color-black);
background-image: url(../img/icon_lang.svg);
background-position: center center;
background-size: 25px;
width: 53px;
height: 53px;
}
.sp_lang a.gt_switcher-popup img,
.sp_lang a.gt_switcher-popup span{
display: none!important;
width: 0;
height: 0;
}



/* ハンバーガー */
.toggle_btn {
  display: block;
  position: fixed;
  top: 10px;
  right: 70px;
  width: 40px;
  height: 30px;
  transform: translate(0, 0);
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
mix-blend-mode: difference;
}
.toggle_btn span {
  display: block;
  position: absolute;
  right: 0;
  width: 30px;
  height: 1.5px;
  background-color: #fff;
  transition: all .5s;
mix-blend-mode: exclusion;
}
.toggle_btn span:nth-child(1) {
  top: 5px;
  width: 60px;
  animation: equalizer01 7000ms infinite;
}
.toggle_btn span:nth-child(2) {
  top: 15px;
  width: 30px;
  animation: equalizer02 5000ms infinite;
  animation-delay: 0.33s;
}
.toggle_btn span:nth-child(3) {
  top: 25px;
  width: 20px;
  animation: equalizer02 5000ms infinite;
}
.open .toggle_btn span {
  background-color: #fff;
  width: 30px;
}
.open .toggle_btn span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
  animation: unset;
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
  animation: unset;
}
.open .toggle_btn span:nth-child(3) {
  transform: translate(0, -10px) rotate(45deg);
  animation: unset;
}
@media screen and (max-width: 767px) {
  .open .toggle_btn {
  top: 10px;
  right: 15px;
  }
}
@keyframes equalizer01 {
  0% {
    width: 70%;
  }
  10% {
    width: 50%;
  }
  20% {
    width: 100%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 50%;
  }
  50% {
    width: 70%;
  }
  60% {
    width: 50%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 100%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 70%;
  }
}
@keyframes equalizer02 {
  0% {
    width: 30%;
  }
  10% {
    width: 20%;
  }
  20% {
    width: 40%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 20%;
  }
  50% {
    width: 30%;
  }
  60% {
    width: 20%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 40%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 30%;
  }
}



/* 背景マスク */
#mask {
display: none;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.open #mask {
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #000;
opacity: 0.7;
z-index: 2;
cursor: pointer;
}


/* スクロール後 */
.toggle_btn.scroll-nav {
background-color: aqua;
}


