@charset "UTF-8";


/*#lawyers-list -----------------------------*/
body.contact-form {
	background-color: #f5f5fa;
}
#contact-form h2 {
	background: url("../img/subpage_contact_h2_bg.jpg") center center no-repeat;
	background-size: cover;
}
#contact-form h2 span::after {
	content: "contact";
}
#contact-form .sec-inner {
	padding: 1rem 0 8rem;
}
#contact-form .lead {
	text-align: center;
	margin: 0 0 2.5rem;
	line-height: 2;
}
#contact-form .lead h3 {
	font-size: 1.8rem;
    margin: 0 0 2rem;
}
#contact-form .form-table {
	background-color: #fff;
	max-width: calc(900px - 12rem);
    padding: 3rem 6rem;
	margin: 0 auto;
}
#contact-form .form-table .col {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 0 2rem;
}
#contact-form .form-table .col:last-child {
	margin: 0;
}
#contact-form .form-table .col .ttl {
	flex-basis: 35%;
}
#contact-form .form-table .col .ttl span {
	position: relative;
}
#contact-form .form-table .col .ttl.required span::after {
	display: flex;
	align-items: center;
	justify-content: center;
	content: "必須";
	position: absolute;
	left: 105%;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #2b37af;
	color: #fff;
	font-size: .8rem;
	min-width: 2.4rem;
	min-height: 1.2rem;
	border-radius: 3px;
	letter-spacing: .1rem;
}
#contact-form .form-table .col .form {
	flex-basis: 55%;
}
#contact-form .form-table .col .form input,
#contact-form .form-table .col .form textarea {
	border: 1px solid #dbdbeb;
	border-radius: 3px;
	background-color: #f5f5fa;
	height: 2.2rem;
	width: 100%;
	font-size: 1rem;
}
#contact-form .form-table .col .form textarea {
	height: 9rem;
}
#contact-form .form-table .col.way-contact .form input,
#contact-form .form-table .col.interview .form input {
	height: auto;
	width: auto;
	border: 1px solid #1e2570;
	background-color: #fabf1a;
}
#contact-form .form-table .col.interview label {
	display: block;
}

#contact-form .caution {
	font-size: .8rem;
	letter-spacing: .1em;
	color: #3D3D3D;
	margin: .2rem 0 0;
}
/*error message*/
#contact-form .formrun-system-show {
	font-size: .8rem;
	color: red;
	letter-spacing: .1rem;
}

#contact-form .submit-area {
	text-align: center;
	margin: 2rem auto 0;
	display: flex;
	flex-direction: row-reverse;
	max-width: 800px;
	justify-content: center;
	align-items: center;
}
#contact-form .submit-area .formrun-system-show,
#contact-form .submit-area .btn-primary {
	flex-basis: 45%;
}
#contact-form .submit-area a.formrun-system-show {
	display: block;
	font-size: 1.2rem;
	background-color: #d7d7e1;
	padding: 1.4rem 0;
	margin: 0 5px;
	color: #434343;
}
[data-formrun-back-button]:not(.formrun-system-show) {
	display: none;
}
#contact-form .submit-area .btn-primary,
#contact-form .btn-primary a {
	font-size: 1.2rem;
	padding: 1.4rem 0;
	color: #fff;
	background-color: #2b37af;
	border: solid 3px #2b37af;
	margin: 0 10px;
	cursor: pointer;
	display: block;
}
#contact-form .submit-area .btn-primary:hover {
	opacity: .9;
}
#contact-form.fix .btn-primary a {
	display: block;
    max-width: 500px;
    text-align: center;
    margin: 3rem auto 2rem;
    padding: 1.4rem 0;
}

@media screen and (max-width: 768px) {
#contact-form .sec-inner {
	padding: 3rem 20px 4rem;
}
#contact-form .lead {
	margin: 0 0 2rem;
}
#contact-form .lead h3 {
	font-size: 1.6rem;
    margin: 0 0 1rem;
}
#contact-form .form-table {
    padding: 2rem 1.2rem;
}
#contact-form .form-table .col {
	display: block;
	margin: 0 0 2rem;
}
#contact-form .form-table .col .ttl.required span::after {
	font-size: .9rem;
	min-width: 2.6rem;
	min-height: 1.2rem;
}
#contact-form .form-table .col .form {
	margin: .3rem 0 0;
}
#contact-form .form-table .col .form input { height: 2rem; }
#contact-form .form-table .col .form input,
#contact-form .form-table .col .form textarea {
	width: calc(100% - 12px);
}
#contact-form .form-table .col.way-contact .form,
#contact-form .form-table .col.interview .form {
	margin: .8rem 0 0;
}
.check-col {
	font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.4;
	margin: 0 0 3rem;
	word-break: break-all;
}
#contact-form .submit-area {
	display: block;
	width: 100%;
}
#contact-form .submit-area a.formrun-system-show {
	position: relative;
	margin: 1rem 0 0;
	font-size: 1rem;
}
#contact-form .submit-area .btn-primary,
#contact-form .btn-primary a {
	font-size: 1rem;
	padding: 1.4rem 0;
	width: 100%;
	margin: 0 0 1rem;
}
#contact-form.fix .btn-primary a {
	display: block;
    text-align: center;
    margin: 3rem auto 2rem;
    padding: 1.4rem 0;
}

}