/* area */
.area-form {
	margin: 0 auto;
	padding-bottom: 3rem;
	max-width: 75rem;
	background-color: #F4F7FB;
}
.area-form h2{
	margin: 0 auto 2.5rem;
	padding: 1rem;
	max-width: 75rem;
	font-size: 1.5rem;
	text-align: center;
	color: #fff;
	font-weight: bold;
	border-bottom: .375rem solid #c1deff;
	background-color: #215db0;
}
.flow-list-2 {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 2rem;
}
.flow-list-2 p {
	display: flex;
	align-items: flex-end;
	font-weight: bold;
	margin-right: 2rem;
	font-size: 2.25rem;
	line-height: 1;
}
.flow-list-2 p b {
	font-size: .611111111em;
}
.flow-list-2 p span {
	margin: 0 .125rem;
	color: #215db0;
	transform: translateY(0.125rem);
}
.flow-list-2 ol {
	display: flex;
	margin:0;
	padding-left:0;
}
.flow-list-2 ol li {
	position: relative;
	margin-right: .625rem;
	padding: .5rem .75rem .5rem 1rem;
	color: #215db0;
	border: 1px solid #215db0;
	border-width: 1px 0 1px 1px;
	background-color: #fff;
}
.flow-list-2 ol li::after {
	content: '';
	position: absolute;
	top: -.0625rem;
	left: 100%;
	bottom: -.0625rem;
	display: block;
	width: .625rem;
	background-image: url(https://99-denki.com/washer/template/img/area_arrow.png);
	background-size: 100% 100%;
}
.flow-list-2 ol .active {
	color: #fff;
	background-color: #215db0;
}
.flow-list-2 ol .active::after {
	top: -.75px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1.28125rem 0 1.28125rem .625rem;
	border-color: transparent transparent transparent #215db0;
}
.form-table {
	margin: 0 auto 2rem;
	width: 100%;
	max-width: 57.5rem;
	text-align: left;
	border-collapse: collapse;
}
.form-table th {
	padding: 0 1rem;
	width: 15rem;
	font-weight: bold;
	background-color: #D4DEED;
	border-bottom: 1px solid #ccc;
}
.form-table td {

	padding: .5rem;
	background-color: #fff;
	border-bottom: 1px solid #ccc;
}
.form-table td input {
	appearance: none;
	padding: 1rem;
	width: 100%;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: .25rem;
	-webkit-border-radius: .25rem;
	-moz-border-radius: .25rem;
	-ms-border-radius: .25rem;
	-o-border-radius: .25rem;
}
.form-table textarea {
	appearance: none;
	padding: 1rem;
	width: 100%;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: .25rem;
	-webkit-border-radius: .25rem;
	-moz-border-radius: .25rem;
	-ms-border-radius: .25rem;
	-o-border-radius: .25rem;
}
.ERR {
	margin-top: .25rem;
	font-size: 1rem;
	color: #f12f30;
	font-weight: bold;
}
div.ERR {
	margin-top: 0;
}
.required,
.form_any {
	display: inline-block;
	margin-left: 0.25rem;
	padding: .25rem .5rem;
	font-size: .625rem;
	line-height: 1;
	color: #fff;
	transform: translateY(-.125rem);
	-webkit-transform: translateY(-.125rem);
	-moz-transform: translateY(-.125rem);
	-ms-transform: translateY(-.125rem);
	-o-transform: translateY(-.125rem);
}
.required {
	background-color: #f12f30;
}
.form_any {
	background-color: #9b9b9b;
}
.form-table td .required-focus {
	border: 1px solid #f12f30;
	background-color: #FDF4F4;
}
#btn_area[disabled],
#btn_area {
	appearance: none;
	padding: 1rem;
	border: none;
	color: #fff;
	width: 100%;
	max-width: 21.4375rem;
	border-radius: .5rem;
	font-size: 1.125rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
#btn_area[disabled] {
	background-color: #E0E0E0;
	box-shadow: unset;
}
#btn_area {
	background-color: #215db0;
	box-shadow: 0 0 .625rem 0 rgba(0, 0, 0, 0.4);
}
.comfirm .form_flow_list,
.complete .form_flow_list {
	justify-content: center;
	margin-bottom: 2rem;
}
.comfirm .form_flow_list li:not(:last-child),
.complete .form_flow_list li:not(:last-child) {
	margin-right: 2rem;
}
.comfirm .form-table th,
.comfirm .form-table td {
	border: 1px solid #ccc;
	height:41px;
}
.form_comfirm_text {
	margin: 2rem auto;
	max-width: 920px;
	font-size: .875rem;
}
.form_comfirm_note {
	text-align: center;
	font-size: .75rem;
}
.form_comfirm_submit {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	margin-top: 2rem;
}
.button {
	appearance: none;
	padding: 1rem;
	width: 100%;
	max-width: 21.4375rem;
	font-size: 1rem;
	color: #fff;
	border: none;
	box-shadow: 0 0 0.625rem 0 rgb(0 0 0 / 40%);
	border-radius: .5rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
.button.back {
	margin-right: 1rem;
	background-color: #888;
}
.button.submit {
	background-color: #215db0;
}
.complete_wrap {
	margin: 20px 0;
	padding: 20px;
	background-color: #fff5d3;
}
.complete_text {
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: bold;
	color: #f7313b;
	text-align: justify;
}
.complete_text i {
	display: inline-block;
	max-width: 27px;
	transform: translateY(4px);
}
.complete_tel_wrap {
	display: flex;
	flex-direction: column;
	font-size: 42px;
	color: #000;
}
.complete_tel_span {
	font-weight: 500;
	font-size: .333333em;
}
.complete_tel_number {
	display: flex;
	align-items: center;
	margin: 2px 0 4px;
	font-size: 1em;
}
.complete_tel_number i {
	max-width: 40px;
	margin-right: 4px;
	transform: translateY(3px);
	flex-shrink: 0;
}
.complete_tel_number i img {
	display: block;
}
.complete_tel_number span {
	flex-shrink: 0;
	font-weight: bold;
	color: #f7313b;
	line-height: 1;
	letter-spacing: -1px;
}
.complete_tel_time {
	font-size: 14px;
	font-weight: normal;
}
.complete_back {
	margin-top: 12px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	text-indent: -.5em;
	text-align: justify;
	color: #000;
}
.complete_back span {
	color: #f7313b;
	font-weight: bold;
	border-bottom: 1px solid #f7313b;
}
.complete_note {
	font-size: .875rem;
}
.complete_note p:first-child {
	margin-bottom: 4px;
	text-indent: -.5em;
	font-weight: 500;
}
@media screen and (max-width: 768px){
	.area-form {
		padding-bottom: 2rem;
	}
	.common_head {
		margin-bottom: 2rem;
		font-size: 1.375rem;
	}
	.flow-list-2 {
		margin-bottom: 1.25rem;
		justify-content: space-between;
	}
	.flow-list-2 p {
		margin-right: 0;
	}
	.flow-list-2 ol li {
		font-size: .875rem;
		padding: .5rem .25rem .5rem .75rem;
	}
	.flow-list-2 ol .active::after {
		border-width: 1.1875rem 0 1.1875rem 0.625rem;
	}
	.form-table,
	.form-table tbody,
	.form-table tr,
	.form-table th,
	.form-table td {
		display: block;
		width: 100%;
	}
	.form-table {
		margin-bottom: 1rem;
	}
	.form-table th,
	.form-table td {
		padding: .5rem 1rem;
		border: none;
	}
	.comfirm .form-table th,
	.comfirm .form-table td {
		height: 2.54rem;
	}
	.form-table td input {
		padding: .625rem;
	}
	.form_comfirm_submit {
		flex-direction: column;
	}
	
	.complete_tel_number span {
		font-size: .76190476em;
	}
	.button.back {
		margin-right: 0;
	}
	.button.submit {
		margin-bottom: 1rem;
	}
}