@charset "UTF-8";

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd {
    letter-spacing: 0;
}

p {
    white-space: pre-wrap;
}

img {
    width: 100%;
    max-width: max-content;
}

.company h1 {
    color: #102543;
    font-family: 'Noto Serif JP';
    font-size: 36px;
    text-align: center;
    margin: 60px auto 80px;
    position: relative;
    width: 100%;
}

.company h1::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(../images/jirikihongan.webp) no-repeat;
    background-size: cover;
    background-position: center;
    width: 115px;
    height: 100px;
    z-index: -1;
}

.company>p {
    font-family: 'Noto Serif JP';
    font-size: 20px;
    line-height: 1.8;
    text-align: center;
}

/* エディタ */
.company-wrap {
    margin-top: 75px;

    >h2 {
        border-bottom: 1px solid #102543;
        color: #102543;
        font-family: 'Noto Serif JP';
        font-size: 30px;
        padding: 0 0 12px 41px;
        position: relative;

        &::before {
            content: "";
            position: absolute;
            left: 0;
            background: #102543;
            width: 8px;
            height: 100%;
        }
    }

    >h3 {
        color: #102543;
        font-size: 24px;
        line-height: 1.5;
        text-align: center;
        margin-top: 124px;

        span {
            font-size: 20px;
        }
    }

    >p {
        font-family: 'Noto Serif JP';
        font-size: 20px;
        line-height: 1.8;
        margin-top: 36px;
    }

    figure.wp-block-gallery {
        margin-top: 36px;
    }

    .col {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 33px;
        margin-top: 17px;

        figure,
        img {
            width: 100% !important;
            min-width: 0;
        }
    }

    .interview {
        background: #F5F5F5;
        display: flex;
        align-items: center;
        gap: 55px;
        margin: 120px auto 160px;

        img {
            min-width: 0;
        }

        div {
            padding: 30px 33px 41px 0;
        }

        h3 {
            color: #102543;
            font-family: 'Noto Serif JP';
            font-size: 28px;

            span {
                font-size: 16px;
            }
        }

        p {
            font-size: 16px;
            margin-top: 21px;
            line-height: 1.75;
        }

        .name {
            background: #fff;
            display: flex;
            flex-wrap: wrap;
            gap: 0 1em;
            justify-content: center;
            line-height: 2;
            padding: 0 1em;
        }

        a {
            background: #fff;
            border: 1px solid #B40019;
            border-radius: 10px;
            color: #B40019;
            display: block;
            font-size: 18px;
            font-weight: 500;
            line-height: 1.33;
            padding: 20px 39px 20px 25px;
            position: relative;
            margin: 32px auto 0;
            width: max-content;
            text-decoration: none;
            transition: .3s;

            &::after {
                content: "";
                position: absolute;
                top: 50%;
                transform: translatey(-50%);
                right: 8px;
                background: url(../images/btn-arrow_r.svg) no-repeat;
                width: 6px;
                height: 9px;
            }

            &:hover {
                background: #B40019;
                color: #fff;
            }

            &:hover::after {
                background: url(../images/btn-arrow_w.svg) no-repeat;
            }
        }
    }
}

/* tab size */
@media screen and (max-width: 1024px) {
    .company-wrap {
        .interview {
            flex-flow: column;
            gap: 26px;
            margin: 73px auto 115px;

            div {
                padding: 0 28px 43px;
            }
        }
    }
}

/* sp size */
@media screen and (max-width: 767px) {

    .company h1 {
        font-size: 28px;
        margin: 52px auto 43px;

        &::before {
            width: 82px;
            height: 72px;
        }
    }

    .company>p {
        font-size: 18px;
        line-height: 1.77;
    }

    .company-wrap {
        margin-top: 46px;

        >h2 {
            font-size: 20px;
            padding: 0 0 5px 23px;
            margin-top: 46px;

            &::before {
                width: 4px;
            }
        }

        >h3 {
            font-size: 18px;
            line-height: 1.66;
            margin-top: 63px;

            span {
                font-size: 16px;
            }
        }

        >p {
            font-size: 18px;
            margin-top: 32px;
        }

        figure.wp-block-gallery.has-nested-images {
            grid-template-columns: repeat(1, 1fr);
            gap: 24px;
            margin-top: 33px;
        }

        .col {
            grid-template-columns: repeat(1, 1fr);
            gap: 38px;
            margin-top: 26px;
        }

        .interview {
            h3 {
                font-size: 20px;
                text-align: center;

                span {
                    font-size: 12px;
                }
            }

            p {
                margin-top: 18px;
            }

            .name {
                font-size: 14px;
                line-height: 1.71;
                margin-top: 26px;
            }

            a {
                font-size: 16px;
                line-height: 1.5;
                padding: 14px 39px 14px 25px;
            }
        }
    }
}