/* ==========================================================================
                            クロースパーツの強みページのスタイル
   ========================================================================== */

.page-features .top-section {
    padding: 5rem 0;
}

.page-features .top-features {
    background-color: var(--bg-color);
    padding-bottom: 10rem;
    overflow: hidden;

    .section-title__lg {
        --font-color: var(--primary-color);

        .en {
            opacity: 0.1;
        }
    }

    .top-features__list {
        margin-top: 5rem;
    }

    .top-features__item {
        display: flex;
        align-items: flex-end;

        &+.top-features__item {
            margin-top: 8rem;
        }
    }

    .top-features__item__image {
        position: relative;
        z-index: 1;
        width: calc(640 / 1440 * 100vw);
        max-width: 720px;
        margin-left: calc(50% - 50vw);

        img {
            width: 100%;
            height: auto;
            display: block;
        }
    }

    .top-features__item__container {
        background-color: rgb(255 255 255 / 0.9);
        padding: 2.5rem;
        padding-top: 4rem;
        position: relative;
        z-index: 2;
        margin-left: -6rem;
        margin-right: 0;
        margin-bottom: -3rem;
        flex: 1;

        .top-features__number {
            font-size: 4.5rem;
            font-weight: 700;
            line-height: 1.2;
            color: var(--primary-color);
            position: absolute;
            top: -3rem;
            left: auto;
            right: 2rem;
            border-bottom: 1px solid var(--primary-color);
        }

        .top-features__title {
            font-size: clamp(1.125rem, -0.113rem + 3.3vw, 2rem);
            font-weight: 600;
            letter-spacing: 0.1em;
            color: var(--primary-color);
        }

        .top-features__text {
            margin-top: 1rem;
            line-height: 2;
            letter-spacing: 0.1em;
        }
    }

    .top-features__item:nth-child(odd) {
        flex-direction: row-reverse;

        .top-features__item__image {
            margin-left: 0;
            margin-right: calc(50% - 50vw);
        }

        .top-features__item__container {
            margin-right: -6rem;
            margin-left: 0;
        }

        .top-features__number {
            left: 2rem;
            right: auto;
        }
    }

    @media screen and (width <=800px) {
        padding-top: 4rem;
        padding-bottom: 5rem;

        .top-features__list {
            margin-top: 3.5rem;
        }

        .top-features__item {
            flex-direction: column;
            align-items: center;

            &+.top-features__item {
                margin-top: 2.5rem;
            }
        }

        .top-features__item__image {
            margin: 0;
            width: 100%;
            max-width: none;
        }

        .top-features__item__container {
            width: calc(334 / 358 * 100%);
            margin-left: auto;
            margin-right: 0;
            margin-bottom: 0;
            margin-top: -1.5rem;
            padding: 2.5rem 1rem;

            .top-features__number {
                left: 1rem;
                right: auto;
                top: -1.5rem;
                font-size: 2.5rem;
            }
        }

        .top-features__item:nth-child(odd) {
            flex-direction: column;

            .top-features__item__image {
                margin: auto;
            }

            .top-features__item__container {
                margin-left: auto;
                margin-right: 0;
            }

            .top-features__number {
                left: 1rem;
                right: auto;
            }
        }
    }
}