/*
Theme Name: Bridge Child
Theme URI: http://demo.qodeinteractive.com/bridge/
Description: A child theme of Bridge Theme
Author: Qode Interactive
Author URI: http://www.qodethemes.com/
Version: 1.0.0
Template: bridge
*/


@import url("../bridge/style.css");
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");


header {
	border-bottom: 0;
}

.header_top .wpml-ls-legacy-list-horizontal {
	display: flex;
}

.wpml-ls-legacy-list-horizontal li + li {
	margin-left: 10px;
}

.title_outer {
	margin: 0 30px;
	z-index: 1;
	position: relative;
}

.title_subtitle_holder .inner {
	display: flex;
	align-items: center;
}

/*
.title_subtitle_holder .inner h1:last-child {
    font-weight: 400;
}
*/

@media (max-width: 1500px) {
	nav.main_menu > ul > li > a {
		padding: 0 15px;
	}
}

.title_subtitle_holder .inner .line {
	display: inline-block;
	width: 50px;
	height: 2px;
	background: #fff;
	margin: 0 30px;
}

.delimiter {
	font-size: 0;
	margin: 0 10px;
}

.delimiter:before {
	content: "·";
	font-size: 1rem;
}

.breadcrumbs .breadcrumbs_inner a:first-child {
	font-size: 0;
}

.breadcrumbs .breadcrumbs_inner a:first-child:before {
	content: "\e900";
	font-family: 'xeicon';
	font-size: 0.8rem;
}

@media (max-width: 768px) {

	.title_outer {
		margin: 0;
	}

	.title_outer .has_background.title .title_subtitle_holder,
	.title_outer .has_fixed_background.title .title_subtitle_holder,
	.title_outer.with_image .title .title_subtitle_holder {
		padding-bottom: 30px;
	}
}

.two_depth {
	margin-bottom: 30px !important;
}

.two_depth ul {
	position: relative;
	list-style: none;
	display: table;
	margin-bottom: 70px;
	background: #333;
	margin: 0 0 0 auto;
	margin-top: -50px;
	z-index: 9999;
	padding: 30px;
	padding-right: 120px;
	padding-left: 50px;
}

.two_depth ul li {
	display: inline-block
}

.two_depth ul li + li {
	margin-left: 30px;
}

.two_depth ul li a {
	font-size: 1.2rem;
	color: #fff;
}

.two_depth ul li.current a {
	font-weight: 600;
	border-bottom: 2px solid #fff;
	color: #fff;
}

@media (max-width: 768px) {

	.two_depth {
		margin-bottom: 0 !important;
	}

	.two_depth ul {
		margin-bottom: 0;
		margin-top: 0;
		padding: 10px 20px !important;
		display: flex;
		overflow: auto;
	}

	.two_depth ul li + li {
		margin-left: 20px;
	}

	.two_depth ul li a {
		font-size: 1.0rem;
		white-space: nowrap;
	}
}


.page_section .wpb_content_element + .wpb_content_element {
	margin-top: 20px;
}

.page_section + .page_section {
	margin-top: 50px;
}

.page_section h4 {
	font-weight: 500;
}


@media (max-width: 768px) {
	.two_columns_25_75 {
		flex-direction: column;
	}

	.two_columns_25_75 > .column1 {
		border-right: 0;
		padding: 0;
		padding-top: 40px;
	}

	.two_columns_25_75 > .column2 {
		padding: 20px 0 50px;
	}

}

.wpb_text_column p + p {
	margin-top: 20px;
}

.otgs-development-site-front-end {
	display: none;
}

.other_services ul li {
	list-style: none;
	position: relative;
}

.other_services > ul > li.lang > a {
	position: relative;
}

.other_services > ul > li.lang > a:after {
	content: "";
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #fff;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	margin-left: 7px;
}

.other_services > ul > li.lang .lang_box {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	background: #f6f6f6;
	display: none;
}

.other_services > ul > li.lang .lang_box.on {
	display: block;
}

.other_services .wpml-ls-legacy-list-horizontal a span {
	font-size: 14px;
	color: #000;
}

.tax {
	margin-bottom: 30px;
}

.tax ul {
	list-style: none;
}

.tax ul li a {
	list-style: none;
	padding: 10px 30px;
	display: inline-block;
	border-radius: 40px;
	border: 1px solid #d9d9d9;
	color: #000;
}

.tax ul li a.active {
	border: 1px solid #13436b;
	background: #13436b;
	color: #fff;
}

.prof_wrap ul {
	list-style: none;
	display: flex;
	flex-flow: row wrap;
	margin-right: -20px;
}

.prof_wrap ul li {
	width: calc(100%/2 - 20px);
	margin-right: 20px;
	margin-top: 20px;
}

.prof_wrap ul li:nth-child(1),
.prof_wrap ul li:nth-child(2) {
	margin-top: 0;
}

