@charset "UTF-8";


/* ハンバーガーメニュー ------------------------------------*/
#navArea nav {
  display: block;
  position: fixed;
  top: 30px;
  left: 100%;
  width: 100%;
  height: 100px;
  background: rgba(255,255,255,0.5);
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 99999;
  opacity: 0;
}
#navArea.open nav {
  top: 30px;
  left: 0;
  opacity: 1;
}
#navArea nav .inner {
  width: 95%;
  max-width: 1600px;
  margin: auto;
}
#navArea nav .inner ul {
  list-style: none;
  margin: auto;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;

  height: 100px;
  position: relative;
}
#navArea nav .inner ul li {
  position: relative;
  list-style: none;
  text-align: center; 
}
ul#primary-menu li:first-child { grid-area: 1 / 1 / 3 / 2; 
  height: 100px;
  line-height: 100px;
  text-shadow:0 0 15px #000000;
  }

ul#primary-menu li:nth-child(2) { grid-area: 1 / 2 / 2 / 3; 
  text-shadow:0 0 15px #fa9494;}
ul#primary-menu li:nth-child(3) { grid-area: 2 / 2 / 3 / 3; 
  text-shadow:0 0 15px #fcae46;}
ul#primary-menu li:nth-child(4) { grid-area: 1 / 3 / 2 / 4; 
  text-shadow:0 0 15px #6161fc;}
ul#primary-menu li:nth-child(5) { grid-area: 2 / 3 / 3 / 4; 
  text-shadow:0 0 15px #f8f45b;}
ul#primary-menu li:nth-child(6) { grid-area: 1 / 4 / 2 / 5; 
  text-shadow:0 0 15px #b64bf6;}
ul#primary-menu li:nth-child(7) { grid-area: 2 / 4 / 3 / 5; 
  text-shadow:0 0 15px #f95061;}
ul#primary-menu li:nth-child(8) { grid-area: 1 / 5 / 2 / 6; 
  text-shadow:0 0 15px #ffa33e;}
ul#primary-menu li:nth-child(9) { grid-area: 2 / 5 / 3 / 6; 
  text-shadow:0 0 15px #6161fc;}
ul#primary-menu li:nth-child(10) { grid-area: 1 / 6 / 2 / 7; 
  text-shadow:0 0 15px #333333;}
ul#primary-menu li:hover {
  text-shadow:0 0 15px #fff;
  transition: 0.5s;}
/*検索*/
ul#primary-menu li:last-child{ display: none;}

#navArea nav .inner ul li a {
  display: block;
  color: var(--color_w);
  text-decoration: none;
  transition-duration: 0.2s;
  font-family: "calibri", sans-serif;
  font-weight: 700;
  font-style: normal;  
  font-size: 3.4rem;
}
#navArea nav .inner ul li.fc a{
  -webkit-text-stroke: 2px var(--color_main2);
  text-stroke: 2px var(--color_main2);
  paint-order: stroke;
}

#navArea nav .inner ul li ul.sub-menu{
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content: center; 
  opacity: 0;
}
#navArea nav .inner ul li ul.sub-menu li{
   text-shadow:0 0 15px #f8f45b;
   padding: 0 10px;
}
#navArea nav .inner ul li ul.sub-menu li:hover{
  text-shadow:0 0 15px #fff;
  transition: 0.5s; 
}
#navArea nav .inner ul li ul.sub-menu li:first-child{
  height: 50px;
  line-height: 50px;
}
#navArea nav .inner ul li ul.sub-menu li:last-child{
  display: block;
}
#navArea nav .inner ul li:hover ul.sub-menu{
  opacity: 1;
  transition: 0.3s;

}

/* toggle_btn */
.toggle_btn {
  display: block;
  position: fixed;
  top: 50px;
  right: 50px;
  width: 60px;
  height: 55px;
  transition: all .5s;
  cursor: pointer;
  z-index: 999999;
}
.toggle_btn span {
  display: block;
  position: absolute;
  right: 0;
  height: 3px;
  border-radius: 4px;
  transition: all .5s;
  background-color: var(--color_w);
}
/*TOP*/
.home .toggle_btn span{
  background-color: var(--color_w);
}
.post-type-archive-discography .toggle_btn span{
  background-color: #1AE9FF;
}
.post-type-archive-shop .toggle_btn span{
  background-color: #0000FF;
}
.page-id-353 .toggle_btn span{
  background-color: #CCFF98;
}
.page-id-2813 .toggle_btn span{
  background-color: #C01920;
}

.toggle_btn span:nth-child(1) {
  width: 30px;
  top: 15px;
  right: 13px;
}
.toggle_btn span:nth-child(2) {
  width: 30px;
  top: 24px;
  right: 13px;
}
.toggle_btn span:nth-child(3) {
  width: 30px;
  top: 33px;
  right: 13px;
}
.toggle_btn:hover span{
    color: var(--color_main2);   
}
.open .toggle_btn span {
  color: var(--color_w);   
  background-color: var(--color_w);    
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(8px) rotate(-315deg);
  transform: translateY(8px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  width: 30px;
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}

/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  opacity: 1;
  z-index: 2;
  cursor: pointer;
}


/* 追加CSS　*/
@media only screen and (max-width: 1440px) {
  #navArea nav .inner{
    width: 90%;
  }
  #navArea nav .inner ul li a{
    font-size: 2.6rem;
  }
}

@media only screen and (max-width: 1024px) {
  .toggle_btn{
    right: 0;
    top: 10px;
  }
  .open .toggle_btn{
    top: 50px;
  }
#navArea nav .inner{
  margin: 0;
}
}

@media only screen and (max-width: 840px) {
  .toggle_btn{
    right: 0;
  }
  #navArea nav .inner ul li{
    line-height: 50px;
  }
  #navArea nav .inner ul li:first-child{
    line-height: 100px;
    }
  #navArea nav .inner ul li a{
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 600px) {
.open .toggle_btn{
  top: 30px;
}
#navArea nav{
    height: 100vh;    
    padding-top: 40px;
  }
#navArea nav .inner ul {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  height: auto;
}  
#navArea nav .inner ul li{
  width: 100%;
  margin: 0;
  text-align: left;
  padding-left: 35px;
}
#navArea nav .inner ul li a{
  font-size: 2.6rem;
}
#navArea nav .inner ul li:first-child{
  height: 50px;
  line-height: 50px;
}
#navArea nav .inner ul li:nth-child(5){
  width: 100%;
}
#navArea nav .inner ul li ul.sub-menu{
  opacity: 1;
}
#navArea nav .inner ul li ul.sub-menu li{
  padding: 0 0 0 25px; 
}
}
