@charset "utf-8";
@import url('reset.css');

/* common */
html,
body{height:100%; -ms-font-smoothing:antialiased;  -webkit-font-smoothing:antialiased; -webkit-text-size-adjust:none; -moz-text-size-adjust:none; -ms-text-size-adjust:none; }
html{font-size:62.5%;  scroll-behavior: smooth;}
body{font-size:1.4rem; color:#2c292d; line-height:1.5em; width:100%; min-height:100vh; font-family:'SpoqaHanSansNeo';}
p{line-height: 1.5;}
#wrap{width:100%; position: relative; height:100%; min-width:320px;}
#contents{ position:relative; width:100%; min-height:100%; padding-left:calc(50% + 12rem); padding-right:70px; padding-top:70px; padding-bottom:50px;}
.logo{position:relative; display:block; width:10.1rem; font-family:'Futura'; font-size:1.2rem; font-weight:500;}
.logo .logo-tit{font-size:1.4rem; font-weight:700;}

h3{font-size:2.4rem; font-weight:700; position: relative}
h3:before{content:''; display: block; width: 2rem; height: 0.4rem; background: #d50032; margin: 0 0 1.2rem;}

/* header */
#header{display:flex; justify-content: flex-end;}
#header .menu{display:block; z-index: 999;}
#header .menu a{display:block; font-size:1.4rem; color:#2c292d; padding: 0 3rem 0 0; text-align: right; background-image: url("../images/download.svg"); background-repeat: no-repeat; background-position: right center; background-size: 2rem}
#header .menu a:hover{text-decoration: underline;}

/* section */
#section{isolation: isolate; position:fixed; top:0; left:0; width:50%; height:100%; background-color:#f0f0f0; overflow:hidden; z-index: 100; font-size: 1.5rem;}
#section .section-wrap{position:relative; width:100%; height:100%;}
#section .section-wrap .swiper-slide{position:relative; background-repeat: no-repeat; background-size: cover; background-position: center;}
#section .section-wrap .swiper-slide .swiper-contents{color:#fff; position:absolute; bottom:10%; left:0; z-index: 102; width: 100%; padding: 0 6rem;}
#section .section-wrap .swiper-slide .swiper-contents .title{margin-bottom:2rem; font-size:8rem; font-weight:100;}
#section .section-wrap .swiper-slide .swiper-contents .sub-title{margin-bottom:4rem;}
#section .section-wrap .swiper-slide .swiper-contents .button{display:inline-block; color:#fff; width:18.7rem; height:3.2rem; border:1px solid #fff; padding:0.8rem 1rem; background:url(../images/back.svg) no-repeat right 1rem top 50%; font-size:1.3rem; line-height:100%;}
#section .section-wrap .swiper-slide .swiper-contents .desc{display: flex; align-items: flex-start; font-size: 1.5rem; width: 100%;}
#section .section-wrap .swiper-slide .swiper-contents .desc dl{width: 30%; max-width: 18rem; margin-right: 3rem;}
#section .section-wrap .swiper-slide .swiper-contents .desc dl:last-child{margin-right: 0;}
#section .section-wrap .swiper-slide .swiper-contents .desc dl dt{border-bottom: 3px solid #fff; padding: 0 0 1.5rem; margin: 0 0 1.5rem;}
#section .indicator{display: none; position: relative;}
#section .swiper-pagination{ display: flex; text-align:center; color: #fff; align-items: center; justify-content: center; font-family: SpoqaHanSansNeo; font-weight: bold; font-size: 1.5rem; width: fit-content; bottom: 3.5rem; right: 9rem; left: unset;}
#section .swiper-pagination .line{width: 2.5rem; height: 0.2rem; background-color: rgba(255,255,255,0.3); display: block; margin: 0 0.6rem;}
.swiper-hero-progress {
    position: absolute;
    left: calc(100% - 13.8rem);
    bottom: 4.5rem;
    width: 0;
    height: 2px;
    background: #FFF;
    z-index: 5;
}
.swiper-button-prev,.swiper-button-next {top: unset;  margin-top: unset; bottom: 3rem; }
.swiper-button-prev, .swiper-button-next{width: 3rem; height: 3rem;}
.swiper-button-prev:after,.swiper-button-next:after {width: 3rem; height: 3rem; background-repeat: no-repeat; background-size: 1.6rem auto; border: 2px solid #fff; box-sizing: border-box;}
.swiper-button-prev,.swiper-container-rtl .swiper-button-next { left: auto; right: 48px;}
.swiper-button-prev:after,.swiper-container-rtl .swiper-button-next:after { content: ''; background-image: url("../images/prev.png");  background-position: center left 1px;}
.swiper-button-next,.swiper-container-rtl .swiper-button-prev {right: 20px; left: auto;}
.swiper-button-next:after,.swiper-container-rtl .swiper-button-prev:after {content: ''; background-image: url("../images/next.png"); background-position: center right 1px;}

#section .swiper-page{position:absolute; top:3.5rem; left:0;}
#section .swiper-page .paging.on{opacity:1;}
#section .swiper-page .paging{opacity:0.3; position:relative; display:block; padding-left:8rem; margin-bottom:0.5rem; font-size:1.2rem; font-weight:500; color:#fff; z-index:10;}
#section .swiper-page .paging:hover{text-decoration: underline;}

/* animation */
@-webkit-keyframes bgPrism { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@-moz-keyframes bgPrism { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@-o-keyframes bgPrism { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@keyframes bgPrism { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@-webkit-keyframes swipe { 0%{left:30px;} 100%{left:50px;}}
@-moz-keyframes swipe { 0%{left:30px;} 100%{left:50px;}}
@-o-keyframes swipe { 0%{left:30px;} 100%{left:50px;}}
@keyframes swipe { 0%{left:30px;} 100%{left:50px;}}

/* contents */
#top_contents{margin-top:4rem;}
#top_contents .swiper-wrapper{flex-wrap: wrap; overflow: hidden;}
/*#mid_contents .contents-wrap.on{display:block;}*/
/*#mid_contents ul{width:100%; display:flex; flex-wrap:wrap;}*/
#top_contents ul li.swiper-slide{position:relative; width:calc(50% - 1rem) !important; margin-right:2rem; height:10rem; margin-top:2rem; border:2px solid #ddd; border-radius: 2rem; overflow:hidden; cursor:pointer; transition: all 0.3s ; }
#top_contents ul li.swiper-slide-thumb-active{border: 2px solid #ffb5c6;}
#top_contents ul li.swiper-slide:hover{border: 2px solid #ffb5c6;}
#top_contents ul li:nth-child(2n){margin-right:0;}
/*#mid_contents ul li.on{display:block;}*/
/*#top_contents ul li:hover{background:rgb(186, 176, 240); }*/
/*#top_contents ul li:hover .work-kinds p{color:#fff;}*/
/*#top_contents ul li:hover .work-kinds .ico-wm{background:url(../images/devices_w.svg) no-repeat 0 0 / 2.5rem auto;}*/
/*#top_contents ul li:hover .work-kinds .ico-w{background:url(../images/web_w.svg) no-repeat 0 0 / 2.5rem auto;}*/
/*#top_contents ul li:hover .work-kinds .ico-m{background:url(../images/mobile_w.svg) no-repeat 0 0 / 2.5rem auto;}*/
#top_contents ul li a{width: 100%; height: 100%;}

/*#top_contents ul li .img-hover{position:absolute; top:0; left:0; width:100%; height:100%; background-size:cover; opacity: 0; transition:0.5s;}*/
#top_contents ul li .work-logo{position:absolute; top:0; left:2rem; width:70%; height:10rem;}
#top_contents ul li .work-kinds{position:absolute; top:2.5rem; right:3rem; margin-right:2rem; width:2.4rem; height:2.4rem;}
#top_contents ul li .work-kinds i{margin-bottom:0.4rem;}
#top_contents ul li .work-kinds .ico-wm{display:block; width:100%; height:100%; background:url(../images/devices.svg) no-repeat 0 0 / 2.5rem auto;}
#top_contents ul li .work-kinds .ico-w{display:block; width:100%; height:100%; background:url(../images/web.svg) no-repeat 0 0 / 2.5rem auto;}
#top_contents ul li .work-kinds .ico-m{display:block; width:100%; height:100%; background:url(../images/mobile.svg) no-repeat 0 0 / 2.5rem auto;}
#top_contents ul li .work-kinds p{display:block; color:#2c292d; line-height:1.2;}

#top_contents li.pj-01 .work-logo{background:url(../images/01_logo.png) no-repeat 0 50% / 12rem auto;}
#top_contents li.pj-02 .work-logo{background:url(../images/02_logo.svg) no-repeat 0 50% / 12rem auto;}
#top_contents li.pj-03 .work-logo{background:url(../images/03_logo.png) no-repeat 0 50% / 6.6rem auto;}
#top_contents li.pj-04 .work-logo{background:url(../images/04_logo.png) no-repeat 0 50% / 15rem auto;}
#top_contents li.pj-05 .work-logo{background:url(../images/05_logo.png) no-repeat 0 50% / 9.8rem auto;}
#top_contents li.pj-06 .work-logo{background:url(../images/06_logo.svg) no-repeat 0 50% / 12rem auto;}
#top_contents li.pj-07 .work-logo{background:url(../images/07_logo.png) no-repeat 0 50% / 7.8rem auto;}
#top_contents li.pj-08 .work-logo{background:url(../images/08_logo.png) no-repeat 0 50% / 13rem auto;}
#top_contents li.pj-09 .work-logo{background:url(../images/09_logo.png) no-repeat 0 50% / 6.8rem auto;}
#top_contents li.pj-10 .work-logo{background:url(../images/10_logo.png) no-repeat 0 50% / 8.6rem auto;}
#top_contents li.pj-11 .work-logo{background:url(../images/11_logo.png) no-repeat 0 50% / 19rem auto;}
#top_contents li.pj-12 .work-logo{background:url(../images/12_logo.png) no-repeat 0 50% / 18rem auto;}


/*#top_contents li:hover.cj .work-logo{background:url(../images/cj_w.svg) no-repeat 0 50% / 10rem auto;}*/
/*#top_contents li:hover.mom .work-logo{background:url(../images/mc_w.svg) no-repeat 0 50% / 15rem auto;}*/
/*#top_contents li:hover.weng .work-logo{background:url(../images/weng_w.png) no-repeat 0 50% / 8rem auto;}*/
/*#top_contents li:hover.ggd .work-logo{background:url(../images/ggd_w.png) no-repeat 0 50% / 8rem auto;}*/
/*#top_contents li:hover.c1393 .work-logo{background:url(../images/1393_w.png) no-repeat 0 50% / 15rem auto;}*/
/*#top_contents li:hover.dm .work-logo{background:url(../images/dm_w.svg) no-repeat 0 50% / 20rem auto;}*/

#mid_contents{margin-top:6rem;}
#mid_contents ul{display:flex; flex-wrap:wrap; width:100%;}
#mid_contents ul li{width:23%; margin-right:2rem; margin-top: 2rem; padding:3rem 2rem 3rem; border:1px solid #ddd; border-radius: 2rem;}
#mid_contents ul li:last-child{margin-right:0;}
#mid_contents ul li i.ico-plan{width:4.8rem; height:4.8rem; display:block; background:url(../images/consulting.svg) no-repeat 0 0 / 3.8rem auto;}
#mid_contents ul li i.ico-devel{width:4.8rem; height:4.8rem; display:block; background:url(../images/develop.svg) no-repeat 0 0 / 3.8rem auto;}
#mid_contents ul li i.ico-design{width:4.8rem; height:4.8rem; display:block; background:url(../images/design.svg) no-repeat 0 0 / 3.8rem auto;}
#mid_contents ul li i.ico-maint{width:4.8rem; height:4.8rem; display:block; background:url(../images/maintenance.svg) no-repeat 0 0 / 3.8rem auto;}
#mid_contents ul li .li-tit{font-size:1.6rem; font-weight:700; padding-bottom:1rem;}
#mid_contents ul li div p{color:#908e8f;}


.contents-wrap .btn-wrap{margin-top:2rem; text-align:center;}
.contents-wrap .btn-wrap .btn-more{display:inline-block; padding-top:2rem; line-height:1.8rem; background:url(../images/more.svg) no-repeat 50% 0 / auto 1.8rem; font-family: 'Futura'; font-weight:500; color:#2c292d;}
.contents-wrap .btn-wrap .btn-more:hover{text-decoration: underline;}

#contact{margin-top:6.2rem;}
#map{height:35rem !important; margin-top:2rem; border-radius: 2rem; position: relative; overflow: hidden;}

#footer{margin-top:4rem;}
#footer .footer-info{color:#908e8f; margin-top:1rem;}
#footer .footer-info p:last-child{margin-top:1rem;}
#footer .footer-info p a{color:#908e8f; font-size:1.4rem;}

/* layout */
#logo{position:absolute; width:20.6rem; height:5.6rem; top:7rem; left:7rem; background:url(../images/idevel_logo.svg) no-repeat 0 0 / 100% auto; text-indent: -999rem; z-index: 101;}

/* lightbox */
#lightbox{width:100%; height:100%;padding:50px;overflow-y:auto;overflow-x:hidden;}
.lb-outerContainer{width:100% !important; max-width:1600px;}
.lightbox .lb-image{max-width:100% !important; height:auto !important;}

/* swiper */


/* 반응형 */
@media (max-width:1900px){
    #mid_contents ul li{width:47%; margin-bottom:2rem;}
}

@media (max-width:1870px){
    #mid_contents ul li{width:22.5%; margin-bottom:2rem;}
}

@media (max-width:1800px){
    #mid_contents ul li{width:48.5%; margin-bottom:2rem;}
    #mid_contents ul li:nth-child(2){margin-right:0;}
    #mid_contents ul li:nth-child(3), #mid_contents ul li:last-child{margin-bottom:0;}
}

@media (max-width:1700px){
    #contents{padding-left:calc(50% + 5rem); padding-right:5rem;}
    #section{width:calc(50% - 5rem);}
    #section .section-wrap .swiper-slide .swiper-contents .title{font-size: 5rem;}
    #section .section-wrap .swiper-slide .swiper-conte{left:50px; padding-right:4rem;}
    #section .section-wrap .swiper-slide .swiper-contents .button{margin-top:4rem;}
    #section .swiper-page .paging{padding-left:5rem; font-size:1.3rem;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar{left:3rem; height:9.5rem;}
}

@media (max-width:1600px){
    /*#top_contents ul li{width:47%; font-size:1.2rem; margin-bottom:2rem;}*/
}
@media (max-width:1500px){
    #contents{padding-top:3rem;}
    #top_contents{margin-top:6rem;}
    #mid_contents ul li{width:48.3%; margin-bottom:2rem;}
    #mid_contents li i{height:6rem; transform:scale(.9,.9); transform-origin:0 50%}
    #top_contents ul{flex-wrap:nowrap; flex-direction: column;}
    #top_contents ul li.swiper-slide{width:100% !important;}
    #map{height:30rem !important; border-radius:1.5rem;}
}

@media (max-width:1400px){
    /*#top_contents ul li{width:46%; margin-bottom:2rem;}*/
}

@media (max-width:1300px){
    #logo{top: 4rem; left: 4rem;}
    #section .section-wrap .swiper-slide .swiper-contents{padding: 0 3rem;}
    #contents{padding-right:3rem;}
    #map{height:20rem !important;}
    #mid_contents ul li{width:45%; margin-bottom:2rem;}

}

@media (max-width:1100px){
    #mid_contents ul li{position:relative; width:100%; margin-right:0; margin-bottom:1rem; padding:2rem 2rem 2rem 10rem;}
    #mid_contents ul li:nth-child(3){margin-bottom:1rem;}
    #mid_contents ul li i{position:absolute; top:3rem; left:2rem; width:6rem; background-position:100% 0 !important;}
}

@media (max-width:980px){
    #section{position:static; width:100%; height: calc(var(--vh, 1vh) * 100);}
    #section::after{content:none;}
    #section .swiper-page{top:3rem;}
    #section .swiper-page .paging{padding-left:3rem; font-size:1.3rem; font-weight:300;}
    #section .swiper-page .paging.on::before{width:2rem;}
    #contents{padding:7rem 2rem 3rem;}
    #header{padding-left:8rem;}
    #top_contents{margin-top:4rem;}
    #mid_contents ul li{width:49%; margin-right:1rem; margin-top: 1rem;}
    #top_contents ul{flex-wrap:wrap; flex-direction: row;}
    #top_contents ul li{width:48%;}
    #map{height:25rem !important;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar{left:1.5rem; height:8.5rem;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar::before{left:1.5rem;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar::after{left:2.5rem;}
    #top_contents ul li:nth-child(3){margin-bottom:0;}
}

@media (max-width:768px){
    #logo{width:13.2rem; height: 3.6rem; top:4rem; left:2rem; background:url(../images/idevel_logo.svg) no-repeat 0 0 / 100% auto; text-indent: -999rem; z-index: 101;}
    #header{padding-left:5.5rem;}
    #header{display: none;}
    #top_contents{margin-top: 0;}
    #mid_contents{margin-top: 7rem;}
    #contact{margin-top: 7rem;}
    h3{font-size: 2rem;}
    #section .section-wrap .swiper-slide .swiper-contents{padding: 0 2rem; text-align: right; width: 100%; right: 0; left: auto;}
    #section .section-wrap .swiper-slide .swiper-contents .title{font-size: 3rem; font-weight: 500; margin-bottom: 2.5rem;}
    #section .section-wrap .swiper-slide .swiper-contents .sub-title{font-size:1.3rem; padding-top: 1.8rem; position: relative; font-weight: 300; width: 21rem; word-break: keep-all; margin-left: auto;}
    #section .section-wrap .swiper-slide .swiper-contents .sub-title:before{content:''; display: block; width: 2.5rem; height: 0.2rem; background: #fff; position: absolute; top: 0; right: 0;}
    #section .section-wrap .swiper-slide .swiper-contents .button{width:18rem; background-position:right 1.5rem top 50%; font-size:1.2rem;}
    #section .section-wrap .swiper-slide .swiper-contents .desc{display: none;}
    #section .indicator{ display: flex;}

    #section .section-wrap .swiper-slide.pj-03{background-position: left -30px center;}
    #section .section-wrap .swiper-slide.pj-06{background-position: left center;}
    #section .section-wrap .swiper-slide.pj-08{background-position: left center;}
    #section .section-wrap .swiper-slide.pj-12{background-position: right center;}

    #top_contents .swiper-wrapper{flex-wrap: nowrap;}
    #top_contents ul li.swiper-slide{width: 10rem !important; margin-right:1rem; height: auto; margin-top:1rem; padding: 1rem;}
    #mid_contents ul li{padding:2rem;}
    #mid_contents ul li i{position:static;width:100%;background-position:inherit !important;}
    #top_contents ul li .work-logo{position:static; left:2rem; width:100%; height:7rem; background-position: center !important; background-size: contain !important;}
    #top_contents li.pj-03 .work-logo{background:url(../images/03_logo.png) no-repeat center / 5rem auto !important;}
    #top_contents li.pj-09 .work-logo {background: url(../images/09_logo.png) no-repeat center / 6rem auto !important;}
    #top_contents li.pj-10 .work-logo {background: url(../images/10_logo.png) no-repeat center / 6rem auto !important;}
    #top_contents ul li .work-kinds{background-position-y:0.8rem !important; position:static; margin-top:-1rem; display: none;}
    #top_contents ul li{width:100%; margin-right:0;}
    #mid_contents ul li:nth-child(3){margin-bottom:0;}
}

@media (max-width:640px){

    #section .swiper-page .paging{font-size:1.2rem;}
    #section .swiper-page .paging.on::before{bottom:0.3rem;}
    #mid_contents ul li i{transform:scale(.7,.7);}
}
@media (max-width:580px){
    #mid_contents ul li{width:100%; margin-bottom:1rem; margin-right:0; padding:2rem 2rem 2rem 9.5rem;}
    #mid_contents ul li i{position:absolute; top:2rem; left:3rem; width:6rem; background-position:100% 0 !important;}
    #map{height:20rem !important;}
    #mid_contents ul li:nth-child(3){margin-bottom:1rem;}

}

@media (max-width:414px){
    #section .swiper-page .paging{padding-left:2rem;}
    #section .swiper-page .paging.on::before{width:1rem;}

    #mid_contents ul li{padding:2rem 2rem 2rem 8.5rem;}
    #mid_contents ul li i{left:2rem; top:1rem;}
    #mid_contents ul li div p{margin-top:0.3rem;}
    .btn_wrap{margin-top:1rem;}
    #footer{font-size:1.2rem;}

    #map{height:18rem !important;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar{left:1rem; width:6rem;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar::before{left:1rem;}
    #section .swiper-container-horizontal>.swiper-pagination-progressbar::after{left:2rem;}

    #top_contents ul li{width:48%; padding:0 1.5rem 1.5rem;}
    #top_contents li.dm .work-logo{background:url(../images/dm_c.svg) no-repeat 0 50% / 15rem auto;}
    #top_contents li.dm:hover .work-logo{background:url(../images/dm_w.svg) no-repeat 0 50% / 15rem auto;}
}

@media (max-width:320px){
    #mid_contents ul li{padding:2rem 2rem 2rem 7rem;}
    #mid_contents ul li i.ico-plan{background-size:100%;}
    #top_contents ul li{width:48%; padding:0 1.5rem 1.5rem;}
    #top_contents li.dm .work-logo{background:url(../images/dm_c.svg) no-repeat 0 50% / 15rem auto;}
    #top_contents li.dm:hover .work-logo{background:url(../images/dm_w.svg) no-repeat 0 50% / 15rem auto;}
}