textarea {
	resize: none;
}
.contact_main_area {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: var( --content-max-width );
	padding: 20px;
}
.contact_top_title {
	font-size: 25px;
	font-weight: bold;
	margin-bottom: 20px;
	text-align: left;
	padding-left: 20px;
	border-left: 20px solid #0000ff;
}
.contact_input_area {
	text-align: left;
	margin-left: 20px;
	vertical-align: top;
}
.contact_question_area {
	margin-bottom: 20px;
}
.contact_question_title {
	border-style: solid;
	border-color: #008800;
	border-width: 0 0 0 10px;
	padding-left: 10px;
	font-size: 18px;
	margin-bottom: 10px;
}
.question {
	display: flex;
	align-items: flex-start;
	margin-bottom: 10px;
	cursor: pointer;
}
.question > div {
	display: inline-block;
}
.question > div:first-child {
	background-color: #000000;
	color: #ffffff;
	font-weight: bold;
	border-radius: 5px;
	padding: 5px;
	margin-right: 5px;
}
.question > div:last-child {
	text-decoration: underline;
}
.answer {
	display: flex;
	align-items: flex-start;
	margin: 10px 0 10px 20px;
}
.answer > div {
	display: inline-block;
	vertical-align: top;
	padding: 5px;
}
.answer > div:first-child {
	color: #000000;
	border: 1px solid #000000;
	border-radius: 5px;
	margin-right: 5px;
}
#input_error_message {
	margin: 10px 0 10px 20px;
	color: #ff0000;
	font-weight: bold;
	font-size: 16px;
	width: calc( 100% - 20px );
	text-align: center;
}
.contact_input_layout {
	margin-left: 20px;
	display: table;
	border-collapse: collapse;
	width: calc( 100% - 20px );
}
.contact_input_layout input[type=text] {
	padding: 3px;
	height: 30px;
	width: 100%;
	border: 1px solid #aaaaaa;
}
.contact_input_layout label {
	margin-left: 3px;
}
.contact_input_layout > div {
	display: table-row;
}
.contact_input_layout > div > div {
	display: table-cell;
	padding: 8px;
	border: 1px solid #888888;
	vertical-align: top;
}
.contact_input_layout > div > div:first-child {
	background-color: #ccffff;
	white-space: nowrap;
}
.contact_input_layout > div > div:first-child > span {
	color: #ff0000;
	font-weight: bold;
}
.contact_input_layout > div > div:last-child > label:not(:last-child) {
	margin-right: 10px;
}
.contact_input_layout > div > div:last-child > textarea {
	padding: 5px;
	font-size: 16px;
	width: 100%;
	border: 1px solid #aaaaaa;
}
#family_name {
	margin-right: 10px;
}
#family_name, #first_name {
	width: 100px;
}
#family_kana_name {
	margin-right: 10px;
}
#family_kana_name, #first_kana_name {
	width: 100px;
}
.notice_text {
	color: #888888;
	font-size: 14px;
	margin-top: 5px;
}
.next_button_area {
	width: calc( 100% - 20px );
	margin: 15px 0 0 20px;
	text-align: center;
}
#consent_area {
	margin-left: 20px;
	padding: 10px;
	font-size: 16px;
	text-align: center;
}
#consent_area label {
	color: #ff0000;
	font-weight: bold;
}
#next_button {
	width: 200px;
	padding: 10px;
}
.contact_send_area {
	padding: 10px;
}
.p_policy_detail_title {
	margin-top: 20px;
	margin-left: 40px;
	margin-right: 20px;
	font-size: 20px;
	padding: 3px;
	border-style: solid;
	border-color: #008800;
	border-width: 2px 15px;
	text-align: center;
}
/*==================================================================*/
/* タブレット用設定													*/
/*==================================================================*/
@media screen and (max-width: 961px ) {
	.contact_input_area {
		margin-left: 0;
	}
	.contact_input_layout {
		display: block;
		margin-left: 0;
		width: 100%;
	}
	.contact_input_layout > div {
		display: block;
	}
	.contact_input_layout > div > div {
		display: block;
	}
	.contact_input_layout > div > div:first-child {
		white-space: normal;
	}
	.contact_input_layout > div > div:last-child {
		border: 0;
	}
	.contact_input_layout > div > div:last-child > textarea {
		width: 100%;
	}
}