/* sub_visual */
.sub_visual { position: relative; overflow: hidden; height: 290px; }
.sub_visual .bg { z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform-origin: center; animation: suv_bg forwards linear 5s; }
@keyframes suv_bg {
    0% { transform: scale(1.1); }
    100% { transform: scale(1); }
}
.sub_visual.sub1 .bg { background: url(/image/sub/subcommon/subtop_bg1.jpg) no-repeat center/cover; }
.sub_visual.sub2 .bg { background: url(/image/sub/subcommon/subtop_bg2.jpg) no-repeat center/cover; }
.sub_visual.sub3 .bg { background: url(/image/sub/subcommon/subtop_bg3.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.3); }
.sub_visual .txtbox { z-index: 3; position: relative; top: 50%; transform: translateY(-50%); text-align: center; font-weight: 700; font-size: 50px; color: #fff; }
@media (max-width: 1535px) {
    .sub_visual { height: 270px; }
}
@media (max-width: 1279px) {
    .sub_visual { height: 240px; }
}
@media (max-width: 1023px) {
    .sub_visual { height: 200px; }
}
@media (max-width: 767px) {
    .sub_visual { height: 170px; }
    .sub_visual.sub1 .bg { background-position-x: 0; }
}

/* subtop */
.subtop { display: none; height: 80px; border-bottom: 1px solid #e4e4e4; font-size: 20px; color: #6b6b6b; }
.subtop * { font-size: inherit; color: inherit; }
.subtop.sub1, .subtop.sub2 { display: block; } 
.subtop .contwrap { height: 100%; }
.subtop ul { display: none; flex-wrap: nowrap; justify-content: center; height: 100%; }
.subtop.sub1 ul.subtop1 { display: flex; }
.subtop.sub2 ul.subtop2 { display: flex; }
.subtop ul li { width: 16.6666%; height: 100%; }
.subtop ul li a { position: relative; display: flex; align-items: center; justify-content: center; text-align: center; height: 100%; }
.subtop ul li a span { display: inline-block; }
.subtop ul li.active a::after { display: block; content: ''; position: absolute; left: 50%; transform: translateX(-50%); bottom: 0; width: 100%; height: 2px; background-color: #01411f; }
.subtop ul li.active a span { font-weight: 500; color: #01411f; }

@media (max-width: 1535px) {
    .subtop { height: 70px; }
    .subtop ul li { width: 20%; }
}
@media (max-width: 1279px) {
    .subtop { height: 60px; }
    .subtop ul li { width: 33.3333%; }
}
@media (max-width: 1023px) {
    .subtop { height: 50px; }
}
@media (max-width: 767px) {
    .subtop { height: 40px; }
}

/* sub_common */
.sub_sect { position: relative; padding: 70px 0; overflow: hidden; }
.sub_sect .sub_tit { padding-bottom: 45px; text-align: center; font-weight: 600; font-size: 43px; color: #000; }


/* sub1_1 */
.sub1_1 { overflow: hidden; }
.sub1_1 .contents1 { display: flex; flex-wrap: nowrap; }
.sub1_1 .contents1 dt { min-width: max-content; margin-right: 70px; }
.sub1_1 .contents1 dt img { width: 460px; }
.sub1_1 .contents1 dd .textbox .text1 { font-weight: 700; font-size: 30px; color: #01411f; line-height: 1.33; }
.sub1_1 .contents1 dd .textbox .text2 { font-size: 18px; color: #555; line-height: 1.7; }
@media (max-width: 1535px) {
    .sub1_1 .contents1 dt { margin-right: calc(40px + 1.8vw); }
    .sub1_1 .contents1 dt img { width: calc(250px + 13vw); }
}
@media (max-width: 1279px) {
    .sub1_1 .contents1 dt { margin-right: calc(30px + 1.5vw); }
    .sub1_1 .contents1 dt img { width: calc(200px + 10vw); }
}
@media (max-width: 1023px) {
    .sub1_1 .contents1 { display: block; text-align: center; }
    .sub1_1 .contents1 dt { margin-right: initial; margin-bottom: 20px; }
    .sub1_1 .contents1 dt img { width: 100%; max-width: 200px; }
}

/* sub1_2 */
.sub1_2 .contents1 { position: relative; }
.sub1_2 .contents1 li { border: 1px solid #9dd1b5; border-radius: 10px; overflow: hidden; }
.sub1_2 .contents1 li:nth-of-type(n + 2) { margin-top: 20px; }
.sub1_2 .contents1 li .top { padding: 25px 40px; background-color: #f2faf5; }
.sub1_2 .contents1 li .top .text1 { margin-bottom: 5px; font-weight: 700; font-size: 30px; color: #000; }
.sub1_2 .contents1 li .top .text1 span { color: #01411f; }
.sub1_2 .contents1 li .top .text2 { font-weight: 500; font-size: 18px; color: #555; line-height: 1.65; }
.sub1_2 .contents1 li .bottom { padding: 30px 40px; display: flex; flex-wrap: nowrap; }
.sub1_2 .contents1 li .bottom .left { min-width: max-content; padding-right: 30px; font-weight: 700; font-size: 18px; color: #01411f; line-height: 1.7; border-right: 1px solid #ddd; }
.sub1_2 .contents1 li .bottom .right { width: 100%; padding-left: 30px; font-size: 18px; color: #555; line-height: 1.7; }
.sub1_2 .contents1 li .bottom .right * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_2 .contents1 li .bottom .right dl { display: flex; flex-wrap: nowrap; }
.sub1_2 .contents1 li .bottom .right dl dt { min-width: max-content; }
@media (max-width: 1535px) {
    .sub1_2 .contents1 li .top { padding: 23px 35px; }
    .sub1_2 .contents1 li .bottom { padding: 25px 35px; }
}
@media (max-width: 1279px) {
    .sub1_2 .contents1 li .top { padding: 20px 30px; }
    .sub1_2 .contents1 li .bottom { padding: 23px 30px; }
}
@media (max-width: 1023px) {
    .sub1_2 .contents1 li .top { padding: 17px 25px; }
    .sub1_2 .contents1 li .bottom { padding: 20px 25px; }
}
@media (max-width: 767px) {
    .sub1_2 .contents1 li .top { padding: 15px 20px; }
    .sub1_2 .contents1 li .bottom { padding: 15px 20px; }
}
@media (max-width: 524px) {
    .sub1_2 .contents1 li .bottom { display: block; }
    .sub1_2 .contents1 li .bottom .left { min-width: initial; padding-right: initial; padding-bottom: 10px; margin-bottom: 10px; border-right: none; border-bottom: 1px solid #ddd; }
    .sub1_2 .contents1 li .bottom .right { padding-left: initial; }
}

/* sub1_3 */
.sub1_3 .mapcont { position: relative; height: 600px; }
.sub1_3 .mapcont .root_daum_roughmap { width: 100%; height: 100%; }
.sub1_3 .mapcont .root_daum_roughmap .wrap_map { width: 100%; height: calc(100% - 32px); }
.sub1_3 .mapdesc { border: 1px solid rgba(0,0,0,.1); border-top: none; padding: 25px; display: flex ; float: none; font-size: 18px; color: #626262; line-height: 1.65; }
.sub1_3 .mapdesc * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_3 .mapdesc dl { width: 33.3333%; display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; }
.sub1_3 .mapdesc dl dt { min-width: max-content; margin-right: 12px; }
.sub1_3 .mapdesc dl dt img  { width: 26px; }
.sub1_3 .mapdesc dl dd b { font-weight: 500; color: #01411f; }
.sub1_3 .contents1 { margin-top: 40px; display: flex; flex-wrap: nowrap; justify-content: space-between; font-size: 18px; color: #454545; line-height: 1.65; }
.sub1_3 .contents1 * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_3 .contents1 dl { display: flex; flex-wrap: nowrap; align-items: center; width: 49%; }
.sub1_3 .contents1 dl dt { min-width: max-content; margin-right: 25px; }
.sub1_3 .contents1 dl dt img { width: 136px; }
.sub1_3 .contents1 dl dd span { font-weight: 500; }
.sub1_3 .contents1 dl dd .c1 { color: #8936e0; }
.sub1_3 .contents1 dl dd .c2 { color: #169c56; }
.sub1_3 .contents1 dl dd .c3 { color: #006fe3; }
.sub1_3 .contents1 dl dd .c4 { color: #ff0000; }
.sub1_3 .contents1 dl dd .c5 { color: #169e00; }
@media (max-width: 1535px) {
    .sub1_3 .mapcont { height: calc(350px + 15vw); }
    .sub1_3 .mapdesc { padding: 20px; }
    .sub1_3 .mapdesc dl dt { margin-right: 10px; }
    .sub1_3 .mapdesc dl dt img  { width: 24px; }
    .sub1_3 .contents1 dl dt { margin-right: 23px; }
    .sub1_3 .contents1 dl dt img { width: calc(70px + 4vw); }
}
@media (max-width: 1279px) {
    .sub1_3 .mapcont { height: calc(300px + 13vw); }
    .sub1_3 .mapdesc { padding: 17px; }
    .sub1_3 .mapdesc dl dt { margin-right: 9px; }
    .sub1_3 .mapdesc dl dt img  { width: 20px; }
    .sub1_3 .contents1 dl dt img { width: calc(60px + 3.5vw); }
}
@media (max-width: 1230px) {
    .sub1_3 .mapdesc { display: block; }
    .sub1_3 .mapdesc dl { width: 100%; justify-content: initial; }
    .sub1_3 .mapdesc dl:nth-of-type(n + 2) { margin-top: 20px; }
}
@media (max-width: 1023px) {
    .sub1_3 .contents1 { display: block; }
    .sub1_3 .contents1 dl { width: 100%; }
    .sub1_3 .contents1 dl:nth-of-type(n + 2) { margin-top: 20px; }
}
@media (max-width: 767px) {
    .sub1_3 .mapcont { height: calc(250px + 10vw); }
    .sub1_3 .mapdesc { padding: 15px; }
    .sub1_3 .mapdesc dl dt img  { width: 18px; }
}
@media (max-width: 524px) {
    .sub1_3 .mapcont { height: calc(200px + 10vw); }
    .sub1_3 .contents1 dl dt img { width: 60px; }
}

/* sub2_1 */
.sub2_1 { overflow: hidden; padding-bottom: 70px; }
.sub2_1 .contents1 { padding: 60px 0; overflow: hidden; background-color: #f2f5f4; }
.sub2_1 .contents1 ul { display: flex; flex-wrap: wrap; margin: -11px; }
.sub2_1 .contents1 ul li { width: 33.3333%; padding: 11px; }
.sub2_1 .contents1 ul li .textbox { height: 100%; padding: 20px 25px; background-color: #fff; border-radius: 10px; border: 1px solid #d0d0d0; }
.sub2_1 .contents1 ul li .textbox .text1 { display: inline-flex; flex-wrap: nowrap; align-items: center; padding: 10px; font-weight: 500; font-size: 22px; color: #fff; background-color: #107c43; border-radius: 10px; }
.sub2_1 .contents1 ul li .textbox .text1 * { font-weight: inherit; font-size: inherit; color: inherit; }
.sub2_1 .contents1 ul li .textbox .text1 p { position: relative; }
.sub2_1 .contents1 ul li .textbox .text1 p:first-of-type { padding-right: 10px; }
.sub2_1 .contents1 ul li .textbox .text1 p:first-of-type::after { display: block; content: ''; position: absolute; top: 50%; transform: translateY(-50%); right: 0; width: 1px; height: 70%; background-color: #fff; }
.sub2_1 .contents1 ul li .textbox .text1 p:last-of-type { padding-left: 10px; }
.sub2_1 .contents1 ul li .textbox .text2 { margin-top: 20px; font-weight: 700; font-size: 22px; color: #107c43; line-height: 1.8; }
.sub2_1 .contents1 ul li .textbox .text3 { font-size: 18px; color: #6d6d6d; line-height: 1.38; }
.sub2_1 article { margin-top: 60px; }
.sub2_1 .contents2 { display: flex; flex-wrap: wrap; justify-content: space-between; }
.sub2_1 .contents2 li { width: 49%; padding: 20px; border: 1px solid #d0d0d0; border-radius: 10px; }
.sub2_1 .contents2 li:nth-of-type(n + 3) { margin-top: 2%; }
.sub2_1 .contents2 li dl { display: flex; flex-wrap: nowrap; align-items: center; }
.sub2_1 .contents2 li dl dt { min-width: max-content; margin-right: 30px; }
.sub2_1 .contents2 li dl dt img { width: 190px; border: 1px solid #e3e3e3; }
.sub2_1 .contents2 li dl dd .scrbox .scr1 { font-weight: 500; font-size: 18px; color: #494949; line-height: 1.5; }
.sub2_1 .contents2 li dl dd .scrbox .scr2 { font-weight: 700; font-size: 22px; color: #107c43; line-height: 1.3; }
.sub2_1 .contents2 li dl dd .scrbox .scr3 { font-size: 18px; color: #828282; line-height: 1.65; }
.sub2_1 .contents3 { padding: 35px 15px; background-color: #f2f5f4; text-align: center; font-weight: 600; font-size: 20px; color: #4f4f4f; line-height: 1.6; }
.sub2_1 .contents3 span { color: #107c43; }
.sub2_1 .contents4 .scr1 { font-weight: 700; font-size: 22px; color: #107c43; line-height: 1.8; }
.sub2_1 .contents4 .scr2 { font-weight: 500; font-size: 18px; color: #6d6d6d; line-height: 1.7; }
.sub2_1 .contents5 ul li { padding: 20px; border: 1px solid #d0d0d0; border-radius: 10px; }
.sub2_1 .contents5 ul li:nth-of-type(n + 2) { margin-top: 30px; }
.sub2_1 .contents5 ul li dl { display: flex; float: none; align-items: center; }
.sub2_1 .contents5 ul li dl dt { min-width: max-content; margin-right: 40px; }
.sub2_1 .contents5 ul li dl dt img { display: inline-block; width: 201px; border: 1px solid #e3e3e3; }
.sub2_1 .contents5 ul li dl dt img:first-of-type { margin-right: 6px; }
.sub2_1 .contents5 ul li dl dt img:last-of-type { margin-left: 6px; }
.sub2_1 .contents5 ul li dl dd .scrbox .scr1 { font-weight: 700; font-size: 22px; color: #107c43; line-height: 1.3; }
.sub2_1 .contents5 ul li dl dd .scrbox .scr2 { font-size: 18px; color: #828282; line-height: 1.65; }
@media (max-width: 1535px) {
    .sub2_1 .contents1 ul li .textbox { padding: 17px 22px; }
    .sub2_1 .contents1 ul li .textbox .text1 { padding: 9px; }
    .sub2_1 .contents1 ul li .textbox .text2 { margin-top: 17px }
    .sub2_1 .contents2 li dl dt { margin-right: calc(20px + 0.6vw); }
    .sub2_1 .contents2 li dl dt img { width: calc(100px + 5.7vw); }
    .sub2_1 .contents5 ul li dl dt { margin-right: calc(30px + 0.6vw); }
    .sub2_1 .contents5 ul li dl dt img { width: calc(130px + 4.5vw); }
}
@media (max-width: 1279px) {
    .sub2_1 .contents1 ul li .textbox { padding: 15px 20px; }
    .sub2_1 .contents1 ul li .textbox .text1 { padding: 8px; }
    .sub2_1 .contents1 ul li .textbox .text2 { margin-top: 15px }
}
@media (max-width: 1023px) {
    .sub2_1 .contents1 ul { margin: initial; justify-content: space-between; }
    .sub2_1 .contents1 ul li { width: 49%; padding: initial; }
    .sub2_1 .contents1 ul li:nth-of-type(n + 3) { margin-top: 2%; }
    .sub2_1 .contents1 ul li .textbox { padding: 13px 17px; }
    .sub2_1 .contents1 ul li .textbox .text1 { padding: 7px; }
    .sub2_1 .contents1 ul li .textbox .text2 { margin-top: 13px }
    .sub2_1 .contents2 { display: block; }
    .sub2_1 .contents2 li { width: 100%; }
    .sub2_1 .contents2 li:nth-of-type(n + 2) { margin-top: 20px; }
    .sub2_1 .contents2 li dl dd .scrbox .scr3 br { display: none; }
    .sub2_1 .contents3 br { display: none; }
    .sub2_1 .contents5 ul li dl { display: block; text-align: center; }
    .sub2_1 .contents5 ul li dl dt { margin-right: initial; min-width: initial; width: 100%; margin-bottom: 20px; }
    .sub2_1 .contents5 ul li dl dt img { width: 100%; max-width: 130px; }
}
@media (max-width: 724px) {
    .sub2_1 .contents1 ul { display: block; }
    .sub2_1 .contents1 ul li { width: 100%; }
    .sub2_1 .contents1 ul li:nth-of-type(n + 3) { margin-top: initial; }
    .sub2_1 .contents1 ul li:nth-of-type(n + 2) { margin-top: 20px; }
}
@media (max-width: 524px) {
    .sub2_1 .contents2 li dl { display: block; text-align: center; }
    .sub2_1 .contents2 li dl dt { min-width: initial; margin-right: initial; margin-bottom: 20px; } 
    .sub2_1 .contents2 li dl dt img { width: 100%; max-width: 120px; }    
    .sub2_1 .contents5 ul li dl dt img { max-width: 100px; }
    .sub2_1 .contents5 ul li dl dt img:first-of-type { margin-right: 4px; }
    .sub2_1 .contents5 ul li dl dt img:last-of-type { margin-left: 4px; }
}

/* sub2_2 */
.sub2_2 .tablewrap { position: relative; }
.sub2_2 .tablewrap table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 2px solid #01411f; font-weight: 500; font-size: 18px; color: #636363; line-height: 1.35; border-left: 1px solid #dfdfdf; }
.sub2_2 .tablewrap table * { font-weight: inherit; font-size: inherit; color: inherit; line-height: inherit; }
.sub2_2 .tablewrap table th, .sub2_2 .tablewrap table td { padding: 10px; text-align: center; border-bottom: 1px solid #dfdfdf; border-right: 1px solid #dfdfdf; }
.sub2_2 .tablewrap table th { font-weight: 500; color: #055305; background-color: #e9f5ee; }
.sub2_2 .tablewrap table td.grayver { background-color: #fbfbfb; }
.sub2_2 .conents1 { margin-top: 25px; font-size: 18px; color: #5a5a5a; line-height: 1.65; }
.sub2_2 .conents1 * { font-size: inherit; color: inherit; line-height: inherit; }
.sub2_2 .conents1 dl { display: flex; flex-wrap: nowrap; }
.sub2_2 .conents1 dl dt { min-width: max-content; }
@media (max-width: 767px) {
    .sub2_2 .tablewrap { overflow-x: scroll; padding-bottom: 10px; }
    .sub2_2 .tablewrap table { width: 780px; }
    .sub2_2 .conents1 { margin-top: 20px; }
}