.businnes-top-container {
    background: url(../../img/business/business-top-bk.svg) no-repeat #F1F1F1;
    background-size: 100%;
    width: 100%;
    height: 200rem;
    padding-top: 35rem;
    margin-top: 0rem;
    padding-bottom: 30rem;

    @media screen and (max-width: 767px) {
        background: url(../../img/business/business-top-bk-sp.svg) no-repeat #F1F1F1;
        background-size: 100%;
        height: 83.2rem;
        padding-top: 7.5rem;
        padding-bottom: 3rem;

        &::after {
            content: "";
            position: absolute;
            background: url(../../img/recruit/recruit-img01.png) no-repeat;
            width: 28.4rem;
            height: 23.4rem;
            top: 77rem;
            right: 3rem;
            background-size: 100%;
        }
    }
}

.right-white-box {
    width: 73.6rem;
    padding: 11.2rem 1rem 11.2rem 8rem;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 4rem;

    .red-title {
        font-style: normal;
        font-weight: 700;
        font-size: 4.8rem;
        line-height: 160%;
        letter-spacing: 0.0991em;
        color: #D62328;
        padding-bottom: 8rem;
    }

    & p {
        font-style: normal;
        font-weight: 700;
        font-size: 2rem;
        line-height: 250%;
        letter-spacing: 0.1em;
        color: #000000;
    }
}

@media screen and (max-width: 767px) {
    .right-white-box {
        width: 96.9%;
        margin: 0 auto;
        padding: 4rem 2rem;
        border-radius: 1.8rem;

        .red-title {
            font-size: 2rem;
            line-height: 160%;
            padding-bottom: 3.5rem;
        }

        & p {
            font-size: 1.4rem;
            line-height: 210%;
        }
    }
}

.image-business-top-container {
    position: sticky;
    top: 17rem;

    &::after {
        content: "";
        position: absolute;
        background: url(../../img/recruit/recruit-img01.png) no-repeat;
        width: 67.5rem;
        height: 55.8rem;
        top: 7rem;
        right: 0rem;
        background-size: 100%;

        @media screen and (max-width: 767px) {
            /* width: 28.4rem;
            height: 23.4rem;
            top: 42rem;
            right: 3rem; */
            display: none;
        }
    }

    @media screen and (max-width: 767px) {
        /* position: relative; */
        top: 8rem;
    }
}

.tsuyomi-container {
    padding-top: 16rem;

    .three-box-tsuyomi {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-top: 8rem;

        .box-tsuyomi {
            padding: 5.6rem 4rem 4rem;
            background-color: #FFFFFF;
            max-width: 44.8rem;
            border-radius: 0.8rem;

            .box-tsuyomi-title {
                font-style: normal;
                font-weight: 700;
                font-size: 2.4rem;
                /* line-height: 200%; */
                text-align: center;
                letter-spacing: 0.09em;
                color: #000000;
                padding-bottom: 4rem;
            }

            .box-tsuyomi-img {
                width: 16rem;
                padding-bottom: 4rem;
                margin: 0 auto;
            }

            .box-tsuyomi-text {
                font-style: normal;
                font-weight: 500;
                font-size: 1.6rem;
                line-height: 160%;
                letter-spacing: 0.08em;
                color: #000000;
            }
        }
    }
}

.solution-container {
    padding: 16rem 0;

    .title-flex-cotnainer-btn {
        display: flex;
        justify-content: space-between;

        @media screen and (max-width: 767px) {
            flex-direction: column;
            margin-bottom: 3rem;
        }
    }

    .solution-main-top-txt {
        font-style: normal;
        font-weight: 500;
        font-size: 1.8rem;
        line-height: 180%;
        letter-spacing: 0.08em;
        color: #000000;
        padding: 4rem 0 8rem;
    }

    .solution-flex-box-container {
        display: flex;
        justify-content: space-between;

        .solution-box {
            display: flex;
            flex-direction: column;
            align-items: center;
            padding: 4rem 0px 0px;

            width: 69.6rem;
            background: #FFFFFF;
            box-shadow: 0px 0.2rem 0.4rem rgba(0, 0, 0, 0.15);
            border-radius: 0.8rem;
            transition: all 0.25s ease;

            .box-flex-title {
                display: flex;
                justify-content: space-between;
                align-items: center;
                max-width: 61.6rem;
                width: 100%;
                padding-bottom: 2.4rem;

                .text {
                    font-style: normal;
                    font-weight: 700;
                    font-size: 2.4rem;
                    /* line-height: 150%; */
                    letter-spacing: 0.09em;
                    color: #D62328;
                }

                .img-container {
                    width: 4.4rem;
                    transition: all 0.25s ease;
                }
            }

            .box-text {
                max-width: 61.6rem;
                font-style: normal;
                font-weight: 500;
                font-size: 1.6rem;
                line-height: 160%;
                letter-spacing: 0.08em;
                color: #000000;
                margin: 0 auto 4rem;
            }

            .solution-box-img {
                width: 100%;
            }

            &:hover {
                .img-container {
                    transform: translateX(0.6rem);
                }
            }
        }
    }
}

