/* Contents
-------------------------------------------*/

.contact .sec:first-child{
	text-align: justify;
}

#mailform{
	margin: min(150px,15%) 0;
	background-color: #fff;
}
#mailform .sec_head{
	width: 35%;
}
#mailform .sec_form{
	width: 65%;
}

/* Form     ---*/

#mailform .form{
	width: 100%;
	text-align: left;
}

/* form reset css */
input,
button{
	border: none;
	outline: none;
	border-radius: 0;
}
.form dd label{
	padding: 0;
	margin: 0;
}
.form dd label input{
	width: auto;
	padding: 0;
	border: 0;
	margin: 0;
}

.form dl,
.form input,
.form textarea{
	border: none;
	font-size: clamp(14px,2.15vw,16px);
}
.form dl{
	width: 100%;
	padding: 3% 0 5%;
	border-bottom: 1px solid #ccc;
}
.form dl:nth-child(10){
	border-bottom: none;
}
.form dt,
.form dd{
	width: 100%;
	text-align: left;
}
.form dt{
	padding-bottom: 2%;
}
.form dt p{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}
.form dt p::before{
	content: '●';
	font-size: 50%;
	padding-right: 4px;
	color: #aaa;
}
.form .hissu dt p::before{
	color: var(--orange);
}
.form .hissu dt p span{
	width: 70px;
	height: 34px;
	line-height: 32px;
	border-radius: 17px;
	color: var(--orange);
	text-align: center;
	border: 1px solid var(--orange);
	margin-left: auto;
	font-size: clamp(12px,1.5vw,14px);
}
.form dd{
	position: relative;
}
.form dd .text{
	padding-bottom: 3%;
	font-size: clamp(12px,1.5vw,14px);
}
.form dd .text a{
	color: var(--orange);
}
.form dd .text a:hover{
	opacity: 1;
	text-decoration: underline;
}
.form dd input,
.form dd textarea{
	box-sizing: border-box;/*横幅ぴったりにする*/
	width: 100%;
	padding: 20px;
	border-radius: 10px;
	background-color: #f2f2f2;
}

/* checkbox_btn */

.form dd label{
	display: inline-block;
	padding: 16px 30px;
	margin: 0 10px 10px 0;
	border-radius: 10px;
	background-color: rgba(var(--orange-rgb),0.1);
}
.form dd label input{  /* チェックボックスの横並び */
	width: auto;
	border: 0;
	padding: 0;
	margin-right: 6px;
}

/* #acceptance-btn */

.form #check_acceptance{
	margin-right: 6px;
}

/* send_btn */

.form .send input{
	width: 100%;
	height: 90px;
	margin-top: 2%;
	border-radius: 10px;
	transition: all .2s;
	color: #fff;
	background-color: var(--font-black);
}
.form .send input:hover{
	background-color: var(--green);
}

/* Error message */

.wpcf7-not-valid-tip,
.wpcf7-response-output{
	display: inline-block;
	color: red;
	font-size: 90%;
	margin-top: 10px;
	padding: 0 10px;
	border-radius: 2px;
	background-color: #ffeeee;
}
/* フォーム下部に表示されるエラーメッセージ */
.wpcf7-response-output{
}
/* フォーム上部に表示されるエラーメッセージ */
.screen-reader-response {
  display: none;
}

/* プレースホルダー */
:-moz-placeholder{ color: #bbb;}
:-ms-input-placeholder{ color: #bbb;}
::-webkit-input-placeholder{ color: #bbb;}


@media screen and (max-width: 650px){
	
	/* Form     ---*/
	
	#mailform .sec_head,
	#mailform .sec_form{
		width: 100%;
	}
	#mailform .form{
		padding-top: 10%;
	}
	.form dl{
		padding: 0 0 5%;
		border-bottom: none;
	}
	.form .hissu dt p span{
		width: 60px;
		height: 30px;
		line-height: 28px;
		border-radius: 15px;
	}
	.form dd .text{
		padding-bottom: 5%;
	}
	
	/* checkbox_btn */
	
	.form dd label{
		padding: 12px 18px;
	}
	
	/* send_btn */
	
	.form .send input{
		height: 60px;
		margin: 5% 0;
	}
}


#tel .sec_head{
	width: 30%;
}
#tel .sec_cont__in{
	width: 60%;
	text-align: justify;
}
#tel .sec_cont__in p{
	padding-left: 2%;
}
#tel .sec_cont__in .tel_number{
	font-weight: bold;
	letter-spacing: .025em;
	font-size: clamp(27px,4.15vw,42px);
}
#tel .sec_cont__in .tel_number span{
	font-weight: normal;
	font-size: 60%;
}
#tel .sec_cont__in .hour::before{
	content: '●';
	font-size: 50%;
	vertical-align: 20%;
	padding-right: 4px;
}

@media screen and (max-width: 650px){
	
	#tel .sec_head,
	#tel .sec_cont__in{
		width: 100%;
	}
	#tel .sec_cont__in .h3_tit{
		margin-bottom: 3%;
	}
}