.msg-flex-container {
    display: flex;
    justify-content: space-between;

    @media screen and (max-width: 767px) {
        flex-direction: column-reverse;
    }
}

.msg-img-txt-container {
    .msg-img-container {
        width: 45.6rem;
        margin-bottom: 2.6rem;
        overflow: hidden;
        border-radius: 1.4rem;

        @media screen and (max-width: 767px) {
            width: 100%;
            margin-bottom: 2rem;
        }

        & img {
            border-radius: 1.4rem;
            transition: transform 0.6s var(--ease-out-expo);
            width: 100%;
            display: block;
        }
    }

    .msg-under-img-txt-container {
        font-family: 'Noto Sans JP';
        font-style: normal;
        line-height: 3.6rem;
        color: #1863C5;
        letter-spacing: 0.08em;
        display: flex;
        justify-content: center;

        .position {
            font-weight: 400;
            font-size: 1.6rem;
            margin-right: 1.8rem;
        }

        .msg-name {
            font-weight: 700;
            font-size: 1.8rem;
        }
    }
}

.msg-txt-container {
    max-width: 90.6rem;

    .msg-main-title {
        font-style: normal;
        font-weight: 700;
        font-size: 3.6rem;
        line-height: 129%;
        letter-spacing: 0.1em;
        color: #242328;
        margin-bottom: 3rem;

        @media screen and (max-width: 767px) {
            font-size: 2.4rem;
            line-height: 3.4rem;
            margin-bottom: 2rem;
        }
    }

    .msg-main-txt {
        font-family: 'Noto Sans JP';
        font-style: normal;
        font-weight: 400;
        font-size: 1.8rem;
        line-height: 3.6rem;
        letter-spacing: 0.08em;
        color: #242328;

        @media screen and (max-width: 767px) {
            font-size: 1.4rem;
            line-height: 2.6rem;
            margin-bottom: 3rem;
        }
    }
}

.about-section {
    margin-top: 7rem;

    .top-txt {
        font-family: 'Noto Sans JP';
        font-style: normal;
        font-weight: 400;
        font-size: 1.6rem;
        line-height: 3.2rem;
        display: flex;
        align-items: center;
        text-align: center;
        letter-spacing: 0.08em;
        color: #242328;
        margin: 0 auto 7.6rem;
        width: 88.7rem;

        @media screen and (max-width: 767px) {
            width: 100%;
            margin: 0 auto 4rem;
            text-align: left;
        }
    }

    .about-imgbk-container {
        border-radius: 2.4rem;
        padding: 7.6rem 23.4rem 7.5rem;
        margin: 0 auto 10rem;
        border: 4px solid #1863C5;
        width: 90rem;

        .title-img {
            font-family: 'Outfit';
            font-style: normal;
            font-weight: 600;
            font-size: 2.8rem;
            line-height: 164%;
            letter-spacing: 0.08em;
            text-align: center;
            margin-bottom: 4.3rem;
            color: #242328;

            &::after {
                position: absolute;
                content: "";
                width: 32.8rem;
                height: 0.2rem;
                background-color: #242328;
                bottom: 27.4rem;
                left: 0;
                right: 0;
                margin: auto;

                @media screen and (max-width: 767px) {
                    width: 28.1rem;
                    bottom: 13rem;
                }
            }

            @media screen and (max-width: 767px) {
                font-size: 2.4rem;
                line-height: 164%;
                margin-bottom: 1.5rem;
            }
        }

        .txt-img {
            font-family: 'Zen Kaku Gothic New';
            font-style: normal;
            font-weight: 700;
            font-size: 3.3rem;
            line-height: 156%;
            text-align: left;
            letter-spacing: 0.1em;
            color: #1863C5;

            @media screen and (max-width: 767px) {
                font-size: 1.8rem;
                line-height: 156%;
            }


        }

        @media screen and (max-width: 767px) {
            width: 100%;
            padding: 3rem 2.7rem 3rem;
            margin: 0 auto 6rem;
        }
    }

    @media screen and (max-width: 767px) {
        margin-top: 8rem;
    }

}

@media screen and (max-width: 767px) {
    .page-common-section-title {
        font-size: 2rem;
        margin-bottom: 2rem;
    }
}