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

/* Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* pretendard */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.8/dist/web/variable/pretendardvariable.css");

/* reset */
@media all {
    .clear:after { 
        content:""; 
        display:block; 
        clear:both;
    }
    * { margin:0; padding:0; outline:none; box-sizing:border-box; }
    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 : #222e70; /* mainColor */	
    --basic-border-color: #222e70;	/* 게시판 및 게시판헤드 등 기타 버튼들 border 컬러 */

	 --h-height : max(60px, 10rem); /* header height */
}

/* html 폰트 사이즈 */
@media (max-width:1200px) {
	html { font-size: 9px; }
}
@media (max-width:991px) {
	html { font-size: 8.5px; }
}
@media (max-width:768px) {
	html { font-size: 7.5px; }
}
@media (max-width:580px) {
	html { font-size: 6px; }
}

@media (max-width:480px) {
	html { font-size: 5px; }
}

@media (min-width:1200px) and (max-height:800px) {/* 너비 1200이상 높이 800이하 */
html { font-size: 8px; }
}
@media (min-width:1200px) and (max-height:650px) {/* 너비 1200이상 높이 650이하 */
html { font-size: 7.5px; }
}
@media (min-width:1200px) and (max-height:500px) {/* 너비 1200이상 높이 500이하 */
html { font-size: 6.5px; }
}


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


.ikwrap { overflow-x: hidden; }

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

/* poppins */
.Pop {font-family: 'Poppins', sans-serif !important;}
.Ptd {font-family: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif !important;}

.font-em500 {font-size: 1rem;}
/* min(calc(10 / 500 * 100vw), 10px) */
/*--------------------------------------------------- 해드세팅 ----------------------------------------------------------------------------*/

