@charset "utf-8";


/* index.html
-------------------------------*/

.top01{
    width: 100%;
    max-width: 1920px;
    margin: auto;
    position: relative;
}
.top01 .img{
    width: 72.2%;
    padding-bottom: 70px;
    margin-left: auto;
    position: relative;
}
/*.top01 .img:before{
    position: absolute;
    left: 0;
    top: 0;
    width: 100px;
    height: 100px;
    background: url(../img/top/kado.png) left top/contain no-repeat;
    content: "";
}*/
.top01 .img .sub{
    position: absolute;
    right: 0;
    bottom: 0;
    width: 1104px;
    height: 155px;
    background: url(../img/top/top01_02.png) left bottom/contain no-repeat;
}
.top01 .txt{
    position: absolute;
    left: 80px;
    top: 150px;
    z-index: 3;
    width: 553px;
}

@media screen and (max-width:1920px){

    .top01 .img{
        padding-bottom: 3.64vw;
    }
    .top01 .img .sub{
        width: 57.5vw;
        height: 8vw;
    }
    .top01 .txt{
        left: 4.1vw;
        top: 7.8vw;
        z-index: 3;
        width: 28.2vw;
    }
}
@media screen and (max-width:910px){
    .top01 .img{
        width: 85%;
    }
    .top01 .txt{
        width: 33vw;
    }
}

@media screen and (max-width:640px){
    .top01 .img{
        width: 100%;
    }
    .top01 .txt{
        position: static;
        width: 100%;
        text-align: center;
    }
}






.top_ttl{
    text-align: center;
    margin-bottom: 70px;
}
.top_ttl .en{
}
.top_ttl .ja{
    margin-top: 10px;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    line-height: 1.2em;
    font-weight: 500;
    color: #1e3c96;
}

.btn_more {
    margin-top: 40px;
}
.btn_more a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 258px;
    height: 70px;
    background-image: url(../img/top/btn_waku.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    border: none;
    color: #1e3c96;
    font-family: "Noto Sans JP", sans-serif;
    position: relative;
}
.btn_more a:after{
    position: absolute;
    right: 20px;
    top: calc(50% - 7px);
    width: 33px;
    height: 14px;
    background: url(../img/top/btn_ya.png) center center no-repeat;
    content: "";
    transition: 0.3s;
}
.btn_more a:hover:after{
    right: 10px;
}
.top_bg3{
    width: 100%;
    background-color: #fff;
    background-image: url(../img/top/top_bg3.png);
    background-position: center top;
    background-repeat: no-repeat;
}

.f-min{
    font-family: "Noto Serif JP", serif;
/*    color: #1e3c96;*/
    font-weight: 500;
    font-size: 18px;
    line-height: 1.8em;
}
.bg_bar{
    display: flex;
    justify-content: flex-start;
    margin-bottom: 40px;
}
.bg_bar.mb10{
    margin-bottom: 10px;
}

.bg_bar .bb-l{
    width: 23px;
    background-image: url(../img/top/bg_bar_l.png);
    background-size:100% 100%;
}
.bg_bar .bb-c{
    width: auto;
    padding: 10px 15px;
    background-image: url(../img/top/bg_bar.png);
    background-size:100% 100%;
    font-family: "Noto Serif JP", serif;
    color: #fff;
    font-size: 30px;
    line-height: 1.4em;
    font-weight: 700;
}
.bg_bar .bb-r{
    width: 23px;
    background-image: url(../img/top/bg_bar_r.png);
    background-size:100% 100%;
}

@media screen and (max-width:910px){
    .top_ttl{
        margin-bottom: 50px;
    }

    .bg_bar .bb-c{
        font-size: 26px;
        line-height: 1.4em;
    }
}
@media screen and (max-width:640px){
    .top_ttl{
        margin-bottom: 30px;
    }
    .top_ttl .en img{
        width: auto;
        height: 30px;
    }
    .top_ttl .ja{
        font-size: 16px;
        line-height: 1.2em;
    }
    .btn_more {
        margin-top: 20px;
    }

    .btn_more a{
        width: 230px;
        height: 55px;
        padding-right: 50px;
    }
    .f-min{
        font-size: 15px;
        line-height: 1.8em;
    }
    .bg_bar .bb-c{
        padding: 10px;
        font-size: 18px;
        line-height: 1.4em;
    }
}



