@charset "utf-8";

.wpcf7-list-item {
	margin: 0 0 1rem 0 !important;
}

.wpcf7-not-valid-tip {
	margin-top: 1rem !important;
	margin-bottom: 2rem !important;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #dc3232 !important;
	display: flex;
	justify-content: center;
	color: #dc3232;
	padding: 1rem;
}

/*-----------------------------------------*/
/* 改行させない */

.mailform_list li .td .privacy +  .flex_line p{
	width: 100%;
}

/*-----------------------------------------*/
/* オートコンプリート機能の背景色を無効化 */

input:-webkit-autofill{
	box-shadow: 0 0 0 1000px white inset !important;
}

/*-----------------------------------------*/
/* ローディングアイコン */

/*　削除する場合　*/
/*
.wpcf7-spinner {
	display: none!important;
}
*/
/*　位置調整する場合　*/
.wpcf7-spinner {
	top: 10%;
	left: 40%;
}


/*-----------------------------------------*/

.mailform_area{
	margin-left: auto;
	margin-right: auto;
}

/*-----------------------------------------*/

.contact_top_text{
	margin-bottom: 4rem;
	text-align: center;
	line-height: 2;
}

.form-control {
	background-color: #fff;
	/*border: none;*/
	border: 0.1rem solid #ccc;
}

@media screen and ( max-width: 767px ){

	.contact_top_text{
		font-size: 1.4rem;
	}

}

@media screen and ( max-width: 559px ){

	.contact_top_text{
		text-align: left;
	}

}

/*-----------------------------------------*/

/* リスト */

.mailform_list{
	max-width: 100rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10rem;
}

.mailform_list li{
	width: 100%;
	display: flex;
	border-bottom: 0.1rem solid #ccc;
	padding-top: 3rem;
	padding-bottom: 3rem;
	justify-content: space-between;
	position: relative;
}

.mailform_list li::before{
	content: "";
	border-bottom: 0.2rem solid #707070;
	left: 0;
	bottom: -0.1rem;
	width: 25%;
	position: absolute;
}