.prof_wrap ul li a {
	display: block;
	border: 1px solid #d9d9d9;
	padding: 30px;
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.lang-en .prof_wrap ul li a {
	pointer-events: none;
}


.prof_wrap ul li a .inner {
	display: flex;
}

.prof_wrap ul li a .inner .left,
.prof_wrap ul li a .inner .right {
	width: 50%;
}

.prof_wrap ul li a .inner .left {
	padding-right: 40px;
}


.prof_wrap ul li a .prof_name h3 {
	font-weight: 400;
	line-height: 1.2;
}

.prof_wrap ul li a .prof_name h3 strong {
	color: #13436b;
}

.lang-en .prof_wrap ul li a .prof_name h3 {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}

.prof_wrap ul li a .prof_info > span {
	display: flex;
}

.prof_wrap ul li a .prof_info > span.tel:before {
	content: "\e9d3";
	font-family: 'xeicon';
	margin-right: 10px;
}

.prof_wrap ul li a .prof_info > span.mail:before {
	content: "\ea07";
	font-family: 'xeicon';
	margin-right: 10px;
}

.prof_wrap ul li a .prof_info,
.prof_wrap ul li a .prof_tag {
	color: #333;
	margin-top: 10px;
}

.prof_wrap ul li a .prof_info .tit,
.prof_wrap ul li a .prof_tag .tit {
	display: block;
	font-size: 0.9rem;
	color: #555;
}

.prof_wrap ul li a .prof_thumb img {
	display: block;
}

.prof_wrap + .prof_wrap {
	margin-top: 50px;
}

.prof_wrap .tax_name {
	margin-bottom: 20px;
}

@media (max-width: 768px) {

	.prof_wrap ul {
		margin-right: 0;
	}

	.prof_wrap ul li {
		width: 100%;
		margin-right: 0;
	}

	.prof_wrap ul li + li {
		margin-top: 30px !important;
	}

	.prof_wrap ul li a {
		padding: 20px;
	}

	.prof_wrap ul li a .inner .left {
		padding-right: 0;
	}

	.prof_wrap ul li a .inner {
		flex-direction: column;
	}

	.prof_wrap ul li a .inner .right {
		width: 100%;
		margin-top: 20px;
	}

}

.profile {
	display: flex;
	flex-flow: row wrap;
}

.profile .top {
	width: 25%;
}

.profile .bottom {
	width: 75%;
	padding-left: 5%;
}

.profile .top .left {
	width: 350px;
}

.profile .top .prof_name {
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 20px;
	margin-bottom: 20px;
	margin-top: 20px;
}

.profile .top .prof_name {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #d9d9d9;
}

.profile .top .prof_name h3 {
	font-weight: 400;
}

.profile .prof_tag {
	margin-bottom: 10px;
}

.profile .prof_info .tit,
.profile .prof_tag .tit {
	display: block;
	font-weight: 500;
}

.profile .prof_info .tel:before {
	content: "\e9d3";
	font-family: 'xeicon';
	margin-right: 5px;
}

.profile .prof_info .mail:before {
	content: "\ea07";
	font-family: 'xeicon';
	margin-right: 5px;
}

.profile .prof_info {
	display: flex;
	flex-direction: column;
}


.profile .bottom > div + div {
	margin-top: 30px;
}

.profile .info_inner ul,
.profile .cont_inner ul {
	list-style: none;
}

.profile .info_inner ul li,
.profile .cont_inner ul li {
	position: relative;
	padding-left: 20px;
}

.profile .info_inner ul li:before,
.profile .cont_inner ul li:before {
	content: "·";
	margin-right: 10px;
	position: absolute;
	left: 0;
}

.profile .bottom .contentStr {
	background: #f6f6f6;
	padding: 30px;
	margin-top: 10px;
}

.profile .back {
	background: #333;
	color: #fff;
	padding: 10px 30px;
	display: inline-block;
	transition: all 0.3s ease;
}

.profile .back:before {
	content: "\e908";
	font-family: 'xeicon';
	margin-right: 10px;
}

.profile .back:hover {
	background: #13436b;
}


@media (max-width: 768px) {

	.professor-template-default .default_template_holder {
		padding: 50px 0 !important;
	}

	.profile {
		flex-direction: column;
	}

	.profile .top,
	.profile .bottom {
		width: 100%;
	}

	.profile .bottom {
		padding-left: 0;
		padding-top: 40px;
		padding-bottom: 0;
	}


	.profile .info_inner ul li,
	.profile .cont_inner ul li {
		padding-left: 10px;
	}

	.single-professor .two_columns_25_75 > .column1 {
		display: none;
	}

	.profile .bottom .contentStr {
		padding: 20px;
	}

	.single-professor .two_columns_25_75 > .column2 {
		padding: 0;
	}

}


.main_tit {
	margin-bottom: 50px !important;
	margin-top: 50px;
}

.main_tit h1 {
	font-size: 3rem;
	line-height: 1.2;
	font-weight: 900;
}

.main_tit h1 em {
	font-size: 0.5em;
	font-weight: 300;
	display: inline-block;
}

.sub_tit {
	margin-bottom: 20px !important
}


.sub_tit h1 {
	font-weight: 500;
}

.sub_tit h1 strong {
	color: #13436b;
	font-weight: 600;
}

.sub_tit dl {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.sub_tit a {
	font-size: 0;
	display: inline-block;
	background: #fff;
	border: 1px solid #f1f1f1;
	width: 40px;
	height: 40px;
	text-align: center;
	line-height: 40px;
}

.sub_tit a:after {
	content: "\e913";
	font-family: 'xeicon';
	display: inline-block;
	font-size: 20px;
}

.main_section {
	padding: 80px 0;
}

.main_section + .main_section {
	border-top: 1px solid #f1f1f1;
}

.main_section.gray {
	background: #f4f5f6;
}

.main_section.color {
	background: #f1f7fd;
}

.main_section.flex .section_inner_margin {
	display: flex;
}

.main_section.flex .section_inner_margin > .wpb_column > .vc_column-inner,
.main_section.flex .section_inner_margin > .wpb_column > .vc_column-inner > .wpb_wrapper {
	height: 100%;
}

.main_section.flex .section_inner_margin > .wpb_column > .vc_column-inner > .wpb_wrapper {
	display: flex;
	justify-content: end;
	flex-direction: column;
}


@media (max-width: 768px) {
	.main_section.flex .section_inner_margin {
		flex-direction: column;
	}
}

.main_visual {
	height: 700px;
	overflow: inherit !important;
}

.main_visual .swiper-slide {
	display: flex;
	flex-direction: column;
	background: #ecf0fa;
	position: relative;
	height: 700px;
	background-size: cover !important;
	background-position: center !important;
}

.main_visual .swiper-slide > a {
	display: block;
	width: 100%;
	height: 100%;
}

.main_visual .swiper-slide .tit {
	overflow: hidden;
	max-width: 1400px;
	margin: 0 auto;
	z-index: 999;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
}

.main_visual .swiper-slide h1 {
	font-size: 3.5rem;
	line-height: 1.3;
	font-weight: 700;
	color: #fff;
}

.main_visual .swiper-slide h1 strong {
	display: block;
	-webkit-text-stroke: 1px #fff;
	font-weight: 900;
	color: transparent;
	font-family: "Pretendard";
}

.main_visual .swiper-slide em {
	display: inline-block;
	width: 100%;
	font-size: 1rem;
	font-weight: 400;
	color: #f4ce3c;
	margin-bottom: 20px;
	letter-spacing: 1px;
}

.main_visual .swiper-slide p {
	color: rgba(255, 255, 255, 0.8);
	font-size: 1.3rem;
	margin-top: 40px;
}

.main_visual .swiper-slide .img {
	overflow: hidden;
	position: relative;
	height: 100%;
	background-size: cover !important;
	transition: all 3s;
	width: 100%;
	position: absolute;
	right: 0;
	background-position: center !important;
}

.main_visual .swiper-slide .img:before {
	content: "";
	height: 100%;
	width: 50%;
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	opacity: 0.5;
}


.main_visual .swiper-slide .inner {
	overflow: hidden;
}

.main_visual .swiper-slide .inner img {
	display: block;
}

.main_visual .navi .wrap .inner {
	display: flex;
	justify-content: space-between;
}

.main_visual .navi .wrap .inner .next,
.main_visual .navi .wrap .inner .prev {
	font-size: 0;
	cursor: pointer;
	line-height: 1;
	color: #fff;
}

.main_visual .navi .wrap .inner .prev {
	position: relative;
	right: 0;
}

.main_visual .navi .inner .prev:before {
	content: "\e908";
	font-family: 'xeicon';
	font-size: 30px;
}

.main_visual .navi .inner .next:before {
	content: "\e90b";
	font-family: 'xeicon';
	font-size: 30px;
}


.main_visual .visual_nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	bottom: auto !important;
	z-index: 999;
}

.main_visual .navi {
	position: absolute;
	bottom: 40px;
	z-index: 999;
	max-width: 1400px;
	margin: 0 auto;
	width: 100%;
	left: 50%;
	transform: translateX(-50%);
}

.main_visual .navi .swiper-pagination-bullets {
	text-align: left;
	margin-top: 40px;
}

.main_visual .navi .swiper-pagination-bullets .swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	background: transparent;
	opacity: 1;
	border: 1px solid #fff;
}

