@charset "utf-8";

/* ==================================================
	body 공통 속성
================================================== */
/* 기본 폰트 및 사이즈 설정 */
html {
	font-size: 10px;
}

body {
	font-size: var(--rem-18);
	font-family: 'Pretendard', '돋움', 'Dotum', '굴림', 'Gulim', 'Lucida Grande', 'Tahoma', 'Verdana', 'AppleGothic', 'UnDotum', 'sans-serif';
	font-weight: var(--font-rg);
	-webkit-text-size-adjust: none;
	-ms-interpolation-mode: bicubic;
	color: var(--color-black);
	background: var(--color-white);
}

.hide {
	position: absolute;
	left: -9999%;
	font-size: 0;
	line-height: 0;
	text-indent: -9999rem;
}

input,
button {
	font-family: var(--font-Pretendard)
}

/* Internet Explorer 10 in Windows 8 and Windows Phone 8 Bug fix */
@-webkit-viewport {
	width: device-width;
}

@-moz-viewport {
	width: device-width;
}

@-ms-viewport {
	width: device-width;
}

@-o-viewport {
	width: device-width;
}

@viewport {
	width: device-width;
}

/* 모바일CSS */
@media (max-width:1700px) {
	html {
		font-size: 9px;
	}
}

@media (max-width:1280px) {
	html {
		font-size: 8.5px;
	}
}

@media (max-width:1000px) {
	html {
		font-size: 8px;
	}
}

@media (max-width:750px) {
	html {
		font-size: 7.5px;
	}
}

/*
 @media (max-width:450px) {
	html {
		font-size: 7px;
	}
} */

.blind {
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	clip: rect(1px 1px 1px 1px);
	clip: rect(1px, 1px, 1px, 1px);
}

/* ==================================================
	반응형
================================================== */
.showPc {
	display: block;
}

.showTa {
	display: block;
}

.showMo {
	display: none;
}

.showTaMo {
	display: none;
}

/* 모바일CSS */
@media screen and (max-width:1024px) {
	.showPc {
		display: none;
	}

	.showTa {
		display: block;
	}

	.showMo {
		display: none;
	}

	.showTaMo {
		display: block;
	}
}

@media screen and (max-width:640px) {
	.pcArea {
		display: none;
	}

	.showPc {
		display: none;
	}

	.showTa {
		display: none;
	}

	.showMo {
		display: block;
	}

	.showTaMo {
		display: block;
	}
}

/* ==================================================
	레이아웃 큰박스
================================================== */
#wrap {
	position: relative;
	width: 100%;
	min-width: 32rem;
	margin: 0 auto;
	height: auto !important;
	background-position: center top;
	overflow-x: hidden;
}

/* ==================================================
	컨텐츠
================================================== */
#container {
	clear: both;
	position: relative;
	min-width: 32rem;
}

.cont_detail {
	padding-top: 8rem;
	padding-bottom: 8rem;
}

.inner {
	position: relative;
	width: 100%;
	max-width: var(--px-base);
	margin: 0 auto;
}

/* 모바일CSS */
@media screen and (max-width:1400px) {
	.inner {
		width: 96%;
	}
}

@media screen and (max-width:1200px) {
	.inner {
		width: 94%;
	}
}

@media screen and (max-width:1030px) {
	.cont_detail {
		padding-top: 6rem;
		padding-bottom: 7rem;
		background: none;
	}
}

@media screen and (max-width:640px) {
	.cont_detail {
		padding-top: 5rem;
		padding-bottom: 6rem;
	}
}

@media screen and (max-width:480px) {
	.cont_detail {
		padding-top: 4rem;
		padding-bottom: 5rem;
	}
}

/* ==================================================
	비주얼
================================================== */
.sub_visual {
	position: relative;
	height: 370px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-top: 96px;
}

.sub_visual .tt {
	font-weight: var(--font-bd);
	line-height: 1;
	text-align: var(--text-ag-center);
	color: var(--color-white);
	transform: translate3d(0, 150%, 0);
	animation: fadeInUp 1s 0s ease-in-out;
	animation-delay: 0s;
	animation-fill-mode: both;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	margin-top: -38px;
}

.sub_visual .tt .mt {
	font-size: 5.8rem;
	font-weight: var(--font-bd);
}

.sub_visual .tt .st {
	display: block;
	font-size: 2.5rem;
	font-weight: var(--font-md);
	line-height: 1;
	color: rgba(255, 255, 255, 0.6);
	margin-top: 1rem;
}

.visual_sub {
	background: url("../images/sub_visual.jpg") no-repeat center center / cover;
}

/* 애니메이션 */
@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translate3d(0, 150%, 0);
	}

	to {
		opacity: 1;
		transform: translateZ(0);
	}
}

