@charset "utf-8";
/* 공통 */
.sub-box { display: flex; overflow: unset ; height: 100%; position: relative;}
.sub-left { width: 25%; position: sticky; top: 60px; height: 100%;  left: 0;}
.sub-right { width: 75%; position: relative;}
.sub-tab li { font-size: 22px; font-weight: 500; letter-spacing: -.03em; line-height: 1em; color: #242424; margin-bottom: 20px; }
.sub-tab li a { display: inline-block; position: relative;}
.sub-tab li a::after { content: ""; position: absolute; right: -10px; top: 3px; width: 4px; height: 7px; background: #848d52; display: none;}
.sub-tab li:last-child { margin-bottom: 0;}
.sub-tab li.active { color: #848d52;}
.sub-tab li.active a::after { display: block;}

/* About us */
.sub1-box { position: relative;}
.sub-right h2 { font-size: 35px; line-height: 1em; color: #242424; letter-spacing: -.03em; font-weight: 700; margin-bottom: 40px;}
.sub-right h3 { font-size: 20px; font-weight: 500; letter-spacing: -.03em; line-height: 1.3em; color: #242424; margin-bottom: 55px;}
.sub1-box p { font-size: 18px; font-weight: 300; line-height: 1.9em; letter-spacing: -.03em; color: #454545; margin-bottom: 40px;}
.sub1-box { padding-bottom: 75px; position: relative;}
.sub1-box:last-child { padding-bottom: 0;}
.sub1-box p:last-child { margin-bottom: 0;}
.sub1-box p span { color: #848d52; font-weight: 500;}
.sub1-box .fx { position: relative; display: inline-block;}
.sub1-box .fx strong { font-size: 90px; font-weight: 900; font-family:'Noto Sans KR'; letter-spacing: -.03em; color: #848d52; opacity: 0.1; position: absolute;}
.sub1-box .fx strong.ab1 { left: -40px; top: 5px;}
.sub1-box .fx strong.ab2 { bottom: 40px; right: -30px;}
.sub1-box .fx strong.ab3 { bottom: 20px; right: -35px;}
.sub1-sb { position: absolute; top: 0; bottom: 0; margin: auto; right: 0;}
.sub1-box2 { padding-left: 230px; padding-top: 75px;}
.sub1-logo { position: absolute; left: 0; bottom: 30px;}
.sign { text-align: right; padding-right: 75px; }
.sign p { font-size: 18px; font-weight: 300; letter-spacing: -.03em; line-height: 1.2em; margin-top: 15px; color: #454545;}

/* 포트폴리오 상세 */
.pf-info { padding: 0 200px;}
.pf-imgbox { position: relative;}
.swiper { width: 100%; overflow: hidden; position: relative;}
.swiper-slide { width: 100%; }
.swiper-slide .thumb {position:relative; padding-bottom:72%; overflow:hidden;}
.swiper-slide .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:contain;}
.swiper-button-prev::after, .swiper-button-next::after { display: none;}
.swiper-button-prev, .swiper-button-next { width: 35px; height: 67px; background-size: contain; background-repeat: no-repeat; background-position: center; }
.swiper-button-prev { background-image: url(../images/sub/pf-leftbt.png); left: -80px;}
.swiper-button-next { background-image: url(../images/sub/pf-rightbt.png); right: -80px;}
.pf-infobox { margin: 50px 0 120px;}
.pf-infobox .tit { font-size: 22px; line-height: 1em; font-weight: 600; color: #242424; letter-spacing: -.03em; margin-bottom: 30px;}
.info-list { display: flex; flex-wrap: wrap; gap: 20px 0;}
.info-list li { width: calc(100%/2); }
.info-list li .ctt { font-size: 18px; font-weight: 300; letter-spacing: -.03em; line-height: 1.3em; color: #454545;}
.info-list li .ctt span { display: inline-block; position: relative; font-size: 20px; font-weight: 500; color: #242424;  margin-right: 22px;}
.info-list li .ctt span::after { content: ""; position: absolute; right: -10px; top: 3px; width: 4px; height: 7px; background: #848d52; }
.info-list li .ctt sup { font-size: 10px;}
.pf-row { display: flex; gap: 50px;}
.pf-row .column { width: calc(100%/2 - 25px); display: flex; flex-direction: column; gap: 50px;}
.pf-row .column a { display: block; width: 100%;}
.view-list { display: block; margin-top: 60px; line-height: 1em; font-size: 18px; font-weight: 300; letter-spacing: -.03em; color: #454545; text-decoration: underline; text-underline-position: under;}

/* contact */
.ct-list1 { display: flex; flex-wrap: wrap;}
.ct-list1 li { width: calc(100%/2); display: flex; align-items: flex-start;}
.ct-list1 li .txt { flex: 1 1 auto; min-width: 0; width: 1%; line-height: 1.666em; letter-spacing: -.03em; font-size: 16px; font-weight: 300; color: #454545; padding-left: 30px;}
.ct-list1 li .txt a { display: inline-block; margin-top: 35px; line-height: 1.25em; color: #fff; font-size: 16px; font-weight: 300; letter-spacing: -.03em; border-radius: 28px; padding: 16px 35px; background: #848d52;}
.ct-list2 { display: flex; flex-wrap: wrap; gap: 70px 0; border-bottom: 1px solid #ddd;}
.ct-list2 li { width: calc(100%/2); border-bottom: 1px solid #ddd; padding-bottom: 65px;}
.ct-list2 li:last-child { border: none;}
.ct-list2 li .tit { font-size: 20px; color: #242424; letter-spacing: -.03em; line-height: 1.2em; font-weight: 500; margin: 20px 0 35px;}
.ct-list2 li .tit span { display: inline-block; padding-right: 18px; font-size: 24px; font-weight: 600; color: #848d52; position: relative;}
.ct-list2 li .tit span::after { content: ""; position: absolute; right: 10px; top: 0px; width: 3px; height: 6px; background: #848d52;}
.ct-list2 li .txt { line-height: 1.666em; font-size: 16px; font-weight: 300; letter-spacing: -.03em; color: #454545;}
.sub-fx { display: flex; margin-top: 75px;}
.ct-left { width: 50%; padding-right: 25px;}
.ct-right { width: 50%; }
.ct-box { margin-bottom: 25px;}
.ct-box .tit { font-size: 16px; font-weight: 700; color: #848d52; letter-spacing: -.03em; line-height: 1em; margin-bottom: 15px;}
.ct-box .txt { font-size: 18px; font-weight: 300; letter-spacing: -.03em; line-height: 1.3em; color: #454545;}
.ct-box:last-child { margin-bottom: 0;}
.call-btn { display: inline-block; line-height: 1.25em; color: #fff; font-size: 16px; font-weight: 300; letter-spacing: -.03em; border-radius: 28px; padding: 12px 25px; background: #848d52;}
.root_daum_roughmap .cont {display:none;}