@charset "utf-8";

/* 相談フォーム
   ========================================================================== */
main form {
	margin: 0.8em auto 2em;
	padding: 0 !important;
}

main form input,
main form textarea,
main form select {
	border: 2px solid #d8d8d8;
	-webkit-border-radius: 0.24em;
	-moz-border-radius:    0.24em;
	border-radius:         0.24em;
}
@media screen and (max-width: 768px) {
	main form input,
	main form textarea,
	main form select {
		font-size: 1.6em;
	}
}
@media screen and (max-width: 424px) {
	main form input,
	main form textarea,
	main form select {
		font-size: 1.44em;
	}
}
@media screen and (max-width: 359px) {
	main form input,
	main form textarea,
	main form select {
		font-size: 1.28em;
	}
}

main form textarea {
	height: 12em;
}

main form button {
	font-size: 1.28rem;
}

main .form {
	position: relative;
	padding: 0.8em 0;
}

main .form .asterisk-ja > * {
	color: #222222;
}

main .form .attention {
	max-width: 720px;
	padding: 1.2em 0.8em;
	font-size: 0.88em;
}

.form-container {
	margin: 1.6em auto 3.2em;
	padding: 0 0 0.4em;
	background-color: #ffffff;
	border: 1px solid #d8d8d8;
	box-shadow: 0px 0px 4px -2px #969696;
}
@media screen and (min-width: 768px) {
	.form-container {
		padding: 2.4em 2.4em 0.4em;
	}
}

#park_detail_main {
	width: 100%;
	border-bottom: 1px solid #d8d8d8;
}
@media screen and (min-width: 768px) {
	#park_detail_main {
		width: auto;
		border: 1px solid #d8d8d8;
	}
}
@media screen and (max-width: 767px) {
	#park_detail_main small {
		text-align: center !important;
	}
}

.form-body {
	margin: 0;
	padding: 0.8em 0.8em 1.6em;
}

form .form-body {
	padding: 0;
}

.form-body table {
	padding: 0;
}

.form-body table tbody tr {
	border: 0 solid #d8d8d8;
	border-width: 0 0 1px;
}
@media screen and (min-width: 768px) {
	.form-body table tbody tr {
		display: -webkit-flex;
		display:    -moz-flex;
		display:         flex;
		border-width: 1px 1px 0px;
	}
}

.form-body table tbody tr:last-child {
	border-bottom-width: none;
}
@media screen and (min-width: 768px) {
	.form-body table tbody tr:last-child {
		border-bottom-width: 1px;
	}
}

.form-body table tbody tr > th,
.form-body table tbody tr > td {
	padding: 0.8em;
}
@media screen and (min-width: 768px) {
	.form-body table tbody tr > th,
	.form-body table tbody tr > td {
		display: -webkit-flex;
		display:    -moz-flex;
		display:         flex;
		align-items: center;
		margin: 0;
		padding: 1.28em;
		flex: 1;
	}
}

.form-body table tbody tr th {
	background-color: #f8f8f8;
	border: 1px solid #d8d8d8;
	border-width: 0 0 1px;
}
@media screen and (min-width: 768px) {
	.form-body table tbody tr th {
		flex: none;
		width: 14em;
		border-width: 0 1px 0 0;
	}
}

.form-body table tbody tr td {
	border: none !important;
}

.form-body + .button-area {
	margin: 1.6em auto 0.8em;
}

#nav-form + .form-body {
	background-color: transparent;
}
