﻿.form-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.legend {
  font-size: 1.42rem;
  margin: 2.85rem 0 1.14rem;
  padding: 0 0 .85rem;
  border-bottom: 1px solid #ccc;
}

.legend:nth-of-type(n + 2) {
  margin-top: 2.85rem;
}

.form-label {
  line-height: 2;
}

.form-label-option {
  line-height: 2;
  flex: 0 0 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.form-label-option > div {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.form-label-option label {
  display: inline-block;
  margin: 0 2rem 0 0;
  font-size: .85rem;
  line-height: 1.42rem;
  transform: translate3d(0, -.14rem, 0);
}

.form-label-option input {
  margin: 0 .5rem 0 0;
}

.constraint {
  margin-right: auto;
}

#input_no_beauty_adviser,
.form-control {
  line-height: 2.4;
  flex: 0 0 100%;
  margin-bottom: 1rem;
}

#input_no_beauty_adviser input,
.form-control input[type="text"],
.form-control input[type="password"],
.form-control input[type="number"],
.form-control select {
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: .57rem .42rem;
  min-width: 12rem;
}

@media (max-width: 768px) {
  #input_no_beauty_adviser input,
  .form-control input[type="text"],
  .form-control input[type="password"],
  .form-control input[type="number"],
  .form-control select {
    min-width: auto;
    width: 100%;
  }
}

.form-control input[type="radio"] {
  margin-right: .5rem;
}

.form-control input[type="radio"] + label {
  display: inline-block;
  transform: translate3d(0, -.07rem, 0);
  margin-right: 2rem;
}

.required::before {
  content: '*';
  color: #c8484f;
}

.form-description {
  margin-bottom: .85rem;
  font-size: .85rem;
  line-height: 1.8;
}

#comment_has_beauty_adviser,
#comment_no_beauty_adviser,
.form-annotation {
  color: #888;
  margin-top: .5rem;
  font-size: .85rem;
  line-height: 1.8;
}

.error_,
.alert,
.form-error {
  color: #c8484f;
}

.error_ {
  flex: 0 0 100%;
}

.error_ + .error_ {
  margin-top: .5rem;
}

