@charset "utf-8";

/* --------------------------------------------------------------------------------------------------------------------

	contact (index.html / confirm.html / thanks.html)

-------------------------------------------------------------------------------------------------------------------- */


/* -------------------------------------- .contact-titleCnt -------------------------------------- */

.contact-titleCnt {
	max-width: 960px;
	margin: 0 auto;
	padding: 50px 0 60px;
}

.contact-titleCnt div {
	float: left;
	width: 38%;
}

.contact-titleCnt section {
	float: right;
	width: 61%;
	margin-top: 40px;
}

.contact-title-phoneBlk {
	text-align: center;
	border: 1px solid #ccc;
	border-style: solid none;
	padding: 20px 0;
	margin-top: 40px;
}

.contact-title-phoneBlk dt {
	text-align: left;
	font-size: 87.5%;
	font-weight: bold;
	color: #42210b;
	margin: 5px 10px;
}

.contact-title-phoneBlk dt,
.contact-title-phoneBlk dd,
.contact-title-phoneBlk span {
	display: inline-block;
	vertical-align: middle;
}
body.IE7 .contact-title-phoneBlk dt,
body.IE7 .contact-title-phoneBlk dd,
body.IE7 .contact-title-phoneBlk span {
	display: inline;
	zoom: 1;
}

.contact-title-phoneBlk .phone {
	font-size: 255%;
	letter-spacing: -1px;
	margin: 0 10px;
}

.contact-title-phoneBlk .time {
	font-size: 80%;
	line-height: 1.5;
	margin: 5px 10px;
}


/* ---------------------------------------
	max-width: 959px
--------------------------------------- */

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

	.contact-titleCnt {
		padding-bottom: 40px;
	}

}


/* ---------------------------------------
	max-width: 839px
--------------------------------------- */

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

	.contact-titleCnt div,
	.contact-titleCnt section {
		float: none;
		width: 100%;
		margin-top: 0;
	}

	.contact-title-phoneBlk {
		margin-top: 30px;
	}

}


/* ---------------------------------------
	max-width: 719px
--------------------------------------- */

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

	.contact-titleCnt {
		padding: 30px 0;
	}

	.contact-title-phoneBlk .phone {
		font-size: 220%;
	}

}


/* -------------------------------------- .contact-formCnt -------------------------------------- */

.contact-formCnt {
	margin: 0 auto 70px;
	max-width: 960px;
}

.contact-formCnt h2 {
	text-align: center;
	color: #fff;
	font-size: 95%;
	background-color: #42210b;
	padding: 10px;
	margin-bottom: 10px;
}


/* -------- .contact-form-form  -------- */

.contact-form-form {
	margin-bottom: 20px;
}
.contact-form-form.files {
	border-top: 1px solid #ccc;
	margin: 0 20px;
	padding: 10px 0;
}
body.IE7 .contact-form-form.files {
	position: relative;
}

.contact-form-form dt {
	font-size: 87.5%;
	font-weight: bold;
	position: absolute;
	margin-top: 20px;
	padding: 1.8em 0 0 30px;
	width: 180px;
}

.contact-form-form dt.message {
	margin-top: 0;
}

.contact-form-form.files dt {
	padding-left: 20px;
}

.contact-form-form.confirm dt {
	margin-top: 0;
}

.contact-form-form dt span {
	font-weight: normal;
	font-size: 85%;
	line-height: 1.5;
	display: block;
	margin-top: 20px;
}

.contact-form-form dd {
	font-size: 80%;
	font-weight: bold;
	border-bottom: 1px solid #ccc;
	padding: 20px 10px 10px 260px;
	overflow: hidden;
}
.contact-form-form dd.bn {
	border: none;
}

.contact-form-form.files dd {
	border: none;
	padding-left: 240px;
}
.contact-form-form.files dd.phone {
	padding-top: 0;
}

.contact-form-form.confirm dd {
	font-size: 87.5%;
	font-weight: normal;
	line-height: 1.8;
	padding: 20px 0 20px 260px;
	min-height: 1.8em;
}

.contact-form-form.confirm dd b {
	display: block;
	margin-bottom: 5px;
}

