@charset "utf-8";

.sp1600,.sp1400,.sp1024,.sp1024-768.sp768,.sp480,.sp400,.sp-video {
    display: none;
}

.pc1024 {
  display: block;
}

.header-logo-sp {
  display: none;
}

.pt0 {
    padding-top: 0 !important;
  }
  
  .pt1 {
    padding-top: 1px !important;
  }
  
  .pt2 {
    padding-top: 2px !important;
  }
  
  .pt3 {
    padding-top: 3px !important;
  }
  
  .pt4 {
    padding-top: 4px !important;
  }
  
  .pt5 {
    padding-top: 5px !important;
  }
  
  .pt6 {
    padding-top: 6px !important;
  }
  
  .pt7 {
    padding-top: 7px !important;
  }
  
  .pt8 {
    padding-top: 8px !important;
  }
  
  .pt9 {
    padding-top: 9px !important;
  }
  
  .pt10 {
    padding-top: 10px !important;
  }
  
  .pt15 {
    padding-top: 15px !important;
  }
  
  .pt20 {
    padding-top: 20px !important;
  }
  
  .pt25 {
    padding-top: 25px !important;
  }
  
  .pt30 {
    padding-top: 30px !important;
  }
  
  .pt35 {
    padding-top: 35px !important;
  }
  
  .pt40 {
    padding-top: 40px !important;
  }
  
  .pt45 {
    padding-top: 45px !important;
  }
  
  .pt50 {
    padding-top: 50px !important;
  }
  
  .pt55 {
    padding-top: 55px !important;
  }
  
  .pt60 {
    padding-top: 60px !important;
  }
  
  .pt65 {
    padding-top: 65px !important;
  }
  
  .pt70 {
    padding-top: 70px !important;
  }
  
  .pt75 {
    padding-top: 75px !important;
  }
  
  .pt80 {
    padding-top: 80px !important;
  }
  
  .pt85 {
    padding-top: 85px !important;
  }
  
  .pt90 {
    padding-top: 90px !important;
  }
  
  .pt95 {
    padding-top: 95px !important;
  }
  
  .pt100 {
    padding-top: 100px !important;
  }
  
  .pr0 {
    padding-right: 0 !important;
  }
  
  .pr1 {
    padding-right: 1px !important;
  }
  
  .pr2 {
    padding-right: 2px !important;
  }
  
  .pr3 {
    padding-right: 3px !important;
  }
  
  .pr4 {
    padding-right: 4px !important;
  }
  
  .pr5 {
    padding-right: 5px !important;
  }
  
  .pr6 {
    padding-right: 6px !important;
  }
  
  .pr7 {
    padding-right: 7px !important;
  }
  
  .pr8 {
    padding-right: 8px !important;
  }
  
  .pr9 {
    padding-right: 9px !important;
  }
  
  .pr10 {
    padding-right: 10px !important;
  }
  
  .pr15 {
    padding-right: 15px !important;
  }
  
  .pr20 {
    padding-right: 20px !important;
  }
  
  .pr25 {
    padding-right: 25px !important;
  }
  
  .pr30 {
    padding-right: 30px !important;
  }
  
  .pr35 {
    padding-right: 35px !important;
  }
  
  .pr40 {
    padding-right: 40px !important;
  }
  
  .pr45 {
    padding-right: 45px !important;
  }
  
  .pr50 {
    padding-right: 50px !important;
  }
  
  .pr55 {
    padding-right: 55px !important;
  }
  
  .pr60 {
    padding-right: 60px !important;
  }
  
  .pr65 {
    padding-right: 65px !important;
  }
  
  .pr70 {
    padding-right: 70px !important;
  }
  
  .pr75 {
    padding-right: 75px !important;
  }
  
  .pr80 {
    padding-right: 80px !important;
  }
  
  .pr85 {
    padding-right: 85px !important;
  }
  
  .pr90 {
    padding-right: 90px !important;
  }
  
  .pr95 {
    padding-right: 95px !important;
  }
  
  .pr100 {
    padding-right: 100px !important;
  }
  
  .pl0 {
    padding-left: 0 !important;
  }
  
  .pl1 {
    padding-left: 1px !important;
  }
  
  .pl2 {
    padding-left: 2px !important;
  }
  
  .pl3 {
    padding-left: 3px !important;
  }
  
  .pl4 {
    padding-left: 4px !important;
  }
  
  .pl5 {
    padding-left: 5px !important;
  }
  
  .pl6 {
    padding-left: 6px !important;
  }
  
  .pl7 {
    padding-left: 7px !important;
  }
  
  .pl8 {
    padding-left: 8px !important;
  }
  
  .pl9 {
    padding-left: 9px !important;
  }
  
  .pl10 {
    padding-left: 10px !important;
  }
  
  .pl15 {
    padding-left: 15px !important;
  }
  
  .pl20 {
    padding-left: 20px !important;
  }
  
  .pl25 {
    padding-left: 25px !important;
  }
  
  .pl30 {
    padding-left: 30px !important;
  }
  
  .pl35 {
    padding-left: 35px !important;
  }
  
  .pl40 {
    padding-left: 40px !important;
  }
  
  .pl45 {
    padding-left: 45px !important;
  }
  
  .pl50 {
    padding-left: 50px !important;
  }
  
  .pl55 {
    padding-left: 55px !important;
  }
  
  .pl60 {
    padding-left: 60px !important;
  }
  
  .pl65 {
    padding-left: 65px !important;
  }
  
  .pl70 {
    padding-left: 70px !important;
  }
  
  .pl75 {
    padding-left: 75px !important;
  }
  
  .pl80 {
    padding-left: 80px !important;
  }
  
  .pl85 {
    padding-left: 85px !important;
  }
  
  .pl90 {
    padding-left: 90px !important;
  }
  
  .pl95 {
    padding-left: 95px !important;
  }
  
  .pl100 {
    padding-left: 100px !important;
  }
  
  .pb0 {
    padding-bottom: 0 !important;
  }
  
  .pb1 {
    padding-bottom: 1px !important;
  }
  
  .pb2 {
    padding-bottom: 2px !important;
  }
  
  .pb3 {
    padding-bottom: 3px !important;
  }
  
  .pb4 {
    padding-bottom: 4px !important;
  }
  
  .pb5 {
    padding-bottom: 5px !important;
  }
  
  .pb6 {
    padding-bottom: 6px !important;
  }
  
  .pb7 {
    padding-bottom: 7px !important;
  }
  
  .pb8 {
    padding-bottom: 8px !important;
  }
  
  .pb9 {
    padding-bottom: 9px !important;
  }
  
  .pb10 {
    padding-bottom: 10px !important;
  }
  
  .pb15 {
    padding-bottom: 15px !important;
  }
  
  .pb20 {
    padding-bottom: 20px !important;
  }
  
  .pb25 {
    padding-bottom: 25px !important;
  }
  
  .pb30 {
    padding-bottom: 30px !important;
  }
  
  .pb35 {
    padding-bottom: 35px !important;
  }
  
  .pb40 {
    padding-bottom: 40px !important;
  }
  
  .pb45 {
    padding-bottom: 45px !important;
  }
  
  .pb50 {
    padding-bottom: 50px !important;
  }
  
  .pb55 {
    padding-bottom: 55px !important;
  }
  
  .pb60 {
    padding-bottom: 60px !important;
  }
  
  .pb65 {
    padding-bottom: 65px !important;
  }
  
  .pb70 {
    padding-bottom: 70px !important;
  }
  
  .pb75 {
    padding-bottom: 75px !important;
  }
  
  .pb80 {
    padding-bottom: 80px !important;
  }
  
  .pb85 {
    padding-bottom: 85px !important;
  }
  
  .pb90 {
    padding-bottom: 90px !important;
  }
  
  .pb95 {
    padding-bottom: 95px !important;
  }
  
  .pb100 {
    padding-bottom: 100px !important;
  }
  
  /*** MARGIN ***/
  .mt0 {
    margin-top: 0 !important;
  }
  
  .mt1 {
    margin-top: 1px !important;
  }
  
  .mt2 {
    margin-top: 2px !important;
  }
  
  .mt3 {
    margin-top: 3px !important;
  }
  
  .mt4 {
    margin-top: 4px !important;
  }
  
  .mt5 {
    margin-top: 5px !important;
  }
  
  .mt6 {
    margin-top: 6px !important;
  }
  
  .mt7 {
    margin-top: 7px !important;
  }
  
  .mt8 {
    margin-top: 8px !important;
  }
  
  .mt9 {
    margin-top: 9px !important;
  }
  
  .mt10 {
    margin-top: 10px !important;
  }
  
  .mt15 {
    margin-top: 15px !important;
  }
  
  .mt20 {
    margin-top: 20px !important;
  }
  
  .mt25 {
    margin-top: 25px !important;
  }
  
  .mt30 {
    margin-top: 30px !important;
  }
  
  .mt35 {
    margin-top: 35px !important;
  }
  
  .mt40 {
    margin-top: 40px !important;
  }
  
  .mt45 {
    margin-top: 45px !important;
  }
  
  .mt50 {
    margin-top: 50px !important;
  }
  
  .mt55 {
    margin-top: 55px !important;
  }
  
  .mt60 {
    margin-top: 60px !important;
  }
  
  .mt65 {
    margin-top: 65px !important;
  }
  
  .mt70 {
    margin-top: 70px !important;
  }
  
  .mt75 {
    margin-top: 75px !important;
  }
  
  .mt80 {
    margin-top: 80px !important;
  }
  
  .mt85 {
    margin-top: 85px !important;
  }
  
  .mt90 {
    margin-top: 90px !important;
  }
  
  .mt95 {
    margin-top: 95px !important;
  }
  
  .mt100 {
    margin-top: 100px !important;
  }
  
  .mr0 {
    margin-right: 0 !important;
  }
  
  .mr1 {
    margin-right: 1px !important;
  }
  
  .mr2 {
    margin-right: 2px !important;
  }
  
  .mr3 {
    margin-right: 3px !important;
  }
  
  .mr4 {
    margin-right: 4px !important;
  }
  
  .mr5 {
    margin-right: 5px !important;
  }
  
  .mr6 {
    margin-right: 6px !important;
  }
  
  .mr7 {
    margin-right: 7px !important;
  }
  
  .mr8 {
    margin-right: 8px !important;
  }
  
  .mr9 {
    margin-right: 9px !important;
  }
  
  .mr10 {
    margin-right: 10px !important;
  }
  
  .mr15 {
    margin-right: 15px !important;
  }
  
  .mr20 {
    margin-right: 20px !important;
  }
  
  .mr25 {
    margin-right: 25px !important;
  }
  
  .mr30 {
    margin-right: 30px !important;
  }
  
  .mr35 {
    margin-right: 35px !important;
  }
  
  .mr40 {
    margin-right: 40px !important;
  }
  
  .mr45 {
    margin-right: 45px !important;
  }
  
  .mr50 {
    margin-right: 50px !important;
  }
  
  .mr55 {
    margin-right: 55px !important;
  }
  
  .mr60 {
    margin-right: 60px !important;
  }
  
  .mr65 {
    margin-right: 65px !important;
  }
  
  .mr70 {
    margin-right: 70px !important;
  }
  
  .mr75 {
    margin-right: 75px !important;
  }
  
  .mr80 {
    margin-right: 80px !important;
  }
  
  .mr85 {
    margin-right: 85px !important;
  }
  
  .mr90 {
    margin-right: 90px !important;
  }
  
  .mr95 {
    margin-right: 95px !important;
  }
  
  .mr100 {
    margin-right: 100px !important;
  }
  
  .ml0 {
    margin-left: 0 !important;
  }
  
  .ml1 {
    margin-left: 1px !important;
  }
  
  .ml2 {
    margin-left: 2px !important;
  }
  
  .ml3 {
    margin-left: 3px !important;
  }
  
  .ml4 {
    margin-left: 4px !important;
  }
  
  .ml5 {
    margin-left: 5px !important;
  }
  
  .ml6 {
    margin-left: 6px !important;
  }
  
  .ml7 {
    margin-left: 7px !important;
  }
  
  .ml8 {
    margin-left: 8px !important;
  }
  
  .ml9 {
    margin-left: 9px !important;
  }
  
  .ml10 {
    margin-left: 10px !important;
  }
  
  .ml15 {
    margin-left: 15px !important;
  }
  
  .ml20 {
    margin-left: 20px !important;
  }
  
  .ml25 {
    margin-left: 25px !important;
  }
  
  .ml30 {
    margin-left: 30px !important;
  }
  
  .ml35 {
    margin-left: 35px !important;
  }
  
  .ml40 {
    margin-left: 40px !important;
  }
  
  .ml45 {
    margin-left: 45px !important;
  }
  
  .ml50 {
    margin-left: 50px !important;
  }
  
  .ml55 {
    margin-left: 55px !important;
  }
  
  .ml60 {
    margin-left: 60px !important;
  }
  
  .ml65 {
    margin-left: 65px !important;
  }
  
  .ml70 {
    margin-left: 70px !important;
  }
  
  .ml75 {
    margin-left: 75px !important;
  }
  
  .ml80 {
    margin-left: 80px !important;
  }
  
  .ml85 {
    margin-left: 85px !important;
  }
  
  .ml90 {
    margin-left: 90px !important;
  }
  
  .ml95 {
    margin-left: 95px !important;
  }
  
  .ml100 {
    margin-left: 100px !important;
  }
  
  .mb0 {
    margin-bottom: 0 !important;
  }
  
  .mb1 {
    margin-bottom: 1px !important;
  }
  
  .mb2 {
    margin-bottom: 2px !important;
  }
  
  .mb3 {
    margin-bottom: 3px !important;
  }
  
  .mb4 {
    margin-bottom: 4px !important;
  }
  
  .mb5 {
    margin-bottom: 5px !important;
  }
  
  .mb6 {
    margin-bottom: 6px !important;
  }
  
  .mb7 {
    margin-bottom: 7px !important;
  }
  
  .mb8 {
    margin-bottom: 8px !important;
  }
  
  .mb9 {
    margin-bottom: 9px !important;
  }
  
  .mb10 {
    margin-bottom: 10px !important;
  }
  
  .mb15 {
    margin-bottom: 15px !important;
  }
  
  .mb20 {
    margin-bottom: 20px !important;
  }
  
  .mb25 {
    margin-bottom: 25px !important;
  }
  
  .mb30 {
    margin-bottom: 30px !important;
  }
  
  .mb35 {
    margin-bottom: 35px !important;
  }
  
  .mb40 {
    margin-bottom: 40px !important;
  }
  
  .mb45 {
    margin-bottom: 45px !important;
  }
  
  .mb50 {
    margin-bottom: 50px !important;
  }
  
  .mb55 {
    margin-bottom: 55px !important;
  }
  
  .mb60 {
    margin-bottom: 60px !important;
  }
  
  .mb65 {
    margin-bottom: 65px !important;
  }
  
  .mb70 {
    margin-bottom: 70px !important;
  }
  
  .mb75 {
    margin-bottom: 75px !important;
  }
  
  .mb80 {
    margin-bottom: 80px !important;
  }
  
  .mb85 {
    margin-bottom: 85px !important;
  }
  
  .mb90 {
    margin-bottom: 90px !important;
  }
  
  .mb95 {
    margin-bottom: 95px !important;
  }
  
  .mb100 {
    margin-bottom: 100px !important;
  }