.main_visual .navi .swiper-pagination-bullets .swiper-pagination-bullet-active {
	background: #fff;
}

@media (max-width: 1500px) {
	.main_visual .swiper-slide .tit {
		max-width: 1100px;
	}

	.main_visual .navi {
		max-width: 1100px;
	}
}


@media (max-width: 1200px) {
	.main_visual .swiper-slide .tit {
		padding: 0 50px;
	}

	.main_visual .navi {
		padding: 0 50px;
	}

}


@media (min-width: 769px) {

	.main_visual .swiper-slide .tit {
		width: 100%;
	}
}


/*
.main_visual .swiper-pagination-bullet {
    display: flex;
    align-items: center;
    position: relative;
    border-radius: 0;
    width: 33px;
    height: 80px;
    background: transparent;
    color: #BEC3C4;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    letter-spacing: 0.06em;
    opacity: 1;
}

.main_visual .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: transparent;
    color: #34803c;
}

.main_visual .swiper-pagination-bullet + .swiper-pagination-bullet {
    margin-top: 20px;
}


.main_visual .swiper-pagination-bullet:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 1px;
    height: 100%;
    background: #C7CBCC;
}


.main_visual .swiper-pagination-bullet:after {
    content: "";
    position: absolute;
    top: 0;
    right: -1px;
    display: block;
    width: 2px;
    height: 100%;
    background: #34803c;
    opacity: 0;
    transform: scaleY(0);
    transform-origin: 0 0;
}

.main_visual .swiper-pagination-bullet.swiper-pagination-bullet-active:after {
    opacity: 1;
    animation: topService_nav_anim 8s linear forwards;
}

@keyframes topService_nav_anim {
    100% {
        transform: scaleX(1);
    }
}
*/

