/******************************************************************************************************
Contact
******************************************************************************************************/
label {
	position: relative;
	display: block !important;
	padding: 0;
	margin: 0;
	cursor: pointer;
}

.lbl label {
	display: inline !important;
}

.lbl label.cols,
.lbl label.cols-long {
	display: block !important;
	width: 170px;
	float: left;
}

label.cols-long {
	width: 180px !important;
}

.rows {
	margin-top: 7px !important;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="file"],
textarea,
select {
	font-size: 16px;
	padding: 10px;
	border: none;
	border-radius: 0;
	background: #f0f0f0;
}

input[type="radio"],
input[type="checkbox"] {
	width: auto !important;
	margin: 0 !important;
	vertical-align: baseline;
}

select {
	padding-right: 15px;
}

input[type="text"][readonly='readonly'],
input[type="tel"][readonly='readonly'],
input[type="email"][readonly='readonly'],
input[type="password"][readonly='readonly'],
input[type="file"][readonly='readonly'],
textarea[readonly='readonly'],
select[readonly='readonly'],
input[type="text"][readonly='readonly']:focus,
input[type="tel"][readonly='readonly']:focus,
input[type="email"][readonly='readonly']:focus,
input[type="password"][readonly='readonly']:focus,
input[type="file"][readonly='readonly']:focus,
textarea[readonly='readonly']:focus,
select[readonly='readonly']:focus {
	color: #585657 !important;
	border: none !important;
	background: transparent !important;
}

input[type="text"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
input[type="file"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #aaa !important;
}

input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="password"]:-ms-input-placeholder,
input[type="file"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #aaa !important;
}

input[type="text"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="file"]::-moz-placeholder,
textarea::-moz-placeholder {
	color: #aaa !important;
}

input.error,
textarea.error,
select.error,
input.error:focus,
textarea.error:focus,
select.error:focus {
	border: solid 3px #ff0000 !important;
	background: #ffeeee !important;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="file"],
textarea {
	width: 100%;
}

input.zip1 {
	width: 10%;
}

input.zip2 {
	width: 15%;
}

input.ptit {
	width: 25%;
}

input.small {
	width: 40%;
}

input.middle {
	width: 50%;
}

input.long {
	width: 100%;
}

textarea.ta {
	width: 100%;
	height: 150px;
	resize: vertical;
}

textarea.large {
	height: 200px;
}

input.submit {
	display: inline-block;
	font-weight: bold;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.50);
	line-height: 1.1em;
	border: none;
	padding: 12px;
}

input.error,
textarea.error,
select.error,
input.error:focus,
textarea.error:focus,
select.error:focus {
	border: solid 2px #ff0000 !important;
}

.hasDatepicker {
	margin-right: 5px;
}

a.fair-button {
	display: inline-block;
	font-weight: bold;
	text-decoration: none !important;
	letter-spacing: normal;
	padding: 15px;
	background-color: #ff8600;
	cursor: pointer;
}

a.fair-button:hover {
	color: #fff;
	background-color: #3E3A39;
}

a.to_back {
	margin-top: 0;
	background-color: #ccc;
}

a.to_back:hover {
	background-color: #eee;
}

.zip-btn {
	position: relative;
	display: inline-block;
	margin-left: 10px;
	color: #fff;
	font-size: 14px;
	line-height: 1em;
	padding: 11px 15px;
	background-color: #3E3A39;
	border-radius: 4px;
	border: none !important;
	transition: 0.4s;
	cursor: pointer;
}

.zip-btn:hover {
	opacity: .7;
}

.zip-btn>* {
	line-height: 1em;
}

ul.send_button {
	display: block;
	width: 100%;
	list-style: none;
	padding: 0 0 30px;
	text-align: center;
	letter-spacing: -.40em;
	margin-top: 30px;
}

.form-box+ul.send_button {
	margin-top: 0 !important;
}

ul.send_button li {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.1em;
	letter-spacing: 0.05em;
}

ul.send_button li+li {
	margin-left: 30px;
}

ul.send_button li input.button {
	text-align: center;
	padding: 15px 30px;
	background-color: #a48b77;
	border: none;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	transition: 0.3s;
	text-shadow: none !important;
}

ul.send_button li input.button:hover {
	background-color: #f4aeb9;
}

