@charset "utf-8";


form#mail_form {
	/*width: 960px;*/
	/*margin: 50px auto;*/
	/*padding: 10px 0;*/
	/*background: #ffffff;*/
	/*border: 1px solid #cccccc;*/
	/*border-radius: 7px;*/
	/*box-shadow: 0 0 7px rgba( 0, 0, 0, 0.2 );*/
	font-size: 1.7rem;
}

form#mail_form dl {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	margin-bottom: 50px;
	border-bottom: 1px dotted #cccccc;
}

form#mail_form dl dt {
	clear: both;
	width: 30%;
	float: left;
	border-top: 1px dotted #cccccc;
	padding: 28px 15px 0 15px;
	text-align: right;
	overflow: hidden;
	font-weight: bold;
	line-height: 1.4;
}

form#mail_form dl dd {
	width: 65%;
	float: right;
	border-top: 1px dotted #cccccc;
	padding: 20px 15px 20px 15px;
}

form#mail_form dl dd span{
	margin-top: 5px;
	font-size: 1.3rem;
}

form#mail_form dl dt:first-child,
form#mail_form dl dt:first-child+dd {
	border: none;
}

/*form#mail_form dl dt span {
	display: block;
	font-size: 85%;
	color: #3377ff;
	}*/


	/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

	form#mail_form dl dt span.required,
	form#mail_form dl dt span.optional {
		display: inline-block;
		float: left;
		color: #ffffff;
		line-height: 1;
		padding: 3px 5px;
		border-radius: 3px;
		font-size: 1.3rem;
		font-weight: normal;
	}

	form#mail_form dl dt span.required {
		background: #d9534f;
		border: 1px solid #d43f3a;
	}

	form#mail_form dl dt span.optional {
		background: #337ab7;
		border: 1px solid #2e6da4;
	}

	form#mail_form dl dd span.error_blank,
	form#mail_form dl dd span.error_format,
	form#mail_form dl dd span.error_match {
		display: block;
		color: #ff0000;
		/*margin-top: 3px;*/
	}


	span.loading {
		width: 50px;
		height: 50px;
		border-radius: 50%;
		border-top: 5px solid rgba( 255, 255, 255, 0.2 );
		border-right: 5px solid rgba( 255, 255, 255, 0.2 );
		border-bottom: 5px solid rgba( 255, 255, 255, 0.2 );
		border-left: 5px solid #ffffff;
		-webkit-transform: translateZ( 0 );
		-ms-transform: translateZ( 0 );
		transform: translateZ( 0 );
		-webkit-animation: load-circle 1.0s linear infinite;
		animation: load-circle 1.0s linear infinite;
		position: absolute;
		top: 50%;
		left: 50%;
		margin-top: -30px;
		margin-left: -30px;
	}

	@-webkit-keyframes load-circle {
		0% {
			-webkit-transform: rotate( 0deg );
			transform: rotate( 0deg );
		}
		100% {
			-webkit-transform: rotate( 360deg );
			transform: rotate( 360deg );
		}
	}

	@keyframes load-circle {
		0% {
			-webkit-transform: rotate( 0deg );
			transform: rotate( 0deg );
		}
		100% {
			-webkit-transform: rotate( 360deg );
			transform: rotate( 360deg );
		}
	}


	/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */


	form#mail_form input[type="text"],
	form#mail_form input[type="email"],
	form#mail_form input[type="tel"],
	form#mail_form input[type="age"] {
		max-width: 100%;
		height: 2em;
		padding: 2px 1%;
		border: 1px solid #cccccc;
		border-radius: 3px;
		background: #fafafa;
		-webkit-appearance: none;
		font-size: 100%;
		font-family: inherit;
		/*margin-top: 7px;*/
	}

	form#mail_form input[type="text"]:focus,
	form#mail_form input[type="email"]:focus,
	form#mail_form input[type="tel"]:focus,
	form#mail_form input[type="age"]:focus,
	form#mail_form textarea:focus {
		box-shadow: 0px 0px 5px #55ccff;
		border: 1px solid #55ccff;
		background: #ffffff;
	}

	form#mail_form ul li input[type="radio"],
	form#mail_form ul li input[type="checkbox"] {
		margin-right: 10px;
		margin-top: 17px;
	}

	form#mail_form ul li:first-child input[type="radio"],
	form#mail_form ul li:first-child input[type="checkbox"] {
		margin-top: 0px;
	}

	form#mail_form select[type="select"] {
		height: 2em;
		padding: 2px 1%;
	}

	form#mail_form input[type="date"] {
		height: 2.5em;
		padding: 2px 1%;
	}	

	form#mail_form input#calendar {
		font-size: 120%;
	}	

	form#mail_form select {
		font-size: 100%;
		font-family: inherit;
	}

	form#mail_form textarea {
		display: block;
		width: 100%;
		max-width: 100%;
		height: 200px;
		padding: 2px 1%;
		resize: vertical;
		border: 1px solid #cccccc;
		border-radius: 3px;
		background: #fafafa;
		-webkit-appearance: none;
		font-size: 100%;
		font-family: inherit;
		margin-top: 10px;
	}


	form#mail_form ul {
		list-style-type: none;
	}

	form#mail_form ul li label:hover {
		cursor: pointer;
	}


	form#mail_form input#company {
		width: 60%;
	}

	form#mail_form input#name_1,
	form#mail_form input#name_2,
	form#mail_form input#name_3,
	form#mail_form input#name_4,
	form#mail_form input#name_5,
	form#mail_form input#name_6,
	form#mail_form input#read_1,
	form#mail_form input#read_2,
	form#mail_form input#read_3,
	form#mail_form input#read_4,
	form#mail_form input#read_5,
	form#mail_form input#read_6,
	form#mail_form input#postal,
	form#mail_form input#phone,
	form#mail_form input#phone_1,
	form#mail_form input#phone_2,
	form#mail_form input#schedule_1,
	form#mail_form input#schedule_2,
	form#mail_form input#schedule_3,
	form#mail_form input#job,
	form#mail_form input#calendar {
		width: 30%;
	}

	form#mail_form input#age,
	form#mail_form input#age_1,
	form#mail_form input#sashi {
		width: 20%;
	}

	form#mail_form input#schedule_1,
	form#mail_form input#schedule_2,
	form#mail_form input#schedule_3 {
		margin: 5px 0;
	}

	form#mail_form input#mail_address,
	form#mail_form input#mail_address_1,
	form#mail_form input#mail_address_2,
	form#mail_form input#mail_address_confirm,
	form#mail_form input#mail_address_confirm_1,
	form#mail_form input#mail_address_confirm_2,
	form#mail_form input#company_1,
	form#mail_form input#company_2,
	form#mail_form input#school-name,
	form#mail_form input#send-tel {
		width: 100%;
	}

	form#mail_form input#postal+a {
		display: inline-block;
		padding: 9px 15px;
		vertical-align: middle;
		line-height: 1;
		background: #5bc0de;
		border: 1px solid #46b8da;
		border-radius: 3px;
		color: #ffffff;
		font-family: inherit;
		text-decoration: none;
		position: relative;
		top: -1px;
	}

	form#mail_form input#postal+a:hover {
		cursor: pointer;
		background: #31b0d5;
		border: 1px solid #269abc;
	}

	form#mail_form input#address {
		width: 100%;
	}


	form#mail_form #form_submit {
		width: 100%;
		margin: 0 auto;
		/*padding: 15px 0;*/
		/*border-top: 1px solid #cccccc;*/
	}

	form#mail_form input[type="button"] {
		padding: 15px 15px 10px 15px;
		vertical-align: middle;
		line-height: 1;
		background: #416ca1;
		border: 1px solid #416ca1;
		/*border-radius: 3px;*/
		color: #ffffff;
		/*font-family: inherit;*/
		-webkit-appearance: none;
		font-size: 100%;
		width: 100%;
		margin: 0 0;
		box-shadow: 0 5px 0 0 #284e7d;
		border-radius: 10px;
		font-size: 2.0rem;
		font-weight: 500;
	}
	@media (min-width: 992px) {
		form#mail_form input[type="button"] {
			width: 30%;
			margin: 0 35%;
		}
	}

	form#mail_form input[type="button"]:hover {
		cursor: pointer;
		background: #416ca1;
	}

	form#mail_form input#form_submit_button {
		/*margin-left: 35%;*/