.contact-form-form dd > div {
	float: left;
	max-width: 240px;
	width: 100%;
	margin-right: 20px;
	padding-bottom: 10px;
}
.contact-form-form dd div.mail {
	max-width: 370px;
	margin-right: 30px;
}
.contact-form-form dd div.message {
	max-width: 640px;
}
.contact-form-form.files dd div.postcode {
	max-width: 120px;
}
.contact-form-form.files dd div.address {
	max-width: 480px;
	padding-bottom: 0;
}

.contact-form-form dd em {
	font-size: 87.5%;
	font-style: normal;
	color: red;
	padding-left: .5em;
}

.contact-form-form dd .error {
	font-size: 90%;
	line-height: 1.4;
	color: #fff;
	background-color: #9d8d6c;
	font-weight: bold;
	display: inline-block;
	margin: 10px 0 0 5px;
	padding: 3px 10px 3px;
	position: relative;

	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;

	-webkit-box-shadow: 0 1px 3px #ccc;
	-moz-box-shadow: 0 1px 3px #ccc;
	box-shadow: 0 1px 3px #ccc;
}
body.IE7 .contact-form-form dd .error {
	display: inline;
	zoom: 1;
}
.contact-form-form dd .error:before {
	content: "";
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-bottom-color: #9d8d6c;
	position: absolute;
	top: -16px;
	left: 15px;
}

.contact-form-form dd label {
	display: block;
	padding-right: 16px;
}

.contact-form-form input,
.contact-form-form textarea {
	font-size: 100%;
	line-height: 1;
	display: block;
	width: 100%;
	background: #f2f2f2;
	border: 1px solid #ccc;
	margin-top: 7px;
	padding: 7px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;

	-webkit-box-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff;
	-moz-box-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff;
	box-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff;

	-webkit-appearance: none;
}
body.lteIE8 .contact-form-form input {
	line-height: 1.5;
}
.contact-form-form textarea {
	line-height: 1.5;
	height: 15em;
	overflow: auto;
}

.contact-form-form dd div.message textarea {
	margin-top: 18px;
}

#contact-form-remail {
	font-weight: normal;
	margin: 7px 0 -7px;
}

html.js #contact-form-remail  {
	height: 0;
	overflow: hidden;
	position: relative;

	-moz-transition: height .3s cubic-bezier(0.77, 0, 0.175, 1);
	-webkit-transition: height .3s cubic-bezier(0.77, 0, 0.175, 1);
	-o-transition: height .3s cubic-bezier(0.77, 0, 0.175, 1);
	transition: height .3s cubic-bezier(0.77, 0, 0.175, 1); /* easeInOutQuart */
}

#contact-form-remail input {
	margin: 0 0 7px;
}

#contact-form-remail .note {
	font-size: 90%;
	line-height: 1.4;
	color: red;
	display: block;
	margin: 5px -16px 0 0;
	padding-bottom: 7px;
}



/* -------- .contact-form-files  -------- */

.contact-form-files {
	border: 4px solid #d9d9d9;
	background: #fff;
}

.contact-form-files section {
	border-bottom: 1px solid #d9d9d9;
	padding: 30px 10px;
	margin: 0 20px;
	position: relative;
	min-height: 110px;
}
.contact-form-files section.bn {
	border: none;
}

.contact-form-files h3 {
	font-size: 95%;
	line-height: 1.5;
	padding: 0 0 15px 230px;
}

.contact-form-files p {
	font-size: 80%;
	line-height: 1.8;
	padding: 0 0 20px 230px;
}

.contact-form-files p img {
	display: block;
	position: absolute;
	left: 15px;
	top: 40px;
	width: 200px;
}

.contact-form-files-check {
	padding-left: 230px;
	position: relative;
}

.contact-form-files-check li {
	display: inline-block;
}
body.IE7 .contact-form-files-check li {
	display: inline;
	zoom: 1;
}

.contact-form-files-check input {
	display: none;
}

.contact-form-files-check label {
	font-size: 80%;
	font-weight: bold;
	text-align: center;
	color: #fff;
	display: block;
	width: 14em;
	padding: 10px 0 10px 1em;
	margin-right: 10px;
	background: #534A47;
	cursor: pointer;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;

	-moz-transition: background-color .1s linear;
	-webkit-transition: background-color .1s linear;
	-o-transition: background-color .1s linear;
	transition: background-color .1s linear;
}
body.IE8 .contact-form-files-check label {
	padding-left: 0.5em;
}
body.IE7 .contact-form-files-check label {
	padding-left: 0;
}

