
/* mainvisual */
#mainVisual{
    position: relative;
    z-index: 3;
    /*background: url("../img/top/main.jpg")no-repeat bottom center;
    background-size: cover;*/
    /* height: 900px; */
    /*height: 54vw;*/
    /* margin-top: 8%; */
    }
#title{
    position: absolute;
    width: 96%;
    top: 25%;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    }
#title h2{
    font-family: "Zen Old Mincho", serif;
    font-size: 15.5rem;
    color:var(--c-base);
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.2;
    }
#title p{
    font-size: 5.7rem;
    font-weight: 400;
    font-family: "Zen Old Mincho", serif;
    }

@media screen and (max-width: 1400px) {
/*#title h2{font-size: 10.0rem;}
#title p{font-size: 3.3rem;}*/
#title h2{font-size: calc(100vw / 8); }
#title p{font-size: calc(100vw /22);}
}
@media screen and (max-width: 1000px) {}
/* TAB */
@media screen and (max-width: 780px) {
#mainVisual{
    /*background: url("../img/top/main_sp.jpg")no-repeat bottom center;
    background-size: cover;
    height: 600px;*/
    margin-top: 10%;
    }
#title{top: 42%;}
#title h2{/*font-size: 7.3rem;*/font-weight: 600;}
#title p{/*font-size: 2.7rem;*/font-weight: 600;}
}
/* SP */
@media screen and (max-width: 580px) {
#mainVisual{
    /*height: 400px;
    background-size: contain;*/
    margin-top: 16%;
    }
/*#title h2{font-size: 4.5rem;}
#title p{font-size: 1.7rem;}*/
}


/* mainBox
----------------------------------------------*/
#mainBox{
    /* background: url("../img/top/bg.jpg")no-repeat top center; */
    background: url("../img/top/bg.webp")no-repeat top center;
    background-size: cover;
    }
#mainBox p{
    font-size: 1.8rem;
    line-height: 1.7;
    font-weight: normal;
    }
/* TAB */
@media screen and (max-width: 780px) {
#mainBox{
    background: url("../img/top/bg_sp.webp")no-repeat top center;
    background-size: cover;
    }
    #mainBox p{
    font-size: 1.6rem;
    line-height: 1.7;
    } 
    
}
/* SP */
@media screen and (max-width: 480px) {
    #mainBox p{
    font-size: 1.4rem;
    line-height: 1.5;
    }
}

/* message
----------------------------------------------*/
#_message{
    background:rgba(255,255,255,0.6);
    /*padding: 200px 0 150px;*/
    padding: 10% 0;
    }
#_message .cntInner{}
#_message .cntInner p{
    /*font-size: 2.2rem;*/
    font-size: calc(100vw / 80);
    text-align: center;
    font-weight: 600;
    /*line-height: 60px;*/
    line-height: 300%;
    }
/* TAB */
@media screen and (max-width: 780px) {
#_message{
    /*padding: 100px 0;*/
    }
#_message .cntInner p{
    font-size: calc(100vw / 45);
    /*font-size: 1.6rem;
    line-height: 40px;*/
    } 
    
}
/* SP */
@media screen and (max-width: 480px) {}


/* about
----------------------------------------------*/
#_about{
    background:rgba(255,255,255,0.6);
    /*padding: 150px 0;*/
    padding: 5% 0 5%;
    }
#_about .cntInner{}
#_about li{
    width: 24%;
    }
#_about li a{
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 100%;
    /*padding: 350px 20px 20px;*/
    box-sizing: border-box;
    color: #fff;
    /*background: url("../img/top/about01.jpg")no-repeat center bottom;
    background-size: cover;*/
    }