.mailform_list li .th{
	width: 25%;
	line-height: 1.5;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.mailform_list li .th > div{
	display: flex;
}

.mailform_list li .th h4{
	line-height: 1.5;
	font-size: 1.6rem;
	font-weight: bold;
}

.mailform_list li .th small{
	color: #fff;
	/*border-radius: 5rem;*/
	width: 6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #0052BE;
}

.mailform_list li .td{
	width: 70%;
	line-height: 1.5;
}

.mailform_list li .td .box{
	margin-bottom: 2rem;
}

.mailform_list li .td .box.bottom{
	margin-bottom: 0;
}

.mailform_list li .td h5{
	font-size: 1.6rem;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
	border-bottom: 0.1rem dotted #ccc;
}

.mailform_list li .td h6{
	font-size: 1.6rem;
	margin-bottom: 1.5rem;
}

.mailform_list li .td hr{
	margin-bottom: 3rem;
}

.mailform_list li .td .flex_line{
	display: flex;
	align-items: start;
}

.mailform_list li .td .flex_line.space-between{
	justify-content: space-between;
}

.mailform_list li .td .flex_line.wrap{
	flex-wrap: wrap;
}

.mailform_list li .td .flex_line.wrap span{
	margin-top: 0;
	/*margin-bottom: 1rem;*/

	width: 33%;/*202502/06 追加*/
	margin-bottom: 2rem;
}

.mailform_list li .td .flex_line.wrap span:nth-child(4),
.mailform_list li .td .flex_line.wrap span:nth-child(5),
.mailform_list li .td .flex_line.wrap span:nth-child(6){
	margin-bottom: 0;
}

.mailform_list li .td .name_line .item-box{
	width: 48%;
}

@media screen and ( max-width: 820px ){

	.mailform_list {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.mailform_list li::before {
		width: 30%;
	}

	.mailform_list li .th {
		width: 30%;
	}

	.mailform_list li .td {
		width: 65%;
	}

	.mailform_list li .td .flex_line.wrap span {
		width: 50%;
	}

	.mailform_list li .td .name_line .item-box{
		width: 47%;
	}

}

@media screen and ( max-width: 559px ){

	.mailform_list{
		margin-bottom: 5rem;
	}

	.mailform_list li{
		flex-wrap: wrap;
		padding-top: 3rem;
	}

	.mailform_list li:first-child{
		padding-top: 0rem;
	}
	
	.mailform_list li .th{
		width: 100%;
		padding: 0 0 1rem;
		/*background: #eee;*/
		margin-bottom: 1rem;
		border-bottom: 0.1rem;
	}
	
	.mailform_list li .td{
		width: 100%;
	}
	
	.mailform_list li .td .flex_line{
		flex-wrap: wrap;
	}


	.mailform_list li .td .flex_line.wrap span {
		width: 100%;
		margin-bottom: 1rem;
	}

	.mailform_list li .td .flex_line.wrap span:nth-child(4),
	.mailform_list li .td .flex_line.wrap span:nth-child(5){
		margin-bottom: 1rem;
	}

	.mailform_list li .td .flex_line.wrap span:nth-child(6){
		margin-bottom: 0;
	}

}


/* ウォーターマーク */

::placeholder {
	color: #ccc !important;
}

@media screen and ( max-width:700px ){

}


/* エラー表記 */

span.error{
	white-space: wrap;
	/*color: #fff980 !important;*/
	font-size: 1.4rem;
	margin-left: 1rem;

	min-width: 12rem;
	margin-right: 1rem;
}

@media screen and ( max-width: 559px ){

	span.error{
		margin-top: 0.5rem;
		margin-left: 0rem;
		margin-bottom: 1rem;
	}

}


/* 注釈 */

.mailform_list li .td .caution{
	font-size: 1.3rem;
	margin-top: 1rem;
}

/* プライバシーポリシーコメント */

.mailform_list li .td .privacy{
	font-size: 1.4rem;
	margin-bottom: 2rem;
}

.mailform_list li .td .privacy a{
	text-decoration: underline;
	color: #2a2a2a;
}

/* submitボタン */

.contact_bt_form{
	display: flex;
	justify-content: center;
	margin-bottom: 0;
}

.contact_bt_form .btn{
	font-size: inherit;
	padding: 1rem 2rem;
	margin-left: 1rem;
	margin-right: 1rem;
	width: 32rem;
	height: 7rem;

	display: flex;
	justify-content: center;
	align-items: center;

	transition: .5s;
	background: #0052be;
}

.contact_bt_form .btn.btn-dark{
	background-color: #0052BE;
	border-color: #fff;
	color: #fff;
	/*border-radius: 0.6rem;*/
}

.contact_bt_form .btn.back{
	background-color: #999;
	border-color: #fff;
	color: #fff;
}

.contact_bt_form .btn-outline-dark{
	border-color: #fff;
	color: #fff;
}

.btn-outline-dark:not(:disabled):not(.disabled):active{
	color: #fff;
	background-color: #fff;
	border-color: #fff;
}

.contact_bt_form .btn-outline-dark:hover {
	background-color: #434343;
}

@media screen and ( max-width: 559px ){

	.contact_bt_form {
		flex-direction: column-reverse;
	}

	.contact_bt_form .btn {
		margin-left: auto;
		margin-right: auto;
	}

}

/*-----------------------------------------*/

/* input */

input[type="text"],
input[type="email"],
textarea {
	-webkit-transition: background-position .15s cubic-bezier(.8, 0, 1, 1),
	-webkit-transform .25s cubic-bezier(.8, 0, 1, 1);
	font-size: 1.6rem;
	padding-left: 1.2rem;
	padding-right: 1.2rem;
	transition: .5s !important;
}
input[type="text"],
input[type="email"]{
	height: 4rem;
	margin-right: 1rem;
	/*color: #fff;*/
}


input[type="text"]:active,
input[type="email"]:active,
textarea:active {
	/*-webkit-transform: scale(1.05);*/
	-webkit-transition: -webkit-transform .1s cubic-bezier(0, 0, .2, 1);
}

input[type="text"]#tel{ width: 40%; }
input[type="email"]#mail{ width: 80%; }
input[type="text"]#post{ width: 30%; margin-left: 1rem; }
input[type="text"]#number{ width: 40%; }

@media screen and ( max-width: 559px ){

	input[type="text"],
	input[type="email"]{
		margin-right: 0rem;
		margin-bottom: 1rem;
	}

	input[type="text"]#tel{ width: 80%; }
	input[type="email"]#mail{ width: 100%; }
	input[type="text"]#post{ width: 50%; }
	input[type="text"]#number{ width: 80%; }

}

/* textarea */

textarea.form-control {
	font-size: 1.6rem;
	/*color: #fff;*/
}


/* label */

.mailform_list li .td label{
	/*margin-right: 4rem;*/
	margin-right: 0;
	margin-bottom: 0;
}

.mailform_list input[type="radio"]:checked  + span{
	color: #d71619;
}


/* ラジオボタン */

.mailform_list input[type="radio"] {
	position: relative;
	margin: 0 0.5rem 0 0;
	cursor: pointer;
	width: 2.2rem;
	height: 2.2rem;
	border-radius: 0.3rem;
	border: none;
	vertical-align: middle;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.mailform_list input[type="radio"]:checked:before {
	transform: scale(1, 1);
}

.mailform_list input[type="radio"]:before {
	position: absolute;
	z-index: 1;
	top: 2px;
	left: 2px;
	width: 1.7rem;
	height: 1.7rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: scale(0, 0);
	transform: scale(0, 0);
	border-radius: 50%;
	background: #d71619;
}

.mailform_list input[type="radio"]:after {
	position: absolute;
	top: -2px;
	left: -2px;
	width: 2.5rem;
	height: 2.5rem;
	content: '';
	border: 0.2rem solid #ced4da;
	border-radius: 50%;
	background: #ffffff;
}

.mailform_list input[type="radio"]:checked:after {
	border: 0.2rem solid #d71619;
}


/* チェックボックス */

.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0 !important;
}

.mailform_list input[type="checkbox"]:checked  + span{
	color: #0152be;
	font-weight: bold;
}


.mailform_list input[type="checkbox"] {
	position: relative;
	margin: 0 0.5rem 0 0;
	cursor: pointer;
	width: 2.2rem;
	height: 2.2rem;
	border-radius: 0.3rem;
	border: none;
	vertical-align: middle;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inherit;
}

.mailform_list input[type="checkbox"]:checked:before {
	transform: scale(1, 1);
}

.mailform_list input[type="checkbox"]:before {
	position: absolute;
	z-index: 1;
	top: 1px;
	left: 2px;
	width: 1.7rem;
	height: 1.7rem;
	border-radius: 0.2rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: scale(0, 0);
	transform: scale(0, 0);
	background: #0152be;
}

.mailform_list input[type="checkbox"]:after {
	position: absolute;
	top: -3px;
	left: -2px;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 0.2rem;
	content: '';
	border: 0.2rem solid #ced4da;
	background: #fff;
}

.mailform_list input[type="checkbox"]:checked:after {
	border: 0.2rem solid #0152be;
}

/*-------------*/


.modal-header{
	padding: 2rem 2rem;
}


@media screen and ( max-width: 559px ){



}

/*-----------------------------------------*/

.form-control:focus {
	box-shadow: 0 0 0 0.2rem rgb(127 127 127 / 30%);
	background-color: #fff;
	/*border-color: #f7f7f7;*/
	border-color: #ccc;
	/*color: #fff;*/
}

/*-----------------------------------------*/

[type=button]:hover, [type=reset]:hover, [type=submit]:hover {
	opacity: .7;
}

/*-----------------------------------------*/

.wpcf7-character-count{
	font-family: "Poppins", sans-serif;
	color: #cccccc;
}

/*-----------------------------------------------------------------------------*/
/*IEハック*/
/*
_:-ms-lang(x)::-ms-backdrop, .xxxxxxxxxxxx{ padding: 1rem 1rem 0.5rem ; }
*/

/*-----------------------------------------------------------------------------*/
/*firefoxハック*/
/*
@-moz-document url-prefix() {
	.xxxxxxxxxxxx{
		width: 48%;
	}
}
*/

/*-----------------------------------------------------------------------------*/
/*Safariハック*/
/*
_::-webkit-full-page-media, _:future, :root .xxxxxxxxxxxx {

}
*/
/*placeholder表示ズレ対策*/
_::-webkit-full-page-media, _:future, :root .mailform_list input::-webkit-input-placeholder {
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
}
_::-webkit-full-page-media, _:future, :root .mailform_list input:-ms-input-placeholder {
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
}
_::-webkit-full-page-media, _:future, :root .mailform_list input::-moz-placeholder {
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
}
