 @charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */
/* sub01_01 */
.greeting .wrap {background:#fafafa; padding:50px 0 96px;}
.greeting .col {display:flex;}
.greeting .img-box {max-width:479px; width:100%; position:relative;}
.greeting .img-box .img {width:100%; height:100%; position:absolute; top:0; left:0;}
.greeting .img-box span {position:absolute; bottom:0; left:0; font-size:90px; color:#e9e9e9; font-weight:800; font-family:'Montserrat'; line-height:1em;}
.greeting .txt {width:1%; flex:1 1 auto; padding-left:50px;}
.greeting .tit {padding:116px 0 60px; position:relative;}
.greeting .tit:after {content:''; width:2px; height:50px; background:#686868; position:absolute; left:0; bottom:-24px;}
.greeting .tit h3 {font-size:23px; line-height:1.2em; color:#242424; font-family:'NanumSquare'; white-space:nowrap;}
.greeting .tit h3 strong {color:#003775; font-size:28px; font-weight:800;}
.greeting .txt p {font-size:16px; color:#454545; margin-bottom:20px;}
.greeting .txt .tt {font-size:16px; font-weight:500; color:#242424; line-height:1.6em;}
.greeting .txt .tt strong {font-size:20px; display:inline-block; vertical-align:middle; margin-top:-2px; margin-left:10px;}
.greeting .box {width:100%; position:relative;}
.greeting .box:after {content:''; width:40%; height:360px; background:#c2dceb; position:absolute; left:0; top:50px;}
/* sub01_02 */
.history .head {background:url('../images/sub/history-bg.jpg') 0 0 no-repeat; background-size:cover; padding:70px 50px; margin-bottom:50px;}
.history .head .txt {display:inline-block; background:rgba(0,0,0,0.5); padding:26px 44px 26px 22px; text-align:right; font-size:30px; font-family:'NanumSquare'; font-weight:700; color:#fff;}
.history .head .txt strong {font-family:'Noto Sans KR'; font-style:italic; display:block; margin-top:8px;}
.history .cnt {margin-bottom:60px;}
.history .cnt .tit {font-size:30px; font-weight:500; color:#242424; line-height:1.3em; padding-bottom:16px; margin-bottom:20px; border-bottom:1px solid #ddd; position:relative;}
.history .cnt .tit:after {content:''; width:155px; height:2px; position:absolute; bottom:-1px; left:0; background:#242424;}
.history .col {display:flex;}
.history .col .year {width:160px; text-align:center; font-size:25px; font-weight:700; color:#3884b7; line-height:1.4em; position:relative;}
.history .col .year:after {content:''; width:6px; height:6px; border-radius:50%; background:#3884b7; position:absolute; top:15px; right:30px;}
.history .col .txt {width:1%; flex:1 1 auto; padding-top:4px;}
.history .col .txt .tt {display:flex; margin-bottom:20px;}
.history .col .txt .tt .month {width:60px; font-size:18px; font-weight:500; line-height:1.5em; color:#454545;}
.history .col .txt .tt ul {width:1%; flex:1 1 auto;}
.history .col .txt .tt ul li {font-size:16px; color:#454545;}
.history .col .txt .tt ul li span {display:block; font-size:14px;}
/* sub01_03 */
.organization {border:1px solid #ddd; padding:60px 20px; text-align:center; border-radius:20px;}
/* sub01_04 */
.certification ul {display:flex; flex-wrap:wrap; margin:0 -10px;}
.certification ul li {padding:0 10px; margin-bottom:50px; width:20%;}
.certification ul li p {font-size:16px; color:#686868; text-align:center; margin-top:10px;}
/* sub01_05 */
.directions .maps {margin-bottom:36px;}
.directions .root_daum_roughmap {width:100% !important; height:450px !important;}
.directions .root_daum_roughmap .wrap_map {height:450px !important;}
.directions .roughmap_lebel_text {line-height:0 !important; font-size:0 !important;}
.directions .roughmap_lebel_text:after {content:"(주)선일종합건설"; font-size:12px; line-height:15px;}
.directions .txt {margin-bottom:20px;}
.directions .txt .tt {font-size:16px; font-weight:500; color:#1f3651; line-height:1.7em; margin-bottom:8px;}
.directions .txt h3 {font-size:23px; color:#454545; font-family:'NanumSquare'; line-height:1.3em;  margin-bottom:8px;}
.directions .txt p {font-size:16px; color:#454545; line-height:1.7em;}
.directions .txt p span {margin:0 5px;}
.directions .box dl {border-top:1px solid #ddd; display:flex; line-height:80px;}
.directions .box dl:last-child {border-bottom:1px solid #ddd;}
.directions .box dt {width:150px; font-family:'Lexend Deca'; color:#242424; font-size:18px; padding-left:68px; position:relative;}
.directions .box dt:before {content:''; width:20px; height:20px; background-repeat:no-repeat; background-size:cover; position:absolute; top:50%; margin-top:-10px; left:30px;}
.directions .box dl:nth-child(1) dt:before {background-image:url('../images/sub/tel-icon.png');}
.directions .box dl:nth-child(2) dt:before {background-image:url('../images/sub/fax-icon.png');}
.directions .box dl:nth-child(3) dt:before {background-image:url('../images/sub/mail-icon.png');}
.directions .box dd {width:1%; flex: 1 1 auto; padding-left:30px; font-size:16px; font-weight:300; color:#454545;}
/* sub02_01 */
.business-build .head {background:url('../images/sub/business-build-bg.jpg') center center no-repeat; height:310px; margin-bottom:60px; text-align:center; display:flex; align-items:center; justify-content:center; flex-direction:column;}
.business-build .head p {font-size:18px; line-height:1.8em; color:#242424; margin-bottom:36px;}
.business-build .head p strong {font-weight:500;}
.business-build .list {padding-top:25px; border-top:2px solid #868686; border-bottom:1px solid #ddd; margin-bottom:50px;}
.business-build .list ul {display:flex; flex-wrap:wrap; margin:0 -15px;}
.business-build .list ul li {padding:0 15px; width:33.33333333333%; margin-bottom:40px;}
.business-build .list ul li .img-box {background:#fff; margin-bottom:26px; padding:10px; box-shadow:0px 3px 8px 3px rgba(0,0,0,0.3);}
.business-build .list ul li .img-box .pic {position:relative; height:0; padding-bottom:68.612%; overflow:hidden;}
.business-build .list ul li .img-box .pic img {position:absolute; top:50%; left:0; transform:translateY(-50%); width:100% !important; height:100% !important; max-width:100%; min-height:100%; object-fit:cover; transition:0.3s;}
.business-build .list ul li .txt dl {display:flex; font-size:16px; color:#454545; line-height:1.8em;}
.business-build .list ul li .txt dt {width:80px; padding-left:11px; position:relative; font-weight:500;}
.business-build .list ul li .txt dt:before {content:''; width:4px; height:4px; background:#454545; position:absolute; top:12px; left:2px; border-radius:50%;}
.business-build .list ul li .txt dd {width:1%; flex:1 1 auto;}
.business-build .more {text-align:center;}
.business-build .more a {display:inline-block; font-size:18px; color:#fff; font-weight:700; line-height:60px; background:#5078ac; border-radius:30px; padding:0 40px;}
.business-build .more a:after {content:''; width:24px; height:24px; background:url('../images/sub/business-build-more.png') 0 0 no-repeat; background-size:cover; display:inline-block; vertical-align:middle; margin-top:-2px; margin-left:20px;}
/* sub03_01 */
.gallery-list {padding:25px 0 0 0; border-bottom:1px solid #ddd; border-top:2px solid #868686;}
.gallery-list ul {display:flex; flex-wrap:wrap; margin:0 -15px;}
.gallery-list ul li {width:33.3333333%; padding:0 15px; margin-bottom:40px;}
.gallery-list ul li.none {width:100%; padding:70px 0; margin:0; text-align:center; color:#767676;}
.gallery-list ul li a {display:block;}
.gallery-list ul li .thumb {position:relative; padding-bottom:71.055%; overflow:hidden;}
.gallery-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;}
.gallery-list ul li .txt-box {border:1px solid #ddd; border-top:0; padding:20px;}
.gallery-list ul li .txt-box .tit {font-size:22px; font-weight:500; color:#242424; margin-bottom:24px;}
.gallery-list ul li .txt-box .txt {margin-bottom:30px;}
.gallery-list ul li .txt-box .txt dl {display:flex; font-size:16px; color:#454545; line-height:1.8em;}
.gallery-list ul li .txt-box .txt dt {width:80px; position:relative; font-weight:500;}
.gallery-list ul li .txt-box .txt dd {width:1%; flex:1 1 auto; white-space:nowrap; text-overflow:ellipsis; overflow:hidden;}
.gallery-list ul li .txt-box .more {text-align:center;}
.gallery-list ul li .txt-box .more span {display:inline-block; line-height:48px; padding:0 70px; font-size:16px; border:1px solid #ddd; color:#454545; background:#fafafa;}
.gallery-list ul li .txt-box .more span:before {content:''; width:16px; height:16px; background:url('../images/sub/more-icon.png') 0 0 no-repeat; background-size:cover; display:inline-block; vertical-align:middle; margin-top:-2px; margin-right:10px;}
.gallery-list ul li a:hover .txt-box .more span {border-color:#5078ac; background:#5078ac; color:#fff;}
.gallery-list ul li a:hover .txt-box .more span:before {background:url('../images/sub/more-icon-w.png') 0 0 no-repeat;}
/* sub06_01 */
.nomination-list {padding:25px 0 0 0; border-bottom:1px solid #ddd; border-top:2px solid #868686;}
.nomination-list ul {display:flex; flex-wrap:wrap; margin:0 -20px;}
.nomination-list ul li {width:25%; padding:0 20px; margin-bottom:36px;}
.nomination-list ul li .pic {position:relative; height:0; padding-bottom:137.04%; overflow:hidden;}
.nomination-list ul li .pic:after {content:''; width:100%; height:100%; position:absolute; top:0; left:0; border:1px solid #ddd;}
.nomination-list ul li .pic img {position:absolute; top:50%; left:0; transform:translateY(-50%); width:100% !important; height:100% !important; max-width:100%; min-height:100%; object-fit:cover; transition:0.3s;}
.nomination-list ul li p {font-size:16px; color:#454545; margin-top:10px; line-height:1.6em; text-align:center;}