textarea.form-text {
  height: 20rem;
  width: 100%;
  background-color: #fff;
  padding: 1rem;
  border: 1px solid #005BAC;
  border-radius: .4rem;
}

textarea.form-text_small {
  height: 10rem;
}

.form-checkbox,
.form-file,
.form-number,
.form-radio,
.form-result,
.form-search,
.form-select,
.form-text {
  position: relative;
  width: 100%;
}

.form-checkbox input,
.form-checkbox select,
.form-checkbox textarea,
.form-file input,
.form-file select,
.form-file textarea,
.form-number input,
.form-number select,
.form-number textarea,
.form-radio input,
.form-radio select,
.form-radio textarea,
.form-result input,
.form-result select,
.form-result textarea,
.form-search input,
.form-search select,
.form-search textarea,
.form-select input,
.form-select select,
.form-select textarea,
.form-text input,
.form-text select,
.form-text textarea {
  width: 100%;
}

.form-number input,
.form-number select,
.form-number textarea,
.form-search input,
.form-search select,
.form-search textarea,
.form-select input,
.form-select select,
.form-select textarea,
.form-text input,
.form-text select,
.form-text textarea {
  background-color: #EBEBEB;
  border: none;
  border-radius: .4rem;
  font-size: 1.4rem;
  min-height: 44px;
  padding: 1rem;
}

.form-checkbox {
  width: inherit;
}

.form-checkbox div {
  display: flex;
  flex-wrap: wrap;
}

.form-checkbox div label {
  align-items: center;
  color: #005BAC;
  cursor: pointer;
  display: flex;
  font-weight: 600;
  margin-right: 2rem;
}

.form-checkbox div label input {
  display: block;
  width: inherit;
  margin-right: .5rem;
}

.form-checkbox div label:hover {
  color: #000662;
}

.form-checkbox div label:last-child {
  margin-right: 0;
}