/* 모바일CSS */
@media screen and (max-width:1400px) {
	.sub_visual .tt {
		font-size: 3.5rem;
	}
}

@media screen and (max-width:1100px) {
	.sub_visual {
		margin-top: 78px;
	}

	.sub_visual .tt {
		margin-top: -48px;
	}

	.sub_visual .tt .mt {
		font-size: 5rem;
	}
}

@media screen and (max-width:1030px) {
	.sub_visual {
		height: 250px;
	}

	.sub_visual .tt {
		margin-top: -45px;
	}

	.sub_visual .tt .mt {
		font-size: 4rem;
	}

	.sub_visual .tt .st {
		font-size: 2rem;
	}
}

@media screen and (max-width:640px) {

	/* Sub Visual */
	.sub_visual {
		height: 220px;
		margin-top: 68px;
	}
}

/* ==================================================
	타이틀
================================================== */
.sub_titcon {
	text-align: center;
}

.sub_tit {
	display: inline-block;
	position: relative;
	font-size: 4rem;
	font-weight: var(--font-sb);
	color: var(--color-black);
}

.sub_tit:after {
	width: 5rem;
	height: 6px;
	margin: 1.8rem auto;
	display: block;
	content: "";
	background-color: var(--color-red);
}

/* 모바일CSS */
@media screen and (max-width:1400px) {
	.sub_tit {
		font-size: 3.5rem;
	}
}

/* ==================================================
	카피라이터
================================================== */
#footerW {
	clear: both;
	width: 100%;
	background: #242424;
}

.ft_inner {
	position: relative;
	width: 100%;
	max-width: var(--px-base);
	margin: 0 auto;
}

.footer_top .ft_top {
	padding-top: 2.7rem;
	padding-bottom: 2.7rem;
}

.footer_top .btn_top {
	position: absolute;
	right: 0;
	top: 0;
	width: 70px;
	height: 70px;
	background: #474747;
	color: var(--color-white);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	font-size: 1.7rem;
	font-weight: var(--font-sb);
}

.footer_top .ft_top>div {
	display: flex;
	align-items: center;
}

.footer_top .ft_top h2 a {
	display: block;
	width: 17.8rem;
	height: 5.9rem;
	background: url('../images/gnb/logo_ov.svg') no-repeat center;
	background-size: 100%;
}

.footer_top .ft_top div>ul {
	position: absolute;
	right: 120px;
	display: flex;
}

.footer_top .ft_top div>ul>li:nth-child(1) img {
	width: 100%;
	max-width: 187px;
}

.footer_top .ft_top div>ul>li:last-child {
	margin-left: 15px;
}

.footer_top .ft_top div>ul>li:last-child img {
	width: 100%;
	max-width: 73px;
}

.footer_bot {
	position: relative;
	width: 100%;
	border-top: 1px solid #5F5F5F;
	padding: 3.5rem 0;
}

.caddress p {
	font-size: 1.5rem;
	color: var(--color-white);
	line-height: 1.6;
}

.caddress>ul {
	font-size: 1.5rem;
	color: var(--color-white);
	margin-top: 1.8rem;
}

.caddress>ul>li {
	position: relative;
	display: inline-block;
	padding-left: 1.2rem;
	padding-right: 1.2rem;
}

.caddress>ul>li:after {
	content: "";
	display: block;
	position: absolute;
	top: 1px;
	right: 0;
	width: 1px;
	height: 1.4rem;
	background: var(--color-white);
}

.caddress>ul>li:last-child:after {
	display: none;
}

.caddress>ul>li:first-child {
	padding-left: 0;
}

.copyright {
	position: absolute;
	right: 0;
	bottom: 0;
	color: #b0b0b0;
	font-size: 1.4rem;
}

/* 모바일CSS */
@media screen and (max-width: 1400px) {
	.ft_inner {
		width: 96%;
	}
}

@media screen and (max-width: 1200px) {
	.ft_inner {
		width: 94%;
	}
}

@media screen and (max-width: 900px) {
	.footer_top .ft_top div>ul {
		display: none;
	}

	.ft_bot {
		display: block;
	}
}

@media screen and (max-width:768px) {
	.footer_top .ft_top {
		padding-top: 3rem;
		padding-bottom: 2rem;
	}

	.footer_top .ft_top>div {
		flex-direction: column;
	}

	.footer_top .btn_top {
		width: 50px;
		height: 50px;
		font-size: 1.4rem;
	}

	.footer_bot {
		padding-bottom: 3rem;
	}

	.caddress>ul>li:last-child {
		display: block;
		padding-left: 0;
		padding-right: 0;
		margin-top: 1rem;
	}

	.copyright {
		position: relative;
		margin-top: 2rem;
	}
}