.main-quick-container {
	background-color: #f4f7fa;
	padding: 50px 0;
}

.main_quick {
	background-color: #f7f7f7;
	padding: 30px !important;
}

.main_quick .navi {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 999;
}

.main_quick .navi.prev {
	left: 0;
}

.main_quick .navi.prev .prev {
	font-size: 0;
	cursor: po
}

.main_quick .navi.prev .prev:before {
	content: "\e93b";
	font-family: xeicon;
	font-size: 30px;
}

.main_quick .navi.next {
	right: 0;
}

.main_quick .navi.next .next {
	font-size: 0;
	cursor: pointer
}

.main_quick .navi.next .next:before {
	content: "\e93e";
	font-family: xeicon;
	font-size: 30px;
}

.main_quick .swiper-slide {
	position: relative;
}

.main_quick .swiper-slide + li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 1px;
	height: 100%;
	background-color: #ebebeb;
	z-index: 99;
}

.main_quick .swiper-slide a {
	display: flex;
	align-content: center;
	justify-content: center;
	flex-direction: column;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}

.main_quick .swiper-slide a .ico {
	transition: all 0.5s ease;
	border-radius: 15px;
	padding: 20px;
	width: auto;
	display: inline-block;
	margin: 0 auto;
	margin-bottom: 10px;
	background: #fff;
}

.main_quick .swiper-slide a .txt {
	color: #111;
}


.main_quick .swiper-slide a .ico i {
	font-size: 30px;
}

.main_quick .swiper-slide a:hover .txt {
	color: #000;
}

.main_quick_wrap {
	z-index: 999;
	padding: 50px 0;
}

.main_quick_wrap h3 {
	color: #111;
}

.main_notice {
	position: relative;
	margin-bottom: 25px;
	background: #fff;
	overflow: hidden;
}

.main_notice h3 {
	margin-bottom: 20px;
}

.main_banner ul {
	list-style: none;
	display: flex;
	border-radius: 20px;
	position: relative;
	box-shadow: 8px 2px 30px 0px rgb(34 51 89 / 9%);
	overflow: hidden;
}

.main_banner ul:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1px;
	height: 70px;
	background-color: #fff;
	transform: translateY(-50%);
}

.main_banner ul li {
	flex: 1;
}

.main_banner ul li a {
	display: flex;
	padding: 60px;
	background: #13436b;
	color: #fff;
	justify-content: space-between;
	align-items: center;
	transition: all 0.5s ease;
}

.main_banner ul li a:hover {
	background: #103859;
}

.main_banner ul li a .inner {
	display: flex;
	flex-direction: column;
}

.main_banner ul li a .inner strong {
	font-size: 1.5rem;
}

.main_banner ul li a .more:after {
	content: "\e90b";
	font-family: 'xeicon';
	font-size: 25px;
	color: #fff;
	display: inline-block;
	line-height: 1;
	margin-left: 10px;
	vertical-align: middle;
}

.main_banner2 ul {
	list-style: none;
	display: flex;
	position: relative;
	overflow: hidden;
	justify-content: space-between;
}

.main_banner2 ul li {
	width: calc(100%/2 - 15px);
}

.main_banner2 ul li a {
	display: flex;
	padding: 60px;
	background: #f6f6f6;
	color: #000;
	justify-content: space-between;
	align-items: center;
	transition: all 0.5s ease;
	position: relative;

}

.main_banner2 ul li a:hover {
	background: #f1f1f1;
}

.main_banner2 ul li a .inner {
	display: flex;
	flex-direction: column;
}

.main_banner2 ul li a .inner strong {
	font-size: 1.5rem;
}

.main_banner2 ul li a .more:after {
	content: "\e90b";
	font-family: 'xeicon';
	font-size: 25px;
	color: #000;
	display: inline-block;
	line-height: 1;
	margin-left: 10px;
	vertical-align: middle;
}

