@charset "utf-8";

/*
font-family: 'Montserrat', sans-serif;
*/


#main #container {padding-top: 100px;}


/* 공통 */
#main #container .inner_box {max-width: 1416px; width: calc(100% - 30px); margin: 0 auto; box-sizing: border-box;}
#main #container .btn1 {display: block; width: 200px; background-color: transparent; border-radius: 32px; text-align: center; font-size: 15px; color: #666666; letter-spacing: -0.05em; box-sizing: border-box; border: 1px solid #dddddd; cursor: pointer;}
#main #container .btn1.col2 {color: #fff; border-color: #fff;}
#main #container .btn1 span {display: inline-block; line-height: 62px; text-align: left; padding-right: 40px; position: relative; z-index: 2;}
#main #container .btn1 span::before {content: ''; width: 16px; height: 8px; background: url(../images/icon/arrow1_3.png) no-repeat right center; position: absolute; right: 0px; top: 50%; margin-top: -4px;}
#main #container .btn1.col2 span::before {background: url(../images/icon/arrow1_6.png) no-repeat right center;}


/* sec1 */
#sec1 {position: relative; font-size: 0px; overflow: hidden;}
#sec1 .con_box {position: relative;}
#sec1 .img_box {height: 720px; position: relative; overflow: hidden;}
#sec1 .img_box > div {position: absolute; width: 100%; height: 100%; top: 0px; left: 0px; background-size: cover!important; background-position: center!important; background-repeat: no-repeat!important;}
#sec1 .txt_box {position: absolute; width: 100%; height: 100%; top: 0px; left: 0px;}
#sec1 .txt_box .txt_wrap {max-width: 1416px; width: calc(100% - 30px); padding-top: 193px; box-sizing: border-box; margin: 0 auto;}
#sec1 .txt_box .txt1 {font-size: 24px; color: #234682; font-weight: 500; letter-spacing: -0.05em; word-break: keep-all; max-width: 600px; margin-bottom: 30px;}
#sec1 .txt_box .txt2 {font-size: 58px; color: #111111; letter-spacing: -0.05em; font-weight: 700; line-height: 86px; word-break: keep-all; /*max-width: 600px;*/}
#sec1 .txt_box .txt_wrap > div {opacity: 0; position: relative; top: -30px; -webkit-transition: top 0.5s, opacity 0.5s; -moz-transition: top 0.5s, opacity 0.5s; transition: top 0.5s, opacity 0.5s;}
#sec1 .txt_box .txt_wrap.on > div {top: 0; opacity: 1;}
#sec1 .txt_box .txt_wrap.on .txt2 {transition-delay: 0.5s;}

#sec1 .btn_box {position: absolute; width: 100%; bottom: 196px; left: 0px;}
#sec1 .btn_box .btn_wrap {max-width: 1416px; width: calc(100% - 30px); position: absolute; left: 50%; bottom: 0; transform:translate(-50%, 0%); -webkit-transform:translate(-50%, 0%);}
#sec1 .btn_box .num {font-family: 'Montserrat', sans-serif; font-size: 14px; color: #999999; line-height: 23px; display: inline-block; vertical-align: middle; margin-right: 33px;}
#sec1 .btn_box .num .thisN {display: inline-block; vertical-align: middle; color: #666666; font-weight: 600; min-width: 19px;}
#sec1 .btn_box .num .allN {display: inline-block; vertical-align: middle;}
#sec1 .btn_box .num .bar {display: inline-block; vertical-align: middle; width: 160px; height: 1px; position: relative; overflow: hidden; background-color: #bbbbbb; margin: 0 12px;}
#sec1 .btn_box .num .bar span {position: absolute; width: 0%; height: 1px; background-color: #111111; top: 0px; left: 0px;}
#sec1 .btn_box .num .bar.on span {-webkit-transition: width 0.7s; -moz-transition: width 0.7s; transition: width 0.7s;}
#sec1 .btn_box .btn {display: inline-block; vertical-align: middle;}
#sec1 .btn_box .btn > div {width: 20px; height: 23px; vertical-align: middle; display: inline-block; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; cursor: pointer;}
#sec1 .btn_box .btn .stop {background: url(../images/icon/stop.png) no-repeat center; margin-right: 6px;}
#sec1 .btn_box .btn .stop.on {background: url(../images/icon/stop_on.png) no-repeat center;}
#sec1 .btn_box .btn #arrow_next {background: url(../images/icon/next.png) no-repeat center;}
#sec1 .slick-dots {display: none!important;}