ul.send_button li input.submit {
	background-color: #ff8600;
}

ul.send_button li input.submit:hover {
	color: #fff !important;
	background-color: #3E3A39;
}

ul.send_button li input.to_back {
	background-color: #9f9fa0;
}

ul.send_button li input.to_back:hover {
	background-color: #ccc !important;
}

.alert {
	position: relative;
	border: none;
	padding: 10px 0 0 !important;
	margin: 0 !important;
	box-shadow: none;
}

.alert ul {
	width: 100%;
	min-height: 35px;
	padding-left: 20px;
	margin-bottom: 5px;
	list-style: disc;
}

.alert ul li {
	color: #da5959;
	width: 100%;
	font-size: 1.125em;
	padding: 4px 0;
}

.alert ul li:first-child {
	margin-top: 0;
}

.warning {
	color: #ff0000;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	padding: 15px;
	background: #ffeeee;
	border: solid 1px #ff0000;
	margin-top: 30px;
}

.success {
	color: #a48b77;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 10px;
	border-bottom: dotted 2px #c4b3a6;
	margin-bottom: 15px;
}

#ui-datepicker-div {
	font-size: 0.875em;
}

.ui-datepicker th {
	padding: 0 !important;
}

.ui-datepicker-trigger {
	border: solid 1px #bbb;
	border-radius: 2px;
}

.ui-state-default {
	color: #666 !important;
}

.sunday .ui-state-default,
.holiday .ui-state-default {
	color: #da5959 !important;
}

.saturday .ui-state-default {
	color: #0071a8 !important;
}

#contact-block>.container {
	max-width: 1024px;
	margin-left: auto;
	margin-right: auto;
}

#step-image {
	overflow: hidden;
	white-space: nowrap;
	letter-spacing: -.40em;
	vertical-align: middle;
}

#step-image>* {
	width: 32%;
	text-align: center;
	line-height: 70px;
	white-space: nowrap;
	letter-spacing: normal;
	vertical-align: middle;
	background-color: #dcf0ff;
}

#step-image>.step-2 {
	width: 36%;
}

#step-image>*:not(.step-1) {
	padding-left: 30px;
}

#step-image>.active {
	background-color: #2364c8;
}

#step-image>*:not(.active)>span {
	color: #4572a7;
}

#step-image>.step-1.active+.step-2:before,
#step-image>.step-1:not(.active)+.step-2.active:before,
#step-image>.step-2.active+.step-3:before,
#step-image>.step-2:not(.active)+.step-3.active:before {
	position: absolute;
	display: block;
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 35px 0 35px 30px;
	border-color: transparent;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

#step-image>.step-1.active+.step-2:before,
#step-image>.step-2.active+.step-3:before {
	border-left-color: #2364c8;
}

#step-image>.step-1:not(.active)+.step-2.active:before,
#step-image>.step-2:not(.active)+.step-3.active:before {
	border-left-color: #dcf0ff;
}

#step-image>.step-1:not(.active)+.step-2:not(.active):before,
#step-image>.step-1:not(.active)+.step-2:not(.active):after,
#step-image>.step-2:not(.active)+.step-3:not(.active):before,
#step-image>.step-2:not(.active)+.step-3:not(.active):after {
	position: absolute;
	left: 30px;
	display: block;
	height: 100%;
	border-left: solid 2px #fff;
	content: "";
}

#step-image>.step-1:not(.active)+.step-2:not(.active):before,
#step-image>.step-2:not(.active)+.step-3:not(.active):before {
	bottom: 48.5%;
	-webkit-transform-origin: left bottom;
	-moz-transform-origin: left bottom;
	transform-origin: left bottom;
	-webkit-transform: rotate(-40.5deg);
	-moz-transform: rotate(-40.5deg);
	transform: rotate(-40.5deg);
}

#step-image>.step-1:not(.active)+.step-2:not(.active):after,
#step-image>.step-2:not(.active)+.step-3:not(.active):after {
	top: 48.5%;
	-webkit-transform-origin: left top;
	-moz-transform-origin: left top;
	transform-origin: left top;
	-webkit-transform: rotate(40.5deg);
	-moz-transform: rotate(40.5deg);
	transform: rotate(40.5deg);
}

#step-image span {
	line-height: normal !important;
}