/*	width: 30%;
margin: 0 45%;*/
}








/* -- responsive ----------------------------------------------------------------------------------------------------------------- */

/* 1000pixel start */
@media screen and ( max-width: 1000px ) {

	form#mail_form {
		width: 100%;
	}

	form#mail_form dl {
		overflow: visible;
	}

	form#mail_form dl dt {
		width: auto;
		float: none;
		text-align: left;
		padding: 30px 0 0 0;
		font-weight: bold;
	}

	form#mail_form dl dd {
		width: auto;
		float: none;
		border-top: none;
		padding: 0px 0 30px 0px;
	}

	form#mail_form dl dt span {
		font-weight: normal;
	}


	/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

	form#mail_form dl dt span.required,
	form#mail_form dl dt span.optional {
		margin-right: 1em;
		margin-bottom: 2em;
	}


	/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */

	form#mail_form input[type="text"],
	form#mail_form input[type="email"],
	form#mail_form input[type="tel"] {
		margin-top: 0px;
	}

	form#mail_form input#form_submit_button {
		margin-left: 0;
	}

	form#mail_form select {
		margin-top: 0;
	}

	form#mail_form input#phone,
	form#mail_form input#schedule_1,
	form#mail_form input#schedule_2,
	form#mail_form input#schedule_3 {
		width: 50%;
	}

	form#mail_form input#name_1,
	form#mail_form input#name_2,
	form#mail_form input#name_3,
	form#mail_form input#name_4,
	form#mail_form input#name_5,
	form#mail_form input#name_6,
	form#mail_form input#read_1,
	form#mail_form input#read_2,
	form#mail_form input#read_3,
	form#mail_form input#read_4,
	form#mail_form input#read_5,
	form#mail_form input#read_6 {
		width: 49%;
	}

	form#mail_form input#postal {
		width: 40%;
	}

	form#mail_form input#phone,
	form#mail_form input#phone_1,
	form#mail_form input#phone_2,
	form#mail_form input#schedule_1,
	form#mail_form input#schedule_2,
	form#mail_form input#schedule_3,
	form#mail_form input#job {
		width: 100%;
	}


}
/* 1000pixel end */




