@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700;900&display=swap');

/* reset */
@media all {
    .clear:after { 
        content:"";
        display:block;
        clear:both;
    }
    * { margin:0; padding:0; outline:none; box-sizing:border-box;}
    html {scroll-behavior: smooth;}
    body {
    line-height:1; font-size:14px; font-weight:400; color:#000; font-family: 'Noto Sans KR', sans-serif !important; word-wrap: break-word; word-break: keep-all;
    }
    h1, h2, h3, h4, h5, h6 { margin:0; font-family: 'Noto Sans KR', sans-serif !important; line-height:1; font-size: 1em; }
    ul, ol { list-style:none; margin:0; padding: 0; }
    a { outline:0; text-decoration:none; color: #000; font-family: 'Noto Sans KR', sans-serif !important; }
    a:focus { outline:none; }
    figure,dl,dd,input[type=radio], input[type=checkbox]  { margin: 0; padding: 0; }
    img { border:none; outline:none; max-width: 100%; }
    p { margin:0; padding:0; word-wrap: break-word; word-break: keep-all;  }
    button, input, submit { border: none; background: none; }
    dt { font-weight: normal; }
    ::placeholder { font-family: 'Noto Sans KR', sans-serif !important; }
    input:-webkit-autofill,
    input:-webkit-autofill:hover,
    input:-webkit-autofill:focus,
    input:-webkit-autofill:active {
        transition: background-color 5000s ease-in-out 0s;
        -webkit-transition: background-color 9999s ease-out;
        box-shadow: none !important;
        -webkit-text-fill-color: none !important;
    }
}   

/* 탭 초기화 */
.tabBox1 .nav { border: none; }
.tabBox1 .nav > li { margin: 0; float: none; }
.tabBox1 .nav > li > a { padding: 0; margin: 0; border-radius:0; border: 0; }
.tabBox1 .nav > li:hover > a { background: none; }
.tabBox1 .nav > li.active > a { border: none; background: none; }

:root {
	/* 컨텐츠 너비 */
	--containerV1-width : 1400;

	--main-color : #e7372f; /* mainColor */	
	--main-color2 : #282e4a; /* mainColor2 */	
    --basic-border-color: #e7372f;	/* 게시판 및 게시판헤드 등 기타 버튼들 border 컬러 */

    /* 해드 전체적인 사이즈 조절하고 싶을 때 여기서 수정 */
    --header-height: 100px;
}

/* container */
.containerV1 { width: 100%; margin: 0 auto; max-width: calc(var(--containerV1-width) * 1px); }
@media (max-width:1430px) {
	.containerV1 { padding: 0 15px; }
}

/* 확대 축소 애니메이션 */
@keyframes ani_scale1 {
	50% { transform:scale(1.005); }
}
@keyframes ani_scale2 {
	50% { transform:scale(1.04); }
}
@keyframes ani_scale3 {
	50% { transform:scale(1.00); }
}

/* .ikwrap { overflow-x: hidden; } */

/* 게시판 글 없을 때 */
.post-none { font-size: 16px;}


/*--------------------------------------------------- 해드세팅 ----------------------------------------------------------------------------*/
/* 해드세팅 */
@media all {
    .header_wrap { 
        --transtion:0.4s;
        --theme-item-color: #fff;
        --theme-item-color-rgb1 : 255;
        --theme-item-color-rgb2 : 255;
        --theme-item-color-rgb3 : 255;
        --head-font-size-pc: 18;
        --head-font-size-mob: 15;
        font-size: min(calc(var(--head-font-size-mob) / 350 * 100vw), calc(var(--head-font-size-pc) * 1px));
        position:fixed; right:0; top:0; width:100%; z-index:2000; transition:var(--transtion);
        background: var(--theme-bg-color);
    }
    
    #header { 
        display:flex; justify-content:space-between; align-items:center;
    }

    #header .logo {
        --logo-width:132;
        --logo-height:71;
        width:calc(var(--logo-width) * 1px);
        height:calc(var(--logo-height) * 1px);
    }
    #header .logo a {
        display: block;
        width: 100%; height: 100%;
        background-repeat: no-repeat; background-size: cover;
        background-position: center;
        background-image: url('img/logo.png');
    }
    
    
    /* menu */
    /*---------------------------------------- outer ---------------------------------------------*/
    #h_menu .outer > li { position: relative; }
    #h_menu .outer > li > a { display:block; font-size:inherit; }
    /*---------------------------------------- //outer ---------------------------------------------*/
    
    
    /*---------------------------------------- inner ---------------------------------------------*/
    
    #h_menu .outer > li > .inner > li > a  { display:block; font-size:0.83em; }
    /*---------------------------------------- //inner ---------------------------------------------*/


    .header_wrap .open_btn,
    .header_wrap .close_btn,
    .header_wrap .mob_logo_icon {display: none;}

    
    /* 스크롤 했을 때 해드 효과 */
    .header_wrap.scroll { 
        --theme-bg-color : #fff;
        --theme-item-color: #000;
        --theme-item-color-rgb1 : 0;
        --theme-item-color-rgb2 : 0;
        --theme-item-color-rgb3 : 0;
        box-shadow:0 0 5px rgba(0,0,0,0.1);
    }
    
}



