@charset "UTF-8";


/* 共通
=======================================================*/
input{
	
}
input[type="text"]{
	padding:2%;
	font-size: 18px;
	box-sizing: border-box;
}
input[type="text"].size_s{
	width:10%;
}
input[type="text"].size_m{
	width:50%;
}
input[type="text"].size_l{
	width:100%;
}
input[type=submit],input[type=button]{
	display: inline-block;
	margin:0 auto 8px;
	padding:10px 5%;
	text-align:center;
	font-size: 18px;
	font-weight: bold;
	color: #444;
}
select{
	padding:2px;
	margin-right: 4px;
	font-size: 18px;
}
option{
	padding:2px 5px;
	line-height: 1.7;
	font-size:13px;
}
option:nth-child(even){
	background:#f0f0f0;
}
option strong{
	display: inline-block;
	min-width:150px;
	font-weight: bold;
	font-size:16px;
}
option span{
}
textarea{
	width:100%;
	height: 240px;
	padding:2%;
	font-size: 18px;
	box-sizing: border-box;
}


/* ラジオ、チェックボックスカスタム */

.radio, .checkbox {
	display:inline-block;
	box-sizing: border-box;
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	margin: 0 0 8px 0;
	padding: 12px 12px 12px 42px;
	border-radius: 0px;
	background-color: #f0f0f0;
	border: 1px solid #ddd;
	vertical-align: middle;
	cursor: pointer;
	font-size: 13px;
}
.radio:hover, .checkbox:hover {
	background-color: #80d4ff;
}
.radio:hover:after, .checkbox:hover:after {
	border-color: #0091db;
}
.radio:after, .checkbox:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: 15px;
	display: block;
	margin-top: -10px;
	width: 16px;
	height: 16px;
	border: 2px solid #fff;
	border-radius: 06px;
	content: '';
}

.radio:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: 20px;
	display: block;
	margin-top: -5px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #0091db;
	content: '';
	opacity: 0;
}
input[type=radio]:checked + .radio:before {
	opacity: 1;
}
input[type=radio]:checked + .radio {
	background:#c2e9fd;
	border:1px solid #c2e9fd;
}
.checkbox:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: 21px;
	display: block;
	margin-top: -7px;
	width: 5px;
	height: 9px;
	border-right: 3px solid #0091db;
	border-bottom: 3px solid #0091db;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
input[type=checkbox]:checked + .checkbox:before {
	opacity: 1;
}
input[type=checkbox]:checked + .checkbox {
	background:#c2e9fd;
}

input[type=radio]{
	display:none;
}
input[type=checkbox]{
	display:none;
}
.checkbox{
	display: block;
}
.radio span, .checkbox span{
	display: block;
	font-size: 12px;
	line-height: 1.7;
}

.error1{
	margin: 0 0 15px;
	padding:0 3%;
	color: #f00;
}
.error2{
	margin: 0 0 8px;
	color: #f00;
}


/* contact
=======================================================*/
#contact{
	
}
#contact .inner{
	width:96%;
	margin: auto;
}
#contact .guide{
	margin: 0 0 25px;
	font-size: 14px;
}
#contact table#contact_table{
	width:100%;
	margin:0 0 28px;
}
#contact table#contact_table th,#contact table#contact_table td{
	padding:1% 1%;
}
#contact table#contact_table th{
	width:22%;
	font-weight: 100;
	background:#f3f3f3;
}
#contact table#contact_table th .hosoku{
	display: block;
	padding:2% 0;
	font-size: 11px;
}
#contact table#contact_table td{
	width:auto;
	background:#fff;
	border-right:1px solid #f0f0f0;
	border-bottom:1px solid #f0f0f0;
}