@charset "UTF-8";

/* イントロ */
.has-bg-text-intro {
    position: relative;
}

.has-bg-text-intro::after {
    content: "";
    position: absolute;
    top: 92px;
    left: -25px;
    width: 100%;
    height: 82%;
    background-color: rgba(128, 128, 128, 0.2); /* グレーの背景（透明度を調整） */
    transform: translate(-10px, 44px); /* 背景を少しずらす（数値を調整） */
    z-index: -1;
    border-radius: 10px;
}

.introduction__container {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 5%;
    display: flex;
    gap: 6%;
    align-items: center;
}

.introduction__column h4 {
    color: #153653;
    font-size: clamp(19px, 1.94vw, 30px);
    font-weight: bold;

}

.introduction__column p {
    margin-top: 20px;
    line-height: 35px;
    letter-spacing: 1px;
    max-width: 600px;
}

.introduction__img {
    max-width: 500px;
    height: auto;
}

@media screen and (max-width: 960px) {
    .introduction__container {
        margin: 0 auto;
        padding: 0 10%;
        gap: 6%;
        align-items: center;
        flex-direction: column-reverse;
        width: fit-content;
    }

    .introduction__img {
        max-width: 350px;
        margin-top: 30px;
    }

    .has-bg-text-intro::after {
        display: none;
    }
}


@media screen and (max-width: 600px) {
    .introduction__column p {
    margin-top: 20px;
    line-height: 25px;
    letter-spacing: 1px;
    }
}
    



/* 会社概要 */
.company {
    padding: 100px 0;
}

.company__list {
    margin: 30px auto;
    max-width: 746px;
}

.company__list-item {
    border-bottom: 1px solid #BCBCBC;
    display: flex;
    justify-content: flex-start;
    gap: 20%;
    padding: 3% 0;
}

.company__label {
    display: inline-block;
    width: 6em;
}

.company__services {
    display: flex;
    flex-direction: column;
    gap: 0.3em;
}

@media screen and (max-width: 600px) {
    .company__list-item {
        display: block;
    }   

    .company__label {
        width: 30em;
    }
}

@media screen and (max-width: 400px) {
    .company__label {
        width: 23em;
    }

    .company {
        padding: 50px 0;
    }
}