@charset "UTF-8";


/*--------------------------------------------------------------
会社案内
--------------------------------------------------------------*/

.company-message {
    background-image: url('../img/company/company-profile.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    padding: 7vw;
    color: #fff;
    min-height: 300px;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;

}

@media screen and (max-width: 768px) {
    .company-message {
        height: auto;
        padding: 15vw 5vw;
    }
}

.company-message__inner {
    width: 50vw;
    line-height: 1.6;
}

@media screen and (max-width: 768px) {
    .company-message__inner {
        width: 100%;
        box-sizing: border-box;
    }
}

.company-message__heading {
    font-size: clamp(18px, 2.5vw, 28px);
    font-weight: bold;
    margin-bottom: 2vw;
}

@media screen and (max-width: 768px) {
    .company-message__heading {
        margin-bottom: 7vw;
    }
}

.company-message__text {
    font-size: clamp(14px, 2vw, 18px);
    position: relative;
    z-index: 2;
    width: 50vw;
    max-width: 500px;
    letter-spacing: 0.2vw;
}

@media screen and (max-width: 768px) {
    .company-message__text {
        width: 100%;
        max-width: none;
        /* 500px制限を解除 */
    }
}

@media screen and (max-width: 768px) {
    .company-message__text--break br {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    .company-message__text--break br.br--keep {
        display: block;
        height: 1.5em;
        content: '';
    }
}

/*--------------------------------------------------------------
会社概要
--------------------------------------------------------------*/
.company-profile {
    position: relative;
    display: flex;
    flex-direction: column;
    background-image: url('../img/common/gradation_vertical.jpeg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: white;
    padding: 10vw 5vw;
}

@media screen and (max-width: 768px) {
    .company-profile {
        padding: 15vw 5vw;
        background-attachment: scroll;
    }
}

.company-profile__list {
    display: grid;
    grid-template-columns: 8em 1fr;
    row-gap: 1.5em;
    column-gap: 2em;
    padding-block: 4em;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    text-align: left;
    margin-top: 7vw;
}

@media screen and (max-width: 768px) {
    .company-profile__list {
        display: block;
    }
}

.company-profile__row {
    display: flex;
    gap: 1em;
    align-items: flex-start;
    text-align: left;
}



@media screen and (max-width: 768px) {
    .company-profile__row {
        flex-direction: column;
        gap: 0rem;
    }
}

.company-profile__term {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .company-profile__term {
        margin-bottom: 0.3em;
    }
}

.company-profile__desc {
    line-height: 1.6;
}

@media screen and (max-width: 768px) {
    .company-profile__desc {
        margin-bottom: 1.5em;
    }
}