/* 공통영역 */
#main {overflow: hidden; padding-top: 14rem;}
#main::before {content: ''; position: absolute; top: -5rem; right: 0; background: url('../img/main/s1_bg.png') no-repeat; background-size: 100%; width: 31.8rem; height: 36.3rem;}
.swiper-button-prev, .swiper-button-next, .swiper-pagination {position: static; margin-top: 0;}
.swiper-button-prev, .swiper-button-next {background-repeat: no-repeat; background-size: 100%; color: transparent; opacity: 1 !important; font-size: 0; z-index: 1;}
.container {width: 100%; max-width: 144rem; overflow: hidden;}
section a.more {display: block; width: 5rem; height: 5rem; transition: all 0.3s; background-image: url('../img/main/more_btn.png'); background-repeat: no-repeat; background-size: 100%; font-size: 0;}
section a.more:hover {background-image: url('../img/main/more_btn_hover.png'); transform: rotate(360deg);}

@media screen and (max-width: 1440px) {
    .container {max-width: 90%;}
}

@media screen and (max-width: 740px) {
    #main {padding-top: 16rem;}
    #main::before {content: ''; background: url('../img/main/s1_bg_mo.png') no-repeat; background-size: 100%; width: 24.1rem; height: 29.7rem;}
    section {padding: 0 3rem; box-sizing: border-box;}
    .container {max-width: 100%;}
    section a.more {width: 5rem; height: 5rem;}
}

/* section1 */
#section1 .inner {max-width: 162rem; height: 62rem; gap: 3.7rem;}
#section1 .left_cont {width: 118.5rem; border-radius: 3rem; overflow: hidden;}
#section1 .main_banner img {width: 100%; height: 100%; object-fit: cover;}

#section1 .banner_btn {gap: 0.9rem; bottom: 2.8rem; right: 2.8rem; width: 12.3rem; padding: 1.2rem 0; border-radius: 5rem; box-shadow: 0px 0px 10px 0px #0000001A; border: 1px solid #0000001A; box-sizing: border-box; background: #fff; z-index: 1;}
#section1 .banner_btn .prev,
#section1 .banner_btn .next {width: 2rem; height: 2rem;}
#section1 .banner_btn .prev {background-image: url('../img/main/banner_prev.png');}
#section1 .banner_btn .next {background-image: url('../img/main/banner_next.png');}
#section1 .banner_btn .page {width: auto; opacity: 0.8;}
#section1 .banner_btn .page .swiper-pagination-current {font-weight: 700; opacity: 1;}

#section1 .right_cont {width: 39.8rem;}
#section1 .right_cont .cont {border-radius: 2rem;}

#section1 .notice {height: 28.2rem; background: linear-gradient(117.5deg, rgba(140, 66, 149, 0.99) -0.7%, #2B59B3 117.74%); padding: 2.8rem 2.2rem; box-sizing: border-box;}
#section1 .notice .title {height: 3.5rem; margin-bottom: 2.5rem;}
#section1 .notice_btn {gap: 0.7rem;}
#section1 .notice_btn .prev,
#section1 .notice_btn .next,
#section1 .notice_btn .stop {width: 3.4rem; height: 3.5rem;}
#section1 .notice_btn .prev {background-image: url('../img/main/notice_prev.png');}
#section1 .notice_btn .next {background-image: url('../img/main/notice_next.png');}
#section1 .notice_btn .stop {background: url('../img/main/notice_stop.png') no-repeat; background-size: 100%; font-size: 0;}
#section1 .notice .notice_slide {overflow: hidden; width: 100%; height: calc(100% - 6rem); background: #fff; border-radius: 1.5rem;}
#section1 .notice .notice_slide .swiper-slide {padding: 2rem 1rem 2rem 2rem; box-sizing: border-box;}
#section1 .notice .notice_slide .tit {line-height: 150%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}

#section1 .bt_cont {height: calc(100% - 30.2rem);}
#section1 .bt_cont .cont {padding: 3rem; box-sizing: border-box; background-repeat: no-repeat;}
#section1 .bt_cont .cont .tit {line-height: 160%;}
#section1 .bt_cont .cont .txt {line-height: 150%; margin-top: 0.5rem;}

#section1 .month_cal {height: 14.8rem; background: url('../img/main/month_icon.png') right 3.5rem center #EFF1F9; background-size: 5.5rem; transition: background 0.3s;}
#section1 .month_cal:hover {background-color: #fff; outline: 2px solid #3E65CC;}
#section1 .center_intro {height: 14.8rem; background: url('../img/main/center_icon.png') right 3rem center #F6EFF9; background-size: 6.8rem; transition: background 0.3s;}
#section1 .center_intro:hover {background-color: #fff; outline: 2px solid #563BA4;}

