.contact_table_box p{
	display: block; width: 100%; color: #6c6c6c; font-size: 12px;
	text-align: center; line-height: 20px; margin: 0 !important;
}

table#contact_table{width: 100%; border-collapse: collapse;}
table#contact_table tr{border-bottom: 1px #c8c8c8 solid;}
table#contact_table tr:first-of-type{border-top: 1px #c8c8c8 solid;}

table#contact_table tr th{padding-top: 20px; text-align: left; vertical-align: top; width: 30%;}
table#contact_table tr th label{
	display: block; font-size: 12px; font-weight: 700;
	width: fit-content; width: -ms-fit-content; width: -moz-fit-content; width: -webkit-fit-content; width: -o-fit-content;
	height: fit-content; height: -ms-fit-content; height: -moz-fit-content; height: -webkit-fit-content; height: -o-fit-content;
}
table#contact_table tr th label div{
	display: block; position: relative; border-radius: 4px; width: 38px; height: 20px; margin-top: 5px;
}
table#contact_table tr th label div.required{background-color: #0181c0;}
table#contact_table tr th label div.optional{background-color: #fff; border: 1px #0181c0 solid;}
table#contact_table tr th label div span{
	display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto;
	font-size: 12px; font-weight: 400;
	width: fit-content; width: -ms-fit-content; width: -moz-fit-content; width: -webkit-fit-content; width: -o-fit-content;
	height: fit-content; height: -ms-fit-content; height: -moz-fit-content; height: -webkit-fit-content; height: -o-fit-content;
}
table#contact_table tr th label div.required span{color: #fff;}
table#contact_table tr th label div.optional span{color: #0181c0;}

table#contact_table tr td{padding: 20px 0; width: 70%;}
table#contact_table tr td input, table#contact_table tr td textarea{
	width: 100%; background-color: #fff; border: 1px #c8c8c8 solid; border-radius: 2px; color: #333; padding: 2px;
	font-size: 12px;
}
table#contact_table tr td input{height: 40px;}
table#contact_table tr td textarea{height: 100px; max-width: 100%; max-height: 200px;}