@charset "utf-8";

/*-------------------------------------------------------*/
/* ????
/*-------------------------------------------------------*/

.op-wrap { max-width:100%; overflow:hidden; }

/* ??????? ?????? ??? ???? */
.section { font-family: 'Malgun Gothic', sans-serif; font-size:16px; padding:80px 0px 40px; line-height:1.7;}
.section a { color: #000; cursor: pointer; text-decoration: none; }
.section a:hover,
.section a:focus,
.section a:active { color: crimson; text-decoration: none; }
.section h1,
.section h2,
.section h3,
.section h4,
.section h5,
.section h1 a,
.section h2 a,
.section h3 a,
.section h4 a,
.section h5 a { font-family: 'Nanum Gothic', sans-serif; }

.op-section { font-family: 'Malgun Gothic', sans-serif; font-size:16px; padding:80px 0px 40px; line-height:1.7;}
.op-section a { color: #000; cursor: pointer; text-decoration: none; }
.op-section a:hover, 
.op-section a:focus,
.op-section a:active { color: crimson; text-decoration: none; }
.op-section h1,
.op-section h2,
.op-section h3,
.op-section h4,
.op-section h5,
.op-section h1 a,
.op-section h2 a,
.op-section h3 a,
.op-section h4 a,
.op-section h5 a { font-family: 'Malgun Gothic', sans-serif; }

/*-------------------------------------------------------*/
/* ????
/*-------------------------------------------------------*/
.op-title { margin-bottom:40px; }
.op-title h2 { position:relative; font-size:35px; padding:0; margin:0; margin-bottom:10px; font-weight: bold; }
.op-title hr { display:inline-block; width: 80px; height: 3px; margin:0 0 10px; border: none; line-height:1; background:#eb5451; }
.op-title p { padding:0; margin:0; color:#888; font-size: 14px; }

/*-------------------------------------------------------*/
/* ??????
/*-------------------------------------------------------*/
.op-sep { margin:40px 0px; text-align:center; overflow:hidden; }
.op-sep span::after { content: ""; width: 1000px; height: 1px; background: #ddd; position: absolute; left: 100%; right: auto; top:50%; }
.op-sep span::before { content: ""; width: 1000px; height: 1px; background: #ddd; position: absolute; left: auto; right: 100%; top:50%; }
.op-sep span { display: inline-block; margin: 0 auto; padding: 0 35px; position: relative; }

/*-------------------------------------------------------*/
/* ???м?
/*-------------------------------------------------------*/
.op-hr { display:block; width: 100%; height: 1px; margin:40px auto; border: none; line-height:1; background:#eee; }

/*-------------------------------------------------------*/
/* ??????
/*-------------------------------------------------------*/
.op-content { display:table; table-layout:fixed; width:100%; }
.op-content-item { display:table-cell; vertical-align:middle; height:400px; width:100%; }

/*-------------------------------------------------------*/
/* ????
/*-------------------------------------------------------*/
.op-media .media-icon { width:60px; text-align:center; }
.op-media .media-icon.pull-left { margin-right:25px; }
.op-media .media-icon.pull-right { margin-left:25px; }
.op-media .media-icon i { font-size:60px; line-height:1.4; }
.op-media .media-icon.align-top i { font-size:60px; line-height:1; }
.op-media .media-body { margin:0 0 20px; }
.op-media .media-body h5 { font-size:12px; margin:0 0 8px; padding:0; }
.op-media .media-body h3 { font-size:20px; margin:0 0 10px; padding:0; }
.op-media .media-body p { font-size:14px; }

/*-------------------------------------------------------*/
/* ???
/*-------------------------------------------------------*/
.op-box { position:relative; border:1px solid #eee; margin-bottom:30px; padding:50px; background:#fff; }
.op-box .mark { position:absolute; top:20px; right:20px; background:none; font-size:14px; line-height:1; }
.op-box span { display:inline-block; font-size:80px; line-height:1; margin:5px 0 30px; }
.op-box h3 { font-size:20px; padding:0; margin:0; margin-bottom:10px; }
.op-box hr { display:inline-block; width: 45px; height: 3px; margin:0 0 10px; border: none; line-height:1; background:#eb5451; }
.op-box:hover hr { background:#fff; }
.op-box p { padding:0; margin:0; font-size:14px; }
@media (max-width: 480px) {
	.responsive .op-box { padding:15px; }
	.responsive .op-box span { margin:5px 0 15px; }
	.responsive .op-box .mark { top:15px; right:15px; }
}

/*-------------------------------------------------------*/
/* ?????
/*-------------------------------------------------------*/
.op-progress-stick { position: relative; border-radius: 2px; height: 28px; overflow: hidden; margin-bottom: 25px; -webkit-transition: 0.4s; transition: 0.4s; box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1); background-color: rgb(245, 245, 245); -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }
.op-progress-stick .stick-bar { width:0; height: 100%; font-size: 14px; line-height: 1.85; text-align: center; padding: 0 10px; color: #fff; -webkit-transition: 1s; transition: 1s; }
.op-progress-circle { text-align:center; margin:0 0 40px; }
.op-progress-circle h3 { padding:0; margin:15px 0 0; }
.op-progress-circle .circle-bar { position: relative; height: 200px; width: 200px; background: none; color:#333; line-height:1; margin:0px auto;}
.op-progress-circle .circle-bar div { position: absolute; height: 200px; width: 200px; border-radius: 50%; }
.op-progress-circle .circle-bar div span { position: absolute; font-size: 25px; line-height: 175px; height: 175px; width: 175px; left: 12.5px; top: 12.5px; text-align: center; border-radius: 50%; background-color: #fff; }
.op-progress-circle .circle-bar .background { background-color: #fff; }
.op-progress-circle .circle-bar .rotate { clip: rect(0 100px 200px 0); background-color: #4b86db; }
.op-progress-circle .circle-bar .left { clip: rect(0 100px 200px 0); opacity: 1; background-color: #b3cef6; }
.op-progress-circle .circle-bar .right { clip: rect(0 100px 200px 0); transform: rotate(180deg); opacity: 0; background-color: #4b86db; }

@keyframes 
toggle {  
	0% {
		opacity: 0;
	}
	100% {
	 opacity: 1;
	}
}

/*-------------------------------------------------------*/
/* ?????
/*-------------------------------------------------------*/
.pricing {
  margin-bottom:40px;
}
.pricing-item {
	background: #ffffff none repeat scroll 0 0;
	box-shadow: 0 0 10px #f4f4f4;
	margin-bottom: 30px;
	overflow: hidden;
	padding: 0 0 30px;
	position: relative;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.06);
}
.pricing-item ul {
	padding:0;
	margin:0;
	list-style:none;
}
.pricing-plane.radius .pricing-item {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.pricing-simple.spicy li.pricing-header span.badge {
	background: #906f40 none repeat scroll 0 0;
	color: #ffffff;
}

.pricing.pricing-simple.text-center {
	display: block;
	margin-top: 15px;
}

.pricing-simple li.pricing-header span.badge {
	background: #232323 none repeat scroll 0 0;
	border-radius: inherit;
	color: #ffffff;
	display: none;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 0;
	position: absolute;
	right: -65px;
	text-transform: uppercase;
	top: 20px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	width: 200px;
}

.pricing-item.active {
	transform: scale(1.05);
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	z-index: 1;
}

.pricing-header h4 {
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
}

.pricing-header h2 {
	color: #ffffff;
	font-size: 40px;
	font-weight: 700;
	margin-bottom: 0;
}

.pricing-item .pricing-header span {
	font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
}

.pricing-header {
	background: #262626 none repeat scroll 0 0;
	border-bottom: 1px solid #e7e7e7;
	color: white;
	margin-bottom: 20px;
	padding: 20px 0;
	position: relative;
}

.pricing-header::after {
	border-bottom: 15px solid #ffffff;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	bottom: -1px;
	content: "";
	left: 50%;
	margin-left: -15px;
	position: absolute;
}

.pricing-item.active .pricing-header {
	background: #006cff none repeat scroll 0 0;
	border: none;
}

.color-crimson .pricing-item.active .pricing-header {
	background: #e22a31 none repeat scroll 0 0;
}

.color-yellow .pricing-item.active .pricing-header {
	background: #fbba42 none repeat scroll 0 0;
}

.pricing-item .pricing-footer {
	margin-top: 20px;
}

.pricing-item li {
	border-bottom: 1px solid #e7e7e7;
	line-height: 50px;
	text-transform: capitalize;
}

.pricing-item li:last-child {
	border: medium none;
}

/*-------------------------------------------------------*/
/* ????
/*-------------------------------------------------------*/
.op-map { 
	display:block; 
	position:relative; 
	height:0;
    overflow:hidden;
	padding-bottom:400px;
	margin-bottom:40px;
}
.op-map .op-map-item { 
	display:block; 
	position:absolute; 
	top:0; 
	left:0; 
	width:100%; 
	height:100%;
	overflow:hidden;
}
.op-map iframe { 
	display:block;
	border:0;
	width:100%;
	height:100%;
	margin:0px auto;
}

.room {
	position: relative;
	display: block;
	margin-bottom: 20px;
}

.room .img-wrap {
	position: relative;
	overflow: hidden;
	padding-bottom: 65%;
}

.room .img-wrap img {
	width: 100%;
	-webkit-transition: .3s all ease-in-out;
	-o-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	margin-bottom: 0 !important;
}

.room:hover .img-wrap img, .room:focus .img-wrap img {
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}

.room .text {
	border: 1px solid #e6e6e6;
	border-top: 1px solid transparent;
	background: #fff;
	position: relative;
}

.room .text h3 {
	font-size: 22px;
	margin-bottom: 5px;
}

.room .text h3 a {
	color: #000000;
}

.room .text .btn-custom {
	color: #000000;
}

.room .price {
	font-size: 26px;
	letter-spacing: -0.05em;
	line-height: 1;
}

.room .per {
	font-size: 13px;
}

.mb-3, .my-3 {
	margin-bottom: 1rem !important;
}

.text-center {
	text-align: center !important;
}

.p-3 {
	padding: 1rem !important;
}

.pt-1, .py-1 {
	padding-top: 0.25rem !important;
}

.insta-img, .room-img, .hero-wrap, .img, .blog-img, .user-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.align-items-center {
	-webkit-box-align: center !important;
	-ms-flex-align: center !important;
	align-items: center !important;
}

.justify-content-center {
	-webkit-box-pack: center !important;
	-ms-flex-pack: center !important;
	justify-content: center !important;
}

.d-flex {
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
}

.ftco-animate {
	opacity: 0;
	visibility: hidden;
}

.fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
}

.ftco-animated {
	-webkit-animation-duration: .5s;
	animation-duration: .5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

/*#reservation .form-control-feedback {*/
	/*top: 44px;*/
/*}*/

.wow { visibility: hidden; }