#sub_contents {
    background-color: #eeece8;
}

section.service {
    padding-bottom: 11vw;
}

#sub_contents {
    padding-top: 13.8vw;
}

.ttl.company {
    width: 69%;
    max-width: 362px;
    margin: 12.3vw auto 7.5vw;
}

.ttl_category {
    margin: 0 0 18vw;
    font-size: min(5vw, 37px);
    font-weight: 600;
    text-align: center;
    position: relative;
    letter-spacing: 8px;
}

.ttl_category:before {
    content: "";
    width: 10%;
    max-width: 64px;
    height: 5px;
    background-color: #000000;
    position: absolute;
    bottom: -43%;
    left: 50%;
    transform: translateX(-50%);
}



.inner_company {
    background-image: url(../img/company/bg_company1.svg);
    background-size: 93% 100%;
    background-position: center top;
    background-repeat: no-repeat;
    padding-top: 9.6vw;
    padding-bottom: 15.3vw;
}

.inner_company .catch {
    max-width: 468px;
    width: 65vw;
    margin: 0 auto 7.6vw;
}

.img_company1{
	width: 76%;
    max-width: 543px;
    margin: 0 auto 7.5vw;
}

.img_company1 img{
	width: 100%;
}


.list_company {
    width: 76%;
    max-width: 543px;
    display: flex;
    margin: 0 auto;
    padding: 0;
    flex-direction: row;
    flex-wrap: wrap;
    font-size: min(3.9vw, 28px);
}

.list_company dt,
.list_company dd {
    margin: 0;
    padding: 2.2vw 0 2.2vw 0;
    border-bottom: 1px solid;

}

.list_company dt {
    width: 28%;
    font-weight: 600;

}

.list_company dd {
    width: 72%;
}


.list_company dt.last {
    border-bottom: none;
}


.list_company dd:last-child {
    border-bottom: none;
}


.list_company dd:last-child span{
    display: inline-block;
    line-height: 1.25;
}


.map {
    width: 76%;
    max-width: 543px;
    margin: 6.2vw auto 0;
}

.map .mds1 {
    font-size: min(3.9vw, 28px);
    font-weight: 600;
    margin: 0 auto 4.5vw;
    padding: 2.2vw 0 0vw 0;
    border-bottom: 1px solid;
}

.map iframe {
    aspect-ratio: 1 / 1;
    max-width: 545px;
    width: 100%;
    height: auto;
}

.map .map_link {
    color: #1e75e8;
    font-size: min(3.5vw, 25px);
    text-align: right;
    display: block;
    text-decoration: none;
}

section.contact {
    padding: 8.9vw 0 14vw;
}

@media (min-width: 721px) and (max-width: 990px) {

    #sub_contents {
        padding-top: 99px;
    }

    .ttl.company {
        margin: 89px auto 54px;
    }

    .ttl_category {
        margin: 0 0 130px;
        font-size: 36px;
    }



}

/*PC時　スマホ固定化*/

@media (min-width: 991px) {

    section.service {
        padding-bottom: 61px;
    }

    #sub_contents {
        padding-top: 1px;
    }

    .ttl.company {
        margin: 66px auto 40px;
    }

    .ttl_category {
        margin: 0 0 96px;
        font-size: 27px;
    }

    .inner_company {
        padding-top: 48px;
        padding-bottom: 89px;
    }

    .inner_company .catch {
        width: 347px;
        margin: 0 auto 27px;
    }
	
	.img_company1{
		margin: 0 auto 20px;
	}
	
    .list_company {
        font-size: 21px;
    }

    .list_company dt,
    .list_company dd {
        padding: 12px 0 12px 0;
    }

    .map {
        margin: 33px auto 0;
    }

    .map .mds1 {
        font-size: 21px;
        margin: 0 auto 25px;
        padding: 12px 0 0px 0;
    }

    .map .map_link {
        font-size: 19px;
    }






    /* --------------- works --------------- */
    section.works {
        padding: 47px 0 69px;
        margin: 102px 0 0 0;
    }

    .slider {
        margin: 0 0 48px;
    }

    .slides {
        margin: 0 0 21px;
    }

    .ttl_category2.works {
        margin: 0 0 77px;
        font-size: 27px;
    }

    .link_reasons a span.roboto {
        padding: 0 46px 0 0;
    }

    section.contact {
        padding: 48px 0 117px;
    }

}