#container{max-width:100%;}
.sub_content p{word-break: keep-all;}

/* About Page 공통 스타일 */
.sub_content { line-height: 1.7; color: #333; font-family: 'Pretendard', sans-serif; word-break: keep-all; }
.sub_content .inner { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.pc_only { display: block; }

/* 섹션 공통 */
.info_section { padding:60px 0;overflow:hidden;}
.grey_bg { background: #f9f9f9; }
.sec_label { font-size: 14px; font-weight: 700; color: #999; margin-bottom: 10px; }
.sec_title { font-size: 40px; font-weight: 700; margin-bottom: 60px; color: #000; position: relative; padding-bottom: 20px; }
.sec_title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 40px; height: 4px; background: #28427a; }

/* 본문 레이아웃 */
/* .content_box { max-width: 900px; } */
.main_statement { margin-bottom: 40px; }
.main_statement_txt{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap: 40px;padding: 40px 16px;border-top: 1px solid #ddd;border-bottom: 1px solid #ddd;}
.main_statement_txt img{width:50%;min-width:200px;}
.main_statement h4 { font-size: 18px; color: #28427a; margin-bottom: 15px; font-weight: 600; }
.main_statement p { font-size: clamp(22px, 2.5vw, 32px); font-weight: 700; color: #111; line-height: 1.4; }
.detail_text p { font-size: 18px; color: #555; margin-bottom: 25px; }
@media (max-width: 767px) {
    .main_statement_txt{align-items:flex-start;}
    .business_page .main_statement_txt img{width:100%;}
}


/* 요약 카드 */
.summary_card { background: #eee; padding: 40px; margin-top: 50px; border-radius:50px 12px; }
.summary_card h5 { font-size: clamp(14px, 1.4vw, 20px); text-transform: uppercase; margin-bottom: 15px; color: #28427a; }
.summary_card p { font-size: 17px; font-weight: 500; color: #333; }
.summary_card.black { background: #28427a; color: #fff; }
.summary_card.black h5 { color: #fff; }
.summary_card.black p { color: #fff; opacity: 0.9; }

/* 03. 철학 테이블 스타일 */
.p_row.main_p { padding: 25px 0; font-size: 20px; font-weight: 700; color: #000; }
.p_table_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #eee; border: 1px solid #eee; }
.p_item { background: #f9fafc; padding: 40px; }
.p_label { display: block; font-size: 13px; font-weight: 800; color: #036bec; text-transform: uppercase; margin: 15px 0; }
.p_item p { font-size: 17px; font-weight: 600; color: #222; }
.p_item img{width:60px;}

/* 반응형 */
@media (max-width: 980px) {
    .info_section { padding: 80px 0; }
    .pc_only { display: none; }
    .sec_title { font-size: 32px; }
    .connection_structure { flex-direction: column; text-align: left; align-items: center; }
    .struct_arrow { transform: rotate(90deg); margin-left: 4px; }
    .p_table_grid { grid-template-columns: 1fr; }
    .p_item { padding: 30px; }
}


@media (max-width: 767px) {
  .main_statement_txt{flex-direction:column;}
}





/* ============================================================ */
/* 인사말 섹션 전용 */
#intro{padding-top:0;}

#overview .main_statement_txt{justify-content:flex-start;}

/* ============================================================ */


/* Business Page 공통 */
.business_page .main_statement p { color: #28427a; }

/* 01. 비즈니스 개요 다이어그램 */
.business_top{display:flex;flex-flow:row nowrap;align-items: center;gap:40px;}

@keyframes rotateInfinite {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* 02. 비즈니스 영역 그리드 */
.biz_grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-top: 50px; }
.biz_grid_0202{grid-template-columns: repeat(2, 1fr);}
.biz_card { background: #fff; border: 1px solid #eee; padding: 30px 0 0; transition: all 0.4s ease; display: flex; flex-direction: column; }
.biz_card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.05); border-color: #28427a; }

/* 카드 헤더 */
.card_header { display: flex; align-items: center; gap: 15px; margin-bottom: 30px; border-bottom: 1px solid #f0f0f0; padding:0 20px 20px; }
.biz_num { font-size: 20px; font-weight: 800; color: #28427a; opacity: 0.3; }
.card_header h4 { font-size: 20px; font-weight: 700; color: #111; }

/* 카드 바디 */
.biz_card .point_txt { font-size: 19px; font-weight: 700; color: #000; line-height: 1.5; margin-bottom: 20px;padding: 0 20px; word-break: keep-all; }
.biz_card .desc_txt { margin-bottom: 15px; padding:0 20px;font-size: 16px; color: #666; line-height: 1.6; }
.biz_card .bottom_slogan { margin-top: auto; padding-top: 25px; font-size: 15px; font-weight: 600; color: #28427a; border-top: 1px dashed #ddd; }
.biz_card .biz_img { }
.biz_card .biz_img img{ width:100%; }

/* 강조 카드 (06. Offline) */
.biz_card.highlight { background: #28427a; border-color: #28427a; }
.biz_card.highlight.highlight2 { background: #58616d; border-color: #58616d; }
.biz_card.biz_card2{background:#28427a url(/img/0201_area_bg_01.jpg) no-repeat center/cover;}
.biz_card.highlight .card_header h4,
.biz_card.highlight .biz_num,
.biz_card.highlight .point_txt,
.biz_card.highlight .desc_txt,
.biz_card.highlight .bottom_slogan { color: #fff; }
.biz_card.highlight .biz_num { opacity: 0.5; }
.biz_card.highlight .card_header { border-bottom-color: rgba(255,255,255,0.1); }
.biz_card.highlight .bottom_slogan { border-top-color: rgba(255,255,255,0.2); }

/* 반응형 */
@media (max-width: 1024px) {
    .biz_grid { grid-template-columns: repeat(2, 1fr); }
    .business_top{flex-direction:column;align-items: flex-start;gap:0;}
}

@media (max-width: 768px) {
    .biz_grid { grid-template-columns: repeat(1, 1fr); }
    .card_header h4 { font-size: 20px; }
    .biz_card .point_txt { font-size: 17px; }
}
  
  
@media (max-width: 460px) {

}


/* ============================================================ */


/* OUR SPACE 페이지 전용 */
.product_page .main_statement p { color: #111; }


/* 역할 리스트 스타일 */
.role_list { margin: 50px 0; }
.role_item { 
    display: flex; 
    align-items: flex-start; 
    gap: 20px; 
    padding: 12px 0; 
    border-bottom: 1px solid #ddd; 
}
.role_num { 
    font-size: 18px; 
    font-weight: 800; 
    color: #28427a; 
    font-family: 'Montserrat', sans-serif;
    margin-top: 4px;
}
.role_item p { font-size: 19px; font-weight: 600; color: #333; }


/* 반응형 보정 */
@media (max-width: 980px) {
    .role_item p { font-size: 17px; }
    .black_bg { padding: 100px 0; }
}



/* ============================================================ */

.content_table_tit { margin:30px auto 0;font-size: 24px; font-weight: 700; color: #28427a; margin-bottom: 15px; }
.content_table{width:100%;border-collapse: collapse;}
.content_table tr.bg_gray{background:#f9fafc;}
.content_table th{width:188px;padding:20px 16px;font-size:16px;border:1px solid #eee;}
.content_table td{padding:20px 16px;font-size:16px;border:1px solid #eee;}



@media (max-width: 768px) {
    .content_table th{width:128px;}
}


/* ============================================================ */
.propduct_board_flex{display:flex;flex-flow:row nowrap;gap:20px;justify-content: space-between;}


@media (max-width: 768px) {
    .propduct_board_flex{flex-direction: column;}
}




/* ============================================================ */

/* =============================== */
/* SAFETY */

.safety_grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:20px;
}

.safety_card{
    background:#fff;
    padding:40px 30px;
    border-radius:20px;
    border:1px solid #e8e8e8;
    transition:.3s;
}

.safety_card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.safety_card span{
    display:inline-flex;
    width:48px;
    height:48px;
    border-radius:50%;
    background:#28427a;
    color:#fff;
    justify-content:center;
    align-items:center;
    font-weight:700;
    margin-bottom:20px;
}

.safety_card h4{
    font-size:24px;
    margin-bottom:18px;
}

.safety_card p{
    color:#666;
    line-height:1.8;
}

.safety_image_grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin:40px 0;;
}

.safety_image_item{
    background:#fff;
    border:1px solid #e8e8e8;
    overflow:hidden;
    transition:.35s;
}

.safety_image_item:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.safety_image_item .img_box{
    overflow:hidden;
}

.safety_image_item img{
    display:block;
    width:100%;
    transition:.5s;
}

.safety_image_item:hover img{
    transform:scale(1.05);
}

.safety_image_item .txt_box{
    padding:28px;
}

.safety_image_item span{
    display:inline-block;
    color:#28427a;
    font-weight:700;
    margin-bottom:12px;
}

.safety_image_item h4{
    font-size:24px;
    margin-bottom:16px;
    color:#111;
}

.safety_image_item p{
    font-size:16px;
    color:#666;
    line-height:1.8;
}



@media(max-width:980px){

    .safety_grid{

        grid-template-columns:1fr;

    }

    .safety_image_grid{
        grid-template-columns:1fr;
    }

}


/* ===================================== */

.solution_process{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-top:30px;
}

.process_box{
    flex:1;
    width:100%;
    padding:40px 30px;
    font-size:1px;
    text-align:center;
    background:#fff;
    border:1px solid #eee;
}

.process_box span{
    display:inline-block;
    margin-bottom:15px;
    font-size:13px;
    font-weight:700;
    color:#28427a;
}

.process_box h4{
    font-size:24px;
    margin-bottom:20px;
}

.process_box p{
    color:#666;
    line-height:1.8;
}

.process_arrow{
    font-size:40px;
    color:#28427a;
    font-weight:700;
}

@media(max-width:980px){
    .solution_process{
        flex-direction:column;
    }

    .process_arrow{
        transform:rotate(90deg);
    }

}


/* ===================================== */
/* PRODUCTIVITY */

.compare_wrap{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.compare_box{
    flex:1;
    width:100%;
    background:#fff;
    border:1px solid #e5e5e5;
    padding:40px;
}

.compare_box.after{
    border-color:#28427a;
}

.compare_label{
    display:inline-block;
    margin-bottom:15px;
    color:#28427a;
    font-weight:700;
    font-size:14px;
}

.compare_box h4{
    font-size:26px;
    margin-bottom:25px;
}

.compare_box ul{
    margin:0;
    padding-left:20px;
}

.compare_box li{
    margin:12px 0;
    font-size:16px;
    color:#555;
}

.compare_arrow{
    font-size:44px;
    color:#28427a;
    font-weight:700;
}

.effect_grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
    margin-top:20px;
}
.effect_grid_0204{
    grid-template-columns:repeat(3,1fr);
}

.effect_item{
    background:#f9fafc;
    border:1px solid #eee;
    padding:35px 25px;
    font-size:16px;
    text-align:center;
}

.effect_item h4{
    font-size:20px;
    margin-bottom:15px;
}

.effect_item p{
    color:#666;
}

.effect_item.highlight{
    background:#28427a;
    color:#fff;
}

.effect_item.highlight span{
    display:block;
    font-size:14px;
    opacity:.7;
    margin-bottom:10px;
}

.effect_item.highlight strong{
    display:block;
    font-size:58px;
    line-height:1;
    margin-bottom:15px;
}

.effect_item.highlight p{
    color:#fff;
}

@media(max-width:980px){

    .compare_wrap{
        flex-direction:column;
    }

    .compare_arrow{
        transform:rotate(90deg);
    }

    .effect_grid{
        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:768px){

    .effect_grid{
        grid-template-columns:1fr;
    }

}





/* ====================================== */
/* FIELD APPLICATION */

.site_grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.site_card{
    background:#fff;
    border:1px solid #eee;
    overflow:hidden;
    transition:.35s;
}

.site_card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.site_card img{
    width:100%;
    display:block;
}

.site_card h4{
    padding:25px 25px 10px;
    font-size:22px;
}

.site_card p{
    padding:0 25px 30px;
    color:#666;
    line-height:1.8;
}

.effect_item img{
    width:60px;
    margin-bottom:20px;
}

.effect_item h4{
    font-size:22px;
    margin-bottom:15px;
}

.effect_item p{
    color:#666;
}

@media(max-width:980px){

    .site_grid,
    .effect_grid_0204{
        grid-template-columns:1fr;

    }

}