/*
Theme Name: Divi Child
Theme URI: http://www.cni.or.kr/
Description: Child theme for the Divi theme
Author: cnisystem
Author URI: http://www.cni.or.kr/
Template:  Divi
Version: 1.0
*/
@import url(../Divi/style.css);
@font-face {
  font-family: 'Noto Sans KR';
  src: url('fonts/NotoSansCJKkr-Thin.eot'); 
  src: url('fonts/NotoSansKR-Thin.woff') format('woff'), 
       url('fonts/NotoSansKR-Thin.woff2') format('woff2');
  font-style:   normal;
  font-weight:  200;
}
@font-face {
  font-family: 'Noto Sans KR';
  src: url('fonts/notokr-light.eot'); 
  src: url('fonts/notokr-light.woff') format('woff'), 
       url('fonts/notokr-light.woff2') format('woff2');
  font-style:   normal;
  font-weight:  300;
}
@font-face {
  font-family: 'Noto Sans KR';
  src: url('fonts/notokr-regular.eot'); 
  src: url('fonts/notokr-regular.woff') format('woff'), 
       url('fonts/notokr-regular.woff2') format('woff2');
  font-style:   normal;
  font-weight:  400;
}
@font-face {
  font-family: 'Noto Sans KR';
  src: url('fonts/notokr-medium.eot'); 
  src: url('fonts/notokr-medium.woff') format('woff'), 
       url('fonts/notokr-medium.woff2') format('woff2');
  font-style:   normal;
  font-weight:  500;
}
@font-face {
  font-family: 'Noto Sans KR';
  src: url('fonts/notokr-bold.eot'); 
  src: url('fonts/notokr-bold.woff') format('woff'), 
       url('fonts/notokr-bold.woff2') format('woff2');
  font-style:   normal;
  font-weight:  600;
}
a,
abbr,
acronym,
address,
applet,
b,
big,
blockquote,
body,
center,
cite,
code,
dd,
del,
dfn,
div,
dl,
dt,
em,
fieldset,
font,
form,
h1,
h2,
h3,
h4,
h5,
h6,
input,
textarea,
select,
html,
iframe,
img,
ins,
kbd,
label,
legend,
li,
object,
ol,
p,
pre,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
u,
ul,
var {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: 0 0;
    font-size: 100%;
    vertical-align: baseline;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
	font-family: 'Noto Sans KR', sans-serif !important;
	word-break:keep-all;
}

/*sub_menu*/

.sub_menu{
    position: absolute;
    width: 200px;
    left: 30px;
    top: 20px;
}

.sub_menu h2{
    background-color: #3d48d7;
    color: #fff;
    font-size: 1.5em;
    text-align: center;
    line-height: 100px;
}
.sub_menu .sub_menu_list{
    border: 1px solid #ccc;
    padding: 0;
}
.sub_menu .sub_menu_list li{
    list-style: none;
    width: 100%;
    border-bottom: 1px solid #cccccc;
    font-size: 16px;;
}
.sub_menu .sub_menu_list li:nth-of-type(7){
    border-bottom: 0;
}
.sub_menu .sub_menu_list li a{
    display: block;
    padding-left:10px ;
    background-color: #fff;
    color: #000;
    line-height: 40px;
    fontsize
}
.sub_menu .sub_menu_list li a span{
    display: inline-block;
}
.sub_menu .sub_menu_list li a.on{
    display: block;
    width: 100%;
    color: #fff;
    background-color: #666666;
}








.sub_menu02 h2{
    background-color: #0c4da1;
    color: #fff;
    font-size: 1.5em;
    text-align: center;
    line-height: 100px;
}
.sub_menu02 .sub_menu_list{
    border: 1px solid #ccc;
    padding: 0;
}
.sub_menu02 .sub_menu_list li{
    list-style: none;
    width: 100%;
    border-bottom: 1px solid #cccccc;
    font-size: 16px;;
}
/*
.sub_menu02 .sub_menu_list li:nth-of-type(7){
    border-bottom: 0;
}
*/
.sub_menu02 .sub_menu_list li a{
    display: block;
    padding-left:10px ;
    background-color: #fff;
    color: #000;
    line-height: 40px;
    font-size: 16px;
}
.sub_menu02 .sub_menu_list li a span{
    display: inline-block;
}
.sub_menu02 .sub_menu_list li a.on{
    display: block;
    width: 100%;
    color: #fff;
    background-color: #0c4da1;
}

