body {
	position: relative;
	padding-top: 60px;
}

.footer {
	position: relative;
	margin-top: 20px;
	width: 100%;
	height: auto;
	color: #ecf0f1;
	z-index: 13;
	border-top: 2px solid #51ACC7;

	background: #5bc0de; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(to bottom right, #17a2b8, #9CD9EB); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(to bottom right, #17a2b8, #9CD9EB); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(to bottom right, #17a2b8, #9CD9EB); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to bottom right, #17a2b8, #9CD9EB); /* Standard syntax */
}

.footer .container {
	padding-bottom: 10px;
}

.footer .footer-back-to-top {
	border-bottom: thin solid #ffffff;
	margin-bottom: 20px;
}
.footer .footer-link {
	margin-bottom: 20px;
}
.footer .footer-web-info {
	border-top: thin solid #ffffff;
}

.footer a {
	color: #ecf0f1;
}
.footer a:hover,
.footer a:focus {
	text-shadow: 0 0 2px #ffffff;
}


/*-- home --*/
#home-part1{
	position: relative;
	width: 100%;
	padding: 0;
}

#home-part2{
	position: relative;
	padding-top: 150px;
	width: 100%;
}

#home-part3{
	position: relative;
	padding-top: 75px;
	padding-bottom: 50px;
	width: 100%;
}

#home-part4{
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	width: 100%;
}

.carousel-caption{
    background: rgba(0,0,0,0.7);
}

#home-part1 .home-caption-display { font-size: 30px; }
#home-part1 .home-caption-display-sub { font-size: 20px; }

#home-part2 .home-caption-display{ font-size: 25px; }
#home-part2 .home-caption-display-sub { font-size: 20px; }

#home-part2 a {
	color: white;
}
#home-part2 a:hover,
#home-part2 a:focus {
	text-shadow: 0 0 20px #ffffff;
}

.home-circle-image{
	height: 200px;
	width: 200px;
}

#home-part3 .style-cursor-hand:hover{
	text-shadow: 0 0 24px #51ACC7;
}

.homepage-hero-module {
    border-right: none;
    border-left: none;
    position: relative;
    padding-top: 5px;
}
.no-video .video-container video,
.touch .video-container video {
    display: none;
}
.no-video .video-container .poster,
.touch .video-container .poster {
    display: block !important;
}
.video-container {
    position: relative;
    bottom: 0%;
    left: 0%;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background: #000;
}
.video-container .poster img {
    width: 100%;
    bottom: 0;
    position: absolute;
}
.video-container .filter {
    z-index: 100;
    position: absolute;
    background: rgba(0, 0, 0, 0.4);
    width: 100%;
    height: 100%;
}
.video-container video {
    position: absolute;
    z-index: 0;
    bottom: 0;
}
.video-container video.fillWidth {
    width: 100%;
}


/*-- page common parts --*/
#service-part1, #other-service-part1, #us-part1 {
	position: relative;
	width: 100%;
	padding: 0;
}

.service-caption-display, .other-service-caption-display, .us-caption-display {
	position: absolute;
	top: 50px;
	left: 50px;
	font-size: 50px;
}


/*-- service --*/
#service-part2 {
	position: relative;
	width: 100%;
	padding-top: 50px;
	padding-bottom: 20px;
}


.service-tab-display { font-size: 25px; }
.service-head-display { font-size: 30px; }


/*-- other service --*/
#other-service-landscaping-1 {
	position: relative;
	width: 100%;
	height: 500px;
	margin-top: 25px;
	background: #5bc0de;
}

#other-service-part2 {
	position: relative;
	width: 100%;
	padding-top: 50px;
	padding-bottom: 20px;
}

.other-service-head-display { font-size: 30px; }



/*-- us --*/
#us-part2 {
	position: relative;
	width: 100%;
	padding-top: 50px;
}

#us-part2 .style-cursor-hand:hover,
#us-part2 .style-cursor-hand:focus {
	text-shadow: 0 0 20px #ffffff;
}

#us-part2-section1 {
	padding-left: 0;
	margin: 10px;
	background: #6B8BE1; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(to bottom right, #6B8BE1, #6bc6e1); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(to bottom right, #6B8BE1, #6bc6e1); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(to bottom right, #6B8BE1, #6bc6e1); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to bottom right, #6B8BE1, #6bc6e1); /* Standard syntax */
}

#us-part2-section2 {
	padding-right: 0;
	margin: 10px;
	background: #72AA95; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(to bottom right, #72AA95, #99C1B2); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(to bottom right, #72AA95, #99C1B2); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(to bottom right, #72AA95, #99C1B2); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to bottom right, #72AA95, #99C1B2); /* Standard syntax */
}

#us-part2-section3 {
	padding-left: 0;
	margin: 10px;
	background: #AB6C76; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(to bottom right, #AB6C76, #C8A0A7); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(to bottom right, #AB6C76, #C8A0A7); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(to bottom right, #AB6C76, #C8A0A7); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to bottom right, #AB6C76, #C8A0A7); /* Standard syntax */
}

