/* sub_top */
.sub_visual { position: relative; height: 300px; 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.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.sub4 .bg { background: url(/image/sub/subcommon/subtop_bg4.jpg) no-repeat center/cover; }
.sub_visual.sub5 .bg { background: url(/image/sub/subcommon/subtop_bg5.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.1); }
.sub_visual .txtbox { z-index: 3; position: relative; 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: 55px; color: #fff; letter-spacing: -0.01em; }

@media (max-width: 1535px) {
    .sub_visual { height: 270px; }
}
@media (max-width: 1279px) {
    .sub_visual { height: 230px; }
}
@media (max-width: 1023px) {
    .sub_visual { height: 180px; }
}
@media (max-width: 767px) {
    .sub_visual { height: 160px; }
    .sub_visual.sub2 .bg { background-position-x: 10%; }
    .sub_visual.sub3 .bg { background-position-x: 10%; }
    .sub_visual.sub4 .bg { background-position-x: 80%; }
    .sub_visual.sub5 .bg { background-position-x: 80%; }
}

.subtop { position: relative; height: 80px; font-size: 20px; color: #b3b3b3; border-bottom: 1px solid #eee; }
.subtop * { font-size: inherit; color: inherit; }
.subtop .contwrap { height: 100%; }
.subtop .top_subs { display: none; flex-wrap: nowrap; justify-content: center; height: 100%; max-width: 550px; margin: 0 auto; }
.subtop .top_subs.active { display: flex; }
.subtop .top_subs a { position: relative; width: 100%; display: block; height: 100%; text-align: center; }
.subtop .top_subs a span { position: relative; top: 50%; transform: translateY(-50%); display: inline-block; }
.subtop .top_subs a.active span { color: #288341; }
.subtop .top_subs a::after { display: none; content: ''; position: absolute; left: 50%; transform: translateX(-50%); bottom: -1px; width: 100%; height: 2px; background-color: #288341; }
.subtop .top_subs a.active::after { display: block; }

.subtop.noSub2 { display: none !important; }

@media (max-width: 1535px) {
    .subtop { height: 70px; font-size: 18px; }
}
@media (max-width: 1279px) {
    .subtop { height: 60px; font-size: 16px; }
}
@media (max-width: 1023px) {
    .subtop { height: 80px; font-size: 15px; }
    .subtop .top_subs { flex-wrap: wrap; }
    .subtop .top_subs a { width: 50%; height: 40px; }
    .subtop .top_subs a:nth-of-type(n - 2) { border-bottom: 1px solid #e5e6e8; }

    .subtop .top_subs.sub7 a { width: 50%; }

    .subtop.noSub { height: 40px; }
    .subtop.noSub .top_subs a:nth-of-type(n - 2) { border-bottom: none; }
}
@media (max-width: 767px) {
    .subtop { height: 70px; font-size: 13px; }
    .subtop .top_subs a { height: 35px; }

    .subtop.noSub { height: 35px; }
}
@media (max-width: 360px) {
    .subtop { font-size: 12px; }
}

/* sub_common */
.sub_sect { position: relative; padding: 80px 0; overflow: hidden; }
.sub_sect .sub_tit { padding-bottom: 45px; text-align: center; font-weight: 500; font-size: 34px; color: #000; }

/* sub1_1 */
.sub1_1 .imgbox { text-align: center; }
.sub1_1 .imgbox img { width: 900px; }
.sub1_1 .txtbox { margin-top: 50px; text-align: center; }
.sub1_1 .txtbox .txt1 { font-weight: 500; font-size: 30px; color: #288341; line-height: 1.35; }
.sub1_1 .txtbox .txt1 b { font-weight: 600; font-size: inherit !important; }
.sub1_1 .txtbox .txt1 .br1 { display: none; }
.sub1_1 .txtbox .txt2 { font-size: 20px; color: #656565; line-height: 1.7; }   
.sub1_1 .txtbox .txt2 b { font-weight: 600; font-size: 22px; color: #333; line-height: 1.5; }
@media (max-width: 1535px) {
    .sub1_1 .imgbox img { width: calc(600px + 18vw); }
}
@media (max-width: 1279px) {
    .sub1_1 .imgbox img { width: calc(450px + 13vw); }
}
@media (max-width: 1023px) {
    .sub1_1 .imgbox img { width: calc(300px + 10vw); }
}
@media (max-width: 767px) {
    .sub1_1 .txtbox .txt1 .br1 { display: inline-block; }
}

/* sub1_2 */
.sub1_2 .imgbox { text-align: center; }

/* sub1_3 */
.sub1_3 .contents1 { display: flex; flex-wrap: nowrap; justify-content: space-between; }
.sub1_3 .contents1 > li { width: 32%; border: 2px solid #164378; background-color: #164378; }
.sub1_3 .contents1 > li img { width: 100%; }
.sub1_3 .contents1 > li p { padding: 20px 5px; text-align: center; font-size: 20px; color: #fff; line-height: 1.35; }
@media (max-width: 1535px) {
    .sub1_3 .contents1 > li p { padding: 17px 5px; }
}
@media (max-width: 1279px) {
    .sub1_3 .contents1 > li p { padding: 15px 5px; }
}
@media (max-width: 1023px) {
    .sub1_3 .contents1 { flex-wrap: wrap; }
    .sub1_3 .contents1 > li { width: 48%; }
    .sub1_3 .contents1 > li:nth-of-type(n + 3) { margin-top: 4%; }
    .sub1_3 .contents1 > li p { padding: 13px 5px; }
}
@media (max-width: 767px) {
    .sub1_3 .contents1 > li p { padding: 11px 5px; }
}
@media (max-width: 524px) {
    .sub1_3 .contents1 { display: block; }
    .sub1_3 .contents1 > li { width: 100%; }
    .sub1_3 .contents1 > li:nth-of-type(n + 3) { margin-top: initial; }
    .sub1_3 .contents1 > li:nth-of-type(n + 2) { margin-top: 25px; }
}

/* sub1_4 */
.sub1_4 strong { display: block; margin-bottom: 13px; font-weight: 600; font-size: 28px; color: #383838; }
.sub1_4 .mapcont { position: relative; height: 600px; }
.sub1_4 .mapcont .root_daum_roughmap { width: 100%; height: 100%; }
.sub1_4 .mapcont .root_daum_roughmap .wrap_map { width: 100%; height: calc(100% - 32px); }
.sub1_4 .mapdesc { margin-top: 20px; display: flex; flex-wrap: nowrap; font-size: 18px; color: #4d4d4d; line-height: 1.35; }
.sub1_4 .mapdesc * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_4 .mapdesc dl { width: 50%; display: flex; flex-wrap: nowrap; align-items: center; }
.sub1_4 .mapdesc dl dt { min-width: max-content; margin-right: 12px; }
.sub1_4 .mapdesc dl dt img { width: 45px; }
.sub1_4 .mapdesc dl dd span { color: #288341; }
.sub1_4 .tableinfo { text-align: right; margin-bottom: 15px; font-size: 16px; color: #333; }
.sub1_4 .tablewrap table { width: 100%; border-collapse: collapse; border-spacing: 0; border-left: 1px solid #ddd; font-size: 18px; color: #333; line-height: 1.4; }
.sub1_4 .tablewrap table * { font-size: inherit; color: inherit; line-height: inherit; }
.sub1_4 .tablewrap table th, .sub1_4 .tablewrap table td { padding: 10px 7px; text-align: center; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; }
.sub1_4 .tablewrap table th { color: #fff; background-color: #288341; }


@media (max-width: 1535px) {
    .sub1_4 .mapcont { height: calc(350px + 15vw); }
    .sub1_4 .mapdesc dl dt { margin-right: 10px; }
    .sub1_4 .mapdesc dl dt img { width: calc(25px + 1.3vw); }
    .sub1_4 .tableinfo { margin-bottom: 13px; }
}
@media (max-width: 1279px) {
    .sub1_4 .mapcont { height: calc(300px + 12vw); }
    .sub1_4 .tableinfo { margin-bottom: 11px; }
}
@media (max-width: 1023px) {
    .sub1_4 strong { margin-bottom: 10px; }
    .sub1_4 .mapdesc { display: block; }
    .sub1_4 .mapdesc dl { width: 100%; }
    .sub1_4 .mapdesc dl:nth-of-type(n + 2) { margin-top: 20px; }
    .sub1_4 .tableinfo { margin-bottom: 10px; }
    .sub1_4 .tablewrap { overflow-x: scroll; }
    .sub1_4 .tablewrap table { width: 1050px; }
}
@media (max-width: 767px) {
    .sub1_4 .mapcont { height: calc(180px + 8vw); }
}



/* sub2_1 */
.sub2_1 .contents1 { display: flex; flex-wrap: nowrap; justify-content: space-between; }
.sub2_1 .contents1 > li { display: flex; flex-direction: column; width: 32%; background-color: #288341; border-radius: 30px; overflow: hidden; }
.sub2_1 .contents1 > li img { width: 100%; }
.sub2_1 .contents1 > li p { padding: 20px 5px; display: flex; align-items: center; justify-content: center; flex: 1; text-align: center; font-weight: 500; font-size: 25px; color: #fff; line-height: 1.35; }
@media (max-width: 1535px) {
    .sub2_1 .contents1 > li p { padding: 17px 5px; }
}
@media (max-width: 1279px) {
    .sub2_1 .contents1 > li p { padding: 15px 5px; }
}
@media (max-width: 1023px) {
    .sub2_1 .contents1 { flex-wrap: wrap; }
    .sub2_1 .contents1 > li { width: 48%; }
    .sub2_1 .contents1 > li:nth-of-type(n + 3) { margin-top: 4%; }
    .sub2_1 .contents1 > li p { padding: 13px 5px; }
}
@media (max-width: 524px) {
    .sub2_1 .contents1 { display: block; }
    .sub2_1 .contents1 > li { width: 100%; }
    .sub2_1 .contents1 > li:nth-of-type(n + 3) { margin-top: initial; }
    .sub2_1 .contents1 > li:nth-of-type(n + 2) { margin-top: 25px; }
    .sub2_1 .contents1 > li p { padding: 10px 5px; }
}

/* sub2_2 */
.sub2_2 .imgbox { text-align: center; }

/* sub2_3 */
.sub2_3 .contents1 { display: flex; flex-wrap: wrap; justify-content: space-between; }
.sub2_3 .contents1 > li { display: flex; flex-wrap: nowrap; align-items: center; width: 48%; padding: 40px; background-color: #f7f7f7; border-radius: 30px; } 
.sub2_3 .contents1 > li:nth-of-type(n + 3) { margin-top: 4%; }
.sub2_3 .contents1 > li dl { display: flex; flex-wrap: nowrap; align-items: center; }
.sub2_3 .contents1 > li dl dt { min-width: max-content; margin-right: 20px; }
.sub2_3 .contents1 > li dl dt img { width: 140px; }
.sub2_3 .contents1 > li dl dd .textbox .text1 { font-size: 22px; color: #8a8a8a; line-height: 1.25; }
.sub2_3 .contents1 > li dl dd .textbox .text2 { font-weight: 500; font-size: 28px; color: #288341; line-height: 1.25; }
@media (max-width: 1535px) {
    .sub2_3 .contents1 > li { border-radius: 25px; }
    .sub2_3 .contents1 > li dl dt { margin-right: 18px; }
    .sub2_3 .contents1 > li dl dt img { width: calc(70px + 4.5vw); }
}
@media (max-width: 1279px) {
    .sub2_3 .contents1 > li { border-radius: 20px; }
    .sub2_3 .contents1 > li dl dt { margin-right: 16px; }
    .sub2_3 .contents1 > li dl dt img { width: calc(60px + 4vw); }
}
@media (max-width: 1023px) {
    .sub2_3 .contents1 { display: block; }
    .sub2_3 .contents1 > li { width: 100%; border-radius: 15px; }
    .sub2_3 .contents1 > li:nth-of-type(n + 2) { margin-top: 20px; }
    .sub2_3 .contents1 > li dl dt { margin-right: 14px; }
    .sub2_3 .contents1 > li dl dt img { width: calc(50px + 4vw); }
}
@media (max-width: 380px) {
    .sub2_3 .contents1 > li dl dd .textbox .text2 br { display: none; }
}

/* sub2_4 */
.sub2_4 .contents1 { padding: 200px 100px; border-radius: 50px; overflow: hidden; background: url(/image/sub/sub2/sub2_4_img1.jpg) no-repeat center/cover; }
.sub2_4 .contents1 ul { display: flex; flex-wrap: nowrap; }
.sub2_4 .contents1 ul li { width: 50%; }
.sub2_4 .contents1 ul li .textbox { font-size: 20px; color: #fff; line-height: 1.6; }
.sub2_4 .contents1 ul li .textbox * { font-size: inherit; color: inherit; line-height: inherit; }
.sub2_4 .contents1 ul li .textbox img { display: inline-block; margin-bottom: 25px; width: 510px; }
@media (max-width: 1535px) {
    .sub2_4 .contents1 ul li .textbox img { margin-bottom: 20px; width: calc(300px + 13vw); }
}
@media (max-width: 767px) {
    .sub2_4 .contents1 ul { display: block; }
    .sub2_4 .contents1 ul li:first-of-type { display: none; }
    .sub2_4 .contents1 ul li { width: 100%; }
    .sub2_4 .contents1 ul li .textbox br { display: none; }
}
@media (max-width: 580px) {
    .sub2_4 .contents1 { background-position-x: 10%; }
}