.main_banner2 ul li a:hover .more:after {
	color: #13436b;
}

.main_banner2 ul li a:after,
.main_banner2 ul li a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	transition: transform 0.3s ease-in-out;
}

.main_banner2 ul li a:before {
	border-left: 1px solid #13436b;
	border-right: 1px solid #13436b;
	transform: scaleY(0);
}

.main_banner2 ul li a:after {
	border-bottom: 1px solid #13436b;
	border-top: 1px solid #13436b;
	transform: scaleX(0);
}

.main_banner2 ul li a:hover:before {
	transform: scaleY(1);
}

.main_banner2 ul li a:hover:after {
	transform: scaleX(1);
}


#scroll-down {
	display: block;
	text-align: center;
	position: absolute;
	bottom: 60px;
	right: -20px;
	z-index: 99;
}

#scroll-down .inner:before {
	animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
	position: absolute;
	bottom: 70px;
	left: 50%;
	margin-left: 0;
	width: 2px;
	height: 60px;
	background: #000;
	content: ' ';
	transform: translateX(-50%);
}

#scroll-title {
	display: block;
	text-transform: uppercase;
	color: #000;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: .1em;
	transform: rotate(-90deg);
}


@-webkit-keyframes elasticus {
	0% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}

	50% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	50.1% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	100% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}
}

@-moz-keyframes elasticus {
	0% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}

	50% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	50.1% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	100% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}
}

@-o-keyframes elasticus {
	0% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}

	50% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	50.1% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	100% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}
}

@keyframes elasticus {
	0% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}

	50% {
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	50.1% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-moz-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1);
	}

	100% {
		-webkit-transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
		-moz-transform-origin: 0% 100%;
		-o-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		-webkit-transform: scale(1, 0);
		-ms-transform: scale(1, 0);
		-moz-transform: scale(1, 0);
		-o-transform: scale(1, 0);
		transform: scale(1, 0);
	}
}

.mobile_menu_button span i:before {
	content: "\e91c";
	font-family: 'xeicon';
}



@media (max-width: 1000px) {

	body,
	html {
		font-size: 15px;
	}

	.header_bottom {
		box-shadow: 0 1px 3px rgba(0, 0, 0, .11);
		padding: 0 20px;
	}

	.header_top .container_inner {
		width: 100%;
	}

	.main_visual .swiper-slide h1,
	.mySwiper2 .swiper-slide .tit h1 {
		font-size: 2.3rem;
		padding: 0;
	}

	#scroll-down {
		display: none;
	}

	.main_visual {
		height: 500px;
		display: flex;
		flex-direction: column-reverse;
		padding-bottom: 0 !important;
	}

	.main_visual .swiper-slide .img {
		padding-left: 0 !important;
	}

	.main_visual .swiper-slide .inner {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}

	.main_visual .navi .inner .prev:before,
	.main_visual .navi .inner .next:before {
		font-size: 15px;
	}

	.main_visual .navi .wrap .inner .pagi {
		font-size: 16px;
	}

	.main_visual .navi .wrap .inner {
		justify-content: center;
	}

	.main_visual .navi .wrap .inner > div + div {
		margin-left: 10px;
	}

	.main_visual .navi .swiper-pagination-bullets .swiper-pagination-bullet {
		width: 13px;
		height: 13px;
	}

	.main_visual .swiper-slide {
		padding-bottom: 30px;
		height: 500px;
	}

	.main_visual .swiper-slide .tit {
		width: 100%;
		padding: 0 50px;
	}


	.main_visual .swiper-slide .img:before {
		width: 100%;
	}

	.main_notice {
		padding: 0;
		border: 0;
	}

	.p-l-10,
	.p-l-20 {
		margin-top: 40px;
	}

	.main_banner ul {
		flex-direction: column;
		border-radius: 0;
		box-shadow: none;
	}

	.main_banner ul li a {
		padding: 30px;
		align-items: baseline;
		flex-direction: column;
		border-radius: 20px;
	}

	.main_banner ul li a .more {
		margin-top: 10px;
		font-size: 0.9rem;
	}

	.main_banner ul::before {
		width: 90%;
		height: 1px;
		transform: translateY(-50%) translateX(-50%);
	}

	.main_banner ul li a .more::after {
		font-size: 20px;
	}

	.main_banner ul li + li {
		margin-top: 20px;
	}

	.main_banner ul li a .inner strong {
		font-size: 1.3rem;
	}

	.main_quick {
		position: relative;
		width: 100%;
		margin-top: 20px;
		padding: 10px !important;
	}

	.main_quick ul {
		flex-flow: row wrap;
	}

	.main_quick .swiper-slide {
		width: calc(100%/3);
	}

	.main_quick .swiper-slide a {
		width: 100%;
		height: 100%;
		padding: 15px;
	}

	.main_quick .swiper-slide a .txt {
		display: inline-block;
		line-height: 1.3;
		font-size: 0.9rem;
	}

	.main_quick .swiper-slide a .ico i {
		font-size: 30px;
	}

	.main_quick_wrap,
	.main_section {
		padding: 50px 0;
	}

	.main_banner2 ul {
		flex-direction: column;
	}

	.main_banner2 ul li {
		width: 100%;
	}

	.main_banner2 ul li + li {
		margin-top: 15px;
	}

	.main_banner2 ul li a {
		padding: 30px;
		flex-direction: column;
		align-items: normal;
	}

	.main_banner2 ul li a .more {
		font-size: 0.9rem;
		margin-top: 10px;
	}

	.sub_tit {
		margin-bottom: 10px !important;
	}

	.main_section.board .section_inner_margin > .vc_col-sm-6:last-child {
		margin-top: 30px;
	}

}