@media all {
    #header { 
		--menu-font-color : #fff;
		position: fixed; left: 0; top: 0; width: 100%; height: var(--h-height); z-index: 1000; transition:0.4s;
    }
    
    #header > .containerV1 {height: 100%;}
    
    /*모바일 검은 배경*/
    #header .menuBox_bg {position: fixed; right: 0; top: 0; z-index: 8000; width: 100%; height: 100vh; background: rgba(0,0,0,0.5); display: none;}
    
    
    #header .itemBox {
        width: 100%; height: 100%; display:flex; justify-content:space-between; align-items:center;
        position: relative; z-index: 2; margin: 0 auto;
    }

	#logo {width: 30.8rem;}
    #logo a {display: flex; align-items: center;}
    #logo a .logo_2 {display: none;}


	/* login_box */
	#header .login_box {display: flex; align-items: center; gap: 30px;}
	#header .login_box > a {color: #fff; font-size: 20px; position: relative;}
	#header .login_box > a span {
		font-size: 0.65em; display: block; text-align: center; background: #fff; color: #333; font-weight: 500;
		transition: 0.3s;
	}

	

	#header.scroll .login_box > a {color: #000;}

	@media (min-width: 992px) {
		#header .login_box > a span {
			position: absolute; top: 100%; left: 50%; transform: translateX(-50%); opacity: 0; visibility: hidden;
			box-shadow: 0 0 8px -2px #666; border-radius: 5px; padding: 5px 10px;
		}
		#header .login_box > a:hover > span {top: 150%; opacity: 1; visibility: visible;}
	}
    
    
    
    /*main_menu---------------------------------------------------------------------------*/
	#nav {
		--menu-gap : 6rem;
	}
    #nav .nav_logo {display: none;}
    #nav .nav_inner { display:flex; align-items:center; width: 100%; gap: var(--menu-gap);}
    #nav .outer {display: flex; position: relative;}
    #nav .outer > li {position: relative; margin-left: var(--menu-gap); height: var(--h-height);}
    #nav .outer > li:first-child {margin-left: 0;}
    #nav .outer > li > a {
    display: flex; color: var(--menu-font-color);  font-size: 18px; height: 100%; line-height: 1.3; align-items: center;
    position: relative; transition: all 0.3s; font-weight: 400; text-align: center;
    }
    #nav .outer > li > a > span {position: relative;}
    #nav .outer > li > a > i {color: var(--main-color); display: none;}
    #nav .outer > li > a > span:after {
        content: ''; position: absolute;  bottom: -10px; width: 0; height: 3px; background: var(--main-color); transition:0.4s; right: 0;
    }
    
    
    
    /*sub_menu---------------------------------------------------------------------------*/
    #nav .inner {
    display: block; position: absolute; right: 0; top: 80%; width: 190px; height: 0; overflow: hidden;
    opacity: 0; transition: all 0.2s; visibility: hidden; z-index: 1;  background: #fff; text-align: right; box-shadow: 3px 2px 10px rgba(0,0,0,0.2);
    }
    #nav .inner::before {content:""; position: absolute; left: 0; top: 0; width: 100%; height: 5px; background: var(--main-color);} 
    #nav .inner > li {position: relative; color: #000; line-height: 1.3; transition: all 0.3s;}
    #nav .inner > li:first-child {margin-top: 10px;}
    #nav .inner > li:last-child {margin-bottom: 10px;}
    
    #nav .inner > li > a { display: block; font-size: 16px; color: inherit; transition: all 0.3s; position: relative; left: 0; padding: 10px 15px;}
    #nav .outer > li:nth-child(1) .inner { z-index: 10;}
    
}    
    
    /* hover */
    @media (min-width: 991px) {
        #nav .outer > li:hover > .inner {opacity: 1; visibility: visible; z-index: 2; top: 90%; height: auto; border-radius: 0 0 0px 15px;}
        #nav .outer > li:hover > a > span:after {width: 100%; right: auto; left: 0;}
        #nav .outer > li > .inner > li:hover > a {background: var(--main-color); color: #fff;}

        /* 해당페이지 일때 */
        #nav .outer > li > a.on > span::after {width: 100%;}
    }
    
    /* 해드 스크롤 했을때 */
    #header.scroll {
        box-shadow: 0px 3px 10px rgba(0,0,0,0.1); background: #fff;
    }
    #header.scroll #logo a .logo_2 {display: block;}
    #header.scroll #logo a .logo_1 {display: none;}
    #header.scroll #nav .outer > li > a {color: #000;}
    
    
    
    /*모바일에서 피씨 로고 클래스 지움.*/
    #logo.logo_hide {opacity: 1; visibility: visible;}    
    
/*반응형-------------------------------------------------------------*/


@media (max-width: 1430px) {
	#logo {width: 23rem;}
	#nav {--menu-gap: 6rem;}
    #nav .outer > li > a {font-size: 16px;}
}



