@charset "utf-8";

.title-wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 150px;
        margin: 0 0 5rem auto;
        color: #ffffff;
        font-size: 3rem;
        background-color: #54BC00;
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23e8ffc2' fill-opacity='0.14' fill-rule='evenodd'%3E%3Ccircle cx='3' cy='3' r='3'/%3E%3Ccircle cx='13' cy='13' r='3'/%3E%3C/g%3E%3C/svg%3E");
}

.main-contents {
        margin: 0 auto;
        padding-top: 0;
}

.contents-inner {
        max-width: 940px;
        padding: 0 20px;
        margin: 0 auto 10rem;
}

.company-wrap {
        margin-bottom: 5rem;
}

.company-list {
        display: flex;
        justify-content: space-between;
        padding: 1.5rem 0;
        border-bottom: 1px solid #e2e2e2;
}

.company-list:last-child {
        border: none;
}

.company-list-title {
        width: 30%;
        font-weight: normal;
        font-size: 1.7rem;
        font-weight: bold;
        color: #104AB5;
}

.company-list-info {
        width: 68%;
        font-size: 1.5rem;
}

.company-list-flex {
        display: flex;
        align-items: center;
        margin-bottom: 0.5rem;
}

.company-list-post {
        width: 12rem;
        font-weight: normal;
}

.slide-down-header {
        background-color: #104AB5;
        padding: 2rem;
        color: #ffffff;
        cursor: pointer;
        text-align: center;
        font-size: 2rem;
        font-weight: normal;
        border-radius: 5px 10px;
}

.slide-down-header::after {
        content: "＋";
        float: right;
}

.slide-down-header.on::after {
        content: "－";
}

.slide-down-item {
        display: none;
}

.expert-item {
        margin-bottom: 5rem;
}

.expert-team {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 5rem;
}

.expert-support-member-introduction {
        padding: 1rem 1rem 1rem 2rem;
        margin-bottom: 5rem;
        font-size: 2rem;
        font-weight: bold;
        background: #fff0de;
        border-left: solid 5px #EF8200;
}

.expert-member {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 31%;
        font-weight: bold;
        font-size: 1.8rem;
        text-align: center;
}

.expert-member-title {
        font-size: 1.4rem;
}

.expert-member-photo-wrap {
        border-radius: 5px 20px;
        overflow: hidden;
}

.expert-member-photo {
        width: 100%;
        object-fit: cover;
        margin-bottom: 1rem;
        transform: scale(1.2);
}

.grid {
        display: flex;
        flex-flow: row wrap;
}

.expert-support-member {
        width: 17%;
        margin-right: 3.75%;
        margin-bottom: 5%;
}

.expert-support-member:nth-of-type(5n) {
        margin-right: 0;
}

.expert-support-member:hover {
        transform: translateY(-10px);
        transition: .3s;
}

.expert-support-member-link {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
}

.member-photo-box {
        width: 100%;
}

.expert-support-member-photo {
        width: 100%;
        aspect-ratio: 200/250;
        box-shadow: 3px 3px 0 #54BC00;
        border: 2px solid #54BC00;
        border-radius: 5px 20px;
}

.expert-support-member-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        font-size: 1.4rem;
}

.expert-support-member-title {
        margin-top: 1.2rem;
        font-weight: bold;
        font-size: 1.2rem;
}

.expert-support-member-title-s {
        margin-top: 0.7rem;
        font-weight: bold;
        font-size: 1.2rem;
        line-height: 1.1;
        text-align: center;
}

.expert-support-member-name {
        font-size: 1.7rem;
        font-weight: bold;
        line-height: 1.4;
}

.cell.is-empty {
        height: 0;
        padding-top: 0;
        padding-bottom: 0;
        margin-top: 0;
        margin-bottom: 0;
}

@media screen and (max-width:1024px) {

        .expert-support-member {
                width: 22%;
                margin-right: 3%;
        }

        .expert-support-member:nth-of-type(4n) {
                margin-right: 0;
        }

        .expert-support-member:nth-of-type(5n) {
                margin-right: 3%;
        }
}

@media screen and (max-width:768px) {

        .title-wrap {
                margin-bottom: 0;
        }

        .contents-inner {
                display: block;
                margin: 0 auto;
        }

        .company-wrap {
                margin-bottom: 5rem;
        }

        .company-wrap,
        .company-map-area {
                width: 100%;
        }

        .company-list {
                display: block;
        }

        .company-list:first-child {
                padding-top: 0;
        }

        .company-list-title {
                width: 100%;
                margin-bottom: 1rem;
                font-size: 1.7rem;

        }

        .company-list-info {
                width: 100%;
                font-size: 1.4rem;
        }

        .company-map-area {
                height: 50vw;
        }

        .slide-down {
                margin-bottom: 5rem;
        }

        .slide-down-header {
                margin-bottom: 5rem;
                font-size: 1.8rem;
        }

        .expert-team {
                margin-top: 1rem;
        }

        .expert-member-photo {
                height: 25vw;
        }

}

@media screen and (max-width:599px) {
        .slide-down-header {
                margin-bottom: 2rem;
        }

        .expert-team {
                display: block;
                margin-top: 1rem;
        }

        .expert-member {
                width: 100%;
                margin-bottom: 2rem;
        }

        .expert-item {
                margin-bottom: 2rem;
        }

        .expert-support-member-introduction {
                margin-bottom: 2rem;
        }

        .expert-support-team {
                align-items: stretch;
                justify-content: space-between;
        }

        .expert-member-photo {
                width: 100%;
                height: auto;
                margin: 0 auto 0.5rem;
        }

        .expert-support-member {
                width: 46%;
                margin-right: 0;
                margin-bottom: 10%;
                font-size: 1.4rem;
        }
}