@charset 'utf-8';

/* ==========================================================================

	企業情報

   ========================================================================== */


/*--------------------------------
	基本レイアウト
--------------------------------*/

main > section {
    padding: 150px 0;
}

.heading_gr2 {
    margin: 0 auto 2em;
}

/* 概要 */
dl.company_list {
    width: 100%;
    max-width: calc(900px + 6%);
    margin: 5em auto 0;
    border-bottom: 1px solid #D5D5D5;
}

dl.company_list::after {
    content: "";
    display: block;
    clear: both;
}

dl.company_list dt {
	width: 15em;
    margin: 0;
    padding: 2em 0;
    border-top: 1px solid #D5D5D5;
    font-weight: bold;
    float: left;
    clear: both;
}

dl.company_list dd {
    width: calc(100% - 15em);
    padding: 2em 0;
    border-top: 1px solid #D5D5D5;
    background: #fff;
    float: right;
}

@media only screen and (max-width: 812px) {
    main > section {
        padding: 50px 0;
    }

    dl.company_list {
        margin: 3em auto 0;
        width: 100%;
        background: transparent;
        border-bottom: 1px solid #D5D5D5;
    }

    dl.company_list dt {
        width: 100%;
        margin: 0;
        padding: 1em 0 0;
        float: none;
        font-weight: bold;
		border-top: none;
        border-top: 1px solid #D5D5D5;
    }

    dl.company_list dd {
        width: 100%;
        padding: 1em 0;
        float: none;
		border-top: none;
    }
}



/*--------------------------------
    社員紹介
--------------------------------*/

.staff_box {
    display: -webkit-flex; /* Safari */
    display: flex; /* Chrome, Firefox, IE11 */
    -webkit-justify-content: space-between;
    justify-content: space-between;
    /* -webkit-align-items: center;
    align-items: center; */
    align-items: flex-start;
    margin: 0 auto 10rem;
}

.staff_box:last-of-type {
    margin: 0 auto;
}

.staff_prof {
    width: 450px;
    display: -webkit-flex; /* Safari */
    display: flex; /* Chrome, Firefox, IE11 */
    -webkit-align-items: center;
    align-items: center;
}

.staff_prof .staff_prof_img {
    width: 170px;
    height: 170px;
    margin-right: 20px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    overflow: hidden;
}

.staff_prof .staff_prof_info small {
    display: block;
    font-size: 1.4rem;
}

.staff_prof .staff_prof_info strong {
    display: block;
    font-size: 2.4rem;
    margin: .5em auto 1em;
}

.staff_prof .staff_prof_info .sns li {
    display: inline-block;
}

.staff_prof .staff_prof_info .sns li + li {
    margin: 0 0 0 10px;
}

.staff_prof .staff_prof_info .sns li a svg {
    width: 32px;
    height: 32px;
    vertical-align: middle;
    fill: #AAA;
}

.staff_txt {
    width: calc(100% - 450px - 30px);
    line-height: 1.8;
}

@media only screen and (min-width: 813px) {

    .staff_prof .staff_prof_info .sns li a:hover svg {
        fill: #000;
    }
}


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

    .staff_box {
        display: block;
        margin: 0 auto 5em;
    }

    .staff_box:last-of-type {
        margin: 0 auto;
    }

    .staff_prof {
      width: 100%;
    }

    .staff_prof .staff_prof_img {
        width: 100px;
        height: 100px;
        margin-right: 10px;
    }

    .staff_prof .staff_prof_info small {
        font-size: 1.2rem;
    }

    .staff_prof .staff_prof_info strong {
        font-size: 1.6rem;
        margin: .5em auto 1em;
    }

    .staff_prof .staff_prof_info .sns li {
        display: inline-block;
    }

    .staff_prof .staff_prof_info .sns li + li {
        margin: 0 0 0 20px;
    }

    .staff_prof .staff_prof_info .sns li a svg {
        width: 32px;
        height: 32px;
        vertical-align: middle;
        fill: #AAA;
    }

    .staff_txt {
        width: 100%;
        line-height: 1.6;
        margin-top: 20px;
    }
}

/*--------------------------------
    メディア
--------------------------------*/

dl.media {
    width: 900px;
    max-width: 100%;
    margin: 5em auto 0;
    border-bottom: 1px solid #D5D5D5;
}

dl.media::after {
    content: "";
    display: block;
    clear: both;
}

dl.media dt {
	width: 15em;
    margin: 0;
    padding: 1em 0;
    border-top: 1px solid #D5D5D5;
    float: left;
    clear: both;
}

dl.media dd {
    width: calc(100% - 15em);
    padding: 1em 0;
    border-top: 1px solid #D5D5D5;
    background: #fff;
    float: right;
}

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

    dl.media {
        width: 100%;
        margin: 3em auto 0;
        border-bottom: 1px solid #D5D5D5;
    }

    dl.media dt {
        width: 100%;
        margin: 0;
        padding: 1em 0;
        float: none;
        font-weight: bold;
    }

    dl.media dd {
        width: 100%;
        padding: 0 0 1em;
        float: none;
        border-top: none;
    }
}