@media screen and (max-width: 1620px) {
    #section1 .inner {max-width: 93%;}
}

@media screen and (max-width: 1400px) {
    #section1 .inner {height: 55rem; gap: 2rem;}
    #section1 .notice {height: 23rem;}
    #section1 .bt_cont {height: calc(100% - 25rem);}
    #section1 .month_cal {height: 14rem;}
    #section1 .center_intro {height: 14rem;}
}

@media screen and (max-width: 740px) {
    #section1 .inner {max-width: 100%; height: auto; flex-wrap: wrap;}
    #section1 .left_cont {width: 100%; height: 40rem;}
    #section1 .right_cont {flex-direction: row; width: 100%;}
    #section1 .bt_cont {height: 100%;}
    #section1 .notice {width: 33.5rem; height: 31rem;}
    #section1 .month_cal,
    #section1 .center_intro {width: 33.5rem; height: 14.75rem; background-position: right 2.5rem center;}
}
/* section1 */

/* section2 */
#section2 {padding-top: 13rem; padding-bottom: 13rem;}
#section2 .s_title {padding-top: 0.7rem;}
#section2 .tab_wrap {margin-bottom: 3rem;}
#section2 .tab_wrap .tab_list {gap: 0.7rem;}
#section2 .tab_wrap .tab_list a:not(.more) {padding: 1.1rem 2.5rem; box-sizing: border-box; border: 1px solid #E0E0E0; border-radius: 3rem; background: #fff; line-height: 150%; transition: border-color 0.3s;}
#section2 .tab_wrap .tab_list a:not(.more):hover {border-color: #563BA4; color: #563BA4; font-weight: 600;}
#section2 .tab_wrap .tab_list a.on {background: #563BA4; border-color: #563BA4; color: #fff; font-weight: 600;}
#section2 .tab_wrap .tab_list a.on:hover {color: #fff;}
#section2 .tab_cont_wrap {margin: 0 0.4rem;}
#section2 .swiper {display: none;}
#section2 .swiper.on {display: block;}
#section2 .swiper .swiper-slide {width: 33.4rem !important; background: #fff; border-radius: 1rem; overflow: hidden; margin-right: 3rem;}
#section2 .swiper .swiper-slide:last-child {margin-right: 0;}
#section2 .swiper .img {height: 24rem; overflow: hidden;}
#section2 .swiper .img img {width: 100%; height: 100%; object-fit: cover; transition: all 0.3s;}
#section2 .swiper .swiper-slide:hover .img img {transform: scale(1.1);}
#section2 .swiper .possible:hover {outline: 4px solid #E16565; box-shadow: 0.5rem 0.5rem 2rem rgba(0,0,0,0.15);}
#section2 .swiper .end:hover {outline: 4px solid #CCCCCC; box-shadow: 0.5rem 0.5rem 2rem rgba(0,0,0,0.15);}
#section2 .swiper .text {padding: 3rem 2.5rem 4rem 2.5rem; box-sizing: border-box; border-bottom-left-radius: 1rem; border-bottom-right-radius: 1rem; border: 1px solid #E0E0E0; margin: 0 0.1rem 0.1rem 0.1rem;}
#section2 .swiper .swiper-slide:hover .text {border: none;}
#section2 .swiper .text .tit {height: 6.4rem; line-height: 160%; margin-bottom: 2rem; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
#section2 .swiper .text .date_list {margin-bottom: 1.5rem;}
#section2 .swiper .text .date_list .icon {gap: 0.7rem; margin-bottom: 0.3rem;}
#section2 .swiper .text .date_list .icon img {width: 1.3rem;}
#section2 .swiper .text .date_list .icon.type2 img {width: 1.4rem;}
#section2 .swiper .text .date_list p {line-height: 150%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#section2 .badge {text-align: center; padding: 0.6rem 1.4rem; box-sizing: border-box; border-top-left-radius: 1rem; border-bottom-right-radius: 1rem; line-height: 150%;}
#section2 .possible .badge {background: #E16565;}
#section2 .end .badge {background: #CCCCCC;}
#section2 .btn_area {margin-top: 4rem; gap: 3.6rem;}
#section2 .btn_area .flex {gap: 3.5rem; width: 4.9rem;}
#section2 .btn_area .btn {width: 0.7rem; height: 1.4rem;}
#section2 .btn_area .prev {background-image: url('../img/main/board_prev.png');}
#section2 .btn_area .next {background-image: url('../img/main/board_next.png');}
#section2 .btn_area .swiper-scrollbar {width: 134.5rem; height: 0.6rem; border-radius: 2rem; background: #E0E0E0;}
#section2 .btn_area .swiper-scrollbar .swiper-scrollbar-drag {background: #333333; border-radius: 2rem;}

