@charset "UTF-8";

main {
	padding-bottom:100px;
}

/*===== お問い合わせ =====*/
#page .box {
	width:990px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	margin-top:140px;
}
@media screen and (max-width: 767px) {
	#page .box {
		width:80%;
		flex-direction:column;
		margin-top:10vw;
	}
	#page .box .item {
		margin-top:5vw;
	}
	#page .box .item img {
		width:100%;
	}
}



#page .box2 {
	width:1000px;
	margin:0 auto;
	margin-top:70px;
}
#page .box2 h2 {
	font-size:26px;
	text-align:center;
}
#page .box2 ul {
	margin:0;
	padding:0;
	margin-top:30px;
}
#page .box2 ul li {
	line-height:1.8em;
	list-style:none;
}
#page .box2 ul li a {
	color:#05e;
}
@media screen and (max-width: 767px) {
	#page .box2 {
		width:86%;
		margin-top:15vw;
	}
	#page .box2 h2 {
		font-size:6vw;
	}
	#page .box2 ul {
		margin-top:8vw;
	}
	#page .box2 ul li {
		font-size:3.6vw;
		padding-left:1em;
		text-indent:-1em;
	}
}


@media screen and (min-width: 768px) {
	.tellink {
		pointer-events:none;
	}
}


table.formtable {
	width:100%;
	margin-top:50px;
	border-collapse:collapse;
	border:none;
}

table.formtable th,
table.formtable td {
	font-size:18px;
	padding:25px;
	text-align:left;
	vertical-align:middle;
}
table.formtable th {
	white-space:nowrap;
	border-top:1px solid #00bb85;
	width:100px;
}
table.formtable td {
	border-top:1px solid #a5a5a5;
}
table.formtable tr:last-child th {
	border-bottom:1px solid #00bb85;
}
table.formtable tr:last-child td {
	border-bottom:1px solid #bbb;
}

::placeholder {
	color:#969696;
}
@media screen and (max-width: 767px) {
	::placeholder {
		font-size:3.6vw;
	}
}
input,
select,
textarea {
	font-size:16px;
	background-color:#fff;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=checkbox],
input[type=radio],
textarea,
select {
	font-size:16px;
	margin:5px;
}

input[type=text],
input[type=tel],
input[type=email],
textarea,
select {
	margin:2px;
	padding:5px;
	vertical-align:middle;
	border:solid 1px #bbb;
	border-radius:0;
	box-shadow:none;
}

select {
	padding:5px;
	color:#666;
}

input[type=tel]:focus,
input[type=email]:focus,
input[type=text]:focus,
textarea:focus {
	outline:2px solid #09d;
	background:#fdeff5;
}

textarea {
	box-sizing:border-box;
	width:100%;
}

label {
	display:inline-block;
	margin:.2em 0;
	margin-right:1em;
}

.copy {
	margin-top:3em;
}

.error,
.error2 {
	display:inline-block;
	background-color:#ff0;
	color:#c00;
	margin-top:.5em;
	font-size:93%;
	padding:.5em .5em;
	line-height:1em;
}
.error2.erhide {
	display:none;
}


.requ {
	color:#980b30;
	font-size:14px;
	margin-left:1em;
}
td .requ {
	margin-left:0;
}
.exe {
	font-size:16px;
	margin-left:1em;
	color:#666;
}
.addr {
	margin-right:1em;
}
.inlinebox {
	display:block;
	margin:.5em 0;
}
@media screen and (max-width: 767px) {
	.requ {
		font-size:3.6vw;
	}
	.exe {
		font-size:3.6vw;
		margin-left:5px;
	}
	.inlinebox {
		margin:1em 0;
	}
}



input.error,
select.error {
	background:#ffffd5;
	color:#333;
}

@media screen and (max-width: 767px) {
	table.formtable,
	table.formtable thead,
	table.formtable tbody,
	table.formtable tr,
	table.formtable th,
	table.formtable td {
		display:block;
	}

	table.formtable {
		margin-top:5vw;
		border-bottom:1px solid #00bb85;
	}

	table.formtable th,
	table.formtable td {
		font-size:4vw;
		padding:5vw 2vw;
	}

	table.formtable th {
		background-color:#f1f1f1;
		white-space:normal;
		width:auto;
		padding-left:5vw;
		border-bottom:1px solid #ccc;
	}

	table.formtable td {
		padding-bottom:8vw;
		border-top:none;
		border-bottom:none;
	}

	table.formtable tr:last-child th {
		border-bottom:1px solid #ccc;
	}
	table.formtable tr:last-child td {
		border-bottom:none;
	}

	input[type=text],
	input[type=tel],
	input[type=email],
	textarea {
		box-sizing:border-box;
		max-width:100%;
	}

	input[type=text],
	input[type=tel],
	input[type=checkbox],
	input[type=radio] {
		font-size:4.3vw;
		margin:5px;
	}

	textarea {
		height:8em;
		width:100%;
	}
}

.submitbtn {
	margin-top:40px;
	margin-bottom:30px;
	text-align:center;
}

.imagebutton,
#button_send,
#button_cancel {
	font-size:22px;
	line-height:1em;
	margin-top:30px;
	padding:30px 80px;
	cursor:pointer;
	transition:.3s;
	letter-spacing:2px;
	color:#fff;
	border:none;
	-webkit-border-radius:8px;
	   -moz-border-radius:8px;
	        border-radius:8px;
	background:#00bb85;
	text-shadow:none;
}

.imagebutton:hover,
#button_send:hover {
	text-decoration:none;
	     opacity:.7;
	color:#fff;
	filter:alpha(opacity=70);
	-moz-opacity:.7;
}

#button_cancel {
	margin-right:20px;
	padding-right:20px;
	padding-left:20px;
	margin-right:15px;
	color:#fff;
	background:#666;
}

#button_cancel:hover {
	color:#fff;
	background:#bbb;
}

div.buttons {
	display:flex;
	flex-direction:row-reverse;
	justify-content:center;
	padding-bottom:60px;
	margin-top:30px;
}

@media screen and (max-width: 767px) {
	.imagebutton,
	#button_send,
	#button_cancel {
		font-size:5vw;
		margin-top:10vw;
		padding:6vw 10vw;
	}

	#button_cancel {
		font-size:4.6vw;
		margin-right:0vw;
		padding:4vw 4vw;
		margin-top:10vw;
	}

	div.buttons {
		display:block;
		margin-top:10vw;
		padding-bottom:20vw;
		text-align:center;
	}
}


/*========================================

  thanks

========================================*/
.thanks {
	padding-top:80px;
	text-align:center;
}

.thanks h2 {
	font-size:30px;
}

.thanks p {
	font-size:16px;
	margin-top:1.5em;
	line-height:2em;
}

.thanks p small {
	font-size:13px;
	line-height:1.8em;
	display:block;
	margin-top:1em;
}

.thanks .closebtn {
	margin-top:2em;
}

.thanks .closebtn a {
	display:inline-block;
	background-color:#888;
	color:#fff;
	padding:1em 1.5em;
	transition:.3s;
}

.thanks .closebtn a:hover {
	text-decoration:none;
	background-color:#444;
}

@media screen and (max-width: 768px) {
	.thanks {
		text-align:justify;
		width: 86%;
		margin: 0 auto;
	}

	.thanks h2 {
		font-size:6.5vw;
	}

	.thanks p {
		font-size:4vw;
	}

	.thanks p small {
		font-size:3.5vw;
	}

	.thanks .closebtn {
		text-align:center;
	}

	.thanks .closebtn a {
		font-size:4vw;
	}
}
