@charset "utf-8";

/*========= ナビゲーションのためのCSS ===============*/

#g-nav {
   /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
   position: fixed;
   z-index: -1;
   opacity: 0;
   /*はじめは透過0*/
   /*ナビの位置と形状*/
   top: 0;
   width: 100%;
   height: 100vh;
   /*ナビの高さ*/
   background: #ffffff;
   /*動き*/
   transition: all 0.3s;
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive {
   opacity: 1;
   z-index: 999;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
   /*ナビの数が増えた場合縦スクロール*/
   position: fixed;
   z-index: 999;
   width: 100%;
   height: 100vh;
   /*表示する高さ*/
   overflow: auto;
   -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
   display: none;
   /*ナビゲーション天地中央揃え*/
   position: absolute;
   z-index: 999;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

#g-nav.panelactive ul {
   display: block;
}

/*リストのレイアウト設定*/

#g-nav li {
   list-style: none;
   text-align: center;
}

#g-nav li a {
   color: #313131;
   text-decoration: none;
   padding: 10px;
   display: block;
   text-transform: uppercase;
   letter-spacing: 0.1em;
   font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn1 {
   position: fixed;
   z-index: 9999;
   /*ボタンを最前面に*/
   top: 30px;
   right: 30px;
   cursor: pointer;
   width: 50px;
   height: 50px;
}

/*×に変化*/
.openbtn1 span {
   display: inline-block;
   transition: all .4s;
   position: absolute;
   left: 14px;
   height: 3px;
   border-radius: 2px;
   background-color: #666;
   width: 45%;
}

.openbtn1 span:nth-of-type(1) {
   top: 15px;
}

.openbtn1 span:nth-of-type(2) {
   top: 23px;
}

.openbtn1 span:nth-of-type(3) {
   top: 31px;
}

.openbtn1.active span:nth-of-type(1) {
   top: 18px;
   left: 18px;
   transform: translateY(6px) rotate(-45deg);
   width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
   opacity: 0;
}

.openbtn1.active span:nth-of-type(3) {
   top: 30px;
   left: 18px;
   transform: translateY(-6px) rotate(45deg);
   width: 30%;
}