@media (min-width: 1200px) {
    /* =========================================================
    [SECTION 1] 메인 페이지 - fullpage 기본 구조
    ========================================================= */
    #fullpage,
    #fullpage .section {
        width: 100%;
    }
    #fullpage .section:not(.fp-auto-height) {
        min-height: 100vh;
        overflow: hidden;
    }
    #fullpage .section.fp-auto-height {
        min-height: 0;
        overflow: visible;
    }
    #fullpage .section_wrap {
        height: 100vh;
        background: #000;
    }
    #fullpage .visual_swiper,
    #fullpage .visual_swiper .swiper-wrapper,
    #fullpage .visual_swiper .swiper-slide {
        width: 100%;
        height: 100vh;
    }
    #fullpage .visual_swiper {
        opacity: 1;
        visibility: visible;
    }
    #fullpage .visual_swiper video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    #fullpage .visual_swiper .swiper-slide-active {
        opacity: 1;
        visibility: visible;
    }
    #fullpage .fp-tableCell {
        width: 100%;
        height: 100%;
    }

    /* =========================================================
    [SECTION 2] 메인 페이지 - 포트폴리오 / 뉴스 섹션
    ========================================================= */
    #fullpage .main_portfolio_wrap:not(.fp-auto-height),
    #fullpage .main_news_wrap:not(.fp-auto-height),
    #fullpage .main_portfolio_wrap.fp-auto-height,
    #fullpage .main_news_wrap.fp-auto-height {
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: center;
        overflow: hidden;
    }
    #fullpage .main_portfolio_wrap:not(.fp-auto-height) .fp-tableCell,
    #fullpage .main_news_wrap:not(.fp-auto-height) .fp-tableCell,
    #fullpage .main_portfolio_wrap.fp-auto-height .fp-tableCell,
    #fullpage .main_news_wrap.fp-auto-height .fp-tableCell {
        width: 100%;
        height: auto;
        min-height: 0;
        display: flex;
        align-items: center;
        padding-top: 0;
        overflow: visible;
    }
    #fullpage .main_news_wrap .inner {
        padding-top: 0;
        padding-bottom: 0;
    }
    #fullpage .main_portfolio_wrap .inner {
        padding-top: 0;
        padding-bottom: 0;
    }
    #fullpage .main_portfolio_wrap .inner,
    #fullpage .main_news_wrap .inner {
        width: 100%;
    }

    /*  =========================================================
    [SECTION 3] 메인 페이지 - 문의/푸터 마지막 섹션
    ========================================================= */
    #fullpage .contact_footer_section,
    #fullpage .main_footer_section {
        height: 100vh;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        overflow: hidden;
    }
    #fullpage .contact_footer_section .fp-tableCell,
    #fullpage .main_footer_section .fp-tableCell {
        width: 100%;
        height: auto;
        min-height: 0;
        display: block;
    }
    #fullpage .contact_footer_section .contact_wrap {
        min-height: calc(100vh - 252px);
        height: auto;
        display: flex;
        align-items: center;
    }
    /* =========================================================
    [SECTION 4] 서브 페이지 - 공통 구조
    ========================================================= */
    .sub_fullpage,
    .sub_fullpage .section {
        width: 100%;
    }
    #fullpage .footer,
    .sub_fullpage .footer {
        position: relative;
    }

    /* =========================================================
    [SECTION 5] About Us 페이지
    ========================================================= */
    .about_fullpage .about_visual_section,
    .about_fullpage .about_visual_section .fp-tableCell {
        height: auto;
        min-height: 0;
        display: block;
        overflow: visible;
    }
    .about_fullpage .about_visual_section .sub_visual_wrap {
        height: 480px;
        min-height: 480px;
    }
    .about_fullpage .about_visual_section .sub_visual_wrap .inner {
        height: 100%;
    }
    .about_fullpage .about_intro_section,
    .about_fullpage .about_reason_section,
    .about_fullpage .about_value_section {
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: center;
        overflow: hidden;
    }
    .about_fullpage .about_intro_section .fp-tableCell,
    .about_fullpage .about_reason_section .fp-tableCell,
    .about_fullpage .about_value_section .fp-tableCell {
        width: 100%;
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: center;
        overflow: visible;
    }
    .about_fullpage .about_intro_section .sub_content_wrap,
    .about_fullpage .about_reason_section .sub_content_wrap {
        width: 100%;
        min-height: 100vh;
        display: flex;
        align-items: center;
    }
    .about_fullpage .about_intro_section .sub_content_wrap .inner,
    .about_fullpage .about_reason_section .sub_content_wrap .inner {
        width: 100%;
        padding-top: 40px;
        padding-bottom: 0;
    }
    .about_fullpage .about_reason_section .sub_content_wrap .inner {
        padding-top: 110px;
    }
    .about_fullpage .about_intro_section .about_card_wrap {
        margin-top: 0;
    }
    .about_fullpage .about_intro_section .img_wrap {
        margin-top: 0;
    }
    .about_fullpage .about_intro_section .img_wrap img {
        width: 100%;
        height: min(42vh, 320px);
        max-height: none;
        object-fit: cover;
    }
    .about_fullpage .about_reason_section .about_reason {
        padding-top: 0;
        padding-bottom: 0;
    }
    .about_fullpage .about_value_section .about_value_wrap {
        width: 100%;
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: center;
    }
    .about_fullpage .about_value_section .about_value_wrap .inner {
        width: 100%;
        padding-top: 72px;
        padding-bottom: 72px;
    }
    .about_fullpage .about_value_section .about_value_wrap .value_text {
        margin-bottom: 56px;
    }

    /* =========================================================
    [SECTION 6] 주요 연혁(History) 페이지
    ========================================================= */
    .history_fullpage .history_visual_section,
    .history_fullpage .history_visual_section .fp-tableCell,
    .history_fullpage .history_footer_section,
    .history_fullpage .history_footer_section .fp-tableCell {
        height: auto;
        min-height: 0;
        display: block;
        overflow: visible;
    }
    .history_fullpage .history_visual_section .sub_visual_wrap {
        height: 480px;
        min-height: 480px;
    }
    .history_fullpage .history_visual_section .sub_visual_wrap .inner {
        height: 100%;
    }
    .history_fullpage .history_year_section {
        height: 100vh;
        min-height: 100vh;
        overflow: hidden;
    }
    .history_fullpage .history_year_section .fp-tableCell {
        width: 100%;
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: stretch;
        padding-top: 0;
    }
    .history_fullpage .history_year_section .sub_content_wrap {
        width: 100%;
        height: 100%;
    }
    .history_fullpage .history_year_section .sub_history_inner {
        height: 100%;
        padding-top: 0;
        padding-bottom: 0;
    }
    .history_fullpage .history_year_section .sub_history_wrap {
        display: flex;
        align-items: center;
        height: 100%;
        max-width: 1160px;
        padding: 80px 0;
        margin: 0 auto;
    }
    .history_fullpage .history_year_section .history_timeline {
        position: absolute;
        top: 0;
        bottom: 0;
    }
    .history_fullpage .history_year_section[data-anchor="anchor2"] .history_timeline {
        top: 120px;
    }
    .history_fullpage .history_year_section .year_group + .year_group {
        margin-top: 80px;
    }
    .history_fullpage .history_year_section .year_group {
        width: 100%;
        position: relative;
    }
    .history_fullpage .history_year_section .year_group::before {
        top: 36px;
    }
    .history_fullpage .history_year_section .year_visual,
    .history_fullpage .history_year_section .year_history {
        width: calc((100% - 160px) / 2);
    }
    .history_fullpage .history_year_section.active .year_group::after {
        animation: history-dot-ring 1.5s ease-out infinite;
    }
    @keyframes history-dot-ring {
        0% {
            transform: scale(1);
            opacity: 0.6;
        }
        100% {
            transform: scale(3.2);
            opacity: 0;
        }
    }
    .history_fullpage .history_year_section .year_group.reverse .year_visual img {
        margin-left: auto;
    }
    .history_fullpage .history_year_section .year_history dd {
        white-space: nowrap;
    }
    .history_fullpage .history_year_section[data-anchor="anchor5"] .history_timeline {
        bottom: 120px;
    }

    /* =========================================================
    [SECTION 7] 루트랩 사업 개요 페이지
    ========================================================= */
    .business_overview_fullpage .business_visual_section,
    .business_overview_fullpage .business_visual_section .fp-tableCell {
        height: auto;
        min-height: 0;
        display: block;
        overflow: visible;
    }
    .business_overview_fullpage .business_visual_section .sub_visual_wrap {
        height: 480px;
        min-height: 480px;
    }
    .business_overview_fullpage .business_visual_section .sub_visual_wrap .inner {
        height: 100%;
    }
    .business_overview_fullpage .business_intro_section,
    .business_overview_fullpage .business_strategy_section,
    .business_overview_fullpage .business_service_section {
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: center;
        overflow: hidden;
    }
    .business_overview_fullpage .business_intro_section .fp-tableCell,
    .business_overview_fullpage .business_strategy_section .fp-tableCell,
    .business_overview_fullpage .business_service_section .fp-tableCell {
        width: 100%;
        height: 100vh;
        min-height: 100vh;
        display: flex;
        align-items: center;
        padding-top: 0;
    }
    .business_overview_fullpage .business_intro_section .sub_content_wrap,
    .business_overview_fullpage .business_strategy_section .sub_content_wrap,
    .business_overview_fullpage .business_service_section .sub_content_wrap {
        width: 100%;
        min-height: 100vh;
        display: flex;
        align-items: center;
    }
    .business_overview_fullpage .business_intro_section .sub_content_wrap > .inner,
    .business_overview_fullpage .business_strategy_section .sub_content_wrap > .inner,
    .business_overview_fullpage .business_service_section .sub_content_wrap > .inner {
        width: 100%;
        padding-top: 40px;
        padding-bottom: 0;
    }
    .business_overview_fullpage .business_strategy_section .sub_content_wrap > .inner,
    .business_overview_fullpage .business_service_section .sub_content_wrap > .inner {
        padding-top: 40px;
    }
    .business_overview_fullpage .business_intro_section .sub_business_wrap > .title {
        margin-bottom: 40px;
    }
    .business_overview_fullpage .business_intro_section .business_content_wrap {
        gap: 180px;
        background-size: 320px auto;
    }
    .business_overview_fullpage .business_intro_section .business_content_wrap .item_wrap .item {
        width: 438px;
        height: 226px;
        padding: 32px 30px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02,
    .business_overview_fullpage .business_service_section .business_content_wrap_03 {
        margin-top: 0;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 > .title {
        margin-bottom: 32px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 > .desc {
        margin-bottom: 56px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 .item_wrap .item .title {
        padding: 22px 24px;
        font-size: 24px;
        line-height: 24px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 .item_wrap .item .content {
        padding: 24px 24px 30px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 .item_wrap .item .content .sub_title {
        font-size: 20px;
        line-height: 20px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 .item_wrap .item .content li {
        font-size: 15px;
        line-height: 24px;
    }
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 .item_wrap .item .content ul + .sub_title,
    .business_overview_fullpage .business_strategy_section .business_content_wrap_02 .item_wrap .item_dark .content ul + .sub_title {
        margin-top: 28px;
    }
    .business_overview_fullpage .business_service_section .business_content_wrap_03 > .title {
        margin-bottom: 56px;
    }
    .business_overview_fullpage .business_service_section .business_content_wrap_03 .item_wrap .circle_wrap .circle {
        width: 200px;
        height: 200px;
    }
    .business_overview_fullpage .business_service_section .business_content_wrap_03 .item_wrap > img {
        max-width: 484px;
    }
    .business_overview_fullpage .business_service_section .business_content_wrap_03 .list_wrap {
        margin-top: 12px;
    }
    .business_overview_fullpage .business_service_section .business_content_wrap_03 .list_wrap .list_item {
        min-height: 278px;
        padding: 34px 16px;
    }
    .business_overview_fullpage .business_footer_section,
    .business_overview_fullpage .business_footer_section .fp-tableCell {
        height: 100vh;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        overflow: visible;
        background: #fff;
    }
    .business_overview_fullpage .business_footer_section {
        padding-top: 120px;
    }
    .business_overview_fullpage .business_footer_section .footer {
        width: 100%;
    }
    .business_overview_fullpage .business_service_section.fp-auto-height,
    .business_overview_fullpage .business_service_section.fp-auto-height .fp-tableCell {
        height: auto;
        min-height: 100vh;
        overflow: visible;
        display: flex;
        align-items: center;
    }
}

/* =========================================================
[SECTION 8] 1199px 이하 - 반응형 / 일반 스크롤 전환
========================================================= */
@media (max-width: 1199px) {
    .sub_fullpage,
    .sub_fullpage .section,
    .sub_fullpage .sub_visual_wrap.section {
        min-height: auto;
        height: auto;
        display: block;
        overflow: visible;
    }
    .sub_fullpage {
        max-width: 100%;
        overflow-x: hidden;
    }
    .about_fullpage .about_visual_section .sub_visual_wrap,
    .business_overview_fullpage .business_visual_section .sub_visual_wrap {
        height: 320px;
        min-height: 320px;
    }
    .about_fullpage .about_intro_section,
    .about_fullpage .about_value_section,
    .about_fullpage .about_intro_section .fp-tableCell,
    .about_fullpage .about_value_section .fp-tableCell,
    .about_fullpage .about_value_section .about_value_wrap,
    .business_overview_fullpage .business_intro_section,
    .business_overview_fullpage .business_strategy_section,
    .business_overview_fullpage .business_service_section,
    .business_overview_fullpage .business_intro_section .fp-tableCell,
    .business_overview_fullpage .business_strategy_section .fp-tableCell,
    .business_overview_fullpage .business_service_section .fp-tableCell,
    .business_overview_fullpage .business_intro_section .sub_content_wrap,
    .business_overview_fullpage .business_strategy_section .sub_content_wrap,
    .business_overview_fullpage .business_service_section .sub_content_wrap {
        height: auto;
        min-height: auto;
        display: block;
        overflow: visible;
    }
    .business_overview_fullpage .business_intro_section .sub_content_wrap > .inner,
    .business_overview_fullpage .business_strategy_section .sub_content_wrap > .inner,
    .business_overview_fullpage .business_service_section .sub_content_wrap > .inner {
        padding-bottom: 48px;
    }
    .business_overview_fullpage .business_intro_section .sub_content_wrap > .inner {
        padding-bottom: 0;
    }
    .about_fullpage .about_intro_section .sub_content_wrap > .inner {
        padding-bottom: 100px;
    }
    .business_overview_fullpage .business_strategy_section .sub_content_wrap > .inner,
    .business_overview_fullpage .business_service_section .sub_content_wrap > .inner {
        padding-top: 0;
    }
    .about_fullpage .about_value_section .about_value_wrap .inner {
        padding-left: 20px;
        padding-right: 20px;
    }
}
