@charset "EUC-JP";

/*==================================================
 MENUがCLOSEに
===================================*/

/*ハンバーガーメニューのタイミング*/
/*768pxでのタイミングを480pxに変更する 23.4.24*/
@media screen and (max-width: 768px){
/*@media screen and (max-width: 480px){*/

.openbtn4{
/*  bottom: 20px; */
  top: 0;
  position: absolute;/*ボタン内側の基点となるためrelativeを指定*/
  cursor: pointer;
  width: 50px;
  height:50px;
  border-radius: 5px;
  z-index: 99;
}

/*ボタン内側*/
.openbtn4 span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 2px;
    border-radius: 5px;
  background: #333;
    width: 45%;
  }


.openbtn4 span:nth-of-type(1) {
  top:13px; 
}

.openbtn4 span:nth-of-type(2) {
  top:19px;
}

.openbtn4 span:nth-of-type(3) {
  top:25px;
}

.openbtn4 span:nth-of-type(3)::after {
  content:"Menu";/*3つ目の要素のafterにMenu表示を指定*/
  position: absolute;
  top: 4px;
  left:-3px;
  color: #333;
  font-size: 0.6rem;
  text-transform: uppercase;
}

/*activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更*/

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

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

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

.openbtn4.active span:nth-of-type(3)::after {
  content:"Close";/*3つ目の要素のafterにClose表示を指定*/
    transform: translateY(0) rotate(-45deg);
  top:5px;
  left:4px;
}

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

nav{
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position:fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
  top:88px;
  left: -120%;
  width:100%;
  height: 100vh;/*ナビの高さ*/
  background:#e1dfdf;
  /*動き*/
  transition: all 0.6s;
  }

  /*アクティブクラスがついたら位置を0に*/
nav.panelactive{
    left: 0;
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 179; 
    width:80%;
    /*height: 100vh;/*表示する高さ*/
    overflow: auto;
    max-height: calc(100% - 60px);
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
}

  nav ul{
    display: block;   /*同じ要素使用で縦並びにする*/
  }
  
  nav li.has-child ul,
  nav li.has-child ul ul{
  position: relative;
  left:0;
  top:0;
  width:100%;
  visibility:visible;/*JSで制御するため一旦表示*/
  opacity:1;/*JSで制御するため一旦表示*/
/*  display: none;/*JSのslidetoggleで表示させるため非表示に*/
  transition:none;/*JSで制御するためCSSのアニメーションを切る*/
}
  
nav ul li a, nav li.has-child p{
  border-bottom:1px solid #ccc;
  color: #092846;
}

/*矢印の位置と向き*/

nav ul li.has-child::before{
/*  left:20px; */
  display: none; 
}

nav ul ul li.has-child::before{
    transform: rotate(135deg);
  left:20px;
}
    
nav ul li.has-child.active::before{
    transform: rotate(-45deg);
}

/* コンテンツカバー */
.panelactive .hamburger-bg{
    display: block;
}

/* ハンバーガーメニューを開いたときの背景を透過させる */
.hamburger-bg{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 88px;
	left: 0;
	z-index: 78;
	background: rgba(0,0,0,60%);
	display: block;
}

nav li.has-child p{
       padding: 7px 15px;
}

nav li.has-child ul li a{
       color: #092846;
       background: #ffffff;
       border-bottom: solid 1px #999;
       padding: 15px 45px;
}

nav li.has-child ul li::after,
nav li.has-single::after{
    content: '';
    position: absolute;
    right: 14px;
    top: 24px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #999;
    border-right: 2px solid #999;
    transform: rotate(45deg);
}
}

/*23.4.24*/
@media screen and (max-width: 660px){
/*@media screen and (max-width: 480px){*/
.openbtn4{
/*  bottom: 6px; */
}
}
  
@media screen and (max-width: 480px){

/* ハンバーガーメニューを開いたときの背景を透過させる */
.hamburger-bg{
  top: 58px;
}

nav{
  top: 58px;
}
}
