@charset "utf-8";

h1,h2,h3,h4{padding:0;margin:0;font-weight:normal;font-style:normal;}
form,input{padding:0;margin:0;}
input,textarea,select {font-family:inherit;font-size:inherit;font-weight:inherit;}
p{padding:0;margin:0;}
table{border-collapse:collapse;border-spacing:0;}
th{font-style:normal;font-weight:normal;text-align:left}
fieldset,img{border:0;}
hr{margin:0;padding:0;}
em{font-style:normal;font-weight:bold;}
ol li {margin:0;padding:0;list-style:none;}
ul li {margin:0;padding:0;list-style:none;}
dl,dt,dd{margin:0;padding:0;}
caption {text-align:left;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
hr{margin:0;padding:0;}
em{font-style:normal;font-weight:bold;}
img{border:0;}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {display: inline-block;}

.text-left{text-align:left;}
.text-center{text-align:center;}
.text-right{text-align:right;}
.text-indent{text-indent:-1em;padding-left:1em;}
.font-reset{font-size:100%;}
.float-left{float:left;}
.float-right{float:right;}
.nowrap{white-space: nowrap;}
.pt10{padding-top:10px;}
.pt20{padding-top:20px;}
.pt30{padding-top:30px;}
.pb10{padding-bottom:10px;}
.pb20{padding-bottom:20px;}
.pb30{padding-bottom:30px;}
.pb40{padding-bottom:40px;}
.mt05{margin-top:5px;}
.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}
.mb05{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.ml1em{margin-left:1.3em;}
.mr1em{margin-right:1.3em;}
.f-ssmall{font-size:70%;}
.f-small{font-size:75%;}
.f-middle{font-size:80%;}
.f-large{font-size:100%;}
.f-llarge{font-size:115%;}
.t-ssmall{font-size:70%;line-height:1.7;}
.t-small{font-size:75%;line-height:1.7;}
.t-middle{font-size:80%;line-height:1.7;}
.t-large{font-size:100%;line-height:1.7;}
.t-llarge{font-size:115%;line-height:1.7;}
.list {margin-left: 1.5em;}

.btn {
	display: block;
	margin: 10px 0;
	padding: 8px;
	background-color: #32373c;
	color: #fff;
	max-width: 270px;
	text-align: center;
	text-decoration: none;
}
.btn_text-blank {
	display: block;
	padding: 10px 30px;
	background: url(../image/icon_blank.png) right 5px center no-repeat;
	background-size:24px 24px;
}
/*--------------------------------------- .container */
.container {
	margin:0 auto;
	padding:22px 0 0;
	max-width:775px;
	min-height:600px;
	text-align:left;
	color:#595649;
}
.container h2 {
	margin: 0 0 20px;
	font-weight: bold;;
}
.container .kome {
	color:#ff6666;
}
.container form :disabled{
	background-color:#dddddd;
}
.container form .error-message{
	margin:3px 0;
	padding:5px 10px;
	border:1px solid #D81705;
	background-color:#ffffe0;
	color:#D81705;
	font-size:87.5%;
}
.container form .error {
	background-color:#ffffe0;
}
.container form label {
	margin:0 12px 0 0;
}
.container form label input {
	margin:0 2px 0 0;
	vertical-align:-2px;
}
.container form input[type='text'],
.container form input[type='tel'],
.container form select {
	padding:3px;
}
.container form input[type='submit'] {
	padding:5px 10px;
}
.container form .medium {
	width:30%;
}
.container form .large {
	width:90%;
}
.container form table.input {
	margin:0 0 50px;
	border-top:1px solid #000000;
	width:100%;
}
.container form table.input th,
.container form table.input td {
	padding:12px;
	border-bottom:1px dotted #a2a2a2;
	color:#4b4941;
}
.container form table.input th {
	background-color:#ececec;
	font-size:75%;
	text-align:center;
	white-space:nowrap;
	width: 25%;
}
.container form table.input td {
	font-size:75%;
	color:#666666;
	width: 75%;
}
.container form table.sub {
	width:100%;
}
.container form table.sub th,
.container form table.sub td {
	padding:6px;
	background:none;
	border:none;
	font-size:100%;
	text-align:left;
}
.container form table.sub th {
	vertical-align:top;
}
.container form dt {
	margin:0 0 6px;
}
.container form dd {
	margin:0 0 12px 17px;
	padding:12px;
	border:1px dotted #999999;
}
.container form div.button {
	position:relative;
	margin:40px 0;
	min-height:44px;
	text-align:center;
}
.container form div.button .back {
	position:absolute;
	top:0;
	left:0;
}
.container form div.button .next {
	position:absolute;
	top:0;
	right:0;
}
.container form .button input {
	margin:0 5px;
}
.container a.button {
	display:inline-block;
	margin:5px 0;
	padding: 3px 10px;
	border:1px solid #cccccc;
	background-color:#ECECEC;
	text-decoration: none;
	text-align: center;
	min-width: 80px;
}
.container .block01 {
	padding:12px 20px;
	background-color:#f4f4f4;
	color:#595649;
	line-height:1.8;
	text-align: center;
}

@media (max-width:767px) {
	* {
		box-sizing: border-box;
	}
	input,select {font-size:16px;}
	.block-sp {
		display: block;
	}
	/*--------------------------------------- .container */
	.container {
		margin:0;
		padding:0;
	}
	.container .kome {
		color:#ff6666;
	}
	.container .section {
		padding: 7px 14px;
	}
	.container form :disabled{
		background-color:#dddddd;
	}
	.container form .error-message{
		margin:3px 0;
		padding:5px 10px;
		border:1px solid #D81705;
		background-color:#ffffe0;
		color:#D81705;
		font-size:87.5%;
	}
	.container form .error {
		background-color:#ffffe0;
	}
	.container form label {
		margin:0 12px 15px 0;
	}
	.container form label input {
		margin:0 2px 0 0;
		vertical-align:-2px;
	}
	.container form input[type='text'],
	.container form input[type='tel'],
	.container form select {
		padding:3px;
	}
	.container form .medium {
		width:30%;
	}
	.container form .large {
		width:75%;
	}
	.container form table.input th,
	.container form table.input td {
		display: block;
		text-align: left;
		width: 100%;
	}
	.container form table.sub {
		width:100%;
	}
	.container form table.sub th,
	.container form table.sub td {
		padding:6px;
		background:none;
		border:none;
		font-size:100%;
		text-align:left;
	}
	.container form table.sub th {
		background-color: #ececec;
		border-bottom:1px dotted #a2a2a2;
		font-weight:normal;
		white-space:nowrap;
	}
	.container form dd {
		border: none;
		margin-right: 0;
	}
	.container form div.button .back {
		position:static;
	}
	.container form div.button .next {
		position:static;
		margin-bottom: 50px;
	}
	.container .block01 {
		text-align: left;
	}
}