#us-part2-section4 {
	padding-right: 0;
	margin: 10px;
	background: #3E5A87; /* For browsers that do not support gradients */
	background: -webkit-linear-gradient(to bottom right, #3E5A87, #6A83AB); /* For Safari 5.1 to 6.0 */
	background: -o-linear-gradient(to bottom right, #3E5A87, #6A83AB); /* For Opera 11.1 to 12.0 */
	background: -moz-linear-gradient(to bottom right, #3E5A87, #6A83AB); /* For Firefox 3.6 to 15 */
	background: linear-gradient(to bottom right, #3E5A87, #6A83AB); /* Standard syntax */
}


/*-- contact --*/
#contact-part1{
	padding-top: 50px;
}

#contact-part1 .contact-caption-display { font-size: 30px; }
#contact-part1 .contact-caption-lead { font-size: 20px; }

#contact-part1 a {
	color: #000000;
}
#contact-part1 .contact-web{
	color: #489AB3;
}
#contact-part1 a:hover,
#contact-part1 a:focus {
	text-shadow: 0 0 20px #51ACC7;
}


/*-- payment --*/
#payment-part1{
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	width: 100%;
}

.payment-insert-part a:hover,
.payment-insert-part a:focus {
	text-shadow: 0 0 16px #51ACC7;
}


/*-- payment redirect page --*/
#paymentcancel-part1, #paymentsuccess-part1{
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	width: 100%;
}

#paymentcancel-part1 .display-4, #paymentsuccess-part1 .display-4{font-size: 30px;}
.paymentcancel-part1-icon, .paymentsuccess-part1-icon{font-size: 130px;}

#paymentcancel-part1 .return-to-home, #paymentsuccess-part1 .return-to-home{
	color: #489AB3;
}
#paymentcancel-part1 a:hover,
#paymentcancel-part1 a:focus {
	text-shadow: 0 0 20px #51ACC7;
}
#paymentsuccess-part1 a:hover,
#paymentsuccess-part1 a:focus {
	text-shadow: 0 0 20px #51ACC7;
}


/*-- download --*/
#download-part1{
	padding-top: 50px;
}

#download-part1 .download-caption-display { font-size: 30px; }
#download-part1 .download-caption-lead { font-size: 20px;}

#download-part1 a:hover,
#download-part1 a:focus {
	text-shadow: 0 0 20px #51ACC7;
}



/*-- error-page --*/
#error-page-part1{
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	width: 100%;
}

#error-page-part1 .display-4 {font-size: 30px;}
.error-part1-icon{font-size: 130px;}

#error-page-part1 .return-to-home{
	color: #489AB3;
}
#error-page-part1 a:hover,
#error-page-part1 a:focus {
	text-shadow: 0 0 20px #51ACC7;
}



/*-- partner --*/
#partner-part1 {
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
}



/*-- change screen size --*/
@media (max-width: 768px) {
	
	/*-- home 768px --*/
	#home-part1 .home-caption-display{ font-size: 20px; }
	#home-part1 .home-caption-lead{ font-size: 15px; }
	
	#home-part2 .home-caption-display { font-size: 20px; }
	#home-part2 .home-caption-display-sub{ font-size: 17px; }
	
	#home-part3 {
		top: 50px;
	}
	
	.home-circle-image{
		height: 150px;
		width: 150px;
	}
	
	
	/*-- property service, other service, us 768px --*/
	.service-caption-display, .other-service-caption-display, .us-caption-display {
		font-size: 30px;
	}
	
	/*-- contact 768px --*/
	#contact-part1 .contact-caption-display { font-size: 20px; }
	#contact-part1 .contact-caption-lead { font-size: 16px; }
	
	/*-- payment redirect 768px --*/
	#paymentcancel-part1 .display-4, #paymentsuccess-part1 .display-4{font-size: 20px;}
	.paymentcancel-part1-icon, .paymentsuccess-part1-icon{font-size: 90px;}
	
	/*-- error page 768px --*/
	#error-page-part1 .display-4 {font-size: 20px;}
	.error-part1-icon{font-size: 90px;}
}

@media (max-width: 576px) {
	
	/*-- home 576px --*/
	#home-part1 .home-caption-display{ font-size: 18px; }
	#home-part1 .home-caption-lead { font-size: 14px; }
	
	#home-part2 .home-caption-display { font-size: 18px; }
	#home-part2 .home-caption-display-sub{ font-size: 14px; }
	
	
	#home-part2 {
		padding-top: 100px;
		padding-left: 30px;
	}
	
	#home-part3 {
		padding-top: 10px;
	}
	
	
	/*-- property service, other service, us 576px --*/
	.service-caption-display, .other-service-caption-display, .us-caption-display {
		top: 30px;
		left: 30px;
		font-size: 20px;
	}
	
	
	/*-- contact 576px --*/
	#contact-part1 .contact-caption-display { font-size: 18px; }
	#contact-part1 .contact-caption-lead { font-size: 16px; }
	
	/*-- payment redirect 576px --*/
	#paymentcancel-part1 .display-4, #paymentsuccess-part1 .display-4{font-size: 18px;}
	.paymentcancel-part1-icon, .paymentsuccess-part1-icon{font-size: 50px;}
	
	/*-- error page 576px --*/
	#error-page-part1 .display-4 {font-size: 18px;}
	.error-part1-icon{font-size: 50px;}
}


/* --public use-- */
.style-none {
	display: none;
}

.style-hidden{
	visibility: hidden;
}

.style-cursor-hand{
	cursor:pointer;
}

.style-cn-bold{
	font-weight:bold;
}


@-webkit-keyframes fadeIn {
	from {opacity: 0;}
	to {opacity: 1;}
}

@keyframes fadeIn {
	from {opacity: 0;}
	to {opacity: 1;}
}

.fadeInFast {
	-webkit-animation: fadeIn 1s;
	animation: fadeIn 1s;
}

.fadeInSlow {
	-webkit-animation: fadeIn 2.5s;
	animation: fadeIn 2.5s;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInUp {
	-webkit-animation: fadeInUp 1s;
	animation: fadeInUp 1s;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