/* sec2 */
#sec2 {background-color: #fff; padding: 160px 0; overflow: hidden;}
#sec2 .con1 {display: flex; flex-flow: wrap; margin-bottom: 120px;}
#sec2 .con1 .l_box {width: 480px; display:flex; justify-content:left; align-items:center; table-layout:fixed;}
#sec2 .con1 .l_box .txt1 {font-size: 32px; color: #111111; line-height: 42px; letter-spacing: -0.05em; word-break:keep-all; margin-bottom: 20px;}
#sec2 .con1 .l_box .txt1 strong {font-size: 48px; line-height: 68px; font-weight: 700; display: inline-block;}
#sec2 .con1 .l_box .txt2 {font-size: 20px; line-height: 34px; color: #666666; letter-spacing: -0.05em; word-break: keep-all; max-width: 400px; margin-bottom: 73px;}
#sec2 .con1 .r_box {width: calc(100% - 480px);}
#sec2 .con1 .r_box li {margin-bottom: 24px;}
#sec2 .con1 .r_box li:last-child {margin-bottom: 0px;}
#sec2 .con1 .r_box li a {display: block; font-size: 16px; color: #ffffff; letter-spacing: -0.05em; word-break: keep-all; padding: 42px 140px 45px 55px; position: relative;}
#sec2 .con1 .r_box li a::before {content: ''; width: 64px; height: 64px; position: absolute; right: 56px; top: 50%; margin-top: -32px;}
#sec2 .con1 .r_box li.col1 a {background-color: #234682;}
#sec2 .con1 .r_box li.col1 a::before{background: url(../images/main/sec2_icon1.png) no-repeat center;}
#sec2 .con1 .r_box li.col2 a {background-color: #059c4a;}
#sec2 .con1 .r_box li.col2 a::before {background: url(../images/main/sec2_icon2.png) no-repeat center;}
#sec2 .con1 .r_box li.col3 a {background-color: #4f566a;}
#sec2 .con1 .r_box li.col3 a::before {background: url(../images/main/sec2_icon3.png) no-repeat center;}
#sec2 .con1 .r_box li a strong {display: block; font-size: 24px; color: #ffffff; font-weight: 500; letter-spacing: -0.05em; word-break: keep-all; position: relative; margin-bottom: 14px;}
#sec2 .con1 .r_box li a strong span {position: relative;}
#sec2 .con1 .r_box li a strong sup {position: relative; top: 3px; line-height: 10px;}

#sec2 .con1 .r_box li.col2 a { display: flex; flex-wrap: wrap; gap: 30px 40px; }
#sec2 .con1 .r_box li.col2 a strong { width: 100%; flex-shrink: 0; white-space: nowrap; margin-bottom: 0; }
#sec2 .con1 .r_box li.col2 a p { width: calc(50% - 20px); margin-bottom: 0; font-size: 16px; line-height: 1.5; }
#sec2 .con1 .r_box li.col2 a p span { display: block; font-size: 20px; font-weight: 700; margin-bottom: 8px; color: #fff; }

