@charset "utf-8";
/************************************************************************************************************************************
	全ページ共通
************************************************************************************************************************************/
/** .form_table *****************************************************************/
table.form_table {
	width: 100%;
	max-width: 700px;
	margin: 0 auto 0;
}

table.form_table tbody th, 
table.form_table tbody td {
	font-family: "メイリオ" , Meiryo , "Meiryo UI" , '小塚ゴシック Pr6N' , 'Kozuka Gothic Pr6N' , '小塚ゴシック Pr 6N' , 'Kozuka Gothic Pr 6N' , '小塚ゴシック Pr6 N' , 'Kozuka Gothic Pr6 N' , '小塚ゴシック Pr 6 N' , 'Kozuka Gothic Pr 6 N' , '小塚ゴシック Pro L' , 'Kozuka Gothic Pro Light' , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	vertical-align: middle;
}

table.form_table tbody th {
	position: relative;
	color: #6c6c6c;
	font-size: 16px;
	font-weight: 600;
	text-align: left;
	white-space: nowrap;
	width: 270px;
	padding: 19px 0 19px 64px;
	border-bottom: solid 1px #e5e5e5;
}

table.form_table tbody tr:last-child th ,
table.form_table tbody tr:last-child td {
	border-bottom: none;
}

table.form_table tbody th .en {
	color: #6476ff;
	font-size: 15px;
}

table.form_table tbody td {
	color: #000;
	font-size: 13px;
	letter-spacing: 0px;
	line-height: 1.7;
	text-align: left;
	padding: 19px 0;
	border-bottom: solid 1px #e5e5e5;
}

table.form_table tbody td p:not(:last-child) {
	margin-bottom: 5px;
}

table.form_table tbody tr th.pad_none {
	padding: 0 18px;
}


table.form_table tbody th span.req, 
table.form_table tbody th span.any {
	position: absolute;
	display: block;
	left: 3px;
	top: 15px;
	color: #FFF;
	font-size: 15px;
	text-align: center;
	line-height: 28px;
	width: 40px;
	height: 28px;
	margin: auto 0;
	border-radius: 5px;
}
table.form_table tbody th span.req {
	background-color: #ff3333;
}
table.form_table tbody th span.any {
	background-color: #6b33ff;
}


@media screen and (max-width: 767px) {
	table.form_table:not(.break_none), 
	table.form_table:not(.break_none) thead, 
	table.form_table:not(.break_none) thead tr, 
	table.form_table:not(.break_none) thead tr th, 
	table.form_table:not(.break_none) tbody, 
	table.form_table:not(.break_none) tbody tr, 
	table.form_table:not(.break_none) tbody tr th, 
	table.form_table:not(.break_none) tbody tr td {
		display: block;
	}
	table.form_table:not(.break_none) {
		width: calc(100% - 24px);
	}
	table.form_table:not(.break_none) tbody th {
		box-sizing: border-box;
		font-size: 14px;
		text-align: left;
		width: 100%;
		padding: 14px 0 14px 50px;
		border-top: none;
		border-bottom: none;
		border-top: solid 1px #b3a69a;
	}
	table.form_table:not(.break_none) tbody td {
		box-sizing: border-box;
		font-size: 14px;
		width: 100%;
		padding: 0 0 14px;
		border-bottom: none;
	}
	table.form_table:not(.break_none) tbody tr:first-child th { border-top: none;}

	table.form_table tbody th span.req, 
	table.form_table tbody th span.any {
		font-size: 13px;
		top: 8px;
		left: 0px;
	}
}




/** form input text
*********************/
.form_table input[type="text"], 
.form_table input[type="email"], 
.form_table input[type="password"], 
.form_table input[type="url"], 
.form_table input[type="telephone"], 
.form_table input[type="number"], 
.form_table input[type="datetime"] {
	box-sizing: border-box;
	font-size: 14px;
	font-family: "メイリオ" , Meiryo , "Meiryo UI" , '小塚ゴシック Pr6N' , 'Kozuka Gothic Pr6N' , '小塚ゴシック Pr 6N' , 'Kozuka Gothic Pr 6N' , '小塚ゴシック Pr6 N' , 'Kozuka Gothic Pr6 N' , '小塚ゴシック Pr 6 N' , 'Kozuka Gothic Pr 6 N' , '小塚ゴシック Pro L' , 'Kozuka Gothic Pro Light' , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	max-width: 100%;
	width: 100%;
	padding: 0.15em 0.5em;
	background-color: #fafafa;
	border: 2px solid #e5e5e5;
	border-radius: 2px;
	-webkit-appearance: none;
	box-shadow: none;
}
.form_table input.small_size[type="text"], 
.form_table input.small_size[type="email"], 
.form_table input.small_size[type="password"], 
.form_table input.small_size[type="url"], 
.form_table input.small_size[type="telephone"], 
.form_table input.small_size[type="number"], 
.form_table input.small_size[type="datetime"] {
	width: 130px;
}

.form_table textarea {
	resize: none;
	box-sizing: border-box;
	font-size: 14px;
	font-family: "メイリオ" , Meiryo , "Meiryo UI" , '小塚ゴシック Pr6N' , 'Kozuka Gothic Pr6N' , '小塚ゴシック Pr 6N' , 'Kozuka Gothic Pr 6N' , '小塚ゴシック Pr6 N' , 'Kozuka Gothic Pr6 N' , '小塚ゴシック Pr 6 N' , 'Kozuka Gothic Pr 6 N' , '小塚ゴシック Pro L' , 'Kozuka Gothic Pro Light' , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	width: 100%;
	max-width: 487px;
	padding: 0.15em 0.5em;
	background-color: #fafafa;
	border: 2px solid #e5e5e5;
	border-radius: 0;
	border-radius: 2px;
	-webkit-appearance: none;
	box-shadow: none;
	margin-left: auto;
}