.form-radio {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

.form-radio span {
  align-items: center;
  display: flex;
  margin: 0 2rem .5rem 0;
}

.form-radio span input {
  width: inherit;
  margin-right: .5rem;
}

.form-radio span label {
  color: #005BAC;
  font-size: 1.4rem;
  font-weight: 600;
  white-space: nowrap;
  width: inherit;
}

.form-radio span:last-child {
  margin: 0 0 .5rem 0;
}

.form-radio-col {
  align-items: flex-start;
  flex-direction: column;
}

.form-radio-col > span {
  margin: 0 0 1rem;
}

.form-radio-col > span:last-child {
  margin: 0;
}

.form-area label {
  text-align: left;
}

.form-result {
  padding: 1rem;
  border: 1px solid #005BAC;
  border-radius: .4rem;
}

.form-search {
  position: relative;
}

.form-search input {
  min-height: 44px;
  padding: 1rem;
}

.form-search_input-button {
  display: flex;
}

.form-search_input-button span {
  position: static;
}

.form-search_input-button_input,
.form-search_input-button_button {
  width: auto;
}

.form-search_input-button_input {
  flex-grow: 1;
}

.form-search_input-button_input input {
  padding: 1rem;
  border-radius: .4rem 0 0 .4rem;
}

.form-search_input-button_button input {
  background-color: #005BAC;
  padding: 1rem;
  border: none;
  border-radius: 0 .4rem .4rem 0;
}

.form-text input {
  height: 44px;
}

.form-text textarea {
  height: 20rem;
}

.form-text_date span {
  flex-grow: 1;
}

.form-text_date span:nth-child(2) {
  flex-grow: 0;
}

.form-text_editor textarea {
  padding-top: 10rem;
}

.form-text_editor_toolbar {
  left: 0;
  max-width: 500px;
  padding: 1rem;
  position: absolute;
  top: 0;
  width: 100%;
}

.form-text_editor_toolbar_content {
  background-color: #fff;
  border-radius: .4rem;
  box-shadow: 0 2px 4px #00000033;
  display: flex;
  padding: .5rem;
  width: 100%;
}

.form-text_editor_toolbar_content_button {
  position: relative;
}

.form-text_editor_toolbar_content_button .material-icons {
  border-radius: .4rem;
  cursor: pointer;
  margin-right: .5rem;
  padding: .5rem;
}

.form-text_editor_toolbar_content_button .material-icons:hover {
  background-color: #D7D7D7;
}

.form-text_editor_toolbar_content_button_tooltip {
  background-color: #777;
  border-radius: .4rem;
  color: #fff;
  font-size: 1.2rem;
  left: 0;
  padding: .2rem .5rem;
  position: absolute;
  top: -3rem;
  white-space: nowrap;
}

.form-text_editor_toolbar_content_button:last-child .material-icons {
  margin-right: 0;
}

.form-select select {
  border: none;
  min-height: 44px;
}

.form-select_ymd {
  display: flex;
  align-items: center;
}

.form-select_ymd > select {
  margin-right: 1rem;
}

.form-select_ymd > select:last-child {
  margin-right: 0;
}

.form-select_ymd_time > select:nth-child(4) {
  margin-left: 1rem;
}

.form-select_ymd_time > select:last-child {
  margin-left: 1rem;
}

.control-area .form-select,
.control-area .form-text {
  width: 15rem;
}

.form-small input,
.form-small select {
  height: 34px;
  min-height: 34px;
  padding: .5rem 1rem;
  font-size: 1.2rem;
}

.pagination_calendar .form-search {
  display: inline-block;
  width: inherit;
}

.pagination_calendar .form-search input {
  width: 16rem;
  padding: 1rem 1rem 1rem 3.4rem;
  text-align: center;
}

.space-between-area .space-between-area_main-area .control-area_section_article .form-text {
  width: 100%;
}

.upload-label {
  display: inline-block;
  cursor: pointer;
  padding: .7em 1em;
  line-height: 1.4;
  background: #005BAC;
  color: #FFF;
  font-size: 0.95em;
  border-radius: 2.5em;
  transition: 0.2s;
}

.form-multi-checkbox-select > div {
  height: 200px;
  overflow: auto;
  border: 1px solid #005BAC;
  border-radius: .4rem;
  padding: 0 1rem 1rem 1rem;
  background: white;
}

.form-multi-checkbox-select table th {
  padding: .5rem 0 !important;
  position: sticky;
  top: 0;
  background: white;
}

.form-multi-checkbox-select table td {
  padding: 0 !important;
}

.form-error input,
.form-error select,
.form-error textarea {
  background-color: #FFE5E5;
  border: 1px solid #C53939;
}

.form-error_message ul li {
  color: #C53939;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .mobile-only_form-area > span {
    align-items: center;
    display: flex;
  }

  .mobile-only_form-area > span > input {
    margin-right: .5rem;
  }

  .mobile-only_form-area .mobile_form-checkbox label {
    align-items: center;
    display: flex;
  }

  .mobile-only_form-area .mobile_form-checkbox label > input {
    margin-right: .5rem;
  }
}

.form-stretch {
  width: 100%;
}

.form-stretch_strech {
  flex-grow: 1;
  width: auto;
}

.datetime_select {
  display: flex;
  align-items: center;
}

.datetime_select select {
  flex-grow: 1;
  margin-right: 1rem;
}

.datetime_select select:nth-child(4) {
  margin-left: 1rem;
}

.datetime_select select:nth-child(5) {
  margin-left: 1rem;
}

.datetime_select select:last-child {
  margin-right: 0;
}

.with_error_message {
  padding: 0 0 0.2rem 0 !important;
  width: 100%;
  height: auto;
}

.with_error_message th {
  padding: 0 1rem 0 0 !important;
}

.with_error_message td {
  padding: 0 0 .5rem 0 !important;
}

.with_error_message .error_border {
  border: 1px solid red;
  border-radius: 2px;
}

.error_message {
  color: #f30606;
}

.error_message th {
  padding: 0 2rem 2rem 0 !important;
}

.error_message td {
  padding: 0 0 0.2rem 0 !important;
  background-color: #f7dddd;
}

.may_select_add_button_frame {
  font-size: 12px;
}

.may_select_add_button_frame .bold_text {
  font-weight: bold;
}

.may_select_add_button_frame:hover {
  cursor: pointer;
  background-color: #f6f1f1;
}

.may_select_add_button {
  justify-content: center;
  text-align: center;
  align-items: center;
  display: flex;
  color: rgb(139, 136, 136) !important;
  min-height: 4rem;
  margin-top: 1rem !important;
  border: 0.1rem dashed rgb(139, 136, 136);
  border-radius: 10px;
  padding: 1rem;
}