@media (min-width:992px) {/* pc */
    /* 소메뉴 효과 */
    @keyframes head-inner-ani1 {
        0%{ transform:translateX(-10%); }
        70%{ transform:translateX(10%); }
        100%{ transform:translateX(0); }
    }

    /* pc - menu */
    /*---------------------------------------- pc - outer ---------------------------------------------*/
    #h_menu { display:flex; align-items:center; }
    #h_menu .outer { -ms-display:flex; display:flex; gap:max(1.5em,calc(70 / 1920 * 100vw));}
    
    #h_menu .outer > li > a {
        transition:var(--transtion); color: var(--theme-item-color); 
        height: var(--header-height); 
        line-height: var(--header-height);
        font-weight: bold;
    }
    #h_menu .outer > li > a .icon { display: none; }
    #h_menu .outer > li > a::before{
        content: "";
        position: absolute;
        width: 0%;
        height: 2px;
        background: var(--theme-item-color);
        top: 70%;
        transform: translateY(70%);
        transition: all 0.3s;
    }
    /*---------------------------------------- // pc -outer ---------------------------------------------*/


    /*---------------------------------------- pc - inner ---------------------------------------------*/
    #h_menu .outer > li > .inner {
    --inner-border-color:#dfdfdf;
    position:absolute; left:50%; top:100%; transform:translateX(-50%); z-index:1;
    width:11.111em; visibility:hidden; opacity: 0; 
    }
    #h_menu .outer > li > .inner > li {
    position: relative;
    box-shadow: 2px 2px 8px rgb(0 0 0 / 20%);
    background-color: #fff;
    border: 1px solid var(--inner-border-color);
    visibility:hidden; opacity: 0;
    }
    #h_menu .outer > li > .inner > li > a  { transition:var(--transtion); font-weight: 500; padding:0.83em 1.1em; text-align:center; color: #888; }
    /*---------------------------------------- // pc - inner ---------------------------------------------*/

    /* pc - hover */
    /* #h_menu .outer > li:hover > a {color: var()} */
    #h_menu .outer > li:hover > a::before { width: 100%; }
    #h_menu .outer > li.hover > a {color: rgba(var(--theme-item-color-rgb1),var(--theme-item-color-rgb2),var(--theme-item-color-rgb3),0.6); }
    #h_menu .outer > li:hover > .inner { visibility:visible; opacity: 1; z-index: 2; } 
    #h_menu .outer > li:hover > .inner > li { 
    visibility:visible; opacity: 1; animation:head-inner-ani1 0.3s; animation-fill-mode:forwards; animation-delay:calc( var(--i) * 0.1s );
    transition:var(--transtion); transition-delay:calc( var(--i) * 0.1s );
    } 
    #h_menu .outer > li > .inner > li > a:hover { color:var(--main-color);} 
    

    /* pc - 페이지 및 게시판 이동하면 해당 메뉴 스타일 */
    #h_menu .outer > li > a.on::before{width: 100%;} 

    /* pc - 스크롤 */
}

@media (992px <= width <= 1500px) {
    #h_menu .outer > li:last-child > .inner {
        transform: translateX(-85%);
    }
}

