@media print, all and (min-width: 641px) {
    
	
	body.contact .bottoms-box{
		display: none;
	}
	
	form input[type="number"]{
		padding: 6px 12px;
		background-color: #ffffff;
		border: 1px solid #8BBFE1;
	}
	form input[type="number"]:focus{
		background-color: #f9f9f9;
	}
	
	.step { text-align: center; margin-bottom: 20px; }
	.message { margin-bottom: 20px; }
	.rq { color: #FF0000; }
	.error { color: #FF0000; line-height: 1.6; }
	.error-top { text-align: center; color: #FF0000; border: 1px solid #FF0000; padding: 10px; margin-bottom: 20px; }
	.note { font-size: .833em; }
	div.input-table p.sp-head { font-weight: bold; margin: 10px 0 2px; }
	div.input-table p.sp-head span { font-weight: normal; }
	.input { border: 1px solid #CCCCCC; background: #EEEEEE; padding: 3px; }
	.input-fit { width: 98%; }
	.textarea { width: 98%; }
	.form-navi { text-align: center; margin-top: 20px; }
	
	.form-navi input{
		padding: 12px 30px;
		color: #ffffff;
		font-size: 125%;
		font-weight: bold;
		background-color: #0094dc;
		border: 1px solid #0094dc;
		transition-duration:0.3s;
		-webkit-transition-duration:0.3s;
		-moz-transition-duration:0.3s;
		-o-transition-duration:0.3s;
		-ms-transition-duration:0.3s;
	}
	.form-navi input.input-submit:not(:first-child){
		margin-left: 10px;
	}
	.form-navi input.input-submit:hover{
		color: #0094dc;
		background-color: #ffffff;
	}
	
	.title-formcat {
		font-size: 1.125em;
		font-weight: bold;
		letter-spacing: 1.0pt;
		color: #002F7B;
		margin-bottom: 10px;
	}
	
	.formbox{
		margin-bottom: 50px;
	}
	
	.total-box{
		display: flex;
		align-items: baseline;
		padding: 26px 52px;
		background-color: #E0F0F9;
	}
	.total-box .labelbox{
		margin-right: 60px;
		font-size: 200%; /* 28px */
	}
	.total-box .textbox{
		flex: 1;
	}
	.total-box .textbox .num{
		display: inline-block;
		vertical-align: baseline;
		font-size: 200%; /* 28px */
		font-weight: bold;
	}
	.total-box .textbox .unit{
		display: inline-block;
		vertical-align: baseline;
		font-size: 142.857%; /* 20px */
	}
	
	form input.readonly{
		background-color: #E6E6E6;
	}
                       
}

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

	body.contact #footer .container-inner {
		padding-bottom: 50px;
	}
	
	body.contact .bottoms-box{
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 50px;
		padding: 5px;
		text-align: center;
		background-color: rgba(255,255,255,0.9);
		border-top: 1px solid #8BBFE1;
	}
	
	form input[type="number"]{
		padding: 6px 12px;
		background-color: #ffffff;
		border: 1px solid #8BBFE1;
	}
	form input[type="number"]:focus{
		background-color: #f9f9f9;
	}
	form input.input-text,
	form textarea{
		min-width: inherit;
		width: 100%;
		max-width: 100%;
	}
	
	.step { text-align: center; margin-bottom: 20px; }
	.message { margin-bottom: 20px; }
	.rq { color: #FF0000; }
	.error { color: #FF0000; line-height: 1.6; }
	.error-top { text-align: center; color: #FF0000; border: 1px solid #FF0000; padding: 10px; margin-bottom: 20px; }
	.note { font-size: .833em; }
	div.input-table p.sp-head { font-weight: bold; margin: 10px 0 2px; }
	div.input-table p.sp-head span { font-weight: normal; }
	.input { border: 1px solid #CCCCCC; background: #EEEEEE; padding: 3px; }
	.input-fit { width: 98%; }
	.textarea { width: 98%; }
	.form-navi { text-align: center; margin-top: 20px; }
	
	.form-navi input.input-submit{
		padding: 12px 30px;
		color: #ffffff;
		font-size: 114.2857%;
		font-weight: bold;
		background-color: #0094dc;
		border: 1px solid #0094dc;
		transition-duration:0.3s;
		-webkit-transition-duration:0.3s;
		-moz-transition-duration:0.3s;
		-o-transition-duration:0.3s;
		-ms-transition-duration:0.3s;
	}
	.form-navi input.input-submit:not(:first-child){
		margin-left: 5px;
	}
	.form-navi input.input-submit:hover{
		color: #0094dc;
		background-color: #ffffff;
	}
	
	.title-formcat {
			font-size: 112.5%;
		font-weight: bold;
		letter-spacing: 1.0pt;
		color: #002F7B;
		margin-bottom: 10px;
	}
	
	.total-box{
		display: flex;
		align-items: baseline;
		padding: 15px;
		background-color: #E0F0F9;
	}
	.total-box .labelbox{
		margin-right: 20px;
		font-size: 157.1428%; /* 22px */
	}
	.total-box .textbox{
		flex: 1;
	}
	.total-box .textbox .num{
		display: inline-block;
		vertical-align: baseline;
		font-size: 157.1428%; /* 22px */
		font-weight: bold;
	}
	.total-box .textbox .unit{
		display: inline-block;
		vertical-align: baseline;
		font-size: 114.2857%; /* 16px */
	}
	
	form input.readonly{
		background-color: #E6E6E6;
	}
	
	body.contact #contact-table{
		margin-bottom: 40px;
	}
    
}