@charset "UTF-8";

/*--------------------------------------------------------------
MV
--------------------------------------------------------------*/
.main-visual-wrapper {
    overflow: hidden;
}

.main-visual {
    height: 100vh;
    height: 100dvh;
    width: 100%;
    background-image: url('../img/top/mv.jpg');
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 7vw;
}

.main-visual__inner {
    max-width: 100%;
}

@media screen and (max-width: 768px) {
    .main-visual {
        height: auto;
        min-height: 800px;
    }
}

.main-visual__text {
    font-size: clamp(18px, 7vw, 60px);
    line-height: clamp(39px, 10vw, 100px);
    color: white;
    text-align: left;
    font-weight: bold;
    text-shadow: 0 0 10px rgba(0, 19, 45, 0.8),
        0 0 40px rgba(0, 158, 220, 0.4);
}

/*--------------------------------------------------------------
H2（TOPページのみ高さ変更）
--------------------------------------------------------------*/
.title-block--top {
    height: 30vh;
}

/*--------------------------------------------------------------
事業内容
--------------------------------------------------------------*/
.business {
    display: flex;
    flex-direction: column;
    padding: 0;
    position: relative;
}

.business__item {
    position: relative;
    padding: 7vw 7vw 20em;
    color: #fff;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 300px;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background-attachment: fixed;

}

@media screen and (max-width: 768px) {
    .business__item {
        padding: 15vw 5vw;
        background-size: cover;
        background-position: center;
        height: 70vh;
        background-attachment: scroll;
    }
}

.business__text-wrapper {
    position: relative;
    z-index: 2;
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.5s ease, transform 0.5s ease;
    text-shadow: 0 0 6px rgba(0, 19, 45, 20.8), 0 0 24px rgb(205 205 205 / 0%);
}


/* 背景画像個別指定 */
.business__item--human {
    background-image: url('../img/top/business__item_01.jpeg');
}

.business__item--ad {
    background-image: url('../img/top/business__item_02.jpeg');
    background-position: left;
}

.business__item--realestate {
    background-image: url('../img/top/business__item_03.jpeg');
}

.business__item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(20, 20, 20, 0.4), transparent);
    mix-blend-mode: multiply;
    z-index: 1;
    pointer-events: none;
}

.business__title {
    font-size: clamp(18px, 2.5vw, 28px);
    font-weight: bold;
    margin-bottom: 1vw;
    position: relative;
    z-index: 2;
}


@media screen and (max-width: 768px) {
    .business__title {
        font-size: clamp(18px, 5vw, 24px);
    }
}

.business__number {
    display: inline-block;
    font-size: clamp(16px, 7vw, 120px);
}

@media screen and (max-width: 768px) {
    .business__number {
        font-size: clamp(50px, 18vw, 80px);
    }
}

.business__text {
    font-size: clamp(14px, 2vw, 18px);
    line-height: 1.6;
    position: relative;
    z-index: 2;
    width: 50vw;
    max-width: 500px;
}

@media screen and (max-width: 768px) {
    .business__text {
        font-size: clamp(14px, 4vw, 18px);
        line-height: 1.6;
        width: 100%;
    }
}