@charset "utf-8";
/* CSS Document */



/* sp-navを設定・スマホボタンを設定 */

#sp-nav{
  position:fixed;
  z-index: 999;
  top:50px;
  right: -120%;
  width:100%;
  /*max-width: 800px;*/
  min-height: 100vh;
  background: #fff;
  transition: all 0.6s;
}
#sp-nav.panelactive{
    right: 0;
}
#sp-nav.panelactive #sp-nav-list{
  /*position: fixed;*/
  z-index: 999;
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin-left: auto; margin-right: auto;
}
#sp-nav ul {
  position: absolute;
  z-index: 999;
  top: 3vh;
  width: 100%;
  padding-bottom: 80px;
}
#sp-nav li{
  list-style: none;
}
#sp-nav li a{
  text-decoration: none;
  display: block;
}
#sp-nav li.spnav-btn a{
  color: #000;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 500;
  border-top: 1px dotted rgba(0,0,0,0.10);
  padding: 15px;
  position: relative;
  text-align: center;
}
#sp-nav li:last-child a{
  border-bottom: 1px dotted rgba(0,0,0,0.10);
}
#sp-nav li:last-child{
  margin-bottom: 100px;
}
#sp-nav li.spnav-btn a i{ position: absolute; right: 20px; top: 50%; transform: translateY(-50%); font-size: 90%;}
#sp-nav li.spnav-tel{
  max-width: 260px; margin: 15px auto;
}
#sp-nav li.spnav-tel a{
  background-color: #fff;
}
#sp-nav li.spnav-line .contact1-line{ width: 100%; max-width: 260px; margin: 20px auto 30px auto; font-size: 1.6rem; line-height: 1.6;}

.openbtn1{
  position:fixed;
  z-index: 9999;
  top:0px;
  right: 0px;
  cursor: pointer;
  width: 50px;
  height:50px;
  background-color: var(--color-bw);
}
.openbtn1 span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 7px;
  height: 2px;
  border-radius: 2px;
  background-color: #fff;
  width: 36px;
}
.openbtn1 span:nth-of-type(1) {
  top:15px;
}
.openbtn1 span:nth-of-type(2) {
  top:23px;
}
.openbtn1 span:nth-of-type(3) {
  top:31px;
}
.openbtn1.active span:nth-of-type(1) {
  top: 18px;
  left: 10px;
  transform: translateY(6px) rotate(-45deg);
  width: 30px;
}
.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn1.active span:nth-of-type(3){
  top: 30px;
  left: 10px;
  transform: translateY(-6px) rotate(45deg);
  width: 60%;
}
@media screen and (min-width: 720px){
  #sp-nav{
    top:70px;
  }
  .openbtn1{
    width: 70px;
    height:70px;
  }
  .openbtn1 span{
    left: 10px;
    height: 2px;
    border-radius: 2px;
    background-color: #fff;
    width: 50px;
  }
  .openbtn1 span:nth-of-type(1) {
    top:22px;
  }
  .openbtn1 span:nth-of-type(2) {
    top:34px;
  }
  .openbtn1 span:nth-of-type(3) {
    top:46px;
  }
  .openbtn1.active span:nth-of-type(1) {
    top: 29px;
    left: 12px;
    transform: translateY(6px) rotate(-45deg);
    width: 70%;
  }
  .openbtn1.active span:nth-of-type(2) {
    opacity: 0;
  }
  .openbtn1.active span:nth-of-type(3){
    top: 41px;
    left: 12px;
    transform: translateY(-6px) rotate(45deg);
    width: 70%;
  }
}

