@charset "UTF-8";


/*国内MAP
-----------------------------*/
#map{
    margin-top: 5rem;
    margin-bottom: 10rem;
}

#map h3, #office h3 {
    font-size: 2.4rem;
    font-weight: bold;
    color: #003399;
    position: relative;
    text-align: center;
    margin-bottom: 5rem;
}

#map h3::before, #office h3::before {
    content: '';
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -8px;
    display: inline-block;
    width: 150px;
    height: 6px;
    background-color: #003399;
}

#map img{
    width: 100%;
}



@media screen and (max-width:999px){
    #map {
        margin-top: 3rem;
        margin-bottom: 5rem;
    }

    #map h3, #office h3 {
        font-size: 1.7rem;
        font-weight: bold;
        color: #003399;
        position: relative;
        text-align: center;
        margin-bottom: 3rem;
    }

    #map h3::before, #office h3::before {
        bottom: -5px;
        width: 110px;
        height: 4px;
    }
}


/*事業所／関連会社
-----------------------------*/
#office{
    margin-bottom: 15rem;
}

#office ul li{
    margin-bottom: 8rem;
    display: flex;
    align-items: center;
    position: relative;
}

#office ul li:last-child{
    margin-bottom: 0;
}

#office ul li::after{
    content: '';
    position: absolute;
    bottom: -4rem;
    left: 0;
    display: inline-block;
    width: 20%;
    height: 3px;
    background-color: #003399;
}

#office ul li::before{
    content: '';
    position: absolute;
    bottom: -3.9rem;
    left: 0;
    display: inline-block;
    width: 100%;
    height: 1.5px;
    background-color: #4897D6;
}

#office ul li:last-child:after, #office ul li:last-child::before{
    content: none;
}

#office ul li span{
    display: block;
}

#office ul li .head{
    width: 20%;
    font-weight: bold;
    padding-left: 5%;
}

#office ul li .cont{
    width: 65%;
    padding-left: 5%;
}

#office ul li .map-link a{
    background-color: #003399;
    color: #fff;
    border-radius: 50px;
    padding: 0.8rem 0;
    position: relative;
    width: 16rem;
    text-align: center;
}

#office ul li .map-link a::after{
    content: "";
    position: absolute;
    top: 40%;
    right: 12px;
    background-image: url(../img/common/link-blue-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 7px;
    height: 10px;
}

#office ul li .cont .tel{
    display: flex;
}


@media screen and (max-width:999px){
    #office{
        margin-bottom: 6.5rem;
    }

    #office ul li {
        margin-bottom: 4rem;
        display: block;
    }

    #office ul li .head {
        width: 100%;
        padding-left: 0;
    }

    #office ul li .cont{
        width: 100%;
        padding-left: 0;
        margin: 0.5rem 0 1rem 0;
    }

    #office ul li::after{
        bottom: -2rem;
    }
    
    #office ul li::before{
        bottom: -1.9rem;
    }

    #office ul li .map-link a {
        padding: 0.5rem 0;
        width: 13rem;
    }

}