#wrapper > .bg {
	background: none;
}

#keyvisual {
	padding-top: 1rem;
	height: auto;
}
#keyvisual h1 {
	padding-top: 3rem;
	margin: 0;
}
#keyvisual h1 span {
	padding-bottom: 0;
}
#services h2 {
	border: solid 2px #201b1b;
	border-radius: 20px 20px 20px 20px;
	text-align: left;
	max-width: 1000px;
	margin: 0 auto;
	padding: 2rem 3rem;
}
#services a {

}
br.none {
	display:none;
}

#main {
	background:#f4f6f3;
	padding: 0.1rem 2rem;
}


#formArea {
	padding: 0;
	max-width:1000px;
	margin: 0 auto;
}
#formArea> .wrap > p {
	font-size:13px;
	text-align: justify;
	text-justify: inter-ideograph;
}

#formTable {
	width:100%;
	margin-top:80px;
}

#formTable dl {
	display:table;
	width:100%;	
	margin: 25px 0 0;
}

#formTable p.at {
	font-size:11px;
	line-height:150%;
	color:#888;
	margin:5px 0 0 180px;
	text-align: justify;
	text-justify: inter-ideograph;
}

#formTable dl.mail {
	/*margin-bottom:15px;*/
}

#formTable dt {
	display:table-cell;
	padding-right:10px;
	font-size:14px;
	line-height:120%;
	width:180px;
	vertical-align:middle;
}
#formTable dt span.at {
	font-family: 'UDKakugo_LargePr6-R';
	font-size:12px;
	color:#C00;
	padding-left:3px;
	display:inline-block;
}
#formTable .message dt {
	vertical-align:top;
	padding-top:10px;
}
#formTable dd {
	display:table-cell;
}

#formTable dd input {
	width: auto;
	height:35px;
	min-width:300px;
	font-size:15px;
	padding:0 10px;
	border: none;
    outline: 1px solid #000;
    outline-offset: -1px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background:#FFF;
}
#formTable dd select {
	height:35px;
	min-width:300px;
	font-size:15px;
	line-height:100%;
	padding:5px 10px;
	background:#FFF;
	border: none;
    outline: 1px solid #000;
    outline-offset: -1px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-indent:.01px; /* Firefox—p */
    text-overflow:""; /* Firefox—p */
	position:relative;
	vertical-align: middle;
}
::-webkit-input-placeholder { /* Chrome, Opera */
    color: #CCC;
}
:-moz-placeholder { /* Firefox 19+ */
    color: #CCC;
}
:-ms-input-placeholder { /* IE 10+ */
    color: #CCC;
}
#formTable dd select::-ms-expand {
    display: none;
}



#formTable .pulldown label {
	position:relative;
	vertical-align: middle;
	display:inline-block;
}

#formTable .pulldown label:after {
	position: absolute;
    top: 0;
    right: 25px;
    bottom: 0;
    width: 0;
    height: 0;
    margin: auto;
	font-size:15px;
	line-height:15px;
	height:15px;
    content: '¥';
	pointer-events: none;
}
#formTable dd textArea {
	width:100%;
	min-height:10em;
	font-size:15px;
	line-height:120%;
	padding:10px 10px;
	border: none;
    outline: 1px solid #000;
    outline-offset: -1px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background:#FFF;
}
input#submitBtn,
input.form-cancel-btn,
input.form-submit-btn {
	box-shadow:none;
	width:80%;
	height: auto;
	max-width:380px;
	padding: 20px 20px;
	font-size: 22px;
	background-color: #bc0d17;
	color: #FFF;
	border-style: none;
	cursor:pointer;
	margin:50px 10px;
	
	border: none;
    outline: 4px solid #bc0d17;
    outline-offset: -1px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-indent:.01px; /* Firefox—p */
    text-overflow:""; /* Firefox—p */
}
input.form-cancel-btn,
input.form-submit-btn {
	margin:20px 10px 0;
	width:80%;
	max-width:300px;
}
input.form-cancel-btn {
	margin:30px 10px 0;
	padding: 10px 20px;
	background-color: #900;
	outline: 4px solid #900;
	font-size: 18px;
	width:60%;
	max-width:220px;
}

