@charset "utf-8";
/* CSS Document */
.contact_area1 .block2 {
	padding-bottom: 0;
}
.contact_area1 h2 {
	margin:0 0 15px;
	font-size:3.0rem;
	text-align: center;
}
.contact_area1 h2 b {
	display: block;
	font-weight: normal;
	font-size: 1.5rem;
}
.contact_area1 p {
	line-height: 4rem;
	padding: 50px 0 20px;
}
.contact_area1 h3 {
	font-size: 3rem;
	margin: 50px 0 20px;
}
.contact_area2 .block2 {
	padding-top: 0;
}
table.form_table {
	width: 100%;
	border-bottom: 1px solid #000;
}
table.form_table th,
table.form_table td {
	border-top: 1px solid #000;
	padding: 35px 25px;
}
table.form_table th {
	background: url(../images/bg_washi.png) repeat center top;
	text-align: left;
	vertical-align: top;
}
table.form_table th b {
	display: block;
	position: relative;
}
table.form_table th b::after {
	content: "必須";
	display: block;
	position: absolute;
	font-size: 1.2rem;
	font-weight: normal;
	background-color: #AA0000;
	color: #FFF;
	padding: 3px 10px; 
	right: -15px;
	top: -30px;
}
table.form_table td {
	
}
.input200,	
.input250,
.input400,
.input500 {
	padding:0 10px;
	width:100%;
	height:40px;
	line-height:40px;
	background-color: #FFF;
	border:1px solid #999;
}

.area51 {
	padding:10px;
	width:100%;
	height:250px;
	background-color: #FFF;
	border:1px solid #999;
}

.form_table td p {
	margin:0 0 10px;
}

.form_table td p.line {
	margin:0 0 5px;
}

.form_table td li {
	margin:0 0 5px;
}

.form_table td li label {
	margin:0 0 0 5px;
}

.form_table td p:last-child,
.form_table td li:last-child {
	margin:0;
}
.btn_block p {
	text-align: center;
	padding: 40px 0 0;
}

.btn_block p a {
	display: inline;
	padding: 10px 50px;
	background-size: 6px 10px;
	line-height:50px;
	text-align: center;
	border:1px solid #999;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

input[type="text"].inp_error,
input[type="number"].inp_error,
input[type="tel"].inp_error,
textarea.inp_error,
div.inp_error {
    border: 1px solid #F88A8A;
    background: #F4D4D4;
}
 
span.error_m {
    font-size: 15px;
    font-weight: normal;
    color: #FF4040;
    display: block;
    margin: 0;
}

.thanks_message {
	text-align: center;
}


@media screen and (min-width: 768px) {
	.contact_area1 h2 {
		margin:0 0 15px;
		font-size:3.0rem;
		text-align: center;
		margin-bottom: 0;
		padding-bottom: 00;
	}
	.contact_area1 h2 b {
		display: block;
		font-weight: normal;
		font-size: 1.5rem;
	}
	.form_table th {
		width: 250px;
	}
	table.form_table th b::after {
		right: 0;
		top: 0;
	}
	.input250 {
		width:250px;
	}
	
	.input400 {
		width:400px;
	}
	.area51 {
		width:500px;
	}
	.form_table td.input {	
		padding:25px 25px;
	}
	
	.form_table td p {
		margin:0 0 15px;
	}
	
	.form_table td p.line {
		margin:0 0 10px;
	}
	
	.form_table td li {
		margin:0 0 10px;
	}
}