@charset "utf-8";
/*
ksodesign1@naver.com
http://ksodesign.com/

Copyright 2010 KSODESIGN	 
Contributing author : KSJade
----------------------------------------------------------------*/
.kso-contents .container-fluid2>.row {
	margin-left: 0;margin-right: 0;
}
.kso-contents .container-fluid2>.row>.col-lg-12 {
	padding-left: 0;padding-right: 0;
}

#kso-page .page-section {
    margin-bottom: 3rem;
}
#kso-page .page-title {
    font-size: 50px;
    font-weight: 400;
    text-align: center;
}
#kso-page .page-top-img {
	position: relative;
    width: 100%;
    height: 400px;
    background-color: #121212;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    /*background-attachment: fixed;*/
    animation: zoomIn 2s;
    overflow: hidden;
    z-index: -1;    
}
#kso-page .page-top-img {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
    font-size: 22px;
    text-align: center;
    color: #fff;
}
#kso-page .page-top-img:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.3);
}
@keyframes zoomIn {
	from {
		transform: scale(1.2);
	}
	to {
		transform: scale(1);
	}
}

[class*='sr__'] {visibility: hidden;}

.header-text {
	font-size: 17px;
	text-align: center;
}

#kso-page .summary {
	font-size: 18px;
	line-height: 2;
}

#kso-page .map {
	width: 100%;height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url(../img/world-map.png);
}

/*table*/
#kso-page .table.table-bordered{
    border-top: 2px solid #333;
}
.table-bordered thead th {
	color: #333;
    background-color: #f8f8f8;
    border-color: #bbb;
}
.table-bordered thead th:first-child,
.table-bordered tbody td:first-child {
    border-left: 0;
}
.table-bordered thead th:last-child,
.table-bordered tbody td:last-child {
    border-right: 0;
}
.table-bordered thead th, 
.table-bordered tbody td {
    font-size: 18px;
    text-align: center;
    vertical-align: middle;
}
.table-bordered thead th, 
.table-bordered thead td {
    border-bottom-width: 1px;    
}
.table-bordered tbody td {
    font-size: 16px;
}
.table-bordered th {
    white-space: nowrap;
}

@media (max-width: 991px) {
    .table-bordered th, 
    .table-bordered td {
        white-space: nowrap;
    }
}





#kso-page figure {
	position: relative;
	overflow: hidden;
}
#kso-page figure:before {
	display: flex;
	align-items: center;
	justify-content: center;
	content: '';
	position: absolute;
	left: 0;right: 0;top: 0;bottom: 0;
	background-color: rgba(0,0,0,.0);
	transition: background .3s ease;
}
#kso-page figure>svg {
	position: absolute;
	left: 50%;top: 50%;
	color: #fff;
	transform: translate(-50%, -50%);
	transition: opacity .3s ease;
	opacity: 0;
}
#kso-page figure:hover:before {
	background-color: rgba(0,0,0,.3);
}
#kso-page figure:hover svg {
	opacity: 1;
}
#kso-page figure>a {
	position: absolute;
	left: 0;right: 0;top: 0;bottom: 0;
	z-index: 2;
}







/*------------------------------------------------------------
**
** etc
**
--------------------------------------------------------------*/
.card {border: 0;}
.color-w8 {color: rgba(255,255,255,.8);}
.cont-none:before {display: none;}
.underline {
	padding-bottom: 2px;
	color: #ff6600;
	border-bottom: 1px solid #ff6600;
}

.py-6 {padding-top: 4rem !important;padding-bottom: 4rem !important;}
.py-7 {padding-top: 5rem !important;padding-bottom: 5rem !important;}
.py-8 {padding-top: 6rem !important;padding-bottom: 6rem !important;}

.line-middle{
	position: relative;
}
.line-middle:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 50%;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #666;	
    z-index: -1;	
}
.line-middle>span {
	padding-right: 1rem;
	color: #1c2f8d;
	background-color: #fff;
}

.line-under {
	position: relative;
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}
.line-under:before {
	content: '';
	position: absolute;
	left: 0;bottom: 0;
	width: 30px;height: 1px;
	border-bottom: 1px solid #333;
}
.line-under.center:before {
	left: 50%;
	margin-left: -15px;
}

.line-top:before {
	content: '';
	position: absolute;
	top: -1rem;
	width: 30px;height: 3px;
	background-color: #f38085;
}
.line-left {
	padding-left: 10px;
	line-height: 1;
	border-left: 3px solid #26C6DA;
}
.line-span-center {
	position: relative;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.line-span-center:before {
	content: '';
	position: absolute;
	left: 50%;bottom: 0;
	margin-left: -25px;
	width: 50px;height: 1px;
	border-bottom: 1px solid #333;
}
.line-up {
	padding-top: 2rem;
	border-top: 5px solid #987840;
}

.object-fit {
    object-fit: cover;
}
/*------------------------------------------------------------
**
** Media Query
**
--------------------------------------------------------------*/
@media (min-width: 992px) {
	#kso-page .page-section.bg-img {
		height: 100%;width: 100%;
		color: rgba(255,255,255,.8);
	}
	.h-100vh {height: 100vh;}
}
@media (min-width: 1200px) {
	.container {max-width: 1200px;}
	.header-text {
		position: absolute;
		left: 50%;
		top: 50%;
		width: 80%;
		transform: translate(-50%, -50%);
		color: #fff;
	}
	.header-text h3 {color: #fff;}
}	

@media (max-width: 991px) {
	#kso-page .page-section .box-process:before {display: none;}
}
@media (max-width: 576px) {
	#kso-page .page-title {font-size: 30px;}
	#kso-page .page-title-sub {font-size: 24px;}
	#kso-page .page-summary {line-height: 1.6;}

	#kso-page .page-section .box {text-align: center;font-size: 14px;}

	#kso-page .page-section.bg-section3 h1 {font-size: 30px;}

	#kso-page .page-top-img .top-text {
	    left: 2rem;right: 2rem;
	    top: 2rem;
	}
}