@media screen and (max-width: 1700px) {
    .news-block .flex {
        width: 90%;
    }
    .recruit-banner {
        right: 120px;
    }
    .recruit-banner figure {
        width: 250px;
    }
    .header-middle p {
        margin-left: 20px;
        font-size: 12px;
    }
    .header-middle .header-link {
      font-size: 18px;
      margin-right: 30px;
  }
}
@media screen and (max-width: 1600px) {
    .sp1600 {
        display: block;
    }
    .wrapper {
        padding: 0 50px;
    }

    .header-row h2 a span {
        font-size: 14px;
    } 

    .header-row h2 {
        font-size: 20px;
    } 
    .header-row h2::after {
        font-size: 6px;
    }

    .header-btns, .header-iso {
        margin-bottom: 20px;
    }
    .catch-copy h3 {
        font-size: 50px;
    }
    .catch-copy h3 span.fz1 {
        font-size: 120px;
    }
    .catch-copy h3 span {
        font-size: 100px;
    }
    .tt-2 {
        margin: 40px auto;
    }
    
    .tt-2 h3,.tt-2 h3 span{
        text-align: center;
    }
    
    .tt-2 h3 {
        font-size: 28px;
    }
    
    .tt-2 h3 span{
        font-size: 12px;
        margin-top: 11px;
    }
    
    .tt-2 p {
        font-size: 14px;
        margin-top: 48px;
    }

    .footer {
        padding: 60px 80px 30px;;
    }
}