input#submitBtn:hover,
input.form-submit-btn:hover,
input.form-cancel-btn:hover {
	outline: 4px solid #FBC51D;
}

.btn {
	text-align:center;
}


input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px white inset;
}
#formTable dd input.error,
#formTable dd select.error,
#formTable dd textarea.error {
	background:#FEE;
	-webkit-box-shadow: 0 0 0px 1000px #FEE inset;
}

#errorMessage {
	font-size:14px;
	color:#F00;
	text-align:center;
	margin:25px 0;
}


.g-recaptcha > div {
	margin:25px auto 0;
}

input#submitBtn.recaptcha {
	margin-top:0;
}

@media (max-width: 1160px) {
	#keyvisual h1 {
		padding-top: 5rem;
	}
}

@media (max-width: 979px) {
	#headArea {
		height:260px;
		background-position:43% bottom;
	}
	#headArea .wrap {
		height:260px;
	}
}

@media (max-width: 800px) {
	#keyvisual h1 {
		padding-top: 0rem;
	}
	#services h2 {
		padding: 0 1rem 1rem;
	}
	#services h2 span {
		line-height: 1.5;
	}
	br.none {
		display: block;
	}
	dl dd {
		margin-left: 0;
	}
}

@media (max-width: 799px) {
	#headArea {
		height:135px;
		background-position:34% bottom;
	}
	#headArea .wrap {
		height:135px;
	}
	#formArea {
		padding:50px 0;
	}
	#formTable {
		display:block;
		margin-top:40px;
	}
	#formTable dl {
		margin-top:15px;
	}
	#formTable p.at {
		font-size:11px;
		margin-left:0;
	}
	input#submitBtn {
		margin:40px 0;
	}
	#formTable dt {
		display:block;
		width:100%;
		margin-bottom:5px;
	}
	#formTable dd {
		display:block;
	}
}

.pc_only-640 {
	display:block;
}
.sp_only-640 {
	display:none;
}

@media (max-width: 639px) {
	.pc_only-640 {
		display:none;
	}
	.sp_only-640 {
		display:block;
	}
	#headArea {
		background-position:25% bottom;
	}
	#formTable p.at {
		max-width:100%;
	}
	#formTable dd input,
	#formTable dd select {
		width:100%;
		min-width:100%;
	}
	#formTable .pulldown label {
		display:block;
	}
}

@media (max-width: 479px) {	
	section .wrap {
		padding:20px;
	}
	#headArea h2 {
		font-size:22px;
		left:20px;
	}

	#formArea {
		padding:30px 0;

	}
	#formTable {
		display:block;
		margin-top:30px;
	}
	#formTable dl {
	}
	#formTable p.at {
		font-size:10px;
	}
	input#submitBtn {
		margin:20px 0;
	}
	input#submitBtn,
	input.form-submit-btn {
		padding: 12px 15px;
		font-size: 20px;
	}
	input.form-cancel-btn {
		padding: 10px 15px;
		font-size: 18px;
	}
	#errorMessage {
		font-size:12px;
		margin:30px 0;
	}

}

@media (max-width: 320px) {
	#headArea {
		height:120px;
		background-position:20% bottom;
	}
	#headArea .wrap {
		height:120px;
	}
	#headArea h2 {
		font-size:22px;
	}
	#errorMessage {
		font-size:11px;
	}
	.g-recaptcha {
		transform:scale(0.92);
		-webkit-transform:scale(0.92);
		transform-origin:0 0;
		-webkit-transform-origin:0 0;
	}
}




@media screen and (max-width: 1160px) {
	#keyvisual {
	height: auto;
	}

}