 @charset "utf-8"; /* doc.css는 디자인페이지 스타일을 정의합니다. */

.group-flex { display: flex; width: 100%; } 
.group-flex > div { width: 50%; } 

.about .group-flex .img { background-repeat: no-repeat; height: 800px; background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; } 
.about .group-flex .img.left { background-image: url(../images/sub/vision1.jpg); } 
.about .group-flex .img.right { background-image: url(../images/sub/vision2.jpg); } 
.about .img.right .txt-wrap { display: flex; flex-direction: column; color: #fff; font-weight: 500; } 
.about .img.right .txt-wrap .caption { font-size: 32px; line-height: 1.71875em; padding-top: 275px; padding-left: 90px; } 
.about .img.right .txt-wrap .caption span { position: relative; padding-left: 125px; margin-left: 20px; } 
.about .img.right .txt-wrap .caption span::before { content: ""; position: absolute; top: 50%; transform: translateY(-50%); left: 0; background-color: rgba(255, 255, 255, .5); width: 100px; height: 1px; } 
.about .img.right .txt-wrap .company { position: relative; font-size: 30px; line-height: 1.833em; display: flex; justify-content: end; padding-right: 70px; } 
.about .img.right .txt-wrap .company .logo { margin-right: 14px; } 

.greetings { margin-bottom: 70px; } 
.greetings .group-tit { margin-bottom: 140px; } 
.greetings .eng { margin-bottom: 45px; } 
.greetings .caption { font-size: 38px; font-weight: 500; color: #888888; line-height: 1.184em; } 
.greetings .caption strong { position: relative; padding-left: 175px; color: #121212; } 
.greetings .caption strong::before { content: ""; position: absolute; width: 135px; height: 1px; background-color: #ddd; top: 50%; transform: translateY(-50%); left: 0; margin-left: 18px; } 
.greetings .group-flex { justify-content: space-between; } 
.greetings .txt-area { padding-right: 74px; } 
.greetings .txt p { margin-bottom: 45px; line-height: 1.833em; color: #000000; } 
.greetings .sign { margin-top: 40px; line-height: 1em; display: flex; justify-content: end; align-items: flex-end; } 
.greetings .sign .img { margin-left: 10px; } 
.greetings .group-flex > .img img { box-shadow: 7px 4px 20px 4px rgba(0, 0, 0, 0.1); } 

.services .group-info { border-top: 1px solid #ddd; } 
.services .group-info .info-area { display: flex; padding: 50px 0 100px; border-bottom: 1px solid #ddd; } 
.services .group-info .info-area .tit { width: 350px; background-color: #121212; color: #fff; font-size: 20px; line-height: 1.5em; display: flex; justify-content: center; align-items: center; margin-right: 100px; height: 50px; } 
.services .group-info .info-area ul { flex: 1 1 auto; min-width: 0; width: 1%; } 
.services .group-info .info-area li { position: relative; padding-left: 8px; } 
.services .group-info .info-area li::before { content: "·"; position: absolute; top: 0; font-size: 18px; font-weight: 800; left: 0; } 

.pro-list ul { display:flex; flex-wrap:wrap; margin:0 -50px; } 
.pro-list ul li { width: 33.3333%; padding: 0 50px; margin-bottom: 50px; text-align: center; } 
.pro-list ul li.none { width:100%; padding:70px 0; margin:0; text-align:center; color:#767676; } 
.pro-list ul li a { display:block; letter-spacing: -0.03em;} 
.pro-list ul li .thumb { position:relative; padding-bottom: 117.5%; margin-bottom:17px; overflow:hidden; } 
.pro-list ul li .thumb img { position:absolute; top:50%; left:0; transition:.4s ease-in-out; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover; } 
.pro-list ul li .thumb:after { content:""; position:absolute; top:0; left:0; right:0; bottom:0; }
.pro-list ul li .name { color:#121212; font-size:20px; line-height:1.4em; font-weight: 600; line-height: 1.15em; }
.pro-list ul li .name span { color:#153c5c; font-size: 16px; font-weight: 500; display: inline-block; margin-right: 20px;} 
.pro-list ul li .email { color:#454545; margin-top:14px; line-height: 1.277em; } 

.contact .doc-cnt { margin-bottom: 100px; } 
.contact .doc-cnt:last-child { margin-bottom: 0; } 
.contact .doc-tit { font-weight: 500; font-size: 24px; line-height: 1.25em; margin-bottom: 36px; padding-bottom: 34px; position: relative; text-align: center; } 
.contact .doc-tit::after { content: ""; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); background: linear-gradient(90deg, rgba(221,221,221,1) 0%, rgba(136,136,136,1) 50%, rgba(221,221,221,1) 100%); width: 800px; height: 1px; } 
.contact .info-wrap { display: flex; justify-content: space-around; } 
.contact .info-wrap dl { display: flex; position: relative; line-height: 1.666em; margin-bottom: 45px; } 
.contact .info-wrap dl dt { font-weight: 500; width: 90px; padding-left: 22px; position: relative; } 
.contact .info-wrap dl dt::before { content: ""; position: absolute; top: 9px; left: 0; width: 12px; height: 12px; border-radius: 50%; border: 3px solid #121212; } 
.root_daum_roughmap { width:100% !important; height:620px !important; } 
.root_daum_roughmap .wrap_map { height:620px !important; } 
.roughmap_lebel_text { line-height:0 !important; font-size:0 !important; } 
.map1 .roughmap_lebel_text:after { content:"서울특별시 서초구 서초중앙로2길 35"; font-size:12px; line-height:15px; } 
.map2 .roughmap_lebel_text:after { content:"전라북도 전주시 완산구 새터로 122-5"; font-size:12px; line-height:15px; } 
.map3 .roughmap_lebel_text:after { content:"충청북도 청주시 흥덕구 오송읍 오송생명8로 227"; font-size:12px; line-height:15px; } 