.contact-form-files-check label:hover {
	background-color: #332e2c;
}

.contact-form-files-check label span {
	position: relative;
}

.contact-form-files-check label span:before {
	content: "";
	width: 1em;
	height: 1em;
	background: rgba(255,255,255,0.3);
	opacity: .5;
	position: absolute;
	left: -1.8em;
	top: .1em;
}

.contact-form-files-check input:checked + label {
	background-color: #ff7f31;
}
body.lteIE8 .contact-form-files-check label.checked {
	background-color: #ff7f31;
}

.contact-form-files-check input:checked + label span:after {
	content: "√";
	position: absolute;
	left: -1.8em;
	top: 0;
}
body.lteIE8 .contact-form-files-check label.checked span:after {
	content: "√";
	position: absolute;
	left: -1.8em;
	top: 0;
}

html.js #contact-form-address {
	height: 0;
	overflow: hidden;
	position: relative;

	-moz-transition: height .4s cubic-bezier(0.77, 0, 0.175, 1);
	-webkit-transition: height .4s cubic-bezier(0.77, 0, 0.175, 1);
	-o-transition: height .4s cubic-bezier(0.77, 0, 0.175, 1);
	transition: height .4s cubic-bezier(0.77, 0, 0.175, 1); /* easeInOutQuart */
}

/* -------- .contact-form-btn  -------- */

.contact-form-btn {
	margin-top: 50px;
	text-align: center;
}

.contact-form-btn li {
	display: inline-block;
	margin: 0 10px;
}
body.IE7 .contact-form-btn li {
	display: inline;
	zoom: 1;
}

.contact-form-btn button {
	border: none;
	cursor: pointer;

	font-size: 87.5%;
	font-weight: bold;
	text-align: center;
	color: #fff;
	display: block;
	width: 17em;
	padding: 20px 32px 20px 20px;
	background: #534A47;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;

	-moz-transition: background-color .1s linear;
	-webkit-transition: background-color .1s linear;
	-o-transition: background-color .1s linear;
	transition: background-color .1s linear;
}
body.lteIE7 .contact-form-btn button {
	padding: 20px;
}

.contact-form-btn button:hover {
	background-color: #332e2c;
}

.contact-form-btn button span {
	position: relative;
}

.contact-form-btn button span:after {
	content: "";
	width: 5px;
	height: 9px;
	background: transparent url("../images/site_splite02.png") no-repeat 0 -150px;
	position: absolute;
	top: 50%;
	margin: -4px 0 0 7px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3) {
	.contact-form-btn button span:after {
		background-image: url("../images/site_splite02x2.png");
		-moz-background-size: 300px 600px;
		-webkit-background-size: 300px 600px;
		-o-background-size: 300px 600px;
		background-size: 300px 600px;
	}
}

.contact-form-btn button[name="submitBack"] {
	padding: 20px 20px 20px 32px;
	background-color: #a29d9c;
}
.contact-form-btn button[name="submitBack"]:hover {
	background-color: #807b7a;
}
.contact-form-btn button[name="submitBack"] span:before {
	content: "";
	width: 5px;
	height: 9px;
	background: transparent url("../images/site_splite02.png") no-repeat -50px -150px;
	position: absolute;
	top: 50%;
	left: 0;
	margin: -4px 0 0 -12px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3) {
	.contact-form-btn .button[name="submitBack"] span:before {
		background-image: url("../images/site_splite02x2.png");
		-moz-background-size: 300px 600px;
		-webkit-background-size: 300px 600px;
		-o-background-size: 300px 600px;
		background-size: 300px 600px;
	}
}
.contact-form-btn button[name="submitBack"] span:after {
	content: none;
}


/* -------- .contact-thanks-btn  -------- */

.contact-thanks-btn {
	margin: 40px 0 100px;
}