@media (max-width: 1430px) {
    #header .logo {
        --logo-width:102;
        --logo-height:53;
    }
}

@media (max-width:991px) {/* 모바일 */
    :root {
        --header-height: 60px;
    }

    /* .header_wrap {--theme-item-color: #000;} */

    #header { height: var(--header-height);}

    #header .logo {
        --logo-width: 92;
        --logo-height: 48;
    }

    /* 모바일 열기 버튼 */
    .header_wrap .open_btn { cursor:pointer; color:var(--theme-item-color); font-size: 22px; }

    .menu_box { 
    --size-close-font:22px;
    --transition:0.4s;
    position: fixed; right: 0; top: 0; width: 300px; 
    height: 100%; z-index:9999; background: #fff; 
    transform:translateX(120%); transition:var(--transition); 
    }

    .header_wrap .open_btn,
    .header_wrap .close_btn,
    .header_wrap .mob_logo_icon {display: block;}

    /* 모바일닫기버튼 */
    .close_btn { 
        font-size: var(--size-close-font);
        position: absolute; left: -0.2em; top: 0.2em; transform: translateX(-100%);
        width:1.6em; height:1.6em; cursor:pointer; background: #fff; border-radius:0.2em; z-index: 9999;
    }
    .close_btn > i { display:block; color:#000; text-align:center; line-height:1.65em; font-size:1em; }


    #h_menu { 
    width: 100%; height: 100%; overflow-x: hidden; overflow-y:auto; position: absolute;  top:0;
    display:grid; align-items:start; align-content:start; padding: 0 15px;
    }
    .menu_box_bg { position: absolute; right: 0; top: 0; z-index:8000; width: 100%; height: 100vh; background: rgba(0,0,0,0.9); }

    .menu_box #h_menu .mob_logo_icon {display: flex !important; padding-top: 20px; justify-content: center;}
    .menu_box #h_menu .mob_logo_icon > a {width: 100px;}



    .menu_box #h_menu .outer { display:grid; grid-row: 3; padding-top: 1.5em; position: relative;}
    .menu_box #h_menu .outer > li > a { 
        font-weight: bold; pointer-events: none; position: relative;
        padding: 0.8em 1em; font-size: 1em;
    }

    .menu_box #h_menu .outer > li:last-child > a {pointer-events:all;}

    .menu_box #h_menu .outer > li > a:after {
        content: '\f107'; font-family: fontAwesome; position: absolute; right: 1em; top: 50%;
        transform: translateY(-50%); font-size: 0.8em; font-weight: normal; color: #313131;
    }
    
    .menu_box #h_menu .inner {
    padding: 0.5em 1.2em 1em;
    display:grid; grid-template-columns:1fr; gap:0; position: relative; justify-content: center;
    display: none; background: #f4f4f4;
    }
    .menu_box #h_menu .inner > li:not(:last-child) > a { border-bottom: 1px solid #eee; }
    .menu_box #h_menu .inner > li > a { position: relative;  padding: 0.8em 0.5em; font-weight: 500;}

    /* 모바일메뉴박스 보이게 하는 클래스 */
    .menu_box.inactive { transform:translateX(0); } 

    /* on */
    .menu_box #h_menu .outer > li > a.on { color: var(--main-color); }

    .menu_box #h_menu .outer > li.on .inner { display: grid; }

    .header_wrap .langBox {
        margin-left: 0; padding-top: 1.5em; 
        grid-row: 2; justify-content: center; width: 100%;
    }
    .header_wrap .langBox img {filter: brightness(0); display: none;}
    .header_wrap .langBox .list {color: #000; padding-right: 0; width: 100%;}
    .header_wrap .langBox .list > ul {display: flex; gap: 10px; height: fit-content; justify-content: center;}
    .header_wrap .langBox .list > i {display: none;}
    .header_wrap .langBox .list > ul > li {
        background: var(--main-color); color: #fff;
        width: 40%; height: 28px; border-radius: 30px;
        display: flex; align-items: center; justify-content: center;
    }
}
/*--------------------------------------------------- 해드세팅 끝 ----------------------------------------------------------------------------*/