/* 私たちについて */
.top02{
    padding-top: 160px;
    padding-bottom: 160px;
    align-items: center;
}
.top02 .txt{
    width: 47%;
    order: 2;
}
.top02 .img{
    width: 47%;
    max-width: 616px;
    order: 1;
    position: relative;
}
.top02 .img:after{
    position: absolute;
    left: -30px;
    top: 30px;
    z-index: 1;
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(top, #325ab4, #092770);
    background: -webkit-linear-gradient(top, #325ab4, #092770);
    background: linear-gradient(to bottom, #325ab4, #092770);
    content: "";
}
.top02 .img img{
    position: relative;
    z-index: 2;
}
.top02 .btn_more a{
    margin: auto;
}



@media screen and (max-width:910px){
    .top02{
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .top02 .txt{
        width: 100%;
        order: 1;
        margin-bottom: 30px;
    }
    .top02 .img{
        width: 80%;
        max-width: 500px;
        margin: auto;
        order: 2;
    }
    .top02 .img:after{
        left: -20px;
        top: 20px;
    }
}
@media screen and (max-width:640px){
    .top02{
        padding-top: 60px;
    }
}



/* 事業案内 */
.top03{
    padding-bottom: 100px;
}
.top03 .txt1{
    width: 50%;
}
.top03 .txt2{
    width: 47%;
}
.top03 .btn_more a{
    margin: auto;
}
@media screen and (max-width:1350px){

    .top03 .txt1{
        width: 100%;
        max-width: 670px;
        margin-left: auto;
        margin-right: auto;
    }
    .top03 .txt2{
        width: 100%;
        max-width: 670px;
        margin-left: auto;
        margin-right: auto;
    }
}

@media screen and (max-width:910px){
    .top03{
        padding-bottom: 100px;
    }
}
@media screen and (max-width:640px){
    .top03{
        padding-bottom: 60px;
    }
}
@media screen and (max-width:410px){
    .top03 .bg_bar .bb-c {
        font-size: 4.5vw;
        line-height: 1.4em;
    }


}









/* 会社概要 */

.top_bg4{
    width: 100%;
    height: 605px;
    background: url(../img/top/top_bg4.jpg) center center no-repeat;
}

.top04{
    width: 100%;
    background: url(../img/top/top_bg7.jpg) center top no-repeat;
/*
    background: -moz-linear-gradient(left, #e3f0ff, #b7bde5);
    background: -webkit-linear-gradient(left, #e3f0ff, #b7bde5);
    background: linear-gradient(to right, #e3f0ff, #b7bde5);
*/
    padding-top: 100px;
    padding-bottom: 100px;
}
.top04 ._in{
    align-items: center;
}
.top04 .txt{
    width: 47%;
/*    color: #1e3c96;*/
}

.top04 .btn_more a{
    margin: auto;
}

.top04 .img{
    width: 45%;
    max-width: 616px;
    position: relative;
}
.top04 .img:after{
    position: absolute;
    right: -30px;
    top: 30px;
    z-index: 1;
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(top, #325ab4, #092770);
    background: -webkit-linear-gradient(top, #325ab4, #092770);
    background: linear-gradient(to bottom, #325ab4, #092770);
    content: "";
}
.top04 .img img{
    position: relative;
    z-index: 2;
}



@media screen and (max-width:1920px){
    .top_bg4{
        width: 100%;
        height: 31vw;
        background-size: cover;
    }
}
@media screen and (max-width:910px){
    .top04{
        padding-top: 70px;
        padding-bottom: 80px;
    }
    .top04 ._in{
        width: 90%;
    }
    .top04 .txt{
        width: 100%;

    }
    .top04 .txt ._in2{
        width: 100%;
        max-width: initial;
        max-width: auto;
        margin: auto;
    }

    .top04 .img{
        width: 80%;
        max-width: 500px;
        margin: 30px auto 0;
        order: 2;
    }
    .top04 .img:after{
        right: -20px;
        top: 20px;
    }

    .top04 .top_ttl{
        display: block;
    }
}
@media screen and (max-width:640px){
    .top04 .img{
        margin-top: 30px;
    }
}






/* 設備紹介 */
.top05{
    width: 100%;
    max-width: 1920px;
    margin: auto;
}
.top05 .txt{
    width: 50%;
    background-color: #092770;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 80px 3%;
    order: 2;
}
.top05 .top_ttl .ja {
    color: #fff;
}
.top05 .txt .sub{
    display: inline-block;
    text-align: left;
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
}


.top05 .btn_more a {
    margin: auto;
    background-image: url(../img/top/btn_waku_w.png);
    color: #fff;
}
.top05 .btn_more a::after {
    background-image: url(../img/top/btn_ya_w.png);
}


.top05 .img{
    width: 50%;
    order: 1;
}
.top05 .img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width:910px){

    .top05 .txt{
        width: 100%;
        display: block;
        padding: 80px 5%;
        order: 1;
    } 
    .top05 .img{
        width: 100%;
        order: 2;
    }
    .top05 .img img{
        width: 100%;
        height: 62vw;
    }
    
}
@media screen and (max-width:640px){
    .top05 .txt{
        padding-top: 50px;
        padding-bottom: 50px;
    } 
}








/* お問い合わせ */
.top06{
    width: 100%;
    padding-top: 180px;
    padding-bottom: 180px;
    background-color: #fff;
    background-image: url(../img/top/top_bg6.png);
    background-repeat: no-repeat;
    background-position: center top;
    text-align: center;
}
.top06 ._in{
    padding: 100px 3%;
    background: -moz-linear-gradient(left, #b7bde5, #e3f0ff);
    background: -webkit-linear-gradient(left, #b7bde5, #e3f0ff);
    background: linear-gradient(to right, #b7bde5, #e3f0ff);

}
.top06 .top_ttl {
    margin-bottom: 30px;
}


.top06 .sub{
/*    color: #1e3c96; */
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5em;

}
.info_toi{
    margin-top: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.info_toi li{
    padding-left: 40px;
    padding-right: 40px;
}
.info_toi li:nth-child(2){
    border-left: solid 1px #1e3c96;
}
@media screen and (max-width:1600px){
    .top06{
        padding-top: 100px;
        padding-bottom: 100px;
    }
}
@media screen and (max-width:910px){
    .top06{
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .top06 ._in{
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .info_toi li{
        padding-left: 20px;
        padding-right: 20px;
    }
}
@media screen and (max-width:640px){
    .top06{
        padding-top: 70px;
        padding-bottom: 50px;
    }
    .top06 ._in{
        padding-top: 40px;
        padding-bottom: 10px;
    }

    .top06 .sub{
        font-size: 16px;
        line-height: 1.5em;
    }
    .info_toi{
        margin-top: 30px;
        display: block;
    }
    .info_toi li{
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 30px;
    }
    .info_toi li:nth-child(2){
        border-left: none;
    }
    
}