@media screen and (max-width: 1600px) {
    .footer {
        padding: 60px 40px 30px;;
    }
    .footer-inner {
        padding-bottom: 50px;
    }
    .footer-right .left {
        margin-right: 50px;
    }
    .header-middle p {
      font-size: 12px;
      margin-left: 20px;
    }
}

@media screen and (max-width: 1500px) { 
    .top-block1 .text h3 {
        padding-top: 0;
    }
    .catch-copy {
        left: 40px;
    }
    .catch-copy p {
        padding: 7px 16px 12px 8px;
    }
    .top-block1-inner .text p {
        font-size: 14px;
    }
    .banner-box .text {
        padding: 28px 46px 0 40px;
    }
}    
@media screen and (max-width: 1400px) {
    .sp1400{
      display: block;
    }

    .header-middle ol {
        margin-left: 20px;
    }

    .header-middle .header-link {
      display: none;
    }
    .recruit-banner {
        right: 80px;
        padding: 10px 10px 15px;
    }
    .recruit-banner figure {
        width: 200px;
    }
    .recruit-banner h5 {
        font-size: 18px;
    }
    .recruit-banner .label {
        font-size: 12px;
    }
    #Y_sclorebox {
        right: 25px;
    }
    .top-block1 .text h3 {
        font-size: 40px;
    }
    .top-block1 .text h3,.top-block1-inner .text p {
        padding-left: 30px;
    }
    .content-box .title h4 {
        font-size: 30px;
    }
    .content-box .title .explanation {
        font-size: 18px;
    }
    .content-box .title .detail {
        font-size: 14px;
    }
    .zoom-box h4 {
        font-size: 20px;
    }
    .banner-box p {
        width: 100%;
    }
    .footer-left .address {
        font-size: 16px;
    }
    .footer-logo a img{
        width: 250px;
    }

}

