.p-contact {
		background-color: #ffffff;
		padding: 25px 0 120px;
}
@media screen and (max-width: 767px) {
		.p-contact {
				padding: 3.3333333333vw 0 10.6666666667vw;
		}
		.p-contact .l-content-inner {
				padding: 0 0 0;
		}
}
.p-contact-logo {
		margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
		.p-contact-logo {
				width: 20.6666666667vw;
				margin: 0 2.6666666667vw 4vw;
		}
}
.p-contact-ttl {
		background-image: url("../images/contact/img_ttlbg.jpg");
		background-size: cover;
		text-align: center;
		font-size: 4rem;
		font-weight: 500;
		height: 160px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		text-align: center;
		margin: 0 0 50px;
}
@media screen and (max-width: 767px) {
		.p-contact-ttl {
				font-size: 5.3333333333vw;
				height: 21.3333333333vw;
				margin: 0 0 4.6666666667vw;
		}
}
.p-contact-txt {
		font-size: 2rem;
}
@media screen and (max-width: 767px) {
		.p-contact-txt {
				font-size: 4.2666666667vw;
				line-height: calc(48/32);
				padding: 0 5.3333333333vw;
		}
}
.p-contact-txt.-thanks {
		text-align: center;
		margin-top: 8em;
		margin-bottom: 8em;
}
@media screen and (max-width: 767px) {
		.p-contact-txt.-thanks {
				margin: 4em 0;
		}
}
.p-contact-form {
		border-top: 1px solid #222222;
		border-bottom: 1px solid #222222;
		padding: 55px 85px 20px;
		margin: 55px 0 80px;
}
@media screen and (max-width: 767px) {
		.p-contact-form {
				padding: 10vw 0 0;
				margin: 4.6666666667vw 0 10.6666666667vw;
		}
		.p-contact-form-out {
				padding: 0 5.3333333333vw;
		}
}
.p-contact .hissu {
		color: #b60005;
		font-size: 1.7rem;
		width: 50px;
		height: 28px;
		border: 2px solid #b60005;
		font-weight: normal;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin-left: 0.8em;
}
@media screen and (max-width: 767px) {
		.p-contact .hissu {
				font-size: 3.4666666667vw;
				width: 10.6666666667vw;
				height: 5.3333333333vw;
		}
}
.p-contact-tbl .head {
		font-size: 2rem;
		font-weight: bold;
		margin-bottom: 3px;
		color: #4e361c;
}
@media screen and (max-width: 767px) {
		.p-contact-tbl .head {
				font-size: 4.2666666667vw;
				margin-bottom: 2.4vw;
		}
}
.p-contact-tbl .cnt {
		font-size: 2rem;
		margin-bottom: 35px;
}
@media screen and (max-width: 767px) {
		.p-contact-tbl .cnt {
				font-size: 4.2666666667vw;
				margin-bottom: 9.3333333333vw;
		}
}
.p-contact label input[type=radio] + span {
		padding-right: 0;
		padding-left: 35px;
}
@media screen and (max-width: 767px) {
		.p-contact label input[type=radio] + span {
				padding-left: 8vw;
		}
}
.p-contact label input[type=radio] + span::before {
		width: 24px;
		height: 24px;
		left: 0;
		right: auto;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		border: 1px solid #999999;
}
@media screen and (max-width: 767px) {
		.p-contact label input[type=radio] + span::before {
				width: 5.3333333333vw;
				height: 5.3333333333vw;
		}
}
.p-contact label input[type=radio]:checked + span::after {
		width: 12px;
		height: 12px;
		background-color: #222222;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		left: 6px;
		right: auto;
}
@media screen and (max-width: 767px) {
		.p-contact label input[type=radio]:checked + span::after {
				width: 2.6666666667vw;
				height: 2.6666666667vw;
				left: 1.3333333333vw;
		}
}
.p-contact input[type=text],
.p-contact input[type=email],
.p-contact input[type=tel],
.p-contact textarea {
		border: 1px solid #999999;
		border-radius: 5px;
		padding: 9px 15px;
		max-width: 100%;
}
@media screen and (max-width: 767px) {
		.p-contact input[type=text],
.p-contact input[type=email],
.p-contact input[type=tel],
.p-contact textarea {
				font-size: 4.2666666667vw;
				padding: 1.3333333333vw;
		}
}
.p-contact textarea {
		height: 235px;
}
@media screen and (max-width: 767px) {
		.p-contact textarea {
				height: 53.3333333333vw;
		}
}
.p-contact label,
.p-contact textarea {
		width: 575px;
		max-width: 100%;
}
.p-contact .w100 label,
.p-contact .w100 textarea {
		width: 100%;
}
.p-contact .radio-list .item {
		margin-top: 15px;
}
@media screen and (max-width: 767px) {
		.p-contact .radio-list .item {
				margin-top: 2.6666666667vw;
		}
}
.p-contact .policy {
		border: 1px solid #999999;
		border-radius: 5px;
		padding: 45px 85px 50px;
		height: 300px;
		overflow-y: scroll;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-contact .policy {
				padding: 6vw 5.3333333333vw;
				height: 53.3333333333vw;
		}
}
.p-contact .policy-ttl {
		font-size: 1.6rem;
		line-height: calc(32/16);
		margin-top: 2.5em;
		font-weight: normal;
}
@media screen and (max-width: 767px) {
		.p-contact .policy-ttl {
				font-size: 3.7333333333vw;
				line-height: calc(42/28);
		}
}
.p-contact .policy-txt {
		font-size: 1.6rem;
		line-height: calc(32/16);
		font-weight: normal;
}
@media screen and (max-width: 767px) {
		.p-contact .policy-txt {
				font-size: 3.7333333333vw;
				line-height: calc(42/28);
		}
}
.p-contact .policy-txt a {
		text-decoration: underline;
}
.p-contact .policy-txt.-list .item {
		padding-left: 1em;
		text-indent: -1em;
}
.p-contact .policy .ps__rail-y {
		right: 11px;
}
@media screen and (max-width: 767px) {
		.p-contact .policy .ps__rail-y {
				right: 1.0666666667vw;
		}
}
.p-contact .policy .ps__rail-y .ps__thumb-y {
		width: 15px;
		background-color: #a37653;
		border-radius: 0;
}
@media screen and (max-width: 767px) {
		.p-contact .policy .ps__rail-y .ps__thumb-y {
				width: 1.6vw;
		}
}
.p-contact .policy-check {
		font-size: 2rem;
		margin-top: 35px;
}
@media screen and (max-width: 767px) {
		.p-contact .policy-check {
				font-size: 4.2666666667vw;
				margin-top: 5.3333333333vw;
		}
}
.p-contact .policy-check label input[type=checkbox] + span {
		padding-left: 35px;
}
@media screen and (max-width: 767px) {
		.p-contact .policy-check label input[type=checkbox] + span {
				padding-left: 8vw;
		}
}
.p-contact .policy-check label input[type=checkbox] + span::before {
		width: 24px;
		height: 24px;
		border: 1px solid #999999;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
		.p-contact .policy-check label input[type=checkbox] + span::before {
				width: 5.3333333333vw;
				height: 5.3333333333vw;
		}
}
.p-contact .policy-check label input[type=checkbox]:checked + span::after {
		border-width: 0 3px 3px 0;
		margin: 0px 0px;
		width: 11px;
		height: 19px;
		top: 40%;
		left: 6px;
		-webkit-transform: translateY(-50%) rotate(45deg);
		        transform: translateY(-50%) rotate(45deg);
}
@media screen and (max-width: 767px) {
		.p-contact .policy-check label input[type=checkbox]:checked + span::after {
				width: 2.4vw;
				height: 3.4666666667vw;
				left: 1.6vw;
		}
}
.p-contact .policy-check-txt {
		font-size: 1.6rem;
		margin-top: 35px;
}
@media screen and (max-width: 767px) {
		.p-contact .policy-check-txt {
				font-size: 4.2666666667vw;
				line-height: calc(48/32);
				margin-top: 5.3333333333vw;
		}
}
.p-contact-btnarea {
		text-align: center;
}
.p-contact-btnarea .btn-submit, .p-contact-btnarea .btn-totop {
		width: 490px;
		height: 90px;
		max-width: 100%;
		border-radius: 45px;
		display: block;
		margin: auto auto auto;
		position: relative;
		-webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
		        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 767px) {
		.p-contact-btnarea .btn-submit, .p-contact-btnarea .btn-totop {
				width: 80vw;
				height: 14.6666666667vw;
		}
}
.p-contact-btnarea .btn-submit span,
.p-contact-btnarea .btn-submit a, .p-contact-btnarea .btn-totop span,
.p-contact-btnarea .btn-totop a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		font-size: 3rem;
		font-weight: bold;
		width: 100%;
		height: 100%;
		border-radius: 45px;
		color: #ffffff;
		background: #b60005;
		background: -webkit-gradient(linear, left top, right top, color-stop(40%, #b60005), color-stop(70%, #990000));
		background: linear-gradient(90deg, #b60005 40%, #990000 70%);
}
@media screen and (max-width: 767px) {
		.p-contact-btnarea .btn-submit span,
.p-contact-btnarea .btn-submit a, .p-contact-btnarea .btn-totop span,
.p-contact-btnarea .btn-totop a {
				font-size: 4.8vw;
		}
}
.p-contact-btnarea .btn-submit span::after,
.p-contact-btnarea .btn-submit a::after, .p-contact-btnarea .btn-totop span::after,
.p-contact-btnarea .btn-totop a::after {
		content: "";
		background-image: url("../images/contact/btn-arr01.svg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
		width: 27px;
		height: 24px;
		display: block;
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		right: 20px;
}
@media screen and (max-width: 767px) {
		.p-contact-btnarea .btn-submit span::after,
.p-contact-btnarea .btn-submit a::after, .p-contact-btnarea .btn-totop span::after,
.p-contact-btnarea .btn-totop a::after {
				width: 4.2666666667vw;
				height: 3.7333333333vw;
				right: 4vw;
		}
}
.p-contact-btnarea .btn-submit.-send *::after, .p-contact-btnarea .btn-totop.-send *::after {
		background-image: url("../images/contact/btn-arr02.svg");
		width: 15px;
}
@media screen and (max-width: 767px) {
		.p-contact-btnarea .btn-submit.-send *::after, .p-contact-btnarea .btn-totop.-send *::after {
				background-image: none;
		}
}
.p-contact-btnarea .btn-totop a::after {
		left: 20px;
		right: auto;
		-webkit-transform: translateY(-50%) rotate(180deg);
		        transform: translateY(-50%) rotate(180deg);
}
@media screen and (max-width: 767px) {
		.p-contact-btnarea .btn-totop a::after {
				right: auto;
				left: 4vw;
		}
}
.p-contact-btnarea .btn-back {
		margin-top: 65px;
		background-color: transparent;
		border: none;
		font-size: 2rem;
		font-weight: normal;
		text-align: center;
		text-decoration: underline;
}
@media screen and (max-width: 767px) {
		.p-contact-btnarea .btn-back {
				margin-top: 6.6666666667vw;
				font-size: 4.2666666667vw;
		}
}
.p-contact .formError .formErrorContent {
		font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
		.p-contact .formError .formErrorContent {
				font-size: 4.2666666667vw;
		}
}

@media screen and (max-width: 767px) {
		body {
				min-height: 100vh;
		}
		body .l-main {
				padding-bottom: 16vw;
				min-height: calc( 100vh - 16vw);
		}
		body .p-contact {
				min-height: calc( 100vh - 16vw);
		}
}

@media screen and (max-width: 767px) {
		.l-footer {
				padding: 6.6666666667vw 0;
				position: absolute;
				left: 0;
				bottom: 0;
				width: 100%;
		}
}
/*# sourceMappingURL=contact.css.map */