/*모바일*/
@media all and (max-width: 991px) {
    
    #header {--menu-font-color: #222; background: rgba(0, 0, 0, 0.2);}

    #logo {width: max(160px, 27rem);}

    /* 모바일 열기 버튼 */
    .open_btn { font-size: 40px; color: #fff; cursor:pointer;}

    #nav {
    --mob-bg : #f7f7f7;
    background-color: var(--mob-bg); width: 21.43em; height: 100%;  display: block;
    position: fixed; right:0; top: 0; z-index:9999; margin-right:-21.43em;  transition:margin-right 0.3s;
    }
    #nav .nav_inner {gap: 15px 0;}
    #nav .nav_inner .nav_topBox {display: flex; align-items: center; width: 100%; background: var(--mob-bg); padding: 20px; border-bottom: 1px solid #555;}
    #nav .nav_inner .nav_logo {display: flex; align-items: center; color: #fff; font-weight: bold; width: 180px;}
    #nav .nav_inner { 
        width: 21.43em; height: 100%; overflow-x: hidden; overflow-y:auto; position: absolute;  top:0; 
        flex-direction:column; justify-content:flex-start; align-items:stretch;
    }

    /* 모바일닫기버튼 */
    .close_btn { width:50px; height:50px; margin-right:0; margin-left:auto; cursor:pointer; position: absolute; right: 0; top: 10px;}
    .close_btn > i { display:block; color:var(--menu-font-color); text-align:center; line-height:50px; font-size:40px; z-index: 3;}

    #header .menuBox_bg {display: block;}/*	menubox_bg가 메뉴를 연 상태로 바로 pc화면으로 바꿀 경우 그대로 남아서 pc에서 none 처리해둔 걸 모바일에서 푸는 용도*/
	
	#header .login_box {justify-content: center;}
	#header .login_box > a {display: flex;	align-items: center; flex-direction: column; gap: 8px; font-size: 23px; color: #000;}
	#header .login_box > a span {font-size: 0.6em; background: none;}



    #nav .outer { display: block; margin-top: 10px; padding: 0 20px; order: 3;}
    #nav .outer > li { margin-left: 0; width: 100%; overflow: hidden; cursor: pointer; margin-bottom: 10px; height: auto;}
    #nav .outer > li > a {
        font-weight: 500; padding:15px 20px 20px 10px; color: var(--menu-font-color); position: relative; text-align: left;
        pointer-events:none; height: auto; line-height: 1; font-size: 18px; border-bottom: 1px solid #555;
    }
    #nav .outer > li > a > span {transition: 0.5s;}
    #nav .outer > li > a > span:after {
        background: url('img/nav_icon_logo.png') no-repeat center center / cover;
        width: 20px; height: 20px; left: -25px; top: 50%; transform: translateY(-50%);
        opacity: 0; transition: 0.5s;
    }
    

    #nav .outer > li > a > i {color: var(--menu-font-color); display: inline-block; position: absolute; right: 15px; top: 15px; transform: rotate(0deg); transition: all 0.3s;}

    #nav .inner {
        position: relative; padding: 0; display: block; border:0; opacity: 0; padding-left: 10px;
        visibility: hidden; width: 100%; height: 0;  background: var(--mob-bg); box-shadow: none;
    }
    #nav .inner::before {display: none;} 
    #nav .inner > li { margin-bottom:0; position: relative; padding: 0;}


    #nav .inner > li > a {
        color: var(--menu-font-color); padding: 12px 25px 12px 13px; position: relative; transition: all 0.3s;
        text-align: left; left: 0;
    }
    #nav .inner > li > a {border-bottom: 1px solid #3f5ca03b;}

    /*	pc 메뉴 효과 지움*/
    
    #header:hover #nav .inner {opacity: 1; top: 100%;}



    /* 해드 스크롤 했을때 */
    #header.scroll #nav .outer > li > a {color: var(--menu-font-color); line-height: 1;}
    #header.scroll .open_btn {color: #000;}

    /* 헤드 메뉴에 on 했을때 */
	#header #nav .outer > li > a.on {font-weight: bold; color: var(--main-color);}

    /* hover */
    #nav .outer > li > .inner > li:hover > a {background: transparent; color: var(--menu-font-color);}
    #nav .outer > li:hover > .inner { display:block; opacity: 1; top: 100%;}
    #nav .outer > li > .inner > li:hover {background: #333;}
    #nav .outer > li > .inner > li:hover > a {color: var(--menu-font-color);}
    #nav .inner > li:hover > a span {left: 0;}


    /* 해당페이지 일때 */
    #nav .outer > li > a.on > span {margin-left: 20px;}
    #nav .outer > li > a.on > span::after {opacity: 1;}

    #nav .outer > li.on_sub > a > span {margin-left: 20px;}
    #nav .outer > li.on_sub > a > span::after {opacity: 1;}

    /* outer 클릭시 inner보이는 효과 */
    #nav .outer > li.on_sub > .inner { display: block;}
    #nav .outer > li.on_sub > .inner {
        opacity: 1;
        visibility: visible;
        height: auto;
    }
    #logo.logo_hide {opacity: 0; visibility: hidden;}
    #nav .outer > li.on_sub > .inner > li {background: #f7f7f7;}
    #nav .outer > li.on_sub > a > i {transform: rotate(90deg); }
    

    /* 모바일메뉴박스 보이게 하는 클래스 */
    #nav.inactive { margin-right: -1px; }
}