.contact-thanks-btn a {
	font-size: 75%;
	font-weight: bold;
	text-align: center;
	color: #fff;
	display: block;
	width: 19em;
	padding: 15px 27px 15px 15px;
	margin: 0 auto;
	background: #534A47;
	position: relative;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;

	-moz-transition: background-color .1s linear;
	-webkit-transition: background-color .1s linear;
	-o-transition: background-color .1s linear;
	transition: background-color .1s linear;
}
body.lteIE7 .contact-thanks-btn a {
	zoom: 1;
	padding-right: 15px;
}

.contact-thanks-btn a:hover {
	background-color: #332e2c;
}

.contact-thanks-btn a:after {
	content: "";
	width: 5px;
	height: 9px;
	background: transparent url("../images/site_splite02.png") no-repeat 0 -150px;
	position: absolute;
	top: 50%;
	margin: -4px 0 0 7px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3) {
	.contact-thanks-btn a:after {
		background-image: url("../images/site_splite02x2.png");
		-moz-background-size: 300px 600px;
		-webkit-background-size: 300px 600px;
		-o-background-size: 300px 600px;
		background-size: 300px 600px;
	}
}


/* ---------------------------------------
	max-width: 959px
--------------------------------------- */

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

	.contact-form-form dt {
		padding-left: 10px;
		width: 160px;
	}

	.contact-form-form.files dt {
		padding-left: 10px;
		width: 140px;
	}

	.contact-form-form dd,
	.contact-form-form.confirm dd {
		padding-left: 200px;
	}

	.contact-form-form.files dd {
		padding-left: 180px;
	}

	.contact-form-files section {
		position: static;
	}

	.contact-form-files h3 {
		padding-left: 0;
	}

	.contact-form-files p {
		position: relative;
		min-height: 110px;
	}

	.contact-form-files p img {
		top: 10px;
		left: 0;
	}

	.contact-form-files-check {
		padding-left: 0;
		text-align: center;
	}

}



/* ---------------------------------------
	max-width: 719px
--------------------------------------- */

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

	.contact-formCnt {
		margin-bottom: 40px;
	}

	.contact-formCnt h2 {
		font-size: 87.5%;
		margin-bottom: 0;
	}

	.contact-form-form {
		margin-bottom: 10px;
	}

	.contact-form-form.files dd {
		padding-top: 10px;
	}

	.contact-form-form.files dd.phone {
		padding-bottom: 0 !important;
	}

	.contact-form-form.confirm dd {
		font-size: 80%;
		line-height: 1.8;
	}


	.contact-form-form.files {
		margin: 0 10px;
		padding: 10px 0;
	}

	.contact-form-files section {
		padding: 20px 10px;
		margin: 0 10px;
	}

	.contact-form-files p {
		font-size: 75%;
	}

	.contact-form-files-check label {
		font-size: 70%;
	}

	.contact-form-btn {
		margin-top: 30px;
	}

	.contact-form-btn li {
		margin: 0 5px;
	}

	.contact-form-btn button {
		font-size: 75%;
		width: 18em;
		padding: 15px 27px 15px 15px;
	}
	.contact-form-btn button[name="submitBack"] {
		padding: 15px 15px 15px 27px;
	}

	.contact-thanks-btn {
		margin: 20px 0 50px;
	}

}


/* ---------------------------------------
	max-width: 599px
--------------------------------------- */

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

	.contact-form-form dt {
		position: static !important;
		width: auto !important;
		padding: 0 10px !important;
		margin-top: 20px !important;
	}
	.contact-form-form.files dt {
		margin-top: 10px !important;
	}

	.contact-form-form dt span {
		margin-top: 5px;
	}

	.contact-form-form dd {
		padding: 10px !important;
	}

	.contact-form-form.files dd.phone {
		padding-top: 0 !important;
	}

	.contact-form-files p {
		position: static;
		padding-left: 0;
	}

	.contact-form-files p img {
		position: static;
		display: block;
		margin: 0 auto 20px;
	}

	.contact-form-files-check {
		margin-bottom: -10px;
	}

	.contact-form-files-check li {
		margin-bottom: 10px;
	}

	.contact-form-btn {
		margin-bottom: -5px;
	}

	.contact-form-btn li {
		margin-bottom: 5px;
	}

}

#formWrap {
	width:700px;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
}
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}


