/* 회사연혁 */
.company-history-new-year {
    display: flex;
    align-items: center;
    gap: 20px;
    position: relative;
    color: #000;
    font-weight: bold;
    margin-bottom: 20px;
}
.company-history-new-year::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 5px;
    height: 100%;
    background-color: #7a7b7b;
}
.company-history-new-year::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border: 3px solid #000;
    border-radius: 50%;
    background-color: #fff;
}
/* 년도, 내용 교차 order기본값0 */

/* 기존 방법 */

.company-history-new-year:nth-child(even) div:nth-child(odd) {
    order: 1;
    text-align: left;
}
.company-history-new-year:nth-child(even) div:nth-child(even) {
    text-align: right;
}
.company-history-new-year:nth-child(odd) div:nth-child(even) {
    order: 2;
}
.company-history-new-year:nth-child(odd) div:nth-child(odd) {
    text-align: right;
}
.company-history-new-year:nth-child(even) {
    border-right: 5px solid #aaa;
    border-left: 5px solid #eee;
}
.company-history-new-year:nth-child(odd) {
    border-left: 5px solid #aaa;
    border-right: 5px solid #eee;
}


/* 1번 방법 */

/*
.company-history-new-year:nth-child(even) div:nth-child(odd) {
    order: 1;
    text-align: left;
}
.company-history-new-year:nth-child(even) div:nth-child(even) {
    text-align: left;
}
.company-history-new-year:nth-child(odd) div:nth-child(even) {
    order: 2;
}
.company-history-new-year:nth-child(odd) div:nth-child(odd) {
    text-align: right;
}
.company-history-new-year:nth-child(even) {
    border-right: 5px solid #aaa;
    border-left: 5px solid #eee;
}
.company-history-new-year:nth-child(odd) {
    border-left: 5px solid #aaa;
    border-right: 5px solid #eee;
}
*/


/* 2번 방법 */

/*
.company-history-new-year div {
    text-align: right;
}
.company-history-new-year div:nth-child(even) {
    text-align: left;
}
.company-history-new-year:nth-child(even) {
    border-right: 5px solid #aaa;
    border-left: 5px solid #eee;
}
.company-history-new-year:nth-child(odd) {
    border-left: 5px solid #aaa;
    border-right: 5px solid #eee;
}
*/


.year,
.desc {
    flex: 1;
    padding: 30px;
}
.year {
    font-size: 50px;
}
.desc {
    line-height: 1.5;
    font-size: 15px;
}
.desc em {
    font-size: 22px;
    font-weight: bold;
    font-style: normal;
}
.new-desc {
    white-space: normal;
}
@media (max-width: 400px) {
    .year,
    .desc {
        padding: 10px;
    }
    .year {
        font-size: 30px;
    }
    .desc {
        font-size: 12px;
    }
    .desc em {
        font-size: 17px;
    }
}

#top-menu > li > a::after {
    display: none !important;
}
.et-menu .menu-item-has-children>a:first-child:after {
    display: none !important;
}

#top-menu li {
    padding-right: 100px;
}
.et-menu .menu-item-has-children>a:first-child {
    padding-right: 50px;
}
.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li>a {
    padding-bottom: 10px;
}

.et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a {
    padding: 14px 0;
}

.et_pb_menu_0_tb_header .mobile_nav .mobile_menu_bar:before {
    color: #1d285d; !important;
}

.et_mobile_menu {
    border-top: 3px solid #1d285d;
}

.menu-item-type-custom > .sub-menu {
    border: none;
    width: 120px;
    padding: 0 !important;

/*
    padding-bottom: 0 !important;
    padding-left: 11px !important;
    padding-right: 11px !important;
*/
}

#menu-item-819 {
    padding-left: 0px;
}

.menu-item-type-custom > a {
    padding-bottom: 0px !important;
}

.menu-item-type-custom > .sub-menu > li {
    padding: 0 !important;
}

.menu-item-type-custom > .sub-menu > li > a {
    width: 120px !important;
    font-size: 12px !important;
    padding: 0 !important;
    text-align: center;
    background-color: rgb(239,239,239);
    border: 1px solid #005493;
}

@media (min-width: 981px) {
    header .et_pb_gutters3 .et_pb_column_3_5 {
        width: 66.8%;
    }
    header .et_pb_gutters3 .et_pb_column_1_5 {
        width: 13.6%;
    }
    .et_pb_gutters3 .et_pb_section_0_tb_header .et_pb_column_3_5,
    .et_pb_gutters3 .et_pb_section_0_tb_header .et_pb_column_1_5 {
        margin-right: 3%;
    }
}