/*--------------------------------------------------- 인덱스세팅 ----------------------------------------------------------------------------*/
#main > .section {font-size: min(calc(10 / 450 * 100vw), 10px);}
#main .sub_tag {color: #dd3d36; font-size: 2.5em; line-height: 1.2; margin-bottom: 0.4em; display: inline-block;}
#main .title-V1 {font-size: 5em; font-weight: bold; color: #000; line-height: 1.2; margin-bottom: 0.5em;}
#main .title-V2 {font-size: 2.5em; font-weight: bold; line-height: 1.2;}
#main .text1 {color: #434343; font-size: 1.8em; line-height: 1.6;}

#main #titleBox {
    font-size: min(calc(10 / 550 * 100vw), 10px);
    margin-bottom: 5.2em;
}
#main .item_btn {
    --line-color: #0e1742;

    font-size: min(calc(10 / 450 * 100vw), 10px);
    width: 100%; max-width: 12.3em; height: 4.4em; display: flex; position: relative; transition: 0.3s;
    align-items: center; border-right: 1px solid  var(--line-color); overflow: hidden;
}
#main .item_btn .box {
    position: absolute; z-index: 1;
    border: 1px solid var(--line-color); height: 100%; border-right: none;
    width: 75px; right: 0; bottom: 0; transition: 0.3s; border-left: none;

    transition: 0.5s;
}
#main .item_btn .box::before,
#main .item_btn .box::after {
    content:''; position: absolute; background: var(--line-color);
    width: 1px; left: 0; height: 7px;
}
#main .item_btn .box::before {top: 0;}
#main .item_btn .box::after {bottom: 0;}

#main .item_btn > span {
    position: relative; z-index: 2; color: #434343; font-size: 1.6em; line-height: 1.2;
    display: flex; align-items: center; gap: 7px; padding: 4px 0 5px;

    transition: 0.5s;
}
#main .item_btn > span > i {color: #000; font-size: 1.3em; position: relative; top: 1px;}


@media (min-width: 992px) {
    #main .item_btn:hover > span {transform: translateX(30%); font-weight: bold; color: var(--main-color);}
}

@media (max-width: 680px) {
    #main #titleBox {text-align: center;}
}



/* section1 */
#main .section1 {padding: 11em 0 13.5em;}
#main .section1 .itemBox {display: grid; gap: 4.2em; grid-template-columns: repeat(2, 1fr);}
#main .section1 .itemBox .item {
    --P-right: 4.8;
    --P-bottom: 4;

    border-radius: 30px; background: #fff; position: relative;
    padding: 8.6em calc(var(--P-right) * 1em) calc(var(--P-bottom) * 1em) 7em;
    border: 1px solid #000;
}
#main .section1 .itemBox .item.left {border-color: #0e1742;}
#main .section1 .itemBox .item.left .icon img {width: 7.2em; height: 7.2em;}
#main .section1 .itemBox .item.right {border-color: var(--main-color);}
#main .section1 .itemBox .item.right .icon img {width: 7.4em; height: 6.5em;}

#main .section1 .itemBox .item .content {position: relative; z-index: 1; padding-bottom: 5.3em;}
#main .section1 .itemBox .item .content > h3 {
    font-size: 3.5em; color: #000; line-height: 1.2; 
    font-weight: bold; margin-bottom: 0.8em;
}
#main .section1 .itemBox .item .content > p.text1 {margin-bottom: 1.8em;}

#main .section1 .itemBox .item .icon {
    position: absolute; bottom: calc(var(--P-bottom) * 1em); 
    right: calc(var(--P-right) * 1em);
}

@media (max-width: 1430px) {
    #main .section1 .itemBox .item .content > p.text1 br {display: none;}
}

@media (max-width: 991px) {
    #main .section1 .itemBox {grid-template-columns: repeat(1, 1fr);}
    #main .section1 .itemBox .item .content > p.text1 br {display: block;}
}

@media (max-width: 880px) {
    #main .section1 #titleBox .text1 br {display: none;}
    #main .section1 .itemBox .item {padding: 6.5em calc(var(--P-right) * 1em) calc(var(--P-bottom) * 1em);}
    #main .section1 .itemBox .item .content > p.text1 br {display: none;}
}