.form-guide {
	margin-top: 30px;
	margin-bottom: 30px;
	line-height: 1.8em;
}

.form-guide>p {
	margin: 0;
}

#step-image+.form-box {
	margin-top: 30px;
}

table.form-table {
	width: 100%;
	border-collapse: separate !important;
	border-spacing: 0;
	padding: 0px;
	margin: 0;
}

table.form-table th,
table.form-table td {
	/* padding: 20px 0; */
	/* border-top: dotted 1px #B1B1AD; */
	text-align: left;
	letter-spacing: 1px;
}

table.form-table th {
	width: 27%;
	padding-right: 35px;
	vertical-align: top;
}

table.form-table tr:last-child>* {
	/* border-bottom: dotted 1px #B1B1AD; */
}

table.form-table tr.border-none>* {
	padding-top: 0 !important;
}

table.form-table tr.border-none th {
	vertical-align: top;
	padding-top: 6px !important;
}

table.form-table .box {
	position: relative;
}

table.form-table th .box {
	padding-right: 50px;
	font-weight: 500;
	line-height: 44px;
}

table.form-table .need {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	display: block;
	padding: 4px 8px;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	background: #E12B2B;
	font-weight: 500;
}

table.form-table td .row {
	margin: 5px 0 !important;
	padding: 0 !important;
}

table.form-table td .notice {
	color: #866b57;
}

table.form-table td span.notice {
	margin-left: 10px;
}

table.form-table td .inner-label {
	display: inline-block;
	/* width: 125px; */
	color: #fff;
	font-size: 14px;
	text-align: center;
	/* line-height: 1.0em; */
	border-radius: 3px;
	padding: 11px 0;
	/* margin-right: 15px; */
	background: #949595;
}

table.form-table td .inner-label2 {
	width: calc(100% - 140px);
}

table.form-table td .alert ul {
	min-height: inherit;
}

table.form-table td .alert ul li {
	font-size: 1em;
	line-height: 1.3em;
}

table.form-table td .alert ul li:first-child {
	padding-top: 0;
	margin-top: 0;
}

@media screen and (min-width: 992px) {
	ul.send_button {
		margin-top: 60px;
	}

	#step-image+.form-box {
		margin-top: 45px;
	}
}

@media screen and (min-width: 1200px) {
	#step-image+.form-box {
		margin-top: 60px;
	}
}

@media screen and (max-width: 767px) {

	*:not(.except-xs)>input[type="text"],
	*:not(.except-xs)>input[type="password"],
	*:not(.except-xs)>input[type="file"],
	*:not(.except-xs)>input[type="tel"],
	*:not(.except-xs)>input[type="email"],
	*:not(.except-xs)>textarea,
	*:not(.except-xs)>select {
		line-height: normal;
	}

	.lbl label {
		display: block !important;
	}

	label.except-xs {
		display: inline !important;
	}

	select.except-xs {
		width: auto !important;
	}

	.except-xs>input[type="text"]:not(.zip1):not(.zip2):not(.ptit):not(.except-xs) {
		width: 60% !important;
	}

	input.zip1 {
		width: 20% !important;
	}

	input.zip2 {
		width: 30% !important;
	}

	input.ptit {
		width: 45% !important;
	}

	input.except-xs {
		width: 100% !important;
	}

	table.form-table td .inner-label {
		font-size: 0.875em;
		width: 100%;
		margin-bottom: 7px;
	}

	#step-image {
		font-size: 10px;
	}

	#step-image>*:not(.step-1) {
		padding-left: 17px;
	}

	#step-image>*.step-2 {
		width: 38%;
	}

	#step-image>*.step-3 {
		width: 30%;
	}

	#step-image>* {
		line-height: normal;
		padding-top: 7px;
		padding-bottom: 7px;
	}

	#step-image>.step-1.active+.step-2:before,
	#step-image>.step-1:not(.active)+.step-2.active:before,
	#step-image>.step-2.active+.step-3:before,
	#step-image>.step-2:not(.active)+.step-3.active:before {
		border-width: 25px 0 25px 22px;
	}

	#step-image>.step-1:not(.active)+.step-2:not(.active):before,
	#step-image>.step-1:not(.active)+.step-2:not(.active):after,
	#step-image>.step-2:not(.active)+.step-3:not(.active):before,
	#step-image>.step-2:not(.active)+.step-3:not(.active):after {
		left: 22px;
	}

	.form-guide {
		margin-top: 15px;
		margin-bottom: 15px;
	}

	table.form-table,
	table.form-table tbody,
	table.form-table tr,
	table.form-table th,
	table.form-table td {
		display: block;
		width: 100%;
	}

	table.form-table th {
		/* padding-bottom: 5px !important; */
	}

	table.form-table td span.notice {
		display: block;
		margin-left: 0 !important;
	}

	input[type="text"],
	input[type="password"],
	input[type="file"],
	textarea,
	select {
		width: 100%;
	}

}