@media screen and (max-width: 1300px){
    .header-inner nav {
        transform: translate(0px,-50%);
    }
    .tab-list li a span {
        width: 120px;
    }
    .footer-right .left {
        margin-right: 25px;
    }
    .footer-right .right {
        font-size: 14px;
    }
}

@media screen and (max-width: 1350px) {
    .recruit-banner {
        display: none;
    }
}

@media screen and (max-width: 1200px) {
    .header-row {
        width: 160px;
    }
    main,.footer,.header-middle {
        margin-left: 160px;
    }
    .header-middle .header-link {
        display: none;
    }
    .header-main {
        left: 160px;
        width: calc(100% - 160px);
    }
    .top-block1-inner figure {
        margin: 0 0 0 14px;
    }
    .top-block1 .text h3 {
        font-size: 32px;
    }
    .top-block1-inner h4 span {
        margin-right: 0;
    }
    .content-box .title h4 {
        font-size: 24px;
    }
    .content-box .title .explanation {
        font-size: 14px;
    }
    .zoom-box h4 {
        font-size: 18px;
    } 
    .banner-box {
        width: 100%;
    }
    .banner-box .label {
        padding: 4px 23px;
        font-size: 18px;
    }
    .banner-box h4 {
        font-size: 28px;
    }
    .banner-box .text {
        padding: 14px 23px 0 20px;
    }
    .footer-right .left a figure {
        width: 400px;
    }
}