.goumu-container {
    padding: 16rem 0;
    background-color: #fff;

    .gomu-main-top-txt {
        font-style: normal;
        font-weight: 500;
        font-size: 1.8rem;
        line-height: 180%;
        letter-spacing: 0.08em;
        color: #000000;
        padding: 4rem 0 8rem;
    }

    .history-swiper-container {
        position: relative;
    }

    .history-swiper-container::before {
        content: "";
        position: absolute;
        top: 2.2rem;
        left: 0;
        width: 100%;
        border-top: 2px solid #7D7D7D;
        z-index: 0;
    }

    .history-slide {
        position: relative;
        padding-top: 6.0rem;
        height: auto;
        margin-right: 6.4rem;
        width: 41.6rem !important;
    }

    .history-timeline-dot {
        position: absolute;
        top: 1.5rem;
        left: 2.0rem;
        width: 1.4rem;
        height: 1.4rem;
        background-color: #D62328;
        border-radius: 50%;
        z-index: 2;
    }

    .history-timeline-dot::after {
        content: "";
        position: absolute;
        top: 1.4rem;
        left: 0.6rem;
        width: 0;
        height: 3.1rem;
        border-right: 0.2rem dotted #999999;
    }

    .history-box {
        background-color: #F4F4F4;
        border-radius: 0.8rem;
        padding: 3.2rem 3.2rem;
        height: 100%;
        display: flex;
        flex-direction: column;
    }

    .history-head {
        display: flex;
        align-items: center;
        gap: 0;
        margin-bottom: 2.0rem;
        justify-content: space-between;
    }

    .history-year {
        font-weight: 700;
        font-size: 3.2rem;
        color: #D62328;
        line-height: 1;
        font-family: 'Jost';
    }

    .history-badge {
        background-color: #000;
        color: #fff;
        padding: 1.2rem 2.4rem;
        border-radius: 2.0rem;
        font-size: 1.6rem;
        font-weight: 700;
    }

    .history-desc {
        font-size: 1.6rem;
        line-height: 160%;
        color: #000;
        margin-bottom: 2.4rem;
        font-weight: 600;
    }

    .history-topics {
        margin-bottom: 2.0rem;
        flex-grow: 1;
    }

    .topics-title {
        color: #D62328;
        font-weight: 500;
        font-size: 1.8rem;
        margin-bottom: 1.6rem;
        font-family: "jost";
        letter-spacing: 0.06em;
    }

    .topics-list {
        list-style-type: none;
        padding-left: 0;
        margin: 0;
    }

    .topics-list li {
        font-size: 1.6rem;
        line-height: 150%;
        margin-bottom: 0.5rem;
        font-weight: 500;
        color: #000;
        position: relative;
        padding-left: 1.5rem;
        letter-spacing: 0.08em;
    }

    .topics-list li::before {
        content: "・";
        position: absolute;
        left: 0;
        top: 0;
    }

    .history-img {
        width: 100%;
        margin-top: auto;
    }

    .history-img img {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 0.4rem;
    }

    .history-swiper-nav-container {
        position: relative;
        display: flex;
        align-items: center;
        margin-top: 4.0rem;
        padding-bottom: 2.0rem;
        gap: 1.0rem;
    }

    .history-swiper-button-prev,
    .history-swiper-button-next {
        position: relative;
        top: auto;
        width: 4.0rem;
        height: 4.0rem;
        background-color: #D62328;
        border-radius: 50%;
        margin: 0;
        left: auto;
        right: auto;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .history-swiper-button-prev::after,
    .history-swiper-button-next::after {
        font-size: 1.6rem;
        color: #fff;
    }

    .history-swiper-scrollbar {
        position: absolute;
        bottom: 0rem;
        left: 0;
        width: 100%;
        height: 0.4rem;
        background: transparent;
        border-top: 3px solid #F1F1F1;

        @media screen and (max-width: 767px) {
            width: 95%;
        }
    }

    .history-swiper-scrollbar .swiper-scrollbar-drag {
        background: url(../../img/business/swiper-scrollbar-drag.png) no-repeat;
        width: 8.4rem !important;
        height: 3.3rem;
        top: -1.7rem;
        background-size: 100%;
        cursor: grab;

        &:active {
            cursor: grabbing;
        }
    }

    .history-swiper-container .swiper-wrapper {
        margin-left: 24rem;
    }
}


.data-container {
    padding: 16rem 0;
    background-color: transparent;

    .data-main-top-txt {
        font-style: normal;
        font-weight: 500;
        font-size: 1.8rem;
        line-height: 180%;
        letter-spacing: 0.08em;
        color: #000000;
        padding: 4rem 0 8rem;
    }

    .data-flex-container {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 2.4rem;

        .data-box-img-container {
            width: 46.4rem;
        }
    }
}

.sustainability-container {
    padding: 0 0 16rem;

    .sus-container {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        padding: 7.2rem;
        background: #FFFFFF;
        border-radius: 1.6rem;

        .sus-text {
            max-width: 76.1rem;
            font-style: normal;
            font-weight: 500;
            font-size: 1.8rem;
            line-height: 180%;
            letter-spacing: 0.08em;
            color: #000000;
            padding: 4rem 0 4.8rem;
        }

        .sus-img-container {
            width: 48rem;
        }
    }
}


@media screen and (max-width: 767px) {
    .tsuyomi-container {
        padding-top: 1rem;

        .three-box-tsuyomi {
            margin-top: 3.2rem;
            gap: 1.6rem;

            .box-tsuyomi {
                padding: 3rem 2.4rem;

                .box-tsuyomi-title {
                    font-size: 1.6rem;
                    padding-bottom: 2rem;
                }

                .box-tsuyomi-img {
                    width: 10rem;
                    padding-bottom: 2rem;
                }

                .box-tsuyomi-text {
                    font-size: 1.4rem;
                    line-height: 140%;
                }
            }
        }
    }

    .solution-container {
        padding: 6.4rem 0;

        .solution-main-top-txt {
            font-size: 1.4rem;
            line-height: 140%;
            padding: 4rem 0 2rem;
        }

        .solution-flex-box-container {
            flex-direction: column;
            gap: 2.4rem;

            .solution-box {
                width: 100%;
                padding: 2rem 0 0;
                border-radius: 0.6rem;

                .box-flex-title {
                    padding-bottom: 1.6rem;
                    max-width: 29.6rem;
                    margin: 0 auto;

                    .text {
                        font-size: 1.6rem;
                    }

                    .img-container {
                        width: 2.1rem;
                    }
                }

                .box-text {
                    font-size: 1.3rem;
                    line-height: 160%;
                    margin: 0 auto 2rem;
                    max-width: 29.6rem;
                }
            }
        }
    }

    .goumu-container {
        padding: 6.4rem 0;

        .gomu-main-top-txt {
            padding: 4rem 0;
            font-size: 1.4rem;
            line-height: 150%;
        }

        .history-swiper-container .swiper-wrapper {
            margin-left: 2rem;
        }

        .history-swiper-container {
            margin-right: -1rem;
        }

        .history-slide {
            width: 30rem !important;
            margin-right: 1.6rem;
            padding-top: 4rem;
        }

        .history-box {
            padding: 2rem;
            max-width: 30rem;
        }

        .history-year {
            font-size: 2rem;
        }

        .history-badge {
            padding: 0.8rem 1.6rem;
            font-size: 1.2rem;
        }

        .history-desc {
            font-size: 1.4rem;
            line-height: 150%;
        }

        .topics-title {
            font-size: 1.6rem;
            margin-bottom: 0.8rem;
        }

        .topics-list li {
            font-size: 1.4rem;
        }

        .history-timeline-dot::after {
            height: 1.1rem;
        }

        .history-swiper-scrollbar .swiper-scrollbar-drag {
            width: 5.1rem !important;
            height: 2rem;
            top: -1.3rem;
        }

        .history-swiper-nav-container {
            margin-top: 2.4rem;
            gap: 0;
        }

    }

    .data-container {
        padding: 6.4rem 0;

        .data-main-top-txt {
            font-size: 1.4rem;
            line-height: 160%;
            padding: 4rem 0 3.2rem;
        }

        .data-flex-container {
            gap: 0.8rem;
            flex-direction: column;

            .data-box-img-container {
                width: 100%;
            }
        }
    }

    .sustainability-container {
        padding: 0 0 6.4rem;

        .sus-container {
            flex-direction: column;
            justify-content: space-between;
            align-items: flex-start;
            padding: 3.2rem 2rem;
            background: #FFFFFF;
            border-radius: 0;

            .sus-text {
                font-size: 1.4rem;
                line-height: 160%;
                padding: 2.4rem 0;
            }

            .sus-img-container {
                width: 100%;
                margin-top: 2.4rem;
            }

        }
    }
}