@charset "utf-8";
.contact {
	margin-top: 14rem;
	background: #e5e5e6;
	padding: 13rem 0;
	text-align: center;
}
.contact .common_ttl1 {
	margin-bottom: 7rem;
	color: #000;
}
.contact_content__form {
	max-width: calc(1000px + 100px);
	margin: 0 auto;
	background: #fff;
	margin-bottom: 13rem;
	padding: 8rem;
}
.contact_content__form dl {
	display: flex;
	margin-bottom: 3rem;
	align-items: center;
}
.contact_content__form dt {
	font-size: 1.6rem;
	line-height: 1;
	width: 20%;
    text-align: left;
}
.contact_content__form dd {
	width: 80%;
	text-align: left;
	margin-left: 0;
	font-size: 1.6rem;
}
.input_txt {
	font-size: 1.6rem;
	width: 80%;
	border: 1px solid #e5e5e6;
	padding: 0.8rem;
}
.input_txt.w100 {
	width: 100%;
}
.input_textarea {
	width: 100%;
	border: 1px solid #e5e5e6;
	font-size: 1.6rem;
	padding: 0.8rem;
}
.privacy_txt {
	margin: 0;
	font-size: 1.6rem;
	margin-bottom: 1rem;
}
.privacy_txt a {
	color: #000;
}
.contact_content__form label {
	font-size: 1.6rem;
}
.send_btn {
	margin: 0;
}
.send_btn button {
	font-size: 1.6rem;
	border: none;
	background: #9fa0a0;
	color: #fff;
	padding: 2rem 6rem;
	border-radius: 5rem;
}
.form_back {
	margin: 3.5rem 0 0;
}
.form_back button {
	background: none;
	border: none;
	font-size: 1.6rem;
	text-decoration: underline;
}
.contact_error {
	font-size: 1.4rem;
	text-align: left;
	margin: 0 0 2.5rem;
}
.error_messe {
	color: #c7151d;
	font-weight: bold;
}
.confirm_txt {
	font-size: 1.8rem;
	margin: 0 0 3.5rem;
	line-height: 1.8;
}
.top_link a {
	font-size: 1.6rem;
	text-decoration: underline;
	color: #000;
}
.contact_error .send_btn {
	text-align: center;
}
.contact_content__info {
	max-width: calc(1000px + 100px);
	padding: 8rem;
	margin: 0 auto;
	background: #fff;
}
.contact_content__ttl {
	margin: 0 0 4rem;
	font-size: 2.4rem;
}
.contact_content__detail {
	text-align: left;
	padding: 4rem 0;
	border-bottom: 1px solid #e5e5e6;
}
.contact_content__detail:first-child {
	padding-top: 0;
}
.contact_content__detail:last-child {
	border-bottom: none;
	padding-bottom: 0;
}
.contact_content__detail h4,
.contact_content__detail p {
	margin: 0;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1;
}
.contact_content__detail .contact_content__place {
	margin-bottom: 1rem;
	position: relative;
	padding-left: 15px;
}
.contact_content__detail .contact_content__place::before {
	content: "";
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0.2em;
	left: 0;
	background: #c7161d;
}
.contact_content__detail .contact_content__address {
	margin-bottom: 2rem;
}
.contact_content__detail .contact_content__tel {
	font-weight: bold;
	font-size: 2.8rem;
}
.contact_content__tel span {
	font-size: 2.2rem;
}
@media screen and (max-width: 768px){
	.contact {
		margin-top: 6rem;
		padding: 6.5rem 0;
	}
	.contact .common_ttl1 {
		margin-bottom: 3rem;
	}
	.contact .common_ttl1__jpn {
		position: relative;
		margin-top: 1.5em;
	}
	.contact .common_ttl1__jpn:before {
		content: "";
		position: absolute;
		top: -1em;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 30px;
		height: 3px;
		background: #c7151d;
	}
	.contact_content__form {
		margin: 0 1.5rem 5rem;
		padding: 3rem 2rem;
	}
	.contact_content__form dl {
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 1.5rem;
	}
	.contact_content__form dt {
		width: 100%;
		font-size: 1.3rem;
		margin-bottom: 1rem;
	}
	.contact_content__form dd {
		width: 100%;
	}
	.input_txt {
		width: 100%;
		border: 2px solid #e5e5e6;
	}
	.input_textarea {
		border: 2px solid #e5e5e6;
	}
	.privacy_txt {
		font-size: 1.3rem;
	}
	.contact_content__form label {
		font-size: 1.3rem;
	}
	.send_btn button {
		font-size: 1.3rem;
		padding: 1.5rem 3rem;
	}
	.contact_content__info {
		margin: 0 1.5rem 0;
		padding: 3rem 2rem;
	}
	.contact_content__ttl {
		font-size: 1.8rem;
		margin: 0 0 2rem;
	}
	.contact_content__detail {
		padding: 2rem 0;
	}
	.contact_content__detail h4,
	.contact_content__detail p {
		font-size: 1.4rem;
	}
	.contact_content__detail .contact_content__address {
		line-height: 1.5;
		margin-bottom: 1rem;
	}
	.contact_content__tel span {
		font-size: 1.3rem;
	}
	.contact_content__detail .contact_content__tel {
		font-size: 1.8rem;
	}
	.contact_content__detail .contact_content__tel a {
		color: #000;
	}
	.confirm_txt {
		font-size: 1.6rem;
		line-height: 1.8;
	}
}