/* section2 */
#main .section2 {padding: 0 0 12.6em; overflow: hidden; position: relative; padding-top: 11.3em;}
#main .section2 .containerV1 {position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: 2;}
#main .section2 #titleBox {margin-bottom: 0;}
#main .section2 .item_container {position: relative; padding: 19.3em 25px 18.3em;}

#main .section2 .item_container .bg_box {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    z-index: 1;
}
#main .section2 .item_container .bg_box .bg_item {position: absolute;}

#main .section2 .item_container .bg_box .bg_item.left {
    background: #ed6963; width: 100.4em; height: 67.3em; 
    bottom: 0; left: 0; z-index: 1; overflow: hidden;
}
#main .section2 .item_container .bg_box .bg_item.left h1.bg_logo {
    position: absolute; bottom: 0; left: 0; white-space: nowrap;
    font-size: 15.2em; color: rgba(255,255,255,0.2);
    animation: slogan_ani1 30s linear infinite; cursor: default;
}

@keyframes slogan_ani1 {
	0%{ transform:translateX(-40%); }
	100%{ transform:translateX(0%); }
}

#main .section2 .item_container .bg_box .bg_item.right {
    background: url('img/sec2_bg01.jpg') no-repeat center center / cover;
    width: 102.9em; height: 69.6em; top: 0; right: 0; z-index: 2;
}

#main .section2 .item_container .itemBox {
    position: relative; z-index: 2;
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px;
}
#main .section2 .item_container .itemBox .item {
    padding: 7em 15px 6.3em; background: rgba(255,255,255,85%); border-radius: 30px;
    display: flex; flex-direction: column; align-items: center; text-align: center;
}
#main .section2 .item_container .itemBox .item .title-V2 {color: var(--main-color2); margin: 0.7em 0 1em;}
#main .section2 .item_container .itemBox .item .text1 {line-height: 1.4; margin-bottom: 1.2em;}


/* dada-scroll */
#main .section2 .bg_box .bg_item.right {transition: 2s 0.2s;}
#main .section2 .bg_box .bg_item.right[data-scroll="out"] {transform: translateX(10%); opacity: 0;}


#main .section2 .itemBox > .item {transition: 1s;}
#main .section2 .itemBox > .item:first-child {transition-delay: 0.1s;}
#main .section2 .itemBox > .item:not(:first-child) {transition-delay: calc((var(--index) + 1) * 0.1s);}
#main .section2 .itemBox > .item[data-scroll="out"] {transform: translateY(10%); opacity: 0;}


@media (min-width: 992px) {
    #main .section2 .item_container .itemBox .item .title-V2 br {display: none;}
}


@media (max-width: 1680px) {
    #main .section2 .item_container .itemBox {grid-template-columns: repeat(3, 1fr);}
}

@media (992px <= width <= 1680px ) {
    #main .section2 {padding-top: 6.3em;}
    #main .section2 .item_container .bg_box .bg_item.left {width: 70%; height: 85%;}
    #main .section2 .item_container .bg_box .bg_item.right {width: 58%; height: 76%; top: 12em; background-position: right center;}
}

@media (max-width: 991px) {
    #main .section2 .item_container {padding: 19.3em 15px 18.3em;}
    #main .section2 .item_container .bg_box .bg_item.left {width: 92%; height: 85%;}
    #main .section2 .item_container .bg_box .bg_item.right {width: 75%; height: 50%; top: 12em; background-position: right center;}
    #main .section2 .item_container .itemBox .item {padding: 4em 15px 3.3em;}
    #main .section2 .item_container .itemBox .item .text1 br {display: none;}
}

@media (651px <= width <= 991px ) {
    #main .section2 .item_container .itemBox .item .text1 {height: 4em;}
}

@media (max-width: 800px) {
    #main .section2 #titleBox .title-V1 br {display: none;}
}

@media (max-width: 768px) {
    #main .section2 .item_container .bg_box .bg_item.left {width: 100%; height: 85%;}
    #main .section2 .item_container .itemBox {grid-template-columns: repeat(2, 1fr);}
}

