@charset "utf-8";

.sub-visual {position: relative; height: 660px; background-repeat: no-repeat; background-position: center center; background-size: cover;}
.sub-visual01 {background-image: url('../img/sub/sub_visual01.jpg');}
.sub-visual02 {background-image: url('../img/sub/sub_visual02.jpg');}
.sub-visual03 {background-image: url('../img/sub/sub_visual03.jpg');}
.sub-visual04 {background-image: url('../img/sub/sub_visual04.jpg');}
.sub-visual > .container {align-content: center; padding-top: 40px;}
.sub-visual h2 {font-family: 'montserrat'; font-size: 72px; font-weight: 700; line-height: 1em; color: #fff; text-align: center;}
#lnb {position: absolute; bottom: 0; left: 0; width: 100%; background: #fff; border-bottom: 1px solid #ddd;}
#lnb ul {display: flex;}
#lnb ul li {position: relative; flex: 1;}
#lnb ul li:after {position: absolute; top: 50%; margin-top: -8px; right: 0; content:''; width: 1px; height: 16px; background: #ddd;}
#lnb ul li:last-child:after {display: none;}
#lnb ul li a {position: relative; height: 80px; font-size: 18px; font-weight: 600; line-height: 1.3em; color: #666; text-align: center; align-content: center; transition: all 0.4s;}
#lnb ul li a:hover {color: #194274;}
#lnb ul li.active a {color: #194274;}
#lnb ul li a:after {position: absolute; bottom: -1px; left: 50%; transform: translateX(-50%); content: ''; width: 0; height: 3px; background: #194274; transition: all 0.4s;}
#lnb ul li a:hover:after {width: 100%;}
#lnb ul li.active a:after {width: 100%;}
.sub-cont {padding: 160px 0 170px;}
.sub-cont.pb-0 {padding-bottom: 0;}
.page-title {margin-bottom: 67px;}
.page-title h3 {opacity: 0; position: relative; font-size: 52px; font-weight: 600; line-height: 1em; color: #000; text-align: center; padding-top: 49px;}
.page-title h3:before {opacity: 0; position: absolute; top: 9px; left: 50%; margin-left: -9px; content: ''; width: 9px; height: 9px; background: #00aeef; border-radius: 2px;}
.page-title h3:after {opacity: 0; position: absolute; top: 0px; left: 50%; content: ''; width: 9px; height: 9px; background: #194274; border-radius: 2px;}
.animate .page-title h3 {animation: text-up 0.6s both;}
.animate .page-title h3:before {animation: rotate-in-diag-2 1s both .6s;}
.animate .page-title h3:after {animation: rotate-in-diag-2 1s both .8s;}
@keyframes text-up {
    0% {
        transform: translateY(40px);
        opacity: 0;
    }
    100% {
        transform: translateY(0px);
        opacity: 1;
    }
}
@keyframes rotate-in-diag-2 {
  0% {
    -webkit-transform: rotate3d(-1, 1, 0, -360deg);
            transform: rotate3d(-1, 1, 0, -360deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotate3d(-1, 1, 0, 0deg);
            transform: rotate3d(-1, 1, 0, 0deg);
    opacity: 1;
  }
}

/* s1-1 */
.overview .arti01 {padding-bottom: 120px;}
.overview .arti01 .box-wrap {display: flex; flex-wrap: wrap; margin: -10px;}
.overview .arti01 .box {padding: 10px;}
.overview .arti01 .box.col01 {width: 25%;}
.overview .arti01 .box.col02 {width: 50%;}
.overview .arti01 .box .inner {position: relative; min-height: 320px; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; padding: 55px 50px; border-radius: 16px; overflow: hidden;}
.overview .arti01 .box:nth-child(1) .inner {background-image: url('../img/sub/s11_item01_bg.jpg');}
.overview .arti01 .box:nth-child(2) .inner {background-color: #194274;}
.overview .arti01 .box:nth-child(3) .inner {background-image: url('../img/sub/s11_item03_bg.jpg');}
.overview .arti01 .box:nth-child(4) .inner {background-color: #00aeef;}
.overview .arti01 .box:nth-child(5) .inner {background-color: #677f8a;}
.overview .arti01 .box:nth-child(6) .inner {background-image: url('../img/sub/s11_item06_bg.jpg');}
.overview .arti01 .box b {display: block; font-size: 28px; font-weight: 700; line-height: 1em; color: #fff;}
.overview .arti01 .box p {font-size: 20px; line-height: 1.6em; color: rgba(255,255,255,0.7); margin-top: 15px;}
.overview .arti01 .box.color-bk p {color: #666;}
.overview .arti01 .box.color-bk p span {font-weight: 600;}
.overview .arti01 .box .icon {position: absolute; bottom: 50px; right: 50px; width: 64px; height: 64px; background-repeat: no-repeat; background-position: right bottom;}
.overview .arti01 .box:nth-child(2) .icon {background-image: url('../img/sub/s11_item02_icon.png');}
.overview .arti01 .box:nth-child(3) .icon {background-image: url('../img/sub/s11_item03_icon.png');}
.overview .arti01 .box:nth-child(4) .icon {background-image: url('../img/sub/s11_item04_icon.png');}
.overview .arti01 .box:nth-child(5) .icon {background-image: url('../img/sub/s11_item05_icon.png');}
.overview .arti01 .box:nth-child(6) .icon {background-image: url('../img/sub/s11_item06_icon.png');}
.overview .arti02 {background: url('../img/sub/s11_certification_bg.jpg') no-repeat center center/cover; padding: 160px 0 180px;}
.overview .arti02 .wrap {display: flex;}
.overview .arti02 .text-box {width: 1%; flex: 1 1 auto; padding-top: 10px;}
.overview .arti02 .arti-title .eng-name {width: 110px; margin-bottom: 30px;}
.overview .arti02 .arti-title h4 {font-size: 48px;}
.overview .arti02 .arti-title p {font-size: 22px; margin-top: 15px; margin-bottom: 72px;}
.overview .arti02 .box-wrap {display: flex; flex-wrap: wrap; margin: -15px; }
.overview .arti02 .box {padding: 15px;}
.overview .arti02 .box .inner {display: flex; flex-direction: column; justify-content: space-between; width: 230px; min-height: 210px; height: 100%; padding: 30px 30px 35px 38px; background: rgba(255,255,255,0.1); border: 2px solid rgba(255,255,255,0.3); border-radius: 16px; backdrop-filter:blur(5px);} 
.overview .arti02 .box .num {font-size: 16px; font-weight: 500; line-height: 1em; color: rgba(255,255,255,0.6); text-align: right;}
.overview .arti02 .box p {font-size: 28px; font-weight: 500; line-height: 1.35em; color: #fff;}
.overview .arti02 .img-box {max-width: 520px; width: 100%; margin-left: 170px;}

/* s1-2 */
.history .top-img-box {background-image: url('../img/sub/s12_top_img.jpg'); margin-bottom: 72px;}
.history-wrap {position: relative; display: flex;}
.history-wrap:before {content: ''; width: 1px; height: calc(100% - 12px); background: #ddd; position: absolute; top: 12px; left: 490px;}
.history-wrap .year {position: relative; max-width: 490px; width: 100%;}
.history-wrap .year p {position: absolute; top: 0; left: 130px; font-size: 32px; font-weight: 600; line-height: 1.3em; color: #000;}
.history-wrap .year h4 {position: absolute; top: 58px; left: 130px; font-family: 'Montserrat'; font-size: 90px; font-weight: 700; line-height: 1em; color: #194274; display: none;}
.history-wrap .year h4.on {display: block;}

.history-wrap.history-fixed .year p {position: fixed; top: 200px; left: 145px; padding-left: calc((100% - 1470px)/2);}
.history-wrap.history-fixed .year h4 {position: fixed; top: 258px; left: 145px; padding-left: calc((100% - 1470px)/2);}

.history-wrap .details {width: 100%; padding-top: 0; padding-bottom: 310px;}
.history-wrap .year-wrap {position: relative; padding-left: 53px;}
.history-wrap .year-wrap:not(:last-child) {margin-bottom: 85px;}
.history-wrap .year-wrap:before {position: absolute; top: 8px; left: -8px; content: ''; width: 17px; height: 17px; background: rgba(25,66,116,0.2); border-radius: 50%}
.history-wrap .year-wrap:after {position: absolute; top: 12px; left: -4px; content: ''; width: 9px; height: 9px; background: #194274; border-radius: 50%}
.history-wrap .year-wrap h5 {display: none; font-family: 'Montserrat'; font-size: 40px; font-weight: 700; line-height: 1em; color: #194274; margin-bottom: 15px;}
.history-wrap .month-wrap {display: flex;}
.history-wrap .month-wrap .month {max-width: 75px; width: 100%;}
.history-wrap .month-wrap .month p {width: 100%; font-size: 20px; line-height: 1.6em; font-weight: 600; color: #000;}
.history-wrap .month-wrap:not(:last-child) ul {margin-bottom: 32px;}
.history-wrap .month-wrap ul li {font-size: 20px; line-height: 1.6em; color: #666;}

/* s1-3 */
.location .map {margin-bottom: 46px; border-radius: 16px; overflow: hidden;}
.location .root_daum_roughmap {width:100% !important; height:470px !important;}
.location .root_daum_roughmap .wrap_map {height:470px !important;}
.location .root_daum_roughmap .border1,
.location .root_daum_roughmap .border2 {border: none;}
.location .root_daum_roughmap .border3, 
.location .root_daum_roughmap .border4 {background-color: transparent;}
.location .info-wrap {display: flex; justify-content: space-between;}
.location .info {width: 1%; flex: 1 1 auto;}
.location .info dl {display: flex; font-size: 20px; line-height: 1.5em; margin-bottom: 6px;}
.location .info dt {max-width: 63px; width: 100%; font-weight: 600; color: #000; padding-left: 10px;}
.location .info dd {width: 1%; flex: 1 1 auto; color: #666;}
.location .btn-wrap {display: flex; margin-top: -6px;}
.location .btn-wrap a {display: flex; justify-content: center; align-items: center; width: 60px; height: 60px; border-radius: 10px;} 
.location .btn-wrap .btn-map {background: #00aeef; margin-right: 8px;}
.location .btn-wrap .btn-print {background: #194274;}
.location .btn-wrap a img {transition: all 0.4s;}
.location .btn-wrap a:hover img {transform: rotate(-20deg);}

/* s2-1 */
.service .arti01 {padding-bottom: 113px;}
.top-img-box {height: 380px; background-repeat: no-repeat; background-position: center center; background-size: cover; margin-bottom: 100px; border-radius: 16px; overflow: hidden;}
.service-bio .top-img-box {background-image: url('../img/sub/s21_top_img.jpg');}
.arti-title {text-align: center;}
.arti-title.left {text-align: left;}
.arti-title .eng-name {display: inline-block; width: 164px; height: 54px; border-radius: 27px; font-size: 16px; font-weight: 500; line-height: 54px; color: #fff; margin-bottom: 43px;}
.arti-title .eng-name.color-sky {background: #00aeef;}
.arti-title .eng-name.color-navy {background: #194274;}
.arti-title.left .eng-name {text-align: center;}
.arti-title h4 {font-size: 38px; font-weight: 600; line-height: 1.3em; color: #000;}
.arti-title p {font-size: 20px; line-height: 1.6em; color: #666; margin-top: 35px;}
.arti-title.white h4 {color: #fff;}
.arti-title.white p {color: rgba(255,255,255,0.7);}

.service .arti02 {padding: 160px 0 170px; background-repeat: no-repeat; background-position: center center; background-size: cover;}
.service-bio .arti02 {background-image: url('../img/sub/s21_process_bg.jpg');}
.service .arti02 .arti-title {margin-bottom: 93px;}
.process-list ol {display: flex; flex-wrap:wrap; margin: 0 -35px;}
.process-list ol li {position: relative; padding: 0 35px;}
.process-list ol li:after {position: absolute; top: 80px; right: -5px; content: ''; width: 10px; height: 17px; background: url('../img/sub/sevice_process_icon_arrow.png') no-repeat center center;}
.process-list ol li:last-child:after {display: none;}
.process-list.col05 {max-width: 1182px; width: 100%; margin: 0 auto;}
.process-list.col05 ol li {width: 20%;}
.process-list ol li .icon {width: 180px; height: 180px; background-repeat: no-repeat; background-position: center center; margin: 0 auto 40px;}
.service-bio .process-list ol li:nth-child(1) .icon {background-image: url('../img/sub/s21_process_icon01.png');}
.service-bio .process-list ol li:nth-child(2) .icon {background-image: url('../img/sub/s21_process_icon02.png');}
.service-bio .process-list ol li:nth-child(3) .icon {background-image: url('../img/sub/s21_process_icon03.png');}
.service-bio .process-list ol li:nth-child(4) .icon {background-image: url('../img/sub/s21_process_icon04.png');}
.service-bio .process-list ol li:nth-child(5) .icon {background-image: url('../img/sub/s21_process_icon05.png');}
.process-list ol li .num {font-size: 16px; font-weight: 500; line-height: 1em; color: rgba(255,255,255,0.6); text-align: center; margin-bottom: 13px;}
.process-list ol li p {font-size: 28px; font-weight: 500; line-height: 1.35em; color: #fff; text-align: center;}

/* s2-2 */
.service-test .top-img-box {background-image: url('../img/sub/s22_top_img.jpg');}
.service-test .arti02 {background-image: url('../img/sub/s22_process_bg.jpg');}
.process-list.col04 {max-width: 934px; width: 100%; margin: 0 auto;}
.process-list.col04 ol li {width: 25%;}
.service-test .process-list ol li:nth-child(1) .icon {background-image: url('../img/sub/s22_process_icon01.png');}
.service-test .process-list ol li:nth-child(2) .icon {background-image: url('../img/sub/s22_process_icon02.png');}
.service-test .process-list ol li:nth-child(3) .icon {background-image: url('../img/sub/s22_process_icon03.png');}
.service-test .process-list ol li:nth-child(4) .icon {background-image: url('../img/sub/s22_process_icon04.png');}

/* s2-3 */
.service-develop .top-img-box {background-image: url('../img/sub/s23_top_img.jpg');}
.service-develop .arti02 {background-image: url('../img/sub/s23_process_bg.jpg');}
.process-list.col06 {max-width: 1430px; width: 100%; margin: 0 auto;}
.process-list.col06 ol li {width: 16.6666%;}
.service-develop .process-list ol li:nth-child(1) .icon {background-image: url('../img/sub/s23_process_icon01.png');}
.service-develop .process-list ol li:nth-child(2) .icon {background-image: url('../img/sub/s23_process_icon02.png');}
.service-develop .process-list ol li:nth-child(3) .icon {background-image: url('../img/sub/s23_process_icon03.png');}
.service-develop .process-list ol li:nth-child(4) .icon {background-image: url('../img/sub/s23_process_icon04.png');}
.service-develop .process-list ol li:nth-child(5) .icon {background-image: url('../img/sub/s23_process_icon05.png');}
.service-develop .process-list ol li:nth-child(6) .icon {background-image: url('../img/sub/s23_process_icon06.png');}

/* s2-4 */
.service-quality .top-img-box {background-image: url('../img/sub/s24_top_img.jpg');}
.service-quality .arti02 {background-image: url('../img/sub/s24_process_bg.jpg');}
.service-quality .process-list ol li:nth-child(1) .icon {background-image: url('../img/sub/s24_process_icon01.png');}
.service-quality .process-list ol li:nth-child(2) .icon {background-image: url('../img/sub/s24_process_icon02.png');}
.service-quality .process-list ol li:nth-child(3) .icon {background-image: url('../img/sub/s24_process_icon03.png');}
.service-quality .process-list ol li:nth-child(4) .icon {background-image: url('../img/sub/s24_process_icon04.png');}
.service-quality .process-list ol li:nth-child(5) .icon {background-image: url('../img/sub/s24_process_icon05.png');}
.service-quality .process-list ol li:nth-child(6) .icon {background-image: url('../img/sub/s24_process_icon06.png');}

/* s3-1 */
.analysis-list .list-title {height: 60px; background: #194274; border-radius: 16px; font-size: 20px; font-weight: 600; line-height: 1.3em; color: #fff; text-align: center; align-content: center;}
.analysis-list ul {display: flex; flex-wrap: wrap;}
.analysis-list ul li {width: 20%; height: 60px; align-content: center; padding: 0 30px; font-size: 18px; line-height: 1.3em; color: #666; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd;}
.analysis-list ul li:nth-child(5n) {border-right: 0;}

/* s3-2 */
.equip-list .item {display: flex; justify-content: space-between; align-items: center; margin: 0 -40px;}
.equip-list .item:nth-child(even) {flex-direction: row-reverse;}
.equip-list .item:not(:last-child) {margin-bottom: 60px;}
.equip-list .item > div {width: 50%; padding: 0 40px;}
.equip-list .item .img-box img {border-radius: 16px; overflow: hidden;}
.equip-list .item:nth-child(odd) .text-box .inner {padding: 0 50px;}
.equip-list .item:nth-child(even) .text-box .inner {padding: 0 50px 0 130px;}
.equip-list .item .text-box p {font-size: 38px; font-weight: 600; line-height: 1.3em; color: #194274; margin-bottom: 29px;}
.equip-list .item .text-box ul li {position: relative; font-size: 20px; line-height: 1.8em; color: #666; padding-left: 14px;}
.equip-list .item .text-box ul li:before {position: absolute; top: 14px; left: 0; content: ''; width: 4px; height: 4px; background: #194274;}