@media screen and (max-width: 1440px) {
    #section2 .swiper .img {height: 20rem;}
    #section2 .swiper .swiper-slide {width: calc(25% - 2.25rem) !important;}
}

@media screen and (max-width: 740px) {
    #section2 .tab_wrap {margin-bottom: 4rem; flex-direction: column; align-items: flex-start; gap: 3rem;}
    #section2 .tab_wrap .tab_list a:not(.more) {font-size: 2.2rem; padding: 1.5rem 2.5rem;}
    #section2 .swiper .board_slide {display: block !important;}
    #section2 .swiper .swiper-slide {width: 33.7rem !important; margin-right: 1.5rem;}
    #section2 .swiper .img {height: 24rem;}
    #section2 .swiper .text {padding: 2.9rem 2.5rem 4.9rem 2.5rem;}
    #section2 .swiper .text .tit {font-size: 2.2rem; height: 7rem;}
    #section2 .swiper .text .fs16 {font-size: 1.8rem;}
    #section2 .swiper .text .icon .fs16 {font-size: 2rem;}
    #section2 .swiper .text .date_list .icon img,
    #section2 .swiper .text .date_list .icon.icon.type2 img {width: 1.5rem;}
    #section2 .btn_area {margin-top: 5rem; gap: 3.2rem;}
    #section2 .btn_area .swiper-pagination {width: 57.7rem; height: 0.7rem;}
    #section2 .btn_area .flex {gap: 5rem; width: 8.2rem; flex-shrink: 0;}
    #section2 .btn_area .btn {width: 1.6rem; height: 3.2rem;}
    #section2 .btn_area .prev {background-image: url('../img/main/board_prev_mo.png');}
    #section2 .btn_area .next {background-image: url('../img/main/board_next_mo.png');}
}
/* section2 */

/* section3 */
#section3 {padding-top: 10rem; padding-bottom: 10rem; background: url('../img/main/s3_bg.png') center no-repeat; background-size: cover;}
#section3 .s_title {margin-bottom: 3rem;}
#section3 .policy_list {gap: 3rem;}
#section3 .policy_list li {width: calc(20% - 2.4rem); height: 18.5rem; margin-bottom: 0 !important;}
#section3 .policy_list li a {position: relative; border-radius: 2rem; border: 1px solid #E0E0E0; box-sizing: border-box; background: #fff; padding-bottom: 4rem; transition: all 0.3s;}
#section3 .policy_list li a:hover {background: linear-gradient(117.5deg, rgba(140, 66, 149, 0.99) -0.7%, #2B59B3 117.74%);}
#section3 .policy_list li a p {transition: all 0.3s;}
#section3 .policy_list li a:hover p {color: #fff;}
#section3 .policy_list li a::before {content: ''; position: absolute; top: 4rem; left: 50%; transform: translateX(-50%); background-repeat: no-repeat; background-size: 100%; width: 6.2rem; height: 6.5rem; transition: all 0.3s;}
#section3 .policy_list li:first-child a::before {background-image: url('../img/main/s3_img1.png');}
#section3 .policy_list li:nth-child(2) a::before {background-image: url('../img/main/s3_img2.png');}
#section3 .policy_list li:nth-child(3) a::before {background-image: url('../img/main/s3_img3.png'); top: 5.3rem;}
#section3 .policy_list li:nth-child(4) a::before {background-image: url('../img/main/s3_img4.png');}
#section3 .policy_list li:nth-child(5) a::before {background-image: url('../img/main/s3_img5.png');}
#section3 .policy_list li:first-child a:hover::before {background-image: url('../img/main/s3_img1_hover.png');}
#section3 .policy_list li:nth-child(2) a:hover::before {background-image: url('../img/main/s3_img2_hover.png');}
#section3 .policy_list li:nth-child(3) a:hover::before {background-image: url('../img/main/s3_img3_hover.png');}
#section3 .policy_list li:nth-child(4) a:hover::before {background-image: url('../img/main/s3_img4_hover.png');}
#section3 .policy_list li:nth-child(5) a:hover::before {background-image: url('../img/main/s3_img5_hover.png');}
#section3 .policy_list li a .img {width: 6.2rem; margin-bottom: 1.1rem;}
#section3 .policy_list li a .tit {height: 2.9rem; line-height: 160%;}

