/* responsive */
.sp1500,
.sp1200,
.sp768-1200,
.sp1024,
.sp768,
.sp580,
.sp480,
.sp-mb {
  display: none;
}

.pt110 {
  padding-top: 110px !important;
}

.pb110 {
  padding-bottom: 110px !important;
}

@media only screen and (max-width: 1500px) {
  .sp1500 {
    display: block;
  }
  .pc1500 {
    display: none;
  }
}
@media only screen and (max-width: 1200px) {
  .sp1200 {
    display: block;
  }
  .pc1200 {
    display: none;
  }
}

@media only screen and (max-width: 1024px) {
  .sp1024 {
    display: block;
  }
  .pc1024 {
    display: none;
  }
  .sp1200-1024 {
    display: none;
  }
}
@media only screen and (min-width: 992px) {
  .sp992 {
    display: none;
  }
  .pc992 {
    display: block;
  }
}
@media only screen and (max-width: 991px) {
  .sp992 {
    display: block;
  }
  .pc992 {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .sp768-1200 {
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .sp768 {
    display: block;
  }
  .pc768 {
    display: none;
  }
  .mb40 {
    margin-bottom: 20px !important;
  }
  .mb50 {
    margin-bottom: 25px !important;
  }
  .mb60 {
    margin-bottom: 30px !important;
  }
  .mb100 {
    margin-bottom: 50px !important;
  }
  .mt70 {
    margin-top: 35px !important;
  }
  .mt80 {
    margin-top: 40px !important;
  }
  .mt90 {
    margin-top: 45px !important;
  }
  .mt100 {
    margin-top: 50px !important;
  }
}
@media only screen and (max-width: 580px) {
  .sp580 {
    display: block;
  }
  .pc580 {
    display: none;
  }
  .sp-mb {
    display: block;
  }
  .sp-pc {
    display: none;
  }
  .pt110 {
    padding-top: 60px !important;
  }
  .pb110 {
    padding-bottom: 60px !important;
  }
  .pl0sp {
    padding-left: 0px !important;
  }
  .pl10sp {
    padding-left: 10px !important;
  }
  .pl20sp {
    padding-left: 20px !important;
  }
  .pl30sp {
    padding-left: 30px !important;
  }
  .pl40sp {
    padding-left: 40px !important;
  }
  .pl50sp {
    padding-left: 50px !important;
  }
  .pl60sp {
    padding-left: 50px !important;
  }
  .pr0sp {
    padding-right: 0px !important;
  }
  .pr10sp {
    padding-right: 10px !important;
  }
  .pr20sp {
    padding-right: 20px !important;
  }
  .pr30sp {
    padding-right: 30px !important;
  }
  .pr40sp {
    padding-right: 40px !important;
  }
  .pr50sp {
    padding-right: 50px !important;
  }
  .pr60sp {
    padding-right: 50px !important;
  }
  .pt0sp {
    padding-top: 0px !important;
  }
  .pt10sp {
    padding-top: 10px !important;
  }
  .pt20sp {
    padding-top: 20px !important;
  }
  .pt30sp {
    padding-top: 30px !important;
  }
  .pt40sp {
    padding-top: 40px !important;
  }
  .pt50sp {
    padding-top: 50px !important;
  }
  .pt60sp {
    padding-top: 50px !important;
  }
  .pb0sp {
    padding-bottom: 0px !important;
  }
  .pb10sp {
    padding-bottom: 10px !important;
  }
  .pb20sp {
    padding-bottom: 20px !important;
  }
  .pb30sp {
    padding-bottom: 30px !important;
  }
  .pb40sp {
    padding-bottom: 40px !important;
  }
  .pb50sp {
    padding-bottom: 50px !important;
  }
  .pb60sp {
    padding-bottom: 60px !important;
  }
  .mb0sp {
    margin-bottom: 0 !important;
  }
  .mb10sp {
    margin-bottom: 10px !important;
  }
  .mb20sp {
    margin-bottom: 20px !important;
  }
  .mb30sp {
    margin-bottom: 30px !important;
  }
  .mb40sp {
    margin-bottom: 40px !important;
  }
  .mb50sp {
    margin-bottom: 50px !important;
  }
  .mb60sp {
    margin-bottom: 50px !important;
  }
  .mt0sp {
    margin-top: 0 !important;
  }
  .mt10sp {
    margin-top: 10px !important;
  }
  .mt20sp {
    margin-top: 20px !important;
  }
  .mt30sp {
    margin-top: 30px !important;
  }
  .mt40sp {
    margin-top: 40px !important;
  }
  .mt50sp {
    margin-top: 50px !important;
  }
  .mt60sp {
    margin-top: 60px !important;
  }
  .mt100sp {
    margin-top: 100px !important;
  }
}
@media only screen and (max-width: 480px) {
  .sp480 {
    display: block;
  }
  .pc480 {
    display: none;
  }
}