@media screen and (max-width: 1100px) {
    .footer-right .left a figure {
        width: 350px;
    }
    .footer-right .left figcaption {
        font-size: 20px;
    }
}

@media screen and (max-width: 1024px) {
  .header-main video{
    right: -70%;
    height: 100%;
  }
  .pc1024{
    display: none;
  }
    .sp1024 {
      display: block;
    }
    .header-row h2 {
      margin-bottom: 120px;
    }
    .catch-copy h3 {
        font-size: 30px;
    }
    .catch-copy h3 span.fz1 {
        font-size: 80px;
    }
    .catch-copy h3 span.fz2 {
        font-size: 60px;
    }
    .catch-copy h4 {
        font-size: 26px;
    }
    .catch-copy h4 span {
        font-size: 30px;
    }
    #Y_sclorebox {
        display: none;
    }
    .header-inner nav {
        flex-direction: column;
    }
    .header-inner nav .right {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 480px;
        margin-left: 0;
        margin-top: 40px;
    }
    .header-inner nav .right li {
        width: 48%;
    }
    .header-main {
        height: calc(100vh - 50px);
    }
    .header-inner nav .left ul {
      margin-bottom: 20px;
    }
    .top-block1 .tt-1 {
      flex-direction: column;
    }

    .top-block1-inner {
      flex-wrap: wrap;
    }
    .top-block1-inner figure {
        width: 85%;
    }
    .top-block1-inner .text {
        width: 100%;
        margin-top: 20px;
    }
    .top-block1-inner h4 {
        margin-left: 10px;
    }
    .btns .btn {
      height: 60px;
    }
    
    .tt-1 h3 {
      font-size: 30px;
    }
    
    .tt-1 p {
      font-size: 14px;
      margin-bottom: 17px;
      margin-left: 0px;
    }
    .top-block1 .text h3 {
        font-size: 28px;
    }

    .top-block2 {
      padding-bottom: 0;
    }
    .top-block2 .title h3 {
      font-size: 36px;
    }
    .top-block2-inner .box h4 {
      font-size: 22px;
      margin-bottom: 10px;
    }
    .top-block2-inner .box p {
        padding: 0;
    }
    .top-block4 .zoom-box {
      margin-bottom: 60px;
    }
    .zoom-box h4 {
      font-size: 16px;
      margin-top: 14px;
    }
    .zoom-box h4::after {
      bottom: -15px;
    }
    .content-box .title .detail::before {
      top: 30px;
    }
    .top-block2-inner .box .label {
      padding: 3px 15px;
    }
    .content-box .title {
        padding: 22px 17px 14px 20px;
    }
    .content-box .title h4 {
        margin-right: 15px;
    }
    .content-box .title .detail {
      font-size: 12px;
    }
    .banner-box {
      padding: 10px 15px;
    }
    .banner-box .label {
      font-size: 16px;
    }
    .banner-box h4 {
      font-size: 24px;
    }
    .banner-box p {
      font-size: 12px;
      margin-top: 4px;
    }
    .site-menu a figure {
      height: 300px;
    }
    .site-menu a .text {
        width: 160px;
        height: 160px;
    }
    .site-menu a figure img {
      height: 100%;
      width: initial;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-50%,0);
  }
  .site-menu a:hover figure img {
    transform: translate(-50%,0) scale(1.1,1.1);
  }
  .site-menu a:hover figure img
    .wrapper{
        padding: 0 30px !important;
    }
    /* .wrapper,.wrapper2,.wrapper3,.wrapper4,.wrapper5,.wrapper6  {
      padding: 0 30px !important;
  } */
    .wrapper2,.wrapper3,.wrapper4,.wrapper5,.wrapper6  {
        width: 100%;
    }
    .section-title h3 {
        font-size: 36px;
    }
    .top-parallax{
      height: 300px;
    }
    .parallax__container {
        clip-path: polygon(0 0, 100% 0 ,100% 113px ,72% 300px,72% 300px,0 217px);
     
    }
    .parallax-wrapper h3 {
        font-size: 60px;
    }
    .parallax-wrapper h3 span {
        font-size: 100px;
    }
    .footer-inner {
        flex-direction: column;
    }
    .footer-left {
        width: 100%;
    }
    .footer-right {
      margin-top: 20px;
    }
    .footer-right .right {
      margin-top: 40px;
    }
    .footer-right .right li {
      margin-bottom: 15px;
    }
    .footer-logo a img {
      max-width: 250px;
    }
    .Gmap {
      margin: 50px auto 85px;
  }
  .three-box .box {
      width: 48%;
      margin-bottom: 60px;
  }
  .profile-block4 .img-box, .profile-block5 .img-box {
    width: 100%;
  }
  .policy {
    width: 100%;
  }
  .img-box, .img-box {
    width: 100%;
  }
  .header-bg2 {
    height: 300px;
  }
  .about img,.about .text {
    width: 100%;
  }
  .about .text {
    margin-top: 10px;
  }
  .equipment-list {
    width: 120% !important;
  }
  .facility2 {
    max-width: initial;
    width: 100%;
  }
  .enviroment .box h4 {
    padding: 16px 0;
    font-size: 16px;
  }
  .enviroment .box p {
    font-size: 14px;
  }
  .interview-box {
    margin-bottom: 50px;
  }
  .interview-box img {
    margin-bottom: 30px;
  }
  .btns .btn {
    width: 180px;
    height: 60px;
    border-radius: 8px;
    margin-right: 20px;
    font-size: 14px;
  }
  .two-box .box {
    margin-bottom: 50px;
  }
  .equipment-list tr th, .equipment-list tr td {
    white-space: nowrap;
  }
  .tab-list {
    margin-top: 12px;
  }
  .slick-dots {
    bottom: -50px;
  }
  .catch-copy {
    bottom: 100px;
  }
  .policyBox dt {
    margin-bottom: 0;
  }
  .policyBox dd {
    padding: 15px 30px;
  }
}