.sub_tit h1 em {
	font-size: 1rem;
	position: relative;
	display: inline-block;
	width: 100%;
	color: #777;
	font-weight: 400;
	font-style: italic;
}

/* From uiverse.io by @alexmaracinaru */
.cta {
	border: none;
	background: none;
	margin-top: 30px;
	cursor: pointer;
	display: inline-block;
}

.cta span {
	padding-bottom: 7px;
	letter-spacing: 4px;
	font-size: 10px;
	padding-right: 15px;
	text-transform: uppercase;
}

.cta svg {
	transform: translateX(-8px);
	transition: all 0.3s ease;
}

.cta:hover svg {
	transform: translateX(0);
}

.cta:active svg {
	transform: scale(0.9);
}

.hover-underline-animation {
	position: relative;
	color: black;
	padding-bottom: 20px;
}

.hover-underline-animation:after {
	content: "";
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 1.5px;
	bottom: 0;
	left: 0;
	background-color: #000000;
	transform-origin: bottom right;
	transition: transform 0.25s ease-out;
}

.cta:hover .hover-underline-animation:after {
	transform: scaleX(1);
	transform-origin: bottom left;
}


@media (max-width: 768px) {
	.sub_tit h1 {
		line-height: 1.3;
		font-size: 1.5rem;
	}

}

.horizonScroll {
	overflow-x: auto;
	margin: 0 auto;
	box-sizing: border-box;
	margin-bottom: 30px !important;
}

.horizonScroll .myclass > li.current-menu-parent:-webkit-scrollbar {
	width: 10px;
}

.horizonScroll .myclass > li.current-menu-parent:-webkit-scrollbar-thumb {
	background-color: #2f3542;
	border-radius: 10px;
	background-clip: padding-box;
	border: 2px solid transparent;
}

.horizonScroll .myclass > li.current-menu-parent:-webkit-scrollbar-track {
	background-color: grey;
	border-radius: 10px;
	box-shadow: inset 0px 0px 5px white;
}

.horizonScroll .myclass li {
	list-style: none;
}

.horizonScroll .myclass > li:not(.current-menu-parent),
.horizonScroll .myclass > li.current-menu-parent > a {
	display: none;
}

.horizonScroll .myclass > li.current-menu-parent > .sub-menu {
	width: max-content;
	height: 100%;
	display: flex;
	justify-content: center;
	padding: 10px 0;
	box-sizing: border-box;
}

.horizonScroll .myclass > li.current-menu-parent > .sub-menu > li {
	display: inline-block;
	width: auto;
	text-decoration: none;
}

.horizonScroll .myclass > li.current-menu-parent > .sub-menu > li > a {
	display: block;
	position: relative;
	box-sizing: border-box;
	text-align: center;
	white-space: nowrap;
	font-size: 1.1rem;
	line-height: 1em;
	color: #333;
	padding: 15px 20px;
}

.horizonScroll .myclass > li.current-menu-parent > .sub-menu > li.current-menu-item > a {
	color: #fff;
	font-weight: bold;
	background: #13436b;
}

.main_sns .q_elements_item_content {
	display: flex;
	justify-content: end;
}

.main_sns .fa-instagram {
	background: linear-gradient(to bottom, #ca3191, #f89146);
	border-radius: 50%;
	color: #fff !important;
}

.main_sns .fa-facebook {
	background: #395eaa;
	border-radius: 50%;
	color: #fff !important;
}

.main_sns .fa-youtube-play {
	background: #c4302b;
	border-radius: 50%;
	color: #fff !important;
}


/* 포트폴리오 1*/


.latest-portfolio-one {
	display: flex;
	margin-right: -20px;
}

.latest-portfolio-one > .item {
	width: calc(100%/3 - 20px);
	margin-right: 20px;
}

.latest-portfolio-one > .item .tit {
	font-size: 1.1rem;
	text-align: center;
	padding: 10px 30px;
	color: #000;
}

.latest-portfolio-one .item a {
	display: block;
	width: 100%;
	height: 100%;
}

.latest-portfolio-one .item a .thumb {
	overflow: hidden;
	display: block;
	width: 100%;
	aspect-ratio: 16/9;
	position: relative;
}

.latest-portfolio-one > .item .thumb img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.5s ease;
	width: 100%;
}

