/* sub common */
.sub_sect1 { position: relative; overflow: hidden; margin: 0 auto; padding-top: 15px; }
.sub_sect1::after { display: block; content: ''; clear: both; visibility: hidden; }

.sub_sect_flex { display: flex; flex-wrap: nowrap; justify-content: space-between; }
.sub_sect_flex .sub_sect_wrap { position: relative; width: calc(100% - 220px); padding-bottom: 40px; }
.sub_sect_flex .sub_sect_wrap .sub_tit1 { display: block; padding-bottom: 20px; font-weight: 700; font-size: 26px; color: #107c43; }
.sub_sect_flex .sub_sect_wrap .sub_tit2 { display: block; padding-bottom: 20px; font-weight: 700; font-size: 26px; color: #107c43; }
.sub_sect_flex .sub_sect_wrap .sub_tit2.no_padding { padding-bottom: 0 !important; }

@media (max-width: 1535px) {
    .sub_sect_flex .sub_sect_wrap { width: calc(100% - 200px); }
    .sub_sect_flex .sub_sect_wrap .sub_tit2 { padding-bottom: 17px; }
}
@media (max-width: 1279px) {
    .sub_sect_flex .sub_sect_wrap { width: calc(100% - 182px); }
    .sub_sect_flex .sub_sect_wrap .sub_tit2 { padding-bottom: 15px; }
}
@media (max-width: 1023px) {
    .sub_sect_flex { display: block; }
    .sub_sect_flex .sub_sect_wrap { width: 100%; }
    .sub_sect_flex .sub_sect_wrap .sub_tit2 { padding-bottom: 13px; }
}
@media (max-width: 640px) {
    .sub_sect_flex .sub_sect_wrap .sub_tit1 { text-align: center; }
}

/* sub_company */
.sub_company article { position: relative; }
.sub_company article:nth-of-type(n + 2) { margin-top: 45px; }
.sub_company article strong { display: block; padding-bottom: 20px; font-weight: 700; font-size: 26px; color: #107c43; }
.sub_company .contents1 { padding: 40px; display: flex; flex-wrap: nowrap; align-items: center; background: url(/image/sub/company_img2.jpg) no-repeat center/cover; }
.sub_company .contents1 dt { min-width: max-content; margin-right: 30px; }
.sub_company .contents1 dt img { width: 220px; }
.sub_company .contents1 dd .textbox .text1 { font-weight: 700; font-size: 32px; color: #000; line-height: 1.4; }
.sub_company .contents1 dd .textbox .text1 span { font-size: inherit !important; color: #f87434; }
.sub_company .contents1 dd .textbox .text2 { margin-top: 20px; font-size: 18px; color: #616161; line-height: 1.55; }
.sub_company .contents1 dd .textbox .text2 b { font-weight: 700; font-size: inherit !important; color: #000; }
.sub_company .contents2 { margin-top: 25px; }
.sub_company .contents2 table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 1px solid #107c43; font-size: 18px; color: #6e6e6e; line-height: 1.65; }
.sub_company .contents2 table * { font-size: inherit; color: inherit; line-height: inherit; }
.sub_company .contents2 table th, .sub_company .contents2 table td { padding: 10px; border-bottom: 1px solid #ebebeb; }
.sub_company .contents2 table th { width: 170px; min-width: 170px; background-color: #f9f9f9; }
.sub_company .contents2 table td { width: 100%; }
.sub_company .contents3 ul { border-top: 1px solid #107c43; }
.sub_company .contents3 ul li { padding: 17px; display: flex; flex-wrap: nowrap; border-bottom: 1px solid #e1e1e1; }
.sub_company .contents3 ul li .year { min-width: max-content; margin-right: 40px; font-weight: 500; font-size: 24px; color: #107c43; line-height: 1.7; }
.sub_company .contents3 ul li .info { font-size: 18px; color: #343434; line-height: 1.7; }
.sub_company .contents4 >dl { display: flex; flex-wrap: nowrap; border-top: 1px solid #107c43; background-color: #f5f6ec; }
.sub_company .contents4 >dl > dt { width: 45%; }
.sub_company .contents4 >dl > dd { width: 55%; padding: 35px; display: flex; align-items: center; }
.sub_company .contents4 >dl > dd .textbox { font-size: 18px; color: #343434; line-height: 1.65; }
.sub_company .contents4 >dl > dd .textbox * { font-size: inherit; color: inherit; line-height: inherit; }
.sub_company .contents4 >dl > dd .textbox dl { display: flex; flex-wrap: nowrap; }
.sub_company .contents4 >dl > dd .textbox dl dt { min-width: max-content; }
.sub_company .contents4 >dl > dd .textbox dl span { font-weight: 600; color: #107c43; }
.sub_company .contents5 { margin-top: 40px; }
.sub_company .contents5 ul { display: flex; flex-wrap: wrap; margin: -4px; }
.sub_company .contents5 ul li { width: 33.3333%; padding: 4px; }
.sub_company .contents5 ul li a { display: block; pointer-events: none; }
.sub_company .contents5 ul li a img { width: 100%; }
.sub_company .contents6 { padding: 35px; text-align: center; font-weight: 600; font-size: 18px; color: #107c43; line-height: 1.65; border-top: 1px solid #107c43; background-color: #f5f6ec; }
.sub_company .contents7 { margin-top: 20px; }
.sub_company .contents7 ul { display: flex; flex-wrap: nowrap; justify-content: space-between; }
.sub_company .contents7 ul li { width: 49%; }
.sub_company .contents7 ul li img { width: 100%; }
.sub_company .contents8 { margin-top: 70px; }
.sub_company .contents8 ul { display: flex; flex-wrap: nowrap; justify-content: space-between; }
.sub_company .contents8 ul li { width: 32.5%; }
.sub_company .contents8 ul li img { width: 100%; }
.sub_company .desc1 { margin-top: 23px; text-align: center; font-weight: 500; font-size: 18px; color: #4f4f4f; line-height: 1.65; }
@media (max-width: 1535px) {
    .sub_company article strong { padding-bottom: 17px; }
    .sub_company .contents1 dt { margin-right: calc(20px + 0.6vw); }
    .sub_company .contents1 dt img { width: calc(120px + 6.5vw); }
    .sub_company .contents2 table th, .sub_company .contents2 table td { padding: 9px; }
    .sub_company .contents2 table th { width: 150px; min-width: 150px; }
    .sub_company .contents3 ul li { padding: 15px; }
    .sub_company .contents3 ul li .year { margin-right: calc(25px + 0.9vw); }
    .sub_company .desc1 { margin-top: 20px; }
}
@media (max-width: 1279px) {
    .sub_company article strong { padding-bottom: 15px; }
    .sub_company .contents1 dt img { width: calc(100px + 6vw); }
    .sub_company .contents2 table th, .sub_company .contents2 table td { padding: 8px; }
    .sub_company .contents2 table th { width: 130px; min-width: 130px; }
    .sub_company .contents3 ul li { padding: 13px; }
    .sub_company .desc1 { margin-top: 18px; }
}
@media (max-width: 1023px) {
    .sub_company article strong { padding-bottom: 13px; }
    .sub_company .contents2 { margin-top: 20px; }
    .sub_company .contents2 table th, .sub_company .contents2 table td { padding: 7px; }
    .sub_company .contents2 table th { width: 110px; min-width: 110px; }
    .sub_company .contents3 ul li { padding: 10px; }
    .sub_company .contents4 >dl { display: block; text-align: center; }
    .sub_company .contents4 >dl > dt { width: 100%; padding-top: 20px; }
    .sub_company .contents4 >dl > dt img { width: 100%; max-width: 330px; }
    .sub_company .contents4 >dl > dd { width: 100%; display: block; text-align: center; }
    .sub_company .contents4 >dl > dd .textbox { display: inline-block; }
    .sub_company .contents6 br { display: none; }
    .sub_company .desc1 { margin-top: 16px; }
}
@media (max-width: 767px) {
    .sub_company .contents1 { display: block; text-align: center; background-position-x: 90%; }
    .sub_company .contents1 dt { min-width: initial; margin-right: initial; }
    .sub_company .contents1 dt img { width: 100%; max-width: 110px; }
    .sub_company .contents1 dd { margin-top: 15px; }
    .sub_company .contents1 dd .textbox .text2 br { display: none; }
    .sub_company .contents2 { overflow-x: scroll; padding-bottom: 10px; }
    .sub_company .contents2 table { width: 780px; }
    .sub_company .contents2 table th { width: 90px; min-width: 90px; }
    .sub_company .desc1 { margin-top: 15px; }
}
@media (max-width: 580px) {
    .sub_company .contents3 ul li { display: block; padding: 10px 0; }
    .sub_company .contents3 ul li .year { min-width: initial; margin-right: initial; }
    .sub_company .contents4 >dl > dt { padding: 20px; padding-bottom: 0; }
    .sub_company .contents4 >dl > dt img { max-width: 100%; }
    .sub_company .contents5 ul { margin: initial; justify-content: space-between; }
    .sub_company .contents5 ul li { width: 48%; padding: initial; }
    .sub_company .contents5 ul li:nth-of-type(n + 3) { margin-top: 4%; }    
    .sub_company .contents8 ul { flex-wrap: wrap; }
    .sub_company .contents8 ul li { width: 48%; }
    .sub_company .contents8 ul li:nth-of-type(n + 3) { margin-top: 4%; }
}
@media (max-width: 524px) {
    .sub_company .contents7 ul { display: block; }
    .sub_company .contents7 ul li { width: 100%; }
    .sub_company .contents7 ul li:nth-of-type(n + 2) { margin-top: 20px; }
}



/* sub_location */
.sub_location article strong { display: block; padding-bottom: 20px; font-weight: 700; font-size: 26px; color: #107c43; }
.sub_location .mapcont { position: relative; height: 600px; }
.sub_location .mapcont .root_daum_roughmap { width: 100%; height: 100%; }
.sub_location .mapcont .root_daum_roughmap .wrap_map { width: 100%; height: calc(100% - 32px); }
.sub_location .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; }
.sub_location .mapdesc * { font-size: inherit; color: inherit; line-height: inherit; }
.sub_location .mapdesc dl { width: 33.3333%; display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; }
.sub_location .mapdesc dl dt { min-width: max-content; margin-right: 12px; }
.sub_location .mapdesc dl dt img  { width: 26px; }
.sub_location .mapdesc dl dd b { font-weight: 500; color: #01411f; }
@media (max-width: 1535px) {
    .sub_location article strong { padding-bottom: 17px; }
    .sub_location .mapcont { height: calc(350px + 15vw); }
    .sub_location .mapdesc { padding: 20px; }
    .sub_location .mapdesc dl dt { margin-right: 10px; }
    .sub_location .mapdesc dl dt img  { width: 24px; }
}
@media (max-width: 1279px) {
    .sub_location article strong { padding-bottom: 15px; }
    .sub_location .mapcont { height: calc(300px + 13vw); }
    .sub_location .mapdesc { padding: 17px; }
    .sub_location .mapdesc dl dt { margin-right: 9px; }
    .sub_location .mapdesc dl dt img  { width: 20px; }
}
@media (max-width: 1230px) {
    .sub_location .mapdesc { display: block; }
    .sub_location .mapdesc dl { width: 100%; justify-content: initial; }
    .sub_location .mapdesc dl:nth-of-type(n + 2) { margin-top: 20px; }
}
@media (max-width: 1023px) {
    .sub_location article strong { padding-bottom: 13px; }
}
@media (max-width: 767px) {
    .sub_location .mapcont { height: calc(250px + 10vw); }
    .sub_location .mapdesc { padding: 15px; }
    .sub_location .mapdesc dl dt img  { width: 18px; }
}
@media (max-width: 524px) {
    .sub_location .mapcont { height: calc(200px + 10vw); }
}