@media  (max-width: 1024px) and (min-width: 768px) { 
  .sp1024-768 {
    display: block;
  }
  .content-box .title h4 {
      width: 50%;
  }
  .top-block1 .text h3, .top-block1-inner .text p {
    padding-right: 38px;
    padding-left: 40px;
  }
  .top-block2-inner {
    margin-bottom: 40px;
  }
  .site-menu {
    margin-top: 50px;
  }
  .top-block6 .three-box {
    justify-content: space-around;
  }
  .interview-box .list {
    width: 90%;
    margin-left: 10%;
  }
  
}

@media screen and (max-width: 900px) { 
  .pc-video {
    display: none;
  }
  .sp-video {
    display: block;
  }
  .header-main video {
    right: 0;
    width: 100%;
    height: initial;
  }
}

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

    .sp768 {
        display: block;
    }
    .sp1024-768 {
      display: none;
    }
    .header-row {
        width: 120px;
    }
    main,.footer,.header-middle{
        margin-left: 120px;
    }
    .header-main,.header-inner nav {
        left: 120px;
        width: calc(100% - 120px);
    }
    .header-logo a{
        width: 100%;
    }
    .header-logo a img {
        width: 90%;
    }
    .header-btns a {
        width: 90px;
        font-size: 12px;
    }
    .header-inner .left,.header-inner nav .right {
        width: 90%;
        margin: 0 auto;
    }
    .header-inner figcaption {
        font-size: 20px;
    }
    .toggle {
        width: 80px;
        height: 80px;
    }
    .catch-copy p {
        margin-top: 20px;
    }
    
    .top-parallax{
      height: 200px;
    }
    .parallax__container {
        clip-path: polygon(0 0, 100% 0 ,100% 83px ,72% 200px,72% 200px,0 117px);
    }
    .policy {
        width: 100%;
    }
    .banner-box {
        flex-direction: column;
    }
    .banner-box figure img {
        width: 100%;
    }
    .banner-box .text {
        width: 100%;
    }
    .content-box .title .explanation {
        display: none;
    }
    .site-menu a .text {
        width: 120px;
        height: 120px;
    }
    .site-menu a .text h3::before {
        font-size: 26px;
    }
    .site-menu a .text h3 {
        font-size: 16px;
    }
    .site-menu a .text h3 span {
        font-size: 12px;
    }
    .parallax-wrapper h3 {
        font-size: 40px;
    }
    .parallax-wrapper h3 span {
        font-size: 80px;
    }
    /* .parallax-bg {
      background-size: contain;
    } */
    .section-title h3 {
        font-size: 28px;
    }
    .top-block2-inner {
        flex-direction: column;
        align-items: center;
    }
    .top-block2-inner .box {
        width: 100%;
    }
    .top-block2-inner .box p {
      margin-bottom: 20px;
    }
    .top-block2 .title h3 {
        font-size: 40px;
    }
    .top-block4 .zoom-box
    .top-block5 .section-title {
      margin-bottom: 30px;
    }
    .top-block5 .two-box {
      margin-top: 30px;
    }
    .top-block6 .three-box {
        justify-content: center;
    }
    .top-block6 .three-box .box {
        width: 100%;
    }
    
    .banner-box p {
      margin-bottom: 20px;
    }
    .parallax-wrapper {
      padding-top: 35px;
    }
    .footer-right {
        flex-wrap: wrap;
        margin-right: 0;
    }
    .btn i {
        width: 12px;
        height: 14px;
        margin-right: 15px;
    }
    .section-title h3 {
        font-size: 22px;
    }

    .header-row {
        width: 80px;
    }
    .header-bg2 {
        height: 300px;
    }
    main,.footer,.header-middle {
        margin-left: 80px;
    }
    .header-main,.header-inner nav {
        left: 80px;
        width: calc(100% - 80px);
    }
    .header-logo {
        margin-bottom: 150px;
    }
    .header-middle p {
        display: none;
    }
    .header-btns, .header-iso {
        display: none;
    }
    .header-middle {
        width: calc(100% - 130px);
        height: 50px;
        position: fixed;
        z-index: 4;
        top: 0;
        left: 0;
    }
    .toggle {
        width: 50px;
        height: 50px;
    }
    .toggle span::before {
        top: -7px;
    }
    .toggle span::after {
        top: 7px;
    }
    .toggle p {
        margin-top: 12px;
    }
    .parallax-wrapper h3 {
        font-size: 24px;
    }
    .parallax-wrapper h3 span {
        font-size: 36px;
    }
    .footer {
        padding: 30px 20px 15px;
    }
    .footer-right .left a figure {
        width: 100%;
        max-width: 350px;
    }
    .footer-right .right {
        margin-top: 20px;
        display: flex;
        flex-wrap: wrap;
    }
    .footer-right .right li {
        width: 48%;
    }
    .wrapper .wrapper3,.wrapper .wrapper2,.wrapper .wrapper5,.wrapper .wrapper4,.wrapper .wrapper6 {
      padding: 0 !important;
    }
    .three-box .box {
      margin-bottom: 80px;
    }
    .product-block1 .three-box {
      padding: 20px 0 9px;
    }
    .equipment-list {
      margin-bottom: 0;
    }
    .list-scroll {
      margin-bottom: 100px;
    }
    .equipment-list tr td:first-of-type, .equipment-list tr th:first-of-type {
      width: 180px;
    }
    .equipment-list tr td:nth-of-type(2), .equipment-list tr th:nth-of-type(2) {
      width: 400px;
    }
    .list-scroll::-webkit-scrollbar{
      height: 5px;
      position: relative;
      top: -80px;
    }
    .list-scroll::-webkit-scrollbar-track{
    background: #F1F1F1;
    }
    .list-scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
    }
    .banner-box figure {
      border-bottom-left-radius: initial;
      border-top-right-radius: 10px;
      overflow: hidden;
    }
    .facility2 {
      margin-top: 16px;
    } 
    .tt-1 p {
      margin-bottom: 7px;
      margin-left: 10px;
    }


}

