@charset "utf-8";
/* CSS Document */
.data_flex{
	width:calc(100% - 1rem);
	margin: 0 0.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	max-width:calc(100vw - 1rem);
	}
.data_flex form{
	display: flex;
	gap: 0.5rem;
	flex-direction: column;
	}

.data_table{
	width:calc(100% - 1rem);
	margin: 0 0.5rem;
	max-width:calc(100vw - 1rem);
	}
.data_table_50 td{
	width: 50%; 
	}
.data_table td{
	padding:0.2rem 0.4rem;
	text-align:left;
	border-top: 1px solid #ddd;
	}
.data_table th{
	text-align:left;
	font-size:1rem;
	padding:0.2rem 0.4rem;
	font-weight:normal;
	background-color:#fff !important;
	border:none !important;
	}
.data_table .th_big{
	padding: 2rem 0.2rem 0.4rem 0.2rem;
	font-weight:bold;
	font-size:1.2rem;
	}
.data_table input[type=text], .data_table input[type=password], .data_table input[type=email], .data_table input[type=date], .data_table input[type=number], textarea, .data_table select,
.data_flex input[type=text], .data_flex input[type=password], .data_flex input[type=email], .data_flex input[type=date], .data_flex input[type=number], textarea, .data_flex select{
	border:2px solid #777;
	color:#333;
	max-width: 32rem;
	width: 100%;
	margin:0;
	padding:2px 0.75rem;
	min-width: 3rem;
	border-radius: 1rem;
  	box-sizing: border-box;
  	height: 1.8rem;
  	}
.data_table textarea{
  	height: 8rem;
 	}
.data_table input:invalid, .data_table select:invalid, .data_flex input:invalid, .data_flex select:invalid{
	border:2px solid var(--red_3) !important;
	}
.data_table input:required, .data_table select:required, .data_flex input:required, .data_flex select:required{
	border:2px solid var(--green_1);
	}
.data_table select{
	background-color: #fff;
	}
.data_table input[type="checkbox"]:invalid + label span, .data_table input[type="radio"]:invalid + label span,
.data_flex input[type="checkbox"]:invalid + label span, .data_flex input[type="radio"]:invalid + label span{
	background: url("/images/checkbox_required_empty.webp") center center no-repeat;
	}
.data_table input[type="checkbox"]:checked + label span, .data_table input[type="radio"]:checked + label span,
.data_flex input[type="checkbox"]:checked + label span, .data_flex input[type="radio"]:checked + label span{
	background: url("/images/checkbox_required_full.webp") center center no-repeat;
	}

.data_flex input[type="checkbox"], .data_flex input[type="radio"],
.data_table input[type="checkbox"], .data_table input[type="radio"]{
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
  	}
.data_table input[type="checkbox"] + label span, .data_table input[type="radio"] + label span,
.data_flex input[type="checkbox"] + label span, .data_flex input[type="radio"] + label span{
	display: inline-block;
	width: 24px;
	height: 24px;
	min-width: 24px;
	min-height: 24px;
	vertical-align: middle;
	background-size: cover !important;
	margin-right: 0.5rem;
	background: url("/images/checkbox_empty.webp") center center no-repeat;
	}
.data_table input[type="checkbox"]:checked + label span, .data_table input[type="radio"]:checked + label span,
.data_flex input[type="checkbox"]:checked + label span, .data_flex input[type="radio"]:checked + label span{
	background: url("/images/checkbox_required_full.webp") center center no-repeat;
	}

.data_table input[type="radio"]:disabled + label span{
	background:#eee;
	border-radius: 3px;
	}
.data_table input[type="radio"]:disabled + label{
	color:#aaa;
	}