@media screen and (max-width: 740px) {
    #section3 {background: url('../img/main/s3_bg_mo.png') center no-repeat; background-size: cover;}
    #section3 .policy_list {flex-wrap: wrap; gap: 1rem;}
    #section3 .policy_list li {width: calc(33.333% - 0.666rem);}
    #section3 .policy_list li:nth-child(4), 
    #section3 .policy_list li:nth-child(5) {width: calc(50% - 0.5rem);}
}
/* section3 */

/* section4 */
#section4 {padding-top: 13rem; padding-bottom: 13rem;}
#section4::before {content: ''; position: absolute; bottom: 3.6rem; left: 0; background: url('../img/main/s4_bg.png') no-repeat; background-size: 100%; width: 31.1rem; height: 47.8rem;}
#section4 .s4_inner {gap: 5.3rem;}
#section4 .s4_box .title {height: 5.8rem; margin-bottom: 3rem;}
#section4 .fac_box {width: 60.6rem; overflow: hidden;}
#section4 .fac_btn {gap: 0.7rem;}
#section4 .fac_btn .prev,
#section4 .fac_btn .next,
#section4 .fac_btn .stop {width: 5rem; height: 5rem;}
#section4 .fac_btn .prev {background-image: url('../img/main/fac_prev.png'); transition: all 0.3s;}
#section4 .fac_btn .next {background-image: url('../img/main/fac_next.png'); transition: all 0.3s;}
#section4 .fac_btn .stop {background-image: url('../img/main/fac_stop.png'); background-repeat: no-repeat; background-size: 100%; font-size: 0; transition: all 0.3s;}
#section4 .fac_btn .prev:hover {background-image: url('../img/main/fac_prev_hover.png');}
#section4 .fac_btn .next:hover {background-image: url('../img/main/fac_next_hover.png');}
#section4 .fac_btn .stop:hover {background-image: url('../img/main/fac_stop_hover.png');}
#section4 .fac_box .fac_slide {height: 44rem;}
#section4 .fac_box .swiper-slide a {border-radius: 2rem; overflow: hidden;}

#section4 .root_daum_roughmap .cont {display: none;}
#section4 .root_daum_roughmap .map_border {opacity: 0;}
#section4 .dir_box {width: 78.1rem; overflow: hidden;}
#section4 .dir_box .map_box {height: 44rem;}
#section4 .dir_box .s4_map {width: 100% !important; height: 42.2rem; border-radius: 2rem;}
#section4 .dir_box .wrap_map {width: 100%; height: 100%;}
#section4 .dir_box .map_info {width: 98%; max-width: 76.2rem; padding: 1.15rem 0 1.15rem 2.5rem; box-sizing: border-box; border-radius: 0.5rem 5rem 5rem 0.5rem; background: linear-gradient(300.76deg, #2B59B3 0%, rgba(140, 66, 149, 0.99) 114%); z-index: 1; gap: 3rem;}
#section4 .dir_box .map_info li {gap: 1.5rem; height: 3.2rem;}
#section4 .dir_box .map_info li .icon {gap: 0.7rem; flex-shrink: 0;}
#section4 .dir_box .map_info li:first-child .icon img {width: 1.4rem;}
#section4 .dir_box .map_info li:nth-child(2) .icon img {width: 1.5rem;}

@media screen and (max-width: 1440px) {
    #section4 .dir_box .map_info {width: 55.2rem; flex-wrap: wrap; row-gap: 0.7rem;}
}

@media screen and (max-width: 740px) {
    #section4::before {width: 22.3rem; height: 30rem; bottom: -2rem; background: url('../img/main/s4_bg_mo.png') no-repeat; background-size: 100%;}
    #section4 .s4_inner {flex-direction: column; gap: 13rem;}
    #section4 .fac_box,
    #section4 .dir_box {width: 100%;}
    #section4 .fac_box .fac_slide {height: 50.1rem;}
    #section4 .dir_box .map_box {height: 48rem;}
    #section4 .dir_box .map_info {width: 67.7rem; padding: 2rem 0 2rem 2.5rem; border-radius: 0.5rem 8rem 8rem 0.5rem;}
    #section4 .dir_box .map_info li {height: 3.5rem;}
    #section4 .dir_box .map_info li .fs20 {font-size: 2.2rem;}
}
/* section4 */