/* iOSでのデフォルトスタイルをリセット */

input, select, button {
  -webkit-appearance: none;
  appearance: none;
}

button[type="submit"],
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
button[type="submit"]::-webkit-search-decoration,
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
button[type="submit"]::focus,
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}



#form_1{
	text-align: center;
}

.exmsg{
	color:#870404;
	font-size:14px;
}
.formArea{
	width:100%;
	max-width:1000px;
	margin:0 auto;
	padding:30px 0;
}
.formArea h1{
	font-size:30px;
	font-weight:bold;
	margin-bottom:50px;
}
.formArea h1 span{
	margin-left:20px;
}
/*-------------------
 *
 * ------------------ */
.formTbl{
	width:100%;
	border-collapse:collapse;
	margin-bottom:80px;
	border-top:solid 1px #BBB4C6;
}
.formTbl caption{
	font-size:clamp( 17px , 2.2vw ,  20px);	
	font-weight:bold;
	text-align:left;
	margin-bottom:15px;
}
.formTbl th{
	color: #333;
	width: 245px;
	padding:10px 25px;
	text-align:left;
	vertical-align: middle;
	background:#DBD6E2;
	border-bottom:solid 1px #BBB4C6;
	font-weight:normal;
	position:relative;
}
.formTbl th span{
	position:absolute;
	display:inline-block;
	/*background:#e9737f;*/
	text-align:center;
	color:#870404;
	font-size:10px;
	padding:5px 5px;
	width:45px;
	top: 50%;
	left: 95%;
	transform: translateY(-50%) translateX(-95%);
	-webkit- transform: translateY(-50%) translateX(-95%);
	margin: auto;
	border-radius:4px;

}
.formTbl th span.nini{
	background:#337ab7;
}
.formTbl td{
	color: #333;
	padding: 25px 25px;
	vertical-align: middle;
	background:#f5f5f5;
	border-bottom:solid 1px #b6b6b7;
}
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea
{
    display: block;
    width: 100%;
    padding: 15px 10px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;	
	box-sizing:border-box;
}
select{
}
textarea{
	height:130px;
	padding:15px 10px;
}
.chklabel{
	display:block;
    font-size: 16px;
	padding:5px 0;
}
input[type="submit"]{
	border: none;
    font-size: 15px;
    font-weight: normal;
    padding: 15px 26px;
	background-color: #9d8148;	
	color:#fff;
}

input[type="submit"]:hover{
	opacity: 0.8;
}

/* -- */
.ziparea{
	display:flex;
	justify-content:left;
	flex-wrap:wrap;
}
.ziparea #zip{
	flex-basis:150px;
}
.ziparea input[name="zipBtn"]{
	flex-basis:150px;
	margin-left:10px;
}


.formError{
    position:static !important;
    margin: 5px 0 !important;
    display: block;
	color:#870404;
}

/* ----- */
.lblsLst{
	display:flex;
	flex-wrap:wrap;
	gap:5px 5px;
}
.lblsLst label{
	width:calc( (100% - 10px) / 3);
	font-size:15px;
	background:#fff;
	border-radius:5px;
	padding:5px;
	border:solid 1px #ccc;
}
/* ----- */

.fileuploadLst{
	display:flex;
	flex-wrap:wrap;
	gap:10px 0;
}
.fileuploadLst li{
	width:100%;
}

/* ----- */
.confirm{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.confirm__back{
	margin-right:15px;
}
.confirm__back input[type="submit"]{
	background:#727272;
}
.confirm__send input[type="submit"]{

}

.error-messages{
	padding:20px 0;
	color:#870404;
}

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

	.formArea h1{
		font-size:16px;
	}
	.formArea h1 img{
		display:block;
		margin-bottom:15px;
	}
	.formTbl{
		width:100%;
	}
	.formTbl th{
		display:block;
		width:100%;
		box-sizing:border-box;
	}
	.formTbl td{
		display:block;
		width:100%;
		box-sizing:border-box;
	}

}

