@charset "UTF-8";

/* ----------------------
ハンバーガーメニュー
------------------------- */
/* ボタン外側 */
.openbtn {
    display: none;
    position: fixed;
    right: 5%;
    background-color: #223a70;
    z-index: 999;
    cursor: pointer;
    width: 60px;
    height: 55px;
    border-radius: 5px;
}
.openbtn:hover,
.openbtn:focus {
    border: 2px solid #000000;
    border-radius: 5px;
}

/* ボタン内側 */
.openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 11px;
    height: 2px;
    border-radius: 2px;
    background-color: #ffffff;
    width: 60%;
}

.openbtn span:nth-child(1) {
    top: 11px;
}

.openbtn span:nth-child(2) {
    top: 18px;
}

.openbtn span:nth-child(3) {
    top: 25px;
}

/*３つ目の要素のafterにMenu表示を指定*/
.openbtn span:nth-child(3)::after {
    content: "Menu";
    position: absolute;
    top: 11px;
    left: 2px;
    font-size: 0.65rem;
    text-transform: uppercase;
    color: #ffffff;
}
/* CSSハック IE対応 */
_:-ms-lang(x)::-ms-backdrop,.openbtn span:nth-child(3)::after {
    font-size: 0.65rem;
  }
/* CSSハック Firefox*/
_:lang(x)::-moz-placeholder,.openbtn span:nth-child(3)::after{
    font-size: 0.65rem;
  }


/* activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更 */
.openbtn.active span:nth-child(1) {
    top: 10px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.openbtn.active span:nth-child(2) {
    opacity: 0;
}

.openbtn.active span:nth-child(3) {
    top: 22px;
    left: 19px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

.openbtn.active span:nth-child(3)::after {
    /*3つ目の要素のafterにClose表示を指定*/
    content: "Close"; 
    transform: translateY(0) rotate(-45deg);
    top: 12px;
    left: 9px;
}

/* ナビゲーションのためのCSS */
/*position: fixed;にし、z-indexの数値を小さくして背面へ*/
#g-nav {
    position: fixed;
    /*ナビのスタート位置と形状*/
    top: -120%;
    left: 0;
    width: 100%;
    height: 100vh; /*ナビの高さ*/
    background-color: #E6B422;
    /* 動き */
    transition: all 0.6s;
    z-index: 99;
}

/* アクティブクラスがついたら透過なしにして最前面へ */
#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 {
    display: none; /*はじめは非表示*/
    /*　ナビゲーション天地中央揃え */
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

#g-nav.panelactive ul {
    display: block;
}

#g-nav li {
    margin: 30px;
    text-align: center;
    padding-right: 0;
}

#g-nav li a {
    color: #000000;
    padding: 10px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: bold;
    font-size: 1.25rem;
}

#g-nav li a:hover {
    display: block;
    border-bottom: 3px solid #223a70;
}

@media (max-width: 1300px) {
	.openbtn {
        display: block;
    }
}