/* responsive */
.pc {}
.sp560, .sp480, .sp420, .sp380, .sp {
  display: none
}
@media screen and (min-width: 751px) and (max-width: 1281px) {
  .box_product_slide ul li {
    height: 80vh;
  }
}
@media screen and (min-width: 751px) {
  .btn a:hover, .btn_w a:hover, .btn_gray a:hover, .btn_gray input:hover, .box_contact .btn a:hover {
    background: #000;
    color: #fff;
    cursor: pointer
  }
  .box_contact ul li a:hover, .box_package_img p a:hover, .btn_side:hover span, .box_case ul li a:hover, .box_product .slick-arrow:hover {
    opacity: 0.7
  }
  .box_case ul li:nth-child(3n + 3) {
    margin-right: 0
  }
  .box_contact ul li:nth-child(4n + 4), .box_contact ul li:last-child {
    margin-right: 0
  }
  .box_contact ul li a.none:hover {
    text-decoration: none;
    opacity: 1
  }
}
@media screen and (max-width: 750px) {
  h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
    font-size: 14px;
    letter-spacing: 0
  }
  #wrapper, header, #main, footer, .inner {
    width: 100% !important;
    min-width: inherit !important;
  }
  .inner {
    box-sizing: border-box;
    padding: 0 15px;
  }
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
  /*==========================================================================*/
  /*                               ALL                                        */
  /*==========================================================================*/
  header {
    height: 60px;
    display: flex;
    align-items: center;
    padding: 0 15px;
    background: #fff;
  }
  header h1 {
    width: 160px;
    margin: 5px 0;
  }
  .btn_open {
    top: 0;
    right: 0
  }
  nav {
    width: 100%;
    top: 60px;
    padding: 50px 30px;
    transition: all ease 0.3s;
  }
  #index h2 {
    margin-bottom: 15px;
    font-size: 24px;
    letter-spacing: 0
  }
  .btn a {
    width: 290px;
    height: 45px
  }
  /*==========================================================================*/
  /*                               MAIN                                       */
  /*==========================================================================*/
  #main {
    margin-top: 60px;
  }
  .box_product, .box_product_slide {
    margin-bottom: 50px;
  }
  .box_product_slide ul li {
    height: auto;
    background: #999
  }
  .box_product_slide ul li .info {
    z-index: 5;
    position: inherit;
    bottom: inherit;
    left: 0;
    padding: 15px 0;
    color: #fff
  }
  .box_product_slide ul li .info .btn a {
    margin: 0 auto;
    background: #fff;
    color: #000
  }
  .box_product .slick-arrow {
    top: calc((100% - 180px) / 2);
    left: 15px
  }
  .box_product .slick-next {
    left: inherit;
    right: 15px;
  }
  .box_solution {
    padding: 0
  }
  .box_solution_txt {
    margin-top: 50px;
  }
  .box_case {
    padding: 50px 0
  }
  .box_case ul {
    margin-bottom: 0
  }
  .box_case ul li {
    width: 100vw;
    height: 100vw;
    margin: 0 0 70px;
  }
  .box_case ul li:last-child {
    margin-bottom: 0
  }
  .box_case_txt {
    margin-top: 70px;
  }
  .box_package_item {
    margin-bottom: 35px;
  }
  .box_contact {
    padding: 50px 0
  }
  .box_contact ul {
    justify-content: center;
    margin-bottom: 0
  }
  .box_contact ul li {
    margin: 0 10px 30px
  }
  footer address {
    padding: 15px 0;
    line-height: 2em;
  }
  .footer_link {
    flex-wrap: wrap
  }
  .footer_link ul {
    width: 100%;
    margin: 0 0 15px;
  }
}
@media screen and (max-width: 560px) {
  .pc560 {
    display: none
  }
  .sp560 {
    display: block
  }
  .box_package_item {
    width: 100%;
  }
  .box_contact ul li {
    width: calc((100% - 20px) / 2);
    margin: 0 5px 0;
  }
}
@media screen and (max-width: 480px) {
  .pc480 {
    display: none
  }
  .sp480 {
    display: block
  }
}
@media screen and (max-width: 420px) {
  .pc420 {
    display: none
  }
  .sp420 {
    display: block
  }
  .box_product_slide ul li {
    height: calc(100vh - 60px)
  }
  .box_product_slide ul li .info {}
  .box_product_slide ul li .img {
    height: calc(100% - 180px);
    overflow: hidden;
    position: relative
  }
  .box_product_slide ul li .img img {
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: inherit;
    transform: translate(-50%, -50%);
  }
}
@media screen and (max-width: 380px) {
  .pc380 {
    display: none
  }
  .sp380 {
    display: block
  }
}
/* 2022,06,16追記(Amazing Day) */
@media screen and (max-width: 480px) {
  /* movie */
  .bg-video-wrap {
    min-height: unset;
    max-height: 230px;
    margin-bottom: 50px;
  }
  video {
    margin: 0;
	padding:0;
  }
  .overlay {
    height: 100%;
    margin-top: -9px;
  }
}
@media screen and (max-width: 380px) {
  .overlay {
    margin-top: -18px;
  }
}