/* sub_top */
.sub_visual { position: relative; height: 287px; overflow: hidden; }
.sub_visual .bg { z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform-origin: center; }
.sub_visual .bg { animation: suv_bg forwards linear 5s; }
@keyframes suv_bg {
    0% { transform: scale(1.1); }
    100% { transform: scale(1); }
}
.sub_visual .bg { background: url(/image/sub/subtop_bg.jpg) no-repeat center/cover; }

.sub_visual .frame { z-index: 2; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.4); }
.sub_visual .txtbox { z-index: 3; position: relative; top: 0; height: 100%; padding: 0 20px; }
.sub_visual .txtbox .texts { position: relative; top: 50%; transform: translateY(-50%); text-align: center; }
.sub_visual .txtbox .text1 { font-weight: 700; font-size: 50px; color: #fff; }
@media (max-width: 1535px) {
    .sub_visual { height: 250px; }
}
@media (max-width: 1279px) {
    .sub_visual { height: 230px; }
}
@media (max-width: 1023px) {
    .sub_visual { height: 190px; }
}
@media (max-width: 767px) {
    .sub_visual { height: 170px; }
}

/* sub_common */
.sub_sect { position: relative; padding: 80px 0; overflow: hidden; }
.sub_sect .sub_tit { padding-bottom: 45px; text-align: center; font-weight: 600; font-size: 43px; color: #000; }

/* sub1 */
.sub1_1 .descbox { padding-bottom: 50px; text-align: center; }
.sub1_1 .descbox .desc1 { font-weight: 700; font-size: 40px; color: #3e3e3e; line-height: 1.35; }
.sub1_1 .descbox .desc2 { font-size: 18px; color: #7f7f7f; line-height: 1.35; }
.sub1_1 .descbox .desc2 br { display: none; }

.sub1_1 .contents1 ul { border-top: 1px solid #e2e2e2; }
.sub1_1 .contents1 ul li { display: flex; flex-wrap: nowrap; padding: 20px 15px; border-bottom: 1px solid #e2e2e2; }
.sub1_1 .contents1 ul li .year { width: 140px; min-width: 140px; font-weight: 700; font-size: 30px; color: #89a150; line-height: 1; }
.sub1_1 .contents1 ul li .info { width: 100%; font-size: 18px; color: #6b6b6b; line-height: 1.65; }
.sub1_1 .contents1 ul li .info * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_1 .contents1 ul li .info dl { display: flex; flex-wrap: nowrap; }
.sub1_1 .contents1 ul li .info dl dt { width: 150px; min-width: 150px; font-weight: 600; color: #000; }
.sub1_1 .contents1 ul li .info dl dd { width: 100%; }

.sub1_1 .contents2 { margin-top: 90px; padding: 70px 0; overflow: hidden; background-color: #f4f6ee; }
.sub1_1 .contents2 ul { display: flex; flex-wrap: nowrap; text-align: center; }
.sub1_1 .contents2 ul > li { position: relative; width: 25%; padding: 0 15px; }
.sub1_1 .contents2 ul > li::after { display: block; content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 90%; background-color: #cbcbcb; }
.sub1_1 .contents2 ul > li:nth-of-type(1):after { display: none; }
.sub1_1 .contents2 ul > li .iconbox img { display: block; width: 100%; }
.sub1_1 .contents2 ul > li .txtbox { margin-top: 20px; }
.sub1_1 .contents2 ul > li .txtbox .txt1 { font-weight: 600; font-size: 30px; color: #89a150; line-height: 1.45; }
.sub1_1 .contents2 ul > li .txtbox .txt2 { margin-top: 12px; font-size: 18px; color: #525252; line-height: 1.65; }

.sub1_1 .contents3 { margin-top: 90px; }
.sub1_1 .contents3 .mapcont { height: 550px; }
.sub1_1 .contents3 .mapcont .root_daum_roughmap { width: 100%; height: 100%; }
.sub1_1 .contents3 .mapcont .root_daum_roughmap .wrap_map { width: 100%; height: calc(100% - 32px); }

.sub1_1 .contents3 .mapdesc { margin-top: 35px; display: flex; flex-wrap: nowrap; justify-content: center; font-size: 18px; color: #3a3a3a; line-height: 1.45; }
.sub1_1 .contents3 .mapdesc * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_1 .contents3 .mapdesc dl { display: flex; flex-wrap: nowrap; align-items: center; margin: 0 20px; }
.sub1_1 .contents3 .mapdesc dl dt { min-width: max-content; margin-right: 7px; }
.sub1_1 .contents3 .mapdesc dl dt img { display: inline-block; width: 27px; }
.sub1_1 .contents3 .mapdesc dl dd b { font-weight: 700; color: #6a8b1a; }


@media (max-width: 1535px) {
    .sub1_1 .contents1 ul li { padding: 17px 13px; }
    .sub1_1 .contents1 ul li .year { width: 130px; min-width: 130px; font-size: 26px; }
    .sub1_1 .contents1 ul li .info { font-size: 16px; }
    .sub1_1 .contents1 ul li .info dl dt { width: 140px; min-width: 140px; }

    .sub1_1 .contents3 .mapcont { height: calc(300px + 15vw); }

    .sub1_1 .contents3 .mapdesc dl { margin: 0 17px; }
    .sub1_1 .contents3 .mapdesc dl dt { margin-right: 6px; }
    .sub1_1 .contents3 .mapdesc dl dt img { width: 24px; }
}

@media (max-width: 1279px) {
    .sub1_1 .contents1 ul li { padding: 15px 10px; }
    .sub1_1 .contents1 ul li .year { width: 110px; min-width: 110px; font-size: 22px; }
    .sub1_1 .contents1 ul li .info { font-size: 15px; }
    .sub1_1 .contents1 ul li .info dl dt { width: 130px; min-width: 130px; }

    .sub1_1 .contents3 .mapcont { height: calc(240px + 12vw); }

    .sub1_1 .contents3 .mapdesc dl { margin: 0 15px; }
    .sub1_1 .contents3 .mapdesc dl dt { margin-right: 5px; }
    .sub1_1 .contents3 .mapdesc dl dt img { width: 20px; }
}

@media (max-width: 1023px) {
    .sub1_1 .contents1 ul li { padding: 13px 0; display: block; }
    .sub1_1 .contents1 ul li .year { width: 100%; min-width: initial; font-size: 18px; margin-bottom: 10px; }
    .sub1_1 .contents1 ul li .info { font-size: 14px; }
    .sub1_1 .contents1 ul li .info dl dt { width: 110px; min-width: 110px; }

    .sub1_1 .contents2 ul { max-width: 500px; margin: 0 auto; flex-wrap: wrap; justify-content: space-between; }
    .sub1_1 .contents2 ul li { width: 48%; }
    .sub1_1 .contents2 ul li:nth-of-type(n + 3) { margin-top: 6%; }
    .sub1_1 .contents2 ul > li::after { display: none; }
    .sub1_1 .contents2 ul > li .txtbox .txt2 { margin-top: 10px; }

    .sub1_1 .contents3 .mapcont { height: calc(200px + 10vw); }

    .sub1_1 .contents3 .mapdesc { display: block; }
    .sub1_1 .contents3 .mapdesc dl { margin: 0; width: 100%; }
    .sub1_1 .contents3 .mapdesc dl:nth-of-type(n + 2) { margin-top: 15px; }
    .sub1_1 .contents3 .mapdesc dl dt img { width: 17px; }
}

@media (max-width: 767px) {
    .sub1_1 .descbox .desc2 br { display: inline-block; }

    .sub1_1 .contents1 ul li { padding: 10px 0; }
    .sub1_1 .contents1 ul li .year { font-size: 17px; }
    .sub1_1 .contents1 ul li .info { font-size: 13px; }
    .sub1_1 .contents1 ul li .info dl dt { width: 100px; min-width: 100px; }
}

@media (max-width: 480px) {
    .sub1_1 .contents2 ul { max-width: initial; width: 100%; }
    .sub1_1 .contents2 ul li { width: 100%; display: flex; flex-wrap: nowrap; padding: initial; }
    .sub1_1 .contents2 ul li:nth-of-type(n + 3) { margin-top: initial; }
    .sub1_1 .contents2 ul li:nth-of-type(n + 2) { margin-top: 20px; }
    .sub1_1 .contents2 ul li .iconbox { min-width: max-content; margin-right: 10px; }
    .sub1_1 .contents2 ul li .iconbox img { display: inline-block; width: 125px; }
    .sub1_1 .contents2 ul li .txtbox { text-align: left; }
}

/* sub2 */
.sub2nav { padding-bottom: 65px; margin: -8px; text-align: center; font-weight: 500; font-size: 20px; color: #89a150; line-height: 1; }
.sub2nav * { font-weight: inherit; font-size: inherit; color: inherit; }
.sub2nav ul { display: flex; flex-wrap: nowrap; max-width: 1070px; margin: 0 auto; }
.sub2nav ul li { width: 25%; padding: 8px; }
.sub2nav ul li a { display: block; padding: 11px 5px; border-radius: 100px; border: 1px solid #bfbfbf; border-radius: 100px; } 
.sub2nav ul li.active a { background-color: #7d983c; border: 1px solid #7d983c; color: #fff; }
@media (max-width: 1535px) {
    .sub2nav ul li a { padding: 10px 5px; }
}
@media (max-width: 1279px) {
    .sub2nav ul li a { padding: 8px 5px; }
}
@media (max-width: 1023px) {
    .sub2nav ul { flex-wrap: wrap; justify-content: space-between; margin: initial; }
    .sub2nav ul li { width: 48%; padding: initial; }
    .sub2nav ul li:nth-of-type(n + 3) { margin-top: 2%; }
    .sub2nav ul li a { padding: 7px 5px; }
}
@media (max-width: 460px) {
    .sub2nav ul { display: block; }
    .sub2nav ul li { width: 100%; }
    .sub2nav ul li:nth-of-type(n + 3) { margin-top: initial; }
    .sub2nav ul li:nth-of-type(n + 2) { margin-top: 10px; }
    .sub2nav ul li a { padding: 6px 5px; }
}

/* sub2 contents1 */
.sub2 .contents1 .text1 { padding-bottom: 35px; text-align: center; font-weight: 700; font-size: 40px; color: #3e3e3e; letter-spacing: 0.01em; }
.sub2 .contents1 .imgbox img { width: 100%; }
.sub2 .contents2 { margin-top: 50px; }
.sub2 .contents2 .text1 { font-weight: 700; font-size: 35px; color: #7d983c; line-height: 1.45; }
.sub2 .contents2 .text2 { margin-top: 20px; font-size: 18px; color: #7b7b7b; line-height: 1.65; }
.sub2 .contents2 .text3 { margin-top: 45px; }
.sub2 .contents2 .text3 dl { display: flex; flex-wrap: nowrap; background-color: #f9f9f9; padding: 40px 30px; }
.sub2 .contents2 .text3 dl:nth-of-type(n + 2) { margin-top: 20px; }
.sub2 .contents2 .text3 dl dt { padding-right: 30px; position: relative; width: 180px; min-width: 180px; font-weight: 700; font-size: 25px; color: #595959; }
.sub2 .contents2 .text3 dl dt::after { display: block; content: ''; position: absolute; top: 50%; transform: translateY(-50%); right: 0; width: 1px; height: 100%; background-color: #ccd6b4; }
.sub2 .contents2 .text3 dl dd { padding-left: 30px; width: 100%; font-size: 18px; color: #7b7b7b; line-height: 1.65; }
.sub2 .contents2 .text3 dl dd * { font-size: inherit !important; color: inherit; line-height: inherit; }
.sub2 .contents2 .text3 dl dd p { display: inline-flex; flex-wrap: nowrap; align-items: center; margin-right: 15px; }
.sub2 .contents2 .text3 dl dd p img { display: inline-block; margin-right: 10px; width: 22px; }
@media (max-width: 1535px) {
    .sub2 .contents2 .text2 { margin-top: 17px; }
    .sub2 .contents2 .text3 dl { padding: 30px 25px; }
    .sub2 .contents2 .text3 dl dt { padding-right: 25px; width: 170px; min-width: 170px; }
    .sub2 .contents2 .text3 dl dd { padding-left: 25px; }
    .sub2 .contents2 .text3 dl dd p img { width: 20px; }
}
@media (max-width: 1279px) {
    .sub2 .contents2 .text2 { margin-top: 15px; }
    .sub2 .contents2 .text3 dl { padding: 25px 20px; }
    .sub2 .contents2 .text3 dl dt { padding-right: 20px; width: 160px; min-width: 160px; }
    .sub2 .contents2 .text3 dl dd { padding-left: 20px; }
    .sub2 .contents2 .text3 dl dd p img { width: 18px; }
}
@media (max-width: 1023px) {
    .sub2 .contents2 .text2 { margin-top: 13px; }
    .sub2 .contents2 .text3 dl { padding: 20px 15px; display: block; }
    .sub2 .contents2 .text3 dl dt { padding-right: initial; width: 100%; min-width: initial; padding-bottom: 10px; margin-bottom: 10px; }
    .sub2 .contents2 .text3 dl dt::after { top: initial; transform: translateY(0); bottom: 0; right: initial; left: 0; width: 100%; height: 1px; }
    .sub2 .contents2 .text3 dl dd { padding-left: initial; margin-top: 15px; }
    .sub2 .contents2 .text3 dl dd p { display: flex; margin-right: initial; }
    .sub2 .contents2 .text3 dl dd br { display: none; }
}

/* sub4_1 */
.sub4_1 .contents1 { text-align: center; }
.sub4_1 .contents1 .text1 { position: relative; display: inline-block; font-weight: 700; font-size: 30px; color: #89a150; line-height: 1.35; }
.sub4_1 .contents1 .text1 * { font-weight: inherit; font-size: inherit; color: inherit; line-height: inherit; }
.sub4_1 .contents1 .text1 span { z-index: 2; position: relative; }
.sub4_1 .contents1 .text1 br { display: none; }
.sub4_1 .contents1 .text1 img { z-index: 1; position: absolute; top: 40%; transform: translateY(-50%); width: 70px; display: inline-block; }
.sub4_1 .contents1 .text1 .img1 { left: -55px; }
.sub4_1 .contents1 .text1 .img2 { right: -55px; }
.sub4_1 .contents1 .text2 { margin-top: 70px; font-weight: 700; font-size: 45px; color: #3e3e3e; line-height: 1.33; }
.sub4_1 .contents1 .text3 { margin-top: 5px; font-size: 18px; color: #7f7f7f; line-height: 1.45; }
.sub4_1 .contents1 .text4 { padding: 40px 0; font-weight: 600; font-size: 24px; color: #fff; display: flex; flex-wrap: nowrap; justify-content: center; }
.sub4_1 .contents1 .text4 * { font-weight: inherit; font-size: inherit; color: inherit; }
.sub4_1 .contents1 .text4 a { display: inline-block; margin: 0 7px; padding: 13px 5px; width: 310px; border: 2px solid #7d983c; border-radius: 100px; }
.sub4_1 .contents1 .text4 a:first-of-type { background-color: #7d983c; color: #fff; }
/* .sub4_1 .contents1 .text4 a:last-of-type { background-color: transparent; color: #7d983c; } */

.sub4_1 .contents2 { margin-top: 60px; padding: 60px 0; overflow: hidden; background-color: #f3f5ed; text-align: center; }
.sub4_1 .contents2 ul { display: flex; flex-wrap: nowrap; justify-content: space-between; }
.sub4_1 .contents2 ul li { width: 30%; padding: 35px 30px; background-color: #fff; border-radius: 20px; box-shadow: 0 0 8px rgba(205, 205, 205, 0.8); overflow: hidden; }
.sub4_1 .contents2 ul li .iconbox img { display: inline-block; width: 130px; }
.sub4_1 .contents2 ul li .txtbox { margin-top: 20px; }
.sub4_1 .contents2 ul li .txtbox .txt1 { font-weight: 700; font-size: 26px; color: #7d983c; line-break: 1.53; }
.sub4_1 .contents2 ul li .txtbox .txt2 { margin-top: 5px; font-size: 18px; color: #000; line-height: 1.53; }
.sub4_1 .contents2 ul li .txtbox .txt3 { margin-top: 12px; font-size: 18px; color: #7f7f7f; line-height: 1.65; }

.sub4_1 .contents3 { padding: 35px 0; border-bottom: 1px solid #e9e9e9; }
.sub4_1 .contents3 dl { display: flex; align-items: center; justify-content: center; }
.sub4_1 .contents3 dl dt { font-weight: 700; font-size: 30px; color: #3a3a3a; }
.sub4_1 .contents3 dl dd { display: flex; flex-wrap: nowrap; align-items: center; font-size: 20px; color: #575757; line-height: 1.35; }
.sub4_1 .contents3 dl dd * { font-size: inherit; color: inherit; line-height: inherit; }
.sub4_1 .contents3 dl dd .text1 { margin-left: 30px; display: flex; flex-wrap: nowrap; align-items: center; }
.sub4_1 .contents3 dl dd .text1 p:first-of-type { min-width: max-content; margin-right: 10px; }
.sub4_1 .contents3 dl dd .text1 p img { display: inline-block; width: 40px; }
.sub4_1 .contents3 dl dd .text1 p span { font-weight: 600; color: #89a150; }

.sub4_1 .contents4 { margin-top: 60px; text-align: center; }

@media (max-width: 1535px) {
    .sub4_1 .contents1 .text1 img { width: 60px; }
    .sub4_1 .contents1 .text1 .img1 { left: -45px; }
    .sub4_1 .contents1 .text1 .img2 { right: -45px; }

    .sub4_1 .contents2 ul li { padding: 30px 25px; border-radius: 17px; box-shadow: 0 0 6px rgba(205, 205, 205, 0.8); }
    .sub4_1 .contents2 ul li .iconbox img { width: calc(80px + 3.2vw); }
    .sub4_1 .contents2 ul li .txtbox { margin-top: 17px; }

    .sub4_1 .contents3 dl dd .text1 p:first-of-type { margin-right: 8px; }
    .sub4_1 .contents3 dl dd .text1 p img { width: 35px; }
}
@media (max-width: 1279px) {
    .sub4_1 .contents1 .text1 { font-weight: 600; }
    .sub4_1 .contents1 .text1 img { width: 50px; }
    .sub4_1 .contents1 .text1 .img1 { left: -25px; }
    .sub4_1 .contents1 .text1 .img2 { right: -25px; }   

    .sub4_1 .contents2 ul li { padding: 25px 20px; border-radius: 15px; box-shadow: 0 0 5px rgba(205, 205, 205, 0.8); }
    .sub4_1 .contents2 ul li .iconbox img { width: calc(70px + 3vw); }

    .sub4_1 .contents3 dl dd .text1 { margin-left: 25px; }
    .sub4_1 .contents3 dl dd .text1 p:first-of-type { margin-right: 6px; }
    .sub4_1 .contents3 dl dd .text1 p img { width: 32px; }
}
@media (max-width: 1023px) {
    .sub4_1 .contents1 .text1 { font-weight: 500; }
    .sub4_1 .contents1 .text1 br { display: inline-block; }
    .sub4_1 .contents1 .text1 img { width: 40px; }
    .sub4_1 .contents1 .text1 .img1 { left: -20px; }
    .sub4_1 .contents1 .text1 .img2 { right: -20px; }

    .sub4_1 .contents2 ul { display: block; }
    .sub4_1 .contents2 ul li { width: 100%; padding: 20px 15px; border-radius: 12px; box-shadow: 0 0 3px rgba(205, 205, 205, 0.8); }
    .sub4_1 .contents2 ul li:nth-of-type(n + 2) { margin-top: 20px; }
    .sub4_1 .contents2 ul li .iconbox img { width: calc(60px + 2vw); }
    .sub4_1 .contents2 ul li .txtbox .txt3 { margin-top: 10px; }

    .sub4_1 .contents3 dl dd .text1 { margin-left: 20px; }
    .sub4_1 .contents3 dl dd .text1 p img { width: 27px; }
}
@media (max-width: 767px) {
    .sub4_1 .contents1 .text4 { justify-content: space-between; }
    .sub4_1 .contents1 .text4 a { margin: initial; width: 48%; }

    .sub4_1 .contents3 dl { display: block; }
    .sub4_1 .contents3 dl dt { width: 100%; }
    .sub4_1 .contents3 dl dd { display: block; width: 100%; margin-top: 20px; }
    .sub4_1 .contents3 dl dd .text1 { margin-left: initial; }
    .sub4_1 .contents3 dl dd .text1:nth-of-type(n + 2) { margin-top: 10px; }
    .sub4_1 .contents3 dl dd .text1 p img { width: 25px; }
}
@media (max-width: 624px) {
    .sub4_1 .contents1 .text1 img { width: 30px; top: 15%; }
    .sub4_1 .contents1 .text1 .img1 { left: -20px; }
    .sub4_1 .contents1 .text1 .img2 { right: -20px; }
}