#sec2 .con2 {display: flex; flex-flow: wrap;}
#sec2 .con2 .con_box {width: calc(50% - 12px); margin-right: 24px; background-color: #f9f9f9; padding: 37px 40px 48px; box-sizing: border-box; min-height: 460px;}
#sec2 .con2 .con_box:last-child {margin-right: 0px;}
#sec2 .con2 .con_box .con_ttl {border-bottom: 1px solid #111111; position: relative; padding-bottom: 26px;}
#sec2 .con2 .con_box .con_ttl strong {font-size: 32px; color: #234682; font-weight: 700; letter-spacing: -0.05em; word-break: keep-all;}
#sec2 .con2 .con_box .con_ttl strong.col2 {color: #059c4a;}
#sec2 .con2 .con_box .con_ttl a {font-family: 'Montserrat', sans-serif; font-size: 14px; color: #666666; display: inline-block; padding-right: 20px; position: absolute; right: 0px; top: 16px;}
#sec2 .con2 .con_box .con_ttl a::before {content: ''; width: 9px; height: 9px; background: url(../images/icon/more.png) no-repeat center; position: absolute; right: 0px; top: 50%; margin-top: -4px;}
#sec2 .con2 .list01 li {border-bottom: 1px solid #dddddd;}
#sec2 .con2 .list01 li a {display: block; position: relative; padding: 0 90px 0 110px; height: 75px; box-sizing: border-box; display:flex; justify-content:left; align-items:center; table-layout:fixed;}
#sec2 .con2 .list01 li a::before {content: ''; width: 16px; height: 8px; background: url(../images/icon/arrow1_5.png) no-repeat center right; position: absolute; right: 32px; top: 50%; margin-top: -4px;}
#sec2 .con2 .list01 .date {position: absolute; width: 90px; left: 0px; top: 50%; text-align: center; font-size: 12px; color: #999999; font-family: 'Montserrat', sans-serif; transform:translate(0%, -50%); -webkit-transform:translate(0%, -50%);}
#sec2 .con2 .list01 .date::before {content: ''; width: 1px; height: 24px; background-color: #bbbbbb; position: absolute; right: 0px; top: 50%; margin-top: -12px;}
#sec2 .con2 .list01 .date strong {display: block; font-size: 32px; font-weight: 700; line-height: 24px; margin-bottom: 9px;}
#sec2 .con2 .list01 .subject {font-size: 16px; color: #666666; letter-spacing: -0.05em; word-break: keep-all; overflow: hidden; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal;}
#sec2 .con2 .list02 {display: flex; flex-flow: wrap; padding-top: 28px;}
#sec2 .con2 .list02 li {width: calc(50% - 12px); margin-right: 24px;}
#sec2 .con2 .list02 li:nth-child(2n) {margin-right: 0px;}
#sec2 .con2 .list02 a {display: block;}
#sec2 .con2 .list02 .img_box {overflow: hidden; position: relative; /*padding-bottom: 81.085%;*/ padding-bottom: 240px;}
/*#sec2 .con2 .list02 .img_box::before {content: ''; width: 100%; height: 100%; box-sizing: border-box; border: 2px solid #111; position: absolute; top: 0px; left: 0px; z-index: 1; opacity: 0;}*/
#sec2 .con2 .list02 .img_box div {position: absolute; width: 100%; height: 100%; top: 0px; left: 0px; background-size: cover!important; background-repeat: no-repeat!important; background-position: center!important;}
#sec2 .con2 .list02 .subject {font-size: 16px; color: #666666; letter-spacing: -0.05em; word-break: keep-all; overflow: hidden; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; margin-top: 10px;}
#sec2 .con2 .no_data {text-align: center; font-size: 16px; letter-spacing: -0.05em; word-break: keep-all; color: #bfbfbf; border-bottom: none!important; margin-right: 0!important; width: 100%!important; padding: 137px 0!important;}


/* sec3 */
#sec3 {background-size: cover; overflow: hidden; position: relative;}
#sec3 .bg {position: absolute; width: 100%; height: 100%; top: 0px; left: 0px; background: url(../images/main/sec3_bg.jpg) no-repeat center; background-size: cover!important;}
#sec3 .inner_box {height: 460px; display:flex; justify-content:center; align-items:center; table-layout:fixed; z-index: 1; position: relative;}
#sec3 .txt_box {width: 100%; text-align: center;}
#sec3 .txt1 {font-size: 18px; color: #ffffff; letter-spacing: -0.05em; word-break: keep-all; opacity: 0.7; margin-bottom: 17px;}
#sec3 .txt2 {font-size: 36px; color: #ffffff; line-height: 52px; font-weight: 700; word-break: keep-all; letter-spacing: -0.05em; margin-bottom: 48px;}
#sec3 .txt2 span{ color: #f39800;}
#sec3 .txt2 sup {position: relative; top: 4px; line-height: 10px;}
#sec3 .btn1 {margin: 0 auto;}