/*#_about li:nth-child(2) a{
    background: url("../img/top/about02.jpg")no-repeat center bottom;
    background-size: cover;
    }
#_about li:nth-child(3) a{
    background: url("../img/top/about03.jpg")no-repeat center bottom;
    background-size: cover;
    }
#_about li:nth-child(4) a{
    background: url("../img/top/about04.jpg")no-repeat center bottom;
    background-size: cover;
    }
#_about li a p{
    display: block;
    width: 100%;
    background: url("../img/cmn/arw01.png")no-repeat bottom right;
    padding:22px 57px 5px 0;
    font-size: 2.5rem;
    line-height: 1.2;
    }*/

@media screen and (max-width: 1080px) {
    
 #_about li{
    width: 49%;
    margin-bottom: 2%;
    }   
    
}
/* TAB */
@media screen and (max-width: 780px) {
#_about{/*padding: 50px 0 100px;*/}
#_about li a{/*padding: 310px 10px 10px;*/}
#_about li a p{
    /*background: url("../img/cmn/arw01.png")no-repeat bottom right;
    background-size: 40px;
    padding:22px 57px 5px 0;
    font-size: 2.0rem;*/
    }    
}
/* SP */
@media screen and (max-width: 480px) {}


/* _works
----------------------------------------------*/
#_works{
    background:rgba(255,255,255,0.6);
    padding: 10% 0 5%;
    }
#_works .cntInner{}
#_works .cntBox a{
    display: block;
    width: 100%;
    /*padding: 120px 20px 100px;*/
    box-sizing: border-box;
    text-align: center;
    color: #fff;
    /*background:url("../img/top/works.jpg")no-repeat center;
    background-size: cover;
    font-size: 4.0rem;
    font-weight: 400;*/
    }
#_works .cntBox a span{
    /*background: url("../img/cmn/arw01.png")no-repeat center bottom;
    padding-bottom: 65px;
    display: inline-block;*/
    }
/* TAB */
@media screen and (max-width: 780px) {
#_works{
    /*padding: 80px 0 100px;*/
    }
#_works .cntBox a{
    /*padding: 80px 20px;*/
    font-size: 3.3rem;
    }
#_works .cntBox a span{
    background: url("../img/cmn/arw01.png")no-repeat center bottom;
    background-size: 50px;
    padding-bottom: 55px;
    }
}
/* SP */
@media screen and (max-width: 480px) {}


/* interview
----------------------------------------------*/
#_interview{
    background:rgba(255,255,255,0.6);
    padding: 0 0 12%;
    }
#_interview h3{
    text-align: center;
    font-family: var(--ff-en);
    /*font-size: 7.0rem;*/
    font-size: calc(100vw / 25);
    letter-spacing: .05em;
    font-weight: 400;
    margin-bottom: 25px;
    }

#_interview .cntInner{}
#_interview ul{
    }
#_interview li{
    display: block;
    width: 470px!important;
    /*height: 300px;*/
    margin: 0 20px;
    /*position: relative;*/
    overflow: hidden;
    }
/*#_interview li::before{
    position: absolute;
    content: "";
    background: url("../img/cmn/arw01.png")no-repeat;
    width: 57px;
    height: 57px;
    bottom: 10px;
    right: 10px;
    }
#_interview li a{
    display: block;
    width: 100%;
    height: 100%;
    }
#_interview li .cntBox{
    position: absolute;
    top: 0;
    left: 0;
    max-width: 320px;
    }
#_interview li .cntBox .inf{
    display: flex;
    align-content: center;
    align-items: center;
    }
#_interview li .cntBox .inf .nm{
    font-family: var(--ff-en);
    font-size: 4.6rem;
    letter-spacing: 0;
    }
#_interview li .cntBox .inf .cate,
#_interview li .cntBox .inf .cate2{
    font-size: 1.5rem;
    letter-spacing: 0;
    padding: 2px 10px;
    margin-left: 10px;
    background: #ed4d58;
    color: #fff;
    }
#_interview li .cntBox .inf .cate2{background: #03649a;}
#_interview li .cntBox h4{margin: 2px 0;}
#_interview li .cntBox h4 span{
    background: #000;
    padding: 2px 8px;
    color: #fff;
    margin: 2px 0;
    line-height: 1.8;
    font-size: 2.4rem;
    letter-spacing: 0;
    }
#_interview li .cntBox .txt{
    display: inline-block;
    background: #fff;
    padding: 10px;
    box-sizing: border-box;
    }
#_interview li .cntBox .txt p{font-size: 1.5rem;line-height: 1.5;}
#_interview li .cntImg{
    max-width: 300px;
    background: #ddd;
    box-sizing: border-box;
    float: right;
    }*/