/* footer */
/* --- 푸터 레이아웃 기본 설정 --- */
#main-footer {
    border-top: 1px solid #fff;
    background-color: #222; 
}

#footer-widgets {
    padding: 3% 0;
}

/* --- [중앙정렬] 푸터 상단 메뉴 버튼 --- */
.footer_ul {
    display: flex;
    justify-content: center; /* 메뉴 덩어리 전체를 중앙으로 */
    align-items: center;
    flex-wrap: wrap;        
    list-style: none !important;
    padding: 0 !important;
    margin: 0 auto 20px auto !important; /* 아래 텍스트와 간격 벌림 */
}

.footer_ul li {
    display: flex;
    align-items: center;
}

.footer_ul li::before {
    display: none !important; 
}

.footer_ul a {
    color: #fff;
    text-decoration: none;
    border-right: 1px solid #fff; 
    padding: 0 30px; /* 좌우 동일 간격으로 중앙 정렬 유지 */
    line-height: 1.2;
    display: inline-block;
}

/* 첫 번째 메뉴 왼쪽 패딩 제거 (완벽한 중앙 조절용) */
.footer_ul li:first-child a {
    padding-left: 0;
}

/* 마지막 메뉴 오른쪽 선 제거 */
.footer_ul li:last-child a {
    border-right: 0px !important;
    padding-right: 0;
}

/* --- [왼쪽정렬] 하단 정보 텍스트 --- */
.footer-text {
    font-size: 15px;
    color: #fff;
    text-align: left; /* 여기를 왼쪽 정렬로 고정 */
    width: 100%;
    display: block;
}

#footer-widgets .footer-widget {
    text-align: left !important; /* 위젯 영역 전체 왼쪽 정렬 */
}

#footer-widgets .footer-widget li {
    padding-left: 0px !important;
    text-align: left !important;
}

/* 우측 상단 이미지 (기존 유지) */
#footer-widgets .footer-widget .textwidget img {
    float: right;
    margin-top: -70px;
}

/* --- 모바일 및 태블릿 대응 (반응형) --- */
@media (max-width: 980px) {
    .footer_ul {
        padding: 0 20px !important;
        justify-content: center; /* 모바일에서도 메뉴는 중앙 */
    }

    .footer_ul a {
        padding: 0 15px; 
        font-size: 13px;
        margin: 5px 0;
    }

    /* 모바일에서는 텍스트도 읽기 편하게 중앙으로 바꿀지 선택 가능 */
    /* 현재 요청대로 왼쪽 정렬을 유지합니다 */
    .footer-text, 
    #footer-widgets .footer-widget {
        text-align: left !important;
    }

    #footer-widgets .footer-widget .textwidget img {
        float: none !important;
        margin: 20px 0 0 0 !important; /* 왼쪽 정렬에 맞춰 여백 조정 */
        display: block;
    }
}

@media (max-width: 479px) {
    .footer_ul a {
        padding: 0 10px;
        font-size: 12px;
    }
}

/* 네비게이션 */
.lnb,
.lnbb {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #960000;
}

.lnbb ul li {
    background-color: #fff;
    border-bottom: 1px solid #000;
}

.lnb ul,
.lnbb ul{
    width: 1280px;
    display: flex;
    justify-content: space-around;
    padding: 0;
    line-height: 60px;
}

.lnb ul li,
.lnbb ul li{
    display: flex;
    justify-content: center;
    width: 100%;
}

.lnb ul li a {
    width: 100%;
    /*    padding-left: 20px;*/
    display: flex;
    justify-content: center;
    background-color: #960000;
    color: #fff;
    font-weight: 600;
    font-size: 18px;
}

.lnbb ul li a {
    color: #000e;
}

.lnb ul li a:hover,
.lnb ul li a.on {
    background-color: #fff;
    color: #960000;
}

.lnb ul li #sub07:hover {
    background-color: #960000;
}
.lnbb ul li a {
    color: #000;
    width: 100%;
    text-align: center;
}
.lnbb ul li.om {
    border-top: 1px solid #000;
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    border-bottom: 0px;
}
.mobile_menu_bar::before {
    color: #000;
}
.et_mobile_menu {
    border-top: 3px solid #fff;
}
@media (max-width: 900px) {
    .lnb ul,
    .lnbb ul {
        flex-wrap: wrap;
    }
}

