@charset "UTF-8";

/* 
----------------------------------------------------*/
.companyLayout .h2_wrap .h2_img {
    background-image: url("../img/company/h2_bg_sp.png");
}



        /* 【タブレット用のスタイル記述】 */
        @media screen and (min-width: 760px) {
            .companyLayout .h2_wrap .h2_img {
                background-image: url("../img/company/h2_bg.png");
            }
        }

        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 960px) {
        }

/* c01
----------------------------------------------------*/
.companyLayout #c01 .inner p {
    line-height: 2;
}
.companyLayout #c01 .inner .flex .en {
    text-align: right;
    font-size: 1.3rem;
    margin-top: 40px;
}


        /* 【タブレット用のスタイル記述】 */
        @media screen and (min-width: 760px) {
            .companyLayout #c01 .inner .flex .en {
                font-size: 1.5rem;
            }
        }

        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 960px) {
        }

/* c02
----------------------------------------------------*/

.companyLayout #c02 .inner > p {
    text-align: center;
    line-height: 1.8;
}
.companyLayout #c02 .w_box, .companyLayout #c02 .column_box {
    margin-top: 60px;
}
.companyLayout #c02 .w_box ul {
    gap: 20px 4%;
}
.companyLayout #c02 .w_box {
    padding-bottom: 0;
}
.companyLayout #c02 .w_box table {
    margin-bottom: 60px;
}
.companyLayout #c02 .column_box .value_table .title02, .companyLayout #c02 .column_box .value_table .title03 {
    margin-bottom: 0;
    text-align: left;
}
.companyLayout #c02 .column_box .value_table {
    counter-reset: num01;
    max-width: 1000px;
    margin: 0 auto;
}
.companyLayout #c02 .column_box .value_table tr {
    counter-increment: num01;
}
.companyLayout #c02 .column_box .value_table th {
    padding-left: 50px;
    position: relative;
}
.companyLayout #c02 .column_box .value_table th::before {
    position: absolute;
    content: counter(num01, decimal-leading-zero) ".";
    left: 0;
    top: 30px;
    font-family: "Shippori Mincho", serif;
    font-weight: 500;
    font-style: italic;
}
.companyLayout #c02 .column_box .value_table .title02 {
    font-size: 1.8rem;
}
.companyLayout #c02 .column_box .value_table th::before {
    font-size: 2rem;
}
.companyLayout #c02 .column_box .value_table .title03 {
    font-size: 1.2rem;
}

        /* 【タブレット用のスタイル記述】 */
        @media screen and (min-width: 760px) {
            .companyLayout #c02 .w_box, .companyLayout #c02 .column_box {
                margin-top: 100px;
            }
            .companyLayout #c02 .w_box table {
                margin-bottom: 100px;
            }
            .companyLayout #c02 .column_box .value_table .title02 {
                font-size: 2.2rem;
            }
            .companyLayout #c02 .column_box .value_table th {
                padding-left: 70px;
            }
            .companyLayout #c02 .column_box .value_table th::before {
                font-size: 2.5rem;
            }
            .companyLayout #c02 .column_box .value_table th::before {
                top: 40px;
            }
        }

        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 960px) {
            .companyLayout #c02 .column_box .value_table .title02 {
                font-size: 2.5rem;
            }
            .companyLayout #c02 .column_box .value_table th {
                padding-left: 80px;
            }
            .companyLayout #c02 .column_box .value_table th::before {
                font-size: 3rem;
            }
            .companyLayout #c02 .column_box .value_table .title03 {
                font-size: 1.4rem;
            }
        }



/* c03
----------------------------------------------------*/
.companyLayout #c03 {
    background-color: #f6f6e7;
    padding-bottom: 0;
}
.companyLayout #c03 .map {
    margin-bottom: 40px;
}
.companyLayout #c03 .map iframe {
    height: 315px;
}


        /* 【タブレット用のスタイル記述】 */
        @media screen and (min-width: 760px) {
            .companyLayout #c03 .map {
                margin-bottom: 60px;
            }
            .companyLayout #c03 .map iframe {
                height: 460px;
            }
            .companyLayout #c03 .bg {
                background-image: url("../img/company/company_c03_img01.png");
                background-size: cover;
                background-position: center center;
                background-repeat: repeat-x;
                width: 100%;
                height: 141px;
            }
        }

        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 960px) {
            .companyLayout #c03 .bg {
                height: 351px;
            }
        }
        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 2000px) {
            .companyLayout #c03 .bg {
                background-size: contain;
            }
        }


/* c04
----------------------------------------------------*/
.companyLayout #c04 {
    position: relative;
    overflow: hidden;
}
.companyLayout #c04::before {
    position: absolute;
    content: "";
    background: url("../common/img/common_bg02.png")no-repeat bottom center/cover;
    width: 379px;
    height: 37px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.companyLayout #c04 .movie {
    max-width: 690px;
    margin: 0 auto;
}
.companyLayout #c04 .movie iframe {
    height: 200px;
}
.companyLayout #c04 .history_li .flex_box01:first-child{
    color: #219ec1;
    font-weight: bold;
}
.companyLayout #c04 .history_li {
    position: relative;
}
.companyLayout #c04 .history_li::before {
    position: absolute;
    content: "";
    width: 2px;
    height: calc(100% - 30px);
    top: 50%;
    transform: translateY(-50%);
    left: 13px;
    background-color: #219ec1;
    z-index: -2;
}
.companyLayout #c04 .history_li > li {
    padding-left: 45px;
    gap: 10px 14%;
}
.companyLayout #c04 .history_li > li:not(:last-child) {
    margin-bottom: 40px;
}
.companyLayout #c04 .history_li > li {
    position: relative;
}
.companyLayout #c04 .history_li> li::before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    background-color: #fff;
    border-radius: 50%;
    top: -2px;
    left: 0;
    border: 8px solid #219ec1;
}
.companyLayout #c04 .history_li> li:last-child::after {
    position: absolute;
    content: "";
    background-color: #fff;
    width: 100%;
    height: calc(100% - 10px);
    left: 0;
    bottom: 0;
    z-index: -1;
}

        /* 【タブレット用のスタイル記述】 */
        @media screen and (min-width: 760px) {
            .companyLayout #c04::before {
                width: 649px;
                height: 66px;
            }
            .companyLayout #c04 .movie iframe {
                height: 380px;
            }
            .companyLayout #c04 .history_li .flex_box01:first-child {
                text-align: right;
            }
            .companyLayout #c04 .history_li .flex_box01:first-child span {
                display: inline-block;
                min-width: 40px;
                margin-left: 30px;
            }
            .companyLayout #c04 .history_li .flex_box01 {
                width: calc(86% / 2);
            }
            .companyLayout #c04 .history_li::before {
                left: 50%;
                transform: translate(-50%, -50%);
            }
            .companyLayout #c04 .history_li > li {
                padding-left: 0;
            }
            .companyLayout #c04 .history_li> li::before {
                left: 50%;
                transform: translateX(-50%);
            }
            .companyLayout #c04 .history_li > li:not(:last-child) {
                margin-bottom: 50px;
            }
        }

        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 960px) {
            .companyLayout #c04::before {
                width: 949px;
                height: 97px;
            }
            .companyLayout #c04 {
                padding-top: 160px;
            }
        }


/* 
----------------------------------------------------*/




        /* 【タブレット用のスタイル記述】 */
        @media screen and (min-width: 760px) {
        }

        /* 【PC用のスタイル記述】 */
        @media screen and (min-width: 960px) {
        }