/* menu icon */
.openbtn{
	position: relative;
	cursor: pointer;
                                width: 50px;
                                height:50px;
                                z-index:100;
}

/*ボタン内側*/
.openbtn span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 2px;
  	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;
}

/*activeクラスが付与されると線が回転して×に*/

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.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%;
}




#header {
                                z-index: 9999;
                                font-weight: normal;
                                font-size: 13px;
	font-family:  'Montserrat', sans-serif;
                                font-weight: 700;
	margin: 0;
	padding: 0;
	display: block;
	position: fixed;
	top: 0; left: 0;
	width: 100%;
	text-align: left;
                                background: #fff;
                                box-shadow: 0 0 4px rgba(0,0,0,0.3);
}
nav {
}
nav ul {
	display: none;
	margin: 2em 0 0;
                                height: 700px
}
nav ul.active {
	display: block;
}
ul#g-navi li {
	text-align: center;
	padding: 0;
                                border-bottom: 1px solid #eee;
}
ul#g-navi li:last-child {
                                border-bottom: none;
}

ul#g-navi li a {
	text-decoration: none;
	display: block;
	padding: 15px 0;
                                letter-spacing: 2px;
}
ul#g-navi li a::after {
                                background-color: #fff;
                                /*背景白は、background-color: #000; */
}
nav a:hover {
	text-decoration: none;
}
ul#menu li.nav_off {
	color: #666;
	padding: 16px 10%;
}

#nav_name {
                                position: absolute;
                                top:10px; left:0; right: 0;
                                text-align: center;
                                z-index:1;
                                width: 100%;
}
#nav_name a {
	text-decoration: none;
                                font-size: 18px;
	font-family:  'Montserrat', sans-serif;
                                font-weight: 700;
                                z-index:1;
                                letter-spacing: 2px;
}


/*980px以上 ----------------------------------------*/

@media screen and (min-width:980px){

#nav_name {
                                top:20px; left:0; right: 0;
                                display: block;
}
#nav_name a {
                                font-size: 25px;
                                letter-spacing: 6px;
                                color: #000;
}
#nav_name a:hover {
                                opacity: 0.7
}

#header {
                                position: fixed;
                                width: 980px;
                                left:0; right:0;
                                margin: auto;
                                position: absolute;
}


nav {
                                position: fixed;
	background: none;
	text-align: center;
	width: 20%;
                                height: 300px;
                                top: 50px; right: 4%;
}

.openbtn {
	display: none;
}



#g-navi {
	background: none;
	margin: 0 auto;
}
nav ul#g-navi {
	display: block;
	margin: 50px auto 0;
                                width: auto;
	padding:  0;
	width: 170px;
                                letter-spacing: 3px;
}
ul#g-navi li {
	text-align: right;
                                border-bottom: none;
                                width: auto;
                                position: relative;
                                margin: 25px 10px;
} 
ul#g-navi li a {
	text-decoration: none;
	width:auto;
                                color: #fff;
                                 /*背景白は、color: #000;*/
                                font-size: 16px;
	padding: 0;
                                border-bottom: none;
	position: relative;
}


ul#g-navi li a::after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    bottom: 0;
    right: 0;
    /*線の形状*/
    width: 100%;
    height: 3px;
    /*アニメーションの指定*/
    transition: all .3s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: right top;/*左上基点*/
}

/*現在地とhoverの設定*/
ul#g-navi li.current a::after,
ul#g-navi li a:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}




}