h2.title_block-2 {
    background-image: url(/assets/images/corp/about/img-head.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.about-column {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 5rem;
    margin-top: 5rem;
    li {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    @media (max-width: 1024px) {
        grid-template-columns: 1fr;
    }
}

.article-area {
    position: relative;
    background-color: #fff;
    padding: 7rem 0;
    display: flex;
    flex-direction: column;
    gap: 6rem;
    @media (max-width: 1024px) {
        figure {
            width: 70%;
        }
    }

    .desc {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        position: relative;
        padding-top: 6em;
        width: 70%;
        &:before {
            content: "";
            position: absolute;
            top: 3em;
            left: 50%;
            width: 1em;
            height: 1em;
            background-image: url("/assets/images/icon-ttl.svg");
            background-size: contain;
            background-repeat: no-repeat;
        }
        .title {
            font-family: "Noto Serif JP", serif;
            font-size: 1.5rem;
            text-align: center;
        }
        p:not(:has(class)) {
            margin: 1em 0;
            text-align: left;
            word-break: break-all;
        }
        @media (max-width: 1024px) {
            padding-left: 3rem;
            padding-right: 3rem;
            width: 100%;
        }
    }
}
#about01 {
    width: 100%;
    .lead {
        width: 55%;
        margin: 0 auto;
        h3 {
            background-color: #ddf8f2;
            font-family: "Noto Serif JP", serif;
            font-size: 2.5rem;
            text-align: center;
            margin: 0 auto;
            padding: 2rem;
            font-weight: bold;
        }

        p.subtitle {
            font-family: "Noto Serif JP", serif;
            margin-top: 2rem;
            margin-bottom: 1.5rem;
            font-size: 1.5rem;
            line-height: 1.75;
            text-align: center;
        }

        p:not([class]) {
            text-align: center;
            width: 70%;
            margin: 0 auto;
            line-height: 2;
        }
        @media (max-width: 1024px) {
            width: 100%;
            padding-left: 3rem;
            padding-right: 3rem;
            p:not([class]) {
                width: 100%;
                text-align: left;
            }
        }
    }
    .founder-area {
        position: absolute;
        top: 0;
        right: 0;
        min-width: 275px;
        width: 18vw;
        max-width: 450px;
        @media (max-width: 1024px) {
            position: relative;
            width: fit-content;
            min-width: unset;
            max-width: unset;
            margin: 0 auto;
            margin-top: 3rem;

            figure {
                margin: 0 auto;
            }
        }
    }
}

#about02 {
    background-color: #def8f2;
    --padding-x: 12vw;
    --max-padding-x: 215px;
    --padding-y: 4rem;
    @media (max-width: 1024px) {
        --padding-x: 12vw;
        --max-padding-x: 215px;
        --padding-y: 4rem;
    }
    .title-area {
        padding-top: 8rem;
        padding-right: min(var(--padding-x), var(--max-padding-x));
        padding-left: min(var(--padding-x), var(--max-padding-x));
        padding-bottom: var(--padding-y);
        text-align: center;
        h3 {
            background-color: #fff;
            font-family: "Noto Serif JP", serif;
            font-size: min(3vw, 55px);
            padding: 1.25em 0;
        }

        @media (max-width: 1024px) {
            padding-top: 4rem;
            h3 {
                font-size: 2.5rem;
                position: relative;
                z-index: 2;
                padding: 2em 0;
            }
        }
    }
    .subtitle-area {
        font-family: "Noto Serif JP", serif;
        font-size: min(5.5vw, 100px);
        margin-bottom: 1.5rem;
        display: flex;
        justify-content: start;
        align-items: center;
        padding-right: min(var(--padding-x), var(--max-padding-x));
        padding-left: min(var(--padding-x), var(--max-padding-x));
        padding-bottom: calc(var(--padding-y) * 1.5);
        position: relative;
        h4 {
            padding: 0 1.5em;
            text-indent: -0.5em;
        }
        &:before {
            content: "";
            background: url(/assets/images/img-pattern.svg) repeat;
            background-size: contain;
            position: absolute;
            top: calc(-1 * var(--padding-y));
            left: 0;
            width: var(--padding-x);
            max-width: var(--max-padding-x);
            height: calc(100% + var(--padding-y) + 1.5rem);
        }

        @media (max-width: 1024px) {
            justify-content: center;
            padding-bottom: 0;
            h4 {
                padding: 2em 0;
            }
            &:before {
                top: calc(-1 * var(--padding-y) - 5rem);
                width: 50vw;
                max-width: unset;
                height: 10rem;
            }
        }
    }

    .container {
        padding-top: 3rem;
        padding-bottom: 6rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5rem;
        .desc {
            gap: 0.5rem;
            .title {
                text-align: center;
                font-weight: bold;
                margin: 0.5em 0;
            }
        }
    }
}
#about03 {
    h3 {
        background-color: #ddf8f2;
        font-family: "Noto Serif JP", serif;
        line-height: 0.75em;
        font-size: 2.5rem;
        text-align: center;
        margin: 0 auto;
        padding: 5rem;
        font-weight: bold;
        position: relative;
        padding-left: 30rem;
        span {
            line-height: 0.75em;
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            font-size: 20rem;
            font-weight: normal;
            font-family: "Noto Serif Display", serif;
        }
        @media (max-width: 1024px) {
            width: 80%;
            padding-left: calc(25% + 2em);
            padding-right: 1.5em;
            padding-top: 4rem;
            padding-bottom: 4rem;
            margin-top: 4rem;
            span {
                left: calc(50% - 0.3em);
                font-size: 18rem;
            }
        }
    }
    .container {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5rem;
    }
    .subtitle {
        font-family: "Noto Serif JP", serif;
        text-align: center;
        font-size: 1.5rem;
        font-weight: bold;
    }
    .about-column {
        margin: 0;
        counter-reset: count;

        li {
            figure {
                position: relative;
                &:before {
                    content: "strength　|　" counter(count);
                    counter-increment: count;
                    position: absolute;
                    top: 0;
                    left: 0;
                    font-weight: bold;
                    font-family: "Noto Serif JP", serif;
                    color: #000;
                    background-color: #fff;
                    padding: 0.5em 1em;
                }
            }
        }
    }
}