/* PC */
@media all and (min-width:1025px){
    /* 공통 */
    #main #container .btn1 {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; overflow: hidden; position: relative;}
    #main #container .btn1::before {content: ''; width: 100%; height: 100%; top: 0px; left: -100%; background-color: #234682; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; z-index: 1; position: absolute;}
    #main #container .btn1.col2::before {content: ''; width: 100%; height: 100%; top: 0px; left: -100%; background-color: #059c4a; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; z-index: 1; position: absolute;}
    #main #container .btn1 span::before {-webkit-transition: background 0.3s; -moz-transition: background 0.3s; transition: background 0.3s;}
    #main #container .btn1:hover {color: #fff; border-color: transparent;}
    #main #container .btn1:hover::before {left: 0px;}
    #main #container .btn1:hover span::before {background-position: left center}
    
    
    
    /* sec1 */
	#sec1 .btn_box .btn .stop:hover {background: url(../images/icon/stop_on.png) no-repeat center;}
	#sec1 .btn_box .btn #arrow_next:hover {background: url(../images/icon/next_on.png) no-repeat center;}
    
    
    
    /* sec2 */
    #sec2 .con1 .r_box li a {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con1 .r_box li a strong span::before {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; content: ''; width: 0%; height: 1px; background-color: #fff; position: absolute; bottom: 0; left: 0px;}
    #sec2 .con1 .r_box li a::before {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con1 .r_box li a:hover::before {right: 40px;}
    #sec2 .con1 .r_box li a:hover strong span::before  {width: 100%;}
    
    #sec2 .con_box .con_ttl a {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con_box .con_ttl a::before {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con_box .con_ttl a:hover{color: #111;}
    #sec2 .con_box .con_ttl a:hover::before {transform: rotate(180deg); background: url(../images/icon/more2.png) no-repeat center;}
    #sec2 .con2 .list01 li a::before {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con2 .list01 .date {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con2 .list01 .subject {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    /*#sec2 .con2 .list01 li a:hover::before {right: 20px; background: url(../images/icon/arrow1_4.png) no-repeat center;}*/
    #sec2 .con2 .list01 li a:hover::before {background-position: center left;}
    #sec2 .con2 .list01 li a:hover .date {color: #111;}
    #sec2 .con2 .list01 li a:hover .subject {color: #111;}
    #sec2 .con2 .list02 .img_box::before {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con2 .list02 .img_box div {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con2 .list02 .subject {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s;}
    #sec2 .con2 .list02 li a:hover .img_box::before {opacity: 1;}
    #sec2 .con2 .list02 li a:hover .img_box div {transform: scale(1.1);}
    #sec2 .con2 .list02 li a:hover .subject {color: #111;}
}