/* TAB */
@media screen and (max-width: 780px) {
#_interview{
    /*padding: 0 0 100px;*/
    }
#_interview h3{
    /*font-size: 5.0rem;*/
    font-size: calc(100vw / 20);
    margin-bottom: 1%;
    }

#_interview li{
    width: 250px!important;
    /*width: auto!important;*/
    height: inherit;
    margin: 0 5px;
    position: static;
    }
/*#_interview li::before{
    position: static;
    display: none;
    }
#_interview li .cntBox{
    position: static;
    max-width: 100%;
    }
#_interview li .cntBox .inf .nm{
    font-size: 4.0rem;
    }
#_interview li .cntBox h4{margin: 2px 0;}
#_interview li .cntBox h4 span{
    margin: 0;
    font-size: 2.0rem;
    }
#_interview li .cntBox .txt{
    display: block;
    }
#_interview li .cntBox .txt p{font-size: 1.4rem;}
#_interview li .cntImg{
    max-width: 100%;
    float: none;
    position: relative;
    }
#_interview li .cntImg::before{
    position: absolute;
    content: "";
    background: url("../img/cmn/arw01.png")no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    bottom: 10px;
    right: 10px;
    }*/
    
}
/* SP */
@media screen and (max-width: 480px) {}


/* special
----------------------------------------------*/
#_special{
    background:rgba(229,1,17,0.8);
    padding: 8% 0 10%;
    }
#_special ._Title .en,
#_special ._Title .ja{color: #fff;}
#_special .cntInner{}
#_special .cntBox{margin: 80px 0;}
#_special .cntBox a{
    display: block;
    width: 100%;
    /*background:url("../img/top/special01.jpg")no-repeat center;
    background-size: cover;
    position: relative;
    padding: 300px 20px 20px;*/
    overflow: hidden;
    }
#_special .cntBox.Box01 a{
    background:url("../img/top/special01.jpg")no-repeat center;
    background-size: cover; 
    }
#_special .cntBox.Box02 a{
    background:url("../img/top/special02.jpg")no-repeat center;
    background-size: cover; 
    }
#_special .cntBox.Box03 a{
    background:url("../img/top/special03.jpg")no-repeat center;
    background-size: cover; 
    }
#_special .cntBox.Box04 a{
    background:url("../img/top/special04.jpg")no-repeat center;
    background-size: cover; 
    }
/* #_special .cntBox a::before{
    position: absolute;
    content: "";
    background: url("../img/cmn/arw01.png")no-repeat;
    width: 57px;
    height: 57px;
    bottom: 10px;
    right: 10px;
    } */
#_special .cntBox a .nm{
    position: absolute;
    top: -37px;
    left: -12px;
    font-size: 25.0rem;
    opacity: 0.5;
    line-height: 1.0;
    font-family: var(--ff-en);
    letter-spacing: -10px;
    color: rgba(229,1,17,0.8);
    font-weight: 400;
    /*background: rgba(229,1,17,0.2);*/
    }

#_special .cntBox .cntText{
    color: #fff;
    }
#_special .cntBox .cntText span{
    background: #000;
    padding: 2px 10px;
    /*font-size: 3.0rem;*/
    font-size: calc(100vw / 35);
    }
