@media screen and (max-width: 767px) {
    .offset-1,.offset-3,.offset-2{
        margin-left: 0;
    }

    .pc{
        display: none;
    }

    .sp{
        display: block;
    }

    p,th,td{
        font-size: 14px;
        line-height: 1.5em;
    }

    .navbar{
        position: sticky;
        top: 0;
        left: 0;
        transform: none;
        width: 100%;
        border-radius: 0;
        box-shadow: 0px 5px 15px 0px rgba(255, 255, 255, 0.35);
    }

    .navbar-brand{
        display: block;
    }

    .overlay-text{
        bottom: 5%;
        left: 5%;
    }

    .overlay-text h1,.gre-slo h3{
        font-size: 20px;
    }

    .about-l,.about-r{
        display: none;
    }

    .about-c{
        width: 100%;
    }

    .tp-vision-text h3,.vision-text h3{
        font-size: 18px;
    }

    .point-title h2{
        font-size: 30px;
        letter-spacing: 10px;
    }

    .point-eng{
        letter-spacing: 2px;
    }

    .point-text{
        margin-top: 10px;
    }

    .point-content ul{
        justify-content: center;
    }

    .point-content li{
        width: 45%;
        margin: 5px;
    }

    .ser-bg{
        display: none;
    }

    .tp-ser-content{
        top: 30px;
    }

    .ser-text{
        margin: 20px auto;
    }

    .ser-text p{
        color: black;
    }

    .margin-{
        margin-top: 0;
        margin-bottom: 40px;
    }

    .link-tate{
        font-size: 20px;
    }

    .link-text h4{
        font-size: 20px;
    }

    .link-text p{
        width: 100%;
        height: 30px;
        line-height: 30px;
        margin: 0;
    }

    .link-test{
        margin-top: 50px;
        display: flex;
        justify-content: space-between;
    }

    .link-test a{
        display: block;
        width: 180px;
        height: 30px;
        line-height: 30px;
        text-align: center;
        border: 1px solid black;
        border-radius: 30px;
        color: black;
    }

    .tp-news{
        padding: 50px 0;
    }

    .news-content table{
        width: 100%;
    }

    .news-content th,.news-content td{
        display: block;
        width: 100%;
    }

    .tp-cta .col-md-10{
        flex-direction: column;
        width: 100%;
    }

    .tp-contact a{
        font-size: 16px;
    }

    .tp-contact,.tp-sns{
        width: 100%;
    }

    footer{
        padding: 50px 0;
    }

    .footer-sitemap li{
        font-size: 14px;
    }

    /* etc page */
    .page-title-pop{
        height: 300px;
        margin-bottom: 50px;
    }

    .english-title,.service-icon{
        font-size: 1rem;
    }

    .page-title-pop h1{
        font-size: 30px;
        letter-spacing: 2px;
    }

    .content-head{
        padding: 50px 0;
    }

    .comp-vision{
        margin-top: 0;
    }

    .title-img{
        width: 80%;
    }

    .gre-wrap{
        flex-direction: column;
    }

    .gre-img{
        width: 50%;
        margin: 0 auto;
    }

    .gre-content{
        width: 100%;
        margin-top: 20px;
    }

    .gre-text p{
        line-height: 1.5em;
    }

    .prof-content th,.prof-content td{
        display: block;
        width: 100%;
        padding: 10px 20px;
    }

    .map-content iframe{
        height: 200px;
    }

    .ser-wrap{
        margin: 0;
    }

    .ser-l{
        flex-direction: column-reverse;
    }

    .ser-r{
        flex-direction: column;
    }

    .ser-title-text,.ser-title-img{
        width: 70%;
        padding: 10px 0;
    }

    .ser-title-text h3{
        font-size: 20px;
    }

    .ser-sub-copy{
        margin-top: 0;
    }

    .ser-content{
        margin: 20px 0 50px 0
    }

    .ser-content h4{
        font-size: 14px;
        clip-path: none;
    }

    .works-wrap .row{
        justify-content: space-between;
    }

    .works-item{
        width: 49%;
    }

    .works-content{
        margin: 0;
    }

    .works-content h4{
        font-size: 12px;
    }

    .works-content h3{
        font-size: 14px;
    }

    .works-content th,.works-content td{
        display: block;
        width: 100%;
        text-align: center;
    }

    .works-content th{
        padding: 0;
    }

    .works-details-content{
        flex-direction: column;
    }

    .works-details-img{
        width: 50%;
        margin: 0 auto;
    }

    .works-details-text{
        width: 100%;
    }

    .works-ba{
        padding: 0 20px;
    }

    .works-ba-img ul{
        flex-wrap: wrap;
    }

    .works-ba-img li{
        width: 48%;
        margin-top: 10px;
    }

    .recr-about{
        padding: 50px 0;
    }

    .recr-about-text{
        width: 100%;
    }

    .recr-c-s-l{
        width: 100%;
    }

    .recr-c-s-r{
        display: none;
    }

    .recr-content-youkou{
        margin-top: 50px;
    }

    .recr-content-youkou h4,.entry h4{
        width: 70%;
    }

    .tel-company{
        flex-direction: column;
    }

    .tel-oki,.tel-kudo{
        width: 100%;
    }

    .tel-kudo{
        margin-top: 20px;
    }

    .pripoli-content li{
        font-size: 14px;
    }

}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .swiper-ser .swiper-slide {
        padding: 20px;
        font-size: 1rem;
    }
}