@media (max-width: 650px) {
    #main .section2 {padding-top: 25em;}
    #main .section2 .item_container {padding-top: 8.3em;}
    #main .section2 .item_container .itemBox {grid-template-columns: repeat(1, 1fr);}
    #main .section2 .item_container .itemBox .item .title-V2 br {display: none;}

    #main .section2 .item_container .bg_box .bg_item.left {height: 100%;}
    #main .section2 .item_container .bg_box .bg_item.right {width: 100%; height: 20%; top: 50%; transform: translateY(-50%);}

    /* data-scroll */
    #main .section2 .bg_box .bg_item.right[data-scroll="out"] {transform: translateX(20%) translateY(-50%); opacity: 0;}
}




/* section3 */
#main .section3 {padding: 0 0 14.7em;}
#main .section3 .itemBox {display: flex; flex-direction: column; gap: 6.7em;}
#main .section3 .itemBox .item {display: flex; align-items: center;}
#main .section3 .itemBox .item01 {gap: 6em;}
#main .section3 .itemBox .item02 {gap: 3em;}
#main .section3 .itemBox .item .img_box {--img-height: 41.3;}
#main .section3 .itemBox .item .img {
    overflow: hidden; border-radius: 30px;
}
#main .section3 .itemBox .item .list {flex: 1;}
#main .section3 .itemBox .item .list ul > li:not(:last-child) {margin-bottom: 7em;}
#main .section3 .itemBox .item .list h3 {
    font-size: 2.7em; color: #000; line-height: 1.2; margin-bottom: 0.8em;
    position: relative; padding-left: 1.8em; font-weight: bold;
}
#main .section3 .itemBox .item .list h3 > span {position: absolute; top: 0; left: 0; color: var(--main-color2);}
#main .section3 .itemBox .item .list p.text1 .color-tag {color: #e7372f; font-weight: bold;}

/* data-scroll */
#main .section3 .itemBox .item .img {transition: 1s 0.1s;}
#main .section3 .itemBox .item .img[data-scroll="out"] {opacity: 0; transform: translateY(10%);}


@media (min-width: 992px) {
    #main .section3 .itemBox .item .img_box {
        font-size: min(calc(10 / 1430 * 100vw), 10px);
    }
    #main .section3 .itemBox .item:nth-child(even) .img_box {order: 2;}
}

@media (min-width: 769px) {
    #main .section3 .itemBox .item .img_box {height: calc(var(--img-height) * 1em); display: flex; align-items: center;}
    #main .section3 .itemBox .item .img {height: calc(var(--img-height) * 1em); display: flex; align-items: center;}
    #main .section3 .itemBox .item .img img {width:63.3em; min-height: calc(var(--img-height) * 1em);}

    /* data-scroll */
    #main .section3 .itemBox .item .img {transition: 2s 0.1s;}
    #main .section3 .itemBox .item .img[data-scroll="out"] {height: 100px;}
}

@media (max-width: 1430px) {
    #main .section3 .itemBox .item .list ul > li .text1 br {display: none;}
}

@media (max-width: 991px) {
    #main .section3 .itemBox .item {flex-direction: column;}
}

@media (max-width: 991px) {
    #main .section3 .itemBox .item .list {width: 95%;}
    #main .section3 .itemBox .item .list ul > li {
        display: flex; flex-direction: column; width: 100%; 
        max-width: 740px;
    }

    #main .section3 .itemBox .item .list ul > li:first-child {margin-right: auto;}

    #main .section3 .itemBox .item .list ul > li:last-child {
        text-align: right;  margin-left: auto;
    }

    #main .section3 .itemBox .item .list ul > li:last-child h3 {align-self: end;}
    #main .section3 .itemBox .item .list ul > li:last-child h3 span {position: relative;}
}

@media (max-width: 768px) {
    #main .section3 #titleBox br {display: none;}
}



/* section4 */
#main .section4 {
    position: relative;
    padding: 14em 0 11.8em;
    overflow: hidden; background: #000;
}

#main .section4::before {
    content:''; position: absolute; top: 50%; left: 50%; z-index: 1;
    transform: translate(-50%, -50%); width: 100%; height: 100%;
    background: url('img/sec4_bg.jpg') no-repeat center center / cover;
}
#main .section4 .containerV1 {position: relative; z-index: 2;}
#main .section4 #titleBox {
    --sec4-title-color: #fff;
    text-align: center; margin-bottom: 0;
}
#main .section4 #titleBox .sub_tag {
    font-weight: bold; margin-bottom: 0.7em;
    text-shadow: 1px 1px 4px rgba(255,255,255,0.5);
}
#main .section4 #titleBox .title-V1 {
    font-size: 4.5em; color: var(--sec4-title-color);
    line-height: 1.4;
}
#main .section4 #titleBox .item_btn {
    --line-color: var(--sec4-title-color);
    margin: 0 auto;
}
#main .section4 #titleBox .item_btn > span {color: var(--sec4-title-color);}
#main .item_btn > span > i {color: var(--sec4-title-color);}

