.error-count {
  float: right;
  background-color: #d23a3a;
  color: white;
  font-size: 11px;
  font-weight: bold;
  padding: 4px 6px;
  border-radius: 3px;
  cursor: pointer;
}
.form-group {
  padding-bottom: 11px;
  position: relative;
}
.form-control-static {
  display: inline-block;
}
.form-group-error .radio label:before,
.form-group-error .checkbox label:before {
  content: " ";
  display: inline-block;
  height: 18px;
  width: 18px;
  top: 1px;
  left: -3px;
  position: absolute;
  border: 1px solid #d23a3a;
  border-radius: 10px;
}
.form-group-error .checkbox label:before {
  border-radius: 4px;
}
.IE11 .form-group-error .radio label:before {
  height: 19px;
  width: 19px;
}
.IE11 .form-group-error .checkbox label:before {
  height: 19px;
  width: 19px;
}
.errormessage {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 100%;
  width: 320px;
  height: 100%;
  z-index: 10;
}
.errormessage-message {
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: #d23a3a;
  padding: 1px 6px;
  border-radius: 4px;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
  color: white;
  left: 10px;
}
/*.errormessage-message:after {
  content: " ";
  position: absolute;
  left: -15px;
  top: 50%;
  margin-top: -4px;
  background-color: #d23a3a;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 10px;
}*/
.errormessage-message:hover {
  opacity: .1;
}
.form-control-invalid,
.form-control-invalid:focus {
  border-color: #d23a3a !important;
}
.form-control-invalid:focus + .errormessage,
input[type=hidden] + .errormessage {
  display: block;
}
.errormessage-left .errormessage {
  right: auto;
  left: -215px;
  width: 320px;
}
.errormessage-left .errormessage .errormessage-message {
  right: 15px;
  left: auto;
}
.errormessage-left .errormessage .errormessage-message:after {
  right: -15px;
  left: auto;
}
.errormessage-top-left .errormessage {
  right: auto;
  left: 0;
  top: 0;
  height: 0;
}
.errormessage-top-left .errormessage .errormessage-message {
  left: 0;
  right: auto;
  transform: inherit;
  top: auto;
  bottom: 10px;
}
.errormessage-top-left .errormessage .errormessage-message:after {
  right: auto;
  left: 10px;
  bottom: -15px;
  top: auto;
}
.errormessage-top-right .errormessage {
  left: auto;
  right: 0;
  top: 0;
  height: 0;
}
.errormessage-top-right .errormessage .errormessage-message {
  right: 0;
  left: auto;
  transform: inherit;
  top: auto;
  bottom: 10px;
}
.errormessage-top-right .errormessage .errormessage-message:after {
  left: auto;
  right: 10px;
  bottom: -15px;
  top: auto;
}
.errormessage-bottom-left .errormessage {
  right: auto;
  left: 0;
  top: 100%;
  height: 0;
}
.errormessage-bottom-left .errormessage .errormessage-message {
  left: 0;
  right: auto;
  transform: inherit;
  bottom: auto;
  top: 1px;
}
.errormessage-bottom-left .errormessage .errormessage-message:after {
  right: auto;
  left: 10px;
  top: -10px;
  bottom: auto;
}
.errormessage-bottom-right .errormessage {
  left: auto;
  right: 0;
  top: 100%;
  height: 0;
}
.errormessage-bottom-right .errormessage .errormessage-message {
  right: 0;
  left: auto;
  transform: inherit;
  bottom: auto;
  top: 10px;
}
.errormessage-bottom-right .errormessage .errormessage-message:after {
  left: auto;
  right: 10px;
  top: -10px;
  bottom: auto;
}
.form-group-error .errormessage-message:after {
  display: none;
}
.form-control-static + .errormessage {
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  display: inline-block;
  width: 1px;
  vertical-align: middle;
}
.form-control-static + .errormessage .errormessage-message {
  left: 15px;
  min-width: 150px;
}
.errormessage-adjust-padding .errormessage {
  margin-left: -15px;
}
.errormessage-adjust-padding .errormessage-top-left .errormessage,
.errormessage-adjust-padding .errormessage-bottom-left .errormessage {
  margin-left: 15px;
}
.errormessage-adjust-padding .errormessage-top-right .errormessage,
.errormessage-adjust-padding .errormessage-bottom-right .errormessage {
  margin-right: 15px;
}

.errormessage-adjust-padding .errormessage-bottom-left.input-group  .errormessage {
  margin-left: 0px;
}

.errormessage-adjust-padding .errormessage-left .errormessage {
  margin-left: 15px;
}
.errormessage-adjust-padding input[type=checkbox] ~ .errormessage,
.errormessage-adjust-padding input[type=radio] ~ .errormessage {
  margin: 0;
}
.errormessage-adjust-padding .form-control-static + .errormessage {
  margin: 0;
}
label + input + .errormessage {
  margin-top: 23px;
  height: 30px;
  bottom: initial;
  top: 0;
}