/*--------------------------------------------------- 해드세팅 끝 ----------------------------------------------------------------------------*/



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

/* 버튼 스타일 공용 */
main .section .item_btn {
    --btn-color: #fff;
    border-radius: 10px; width: 100%; max-width: 10.625em;
    border: 1px solid var(--btn-color); position: relative;
    display: flex; justify-content: center; align-items: center;
    color: #fff; gap: 5px; font-size: max(13px, 1.6em);
    background: transparent; padding: 1.15em 5px;
}
main .section .item_btn::before {
    content: ''; position: absolute;
    top: 50%; left: 108%; transform: translate(-50%, -50%);
    width: 4.75em; height: 1px; background: var(--btn-color);
}

@media (min-width: 992px) {
    main .section .item_btn {transition: 0.5s;}
    main .section .item_btn::before {transition: 0.5s;}

    main .section .item_btn:hover {background: var(--btn-color); color: #000;}
    main .section .item_btn:hover:before {left: 50%; opacity: 0;}
}
/* 버튼 스타일 공용 끝*/

/* 카테고리 스타일*/
main > .section .nav-tabs {
    display: grid; margin: 0 auto; border-bottom: none;
}
main > .section .nav-tabs:before {display: none;}

main > .section .nav-tabs:after {
    border: 1px solid #cdcdcd; margin-right: -1px; 
    margin-bottom: -1px; display: none;
}
main > .section .nav-tabs > li {
    margin-bottom: 0; text-align: center; 
    font-size: max(13px, 1.8em); width: 100%;
}
main > .section .nav-tabs > li > a {
	border-radius: 4em; border: 1px solid #616eaa; background: #fff;
	margin-right: -1px; margin-bottom: -1px; 
	transition: 0.2s; height: 102%;
	display: flex; justify-content: center; align-items: center;
    padding: 5px 10px;
}
main > .section .nav-tabs>li>a:hover{background-color: #616eaa; color: #fff; border: 1px solid #616eaa;}

main > .section .nav-tabs > li.active > a{
    background-color: #616eaa; color: #fff;
}
/* 카테고리 스타일 끝 */



/* sec1 */
main .sec1 {
    position: relative; padding: 10.8em 0 19em; background: #fff;
    overflow: hidden;
}

main .sec1 .bg_slogan {
    position: absolute; bottom: 7.5em; left: 0; width: 100%;
    padding-bottom: 10.7em; overflow: hidden; opacity: 0.6;
}
main .sec1 .bg_slogan h1 {
    white-space: nowrap; text-transform: uppercase; font-weight: bold;
    position: absolute; right: 0; z-index: 1; font-size: 9.5em;
    background: linear-gradient(to top, #242766, #164387, #006cb6, #164387, #242766);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    animation: slogan_moveX 120s infinite linear;
}

/* 슬로건 애니메이션*/
@keyframes slogan_moveX {
	0%{
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
	100%{
        -webkit-transform: translate3d(60%, 0, 0);
        transform: translate3d(60%, 0, 0);
    }
}


main .sec1 > .containerV1 {
    position: relative; z-index: 2;
    display: flex; gap: 5em;
    justify-content: space-between;
}
main .sec1 .titleBox {padding-top: 10em;}
main .sec1 .titleBox h5 {font-size: max(13px, 2em); color: var(--main-color); font-weight: bold; margin-bottom: 0.8em;}
main .sec1 .titleBox h3 {font-size: max(25px, 4.5em); color: #000; font-weight: bold; line-height: 1.2;}
main .sec1 .titleBox p {
    font-size: max(15px, 1.8em); color: #434343; font-weight: 400; margin-top: 1em; line-height: 1.3;
}
main .sec1 .titleBox .item_btn {--btn-color: #2e36c7; color: #000; margin-top: 4em;}

@media (min-width: 992px) {
    main .sec1 .titleBox .item_btn:hover {color: #fff;}
}

main .sec1 .itemBox {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 3em 3.5em; flex: 1;
    grid-auto-rows: minmax(29em, auto); position: relative; width: 100%; max-width: 780px;
}
main .sec1 .itemBox::before {
    content:''; position: absolute; top: 50%; left: 50%; width: 26.9em; height: 26.9em;
    transform: translate(-50%, -50%);
    background: url(../img/sec1_circle.png) no-repeat center center / cover;
}

main .sec1 .itemBox > li {border-radius: 3em; position: relative; z-index: 2; overflow: hidden;}
main .sec1 .itemBox > li::before {
    content:''; position: absolute; top: 0; left: 0; z-index: 1;
    width: 100%; height: 100%;

    transition: 0.5s;
}
main .sec1 .itemBox > li:nth-child(1):before {background: url(../img/sec1_img01.jpg) no-repeat center center / cover;}
main .sec1 .itemBox > li:nth-child(2):before {background: url(../img/sec1_img02.jpg) no-repeat center center / cover;}
main .sec1 .itemBox > li:nth-child(3):before {background: url(../img/sec1_img03.jpg) no-repeat center center / cover;}
main .sec1 .itemBox > li:nth-child(4):before {background: url(../img/sec1_img04.jpg) no-repeat center center / cover;}

main .sec1 .itemBox > li > a {padding: 3em 3.5em; display: block; width: 100%; height: 100%; position: relative; z-index: 2; transition: 0.3s;}
main .sec1 .itemBox > li > a .text_box {position: relative; padding-top: 2em; color: #fff;}
main .sec1 .itemBox > li > a .text_box::before {
    content:''; position: absolute; top: 0; left: 0;
    width: 8.8em; height: max(5px, 1em); border-radius: 3em;
    background: linear-gradient(to left, #232969, #0269b3, #232969);
}
main .sec1 .itemBox > li > a .text_box h4 {color: inherit; font-size: max(18px, 2.5em); line-height: 1.2; margin-bottom: 0.3em;}
main .sec1 .itemBox > li > a .text_box span {color: inherit; font-size: max(12px, 1.5em); line-height: 1.2;}

@media (min-width: 992px) {
    main .sec1 .itemBox > li:hover:before {
        transform: scale(1.05);
    }
    main .sec1 .itemBox > li:hover > a {
        background: rgba(0,0,0,0.7);
    }
}

@media (max-width: 991px) {
    main .sec1 > .containerV1 {flex-direction: column;}
    main .sec1 .titleBox {padding-left: 3em;}
    main .sec1 .itemBox {max-width: 100%;}
}



/* sec2 */
main .sec2 {
    position: relative; padding: 11.2em 0 11.7em; background: #213071;
    overflow: hidden;
}
main .sec2 .bg_img {
    position: absolute; width: 100%; height: 56.2em; top: 48%; left: 0;
    transform: translateY(-50%);
    z-index: 1; background: url(../img/sec2_bg.png) no-repeat center right / cover;
}
main .sec2 > .containerV1 {position: relative; z-index: 2;}
main .sec2 .titleBox {text-align: center; margin-bottom: 6.5em;}
main .sec2 .titleBox h5 {font-size: max(13px, 2em); color: #747bff; font-weight: bold; margin-bottom: 0.5em;}
main .sec2 .titleBox h3 {font-size: max(25px, 4.5em); color: #fff; font-weight: bold; line-height: 1.3;}
main .sec2 .titleBox p {font-size: max(15px, 1.8em); color: #fff; font-weight: 400; margin-top: 1em; line-height: 1.3;}
main .sec2 .itemBox {display: grid; grid-template-columns: repeat(2, 1fr); gap: 6.5em;}
main .sec2 .itemBox > li {
    background: rgba(255,255,255,0.2); padding: 5.5em 2em 6em 5em;
    display: flex; align-items: center; gap: 3.8em; border-radius: 3em;
}
main .sec2 .itemBox > li > img {width: 13.6em;}
main .sec2 .itemBox > li .text_box {color: #fff;}
main .sec2 .itemBox > li .text_box > h4 {
    font-size: max(18px, 2.5em); color: inherit; line-height: 1.2; font-weight: bold;
    margin-bottom: 0.5em;
}
main .sec2 .itemBox > li .text_box > p {
    font-size: max(14px, 1.8em); color: inherit; line-height: 1.4; font-weight: 300;
    margin-bottom: 1.8em;
}

@media (max-width: 991px) {
    main .sec2 .itemBox {grid-template-columns: repeat(1, 1fr); gap: 3em;}
}



/* sec3 */
main > .sec3 {padding: 11em 0; position: relative;}
main > .sec3 .bg_img {
    position: absolute; z-index: 1; width: 35.9em; height: 35.9em;
    background: url(../img/sec3_bg.png) no-repeat center center / cover;
    top: 11em; left: 8.5em;
}

main > .sec3 .containerV1 {position: relative; z-index: 2;}
main > .sec3 .titleBox {text-align: center; margin-bottom: 5em;}
main > .sec3 .titleBox h3 {
    font-size: max(20px, 5em); color: #000; line-height: 1.2;
    margin-bottom: 0.54em; font-weight: bold;
}

main > .sec3 .nav-tabs {
    grid-template-columns: repeat(3, 1fr); gap: 5em; 
    width: 100%; max-width: 450px;
}
/* main > .sec3 .tab_itemBox {overflow: hidden;} */



/* sec4 */
main > .sec4 {background: #f6f6f6; padding: 9.5em 0 9em;}
main > .sec4 .titleBox {text-align: center; margin-bottom: 5em;}
main > .sec4 .titleBox h3 {
    font-size: max(20px, 5em); color: var(--main-color); line-height: 1.2;
    margin-bottom: 1.3em; font-weight: bold;
} 

main > .sec4 .nav-tabs {
    grid-template-columns: repeat(7, 1fr); gap: 2em;
    width: 100%; max-width: 1270px;
}

main .sec4 .item_btn {--btn-color: #2e36c7; color: #000; margin: 3em auto 0;}

@media (min-width: 992px) {
    main .sec4 .item_btn:hover {color: #fff;}
}

@media (max-width: 900px) {
    main > .sec4 .nav-tabs {
        grid-template-columns: repeat(4, 1fr);
    }
}




/* sec5 */
main .sec5 .itemBox {
    display: grid; grid-template-columns: repeat(2, 1fr);
}

main .sec5 .itemBox > li {display: flex;}
main .sec5 .itemBox > li .text_box {
    padding: 5em 3em 6em 10em; width: 100%; max-width: 700px;
    color: #fff;
}
main .sec5 .itemBox > li .text_box h5 {
    font-size: max(13px, 1.6em); color: inherit; line-height: 1.2; font-weight: 300;
}
main .sec5 .itemBox > li .text_box h3 {
    font-size: max(20px, 2.5em); color: inherit; line-height: 1.2; font-weight: bold;
    margin-bottom: 0.7em;
}


main .sec5 .itemBox > li:first-child {
    background: url(../img/sec5_bg1.jpg) no-repeat center center / cover;
    justify-content: end;
}
main .sec5 .itemBox > li:nth-child(2) {
    background: url(../img/sec5_bg2.jpg) no-repeat center center / cover;
}

@media (max-width: 768px) {
    main .sec5 .itemBox {
        display: grid; grid-template-columns: repeat(1, 1fr);
    }
    main .sec5 .itemBox > li {justify-content: center;}
    main .sec5 .itemBox > li:first-child {justify-content: center;}
}

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



/*--------------------------------------------------- 푸터세팅 ----------------------------------------------------------------------------*/

/* footer*/
footer {position: relative; background: #313131;}
footer a {color: inherit;}

/*푸터 sns 링크*/
footer .ft_linkBox {
    border-bottom: 1px solid #484848;
    padding: 2.7em 0;
}

/* 푸터 사이트맵 */
footer .ft_sitemap {border-bottom: 1px solid #484848; padding: 6em 15px 4.5em;}
footer .outer_wrap {
    width: 100%; max-width: calc(var(--containerV1-width) * 1px); margin: 0 auto;
    display: grid; grid-template-columns: repeat(7, 1fr);
    justify-items: center;
}
footer .ft_sitemap .ft_outer {display: flex; flex-direction: column; gap: 1.8em; width: fit-content;}
footer .ft_sitemap .ft_outer:first-child {justify-self: flex-start;}
footer .ft_sitemap .ft_outer:last-child {justify-self: end;}
footer .ft_sitemap .ft_outer > li.outer_title {color: #fff; position: relative; font-size: 1.8em; padding-bottom: 1.4em;}
footer .ft_sitemap .ft_outer > li.outer_title::before {
    content:''; position: absolute; bottom: 0; left: 0; background: #fff; 
    width: 1.1em; height: 3px;
}

footer .ft_sitemap .ft_outer > li a {font-size: 1.6em; color: #aaa; line-height: 1.2;}
footer .ft_sitemap .ft_outer > li a:hover {color: #fff;}

footer .contents {padding: 3em 0 4em; display:flex; width: 100%; gap: 30px 0; justify-content: space-between; align-items: center;}
footer .ft_item {display: flex; flex-direction: column;}
footer .ft_item > div { line-height: 1.8; font-size: max(12px, 1.5em); color: #b5b5b5; display: flex; flex-wrap: wrap;}

footer .ft_item > div a { color: inherit;}
footer .ft_item > .text > span { position: relative; margin-right: 24px; font-weight: inherit;}
footer .ft_item > .text > span b {color: #000; font-weight: normal !important;}
footer .ft_item > .text > span:after {
    content:''; position:absolute; right: -14px; top:50%; transform:translateY(-40%); height: 12px; width: 2px;
    background: #b5b5b5;
}
footer .ft_item > .text > span:last-child:after { display: none; }
footer .item1 > .copy {font-weight: inherit; color: #b5b5b5; text-transform: uppercase; margin-top: 2em;}
footer .item1 > .copy a { color: inherit;}

footer .ft_item .list_box {align-self: end;}
footer .ft_item .list_box > span {color: #b5b5b5;}
footer .ft_item .list_box > span > a:hover {text-decoration: underline;}
footer .ft_item .list_box > span:last-child {margin-right: 0;}
footer .ft_item .list_box > span::after {
    transform:translateY(-50%); color: #b5b5b5;
}
footer .item2 {display: flex; flex-direction: column; align-items: end;}


@media (max-width: 991px) {
    footer .ft_linkBox > ul { gap: 2.5em; max-width: fit-content;} 
    .ft_sitemap {display: none;}
    footer .contents {flex-wrap: wrap; flex-direction: column;}
    footer .item1 {order: 2; align-items: center; text-align: center;}
    footer .item2 {order: 1; align-items: center;}
    footer .item2 #ft_logo {width: max(200px, 24.5em);}
}

@media (max-width:768px) {
    footer .ft_linkBox > ul {grid-template-columns: repeat(3, 1fr);}
    footer .ft_item .list_box {display: none;}
}

@media (max-width: 650px) {
    footer .item1 > div {flex-direction: column;}
    footer .item1 > .copy {flex-direction: unset; text-align: center; justify-content: center;}
    footer .item1 > .text > span:after {display: none;}
    footer .item1 > .text > span {margin-right: 0;}
}


/*--------------------------------------------------- 푸터세팅 끝 ----------------------------------------------------------------------------*/








/* 서브페이지 패딩 */
.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; }

/* 게시판 스타일 조정 */
.board-list {font-size: 16px;}
.btn-sm, .btn-group-sm>.btn {font-size: 14px;}
/* .write-wrap .form-group  {font-size: 16px;} */
.div-head {padding:  20px 0; border-top: 3px solid #333 !important; border-bottom: 1px solid #333 !important;}
.div-head span {font-weight: 500;}
.list-board .list-body li > div {padding: 20px 0; color: #000;}
.list-board .list-body .wr-subject .item-subject {font-weight: 300;}
.list-board .list-body .wr-name {font-weight: 500;}

.faq_subject {font-size: 16px;}
.div-panel.panel-group .panel-heading a {padding: 20px 15px; padding-left: 0;}
