
.contactform-box form{
    margin-bottom: 40px;
}
.contactform-box .message-headtext{
	margin-bottom: 40px;
}
.contactform-box .message-text{
	color: #000000;
}
.contactform-box table.formtable th{
    font-weight: bold;
}
.contactform-box table.formtable td{
	color: #000000;
}
.contactform-box .form-navi{
    text-align: center;
}
.contactform-box .form-navi .input-submit{
	display: inline-block;
	padding: 10px 78px;
	color: #ffffff;
    font-size: 112.5%; /* 18px */
    font-weight: 500;
    line-height: 1.5;
	text-decoration: none !important;
    text-align: center;
    background-color: #001D54;
    background-image: url("../images/contact/btn.svg");
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 51px auto;
	border: none;
    transition-duration: 0.3s;
    cursor: pointer;
}
	.contactform-box .form-navi .input-submit:not(:first-child){
		margin-left: 20px;
	}
	.contactform-box .form-navi .input-submit:hover{
		filter:alpha(opacity=60); /* IE 6,7*/
		-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
		-moz-opacity:0.6; /* FF , Netscape */
		-khtml-opacity: 0.6; /* Safari 1.x */
		opacity:0.6;
		zoom:1; /*IE*/
	}
    .input-text, 
    textarea, 
    select{
        padding: 4px 10px;
        border: 1px solid #cadbea;
		border-radius: 6px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
    }
    select{
        padding-top: 6px;
        padding-bottom: 6px;
    }
    .input-text:focus, 
	textarea:focus,
	.input-text[disabled]{
        background-color: #f8f7f7;
    }
	.input-text[readonly]{
        background-color: #ededed;
    }
    body.contact .cal-icon{
        display: inline-block;
        vertical-align: middle;
        margin-left: 10px;
    }
    body.contact .cal-icon a{
        display: block;
        width: 18px;
        height: 20px;
        background-image: url(../images/common/anchor-cal.png);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 18px auto;
    }
    body.contact .cal-icon a:hover{
        opacity:0.6;
    } 
    body.contact .input_p:not(:last-child){
		margin-bottom: 10px;
    }
    body.contact .input-text[readonly]{
        background-color: #ededed;
    }
	
	.error-top{
		padding: 10px 15px;
		border: 1px solid #E60012;
	}
	.error{
		color: #E60012;
	}

	#content table.formtable{
		width: 100%;
	}

.fieldwrap{
    display: inline-block;
    vertical-align: baseline;
}
.fieldwrap .beforetext{
    display: inline-block;
    min-width: 32px;
    margin-right: 10px;
    text-align: center;
}


@media print, all and (min-width: 751px) {
	
	.contactform-box .message-headtext{
		margin-right: -60px;
		margin-left: -60px;
		text-align: center;
	}
	.contactform-box #contact-table{
		margin-right: 60px;
		margin-left: 60px;
	}
	.contactform-box .form-navi .input-submit{
        min-width: 272px;
    }
	.contactform-box .input-text,
	.contactform-box .input-tel,
	.contactform-box .input-email,
	.list_search-formbox .input-text{
		width: 75%;
	}
	.contactform-box textarea{
		width: 100%;
	}
	.contactform-box .input-text[name="grade"]{
		width: auto;
	}
	.input-text.name1,
	.input-text.name2,
	.input-text.kana1,
	.input-text.kana2{
        width: auto;
    }
    select{
        min-width: 290px;
    }
	#content table.formtable th,
	#content table.formtable td{
        padding: 15px 20px;
    }
	#content table.formtable th{
		min-width: 100px;
        width: 260px;
        text-align: left;
		position: relative;
    }
	#content table.formtable:not(.confirm) th.rqs{
		padding-right: 82px;
	}
	table.formtable:not(.confirm) th.rqs:before{
        content: "\5FC5\9808";
        display: inline-block;
        vertical-align: middle;
        padding: 1px 6px;
        color: #ffffff;
        font-size: 70%;
		font-weight: bold;
        letter-spacing: 1pt;
        line-height: 1.5;
        text-align: center;
        background-color: #FF1D25;
        position: absolute;
        top: 50%;
        right: 32px;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        margin-bottom: -50%;
    }
    
    .formError.inline{
        margin:0 10px 10px;
    }
    .formError.inline .formErrorContent{
        min-width: 80px;
    }
    
    .contactform-box .message:after{
        display: none;
    }
    
    table.formtable{
        margin-bottom: 30px;
    }
    
    .contactform-box .formbox{
		margin-bottom: 40px;
    }
    
    .fieldwrap:not(:last-child){
        margin-right: 30px;
    }
	       
}

@media only screen and (max-width: 750px) {
	
	.contactform-box .message-headtext{
		margin-bottom: 30px;
	}
    .contactform-box .form-navi .input-submit{
        padding-right: 50px;
        padding-left: 50px;
		font-size: 106.25%; /* 17px */
		background-image: url("../images/contact/btn_sp.svg");
		background-position: right 10px center;
		background-repeat: no-repeat;
		background-size: 31px auto;
    }
	.contactform-box .form-navi .input-submit:not(:first-child){
		margin-left: 15px;
	}
	.contactform-box .input-text,
	.contactform-box .input-tel,
	.contactform-box .input-email,
	.contactform-box textarea{
		width: 100%;
	}
	.contactform-box .input-text[name="grade"]{
		width: auto;
	}
	
    .input-text, 
	textarea,
    select{
        width: 100%;
    }
	.input-text.age{
        width: auto;
    }
	.input-text.name1,
	.input-text.name2,
	.input-text.kana1,
	.input-text.kana2,
	.input-text.ins01,
	.input-text.ins02,
	.input-text.word,
	.input-text.roomnum,
	.input-text.old,
	.input-text.zipcode1,
	.input-text.zipcode2, 
    select{
        width: auto;
        max-width: 75%;
        margin-bottom: 10px;
    }
	.input-text.cal{
        max-width: 75%;
        margin-bottom: 10px;
    }
	.input-text.zipcode1,
	.input-text.zipcode2{
        width: auto;
    }
    table.formtable:not(.confirm) th.rqs{
        padding-right: 55px;
        position: relative;
    }
	table.formtable:not(.confirm) th.rqs:before{
        content: "\5FC5\9808";
        display: inline-block;
        vertical-align: middle;
        padding: 1px 6px;
        color: #999999;
        color: #ffffff;
        font-size: 80%;
        font-weight: bold;
        letter-spacing: 1pt;
        line-height: 1.5;
        text-align: center;
        background-color: #FF1D25;
        position: absolute;
        top: 50%;
        right: 10px;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        margin-bottom: -50%;
    }
    
    .formError.inline{
        margin: 10px;
    }
    
    .contactform-box .message:after{
        display: none;
    }
    
    table.formtable{
        margin-bottom: 30px;
    }
    
    .contactform-box .formbox{
		margin-bottom: 30px;
    }
    
	
}