#_special .cntBox .cntText h4{
    margin: 5px 0 0;
    line-height: 1.2;
    /*font-size: 5.0rem;*/
    font-size: calc(100vw / 25);
    }

/* TAB */
@media screen and (max-width: 780px) {
#_special{
    /*padding: 100px 0 70px;*/
    }
#_special .cntBox{margin: 30px 0;}
#_special .cntBox a{
    /*padding: 150px 10px 10px;*/
    }
/*#_special .cntBox a::before{
    background: url("../img/cmn/arw01.png")no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    }
#_special .cntBox a .nm{
    top: -20px;
    left: -10px;
    font-size: 12.0rem;
    }

#_special .cntBox .cntText span{
    font-size: 2.0rem;
    }
#_special .cntBox .cntText h4{
    margin: 5px 0 0;
    font-size: 2.5rem;
    }*/
    
}
/* SP */
@media screen and (max-width: 480px) {}


/* environment
----------------------------------------------*/
#_environment{
    background:rgba(255,255,255,0.6);
    padding: 8% 0 8%;
    }
#_environment .cntInner{}
#_environment ul,
#_recruit ul{
    /* max-width: 1300px; */
    margin: auto;
    }
#_environment li,
#_recruit li{
    width: 49%;
    }
#_environment li a,
#_recruit li a{
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 100%;
    /*padding: 300px 20px 20px;
    box-sizing: border-box;
    color: #fff;
    background: url("../img/top/environment01.jpg")no-repeat center bottom;
    background-size: cover;*/
    }
/*#_environment li:nth-child(2) a{
    background: url("../img/top/environment02.jpg")no-repeat center bottom;
    background-size: cover;
}*/
#_environment li a h4,
#_recruit li a h4{
    display: block;
    width: 100%;
    background: url("../img/cmn/arw01.png")no-repeat bottom right;
    padding:5px 57px 5px 0;
    font-size: 3.0rem;
    font-weight: 400;
    }
/* TAB */
@media screen and (max-width: 780px) {
#_environment{
    /*padding: 100px 0 70px;*/
    }
#_environment li,
#_recruit li{
    width: 100%;
    margin-bottom: 30px;
    }
#_environment li a,
#_recruit li a{
    /*padding: 150px 10px 10px;*/
    }
#_environment li a h4,
#_recruit li a h4{
    background: url("../img/cmn/arw01.png")no-repeat bottom right;
    background-size: 50px;
    padding:5px 57px 5px 0;
    font-size: 2.5rem;
    font-weight: 400;
    }
}
/* SP */
@media screen and (max-width: 480px) {}


/* recruit
----------------------------------------------*/
#_recruit{
    background:rgba(229,1,17,0.8);
    padding: 7% 0 10%;
    }
#_recruit ._Title .en,
#_recruit ._Title .ja{color: #fff;}
/*#_recruit li:nth-child(1) a{
    background: url("../img/top/recruit01.jpg")no-repeat center bottom;
    background-size: cover;
    }
#_recruit li:nth-child(2) a{
    background: url("../img/top/recruit02.jpg")no-repeat center bottom;
    background-size: cover;
    }*/
#_recruit .cntInner{}
/* TAB */
@media screen and (max-width: 780px) {
#_recruit{
    /*padding: 100px 0 70px;*/
    }
}
/* SP */
@media screen and (max-width: 480px) {}


/* 404 not found
----------------------------------------------*/
#_404{
    background:rgba(255,255,255,0.6);
    padding: 200px 0 150px;
    }
#_404 .cntInner{}
#_404 .cntInner p{
    /*font-size: 2.2rem;*/
    font-size: calc(100vw / 80);
    text-align: center;
    font-weight: 600;
    line-height: 300%;
    }
#_404 .cntInner a {
    color: #e6535d;
    }
/* TAB */
@media screen and (max-width: 780px) {
#_404 .cntInner p{
    font-size: calc(100vw / 45);
    }
}
/* SP */
@media screen and (max-width: 480px) {}