.latest-portfolio-one > .item .thumb:before {
	display: block;
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	border: 9px solid transparent;
	box-sizing: border-box;
	transition: all 0.3s;
	z-index: 999
}

.latest-portfolio-one > .item a:hover .thumb:before,
.latest-portfolio-one > .item a:focus .thumb:before {
	border-color: #13436b;
}


@media (max-width: 768px) {
	.latest-portfolio-one > .item {
		width: 100%;
		margin-right: 0;
	}

	.latest-portfolio-one > .item + .item {
		margin-top: 20px;
	}

	.latest-portfolio-one {
		margin-right: 0;
		flex-flow: row wrap;
	}

}



/* 포트폴리오 2 */

.swiper.latest-portfolio-two {
	overflow: visible;
}

.latest-portfolio-two .swiper-slide {
	opacity: 0.5;
}

.latest-portfolio-two .swiper-slide-active,
.latest-portfolio-two .swiper-slide-active + .swiper-slide-next,
.latest-portfolio-two .swiper-slide-active + .swiper-slide-next + .swiper-slide {
	opacity: 1;
}

.latest-portfolio-two .swiper-button-prev,
.latest-portfolio-two .swiper-button-next {
	color: #fff;
	margin-top: -35px;
}

.latest-portfolio-two .item a {
	display: block;
	width: 100%;
	height: 100%;
}

.latest-portfolio-two .item a .tit {
	font-size: 1.1rem;
	text-align: center;
	padding: 10px 30px;
	color: #000;
}

.latest-portfolio-two .item a .thumb {
	overflow: hidden;
	display: block;
	width: 100%;
	aspect-ratio: 16/9;
	position: relative;
}

.latest-portfolio-two .item a .thumb img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.5s ease;
}

.latest-portfolio-two .item a:hover .thumb img {
	transform: translate(-50%, -50%) scale(1.1);
}


/* 포트폴리오 3 */

.gallery_three_wrap {
	background: #f9f9f9;
}

.gallery_three_wrap:before {
	content: "";
	width: 33%;
	height: 100%;
	display: block;
	background: #13436b;
	position: absolute;
	left: 0;
	top: 0;
}

.swiper.latest-portfolio-three {
	overflow: visible;
}

.latest-portfolio-three .item {
	background: #e5e5e5;
	transition: all 0.3s;
	height: auto;
}

.latest-portfolio-three .item a {
	background: #fff;
	display: block;
	padding: 20px;
	width: 100%;
	height: 100%;
	transition: all 0.3s;
}

.latest-portfolio-three .item:hover a {
	transform: translateY(-7px) translateX(-7px);
	position: relative;
}

.latest-portfolio-three .item a .thumb {
	overflow: hidden;
	display: block;
	width: 100%;
	aspect-ratio: 16/9;
	position: relative;
}

.latest-portfolio-three > .item .thumb img {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	max-height: 100%;
	transform: translate(-50%, -50%) scale(1);
	transition: all 0.5s ease;
}

.latest-portfolio-three .item a .tit {
	font-size: 1.1rem;
	text-align: center;
	padding: 10px 30px;
	color: #000;
}

.latest-portfolio-three .swiper-scrollbar {
	height: 5px;
	opacity: 1 !important;
	margin-top: 30px;
}

.gallery_three_wrap .sub_tit h1,
.gallery_three_wrap .sub_tit h1 strong {
	color: #fff;
}

.gallery_three_wrap .q_elements_item {
	padding: 80px 0;
}

.gallery_three_wrap .q_elements_holder.two_columns.eh_two_columns_25_75 .q_elements_item:first-child {
	width: 20%;
}

.gallery_three_wrap .q_elements_holder.two_columns.eh_two_columns_25_75 .q_elements_item:last-child {
	width: 80%;
}


/* 비주얼 2 */


.main_visual-2 {
	height: 700px;
	overflow: inherit !important;
}

.main_visual-2 .swiper-slide {
	display: flex;
	flex-direction: column;
	background: #ecf0fa;
	position: relative;
	height: 700px;
	background-size: cover !important;
	background-position: center !important;
}

.main_visual-2 .swiper-slide > a {
	display: block;
	width: 100%;
	height: 100%;
}

.main_visual-2 .swiper-slide .tit {
	overflow: hidden;
	max-width: 1400px;
	margin: 0 auto;
	z-index: 999;
	position: absolute;
	top: calc(50% - 50px);
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	text-align: center;
}

.main_visual-2 .swiper-slide h1 {
	font-size: 3.5rem;
	line-height: 1.1;
	font-weight: 700;
	color: #fff;
}

.main_visual-2 .swiper-slide h1 strong {
	display: block;
	-webkit-text-stroke: 1px #fff;
	font-weight: 900;
	color: transparent;
}

.main_visual-2 .swiper-slide em {
	display: inline-block;
	width: 100%;
	font-size: 1rem;
	font-weight: 400;
	color: #f4ce3c;
	margin-bottom: 20px;
	letter-spacing: 1px;
}

