body .is-layout-flex {
    display: flex;
}

.content {
    padding-bottom: 0 !important;
}

.is-layout-flex {
    gap: 1.5rem;
}

.page_content {
    padding: 0 5.33333vw;
}

.entry-content {
    margin-top: 1em;
    margin-bottom: 3em;
}

.wp-block-columns {
    align-items: normal !important;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap !important;
}

.article h2,
.article h3 {
    margin-top: 5.44444vw;
}

.article h2 {
    color: #ee001e;
    font-size: 7.5vw;
    margin-bottom: 2.70833vw;
}

.no-sidebar .content .main {
    margin: 0;
    width: 100%;
}

.page_mv_inner {
    overflow: hidden;
    position: relative;
    background: #cd001a;
    padding: 0 5.33333vw;
}

.article h2.page_mv_ttl {
    color: #fff;
}

.article h2,
.article h3 {
    margin-top: 5.44444vw;
    font-size: 7.5vw;
    margin-bottom: 2.70833vw;
}

.article h2 {
    background-color: transparent;
}

.article .page_back a {
    display: block;
    position: relative;
    color: rgba(34, 34, 34, 0.502);
    font-weight: bold;
}

.page_back a {
    padding-left: 15.73333vw;
}

.page_back a::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 52px;
    height: 9px;
    background: url(/image/web/arrow_grey.png) no-repeat center/cover;
}

/* 탭 */
.company_anchor_list li.is-active,
.company_anchor_list li.is-active a {
    background: #ee001e;
    color: #fff;
}

.company_anchor_list li {
    background: #dfe4e7;
    text-align: center;
    color: #222;
    font-weight: bold;
}

.article ul li,
.article ol li {
    margin-top: 10px;
}

/* 서비스개요 */
.company_link_list li a {
    display: block;
    transition: 0.3s;
    text-align: center;
    color: #ee001e;
}

/* 사장 인사 */
.has-text-align-right {
    text-align: right;
}

/* 회사개요 */
.article h3.section_ttl,
.article h2.section_ttl {
    color: #ee001e;
    border: none;
    font-size: 7.5vw;
}

.article dl dt {
    font-weight: bold;
}

.outline_detail_list dt,
.outline_history_list dt {
    font-weight: bold;
}

.outline_history_list dt {
    background: #f1f1f1;
    font-weight: normal;
}

/* 지도 */
.outline_access_list {
    display: flex;
    flex-wrap: wrap;
}

.outline_access_link a {
    color: #ee001e;
}

.outline_access_list dt {
    width: 100%;
}

/* 하단 링크  */
.link_area {
    margin: 20.26667vw 5.33333vw 0;
}

.link_list.link_list {
    padding-left: 0;
}

.link_list_item {
    overflow: hidden;
    position: relative;
    margin: 0;
}

.link_list_item::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 23.86667vw;
    height: 100%;
    transform: skewX(-21deg);
    transform-origin: top center;
    background: #ee001e;
}

.link_list_item a {
    display: block;
    position: relative;
    padding-top: 18.13333vw;
    height: 52vw;
    text-align: center;
    color: #fff;
    font-size: 5.86667vw;
}

.link_list_item a::after {
    content: "";
    position: absolute;
    right: 3.86667vw;
    bottom: 4vw;
    width: 13.86667vw;
    height: 2.26667vw;
    background: url(/image/web/arrow_white.png) no-repeat center/contain;
}

.link_list_item a span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    margin-bottom: 1.06667vw;
    font-size: 3.73333vw;
}

.link_list_item a::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: 0.3s;
}

.link_list_item:first-child a::before {
    background: url(/image/web/link_area_bg01.jpg) no-repeat center/cover;
}

.link_list_item:nth-child(2) a::before {
    background: url(/image/web/link_area_bg02.jpg) no-repeat center/cover;
}

.link_list_item:nth-child(3) a::before {
    background: url(/image/web/link_area_bg03.jpg) no-repeat center/cover;
}

.link_list_item + .link_list_item {
    margin-top: 2.66667vw !important;
}

/* 회사개요 */
.article h3.section_ttl,
.article h2.section_ttl {
    margin-bottom: 2.70833vw;
    font-size: 1.97917vw;
}

.article h3 {
    margin-bottom: 2.70833vw;
    border-bottom: 2px solid #ddd;
}

.outline_detail_list,
.outline_history_list {
    display: flex;
    border-top: 4px solid #222;
    flex-wrap: wrap;
}

.outline_detail_list dt,
.outline_history_list dt {
    padding: 1.77083vw 0;
    width: 11.45833vw;
    justify-content: center;
}

.outline_detail_list dt,
.outline_detail_list dd,
.outline_history_list dt,
.outline_history_list dd {
    display: inline-flex;
    border-bottom: 2px solid #dfe4e7;
    font-size: 1.04167vw;
}

.outline_detail_list dd,
.outline_history_list dd {
    padding-left: 3.02083vw;
    width: calc(100% - 11.45833vw);
    align-items: center;
}

