@charset "utf-8";


form#mail_form{
    width : 960px;
    margin : 0px auto 50px;
    padding : 0px 0;
}

form#mail_form dl{
	width : 90%;
	margin : 0 auto;
	overflow : hidden;
}

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

form#mail_form dl dd{
	width : 70%;
	float : right;
	border-top : 1px solid #cccccc;
	padding : 15px 0 15px 5%;
}

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

form#mail_form .pp-box{
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #da3c41;
    text-align: left;
}


/* -- 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 : 8px 9px;
	border-radius : 3px;
}

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 : #da3c41;
	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 : -25px;
	margin-left : -25px;
}

@-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"]{
	max-width : 90%;
	height : 2em;
	padding : 2px 2%;
	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 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 : 7px;
}

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{
	font-size : 100%;
	font-family : inherit;
	margin-top : 10px;
}

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


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#read_1,
form#mail_form input#read_2,
form#mail_form input#postal,
form#mail_form input#phone,
form#mail_form input#schedule{
	width : 30%;
}

form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm{
	width : 80%;
}

form#mail_form input#postal+a{
	display : inline-block;
	padding : 9px 15px;
	vertical-align : middle;
	line-height : 1;
	background : #3a8fce;
	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-color: #3a8fce;
}

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


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

form#mail_form input[type="button"]{
    padding : 15px 15px;
    vertical-align : middle;
    line-height : 1;
    background : #3a8fce;
    border-radius : 3px;
    color : #ffffff;
    -webkit-appearance : none;
    font-size : 150%;
    width: 300px;
}

form#mail_form input[type="button"]:hover{
    cursor : pointer;
    background-color: #74B0DC;
}

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

.cp_ipcheck {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
}
.cp_ipcheck ul {
    padding: 15px auto;
    list-style: none;
    text-align: center;
}
.cp_ipcheck .list_item {
    margin-top: 0;
    margin-right: 0;
    margin-left: 0;
    padding: 0;
}
.cp_ipcheck label {
	position: relative;
	cursor: pointer;
}
.cp_ipcheck .option-input05 {
	position: relative;
	margin: 0 1rem 0 0;
	cursor: pointer;
}
.cp_ipcheck .option-input05:before {
	position: absolute;
	z-index: 1;
	top: 0.125rem;
	left: 0.1875rem;
	width: 0.75rem;
	height: 0.375rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: rotate(-45deg) scale(0, 0);
	        transform: rotate(-45deg) scale(0, 0);
	border: 2px solid #da3c41;
	border-top-style: none;
	border-right-style: none;
}
.cp_ipcheck .option-input05:checked:before {
	-webkit-transform: rotate(-45deg) scale(1, 1);
	        transform: rotate(-45deg) scale(1, 1);
}
.cp_ipcheck .option-input05:after {
    position: absolute;
    top: -0.125rem;
    left: 0;
    width: 1rem;
    height: 1rem;
    content: '';
    cursor: pointer;
    border: 2px solid #A7A7A7;
    background: #ffffff;
    border-radius: 2px;
}








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

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

form#mail_form{
	width : 100%;
}

form#mail_form dl{
	overflow : visible;
}

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

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

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

form#mail_form input[type="button"]{
    padding : 15px 15px;
    vertical-align : middle;
    line-height : 1;
    background : #3a8fce;
    border-radius : 3px;
    color : #ffffff;
    -webkit-appearance : none;
    font-size : 100%;
    width: 100%;
}
form#mail_form input[type="text"],
form#mail_form input[type="email"],
form#mail_form input[type="tel"]{
	width : 100%;
	height : 2em;
	padding : 2px 2%;
	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 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 : 7px;
}

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{
	font-size : 100%;
	font-family : inherit;
	margin-top : 10px;
}

form#mail_form textarea{
	display : block;
	width : 100%;
	max-width : 100%;
	height : 200px;
	padding : 2px 2%;
	resize : vertical;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	-webkit-appearance : none;
	font-size : 100%;
	font-family : inherit;
}
form#mail_form input#name_1,
form#mail_form input#name_2,
form#mail_form input#read_1,
form#mail_form input#read_2,
form#mail_form input#postal,
form#mail_form input#phone,
form#mail_form input#schedule{
	width : 40%;
}

form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm{
	width : 100%;
}

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

form#mail_form textarea{
	width : 100%;
}





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

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


/* -- 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{
	width : 50%;
}

}
/* 640pixel end */
