/* お問い合わせ */
.contact {}
.contact .inner{}
.contact p{
	font-size: 0.875rem;
}

.contact_info_txt{}
.contact_info_txt p{
	margin: 0;
}

.contact_form .policy_wrap{
	margin-top: 40px;
}
.contact_form .policy_wrap h4{
	font-size: 1.125rem;
}
.contact_form .policy_wrap p.txt01{
	margin-top: 15px;
}
.contact_form .policy_wrap p.txt01 a{
	color: #1fb714;
}
.contact_form .policy_wrap p.txt01 a:hover{
	text-decoration: underline;
}
.contact_form{
	margin-top: 70px;
}

.form_items{
	width: 100%;
	margin-top: 0;
}
.form_items fieldset p{
	/*CF7が勝手に生成するので無効化*/
	display: contents;
}
.form_items fieldset{
	justify-content: flex-start;
	align-items: center;
	border-top: solid 1px #969696;
	margin: 0;
	padding: 0;
}
.form_items fieldset:last-of-type{
	border-bottom: solid 1px #969696;
}
.form_items .form_name{
	background-color: #e3f6e9;
	width: 100%;
	margin: 0;
	padding: 20px;
	font-size: 1rem;
	line-height: 1;
}
.required{
	display: inline-block;
	background-color: #1fb714;
	padding: 3px 10px 5px;
	color: #fff;
	font-size: .875rem;
	line-height: 1;
}
.form_items .required{
	margin-left: 15px;
}
.form_items .form_parts{
	width: 100%;
	margin: 0;
	padding: 20px;
}
.form_items .form_parts .part:not(:first-of-type){
	display: block;
	margin-top: 10px;
}
.contact_form .acceptance_btn{
	text-align: center;
	margin-top: 40px;
	font-size: 0.875rem;
}
.contact_form .acceptance_btn label{
	margin: 0;
}
.contact_form .acceptance_btn input{
	margin-right: 15px !important;
	scale: 1.5;
}
.contact_form .submit_btn_wrap{
	justify-content: center;
	gap: 20px 40px;
	width: 100%;
	margin: 60px 0 0;
}
.contact_form .submit_btn_wrap .more_btn .wrap{
	min-width: 290px;
	padding: 15px 58px;
}
.contact_form .submit_btn_return{
	opacity: 0.5;
}

.contact_form fieldset input{
	font-size: 0.75rem;
}
.contact_form fieldset input[type=text],
.contact_form fieldset input[type=email],
.contact_form fieldset textarea {
	border: solid 1px #969696;
	border-radius: 7px;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	width: 100%;
	padding: 10px;
	font-size: 0.875rem;
}
.contact_form fieldset .form_parts label{
	display: inline-block;
	margin: 10px 0;
	font-size: 0.75rem;
}
.contact_form input[type=radio],
.contact_form input[type=checkbox]{
	margin: 0 5px 0 0;
	vertical-align: -2px;
	accent-color: rgb(var(--color_text));
}

.wpcf7-spinner{
	/* CF7 LOADING */
	display: block !important;
	margin: 10px auto 0 !important;
}
.wpcf7-not-valid-tip{
	/* CF7 各項目のエラーテキスト */
	color: rgb(var(--color_red)) !important;
	font-size: 0.875rem !important;
}

.confirm .form_parts{
	font-size: 0.875rem;
}

/* CF7のCSSリセット */
.contact_form .wpcf7-list-item{
	display: block;
	margin: 0;
}
.wpcf7 form .wpcf7-response-output {
	text-align: center;
	border: none !important;
	color: rgb(var(--color_red)) !important;
	font-size: 0.875rem !important;
}
@media screen and (min-width: 769px) { /* PC用 メディアクエリー */
	/* お問い合わせ PC */
	.contact{
		padding: 0 80px;
	}
	.contact .inner{
		max-width: 100%;
	}
	.contact_wrap{
		padding: 0 50px;
	}
	.contact_info_txt{}
	.contact_info_txt p{
		margin: 0.5em 0 0;
		font-size: 1rem;
		line-height: 1.8;
	}

	.contact_form .policy_wrap{
		margin: 40px 0 0;
	}
	.contact_form .policy_wrap h4{
		font-size: 1.25rem;
	}
	.contact_form .policy_wrap p{
		font-size: 1rem;
	}

	.contact_form{
		margin-top: 50px;
	}
	.form_items{
		background-color: #e3f6e9;
	}
	.form_items fieldset{
		justify-content: space-between;
		align-items: flex-start;
		gap: 0;
	}
	.form_items .form_name{
		box-sizing: border-box;
		width: 290px;
		padding: 30px;
		margin: 0;
		font-size: 1.125rem;
	}
	.form_items .required{
		margin-left: 10px;
		font-size: 1rem;
	}
	.form_items .form_parts{
		background-color: #fff;
		box-sizing: border-box;
		width: calc(100% - 290px);
		margin: 0;
		padding: 24px 30px;
		font-size: 1rem;
	}
	.contact_form .acceptance_btn{
		font-size: 1rem;
	}
	.contact_form .submit_btn_wrap{
		gap: 20px 40px;
		max-width: 100%;
		margin: 60px auto 0;
		padding: 0 40px;
	}
	.contact_form .submit_btn_wrap .item{
		width: max-content;
	}
	.contact_form .submit_btn_wrap .more_btn .wrap{
		min-width: 330px;
		padding: 19px 60px;
	}

	.contact_form fieldset input{
		font-size: 0.875rem;
	}
	.contact_form fieldset input[type=text],
	.contact_form fieldset input[type=email],
	.contact_form fieldset textarea {
		padding: 10px;
		font-size: 0.875rem;
	}
	.contact_form fieldset .form_parts label{
		display: inline-block;
		width: max-content;
		margin: 10px 0;
		padding-right: 40px;
		font-size: 0.875rem;
	}
	.contact_form input[type=radio],
	.contact_form input[type=checkbox]{
		vertical-align: -1px;
	}

	.confirm fieldset{
		align-items: center;
	}

	/* CF7のCSSリセット */
	.contact_form .wpcf7-list-item{
		display: inline-block;
}
}

/* 送信完了 */
.complete{}
.complete_wrap{
	margin-top: 40px;
}
.complete_wrap h2{
	font-size: 1rem;
	color: rgb(var(--color_sub));
	font-weight: 500;
}
.complete_wrap p{
	margin: 20px 0 0;
	font-size: 0.875rem;
}
.complete_wrap .submit_btn{
	margin: 50px 0 0;
}
@media screen and (min-width: 769px) { /* PC用 メディアクエリー */
	/* 送信完了 PC */
	.complete{}
	.complete_wrap{
		margin-top: 100px;
	}
	.complete_wrap h2{
		font-size: 1.5rem;
	}
	.complete_wrap p{
		margin: 30px 0 0;
		font-size: 1rem;
	}
	.complete_wrap .submit_btn{
		text-align: center;
		margin: 100px auto 0;
	}
}