.main_visual-2 .swiper-slide p {
	color: rgba(255, 255, 255, 0.8);
	font-size: 1.3rem;
	margin-top: 40px;
}

.main_visual-2 .swiper-slide .img {
	overflow: hidden;
	position: relative;
	height: 100%;
	background-size: cover !important;
	transition: all 3s;
	width: 100%;
	position: absolute;
	right: 0;
	background-position: center !important;
}

.main_visual-2 .swiper-slide .img:before {
	content: "";
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	opacity: 0.3;
}


.main_visual-2 .swiper-slide .inner {
	overflow: hidden;
}

.main_visual-2 .swiper-slide .inner img {
	display: block;
}

.main_visual-2 .navi .wrap .inner {
	display: flex;
	justify-content: space-between;
}

.main_visual-2 .navi .wrap .inner .next,
.main_visual-2 .navi .wrap .inner .prev {
	font-size: 0;
	cursor: pointer;
	line-height: 1;
	color: #fff;
}

.main_visual-2 .navi .wrap .inner .prev {
	position: relative;
	right: 0;
}

.main_visual-2 .navi .inner .prev:before {
	content: "\e908";
	font-family: 'xeicon';
	font-size: 30px;
}

.main_visual-2 .navi .inner .next:before {
	content: "\e90b";
	font-family: 'xeicon';
	font-size: 30px;
}

.main_visual-2 .pagi {
	position: absolute;
	top: 50%;
	left: -50px;
	z-index: 999;
	height: auto;
	width: auto;
	bottom: auto;
	font-size: 0;
	transform: rotate(90deg);
	display: flex;
	align-items: center;
}

.main_visual-2 .pagi > span {
	font-size: 0.9rem;
	color: #fff;
	letter-spacing: 1px;
}

.main_visual-2 .pagi > span:before {
	content: "0";
}

.main_visual-2 .pagi .progress {
	display: inline-block;
	position: relative;
	width: 100px;
	height: 2px;
	margin: 0 15px;
	margin-top: 3px;
}

.main_visual-2 .pagi .progress .bg {
	display: inline-block;
	background: #fff;
	width: 100%;
	height: 100%;
	opacity: 0.2;
}

.main_visual-2 .pagi .progress .time {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	background: #fff;
	width: 0;
	height: 100%;
	animation: rotate-90-cw 4s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite both;
}

@keyframes rotate-90-cw {
	0% {
		width: 0;
	}

	100% {
		width: 100%;
	}
}


@media (min-width: 769px) {

	.main_visual-2 .swiper-slide .tit {
		width: 100%;
	}
}

@media (max-width: 768px) {

	.main_visual-2,
	.main_visual-2 .swiper-slide {
		height: 600px;
	}
}

.main_quick-2 {
	background-color: rgba(30, 30, 30, 0.5);
	margin-top: -140px;
	height: 140px;
	padding: 0 70px !important;
	box-shadow: 3px 10px 30px 0 rgb(0 0 0 / 40%);
}

.main_quick-2 .navi {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 999;
}

.main_quick-2 .navi.prev {
	left: 15px;
}

.main_quick-2 .navi.prev .prev {
	font-size: 0;
	cursor: pointer;
}

.main_quick-2 .navi.prev .prev:before {
	content: "\e93b";
	font-family: xeicon;
	font-size: 30px;
	color: #fff;
}

.main_quick-2 .navi.next {
	right: 15px;
}

.main_quick-2 .navi.next .next {
	font-size: 0;
	cursor: pointer
}

.main_quick-2 .navi.next .next:before {
	content: "\e93e";
	font-family: xeicon;
	font-size: 30px;
	color: #fff;
}

.main_quick-2 .swiper-slide {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.main_quick-2 .swiper-slide + li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 1px;
	height: 100%;
	background-color: #ebebeb;
	z-index: 99;
}

.main_quick-2 .swiper-slide a {
	display: flex;
	align-content: center;
	justify-content: center;
	flex-direction: column;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}

.main_quick-2 .swiper-slide a .ico {
	transition: all 0.5s ease;
	border-radius: 15px;
	padding: 15px;
	width: auto;
	display: inline-block;
	margin: 0 auto;
	margin-bottom: 5px;
	background: #fff;
}

.main_quick-2 .swiper-slide a .txt {
	color: #fff;
}

.main_quick-2 .swiper-slide a .ico i {
	font-size: 30px;
}

.main_quick-2 .swiper-slide a:hover .txt {
	color: #fff;
}

@media (min-width: 769px) {
	.main_quick-2 .swiper-wrapper {
		justify-content: center;
	}
}


@media (max-width: 768px) {
	.main_quick-2_wrap > .section_inner {
		width: 100% !important;
	}

	.main_quick-2 .navi.prev {
		left: 20px;
	}

	.main_quick-2 .navi.next {
		right: 20px;
	}


	.main_quick-2 .navi.prev .prev:before,
	.main_quick-2 .navi.next .next:before {
		font-size: 25px;
	}

}
