/* Checkbox */
@-moz-keyframes buttomcheck {
	0% {height: 0;}
	100% {height: 10px;}
}
@-webkit-keyframes buttomcheck {
	0% {height: 0;}
	100% {height: 10px;}
}
@keyframes buttomcheck {
	0% {height: 0;}
	100% {height: 10px;}
}
@keyframes topcheck {
	0% {height: 0;}
	50% {height: 0;}
	100% {height: 20px;}
}
@-webkit-keyframes topcheck {
	0% {height: 0;}
	50% {height: 0;}
	100% {height: 20px;}
}
@-moz-keyframes topcheck {
	0% {height: 0;}
	50% {height: 0;}
	100% {height: 20px;}
}
.reservationTools input[type=checkbox], .reservationTools input[type=radio] {
	display: none;
	opacity:0;
}
.check-box-custom, .radio-box-custom {
	background-color: transparent;
	background-color: white;
	border-radius: 3px;
	border: 2px solid #ccc;
	-moz-box-sizing: border-box;
	-moz-transition: border-color ease 0.2s;
	-o-transition: border-color ease 0.2s;
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	height: 20px;
	margin-right: 5px;
	position: relative;
	-webkit-box-sizing: border-box;
	-webkit-transition: border-color ease 0.2s;
	transition: border-color ease 0.2s;
	width: 20px;
	z-index: 5;
}
.check-box-custom::before, .check-box-custom::after,
.radio-box-custom::before, .radio-box-custom::after {
	background-color: #81ba3f;
	border-radius: 5px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	content: ' ';
	display: inline-block;
	height: 0;
	position: absolute;
	-moz-transform-origin: left top;
	-ms-transform-origin: left top;
	-webkit-transform-origin: left top;
	-o-transform-origin: left top;
	transform-origin: left top;
	-moz-transition: opacity ease .5;
	-webkit-transition: opacity ease .5;
	transition: opacity ease .5;
	width: 4px;
}
.check-box-custom::before, .radio-box-custom::before {
	top: 14px;
	left: 10px;
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.check-box-custom::after, .radio-box-custom::after {
	top: 9px;
	left: 1px;
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
input[type=checkbox]:checked + .check-box-custom, .check-box-custom.checked,
input[type=radio]:checked + .radio-box-custom, .radio-box-custom.checked, {
	background-color: white;
	border-color: #8CC63E;
}
input[type=checkbox]:checked + .check-box-custom::after, .check-box-custom.checked::after,
input[type=radio]:checked + .radio-box-custom::after, .radio-box-custom.checked::after {
	height: 50px;
	-moz-animation: buttomcheck 0.2s ease 0s forwards;
	-o-animation: buttomcheck 0.2s ease 0s forwards;
	-webkit-animation: buttomcheck 0.2s ease 0s forwards;
	animation: buttomcheck 0.2s ease 0s forwards;
}
input[type=checkbox]:checked + .check-box-custom::before, .check-box-custom.checked::before,
input[type=radio]:checked + .radio-box-custom::before, .radio-box-custom.checked::before {
	height: 120px;
	-moz-animation: topcheck 0.3s ease 0s forwards;
	-o-animation: topcheck 0.3s ease 0s forwards;
	-webkit-animation: topcheck 0.3s ease 0s forwards;
	animation: topcheck 0.3s ease 0s forwards;
}
.checkbox {
	margin: 0 0 25px 0;
}
.checkbox label, .radio label {
	color: #78909c;
	font-size: 16px;
	padding: 0;
	vertical-align: middle;
}
.radio label {
	clear: both;
	margin-bottom: 1em;
}
.radio label:last-child {
	clear: both;
	margin-bottom: 0!important;
}
.checkboxRelativeContainer, .radioBoxRelativeContainer{
	display:block;
	min-height: 2em;
	overflow:hidden;
	position:relative;
	width:100%;
}
.checkboxRelativeContainer .txtElm{
	display: inline;
    line-height: 150%;
    margin-left: 5px;
    text-align: left;
    vertical-align: middle;
}
.radioBoxRelativeContainer .txtElm{
	display: inline;
    line-height: 100%;
    margin-left: 5px;
    text-align: left;
    vertical-align: top;
}
/* end Checkbox */
/* DateTimePicker */
.dtpicker-overlay {
	z-index: 2000;
	display: none;
	min-width: 300px;
	background: rgba(255, 255, 255, .75);
	font-size: 12px;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.dtpicker-mobile {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.dtpicker-overlay * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.dtpicker-bg {
	font-family: 'Open Sans', sans-serif;
	height: 100%;
	width: 100%;
}

.dtpicker-mobile .dtpicker-cont {
	border: 0;
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.dtpicker-content {
	background: #fff;
	border-radius: 3px;
	border: 1px solid #78909c;
	line-height: 19px;
	margin: 0 auto;
	max-width: 500px;
	padding: 0;
}

.dtpicker-mobile .dtpicker-content {
	width: 97%
}

.dtpicker-subcontent {
	position: relative;
}

.dtpicker-header {
	background: #fff;
	border-bottom: 1px solid #78909c;
	color: #8cc63e;
	margin: 0 0 40px 0;
	padding: 22px 0 20px 0;
	border-radius: 3px 3px 0 0;
}

.dtpicker-header .dtpicker-close {
	position: absolute;
	top: 7px;
	right: 7px;
	padding: 0;
	color: #ffffff;
	font-size: 30px;
	cursor: pointer;
	transition: 0.3s all;
}

.dtpicker-header .dtpicker-close:hover {
	color: #2f2f2f;
	text-decoration: none;
}

.dtpicker-header .dtpicker-title,
.dtpicker-header .dtpicker-value {
	font-family: 'Open Sans', sans-serif;
	font-size: 24px;
	text-align: center;
}

.dtpicker-components {
	overflow: hidden;
	margin: 0;
	font-size: 18px;
}

.dtpicker-components * {
	margin: 0;
	padding: 0;
}

.dtpicker-components .dtpicker-compOutline {
	display: inline-block;
	float: left;
}

.dtpicker-comp2 {
	width: 50%;
}

.dtpicker-comp3 {
	width: 33.3%;
}

.dtpicker-comp4 {
	width: 25%;
}

.dtpicker-comp5 {
	width: 20%;
}

.dtpicker-comp6 {
	width: 16.66%;
}

.dtpicker-comp7 {
	width: 14.285%;
}

.dtpicker-components .dtpicker-comp {
	margin: 2%;
	text-align: center;
}

.dtpicker-components .dtpicker-comp>* {
	color: #8cc63e;
	display: block;
	line-height: 24px;
	padding:.3em 0;
	text-align: center;
	transition: 0.3s all;
}

.dtpicker-components .dtpicker-comp>:hover {
	color: #2f2f2f;
	text-decoration: none;
}

.dtpicker-components .dtpicker-compButtonEnable {
	opacity: 1;
}

.dtpicker-components .dtpicker-compButtonDisable {
	opacity: 0.5;
}

.dtpicker-components .dtpicker-compButton {
	background: #fff;
	cursor: pointer;
	font-family: 'Open Sans', sans-serif;
	font-size: 2em;
	display:table;
	margin:0 auto;
}

.dtpicker-components .dtpicker-compValue,
.dtpicker-overlay .dtpicker-compValue:hover,
.dtpicker-overlay .dtpicker-compValue:focus {
	-moz-appearance: none;
	-webkit-appearance: none;
	aparence:none;
	background: #ffffff;
	border: 0;
	color: #8ea1ab;
	cursor: default;
	font-size: 1.5em;
	margin: 0;
	outline: 0;
	width: 100%;
}

.dtpicker-buttonCont {
	margin: 0;
	overflow: hidden;
	padding-bottom: 10px;
}

.dtpicker-buttonCont .dtpicker-button {
	background: #39B2DE;
	border:1px solid #ccc;
	border-radius: 3px;
	color: #fff;
	cursor: pointer;
	display: block;
	font-size: 16px;
	padding: .5em;
	text-align: center;
	transition: 0.3s all;
	width: 45%;
}

.dtpicker-buttonCont .dtpicker-button:hover {
	color: #fff;
	background: #8cc63e;
	text-decoration: none;
}

.dtpicker-singleButton .dtpicker-button {
	margin: 32px auto;
}

.dtpicker-twoButtons .dtpicker-buttonSet {
	float: left;
}

.dtpicker-twoButtons .dtpicker-buttonClear {
	float: right;
}

.calendar-icon {
	color: #8cc740;
	float: right;
	font-size: 30px;
	margin-right: 22px;
	margin-top: -42px;
	position: relative;
}

.calendar-icon:hover {
	cursor: pointer;
}

.form-control.calendar:hover {
	cursor: pointer;
}