@charset "UTF-8";
/*
 * セクション外の余白やページ全体のベースコンテナ設定
 *
 * theme.json を補完する、コンテンツの最大幅や中央揃えのセーフティネット的な共通スタイルです。
 *
 * @package crmt-block-base
 * Last modified: 2026-04-03_15-11-39
 *
 * ブレイクポイント規約
 * PC-small : @media (width <= 1200px) { ... }
 * Tablet : @media (width <= 768px) { ... }
 * Mobile : @media (width <= 540px) { ... }
*/

#khd-b2b {
    /* ===================================================
    strength
    =================================================== */

    .sec-strength {
        padding-block: clamp(4.571rem, 7.2vw + 2rem, 7.143rem);
        .--innr {
            width: 100%;
            display: flex;
            align-items: flex-start;
            justify-content: flex-end;
            flex-direction: row-reverse;
            gap: clamp(2.857rem, 8vw, 5.714rem);

            @media (width <=768px) {
                flex-direction: column;
            }
        }
        .--content {
            display: flex;
            align-items: flex-start;
            justify-content: flex-start;
            flex-direction: column;
            gap: 40px;
            @media (width <=768px) {
                align-items: center;
                justify-content: center;
            }

            .h2a {
                @media (width <=768px) {
                    text-align: center;
                }
            }
        }
        figure {
            max-width: clamp(20rem, 39vw + 6.071rem, 33.929rem);
            @media (width <=768px) {
                max-width: none;
            }
        }
    }

    /* ===================================================
    concept
    =================================================== */

    .sec-concept {
        gap: clamp(2.857rem, 8vw, 5.714rem) 0;
        background-color: var(--wp--preset--color--background-accent);

        .h2a {
            text-align: center;
        }
        .--innr1 {
            width: 100%;
            display: flex;
            align-items: flex-start;
            justify-content: flex-start;
            gap: clamp(2.857rem, 8vw, 5.714rem);

            @media (width <=768px) {
                flex-direction: column;
            }

            .--content {
                display: flex;
                align-items: flex-start;
                justify-content: flex-start;
                flex-direction: column;
                gap: 0px;
                @media (width <=768px) {
                    align-items: center;
                    justify-content: center;
                }
            }

            figure {
                max-width: clamp(20rem, 78.704vw - 23.175rem, 44.286rem);
                @media (width <=768px) {
                    max-width: none;
                }
            }
        }
        .--innr2 {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: clamp(1.143rem, 6.364vw - 1.312rem, 4.143rem);

            @media (width <=768px) {
                flex-direction: column;
            }
        }
    }

    /* ===================================================
    point
    =================================================== */

    .sec-point {
        gap: clamp(2.857rem, 8vw, 5.714rem) 0;

        .sec-hdr {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            gap: clamp(2.143rem, 1.2vw + 1.714rem, 2.571rem);

        }

        .--innr1 {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex-direction: row-reverse;
            gap: clamp(1.143rem, 4.8vw - 0.571rem, 2.857rem);

            &:nth-last-child(even) {
                flex-direction: row;
            }

            @media (width <=768px) {
                flex-direction: column-reverse !important;
            }

            .--content {
                display: flex;
                align-items: flex-start;
                justify-content: flex-start;
                flex-direction: column;
                gap: 20px;
                @media (width <=768px) {
                    align-items: flex-start;
                    justify-content: center;
                }
                @media (width <=768px) {
                    width: 100%;
                }
            }

            figure {
                max-width: clamp(21.429rem, 83.2vw - 8.286rem, 51.143rem);
                @media (width <=768px) {
                    max-width: none;
                }
            }
        }
    }

    /* ===================================================
    solution
    =================================================== */

    .sec-solution {
        gap: clamp(2.857rem, 8vw, 5.714rem) 0;

        .sec-hdr {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            gap: clamp(2.143rem, 1.2vw + 1.714rem, 2.571rem);
        }

        .--innr1 {
            width: 100%;
            display: flex;
            align-items: stretch;
            justify-content: center;
            flex-wrap: wrap;
            gap: clamp(1.714rem, 3.2vw + 0.571rem, 2.857rem) 1.714rem;

            @media (width <=768px) {
                flex-direction: column;
                align-items: center;
                justify-content: center;
            }

            .card-sol-1 {
                width: 384px;
                @media (width <=540px) {
                    width: 100%;
                }
            }
        }
    }

    /* ===================================================
    faq
    =================================================== */

    .sec-faq {
        gap: clamp(2.857rem, 8vw, 5.714rem) 0;

        .sec-hdr {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            gap: clamp(2.143rem, 1.2vw + 1.714rem, 2.571rem);
        }

        .--innr1 {
            width: 100%;
        }
    }

    /* ===================================================
    news
    =================================================== */

    .sec-news {
        gap: clamp(2.857rem, 8vw, 5.714rem) 0;
        background-color: var(--wp--preset--color--background-accent);

        .sec-hdr {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: center;
            flex-shrink: 0;
            text-align: left;
            gap: clamp(2.143rem, 1.2vw + 1.714rem, 2.571rem);

            .h2b {
                text-align: left;
                align-items: flex-start;
                @media (width <=768px) {
                    text-align: center;
                    align-items: center;
                }
            }
        }

        .--innr1 {
            display: flex;
            align-items: flex-start;
            justify-content: space-around;
            gap: 8px;
            width: 100%;

            @media (width <=768px) {
                flex-direction: column;
                align-items: center;
                justify-content: center;
                gap: clamp(2.857rem, 8vw, 5.714rem) 0;
            }
        }
        .--innr2 {
            width: 100%;
            max-width: 920px;
        }
    }

    /* ===================================================
    下部CTA上のメッセージ
    =================================================== */

    .sec-cta-message {
        padding: 24px 0;
        background-color: var(--wp--preset--color--background-accent);
        p {
            margin: 0;
            text-align: center;
            font-weight: 600;
        }
    }
}