/******************************************************************************************************
 * Privacy Policy
******************************************************************************************************/

#policy-block>h1,
#policy-block>h2,
#policy-block>h3,
#policy-block>h4,
#policy-block>h5,
#policy-block>h6,
#policy-block .policy-index {
	font-size: 1.3125em;
	font-weight: bold;
	text-align: left;
	line-height: 1.4em;
	border-left: solid 5px #128f2a;
	border-bottom: solid 1px #128f2a;
	padding-left: 10px;
	padding-bottom: 7px;
	margin-bottom: 15px;
}

*+#policy-block>h1,
*+#policy-block>h2,
*+#policy-block>h3,
*+#policy-block>h4,
*+#policy-block>h5,
*+#policy-block>h6,
*+#policy-block .policy-index {
	margin-top: 60px;
}

#policy-block ul {
	padding-left: 30px;
}

@media screen and (max-width: 991px) {

	table.form-table th,
	table.form-table td {
		padding-top: 15px;
		padding-bottom: 15px;
	}

	table.form-table th {
		padding-right: 20px;
	}

	table.form-table th .box {
		padding-right: 40px;
		font-size: 15px;
		letter-spacing: 0;
	}

	table.form-table .need {
		padding: 4px 5px;
		font-size: 12px;
		letter-spacing: 0;
	}

	#policy-block>h1,
	#policy-block>h2,
	#policy-block>h3,
	#policy-block>h4,
	#policy-block>h5,
	#policy-block>h6,
	#policy-block .policy-index {
		font-size: 1.125em;
	}

	*+#policy-block>h1,
	*+#policy-block>h2,
	*+#policy-block>h3,
	*+#policy-block>h4,
	*+#policy-block>h5,
	*+#policy-block>h6,
	*+#policy-block .policy-index {
		margin-top: 45px;
	}
}

@media screen and (max-width: 767px) {
	table.form-table th {
		padding: 10px 0 5px;
	}

	table.form-table th .box {
		font-size: 14px;
		line-height: 2;
	}

	table.form-table td {
		padding: 0 0 15px;
		border-top: none;
	}

	table.form-table tr:last-child th {
		border-bottom: none;
	}

	table.form-table td .inner-label {
		font-size: 12px;
		width: 100%;
		margin: 0 0 7px;
		padding: 7px;
	}

	table.form-table td .inner-label2 {
		width: 100%;
	}

	*+#policy-block>h1,
	*+#policy-block>h2,
	*+#policy-block>h3,
	*+#policy-block>h4,
	*+#policy-block>h5,
	*+#policy-block>h6,
	*+#policy-block .policy-index {
		margin-top: 30px;
	}
}

@media screen and (min-width: 768px) {
	.visible-xs {
		display: none !important;
	}
}

@media screen and (min-width: 992px) {
	.visible-xs {
		display: none !important;
	}
	.visible-tb{
		display: none !important;
	}
	.hidden-tb {
		display: block !important;
	}
}

@media screen and (min-width: 1200px) {
	.visible-xs {
		display: none !important;
	}
}

@media screen and (max-width: 767px) {
	.hidden-xs {
		display: none !important;
	}

}
@media screen and (max-width: 991px) {
	.hidden-tb {
		display: none !important;
	}
	.visible-tb{
		display: block !important;
	}

}

.address-control {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

table.form-table td.check .box .lbl {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.mw_wp_form_confirm table.form-table td .inner-label,
.mw_wp_form_confirm .zip-btn {
	display: none;
}

.mw_wp_form_confirm table.form-table td .inner-label02 label {
	cursor: inherit;
}