@charset "UTF-8";

#btn_open{
  display: none;
}

label .menu {
  position: fixed;
  right: -100px;
  top: -100px;
  z-index: 10000;
  width: 200px;
  height: 200px;
  background:rgba(242,158,59,0.7);
  border-radius: 50% 50% 50% 50%;
  -webkit-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  box-shadow: 0 0 0 0 #FFF, 0 0 0 0 #FFF;
  cursor: pointer;
  
}

label .hamburger {
  position: absolute;
  top: 135px;
  left: 50px;
  width: 30px;
  height: 2px;
  background: #FFF;
  display: block;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
}

label .hamburger:after, label .hamburger:before {
  -webkit-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background: #FFF;
}

label .hamburger:before { top: -10px; }

label .hamburger:after { bottom: -10px; }

label input { display: none; }

label input:checked + .menu {
  box-shadow:  0 0 0 100vh rgba(241,219,61,0.9);
  border-radius: 80px;
  
}

label input:checked + .menu .hamburger {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  
}

label input:checked + .menu .hamburger:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  bottom: 0;
  
}

label input:checked + .menu .hamburger:before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 0;
  
}



.nav_flex {
  width: 300px;
  z-index: 100000;
  position: fixed;
  top: 0;
  right: -1000px;
  opacity: 0;
  -webkit-transition: 0.5s 0s ease-in-out;
  transition: 0.5s 0s ease-in-out;
}
label input:checked ~ .nav_header .nav_flex{
  opacity: 1;
  right: 200px;
}


label a {
  margin: 10px 0;
  display: block;
}

.header .nav_flex{
  flex-direction: column;
  }
  .header .nav_flex li{
    line-height:20px;
    font-size: 20px;
    border-right: 0;
    padding: 5px;
  }
  
  .fonts{
    letter-spacing: 0.3em;
    color: #655c59;
    font-family: "Mochiy Pop One", sans-serif;
  }
  
  .nav_flex li:last-child{
    border-bottom: none;
  }
  .nav_flex .nav_icon a::before{
    content: "";
    display: inline-block;
    width: 50px;
    height: 50px;
    transform: translateY(15px);
    margin-right: 10px;
  }
  .nav_flex .cp a::before{
      background: url(../images/common/cp.png)no-repeat 80% 100%/100%;
  }
  .nav_flex .aci a::before{
      background: url(../images/common/aci.png)no-repeat 80% 100%/100%;
  }
  .nav_flex .sfu a::before{
      background: url(../images/common/sfu.png)no-repeat 80% 100%/100%;
  }
  .nav_flex .rin a::before{
      background: url(../images/common/rin.png)no-repeat 80% 100%/100%;
  }

  .icon_nav{
    display: flex;
    align-items: center;
    margin: 0 auto;
    width: 220px;
  }

  .icon_nav img{
    padding:30px;
  }


/* ホバー */
.nav_flex li a:hover{
  color: #F29E3B;
  text-decoration: underline dotted #F29E3B 5px;
  font-size: x-large;
}


@media screen and (max-width:800px){

  label input:checked + .menu {
    box-shadow:  0 0 0 100vh rgba(241,219,61,0.9);
  }
  label a {
    margin: 0;
  }

  label input:checked ~ .nav_header .nav_flex{
    opacity: 1;
    right: 130px;
  }

  .header .nav_flex li{
    line-height:40px;
    font-size: 18px;
    border-right: 0;
    padding: 5px;
  }
  
}

@media screen and (max-width:430px){
  label .menu {
    width: 175px;
    height: 175px;
  }
  label .hamburger {
    position: absolute;
    top: 130px;
    left: 35px;
    width: 25px;
    height: 2px;
    background: #FFF;
    display: block;
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}
  label input:checked + .menu {
    box-shadow:  0 0 0 100vh rgba(241,219,61,0.9);
    border-radius:80px;
  }
  label input:checked ~ .nav_header .nav_flex{
    opacity: 1;
    right: 40px;
  }

  .header .nav_flex li{
    line-height:20px;
    font-size: 14px;
  }
}