/* data-scroll */
#main .section4::before {transition: 2s 0.4s;}
#main .section4[data-scroll="out"]::before {transform: translate(-50%, -50%) scale(1.2);}


@media (max-width: 768px) {
    #main .section4::before {background-position: left center;}
}




/* section5 */
#main .section5 {padding: 11.4em 0 11.5em;}
#main .section5 .widget_box {overflow: hidden; margin-bottom: 6.6em;}
#main .section5 .item_btn {margin: 0 auto;}



/* section6 */
#main .section6 {
    padding: 7.5em 0;
    position: relative; background: url('img/sec6_bg.jpg') no-repeat center center / cover;
}

#main .section6::before {
    content:''; position: absolute; top: 0; left: 0;
    width: 100%; height: 100%; z-index: 1;
}

#main .section6 .containerV1 {position: relative; z-index: 2;}
#main .section6 .gridBox {display: grid; grid-template-columns: 1fr 720px; gap: 30px;}
#main .section6 .gridBox .left {padding-top: 4.3em;}
#main .section6 .gridBox .left .title_box {
    position: relative; padding-bottom: 3.5em; margin-bottom: 2.5em;
}
#main .section6 .gridBox .left .title_box::before {
    content:''; position: absolute; bottom: 0; left: 0; background: #fff;
    width: 9em; height: 1px;
}
#main .section6 .gridBox .left .title_box .title {
    font-size: 4.5em; color: #dd3d36; font-weight: bold;
    line-height: 1.2; margin-bottom: 0.5em;
}
#main .section6 .gridBox .left .title_box .title-V2 {color: #fff; line-height: 1.4;}
#main .section6 .gridBox .left .title_box .title-V2 .br_1 {display: none;}

#main .section6 .gridBox .left .text_box h4 {
    color: var(--main-color2); font-weight: 900;
    line-height: 1.2; font-size: 1.8em;
}
#main .section6 .gridBox .left .text_box .text1 {color: #fff; position: relative; padding-left: 4.5em;} 
#main .section6 .gridBox .left .text_box .text1 span {position: absolute; top: 0; left: 0;}


@media (max-width: 1430px) {
    #main .section6 .gridBox {grid-template-columns: 1fr;}
}

@media (max-width: 768px) {
    #main .section6 .gridBox .left .text_box h4 {color: #4c64d5;}
}

@media (max-width: 500px) {
    #main .section6 .gridBox .left .title_box .title-V2 .br_1 {display: block;}
    #main .section6 .gridBox .left .title_box .title-V2 .br_2 {display: none;}
}

/*--------------------------------------------------- 인덱스세팅 끝 ----------------------------------------------------------------------------*/



