.checkbox {
	padding-left: 0;
}

/*added*/
.checkbox label {
	padding-left: 10px;
	cursor: pointer;
	position: relative;
}

.checkbox label::before {
	opacity: 0;
}

/*added for fix*/
.checkbox label span {
	display: block;
	position: absolute;
	left: 0px;
	transition-duration: 0.2s;
}

.checkbox label .ripple {
	display: block;
	position: absolute;
	content: "";
	background-color: rgba(0, 0, 0, 0.84);
	left: -8px;
	top: -11px;
	height: 50px;
	width: 50px;
	border-radius: 100%;
	z-index: 1;
	opacity: 0;
	margin: 0;
}

.checkbox label input[type=checkbox]:not(:checked) ~ .ripple {
	animation: rippleOff 500ms;
}

.checkbox label input[type=checkbox]:checked ~ .ripple {
	animation: rippleOn 500ms;
}

.checkbox label .check {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 2px solid #ccc;
	border-radius: 0;
	overflow: hidden;
	position: relative;
	top: 5px;
	left: -3px;
	margin-right: 11px;
	background: #fff;
}

.checkbox label .check:after {
	display: block;
	position: absolute;
	content: "";
	background-color: rgba(0, 0, 0, 0.84);
	left: -5px;
	top: -15px;
	height: 50px;
	width: 50px;
	border-radius: 100%;
	z-index: 1;
	opacity: 0;
	margin: 0;
}

.checkbox label .check:before {
	position: absolute;
	content: "";
	transform: rotate(45deg);
	display: block;
	margin-top: -4px;
	margin-left: 6px;
	width: 0;
	height: 0;
	box-shadow: 0 0 0 0,
	0 0 0 0,
	0 0 0 0,
	0 0 0 0,
	0 0 0 0,
	0 0 0 0,
	0px 0px 0 0px inset;
	animation: checkbox-off 0.3s linear forwards;
}

.checkbox input[type=checkbox] {
	opacity: 0;
}

.checkbox input[type=checkbox]:focus ~ .check:after {
	opacity: 0.2;
}

.checkbox input[type=checkbox]:checked ~ .check:before {
	box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
	animation: checkbox-on 0.3s linear forwards;
}

.checkbox input[type=checkbox]:not(:checked) ~ .check:after {
	animation: rippleOff 500ms linear forwards;
}

.checkbox input[type=checkbox]:checked ~ .check:after {
	animation: rippleOn 500ms linear forwards;
}

.checkbox:not(:hover) input[type=checkbox] ~ .check:before,
.checkbox:not(:hover) input[type=checkbox] ~ .check:after {
	animation-duration: 1ms;
}

.checkbox input[type=checkbox][disabled]:not(:checked) ~ .check:before,
.checkbox input[type=checkbox][disabled] ~ .circle {
	opacity: 0.5;
}

.checkbox input[type=checkbox][disabled] ~ .check:after {
	background-color: rgba(0, 0, 0, 0.84);
	transform: rotate(-45deg);
}

.checkbox input[type=checkbox]:checked ~ .check:after,
.checkbox-default input[type=checkbox]:checked ~ .check:after {
	background-color: #1858a8;
}

.checkbox input[type=checkbox]:checked ~ .check:before,
.checkbox-default input[type=checkbox]:checked ~ .check:before {
	color: #1858a8;
}

@keyframes checkbox-on {
	0% {
		box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px;
	}
	50% {
		box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px;
	}
	100% {
		box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
	}
}

@keyframes checkbox-off {
	0% {
		box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset;
	}
	25% {
		box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset;
	}
	50% {
		transform: rotate(45deg);
		margin-top: -4px;
		margin-left: 6px;
		width: 0px;
		height: 0px;
		box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0px 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset;
	}
	51% {
		transform: rotate(0deg);
		margin-top: -2px;
		margin-left: -2px;
		width: 20px;
		height: 20px;
		box-shadow: 0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0px 0px 0 10px inset;
	}
	100% {
		transform: rotate(0deg);
		margin-top: -2px;
		margin-left: -2px;
		width: 20px;
		height: 20px;
		box-shadow: 0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0 0 0 0,
		0px 0px 0 0px inset;
	}
}

@keyframes rippleOn {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 0.2;
	}
	100% {
		opacity: 0;
	}
}

@keyframes rippleOff {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 0.2;
	}
	100% {
		opacity: 0;
	}
}

.view-app span.check {
	display: none;
}

.view-app .form-group.app-contact-group {
	padding: 0;
}