@charset "utf-8";

.doc-cnt {padding:120px 0;}

.gray-bg {background:#f9f9f9}

.sub-tab  {margin-bottom:60px;}
.sub-tab ul {display:flex; justify-content:center; gap:10px;}
.sub-tab ul li a {font-weight:500; color:#aaa; border-radius:8px; height:40px; min-width:120px; background:#f6f6f6; padding:0 30px; display:flex; align-items:center; justify-content:center; text-align:center;}
.sub-tab ul li.active a {background:var(--color-primary); color:#fff;}

.ico-tit {margin-bottom:35px; position:relative; padding-left:48px; font-size:var(--fz32); font-weight:700; line-height:1.3em; color:#242424;}
.ico-tit:before {content:''; position:absolute; left:0; top:.1em; width:36px; height:34px; background:url('/images/sub/tit-ico.png') no-repeat 50% 50% / contain;}

.sub-intro {padding:75px 0; background-size:cover; background-repeat:no-repeat; background-position:100% 50%; color:#fff;}
.sub-intro .tt {margin-bottom:25px; font-size:var(--fz18); font-weight:700; letter-spacing:.5em; line-height:1.4em;}
.sub-intro .tit {margin-top:0;font-size:var(--fz32); font-weight:700; line-height:1.25em;}
.sub-intro .tit:after {margin:20px 0; display:block; content:''; width:1px; height:40px; background:#fff;}
.sub-intro .txt {font-size:var(--fz18); font-weight:400; line-height:1.44em;}
.sub-intro.type2 .tt {color:var(--color-primary);}
.sub-intro.type2 .tit {color:var(--color-primary);}
.sub-intro.type2 .tit:after {background:#ddd;}
.sub-intro.type2 .txt {color:#454545;}

.greeting-img {margin-bottom:35px;}
.greeting-img img {border-radius:80px 0 80px 0;}
.greeting {display:flex;}
.greeting .head {width:390px;}
.greeting .head p {margin-bottom:20px; font-size:var(--fz18); font-weight:700; letter-spacing:.5em; line-height:1.4em; color:var(--color-primary);}
.greeting .head h2 {font-size:var(--fz32); font-weight:400; line-height:1.25em;}
.greeting .head h2 strong {color:var(--color-primary);}
.greeting .cnt {flex:1 1 auto; min-width:0; width:1%;}
.greeting .cnt .tt {margin-bottom:30px; font-size:var(--fz20); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}
.greeting .cnt .mg-txt {margin-bottom:45px;}
.greeting .cnt .mg-txt p {margin-bottom:15px; font-weight:400; color:#454545; line-height:1.63em;}
.greeting .cnt .mg-txt p:last-child {margin-bottom:0;}
.greeting .cnt .ceo {font-size:var(--fz18);font-weight:600; color:#454545; line-height:1.4em;}

.history {display:flex;}
.history .head {width:500px;}
.history .head h3 {margin-bottom:10px; font-size:var(--fz40); font-weight:600; line-height:1.1em;}
.history .head h3 strong {color:var(--color-primary);}
.history .head p {font-weight:600; line-height:1.63em;}
.history .wrap {padding-top:45px; border-top:1px solid #aaa;}
.history .group {position:relative; padding-left:50px; }
.history .group:after {content:''; position:absolute; left:15px; top:0; width:1px; height:100%; background:#ddd;}
.history .group h4 {position:relative; margin-bottom:18px; font-size:var(--fz20); font-weight:700; line-height:1.4em;}
.history .group h4:before {position:absolute; left:-50px; content:''; width:30px; height:30px; background:#fff url('/images/sub/history-dot.png') no-repeat 50% 50% /contain; z-index:2;}
.history .group ul li {display:flex; margin-bottom:10px; font-weight:400; line-height:1.4em; color:#454545;}
.history .group ul li:last-child {margin-bottom:0;}
.history .group ul li strong {font-weight:600; min-width:40px; color:var(--color-primary);}

.table01 table {border-top:1px solid #aaa; width:100%; border-collapse:collapse; border-spacing:0; font-size:var(--fz18); font-weight:400; line-height:1.4em; color:#454545;}
.table01 table tbody th {border-right:1px solid #ddd; border-bottom:1px solid #ddd;  background:#fff; font-weight:600; height:60px; padding:12px 20px;}
.table01 table tbody td {border-right:1px solid #ddd; border-bottom:1px solid #ddd; font-weight:400; height:60px; padding:12px 20px;}
.table01 table tbody td:last-child {border-right:0;}
.table01.type2 table tbody th {background:#f9f9f9;}

.directions {margin-bottom:40px;}

.alignment ul {display:flex; margin:-20px;}
.alignment ul li {width:33.333%; padding:20px;}

.org {padding-left:245px;}


.root_daum_roughmap_landing {width: 100% !important;}
.root_daum_roughmap .cont {display: none;}

.contact-info ul {display:flex; margin:0 -40px;}
.contact-info ul li {padding:0 40px; position:relative; font-weight:400; display:flex; align-items:center;}
.contact-info ul li img {margin-right:12px;}
.contact-info ul li:after {content:''; position:absolute; right:0; width:1px; height:14px; background:#ddd;}
.contact-info ul li:last-child:after {display:none;}

.partners ul {display:flex; flex-wrap:wrap; margin:-18px -12px;}
.partners ul li {width:20%; padding:18px 12px; text-align:center;}
.partners ul li .img {border-radius:10px; position:relative; padding-bottom:41%; overflow:hidden;}
.partners ul li .img img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain;}
.partners ul li .img:after {border-radius:10px; content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid #ddd;}
.partners ul li p {font-weight:400; line-height:1.4em; color:#454545; margin-top:18px;}

.department-bnr {position:relative; height:500px;  margin-bottom:220px; display:flex; align-items:flex-end;}
.department-bnr .bg {position:absolute; left:0; top:0; width:100%; height:100%; background-size:cover; background-repeat:no-repeat; background-position:50% 50%;}
.department-bnr .box {position:absolute; top:280px; padding:53px 60px; background:#fff; min-width:840px; border-radius:40px; box-shadow:0 8px 16px rgba(0,0,0,.16);}
.department-bnr .box dt {margin-bottom:28px; font-size:var(--fz32); font-weight:700; line-height:1.3em;}
.department-bnr .box dd {font-size:var(--fz18); font-weight:400; line-height:1.44em; color:#454545;}
.department-bnr .box dd + dd {margin-top:10px;}

.department .contain {display:flex; align-items:center;}
.department .img {width:478px; margin-right:125px;}
.department .wrap {flex:1 1 auto; min-width:0; width:1%;}
.department .wrap .row {margin-bottom:30px; display:flex; align-items:center;}
.department .wrap .row:last-child {margin-bottom:0;}
.department .wrap .row .ico {min-width:81px; margin-right:40px;}
.department .wrap .row .con .tit {margin-bottom:10px; font-size:var(--fz24); font-weight:700; line-height:1.3em;}
.department .wrap .row .con .tit small {font-size:var(--fz18); font-weight:400; color:#aaa;}
.department .wrap .row .con ul li {padding-left:1em; text-indent:-1em; line-height:1.5em; color:#454545;}

.work .list ul {display:flex; flex-wrap:wrap; margin:-20px;}
.work .list ul li {width:33.333%; padding:20px;}
.work .list .box {padding:40px; height:100%; border:1px solid #ddd; border-radius:16px;}
.work .list .box .ico {margin-bottom:33px;}
.work .list .box dl dt {margin-bottom:15px; font-size:var(--fz20); font-weight:700; line-height:1.4em; color:var(--color-primary);}
.work .list .box dl dd {font-weight:400; line-height:1.6em; color:#454545;}
.work .list.col-2 ul li {width:50%;}

.cases .list img {border-radius:16px;}
.cases .list ul {display:flex; flex-wrap:wrap; margin:-20px;}
.cases .list ul li {width:33.333%; text-align:center; padding:20px;}
.cases .list.col-4 ul {margin: -10px;}
.cases .list.col-4 ul li {width: 25%; padding: 10px;}
.cases .list ul li .tit {margin-bottom:14px; font-size:var(--fz20); font-weight:700; line-height:1.4em;}
.cases .list.type2 ul li {width:20%;}
.cases .list.type2 ul li .tit {margin-top: 15px;}
.cases .list.type2 ul li .txt {font-weight:400; line-height:1.4em; color:#454545;}

.inquiry-wrap {display:flex;}
.inquiry-head {width:400px; padding-right:30px;}
.inquiry-head .head {margin-bottom:100px;}
.inquiry-head .head h3 {color:#242424; font-size:var(--fz48); line-height:1.33em; letter-spacing:-.03em; margin-bottom:15px;}
.inquiry-head .head p {color:#454545; line-height:1.625em; letter-spacing:-.03em;}
.inquiry-head .contact .item {display:flex; margin-bottom:20px;}
.inquiry-head .contact .item:last-child {margin-bottom:0;}
.inquiry-head .contact .item .ico {min-width:40px;}
.inquiry-head .contact .item .ico img {margin-top:.2em;}
.inquiry-form {padding:55px 60px 60px; border-radius:40px; box-shadow:0 0 50px rgba(0,0,0,.1); flex:1 1 auto; min-width:0; width:1%; background:#fff;}
.inquiry-form .ico-required {font-style:normal; color:var(--color-primary); font-weight:500;}
.inquiry-form .form {line-height:1.5em; letter-spacing:-.03em;}
.inquiry-form .form .row {display:flex; flex-wrap:wrap; margin:-12px -10px;}
.inquiry-form .form .col {width:50%; padding:12px 10px;}
.inquiry-form .form .col.col-x2 {width:100%;}
.inquiry-form .form dt {margin-bottom:15px; font-weight:500;}
.inquiry-form .form .input {display:block; width:100%; border-radius:4px;}
.inquiry-form .form select.input {padding-right:30px; background-size:10px auto; background-position:right 10px center;}
.inquiry-form .form textarea.input {height:120px;}
.inquiry-form .submit-area {display:flex; justify-content:space-between; align-items:center; margin-top:60px;}
.inquiry-form .form-agree {margin:0;}
.inquiry-form .form-agree .check {text-align:left;}
.inquiry-form .btn-pack {height:40px; min-width:120px; border-radius:8px; font-weight:400; letter-spacing:0;}