@media screen and (max-width: 767px) {
	.form_table input[type="text"], 
	.form_table input[type="email"], 
	.form_table input[type="password"], 
	.form_table input[type="url"], 
	.form_table input[type="telephone"], 
	.form_table input[type="number"], 
	.form_table input[type="datetime"] {
		max-width: none;
	}
	.form_table textarea {
		max-width: none;
		width: 100%;
	}
}




/** .checkbox *****************************************************************/
input.checkbox[type="checkbox"] {
	-webkit-appearance: none;
	box-sizing: border-box;
	position: relative;
	vertical-align: middle;

	box-sizing: border-box;
	position: relative;
	vertical-align: inherit;
	width: 12px;
	height: 12px;
	margin-right: 4px;
	background: none;
	background-color: #FFF;
	border: solid 1px #a0a0a0;
	border-radius: 0;


	border: 1px solid #aaa;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	box-shadow: none;
}
input.checkbox[type="checkbox"]:checked {
	background-color: #539cf7;
	box-shadow: none;
}
input.checkbox[type="checkbox"]:checked:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: "";
	width: 4px;
	height: 4px;
	margin: auto;
	background-color: #FFF;
	-moz-border-radius: 1px;
	-webkit-border-radius: 1px;
	border-radius: 1px;
	box-shadow: none;
}


@media screen and (max-width: 767px) {
	input.checkbox[type="checkbox"] {
	}
	input.checkbox[type="checkbox"]:checked {
	}
}




/** .radio *****************************************************************/
input.radio[type="radio"] {
	-webkit-appearance: none;
	box-sizing: border-box;
	position: relative;
	vertical-align: middle;

	box-sizing: border-box;
	position: relative;
	vertical-align: inherit;
	width: 14px;
	height: 14px;
	margin-right: 4px;
	background: none;
	background-color: #FFF;
	border: solid 1px #a0a0a0;
	border-radius: 0;


	background: #fff;
	border: 1px solid #aaa;
	box-shadow: 2px 2px 0 #efefef, 2px -2px 0 #efefef, -2px -2px 0 #efefef, -2px 2px 0 #efefef, 1px 1px 1px #ccc inset;
	-moz-border-radius: 100%;
	-webkit-border-radius: 100%;
	border-radius: 100%;
	box-shadow: none;
}
input.radio[type="radio"]:checked {
	background-color: #6c6c6c;
	box-shadow: none;
}
input.radio[type="radio"]:checked:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: "";
	width: 4px;
	height: 4px;
	margin: auto;
	background-color: #FFF;
	-moz-border-radius: 100%;
	-webkit-border-radius: 100%;
	border-radius: 100%;
	box-shadow: none;
}


@media screen and (max-width: 767px) {
	input.radio[type="radio"] {
	}
	input.radio[type="radio"]:checked {
	}
}




/** .form_table select *****************************************************************/
.form_table select {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;

-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;

	margin: 0px 5px 0px 0;
	background: #fff;
	background: -moz-linear-gradient(top, #fff, #eee);
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));

	border: 1px solid #aaa;

	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;

	font-size: 11px;
	font-family: "メイリオ" , Meiryo , "Meiryo UI" , '小塚ゴシック Pr6N' , 'Kozuka Gothic Pr6N' , '小塚ゴシック Pr 6N' , 'Kozuka Gothic Pr 6N' , '小塚ゴシック Pr6 N' , 'Kozuka Gothic Pr6 N' , '小塚ゴシック Pr 6 N' , 'Kozuka Gothic Pr 6 N' , '小塚ゴシック Pro L' , 'Kozuka Gothic Pro Light' , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	line-height: 19px;

	height: 23px;
	padding: 0px 13px 0px 7px;
}
.form_table select option {
	font-size: 11px;
	font-family: "メイリオ" , Meiryo , "Meiryo UI" , '小塚ゴシック Pr6N' , 'Kozuka Gothic Pr6N' , '小塚ゴシック Pr 6N' , 'Kozuka Gothic Pr 6N' , '小塚ゴシック Pr6 N' , 'Kozuka Gothic Pr6 N' , '小塚ゴシック Pr 6 N' , 'Kozuka Gothic Pr 6 N' , '小塚ゴシック Pro L' , 'Kozuka Gothic Pro Light' , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	line-height: 1;
}




/** .form_button *****************************************************************/

.form_button_wrap {
	text-align: center;
	letter-spacing: normal;
	width: 100%;
}
.form_button_wrap .form_button {
	position: relative;
	display: inline-block;
	text-decoration: none;
	width: 100%;
}
.form_button_wrap .form_button button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;
	display:inline-block;
	cursor: pointer;
	padding: 0;
	background: none;
	background-color: transparent;
	border: none;
	border-radius: 0;

	color: #FFF;
	font-size: 16px;
	width: 220px;
	height: 55px;
	background-color: #afafaf;
	border-radius: 2px;
}


@media print, screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}















table.form_table tbody td .required_message {
	color: #ff4851;
}

#formSubmit .message_area {
	text-align: center;
	max-width: 700px;
	margin: 0 auto;
}
#formSubmit .message_area .error {
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 1px;
	padding: 10px 0;
	margin-bottom: 40px;
	border: solid 4px #ff4851;
}
#formSubmit .message_area .success {
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 1px;
	padding: 10px 0;
	margin-bottom: 40px;
	border: solid 4px #43E0C6;
}



@media print, screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
	#formSubmit .message_area {
		width: calc(100% - 10px);
	}
}