.contact-form {
	display: none;
}

.required-icon {
	padding: 1px 2px;
	background-color: #d43f3a;
	border-radius: 3px;
}


.contact-form-select dl {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	margin-bottom: 50px;
	border-bottom: 1px dotted #cccccc;
	font-size: 1.6rem;
}

.contact-form-select dl dt {
	clear: both;
	width: 30%;
	float: left;
	border-top: 1px dotted #cccccc;
	padding: 28px 15px 0 15px;
	text-align: right;
	overflow: hidden;
	font-weight: bold;
}

.contact-form-select dl dd {
	width: 65%;
	float: right;
	border-top: 1px dotted #cccccc;
	padding: 20px 15px 20px 15px;
}


.contact-form-select ul li input[type="radio"] {
	margin-right: 10px;
	margin-top: 17px;
}

.contact-form-select ul li:first-child input[type="radio"] {
	margin-top: 0px;
}


@media screen and ( max-width: 1000px ) {
	.contact-form-select {
		width: 100%;
	}

	.contact-form-select dl {
		overflow: visible;
	}

	.contact-form-select dl dt {
		width: auto;
		float: none;
		text-align: left;
		padding: 30px 0 0 0;
		font-weight: bold;
		margin-bottom: 30px;
	}

	.contact-form-select dl dd {
		width: auto;
		float: none;
		border-top: none;
		padding: 0px 0 30px 0px;
	}
}