@media screen and (max-width: 670px){
  .header-main video{
    height: auto;
    width: 100%;
    right: 0;
  }
  .tab-list,.news-block1 .tab-list {
    margin-top: 10px;
    justify-content: space-between;
    width: 100%;
  }
  .news-block1 .tab-list {
    width: 90%;
    margin: 10px auto;
  }
  .tab-list li  {
    width: 48%;
  }
  .tab-list li {
    margin-left: 0px !important;
    margin-right: 0;
  }
  .tab-list li a span {
    width: 100%;
  }
  .tab-list::after {
    display: none;
  }
  .tab-list li{
    margin-top: 5px;
    margin-bottom: 5px;
  } 

}
@media screen and (max-width: 540px) { 
    .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;
    }
    .section-title {
      padding-top: 2px;
    }
  main,.footer,.header-middle {
      margin-left: 0px;
  }
  .header-main,.header-inner nav {
      left: 0px;
      width: 100%;
  }
  .header-logo {
      margin-bottom: 150px;
  }
  .header-middle p {
      display: none;
  }
  .header-btns, .header-iso {
      display: none;
  }
  .header-middle {
      width: 100%;
      height: 50px;
  }
    .wrapper, .wrapper2, .wrapper3, .wrapper4, .wrapper5, .wrapper6 {
        padding: 0 20px;
    }
    .header-row {
      display: none;
  }
    .header-middle ol {
        font-size: 11px;
        margin-top: 0;
        margin: 10px 20px 0;
        display: none;
    }
    .header-inner figcaption {
        font-size: 16px;
    }
    .header-bg2 {
        height: 200px;
    }
    .top-block1 .text h3 {
        font-size: 20px;
    }
    .top-block2-inner {
      margin-bottom: 40px;
    }
    .content-box .title h4::before {
        width: 20px;
        height: 13px;
        margin-right: 7px;
    }
    .content-box .title {
        padding: 8px 8px 7px 10px;
        align-items: flex-start;
    }
    .content-box .title h4 {
        font-size: 16px;
        margin-right: 0;
    }
    .content-box .title {
        justify-content: space-between;
    }
    .content-box .title .detail {
        font-size: 12px;
        margin-bottom: 8px;
        margin-left: 0;
    }
    .content-box .title .detail::before {
        top: 24px;
    }
    .zoom-box h4 {
      font-size: 14px;
    }
    .site-menu {
      margin-top: 40px;
    }
    .banner-box {
        padding: 15px;
    }
    .btns .btn {
        /* width: 120px; */
        height: 50px;
        margin-right: 0px;
        font-size: 14px;
    }
    .btns .btn2 {
      width: 180px;
  }
    .three-box .box {
      margin-bottom: 50px;
    }
    /* .top-block5 .two-box {
      margin-top: 0;
    } */
    .btn i {
        width: 12px;
        height: 14px;
        margin-right: 7px;
    }
    .footer-logo a img{
        width: 90%;
    }
    .site-menu a {
        width: 100%;
    }
    .site-menu a:first-of-type figure{
        height: 214px;
    }
    .site-menu a:first-of-type figure img{
        height: 100%;
        width: initial;
    }
    .scroll-table{
        overflow: auto;
        white-space: nowrap;
    }
    .list1 dl dd, .list2 dl dd, .list1 dl dt, .list2 dl dt {
        padding: 15px 0 13px 9px;
    }
    .table-title2 {
        font-size: 14px;
        margin-bottom: 0;
    }
    .equipment-list tr th, .equipment-list tr td {
        padding: 15px 0;
    }
    .top-block1 .text h3, .top-block1-inner .text p {
      padding-left: 11px;
    }
    .top-block1-inner {
      margin-bottom: 30px;
    }

    .top-block2 .title h3{
        font-size: 23px;
    }
    .top-block2 .title p {
      font-size: 14px;
    }

    .top-block1-inner h4{
      width: 13%;
    }

    .top-block1-inner figure{
      width: 75%;
    }

    .top-block1-inner .text{
      margin-top: 30px;
    }

    .top-block2{
      padding-bottom: 0;
      position: relative;
      margin-top: -50px;
    }
    .top-block4 .zoom-box:nth-of-type(5),.top-block4 .zoom-box:nth-of-type(6) {
      margin-bottom: 30px;
    }
    .top-block6 .zoom-box{
      margin-bottom: 50px;
    }

    .two-box .box{
      margin: 0px 0 50px;
    }
    .header-logo-sp {
      display: block;
      height: 40px;
      margin-left: 10px;
      font-family: A-OTF-R;
      font-size: 16px;
      line-height: 40px;

    }
    .catch-copy {
      left: 50%;
      transform: translate(-50%, 0%);
    }
    /* .header-middle2 {
      height:50px;
      flex-direction: column;
      align-items: flex-start;
      background: linear-gradient(180deg,#fff 0%,#fff 50px,#f1f1f1 50px,#f1f1f1 100%);
    } */
    .header-logo-sp img {
      height: 90%;
      margin-right: 10px;
      margin-top: 4px;
    }
    .catch-copy h3 {
      font-size: 26px;
      white-space: nowrap;
    }
    .catch-copy h3 span.fz1 {
      font-size: 50px;
    }
    .catch-copy h3 span.fz2 {
      font-size: 40px;
    }
    .catch-copy h4 span {
      font-size: 26px;
      white-space: nowrap;
    }
    .catch-copy h4 {
      font-size: 20px;
      margin-bottom: 10px;
      white-space: nowrap;
      transform: translate(10%,0);
    }
    .catch-copy p {
      margin-left: 0;
      font-size: 14px;
      left: 50%;
      transform: translate(-50%, 0);
    }
    .news-block {
      padding-bottom: 50px;
    }
    .news-block .news-list a .title {
      font-size: 12px;
    }
    .news-block .news-list a .date {
      font-size: 10px;
      margin-top: 10px;
    }
    .top-block1-inner h4 {
      font-size: 16px;
    }
    .top-block2-inner .box {
      margin-bottom: 20px;
    }
    .policy h4 {
      font-size: 16px;
    }
    .top-parallax {
      height: 200px;
    }
    .parallax__container {
      clip-path: polygon(0 0, 100% 0 ,100% 83px ,72% 151px,72% 150px,0 67px);
    }
    .list1 dl dt,.list1 dl dd,.list2 dl dt,.list2 dl dd {
      font-size: 12px;
    }
    .list1 dl dd, .list2 dl dd, .list1 dl dt, .list2 dl dt{
      padding: 15px 0 13px 0px;
    }
    .equipment-list tr th, .equipment-list tr td {
      font-size: 12px;
    }
    .facility2 {
      width: 100%;
      padding: 0px;
      margin-top: 8px;
    }  
    .facility p {
      font-size: 14px;
    }
    .footer-right .right {
      margin-top: 50px;
    }
    p.copyright {
      font-size: 12px;
    }
    .slick-dots {
      bottom: -40px;
    }
    .header-inner figcaption, .header-inner ul li a {
      font-size: 14px;
    }
    .tt-2 {
      margin: 15px auto 40px;
  }
  .enviroment .box h4 {
    font-size: 20px;
    padding: 16px 0;
  }
  .footer-right .left figcaption {
    font-size: 16px;
  }
  .list-scroll {
    margin-bottom: 40px;
  }

  }

@media screen and (max-width: 480px) {
    .sp480 {
        display: block;
    }  
    .pc480 {
      display: none;
    } 
    .tt-2 h3 {
      font-size: 20px;
    }
    .equipment-list {
      margin-top: 20px;
    }
    .header-logo-sp {font-size: 14px;}

    .list1 dl dt {
      width: 33%;
    }

    .list1 dl dd {
      width: 65%;
    }
}