@charset "UTF-8";
/* CSS Document */
@media screen and (max-width: 768px) {
    .header .header_content .navgation ul li {
        padding: 0px;
    }
}


@media screen and (max-width: 768px) {
    .header .menu_btn {
        display: block;
    }
    .header .navgation {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    .pc {
        display: none!important;
    }
    .sp {
        display: block!important;
    }
p{
    font-size: 4vw;
    line-height: 7vw!important;
    
}
h3{
    font-size: 5.5vw;
}
h4, h5{
    letter-spacing: 0.2vw;
}
h6{
    font-size: 4.5vw;
    font-weight: normal;
}

/* header */
.header{
    backdrop-filter: none;
}
.header .header_content{
    display: flex;
    padding: 3% 4%;
    justify-content: space-between;
}
.overlay-content ul li a{
    color: white;
    font-size: 4vw;
}
.logo a img {
    width: 80%;
}
.logo p{
    font-size: 3vw;
    line-height: 3vw!important;
}
.header_entry{
    font-size: 3vw;
}
.menu_btn .container{
    padding: 0 0 0 20%;
}

.overlay{
    width: 100%!important;
}
.hamburger-header{
    padding: 0 3% 0 0;
}
.hamburger{
    padding: 2% 0 5% 7%;
}
.hamburger a{
    align-items: flex-end;
}
.hamburger a p{
    font-size: 3vw;
    line-height: 3vw!important;
}
.hamburger_entry a{
    font-size: 3vw;
}
.overlay-content ul.main-menu li{
    padding: 5% 3%;
}
.overlay-content ul.main-menu li a{
    font-size: 3.5vw!important;
}
.sub-menu li a{
    font-size: 3vw!important;
}
.overlay-content ul.main-menu{
    margin: 5% 7% 5% 7%;
}

.overlay-content p{
    font-size: 2vw;
}
.top-main {
    margin-top: 10%;
}
/* top banner section */
.top-title{
    width: 70%;
}
.top-contents h4{
    font-size: 6vw;
    margin: 29% 0 5%;
}
.top-contents p{
    width: 100%;
    font-size: 4vw;
    line-height: 8vw!important;
}
.top-banner-img{
    width: 100%;
    margin: 0;
}
.news{
    position: relative;
    left: 0;
    padding: 40% 5% 0%;
    display: block;
    width: 90%;
}
.news-caption{
    text-align: center;
    width: 100%;
}
.news-head{
    text-align: center;
    margin-bottom: 5%;
}
.news-head img{
    width: 35%;
}
a.list{
    width: 40%;
    font-size: 4vw;
    margin: 0 auto;
    line-height: 15vw;
}
.news-contents{
    width: 100%;
}
.category{
    width: 35%;
    padding: 1% 3%;
    font-size: 3vw;
    margin: 2%;
}
.news-content {
    margin: 5% 0 5%;
}
a.list:after {
    content: '\21C0';
    font-size: 6vw;
    margin-left: 2%;
    position: absolute;
}
.news-content p span{
    font-size: 4vw;
}
/* about section */
.about{
    display: block;
    margin-top: 35%;
}
.about-img{
    width: 100%;
}
.about-contents{
    width: 90%;
}
.about-contents h6{
    font-size: 4vw;
}
.about-contents h3{
    font-size: 6vw;
}
a.more{
    width: 100%;
    font-size: 4vw;
    position: relative;
    line-height: 15vw;
}
a.more:after {
    content: '\21C0';
    font-size: 6vw;
    margin-left: 5%;
    position: absolute;
}

/* service section */
.service{
    display: block;
}
.service-contents{
    padding: 10%;
    width: 80%;
}
.service-contents h6{
    font-size: 4vw;
}
.service-contents h3{
    font-size: 6vw;
}
.service-img{
    margin: 5%;
    width: 90%;
}

/* recruit section */
.recruit-img{
    width: 100%;
    margin: 0;
    display: block; 
}
.recruit-contents{
    position: relative;
    width: 90%;
    padding: 5%;
    top: 0;
}
.recruit-contents h6{
    font-size: 4vw;
}
.recruit-contents img{
    width: 100%;
}

/* contact section */
.contact{
    padding: 10% 0;
}
.contact img{
    width: 50%;
}
.contact h6{
    font-size: 4vw;
}
.line{
    width: 25%;
}
.contact a{
    width: 60%;
    font-size: 4vw;
    position: relative;
    line-height: 15vw;
}
.contact a i{
    font-size: 6vw;
    left: 15%;
}

/* footer section */
footer{
    display: block;
    padding: 10% 5% 5%;
}
.footer-logo{
    width: 50%;
    margin: 0 auto;
}
.footer-menu{
    display: flex;
    text-align: center;
    width: 100%;
    align-items: center;
    justify-content: center;
    margin: 3% 0;
}
.footer-menu ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 0;
}
.footer-menu ul li{
    font-size: 2vw;
    margin: 2% 0;
}
.footer-menu ul li a{
    font-size: 3vw;
}

.vertical-line{
    height: 10vw;
}
.back-to-top a{
    font-size: 3vw;
}
.copyright{
    font-size: 3vw;
}

 .more:before, .list:before, .contact a:before{
    display: none;
 }


/* recruit page */
.recruit-banner{
    background: url(../img/recruit-sp.png) no-repeat;
    background-size: cover;
    background-position: center;

}
.recruit-banner{
    padding: 30% 20% 20%;
    text-align: center;
}
.recruit-banner h3{
    font-size: 9vw;
}
.recruit-banner h4{
    font-size: 6vw;
}
.breadcrumb{
    padding: 3%;
}
.breadcrumb a, .breadcrumb span{
    font-size: 3vw;
}
.recruit-texts{
    padding: 10% 5%;
}
.recruit-texts h5{
    font-size: 5.5vw;
}
.title{
/*    font-size: 6vw;*/
    margin: 10% 0;
    scroll-margin-top: 20vw;
}

.recruit-box{
    padding: 0;
}
.text-line p{
    font-size: 3.5vw;
}
.interview-link{
    font-size: 4vw;
}
.interview-link a{
    font-size: 4vw;
}

/* Interview page */
.interview-banner{
    background: url(../img/interview-sp.png) no-repeat;
    background-size: cover;
    background-position: center;
}
.interview-banner{
padding: 30% 20% 20%;
    text-align: center;
}
.interview-banner h3{
    font-size: 9vw;
}
.interview-banner h4{
    font-size: 6vw;
}
.interview-texts{
    padding: 10% 5%;
}
.interview-texts h5{
    font-size: 5.5vw;
}

.interview-box{
    padding: 5% 0 0;
}

/* Service page */

.service-banner{
    background: url(../img/service-sp.png) no-repeat;
    background-size: cover;
    background-position: center;
}
.service-banner{
padding: 30% 20% 20%;
    text-align: center;
}
.service-banner h3{
    font-size: 9vw;
}
.service-banner h4{
    font-size: 6vw;
}
.service-texts{
    padding: 5% 5% 10% 5%;
}
.service-texts h5{
    font-size: 5.5vw;
}
.service-content{
    padding: 0 3%;
}
.service-box{
    padding: 5% 0 0;
}
.service-captions{
    display: block;
    padding: 5% 0;
}
.service-captions a{
    width: 90%;
    font-size: 6vw;
    padding: 5%;
    margin: 5% 0;
}

/* company page */
.company-banner{
    background: url(../img/company-sp.png) no-repeat;
    background-size: cover;
    background-position: center;
}
.company-banner{
padding: 30% 20% 20%;
    text-align: center;
}
.company-banner h3{
    font-size: 9vw;
}
.company-banner h4{
    font-size: 6vw;
}
.company-texts{
    padding: 5% 5% 10% 5%;
}
.company-texts h5{
    font-size: 5.5vw;
}
.company-content{
    padding: 0 3%;
}
.company-box{
    padding: 5% 0 0;
}
iframe{
    width: 65vw;
    height: auto;
}

/* policy page */
.policy-banner{
    background: url(../img/policy-sp.png) no-repeat;
    background-size: cover;
    background-position: center;
}
.policy-banner{
padding: 30% 20% 20%;
    text-align: center;
}
.policy-banner h3{
    font-size: 9vw;
}
.policy-banner h4{
    font-size: 6vw;
}
.policy-texts{
    padding: 5% 5% 10% 5%;
}
.policy-texts h5{
    font-size: 5.5vw;
}
.policy-content{
    padding: 0 3%;
}
.policy-box{
    padding: 5% 0 0;
}


/* contact page */
.contact-banner{
    background: url(../img/contact-sp.png) no-repeat;
    background-size: cover;
    background-position: center;
}
.contact-banner{
padding: 30% 20% 20%;
    text-align: center;
}
.contact-banner h3{
    font-size: 9vw;
}
.contact-banner h4{
    font-size: 6vw;
}
.contact-texts{
    padding: 5% 5% 10% 5%;
}
.contact-texts h5{
    font-size: 5.5vw;
}
.contact-content{
    padding: 0 3%;
}
.contact-box{
    padding: 5% 0 0;
}
.contact-line{
    margin: 5% 0;
}
.contact-line label{
    font-size: 4vw;
    width: 45%;
}

input.submit{
    width: 50%;
    margin: 5% 0;
}
.tel{
    margin-left: 1%!important;
}
.tel img{
    width: 50%;
}
.address img{
    width: 70%;
}
.mail img{
    width: 50%;
}



































}











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



}




