@charset "utf-8";

/* 공통 */
.txt-white {color:#fff !important;}
.txt-blue {color:#018bd0 !important;}
.txt-navy {color:#233e98 !important;}

.doc-cnt {margin-bottom:60px; padding-left:28px;}
.doc-cnt:last-child {margin-bottom:0;}
.doc-tit {position:relative; padding-left:28px; margin-bottom:24px; font-size:20px; font-weight:700; line-height:1.2em; letter-spacing:0; color:#333;}
.doc-tit:before {content:''; position:absolute; widtH:19px; height:23px; left:0; top:1px; background:url('../images/sub/bullet.png') no-repeat 50% 50%; background-size:contain;}
.doc-txt {font-weight:400; letter-spacing:0; color:#555; margin-bottom:30px;}
.doc-txt:last-child {margin-bottom:0;}

/* company */
.company .top-bg {margin-bottom:55px; padding:85px 10px; border:1px solid #ddd; text-align:center;}
.company .txt-wrap {margin-bottom:110px; text-align:center;}
.company .txt-wrap .tit {margin-bottom:20px; font-size:24px; font-weight:700; line-height:1.2em; letter-spacing:0; color:#555;}
.company .txt-wrap .txt {line-height:1.8em; letter-spacing:0; color:#555;}
.company .txt-wrap .txt strong {font-size:20px;}
.company .img-wrap {display:flex; justify-content:space-between; margin:0 -20px;}
.company .img-wrap .img {width:33.333%; padding:0 20px;}

/* greeting */
.greeting .top-cont {display:flex; margin-bottom:80px;}
.greeting .top-cont .txt-wrap {flex:1 1 auto; min-width:0; width:1%; padding-right:80px;}
.greeting .top-cont .tit {margin-bottom:30px; font-size:30px; font-weight:700; line-height:1.2em; letter-spacing:0; color:#020303;}
.greeting .top-cont .txt {margin-bottom:23px; font-weight:400; line-height:1.6em; letter-spacing:0; color:#555;}
.greeting .top-cont .txt:last-child {margin-bottom:0;}
.greeting .top-cont .sign {margin-top:40px; font-size:18px; line-height:1.2em;}

/* history */
.history {display:flex;}
.history .img {margin-right:105px;}
.history .cnt {position:relative; flex:1 1 auto; min-width:0; width:1%; padding-left:50px;}
.history .cnt:before {content:''; position:absolute; width:1px; height:100%; left:0; top:0; background:#9fa0a0;}
.history .cnt:after {content:''; position:absolute; width:20px; height:20px; border:5px solid #018bd0; background:#fff; border-radius:100%; top:0; left:0; margin-left:-10px;}

.history .top-cont {position:relative; padding:75px 0;}
.history .top-cont p {font-family:var(--font-g); font-size:50px; font-weight:300; line-height:1.2em; letter-spacing:0; color:#555;}
.history .top-cont p strong {font-size:36px;}
.history .group {position:relative; display:flex; padding-bottom:70px;}
.history .group:before {content:''; position:absolute; width:30px; height:38px; background:url('../images/sub/history-dot.png') no-repeat 50% 50%; background-size:contain; left:-50px; margin-left:-15px;}
.history .group .year {min-width:115px; font-family:var(--font-g); font-size:36px; font-weight:700; line-height:1.2em; letter-spacing:0; color:#191e28;}
.history .group .part {flex:1 1 auto; min-width:0; width:1%;}
.history .group .in {display:flex;}
.history .group .in .month {margin-top:6px; min-width:50px; font-family:var(--font-g); font-size:26px; font-weight:500; line-height:1.2em; letter-spacing:0; color:#191e28;}
.history .group .in > ul {margin-top:6px; flex:1 1 auto; min-width:0; width:1%;}
.history .group .in > ul > li {position:relative; padding-left:20px; font-weight:400; line-height:1.8em; letter-spacing:0; color:#555;}
.history .group .in > ul > li:before {content:''; position:absolute; width:5px; height:2px; background:#a9a9a9; left:0; top:12px;}

/* vision */
.vision .top-img {text-align:center; padding:60px 0;}
.vision .wrap ul {display:flex; justify-content:center;}
.vision .wrap ul li {padding:0 25px; text-align:center;}
.vision .wrap ul li .img {border-radius:40px; margin-bottom:45px; box-shadow:0 0 10px rgba(197,197,197,0.75);}
.vision .wrap ul li .tit {font-weight:500; line-height:1.6em; letter-spacing:-0.03em; color:#333;}

/* 채용안내 */
.recruitment .top-txt {text-align:center; margin-bottom:100px;}
.recruitment .top-txt .tit {margin-bottom:10px; font-size:30px; font-weight:700; line-height:1.2em; letter-spacing:-0.025em; color:#333;}
.recruitment .top-txt .txt {font-size:18px; font-weight:600; line-height:1.6em; letter-spacing:0; color:#333;}
.recruitment .dc2 ul {display:flex; margin:0 -30px;}
.recruitment .dc2 ul li {position:relative; width:20%; max-width:260px; padding:0 30px;}
.recruitment .dc2 ul li:before {content:''; position:absolute; width:22px; height:22px; background:url('../images/sub/icon-arrow.png') no-repeat 50% 50%; background-size:contain; right:0; top:50%; margin-top:-11px; margin-right:-11px;}
.recruitment .dc2 ul li:last-child:before {display:none;}
.recruitment .dc2 ul li .in {display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; min-height:150px; border:1px solid #ddd; border-radius:25px;}
.recruitment .dc2 ul li .tit {margin-top:8px; font-weight:700; letter-spacing:0; color:#333;}
.recruitment .dc3 ul {display:flex; margin:0 -24px;}
.recruitment .dc3 ul li {position:relative; width:33.333%; max-width:408px; padding:0 24px;}
.recruitment .dc3 ul li .img {margin-bottom:17px;}
.recruitment .dc3 ul li .tit {margin-bottom:10px; font-size:20px; font-weight:700; line-height:1.2em; letter-spacing:0; color:#333;}
.recruitment .dc3 ul li .txt {font-weight:400; letter-spacing:0; color:#555;}

.talent-list ul {display:flex; margin:0 -20px;}
.talent-list ul li {width:25%; padding:0 20px; text-align:center;}
.talent-list ul li .thumb {position:relative; border-radius:15px; overflow:hidden; margin-bottom:15px;}
.talent-list ul li .tit {position:absolute; left:0; bottom:0; width:100%; padding:14px; background:rgba(0,0,0,0.5); font-size:20px; font-weight:700; line-height:1.2em; letter-spacing:0; color:#fff;}
.talent-list ul li .txt {font-weight:400; line-height:1.4em; letter-spacing:0; color:#555;}