/* 태블릿&모바일 공통*/
@media all and (max-width:1024px){
	#main #container {padding-top: 50px;}
    
    
    
    /* 공통 */
    #main #container .btn1 {width: 120px; font-size: 12px;}
    #main #container .btn1 span {line-height: 38px; padding-right: 26px;}
    #main #container .btn1 span::before {width: 12px; background-size: 36px auto!important;}
    
    
    
    /* sec1 */
    #sec1 .img_box {height: 480px;}
    #sec1 .txt_box .txt_wrap {padding-top: 45px;}
    #sec1 .txt_box .txt1 {margin-bottom: 18px; font-size: 16px;}
    #sec1 .txt_box .txt2 {font-size: 36px; line-height: 44px; max-width: 400px;}
    #sec1 .btn_box .num {font-size: 12px; margin-right: 18px; line-height: 20px;}
    #sec1 .btn_box .num .thisN {min-width: 17px;}
    #sec1 .btn_box .num .bar {margin: 0 7px; width: 80px;}
    #sec1 .btn_box .btn > div {width: 17px; height: 20px;}
    #sec1 .btn_box .btn .stop {background-size: 7px auto!important; margin-right: 8px;}
    #sec1 .btn_box .btn #arrow_next {background-size: 8px auto!important;}
    
    
    
    /* sec2 */
    #sec2 {padding: 85px 0 80px;}
    #sec2 .con1 {margin-bottom: 80px;}
    #sec2 .con1 .l_box {width: 320px;}
    #sec2 .con1 .l_box .txt1 {font-size: 20px; line-height: 30px; margin-bottom: 13px;}
    #sec2 .con1 .l_box .txt1 strong {font-size: 28px; line-height: 46px; display: block;}
    #sec2 .con1 .l_box .txt2 {font-size: 14px; line-height: 22px; margin: 0px auto 28px; max-width: 280px;}
    #sec2 .con1 .r_box {width: calc(100% - 320px);}
    #sec2 .con1 .r_box li {margin-bottom: 10px;}
    #sec2 .con1 .r_box li a {padding: 25px 83px 26px 20px; font-size: 12px; line-height: 20px;}
    #sec2 .con1 .r_box li a::before {width: 40px; height: 40px; background-size: 40px auto!important; margin-top: -20px; right: 20px;}
    #sec2 .con1 .r_box li a strong {font-size: 16px; line-height: 24px;  margin-bottom: 8px;}
    #sec2 .con1 .r_box li a strong sup {top: 2px;}

    #sec2 .con1 .r_box li.col2 a { flex-direction: column; gap: 10px; padding: 25px 20px; }
    #sec2 .con1 .r_box li.col2 a strong { width: 100%; font-size: 16px; margin-bottom: 5px; }
    #sec2 .con1 .r_box li.col2 a p { width: 100%; font-size: 12px; line-height: 20px; margin-bottom: 5px; }
    #sec2 .con1 .r_box li.col2 a p:last-child { margin-bottom: 0; }
    #sec2 .con1 .r_box li.col2 a p span { font-size: 15px; margin-bottom: 4px; }
    
    #sec2 .con2 .con_box {min-height: auto; padding: 21px 10px 28px;}
    #sec2 .con2 .con_box .con_ttl {padding-bottom: 18px;}
    #sec2 .con2 .con_box .con_ttl strong {font-size: 20px;}
    #sec2 .con2 .con_box .con_ttl a {font-size: 12px; padding-right: 15px; top: 8px;}
    #sec2 .con2 .con_box .con_ttl a::before {background-size: 7px auto; width: 7px;}
    
    #sec2 .con2 .list01 li a {padding: 0 5px 0 75px; height: 71px;}
    #sec2 .con2 .list01 li a::before {display: none;}
    #sec2 .con2 .list01 .date {width: 66px; font-size: 11px;}
    #sec2 .con2 .list01 .date::before {height: 28px; margin-top: -14px;}
    #sec2 .con2 .list01 .date strong {font-size: 20px; line-height: 19px; margin-bottom: 7px;}
    #sec2 .con2 .list01 .subject {-webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipss; display:-webkit-box; white-space: normal; font-size: 12px; line-height: 20px;}
    
    #sec2 .con2 .list02 {padding-top: 20px;}
    #sec2 .con2 .list02 .img_box {padding-bottom: 219px;}
    #sec2 .con2 .list02 .subject {margin-top: 9px; font-size: 12px; line-height: 20px; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipss; display:-webkit-box; white-space: normal;}
    
    
    
    /* sec3 */
    #sec3 .inner_box {height: 287px;}
    #sec3 .txt1 {font-size: 14px; margin-bottom: 14px;}
    #sec3 .txt2 {font-size: 22px; line-height: 30px; margin: 0 auto 28px;}
}

/* 모바일 */
@media all and (max-width:768px){
    section [data-aos=fade-right], section [data-aos=fade-left] {transform: translate3d(0,100px,0);}
    
    
    
	/* sec2 */
    #sec2 .con1 {display: block;}
    #sec2 .con1 .l_box {width: 100%; margin-bottom: 50px;}
    #sec2 .con1 .l_box .txt_box {width: 100%; text-align: center;}
    #sec2 .con1 .l_box .txt2 {max-width: 250px;}
    #sec2 .con1 .l_box .btn1 {margin: 0 auto;}
    #sec2 .con1 .r_box {width: 100%;}
	#sec2 .con1 .r_box li a p {max-width: 190px;}
    
    #sec2 .con2 {display: block;}
    #sec2 .con2 .con_box {width: 100%; margin-right: 0; margin-bottom: 20px;}
    #sec2 .con2 .con_box:last-child {margin-bottom: 0;}
    #sec2 .con2 .list02 .img_box {padding-bottom: 81.085%;}
    
    
    
    
    /* sec3 */
    #sec3 .bg {background: url(../images/main/sec3_bg_m.jpg) no-repeat center;}
    #sec3 .txt2 {max-width: 310px;}
}