@charset "utf-8";

/* 반응형 */
@media screen and (max-width: 1480px) {
    .container { width: 96%; }
}
@media screen and (max-width: 1280px) {
    .wrapper { font-size: 1.2vw; }

    .idx_board .board_list { flex-wrap: wrap; }
    .idx_board .board_item { flex: 1 1 30%; height: calc(var(--vh) * 25); }
    .idx_board .board_item:hover { flex: 1 1 30%; }
}
@media screen and (max-width: 1024px) {
    .wrapper { font-size: 1.4vw; }

    .process_item br { display: none; }
}
@media screen and (max-width: 992px) {
    .wrapper { font-size: 1.6vw; }  
    .container { width: 94%; }

    .hd_gnb, .hd_login { display: none; }
    .hd_anb_btn, .hd_anb { display: block; }

    .ft_inner { flex-direction: column; gap: 2em; }
    .ft_con { border-left: 0; justify-content: center; text-align: center; margin-left: 0; padding-left: 0; }
    .ft_fnb {justify-content: center; }

    .post-basic .post_item.is-head { display: none; }
    .post-basic .post_item { flex-wrap: wrap; padding: 1em; gap: 0.375em; }
    .post-basic .post_subject { width: 100%; font-size: 1.125em; font-weight: 500; } 
    .post-basic .post_meta { color: #666; }
    .post-basic .post_num,
    .post-basic .post_meta-name,
    .post-basic .post_meta-hit,
    .post-basic .post_meta-date,
    .post-basic .post_meta-status { width: auto; }
    .post-basic .post_chk { left: auto; right: 1em; top: 1em; transform: translate(0); }
    .post-gallery .post_list { grid-template-columns: repeat(3,1fr); }

    .sub .grid-4 {  grid-template-columns: repeat(2,1fr); }

    .ceo { flex-direction: column; text-align: center; gap: 2em; }
    .ceo_img { width: 50%; }
    .ceo_txt h5 { justify-content: center; margin-top: 1em; }

    .goal_list { gap: 1em 1em; }
    .goal_list br { display: none; }

    .business_list { gap: 1em 1em; }

    .service_list { display: grid; grid-template-columns: repeat(2,1fr); gap: 1em 2em; }
    .service_item,
    .service_item:nth-child(even) { flex-direction: column; }
    .service_img { border-radius: var(--radius-lg); }
    .service_img,
    .service_txt { width: 100%; }
    .service_txt { padding: 1em; font-size: 0.875em; }
    .service_txt br { display: none; }

    .idx_case .flex,
    .idx_location .flex { display: block; }
    .idx_case .idx_head { width: 100%; display: flex; justify-content: space-between; align-items: flex-end; }
    .idx_location .idx_head { width: 100%; display: flex; justify-content: space-between; align-items: flex-start; }
    .idx_location .location_map { aspect-ratio: 1/0.55; margin-top: 1em; }
    .idx_board .board_list { gap: 1.5em 1em; }
    .idx_board .board_hover h5 { font-size: 1.25em; }
    .idx_board .board_hover:hover p { font-size: 0.9375em; }
}
@media screen and (max-width: 768px) {
    html { font-size: 14px; }
    .wrapper { font-size: 2vw; }  
    #captcha { font-size: 1rem; }

    .mb_box .frm_input, .mb_box .btn_submit { height: 3em; }
    .frm_input, select { padding: 0.875em 0.625em; }
    .post_search .search_select, 
    .post_search .search_input, 
    .post_search .search_btn { padding: 0.75em 0.625em; }

    .post_box { flex-wrap: wrap; gap: 0.5em; }
    .post_search { width: 100%; font-size: 1.125em; }
    .post_search .search_bar,
    .post_search .search_input { flex-grow: 1; }

    .post-gallery .post_list { grid-template-columns: repeat(2,1fr); }

    .tab { overflow-x: scroll; }
    .tab_list { white-space: nowrap; gap: 1em; justify-content: flex-start; }
}
@media screen and (max-width: 586px) {
    html { font-size: 12px; }
    .wrapper { font-size: 2.25vw; }
    .container { width: 92%; }

    .tooltip { display: flex; }
    .tooltip_icon { color: var(--info); }
    .tooltip_txt { opacity: 1; background-color: transparent; box-shadow: none; padding: 0.2em 0; position: static; color: var(--info); }
    
    .half_input,
    .frm_item.half  { width: 100%; }

    .sub .grid-2 { grid-template-columns: repeat(1,1fr); }
    .process_list li:nth-child(4) { width: 100%; margin: 0; }
    .process_list li:nth-child(5) { order: 0; }
    .process_list li:nth-child(6) { order: 6; }
    .process_item { width: 100%; margin-bottom: 1.5em; }
    .process_arrow { width: 100%; display: none; }

    .idx_board .board_item { flex: 1 1 45%; height: calc(var(--vh) * 25); }
    .idx_board .board_item:hover { flex: 1 1 45%; }

    .idx_location .idx_head { flex-direction: column; }
}
@media screen and (max-width: 380px) {
    
}   