/* 共通 */
html {
    scroll-behavior: smooth;
}
.body {
    width: 80%;
}

.comp_comp_img {
    top: 0;
    width: 100%;
    height: 40vw;
    object-fit: cover;
    object-position: 100% 24%;
}

.comp_v_img {
    position: relative;
}
.page_name {
    position: absolute;
    width: 100%;
    left: 0;
    top: calc(50% - 50px);
    text-align: center;
    font-size: 2.9rem;
}

.page_name p {
    margin: 2rem auto;
    color: #fff;
}

.page_name_ja {
    letter-spacing: 3px;
}

.page_name_eng {
    letter-spacing: 5px;
}

.box {
    margin: 0 auto;
    font-size: 1.6rem;
}

.product_overview,
.history,
.organization_chart,
.access {
    width: 75rem;
    margin: 15rem auto;
}

.overview_cont,
.hist_cont,
.organization_cont {
    margin: 0 auto;
    display: flex;
    width: 100%;
}

.head_cont {
    margin: 2rem 5rem;
    width: 25%;
    color: #031A63;
    font-weight: bold;
}
.cont {
    margin: 2rem 2rem;
    width: 65%;
}

.s_separator {
    width: 100%;
    margin: 0 auto;
}

/* 概要 */

.cont a {
    color: #000;
}

.overview {
    margin: 0 auto;
}

.link {
    text-decoration: underline;
}

.link li a:hover {
    color: rgba(0, 0, 0, 0.5);
}

ul {
    margin: 2rem, 0;
    padding: 0;
}

ul li {
    list-style-type: none;
}

ul li p {
    margin: 0;
}


/* 組織図 */
.chart_img {
    margin: 0 auto;
}

.comp_chart_img{
    width: 100%;
}


/* アクセス */
.access_content {
    margin: 0 auto;
    width: 100%;
}

.access_head_cont {
    font-size: 1.2em;
    width: 20%;
    border-bottom: 2px solid #031A63;
}

.comp_access {
    width: 100%;
    display: flex;
}

.comp_access_img {
    width: 45%;
    margin-right: 3rem;
}

.comp_access_png {
    width: 100%;
    height: 173px;
    margin-top: 3rem;
    object-fit: cover;
}

.acc_cont {
    width: 55%;
    margin-top: 3rem;
}

.head_1 {
    width: 8rem;
}

.head_2 {
    width: 10rem;
}

.head_3 {
    width: 23.1rem;
}

.access_cont {
    position: relative;
    height: 100%;
    margin-top: 3rem;
}

#matsue-honsya,
#hirosima-zimusyo,
#matsue-kita-ofice {
    position: absolute;
    width: 10%;
    height: 10vh;
    top: -10vh;
}

.parking_guid {
    color: #000;
    text-decoration: underline;
}

.parking_guid:hover {
    color: rgba(0, 0, 0, 0.5);
}

.map {
    width: 100%;
    height: 45vh;
    margin-bottom: 5rem;
}

.map iframe {
    width: 100%;
    height: 100%;
}

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

    #top_body {
        position: relative;
        top: -7rem;
    }
    
    .body {
        width: 100%;
        margin: 0 auto;
    } 
    
    .heading {
        margin-bottom: 3rem;
    }
    
    .product_overview,
    .history,
    .organization_chart,
    .access {
        width: 80%;
    }
    .overview, .history_content {
        width: 100%;
        max-width: 50rem;
        margin: 0 auto;
    }

    .overview_cont,
    .hist_cont,
    .organization_cont {
        display: block;
    }
    .overview_cont {
        width: 100%;
        display: block;
    }

    .head_cont {
        width: 16rem;
        margin: 1rem 1rem;
    }

    .cont {
        width: 90%;
        margin-left: 3rem;
    }

    .access {
        margin-bottom: 10vh !important;
    }

    .access_content {
        width: 100%;
    }

    .map {
        width: 100%;
        margin: 0 auto;
    }

    .map iframe {
        width: 100%;
        height: 100%;
    }

    .place_name {
        display: none;
    }
	
	@media screen and (max-width:480px) {

        /* 共通 */
        
        .comp_comp_img {
            height: 60vw;
        }

        .box {
            font-size: 1.4rem;
        }

        .acc_cont {
            font-size: 1.4rem;
        }
    }
}