/**************************************************
* 0 - common
**************************************************/
.titlebox .subtit { font-family:'Noto Serif KR', serif; font-size:3.125rem; font-weight:600; }
.titlebox h2 { font-family:'Noto Serif KR', serif; font-size:3.125rem; font-weight:400; }
.titlebox h3 { font-family:'Noto Serif KR', serif; font-size:2.5rem; font-weight:400; }
.titlebox h4 { font-family:'Noto Serif KR', serif; font-size:2.187rem; font-weight:100; }

@media (max-width:1199px) {
    .titlebox .subtit { font-size:2.75rem; }
    .titlebox h2 { font-size:2.75rem; }
    .titlebox h3 { font-size:2.125rem; }
    .titlebox h4 { font-size:1.875rem; }
}
@media (max-width:639px) {
    .titlebox .subtit { font-size:2.375rem; }
    .titlebox h2 { font-size:2.375rem; }
    .titlebox h3 { font-size:1.75rem; }
}

.main hr { display:block; margin:0; padding:0; border:none; border-bottom:1px solid #d3d3d3; }
@keyframes anime {
	0% {
		width:100px;
		border-radius:10px;
	}
	25% {
		width:100px;
	}
	100% {
		width:100%;
		border-radius:2.5rem;
	}
}

@keyframes rotate {
    100% {
        transform:rotate(360deg);
    }
}

@-webkit-keyframes proBar {
	0% { width:0; }
	100% { width:100%; }
}
@keyframes proBar {
	0% { width:0; }
	100% { width:100%; }
}

/**************************************************
* 2 - main-sect-visual
**************************************************/
.main-sect-visual { position:relative; width:100%; height:100vh; min-height:576px; max-height:1200px; overflow:hidden; }
.main-sect-visual .container-fluid { height:100%; }
.main-sect-visual .swiper-container { height:100%; }
.main-sect-visual-view { position:relative; display:flex; width:100%; height:100%; overflow:hidden; }
.main-visual-item-bg { position:absolute; top:0; left:0; width:100%; height:100%; overflow:hidden; }

.main-sect-visual .swiper-slide .main-visual-item-bg01, .main-sect-visual .swiper-slide .main-visual-item-bg02 { -webkit-transform:scale(1.35); -moz-transform:scale(1.35); -ms-transform:scale(1.35); -o-transform:scale(1.35); transform:scale(1.35); -webkit-transition:transform 3.5s linear; -moz-transition:transform 3.5s linear; -ms-transition:transform 3.5s linear; -o-transition:transform 3.5s linear; transition:transform 3.5s linear; z-index:0; }
.main-sect-visual .swiper-slide-active .main-visual-item-bg01, .main-sect-visual .swiper-slide-active .main-visual-item-bg02 { -webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1); transform:scale(1); }

.main-visual-item-bg01 { background:url("../img/main-visual-item-bg01.jpg") no-repeat center/ cover; }
.main-visual-item-bg02 { background:url("../img/main-visual-item-bg02.jpg") no-repeat center/ cover; }

.main-sect-visual .imgbox { position:absolute; top:100px; width:100%; height: 45px; text-align:center; }

