.lead { font-size:16px; line-height:1.75; letter-spacing:-0.02em; color:#555;  word-break:keep-all}


@media screen and (max-width: 640px) {
input {
   -webkit-appearance: none;
   -webkit-border-radius: 0;
}
}






/*오른쪽 퀵메뉴*/
.right_quick { position: absolute; right: 0; top: -60px; z-index: 2}
.right_quick.fixed {position: fixed; right: 0; top: 50% !important; margin-bottom:50px; z-index: 100; top: 189px}
.right_quick.fixed .material-icons { color:#fff; float:right}
.right_quick ul.quick_info { position: relative; height: 240px}
.right_quick ul.quick_info li { position: absolute; height: 60px; right:0}
.right_quick ul.quick_info li:nth-child(1) {top: 0}
.right_quick ul.quick_info li:nth-child(2) {top: 60px}
.right_quick ul.quick_info li:nth-child(3) {top: 120px}
.right_quick ul.quick_info li:nth-child(4) {top: 180px}
.right_quick ul.quick_info li:nth-child(5) {top: 240px}

.right_quick ul.quick_info li a{width:60px; height:60px; text-align:center; background:#343434; overflow:hidden; display:block}
.right_quick ul.quick_info li i { color:#fff; font-size:24px;}
.right_quick ul.quick_info li i.ico{position:absolute;right:20px;top:15px; z-index:2}
.right_quick ul.quick_info li:nth-child(1) i {right: 17px}
.right_quick ul.quick_info li:nth-child(2) i {right: 17px}
.right_quick ul.quick_info li:nth-child(3) i {right: 17px}
.right_quick ul.quick_info li:nth-child(4) i {right: 20px}
.right_quick ul.quick_info li:nth-child(5) i {right: 17px}
.right_quick ul.quick_info li a span{height:60px; line-height:60px; color:#fff; position:absolute; text-align:left; opacity:0; left:30px; font-size:14px; font-weight:500; z-index:2}
.right_quick ul.quick_info li a.kakao span { color:#000}

@media screen and (max-width: 640px) {
    .right_quick.fixed { display:none}
}
/*오른쪽 퀵메뉴*/










/*메인배너*/
.main-carousel{padding:0; display:block}
.main-carousel .li{height:900px; background-size:cover; background-position:center; position:relative}
.main-carousel .li .cover{position:absolute;top:0;left:0;width:100%;height:100%;background:url(../img/main_visual_cover.png) center bottom no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;min-width:300px;opacity:.6;z-index:1}
.main-carousel .jarallax { min-height: 900px;}
.main-carousel .img01 { background-image:url(../img/main_banner_img01.jpg);}
.main-carousel .img02 { background-image:url(../img/main_banner_img02.jpg);}
.main-carousel .img03 { background-image:url(../img/main_banner_img03.jpg);}
.main-carousel .li .copy_area{width:100%;text-align:center;color:#fff;position:absolute;top:50%;-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:2}
.main-carousel .li .copy_area h1{font-size:14px;font-weight:300; line-height:1.3; letter-spacing:0.5px; padding-bottom:20px;  color:#fff; text-align:center}
.main-carousel .li .copy_area h2{font-size:62px;font-weight:100; line-height:1.3; letter-spacing:-5px;  color:#fff; text-align:center}
.main-carousel .li .copy_area h3{font-size:18px;font-weight:500;text-align:center;margin:10px 0 0; padding:0 20px; word-break:keep-all; color:#fff; opacity:0.8; letter-spacing:-1px}
.main-carousel .owl-dots{position:absolute;width:100%; text-align:center; margin:0 auto; bottom:135px;}
.main-carousel .owl-dots .owl-dot{background:rgba(255, 255, 255, 0.5);width:30px;height:5px;display:inline-block;margin-left:10px}
.main-carousel .owl-dots .owl-dot.active{background:rgba(255, 255, 255, 1)}
.main-carousel .owl-nav{position:absolute;width:100%;bottom:50%}
.main-carousel .owl-nav .owl-prev{width:40px;height:30px;position:absolute;left:50px; font-size:14px; color:#fff; border-top: 1px solid #fff; padding-top:5px; text-align:center; background-color:transparent; cursor:pointer}
.main-carousel .owl-nav .owl-next{width:40px;height:30px;position:absolute;right:50px; font-size:14px; color:#fff; border-top: 1px solid #fff; padding-top:5px; text-align:center; background-color:transparent;  cursor:pointer}

@media screen and (max-width: 640px) {
	.main-carousel .li { height:100vh}
	.main-carousel .jarallax { min-height: 100vh;}
    .main-carousel .img01 { }
	.main-carousel .img02 { }
	.main-carousel .img03 { }
	.main-carousel .li .copy_area h2 {font-size: 36px; letter-spacing:-3px}
	.main-carousel .li .copy_area h3 { max-width:300px; margin:10px auto 0 auto; font-size: 15px; letter-spacing:-0.5px}
	.main-carousel .owl-nav { display:none}
}
/*메인배너*/








/*사업영역*/
.business_box_wrap{ width:100%; padding:150px 0px;background-image:linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url(../img/section_bg/bg_business_area.jpg);background-size:cover;filter: grayscale(30%) blur(0px) brightness(1);}
.business_box_wrap h2 {text-align:center; font-size:30px; color:#333}
.business_box_wrap h2 span{ display:block; padding:20px 0; color:#555; font-size:16px; font-weight:400}
.business_box_wrap .lead {font-size: 16px;line-height: 1.75;letter-spacing: -0.02em;word-break: keep-all;color:#222;}
.business_box_wrap ul {margin-top:30px; overflow:hidden}
.business_box_wrap ul li{ width:33.333%; text-align:center; float:left; display:block}
.business_box_wrap ul li .icon { display:inline-block; padding:30px}
.business_box_wrap ul li .icon i { color:#fff}
.business_box_wrap ul li img {vertical-align:middle; transition:transform 500ms}
.business_box_wrap ul li:hover i{transform:rotateY(180deg); transition:transform 500ms}
.business_box_wrap ul li .box {border-right:1px  #eaeaea solid; padding:0 10px; display:block}
.business_box_wrap ul li:last-child .box {border-right:0px}
.business_box_wrap ul li dl dt {font-weight:bold; padding-bottom:15px; line-height:20px; color:#222; font-size:20px}
.business_box_wrap ul li a {display:inline-block; margin-top:20px; border:1px #ddd solid; padding:0 20px; line-height:30px; color:#fff;  transition: all .2s}
.business_box_wrap ul li:hover a {background:#2253b8; color:#fff; transition: all .3s}

@media screen and (max-width: 1024px) {
    .business_box_wrap ul li { width: 100%; } /* 예시: 태블릿부터 세로로 쌓이도록 변경 */
    /* width: 50%; 로 두면 2개 + 1개 형태로 표시됩니다. */
    .business_box_wrap ul li .box {
        border-right: 0; /* 세로로 쌓일 경우 오른쪽 테두리 불필요 */
        /* 이미 아래 960px 규칙에 border-bottom 이 있으므로, 여기서도 필요하면 추가 */
        /* padding-bottom:30px; */
    }
}
@media screen and (max-width: 960px) {
    .business_box_wrap ul li { width:100%}
	.business_box_wrap ul li .box { border-right:0; border-bottom:1px solid #ddd; padding-bottom:30px}
}
/*사업영역*/


/* 회사소개 섹션 (company_info_section) 기본 스타일 */
.company_info_section {
    width: 100%;
    padding: 100px 0; /* 상하 패딩 조정 */
    background-color: #f8f9fa; /* 밝은 배경색 예시 */
	background:url(../img/section_bg/bg_company_area.jpg) center top no-repeat; background-size:cover;
	filter: grayscale(30%) blur(0px) brightness(1);
}

.company_info_section .inner {
    max-width: 1200px; /* 내부 콘텐츠 최대 너비 */
    margin: 0 auto;
    padding: 0 15px; /* 좌우 여백 */
}

.company_info_section .section_title_wrap {
    text-align: center;
    margin-bottom: 60px; /* 제목과 카드 목록 사이 간격 */
}

.company_info_section .section_title_wrap h2 {
    font-size: 36px; /* 제목 폰트 크기 */
    color: #212529; /* 제목 색상 */
    font-weight: 600;
    margin-bottom: 15px; /* 제목과 부제목 사이 간격 */
}


/* 기존 h2:before 스타일은 제거하거나 새 디자인에 맞게 수정 */
.company_info_section .section_title_wrap .sub_title {
    font-size: 18px;
    color: #6c757d; /* 부제목 색상 */
    line-height: 1.7;
    max-width: 700px; /* 부제목 최대 너비 */
    margin: 0 auto;
}

/* 회사소개 정보 카드 리스트 */
.company_info_section .company_info_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around; /* 카드 간 간격 기본 배분 */
    margin: 0 -15px; /* gutter 보정 */
    padding: 0;
    list-style: none;
}

.company_info_section .company_info_list li {
    width: calc(25% - 30px); /* 4개 아이템, 좌우 margin 15px * 2 고려 */
    margin: 0 15px 30px 15px; /* 카드 좌우 및 하단 간격 */
    box-sizing: border-box;
}

.company_info_section .info_card {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 30px 25px;
    text-align: center;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%; /* Flexbox 아이템 높이 통일 (필요시) */
    display: flex;
    flex-direction: column; /* 내부 요소 세로 정렬 */
    justify-content: space-between; /* 내부 요소 간격 배분 */
}

.company_info_section .info_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

.company_info_section .card_icon {
    font-size: 48px; /* 아이콘 크기 */
    color: #007bff; /* 테마 기본 파란색 예시, 브랜드 색상으로 변경 */
    margin-bottom: 20px;
    line-height: 1;
}

.company_info_section .card_text_content {
    flex-grow: 1; /* 링크를 제외한 텍스트 영역이 공간을 채우도록 */
}

.company_info_section .card_title {
    font-size: 22px; /* 카드 제목 폰트 크기 */
    color: #343a40;
    font-weight: 600;
    margin: 0 0 10px 0;
}

.company_info_section .card_lead {
    font-size: 15px;
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 20px; /* 설명과 링크 사이 간격 */
    /* 필요시 여러 줄 말줄임표 처리 */
    display: -webkit-box;
    -webkit-line-clamp: 3; /* 최대 3줄 */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: calc(15px * 1.6 * 3); /* 폰트크기 * 줄간격 * 줄 수 (대략적 높이 확보) */
}

.company_info_section .card_link {
    display: inline-block;
    font-size: 15px;
    font-weight: 500;
    color: #007bff; /* 링크 색상 */
    text-decoration: none;
    padding-top: 15px; /* 텍스트 내용과 구분 */
    /* border-top: 1px solid #eee; */ /* 링크 영역 구분선 (선택 사항) */
    margin-top: auto; /* 링크를 카드 하단에 고정 (flex-grow와 함께 사용) */
}

.company_info_section .card_link i {
    margin-left: 5px;
    transition: transform 0.2s ease-in-out;
}

.company_info_section .card_link:hover {
    color: #0056b3; /* 링크 호버 색상 */
    text-decoration: underline;
}
.company_info_section .card_link:hover i {
    transform: translateX(3px);
}

/* 회사소개 반응형 CSS */
@media screen and (max-width: 991px) { /* 태블릿 (1024px 보다 작은 일반적인 기준) */
    .company_info_section .company_info_list li {
        width: calc(50% - 30px); /* 한 줄에 2개 */
    }
    .company_info_section .card_title {
        font-size: 20px;
    }
    .company_info_section .card_lead {
        font-size: 14px;
        min-height: calc(14px * 1.6 * 3);
    }
}

@media screen and (max-width: 767px) { /* 모바일 */
    .company_info_section {
        padding: 60px 0;
    }
    .company_info_section .section_title_wrap {
        margin-bottom: 40px;
    }
    .company_info_section .section_title_wrap h2 {
        font-size: 30px;
    }
    .company_info_section .section_title_wrap .sub_title {
        font-size: 16px;
    }
    .company_info_section .company_info_list li {
        width: calc(100% - 30px); /* 한 줄에 1개 */
        max-width: 400px; /* 모바일에서 너무 커지지 않도록 */
        margin-left: auto;
        margin-right: auto;
    }
     .company_info_section .info_card {
        padding: 25px 20px;
    }
    .company_info_section .card_title {
        font-size: 19px;
    }
}

/* 연구/개발 섹션 기본 스타일 (기존 CSS 유지 또는 필요에 따라 수정) */
.research_box_wrap {
    width: 100%;
    padding: 100px 0px; /* 패딩 조정 가능 */
    background-image: url(../img/section_bg/bg_research_area.jpg); /* 이 배경은 섹션 전체 배경이 됩니다. */
    background-size: cover;
	filter: grayscale(30%) blur(0px) brightness(1);
    background-position: center center;
    background-attachment: fixed; /* 배경 고정 효과 (선택 사항) */
}

.research_box_wrap h2 {
    text-align: center;
    font-size: 30px; /* 폰트 크기 조정 */
    color: #fff; /* 배경이 어두울 경우 밝은 색으로 */
    margin-bottom: 20px;
    font-weight: 600;
}

.research_box_wrap h2 span {
    display: block;
    padding: 10px 0 40px 0; /* 간격 조정 */
    color: #f0f0f0; /* 배경이 어두울 경우 밝은 색으로 */
    font-size: 18px;
    font-weight: 300;
    line-height: 1.6;
}

/* 새로운 카드 리스트 스타일 */
.research_box_wrap ul.research-card-list {
    margin-top: 30px;
    overflow: hidden;
    display: flex; /* Flexbox 사용 */
    flex-wrap: wrap; /* 아이템이 넘칠 경우 다음 줄로 */
    justify-content: space-between; /* 아이템 간 간격 자동 분배 */
    padding: 0; /* ul 기본 패딩 제거 */
    list-style: none; /* li 기본 스타일 제거 */
}

.research_box_wrap ul.research-card-list li {
    width: calc(33.333% - 20px); /* 3개 아이템, 양옆 간격 10px * 2 고려 */
    margin-bottom: 30px; /* 카드 간 세로 간격 */
    /* float: left; display:block; -> Flexbox 사용으로 불필요 */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15); /* 카드 그림자 효과 */
    border-radius: 8px; /* 카드 모서리 둥글게 */
    overflow: hidden; /* 내부 컨텐츠가 카드를 벗어나지 않도록 */
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.research_box_wrap ul.research-card-list li:hover {
    transform: translateY(-10px); /* 호버 시 살짝 위로 이동 */
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
}

.research_box_wrap .research-card-item {
    display: block;
    position: relative; /* 내부 절대 위치 요소 기준점 */
    width: 100%;
    padding-top: 125%; /* 카드의 가로세로 비율 유지 (예: 4:5 비율), 필요시 값 조정 */
    background-size: cover;
    background-position: center center;
    text-decoration: none;
}

.research_box_wrap .card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0) 100%); /* 하단에서 어두워지는 그라데이션 */
    display: flex;
    flex-direction: column; /* 내부 컨텐츠 세로 정렬 */
    justify-content: flex-end; /* 컨텐츠를 하단으로 정렬 */
    padding: 25px;
    box-sizing: border-box;
}

.research_box_wrap .card-content {
    color: #fff;
}

.research_box_wrap .card-title {
    font-size: 22px; /* 제목 폰트 크기 */
    font-weight: 600;
    margin: 0 0 10px 0;
    line-height: 1.3;
}

.research_box_wrap .card-lead {
    font-size: 15px;
    margin-bottom: 15px;
    line-height: 1.6;
    opacity: 0.9;
    /* 내용이 길 경우 몇 줄만 보이도록 처리 가능 */
    display: -webkit-box;
    -webkit-line-clamp: 2; /* 보여줄 줄 수 */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: calc(15px * 1.6 * 2); /* 폰트크기 * 줄간격 * 줄 수 */
}

.research_box_wrap .card-more {
    font-size: 14px;
    font-weight: 500;
    display: inline-block;
    color: #fff; /* 링크 색상 */
    /* text-decoration: underline; */
    opacity: 0.8;
    transition: opacity 0.3s ease;
}
.research_box_wrap .research-card-item:hover .card-more {
    opacity: 1;
    text-decoration: underline;
}
.research_box_wrap .card-more i {
    font-size: 0.9em;
    margin-left: 3px;
}


/* 반응형 스타일 */
@media screen and (max-width: 1024px) { /* 태블릿 */
    .research_box_wrap ul.research-card-list li {
        width: calc(50% - 15px); /* 한 줄에 2개, 간격 조정 */
    }
    .research_box_wrap .card-title {
        font-size: 20px;
    }
    .research_box_wrap .card-lead {
        font-size: 14px;
         min-height: calc(14px * 1.6 * 2);
    }
}

@media screen and (max-width: 767px) { /* 모바일 */
    .research_box_wrap {
        padding: 80px 20px;
    }
    .research_box_wrap h2 {
        font-size: 30px;
    }
    .research_box_wrap h2 span {
        font-size: 16px;
        padding-bottom: 30px;
    }
    .research_box_wrap ul.research-card-list li {
        width: 100%; /* 한 줄에 1개 */
        margin-left: auto; /* Flexbox 사용 시 중앙 정렬을 위해 */
        margin-right: auto;
        max-width: 400px; /* 모바일에서 너무 커지지 않도록 (선택 사항) */
    }
     .research_box_wrap .research-card-item {
        padding-top: 100%; /* 모바일에서는 비율 조정 (예: 1:1) */
    }
    .research_box_wrap .card-overlay {
        padding: 20px;
    }
    .research_box_wrap .card-title {
        font-size: 18px;
    }
    .research_box_wrap .card-lead {
        font-size: 13px;
         min-height: calc(13px * 1.6 * 2);
    }
}

/*뉴스갤러리*/
.main_gallery_wrap { width:100%;  padding:100px 20px; background:url(../img/section_bg/bg_news_gallery.jpg) center  no-repeat; background-size:cover;filter: grayscale(30%) blur(0px) brightness(1);}
.main_gallery_wrap .inner {max-width:1200px; margin:0 auto; overflow:hidden}
.main_gallery_wrap h2 {text-align:center; font-size:30px; color:#fff}
.main_gallery_wrap h2 span{ display:block; padding:20px 0; color:#fff; opacity:0.8; font-size:16px; font-weight:400}
.main_gallery_wrap a:hover {color:#2253b8}
.main_gallery_wrap ul {margin-top:30px}
.main_gallery_wrap li {position:relative; float:left; width:48%; margin:1%; overflow:hidden; background-color:#fff; display:block}
.main_gallery_wrap .one_box {display:block; min-height:155px; background:#fff}
.main_gallery_wrap .photo {position:absolute; left:0; top:0; width:100%; max-width:160px; min-height: 155px; height:100%; overflow:hidden; background-repeat:no-repeat; background-size:cover; background-position:center center;
 -webkit-transform: scale(1);transform: scale(1);transition:all 1s ease;-webkit-transition:all 1s ease}
.main_gallery_wrap dl {margin-left:190px; padding-right:10px}
.main_gallery_wrap dt {color:#333; font-size:18px; font-weight:bold; margin-top:30px; letter-spacing:-1px}
.main_gallery_wrap dd {color:#555; font-size:16px; letter-spacing:-0.02em; line-height:1.75; word-break:keep-all; padding:10px 0; }
.main_gallery_wrap li:hover .one_box {background-color:#095ead;cursor: pointer}
.main_gallery_wrap li:hover dt {color:#fff}
.main_gallery_wrap li:hover dd {color:#fff}
.main_gallery_wrap li:hover .more_btn {color:#eee}
.main_gallery_wrap a:hover .photo {-webkit-transform: scale(1.1);transform: scale(1.1)}
@media screen and (max-width: 1024px) {
	.main_gallery_wrap li { width:100%; margin:0 0 4% 0}

}
/*뉴스갤러리*/






/*제품소개*/
.business_now_box_warp { width:100%; padding:100px 20px; text-align:center; background-color:#eff1f6; clear:both;background:url(../img/section_bg/bg_product_intro.jpg) center  no-repeat; background-size:cover;filter: grayscale(30%) blur(0px) brightness(1);}
.business_now_box_warp h2 { font-size:30px; color:#000; text-align:center;line-height:1.6; font-weight:600}
.business_now_box_warp span{ padding:10px 10px 50px 10px; font-size:16px; display:block; color:#555; font-weight:400}
/*제품소개*/






/*PRODUCTS*/
.product_box_wrap { padding:150px 20px; max-width:100%; margin:0 auto; overflow:hidden; background:url(../img/section_bg/bg_product_tab.jpg) center top no-repeat; background-size:cover;filter: grayscale(30%) blur(0px) brightness(1);}
.product_box_wrap h2 { font-size:30px; text-align:center; color:#000; line-height:1.6; font-weight:600}
.product_box_wrap span{ padding:10px 10px 50px 10px; font-size:16px; text-align:center; display:block; color:#555; letter-spacing:-0.02em; font-weight:400}
/* PRODUCTS*/


/*유튜브*/

/* 섹션 기본 스타일 */
.movie_now_box_warp { /* PHP 파일의 $section_classes 에 포함된 클래스 */
    padding: 150px  0; /* 섹션 상하 패딩 증가로 여유 공간 확보 */
    clear: both;
    width: 100%;
    box-sizing: border-box;
    background-color: #f9f9f9; /* 은은한 배경색 추가 */
    border-top: 1px solid #e9ecef; /* 상단 구분선 */
    border-bottom: 1px solid #e9ecef; /* 하단 구분선 */
	background:url(../img/section_bg/bg_movie_intro.jpg) center  no-repeat; background-size:cover;
	filter: grayscale(30%) blur(0px) brightness(1);
}

/* 특정 섹션 ID를 위한 스타일 (선택 사항) */
/* 예시: #section_movie_intro { background-color: #ffffff; } */

.movie_now_box_warp .inner {
    max-width: 1280px; /* 내부 콘텐츠 최대 너비 약간 증가 */
    margin: 0 auto;    /* 중앙 정렬 */
    padding: 0 20px;   /* 좌우 여백 (모바일 고려) */
    box-sizing: border-box;
}

/* clearfix (float 해제) */
.movie_now_box_warp .inner::after {
    content: "";
    display: block;
    clear: both;
}

/* 섹션 제목 스타일 */
.movie_now_box_warp .section_title {
    font-size: 30px; /* 제목 폰트 크기 증가 */
    font-weight: 700; /* 글자 두께 강조 */
    color: #343a40;   /* 제목 색상 (더 진한 회색) */
    text-align: center; /* 제목 중앙 정렬 */
    margin-bottom: 20px; /* 제목과 부제목/내용 사이 간격 증가 */
    line-height: 1.4;
    letter-spacing: -0.5px; /* 자간 미세 조정 */
}

.movie_now_box_warp .section_title .section_sub_title {
    display: block;
    font-size: 16px; /* 부제목 폰트 크기 증가 */
    font-weight: 400;
    color: #6c757d;   /* 부제목 색상 (중간 회색) */
    margin-top: 10px; /* 제목과 부제목 사이 간격 증가 */
    line-height: 1.6;
}

/* 최신글 스킨 (latest() 함수 출력 부분)을 위한 컨테이너 스타일 */
.movie_now_box_warp .inner > div[class*="lt_"],
.movie_now_box_warp .inner > .latest_youtube_popup { /* 최신글 스킨의 특정 클래스도 타겟팅 */
    margin-top: 100px; /* 섹션 제목과 최신글 목록 사이 간격 증가 */
}


/*
   참고: 최신글 스킨 (예: theme/img_youpop 또는 이전의 latest_skin_youtube_popup) 내의 CSS에서
   4단 레이아웃, 썸네일 스타일, 텍스트 스타일, 유튜브 팝업 관련 스타일 등이
   이미 정의되어 있어야 합니다. 이 CSS는 섹션의 전반적인 틀을 잡는 데 중점을 둡니다.

   최신글 스킨 아이템에 대한 추가적인 미적 개선 제안 (해당 스킨의 style.css에 적용):
    .latest_skin_class_name li {
        border-radius: 8px; // 부드러운 모서리
        box-shadow: 0 4px 12px rgba(0,0,0,0.08); // 은은한 그림자 효과
        transition: transform 0.3s ease, box-shadow 0.3s ease; // 호버 효과를 위한 전환
    }
    .latest_skin_class_name li:hover {
        transform: translateY(-5px); // 호버 시 살짝 떠오르는 효과
        box-shadow: 0 6px 16px rgba(0,0,0,0.12);
    }
    .latest_skin_class_name .photo {
        border-top-left-radius: 8px; // 이미지 상단 모서리도 둥글게
        border-top-right-radius: 8px;
    }
    .latest_skin_class_name dt {
        color: #333; // 제목 색상
        font-size: 1.05em; // 제목 크기 살짝 조정
    }
    .latest_skin_class_name dd {
        color: #555; // 내용 색상
    }
*/

/* 반응형 조정 (예시) */
@media (max-width: 991px) { /* 태블릿 사이즈 */
    .movie_now_box_warp .section_title {
        font-size: 28px;
    }
    .movie_now_box_warp .section_title .section_sub_title {
        font-size: 16px;
    }
}

@media (max-width: 767px) { /* 모바일 사이즈 */
    .movie_now_box_warp {
        padding: 40px 0; /* 모바일 상하 패딩 조정 */
    }
    .movie_now_box_warp .inner {
        padding: 0 15px; /* 모바일 좌우 여백 유지 */
    }
    .movie_now_box_warp .section_title {
        font-size: 24px;
        margin-bottom: 15px;
    }
    .movie_now_box_warp .section_title .section_sub_title {
        font-size: 15px;
    }
    .movie_now_box_warp .inner > div[class*="lt_"],
    .movie_now_box_warp .inner > .latest_youtube_popup {
        margin-top: 70px;
    }
}


/*유튜브*/





/*메인 공지 최신글*/
.latest_box_warp { width:100%; max-width:1200px; margin:0 auto; padding:0px 20px 100px 20px;background:url(../img/bg_latest_posts_combined.jpg) center  no-repeat; background-size:cover; filter: grayscale(30%) blur(0px) brightness(1); border-top:1px solid #ddd; clear:both; overflow:hidden}
.latest_box_warp .notice_latest { width:48%; float:left}
.latest_box_warp .counsel_latest {width:48%; float:right}
@media screen and (max-width: 960px) {
	.latest_box_warp .notice_latest { width:100%}
	.latest_box_warp .counsel_latest { width:100%}
}
/*메인 공지 최신글*/






/*하단 상담신청*/
.contact_box_wrap  { width:100%; min-height:550px; padding:100px 0; background:url(../img/section_bg/bg_contact_form.jpg) center top no-repeat; background-size:cover;  filter: grayscale(30%) blur(0px) brightness(1);}
.contact_box_wrap .inner { max-width:600px; margin:0 auto; padding:0 20px 0} 
.contact_box_wrap h2 {text-align:center;font-size:30px; color:#fff; line-height:1.6; font-weight:600}
.contact_box_wrap h2 span {padding:10px 0 50px 10px; display:block; font-size:16px; color:#fff; opacity:0.8; font-weight:400; letter-spacing:-0.02em}
.contact_box_wrap .input_page #co_name { width:48%; height:60px; font-size:15px; color:#6e6e6e; padding-left:10px; float:left; border:0}
.contact_box_wrap .input_page #co_email { width:48%; height:60px; font-size:15px; color:#6e6e6e; padding-left:10px; float:right; border:0}
.contact_box_wrap .txtarea_page  #co_message { margin-top:20px; width:100%; height:120px;  font-size:15px; color:#6e6e6e; padding:10px 0 0 10px; border:0}
.contact_box_wrap .send_page { text-align:center;}
.contact_box_wrap .send_page .send {margin:50px 0 0;  max-width:142px; height:41px; line-height:41px; padding:0px 40px;background-color: #3949a3; font-size:15px; font-weight:bold; color:#fff; border:0; border-radius:20px}
.contact_box_wrap #x_message{position:absolute;width:300px;border-radius:10px;height:50px;text-align:center;line-height:50px;top:50px;left:50%;margin-left:-150px;background-color:#FDD;border:2px solid #C00;font-weight:700;color:#666;z-index:1000}
.contact_box_wrap #x_loading{position:absolute;display:none;width:200px;height:200px;top:50px;left:50%;margin-left:-100px;z-index:1;font-size:100px;line-height:200px}
.contact_box_wrap #x_message.x-msg1 {background-color: #FDD;}
.contact_box_wrap #x_message.x-msg2 {background-color: #9C6;border:2px solid #096}
/*하단 상담신청*/



/* 이 섹션에만 적용될 기본 스타일 (실제 테마의 CSS 파일로 이전 권장) */
.quick_consult_wrap {
    background-color: #0d3d6d; /* 이미지와 유사한 어두운 파란색 */
    color: #ffffff;
    padding: 30px 20px;
	background:url(../img/section_bg/bg_contact_form.jpg) center top no-repeat; background-size:cover
    /* font-family: 'Malgun Gothic', sans-serif; */ /* 폰트는 테마 전체 설정 따르도록 주석 처리 */
}
.quick_consult_wrap .inner {
    max-width: 600px; /* 폼 내용 최대 너비 */
    margin: 0 auto;
}
.quick_consult_wrap .section_header h2 {
    font-size: 1.8em; /* 제목 크기 */
    margin-top: 0;
    margin-bottom: 10px;
    font-weight: bold;
    color: #ffffff;
    text-align: left;
}
.quick_consult_wrap .section_header .sub_title {
    font-size: 0.95em;
    margin-bottom: 15px;
    line-height: 1.6;
    color: #e0e0e0; /* 약간 밝은 회색 */
    text-align: left;
}
.quick_consult_wrap .consult_divider {
    border: 0;
    height: 1px;
    background-color: #2a5c8d; /* 구분선 색상 */
    margin-bottom: 25px;
}

/* Form Group Styling */
.quick_consult_wrap .form_group {
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    flex-wrap: wrap; /* 반응형 고려 */
}
.quick_consult_wrap .consult_label {
    width: 70px; /* 라벨 너비 */
    font-size: 0.9em;
    color: #e0e0e0;
    padding-right: 10px;
    box-sizing: border-box;
}
.quick_consult_wrap .form_group input[type="text"],
.quick_consult_wrap .form_group select {
    padding: 10px;
    border: 1px solid #5a8bc0;
    border-radius: 4px;
    font-size: 0.95em;
    background-color: #ffffff;
    color: #333333;
    box-sizing: border-box;
}
.quick_consult_wrap .form_group input[type="text"]::placeholder {
    color: #999;
}

/* 이름 필드 */
.quick_consult_wrap .input_name input[type="text"] {
    flex: 1; /* 남은 공간 채우기 */
    min-width: 150px; /* 최소 너비 */
}

/* 연락처 필드 */
.quick_consult_wrap .phone_field_wrap {
    display: flex;
    align-items: center;
    flex: 1;
}
.quick_consult_wrap .phone_field_wrap select {
    width: auto; /* 내용에 맞게 */
    min-width: 75px;
    margin-right: 5px;
}
.quick_consult_wrap .phone_field_wrap input[type="text"] {
    width: 70px; /* 중간, 끝 번호 필드 너비 */
    text-align: center;
    margin-right: 5px;
}
.quick_consult_wrap .phone_field_wrap input[type="text"]:last-child {
    margin-right: 0;
}
.quick_consult_wrap .phone_separator {
    color: #e0e0e0;
    margin: 0 2px;
}


/* 개인정보 동의 */
.quick_consult_wrap .privacy_agreement {
    justify-content: flex-start; /* 이미지에서는 우측 정렬이었으나, 전체적인 폼 레이아웃에 맞춰 좌측 또는 중앙 정렬 고려 */
    padding-left: 70px; /* 라벨 너비만큼 들여쓰기 */
}
.quick_consult_wrap .privacy_agreement input[type="checkbox"] {
    margin-right: 8px;
    vertical-align: middle;
    width: 16px;
    height: 16px;
}
.quick_consult_wrap .privacy_agreement label {
    font-size: 0.9em;
    color: #e0e0e0;
    cursor: pointer;
    margin-right: 5px;
}
.quick_consult_wrap .privacy_agreement .privacy_link {
    color: #a0c8f0;
    text-decoration: none;
    font-size: 0.9em;
}
.quick_consult_wrap .privacy_agreement .privacy_link:hover {
    text-decoration: underline;
}

/* 제출 버튼 */
.quick_consult_wrap .send_page {
    margin-top: 25px;
}
.quick_consult_wrap .submit_button {
    background-color: #343a40; /* 어두운 회색 버튼 */
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    font-size: 1.1em;
    font-weight: bold;
    cursor: pointer;
    display: block;
    width: 100%;
    transition: background-color 0.2s ease;
}
.quick_consult_wrap .submit_button:hover,
.quick_consult_wrap .submit_button.is-loading {
    background-color: #495057;
}
.quick_consult_wrap .submit_button.is-loading {
    cursor: wait;
}

/* 메시지 및 로딩 스타일 */
.quick_consult_wrap .form_message {
    padding: 10px;
    margin-top: 15px;
    border-radius: 4px;
    text-align: center;
    font-size: 0.9em;
}
.quick_consult_wrap .form_message.success {
    background-color: #28a745; /* 성공 (초록색 계열) */
    color: white;
}
.quick_consult_wrap .form_message.error {
    background-color: #dc3545; /* 오류 (빨간색 계열) */
    color: white;
}
.quick_consult_wrap .form_loading {
    text-align: center;
    padding: 10px;
    margin-top: 15px;
    font-size: 0.9em;
}
.quick_consult_wrap .form_loading .fa-spinner {
    margin-right: 5px;
}

/* 반응형 조정 (예시) */
@media (max-width: 480px) {
    .quick_consult_wrap .form_group {
        flex-direction: column;
        align-items: flex-start;
    }
    .quick_consult_wrap .consult_label {
        width: 100%;
        margin-bottom: 5px;
    }
    .quick_consult_wrap .input_name input[type="text"],
    .quick_consult_wrap .phone_field_wrap {
        width: 100%;
    }
    .quick_consult_wrap .phone_field_wrap input[type="text"] {
        flex-grow: 1; /* 전화번호 입력 필드 너비 조정 */
    }
    .quick_consult_wrap .privacy_agreement {
        padding-left: 0; /* 모바일에서는 들여쓰기 제거 */
    }
}






/*서브상단*/
.sub_visual{position:relative;max-width:2560px;margin:0 auto;height:472px;overflow:hidden;background-repeat:no-repeat;background-position:center top}
.sub_visual.visual01 .bg{background-image:url(../img/sub_visual01.jpg)}
.sub_visual.visual02 .bg{background-image:url(../img/sub_visual02.jpg)}
.sub_visual.visual03 .bg{background-image:url(../img/sub_visual03.jpg)}
.sub_visual.visual04 .bg{background-image:url(../img/sub_visual04.jpg)}
.sub_visual.visual05 .bg{background-image:url(../img/sub_visual05.jpg)}
.sub_visual:hover .bg{-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-o-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}
.sub_visual .title_warp { max-width:1240px; margin:0 auto; display:table; z-index:5}
.sub_visual .title_warp .table-cell { display:table-cell; vertical-align:middle; height:472px;}
.sub_visual h3{position:relative;z-index:5;font-size:45px;font-weight:bold; text-align:center; letter-spacing:-1px; color:#fff}
.sub_visual .sub_title{ position:relative; padding-bottom:10px; font-size:14px; font-weight:500; color:#fff; text-align:center; opacity:.8; z-index:5}
.sub_visual .cover{position:absolute;top:0;left:0;width:100%;height:100%;background:url(../img/sub_visual_cover.png) center bottom no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;min-width:1200px;opacity:.5;z-index:1}
.sub_visual .bg{position:absolute;top:0;left:0;width:100%;height:100%;background-position:center center;background-repeat:no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;z-index:0;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}
@media screen and (max-width: 640px) {
    .sub_visual .title_warp { max-width:100%;}
	.sub_visual h3 { font-size:35px}
	.sub_visual .sub_title { font-size:13px}
}
/*서브상단*/








.content_wrap { width:100%;}
.content_wrap .txtCon { margin:0 auto; padding:30px 20px 20px 20px; font-weight:400; position:relative; clear:both}
.content_wrap .txtCon .sub_title{ margin-bottom:0}
.content_wrap .txtCon .sub_title h1 {font-size:38px; color:#000; text-align:center}

.content_wrap .txtCon .sub_title .sub_title {font-size: 16px; color:#555; font-weight:400; text-align:center; padding-top:20px; word-break:keep-all;}
.content_wrap .txtboard {margin-left:270px; font-size:1.2em;}
@media screen and (max-width: 640px) {
   .content_wrap .txtCon .sub_title h1 { font-size:32px}
   .content_wrap .txtboard {margin-left:0; font-size:12px;}
   .content_wrap .txtCon {padding:0}
}





/*서브 하단 네비*/
.category-wrap {width:100%; height:70px; background-color:#fff; border-bottom:1px solid #ddd;  clear:both; background-attachment:scroll; position:relative; z-index:3}
.sub_navI_warp { background-color:#fff; max-width:1300px; z-index:3; position:relative; margin: -70px auto;}
.all-wrap{max-width:1300px;  height:69px; margin:0 auto;   transition:all .3s ease;}
.all-wrap .loca-wrap{width:100%;margin:0 auto;height:69px}
.all-wrap .loca-wrap .loca-area i{float:left;display:inline-block;width:60px;height:71px; line-height:65px;  color:#555; border-right:1px solid #ddd; padding:0; margin-top:0; text-align:center}
.all-wrap .loca-wrap .loca-area{height:69px;float:left;}
.all-wrap .loca-wrap .loca-area > a {display:inline-block;width:54px;height:100%; float:left; line-height:100%; text-align:center;}
.all-wrap .loca-wrap .loca-area > a img {margin-top:17px;}
.all-wrap .loca-wrap .loca-area>ul {float: left;margin:0; padding:0;}
.all-wrap .loca-wrap .loca-area>ul>li{float:left;width:220px;height:70px;position:relative; margin-left:-1px}
.all-wrap .loca-wrap .loca-area>ul>li button{height:69px;width:220px;position:relative;text-align:left; background-image:url(../img/loca_arrow_off.png);background-position-y:50%;background-position-x:100%;background-repeat:no-repeat;-webkit-transition:background .3s ease;-moz-transition:background .3s ease;-o-transition:background .3s ease;-ms-transition:background .3s ease;  border:0;  background-color: inherit; box-sizing: border-box;
    border-left: 1px solid #ddd; border-right: 1px solid #ddd;}
.all-wrap .loca-wrap .loca-area>ul>li button.active{background-image:url(../img/loca_arrow_on.png);background-position-y:50%;background-position-x:100%;background-repeat:no-repeat;}
.all-wrap .loca-wrap .loca-area>ul>li button span {padding-left: 19px;background-color: transparent; color:#333; font-size:15px}
.all-wrap .loca-wrap .loca-area>ul>li div{overflow:hidden;height:0;position:relative}
.all-wrap .loca-wrap .loca-area>ul>li div ul{display:block;position:absolute;width:100%;left:0;border:1px solid #ddd; background-color:#fff; padding:0}
.all-wrap .loca-wrap .loca-area>ul>li div ul li a{ border-bottom:1px solid #ddd; background:#fff;height:46px;color:#555;line-height:46px;display:block;-webkit-transition:background .3s ease;-moz-transition:background .3s ease;-o-transition:background .3s ease;-ms-transition:background .3s ease;padding-left:19px; font-size:15px; box-sizing:border-box}
.all-wrap .loca-wrap .loca-area>ul>li div ul li a:hover { color:#000; font-weight:bold}
.all-wrap .loca-wrap .share-area {float: right; display:block; padding-top:16px;box-sizing: border-box;}
.all-wrap .loca-wrap .share-area .hide-wrap{width:151px;height:34px;overflow:hidden;float:left}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area{width:151px;height:34px;position:relative;left:200px}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area ul {overflow: hidden; padding:0; margin:0}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area ul li {float: left;margin-left: 13px; border-bottom: 1px solid #ddd; cursor:pointer}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area ul li:first-child {margin-left: 0;}
.all-wrap .loca-wrap .share-area .share-btn{width:34px;height:34px;background-image:url(../img/share_open_bt.png);float:right;text-indent:-9999px;padding-left:18px;box-sizing:unset;background-repeat:no-repeat;background-position-x:right;transition:all .5s ease;     background-color: inherit; border:0; margin-right:20px}
.all-wrap .loca-wrap .share-area .share-btn.active {background-image: url(../img/share_close_bt.png);border-left: 1px solid #fff;}

@media screen and (max-width: 640px) {
    .all-wrap .loca-wrap .loca-area {100%; float:none;}
	.all-wrap .loca-wrap .loca-area > a {width:10%;}
	.all-wrap .loca-wrap .share-area { display:none}
	.all-wrap .loca-wrap .loca-area > ul {width:100%;}
	.all-wrap .loca-wrap .loca-area > ul > li { width:50%}
	.all-wrap .loca-wrap .loca-area > ul > li:first-child { border:0}
	.all-wrap .loca-wrap .loca-area > ul > li button {width:100%; border-right:0}
	.all-wrap .loca-wrap .loca-area i { display:none}
}
/*서브 하단 네비*/






/*푸터*/
#footer { padding: 30px 0px; width: 100%;  max-width:2560px; margin-left:260px; position:relative; z-index:10; background-color:#0d0d0d; clear:both }
#footer .footer_in { position:relative; z-index:10; max-width:1200px; height:224px; padding:0 10px 0 10px; margin:0 auto; }
#footer .gotop { position:fixed; left:0; bottom:20px; width:100%; min-width:1080px; height:1px; text-align:center; }
#footer .gotop a { position:absolute; right:7px; bottom:0; }
#footer .menu { display:block; padding:7px 0 0;  }
#footer .menu a { display:inline-block; margin-right:28px; font-size:14px; font-weight:bold; color:#bbb; }
#footer .menu a:active { font-size:14px;} 
#footer .menu a strong { color:#f36910; }
#footer address { position:relative; margin:35px 0 0; padding-top:37px; border-top:1px solid #414141; font-size:14px; color:#a9a9a9; } /* font-weight:bold; */
#footer .adr { display:block; margin:0 0 6px; vertical-align:middle; font-style:normal; }
#footer .copyright { display:block; margin:22px 0 0; font-size:11px;font-style:normal;  }
#footer a.wa { position:absolute; right:0; top:37px; }
@media screen and (max-width: 640px) {
    #footer { margin-left:0;  }
	#footer .copyright { margin:10px 0 0; font-size:11px;font-style:normal;  }
}
/*푸터*/



/* 푸터팝업*/
.pop_con{background:#fff;} 
.pop_con h2.f_pop_tit{width:100%;height:80px;line-height:80px;font-size:20px;color:#fff;}
.pop_con h2.f_pop_tit img {display:inline-block;margin-left:50px;margin-right:5px;margin-top:-10px;width:120px;}
.pop_con h2.f_pop_tit span {display:inline-block; padding-left:50px;}
.f_pop_wrap {line-height:23px;text-align:justify;word-break:break-all;font-size:15px;overflow-y:auto;}
.f_pop_wrap strong {color:#00a19a;font-weight:normal;}
.f_pop_wrap p { color:#333; padding:40px 50px; line-height:1.6;}
.mfp-close:after { content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url("../img/btn_close.png") no-repeat center center; -webkit-transition: -webkit-transform 300ms; transition: -webkit-transform 300ms; transition: transform 300ms; transition: transform 300ms, -webkit-transform 300ms; border-radius: 50%; }
.mfp-close { width: 40px; height: 40px; text-indent: -999px;opacity: 1; overflow: hidden; background-color:transparent; border:0; }
button.mfp-close:hover:after { -webkit-transform: rotate(270deg); -ms-transform: rotate(270deg); transform: rotate(270deg); }
/* 푸터팝업*/



.hd_admin{position:fixed;bottom:10px;left:10px;z-index:999;}
.hd_admin a{padding:0 20px;display:inline-block;line-height:40px;background:#8fd92e;color:#333}
.hd_admin a:hover{background:#ff0000;color:#fff}



@media screen and (max-width: 960px) {

    .scrolled #header  {background-color:#fff; border-bottom:1px solid #ddd;}
	.scrolled #open-button .nl1 { background-color:#333}
	.scrolled #open-button .nl2 { background-color:#333}
	.scrolled #open-button .nl3 { background-color:#333}
	.scrolled #open-button .navicon-line  { background-color:#333}
    .scrolled #open-button.on .navicon-line { background-color:#fff}
	
	/*버튼*/
	#open-button{position:fixed;z-index:12;right:15px;padding-top:18px;width:75px; height:80px;-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out;cursor:pointer;display:block; }
	#open-button .navicon-line{position:absolute;width:20px;height:2px;border-radius:1px;background:#fff;-webkit-transition:all .7s ease-out;-moz-transition:all .7s ease-out;-o-transition:all .7s ease-out;transition:all .7s ease-out}
	#open-button .nl1 {top: 11px;right: 10px; width:30px;}
	#open-button .nl2 {top: 19px;right: 10px; width:24px;}
	#open-button .nl3 {top: 27px;right: 10px; width:30px;}
	#open-button.on>div>div{transform:rotate(225deg);-ms-transform:rotate(225deg);-webkit-transform:rotate(225deg);width:25px;position:absolute;top:15px;right:10px;margin:0;padding:0;background-color:#fff;}
	#open-button.on>div>div:first-child{transform:rotate(135deg);-ms-transform:rotate(135deg);-webkit-transform:rotate(135deg)}
	#open-button.scrolled .navicon-line {background-color: #fff;}
	#open-button.on.scrolled >div>div{background-color:#333;}
	/*버튼*/
}