.outline_detail_list ul,
.outline_history_list ul {
    padding: 1.71875vw 0;
}

.outline_history_list {
    margin-top: 5.72917vw;
}

/* 반응형 */
@media (min-width: 768px) {
    .wp-block-columns {
        flex-wrap: nowrap !important;
    }

    .article h2 {
        font-size: 1.97917vw;
        margin-bottom: 2.70833vw;
    }

    .article p {
        /* font-size: 1.04167vw; */
        font-size: 16px;
    }

    .page_mv {
        background: linear-gradient(to right, #ee001e, #ee001e 50%, #cd001a 50%, #cd001a 100%);
    }

    .page_mv_inner {
        display: flex;
        margin: 0 auto;
        padding-top: 4.94792vw;
        padding-left: 14.58333vw;
        padding-right: 0;
        height: 18.22917vw;
        align-items: center;
    }

    .page_mv_inner::before {
        content: "";
        position: absolute;
        top: -6.25vw;
        left: 0;
        width: 19.16667vw;
        height: calc(100% + 6.25vw);
        transition: 0.3s;
        transform: skewX(-21deg);
        transform-origin: top center;
        background: #ee001e;
    }

    .article h2.page_mv_ttl {
        font-size: 3.125vw;
    }

    .page_back a {
        padding-left: 3.33333vw;
        font-size: 0.9375vw;
    }

    .page_back a::before {
        width: 2.70833vw;
        height: 0.46875vw;
    }

    .company_anchor {
        margin-top: 2.91667vw;
    }

    /* 탭 */
    .company_anchor_list {
        display: flex;
        border-bottom: 4px solid #ee001e;
    }

    .company_anchor_list li {
        padding: 0.88542vw 0;
        width: 9.375vw;
        cursor: pointer;
        font-size: 1.04167vw;
    }

    .company_anchor_list li {
        background: #dfe4e7;
        text-align: center;
        color: #222;
        font-weight: bold;
    }

    .company_anchor_list li + li {
        margin-left: 0.52083vw;
    }

    /* 서비스개요 */
    .company_link {
        margin-top: 3.22917vw;
    }

    .company_link_list {
        display: flex;
        justify-content: center;
    }

    .company_link_list li {
        overflow: hidden;
        border: 2px solid #ee001e;
        border-radius: 2.08333vw;
        width: 20.83333vw;
        height: 4.16667vw;
    }

    .company_link_list li a {
        padding: 0.9375vw 0;
        font-size: 1.25vw;
    }

    .company_link_list li a:hover {
        background: #ee001e;
        color: #fff;
    }

    /* 사장 인사 */
    .company_section_wrapper {
        margin-top: 2.29167vw;
        padding: 0;
    }

    /* 지도 */
    .outline_access_desc,
    .outline_access_map {
        width: 50%;
    }

    .outline_access_list {
        margin-top: 0.3125vw;
    }

    .outline_access_list dd {
        padding-left: 0.52083vw;
        width: calc(100% - 2.60417vw);
    }

    .outline_access_link a {
        font-size: 0.83333vw;
    }

    .outline_access_list dt {
        width: 2.60417vw;
    }

    /* 하단 링크 */
    .link_area {
        margin: 4.53125vw auto 0;
    }

    .link_list {
        display: flex;
        margin: 0 auto;
        max-width: 75vw;
    }

    .link_list_item {
        width: 3333.33333%;
    }

    .link_list_item::before {
        width: 6.77083vw;
    }

    .link_list_item a {
        overflow: hidden;
        padding-top: 5.57292vw;
        height: 14.58333vw;
        font-size: 1.35417vw;
    }

    .link_list_item a::after {
        right: 2.08333vw;
        bottom: 1.04167vw;
        width: 2.70833vw;
        height: 0.41667vw;
        transition: 0.3s;
    }

    .link_list_item a span {
        margin-bottom: 0.15625vw;
        font-size: 0.9375vw;
    }

    .link_list_item a:hover::before {
        transform: scale(1.05);
    }

    .link_list_item + .link_list_item {
        margin-top: 0 !important;
    }
}

@media (max-width: 767px) {
    .article ul, .article ol {
        padding-left: 0;
    }

    /* 회사개요 */
    .article h3.section_ttl,
    .article h2.section_ttl {
        margin-bottom: 15px;
        font-size: 16px;
    }

    .article h3 {
        margin-bottom: 15px;
    }

    .outline_detail_list dt,
    .outline_history_list dt {
        padding: 10px 0;
        width: 30%;
    }

    .outline_detail_list dt,
    .outline_detail_list dd,
    .outline_history_list dt,
    .outline_history_list dd {
        display: inline-flex;
        border-bottom: 2px solid #dfe4e7;
        font-size: 16px;
    }

    .outline_detail_list dd,
    .outline_history_list dd {
        padding-left: 20px;
        width: 70%;
        align-items: center;
    }

    .outline_history_list dd {
        padding: 20px;
    }

    .outline_detail_list ul,
    .outline_history_list ul {
        padding: 10px 0;
    }

    .outline_history_list {
        margin-top: 10px;
    }
}