.main-sect-visual .titlebox { position:absolute; left:15%; top:50%; transform:translate(0, -50%); width:100%; }
.main-sect-visual .titlebox h2 { color:#fff; text-shadow:0px 7px 14.4px rgba(81, 62, 41, 0.08); font-weight:600; }
.main-sect-visual .titlebox .btn { margin-top:70px; }
.main-sect-visual .swiper-slide .txt-ani-wrap { overflow:hidden; }
.main-sect-visual .swiper-slide .txt-ani-wrap .txt-ani { transition-property:transform; transition-duration:1.65s; transform:translateY(-100%); opacity:0; display:block; animation:none; }
.main-sect-visual .swiper-slide-active .txt-ani-wrap .txt-ani { transform:translateY(0); opacity:1; }
.main-sect-visual .swiper-slide .txt-ani-wrap:nth-child(1) .txt-ani { transition-delay:.1s; }
.main-sect-visual .swiper-slide .txt-ani-wrap:nth-child(2) .txt-ani { transition-delay:.3s; }

.main-sect-visual .swiper-pagination { left:15%; right:0; bottom:30%; width:195px; color:#fff; font-size:0; }
.main-sect-visual .swiper-pagination .swiper-pagination-current { position:absolute; left:0; top:50%; margin-top:-0.36vw; font-family:'Noto Serif KR', serif; font-size:0.72vw; font-weight:700; }
.main-sect-visual .swiper-pagination .swiper-pagination-total { position:absolute; right:0; top:50%; margin-top:-0.36vw; font-family:'Noto Serif KR', serif; font-size:0.72vw; font-weight:700; }

.main-sect-visual .progress-wrap { position:absolute; left:16.8%; right:0; bottom:30%; width:125px; height:2px; margin-bottom:-6px; display:inline-block; background-color:rgba(172,172,172,0.4); z-index:1; }
.main-sect-visual .progress-wrap .progress { position:absolute; bottom:0; left:0; right:0; height:2px; background:rgba(255,255,255,0.08); width:125px; clear:both; opacity:0; }
.main-sect-visual .progress-wrap.active .progress { opacity:1; }
.main-sect-visual .progress-wrap.animate .progress { background:#0439c1; animation:proBar 5s 1; }

@media (max-width:1199px) {
    .main-sect-visual .titlebox { left:0; right:0; text-align:center; }
    .main-sect-visual .titlebox .btn { margin-top:3.125rem; }
    .main-sect-visual .swiper-pagination { left:0; margin:0 auto; bottom:25%; }
    .main-sect-visual .progress-wrap { left:0; margin:0 auto -6px; bottom:25%; }
}
@media (max-width:991px) {
    
}

/**************************************************
* main-sect-counter
**************************************************/
.main-sect-counter { background:url("../img/main-sect-counter-bg.png") no-repeat center / cover; }
.main-sect-counter .cont-wrap { margin:4.375rem auto 0; max-width:1400px; }
.main-sect-counter .flex-col { position:relative; text-align:center; flex:0 25%; }
.main-sect-counter .txtbox { padding:1.875rem 0 2.187rem; }
.main-sect-counter .txtbox .txt01 { font-size:3.75rem; font-family:'Noto Serif KR', serif; font-weight:400; }
.main-sect-counter .txtbox .txt02 { margin-top:0; font-size:1.188rem; font-family:'Noto Serif KR', serif; font-weight:300; }

.main-sect-counter .flex-col .counter-num { vertical-align:text-bottom; font-family:'Noto Serif KR', serif; }

@media (max-width:1299px) {
    .main-sect-counter .d-flex { flex-wrap:wrap; }
    .main-sect-counter .flex-col { flex:0 33.333%; }
}
@media (max-width:991px) {
	.main-sect-counter .txtbox .txt01 { font-size:3rem; }
	.main-sect-counter .txtbox .txt02 { font-size:1.063rem; }
}
@media (max-width:639px) {
	.main-sect-counter .cont-wrap { margin-top:3.75rem; }
	.main-sect-counter .txtbox { padding:1.25rem 0 1.75rem; }
}
@media (max-width:479px) {
	.main-sect-counter .cont-wrap { margin-top:2.5rem; }
	.main-sect-counter .txtbox { padding:1rem 0 1.25rem; }
	.main-sect-counter .txtbox .txt01 { font-size:2.5rem; }
	.main-sect-counter .txtbox .txt02 { font-size:0.938rem; }
}

/**************************************************
* main-sect-reference
**************************************************/
.main-sect-reference .container-sm { max-width:1000px; }
.main-sect-reference .titlebox { margin-bottom:5rem; }
.main-sect-reference .titlebox h3 { margin-bottom:1.875rem; }

.main-sect-reference li { width:450px; }
.main-sect-reference li.right { margin-top:80px; }
.main-sect-reference li .imgbox { width:450px; height:274px; margin-bottom:2.5rem; overflow:hidden; box-shadow:1px 1px 30px 3px rgba(0, 0, 0, 0.3); }
.main-sect-reference li .txtbox .txt04 { margin-bottom:10px; font-size:1.25rem; font-weight:500; }
.main-sect-reference li .txtbox .txt05 { margin-bottom:10px; color:#484848; }

@media (max-width:991px) {
    .main-sect-reference .cont-wrap { margin:0 -10px; }
    .main-sect-reference li { width:calc(50% - 20px); margin:0 10px; }
    .main-sect-reference li.right { margin-top:50px; }
    .main-sect-reference li .imgbox { width:100%; height:auto; }
}

/**************************************************
* main-sect-pricing
**************************************************/
.main-sect-pricing01 .mo-only { display:none; }
.main-sect-pricing01 .titlebox { margin-bottom:5rem; }

.main-sect-pricing01 .tabbox { max-width:480px; margin:0 auto 3.75rem; text-align:center; }
.main-sect-pricing01 .tabbox li { position:relative; width:50%; }
.main-sect-pricing01 .tabbox li + li:before { content:""; position:absolute; left:0; top:50%; display:inline-block; width:1px; height:16px; background-color:#bbb; transform:translate(0,-50%); }
.main-sect-pricing01 .tabbox li a { font-size:1.5rem; }
.main-sect-pricing01 .tabbox li.active a { padding:0 10px; color:#1c54e4; font-weight:600; border-bottom:2px solid #1c54e4; }

.main-sect-pricing01 .hiddencontents { border-radius:10px; background-color:#fff; box-shadow:0px 13px 30px 0px rgba(0, 0, 0, 0.15); }
.main-sect-pricing01 .flex-col { flex:1; padding:20px; border-right:1px solid #d7d7d7; }
.main-sect-pricing01 .flex-col:last-child { border:none; }
.main-sect-pricing01 .cont-header { padding-bottom:20px; margin-bottom:30px; border-bottom:1px solid #d7d7d7; }
.main-sect-pricing01 .cont-header h4 { margin-bottom:15px; font-weight:600; }
.main-sect-pricing01 .cont-body { display:flex; justify-content:space-between; align-items:center; height:84px; padding-bottom:1.875rem; margin-bottom:1.5625rem; border-bottom:1px solid #d7d7d7; }
.main-sect-pricing01 .cont-body .txt03 { font-size:0.875rem; }
.main-sect-pricing01 .cont-body .txt03 span { font-size:1rem; font-weight:600; }
.main-sect-pricing01 .cont-body .txt03 b { font-size:1.1875rem; font-weight:600; color:#3e86f7; }
.main-sect-pricing01 .cont-body .right { color:#3e86f7; font-size:1.875rem; font-weight:600; }
.main-sect-pricing01 .cont-body .right b { font-size:3.25rem; }
.main-sect-pricing01 .flex-col:nth-child(4) .cont-body { justify-content:center; }
.main-sect-pricing01 .cont-body .center { font-size:2.75rem; color:#3b29bf; font-weight:600; }
.main-sect-pricing01 .cont-bottom li { margin-bottom:5px; }
.main-sect-pricing01 .cont-bottom .tit { display:inline-block; width:90px; }

.main-sect-pricing01 .btn-group .btn { width:49%; height:50px; line-height:48px; border-radius:5px; }
.main-sect-pricing01 .cont-wrap .txt05 { margin-top:20px; margin-right:5px; font-size:13px; color:#888; text-align:right; }

@media (max-width:1199px) {
    .main-sect-pricing01 .container-md { padding:0; }
    .main-sect-pricing01 .pc-only { display:none; }
    .main-sect-pricing01 .mo-only { display:block; }
    .main-sect-pricing01 .titlebox { margin-bottom:3.75rem; }
    .main-sect-pricing01 .tabbox { margin-bottom:1.25rem; max-width:360px; }
    .main-sect-pricing01 .tabbox li a { font-size:1.1875rem; }
    .main-sect-pricing01 .hiddencontents { border:none; box-shadow:none; border-radius:0; }
    .main-sect-pricing01 .swiper-container { padding:30px 0 40px; }
    .main-sect-pricing01 .swiper-slide { border-radius:10px; background-color:#fff; box-shadow:0px 13px 30px 0px rgba(0, 0, 0, 0.15); padding:20px; border-right:1px solid #d7d7d7; }
    
    #main-sect-price-slide-navigation span { display:inline-block; position:absolute; top:50%; width:17px; height:31px; z-index:5; transform:translate(0, -50%); }
    #main-sect-price-slide-navigation .swiper-prev { background:url("../img/icon-arrow-prev01.png") no-repeat center/ 100% auto; left:30px; }
    #main-sect-price-slide-navigation .swiper-next { background:url("../img/icon-arrow-next01.png") no-repeat center/ 100% auto; right:30px; }
}
@media (max-width:991px) {
    .main-sect-pricing01 .btn-group .btn { height:45px; line-height:43px; }
    
}

/**************************************************
* main-sect-why
**************************************************/
.main-sect-why { background:url("../img/main-sect-why-bg.jpg") no-repeat center; background-attachment:fixed; }
.main-sect-why .pc-only { display:block; }
.main-sect-why .mo-only { display:none; }
.main-sect-why .d-flbox { position:relative; width:50%; height:100vh; }
.main-sect-why .titlebox { position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:100%; }
.main-sect-why .titlebox .subtit { color:#fff; }
.main-sect-why .titlebox h3 { color:#fff; }
.main-sect-why .d-frbox { width:50%; padding:10% 0; }
.main-sect-why .scroll-items { position:relative; padding-left:3rem; width:75%; }
.main-sect-why .scroll-items + .scroll-items { margin-top:7.5rem; }
.main-sect-why .txtbox { }
.main-sect-why .txtbox .meta-num { position:absolute; left:0; top:0; font-family:'GmarketSansMedium', sans-serif; color:#b3b3b3; font-size:1.1875rem; color:#fff; }
.main-sect-why .txtbox .tit { font-family:'Noto Serif KR', serif; font-size:1.562rem; position:relative; top:-8px; z-index:1; font-weight:400; color:#fff; }
.main-sect-why .txtbox [class^=txt] { position:relative; z-index:1; color:#fff; }
.main-sect-why [class^=icon-] { margin:10px 0 20px; }

@media (max-width:991px) {
    .main-sect-why { padding:10% 0; }
	.main-sect-why .d-flex { flex-direction:column; }
	.main-sect-why .d-flbox { width:100%; height:auto; }
	.main-sect-why .d-frbox { width:80%; padding:0; margin:3.75rem auto 0; }
    .main-sect-why .scroll-items + .scroll-items { margin-top:2.5rem; }
	.main-sect-why .titlebox { position:static; transform:none; }
}
@media (max-width:639px) {
	.main-sect-why .pc-only { display:none; }
	.main-sect-why .mo-only { display:block; }
	.main-sect-why .titlebox { margin-bottom:2.5rem; }
	.main-sect-why .titlebox small { font-size:1.312rem; }
	
	.main-sect-why .swiper-container { padding-right:15px; }
	.main-sect-why .scroll-items { padding:0; width:100%; }
	.main-sect-why .txtbox .meta-num { position:static; line-height:inherit; font-size:1.875rem; }
	.main-sect-why .imgbox { position:static; }
	.main-sect-why .txtbox .tit { top:inherit; margin-top:0.625rem; font-size:1.25rem; }
	
	.main-sect-why .swiper-scrollbar { margin-top:0.75rem; }
}

/**************************************************
* main-sect-review
**************************************************/
.main-sect-review .titlebox { margin-bottom:5rem; }
.main-sect-review .cont-wrap { position:relative; height:auto; padding:50px 0 100px; }

.main-sect-review .swiper-container { width:100%; height:300px; overflow:visible; }
.main-sect-review .swiper-slide { position:relative; text-align:center; font-size:18px; display:flex; justify-content:center; align-items:center; margin:0px; background:#ddd; transition:all 0.3s ease; opacity:0.4; }
.main-sect-review .swiper-slide.swiper-slide-active { background:#fff; border:1px solid #c7c7c7; transform:scale(1.4); z-index:2; opacity:1; }

.main-sect-review .swiper-slide .imgbox { position:absolute; right:15px; bottom:30px; max-width:45%; opacity:0.4; }
.main-sect-review .swiper-slide .txtbox { padding:10px 40px 20%; text-align:left; }
.main-sect-review .swiper-slide .txtbox .txt07 { font-size:0.9375rem; }

#main-sect-review-slide-navigation span { display:inline-block; position:absolute; top:50%; width:3.125rem; height:3.125rem; z-index:5; }
#main-sect-review-slide-navigation .swiper-prev { background:url("../img/icon-arrow-prev02.png") no-repeat center/ 100% auto; left:50%; margin-left:-25%; }
#main-sect-review-slide-navigation .swiper-next { background:url("../img/icon-arrow-next02.png") no-repeat center/ 100% auto; right:50%; margin-right:-25%; }


/**************************************************
* main-sect-process
**************************************************/
.main-sect-process { background:#f4f4f4; }
.main-sect-process .titlebox { margin-bottom:5rem; }

.main-sect-process .d-flex { position:relative; text-align:center; }
.main-sect-process .d-flex li { flex:0 calc(20% - 30px); margin:0 15px; }
.main-sect-process .d-flex .meta-num { text-align:center; line-height:63px; width:65px; height:65px; margin:0 auto; background-color:#333; border-radius:50%; font-size:1.75rem; color:#fff; -webkit-transition:all .3s; -moz-transition:all .3s; -ms-transition:all .3s; -o-transition:all .3s; transition:all .3s; }
.main-sect-process .d-flex .txtbox { margin:2.5rem 0 0; }
.main-sect-process .d-flex .txtbox .txt01 { font-size:1.1875rem; font-weight:600; }
.main-sect-process .d-flex .txtbox .txt02 { color:#666; }

.main-sect-process .d-flex li.active .meta-num { border-color:#0439c1; background-color:#0439c1; }

@media (max-width:1199px) {
    .main-sect-process .d-flex { flex-direction:column; text-align:left; }
    .main-sect-process .d-flex li { flex:0 100%; display:flex; margin:0 0 2.5rem; }
    .main-sect-process .d-flex .meta-num { margin:0; width:45px; height:45px; line-height:43px; font-size:1.5rem; }
    .main-sect-process .d-flex .txtbox { margin:0 0 0 2.5rem; width:calc(100% - 45px); }
    .main-sect-process .d-flex .txtbox .txt01 { margin-bottom:0.625rem; }
}







