@charset "utf-8";

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

#g-nav {
	position:fixed;
	z-index: 999;
	/*ナビのスタート位置と形状*/
	top:-150%;
	left:0;
	width:100%;
	height: 100vh;
	background: rgba(255,255,255,0.9);
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive { top: 0; }

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

/*ナビゲーション*/
#g-nav ul {
	z-index: 999;
	padding: 0;
}

/*リストのレイアウト設定*/
#g-nav li {
	list-style: none;
    text-align: center; 
	background-color: #76d5cd;
	margin: 0 0 5px;
	border-radius: 5px;
	font-family: 'Zen Kaku Gothic New', sans-serif;
}

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

@media screen and (max-width:580px){
#g-nav li a { font-size: 13px; padding: 8px 10px; }
}

/*========= ボタンのためのCSS ===============*/

.openbtn {
	margin: auto;
	position:relative;
	z-index: 9999;
	cursor: pointer;
	width: 50px;
	height:50px;
}
	
/*×に変化*/	
.openbtn span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
	height: 3px;
	border-radius: 2px;
	background-color: #fff;
	width: 45%;
}

.openbtn span:nth-of-type(1) { top:15px; }
.openbtn span:nth-of-type(2) { top:23px; }
.openbtn span:nth-of-type(3) { top:31px; }

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

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

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