/*--------------------------------------------------- 푸터세팅 ----------------------------------------------------------------------------*/
/* footer*/
    footer {
        --footer-font : 16px;
        background: #4e4e4e;; position: relative;
    }
    footer > .contents_box {padding: 44px 0 0;}
    footer .contents {
        display:flex; align-items: flex-start;
        justify-content: space-between;
        align-items: center; gap: 120px;
    }
    footer .contents > li { font-weight: 400;}
    
    footer .item1 {padding-top: 10px; padding-left: 5px;}
    footer .item2 {display: flex; flex-direction: column; flex: 1;}
    footer .item2 > div { 
        line-height: 1.7; font-size: var(--footer-font); color: #fff;
    }
    footer .item2 > div a { color: inherit;}
    footer .item2 > .text > span { 
        position: relative; font-weight: inherit; margin-right: 15px;
    }
    footer .item2 > .text > span:after { 
        content:'|'; position:absolute; right: -13px; top:55%;
        transform:translateY(-55%); 
    }
    footer .item2 > .text > span:last-child:after { display: none; }

    footer .item3 {display: flex; align-items: center; gap: 23px;}
    footer .item3 > a {
        width: 100%; width: 200px; height: 55px; background: #fff;
        display: flex; align-items: center; justify-content: center;
        color: #000; gap: 3px; transition: 0.2s;
    }
    footer .item3 > a > span {font-size: 16px;}
    footer .item3 > a > i {font-size: 20px;}



    footer .copy {
        font-size: min(3.50vw, 14px); color: #fff;
        font-weight: inherit; line-height: 1.3;
    }
    footer .copy a {color: #fff;}
    
    footer .list_box1 {
        display: flex; gap: 0 15px; padding: 22px 0 20px;
        margin-top: 60px; justify-content: center;
    }
    footer .list_box1 span {position: relative; font-size: var(--footer-font);}
    footer .list_box1 span a {color: #fff;}
    footer .list_box1 span::before {
        content: ""; position: absolute; width: 1px; height: 17px; 
        background: #fff; right: -8px; top: 55%; transform: translateY(-50%);
    }
    footer .list_box1 span:last-child:before {display: none;} 

    @media (min-width: 992px) {
        footer .item3 > a:hover {background: var(--main-color2); color: #fff;}
    }
    
    @media (max-width: 1430px) {
        footer .contents {gap: 50px; flex-wrap: wrap;}
        footer .item2 {flex: unset;}
        footer .item2 > div {display: flex; flex-wrap: wrap;}
        footer .item2 > .text > span {margin-right: 20px;}
        footer .item2 > .text:first-child > span:nth-child(2)::after {display: none;}
        footer .item3 {width: fit-content;}
    }
    
    @media (992px <= width <= 1164px) {
        /* footer .item2 > .text > span:nth-child(2)::after {display: none;} */
    }
    
    @media (max-width: 1280px) {
        footer .contents {justify-content: center;}
        footer .list_box1 {margin-top: 30px;}
    }
    
    @media (max-width:991px) {
        footer .contents {gap: 30px;}
        footer .item1 {display: none;}
        footer .item2 {order: 2;}
        footer .item3 {order: 1; width: 100%; max-width: 423px;}
        footer .item3 > a {font-weight: 500;}
        footer .list_box1 {display: none;}
        footer > .contents_box {padding: 30px 0;}
        footer .contents > li { font-weight: 300;}
        footer .item2 > .text > span { display:block;}
        footer .item2 > .text {flex-direction: column;}
        footer .item2 > .text > span {margin-right: 0;}
        footer .item2 > .text > span:after { display:none;}
    }
    
    @media (max-width: 500px) {
        footer {
            --footer-font : 14px;
        }
    }
/*--------------------------------------------------- 푸터세팅 끝 ----------------------------------------------------------------------------*/





/* page 공통 CSS */
.page_frame{padding: 6em 0;}
:root{
    --page-color1:#dd3d36;
    --page-color2: #0e1742;
}
.page_frame .color-tag{color: #dd3d36;}

.page_frame section .title_V1{margin-bottom: 3.5em;}
.page_frame section .title_V1 .text1{font-size: 2.5em; color: var(--page-color2); font-weight: bold; margin-bottom: 0.2em; line-height: 1.3;}
.page_frame section .title_V1 .text2{font-size: 3.5em; font-weight: bold; line-height: 1.3;}
.page_frame section .title_sub p{font-size: 1.8em; line-height: 1.55; color:#444444;}


/* 서브페이지 패딩 */
.tmt_sub_frame { padding:40px 0 50px; min-height: 70vh; }


/* 게시판 및 게시판헤드 등 기타 버튼들 기본컬러 변경 */
.btn.btn-color {border: 1px solid var(--basic-border-color); background-color: var(--main-color);}
.btn.active.btn-color, .btn.btn-color:hover, .btn.btn-color:focus, .btn.btn-color:active {background-color: var(--main-color);}
.border-color, i.border-color, img.border-color {border-color: var(--basic-border-color);}

/* 모달 z-index높이기 (해드에 가려지는 경우 발견해서) */
.modal { z-index: 9999; }
.modal-backdrop { z-index: 9998; }

#style-switcher .widget-setup { top: 155px !important; }

