@charset "utf-8";




/* カスタム部分フォーム画面 form-box

---------------------------------------------------------------*/

.form-box  {
	margin:0 auto 3rem auto;
	line-height:1.5;
    border-bottom:solid 2px #0FF;
}

/* Chrome, Safari, Edge */

input::-webkit-outer-spin-button,

input::-webkit-inner-spin-button  {
  margin: 0;
  -webkit-appearance: none;
}

/* Firefox */

input[type=number]  {
  -moz-appearance: textfield;
}



.form-box input[type="text"],

.form-box input[type="number"],

.form-box textarea,

.form-box select

  {
	/*margin:10px 0;*/

	padding:5px;
	line-height:1.5;
    border:solid 2px #0FF;


	border-radius: 3px;
	box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.4);
}


.form-box legend  {
	margin-bottom:10px;
}



.form-box input:focus,
.form-box textarea:focus  {
    border:solid 2px #EEA34A;
}




.form-box label  {
	margin:10px 0;
/*

	margin-bottom:10px;
*/

	display:inline-block;
}


/* checkbox + radio ----------------------------------------------*/

.form-box input[type="checkbox"],

.form-box input[type="radio"]  {
  opacity:0;
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
}



.form-box input[type="checkbox"]:focus + span::before,

.form-box input[type="radio"]:focus + span::before  {
  border-color: #0bd;
}



.form-box input[type="checkbox"] + span::before,

.form-box input[type="radio"] + span::before  {
  display: inline-block;
  content: '';
  width: 1.2rem;
  height: 1.2rem;
  border: 2px solid #ccc;
  border-radius: 5px;
  margin: 0 0.5rem -0.3rem 0;
}



/* checkbox ----------------------------------------------*/



.form-box input[type="checkbox"]:checked + span::before  {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpolyline fill='none' stroke='%230bd' stroke-width='3' points='2,7.3 7.3,12.7 18,2 '/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 0 2px;
}


/* radio ----------------------------------------------*/

.form-box input[type="radio"] + span::before  {
  border-radius: 100% !important;
}



.form-box input[type="radio"]:checked + span::before  {
  border-width: 2px;
  background:#0CF;
}


.form-box dt  {
	font-weight:bold;
	color:#0b880b;
}



.required  {
	border:1px solid #F00;
	color:#FF0000;
	padding:3px 7px;
	margin-right:14px;
}



.form-box dd  {
	padding:20px 0;
}



@media only screen and (min-width: 768px), print  {
.form-box  {
}



.form-box dt  {
	padding:20px 0px;
	display:inline-block;
	float:left;
	width:17em;
	clear:both;
	border-top:2px solid #A7B4C1;
}



.form-box dd  {
	margin-left: 17em;
	border-top:2px solid #A7B4C1;
}



.form-box .input4970  {
	width:59% !important;
}



.form-box textarea  {
	width:95%;
}

}



@media only screen and (max-width: 480px)  {
.form-box  {
	width:99%;
}



.form-box dt  {
	text-align:left;
	padding-top:15px;
	padding-bottom:10px;
	border-top:2px solid #A7B4C1;
}



.form-box .input4970  {
	width:95% !important;
}



.form-box textarea  {
	width:95%;
	margin: 0;
}

}


/* btn-set -------------------- */

.btn-set  {
}



.btn-set input[type="button"]  {
	border:4px solid #3CC;
	background:#FFFFFF;
	border-radius:8px;
	padding:10px 20px;
	font-size:1.4em;
	font-weight: bold;
	cursor: pointer;
	  color: #333;
}



.btn-set input[type="submit"]  {
	border:4px solid #328f3c;
	border-radius:8px;
	background:#328f3c;
	color:#FFFFFF;
	font-weight:bold;
	font-size:1.3em;
	padding:20px 40px;
	margin:30px;
	cursor: pointer;
}




.btn-set input:hover  {
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;
}



/* デフォルト部分

---------------------------------------------------------------*/

.errMsg  {
	margin-left: 1em;
	padding-bottom: 1px;
	display: block;
	line-height: 1.4;
	text-indent: -.9em;
}



.formError  {
	padding-bottom: 13px;
	display: block;
	position: relative;
}

.fixeds  {
	padding-bottom: 0;
}



	.formError .formErrorClose  {
		border: solid #0b880b 2px;
		border-radius: 9px 9px 9px 9px;
		-moz-border-radius: 9px 9px 9px 9px;
		-webkit-border-radius: 9px 9px 9px 9px;
		display: block;
		width: 23px;
		height: 23px;
		position: absolute;
		top: -7px;
		right: -9px;
		color: #efefef;
		background: #0b880b;
		font-weight: bold;
		text-align: center;
		line-height: 1;
		cursor: pointer;
		box-shadow: 1px -1px 3px #888;
		-moz-box-shadow: 1px -1px 3px #888;
		-webkit-box-shadow: 1px -1px 3px #888;
		_z-index:2;
	}


	.formError .formErrorClose:hover  {
		background: #0b880b;
	}


	.fixeds .formErrorClose  {
		display: none;
	}




	

	.formError .formErrorContent  {
		border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		padding: 6px 10px;
		position:relative;
		color: #fff;
		background: #0b880b;
		border: 2px solid #0b880b;
		box-shadow: 0px 0px 6px #888;
		-moz-box-shadow: 0px 0px 6px #888;
		-webkit-box-shadow: 0px 0px 6px #888;
		_z-index:1;
	}


	.fixeds .formErrorContent  {
		margin-top: .5em;
		border-radius: 0;
		-moz-border-radius: 0;
		-webkit-border-radius: 0;
		background: #003399;
		box-shadow: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
	}


	.fadeOut  {
		opacity: .2;
		filter: alpha(opacity=20);
	}


	

	.formError .formErrorArrow  {
		width: 15px;
		height: 15px;
		position: absolute;
		bottom: 0;
		left: 20px;
		_z-index:0;
		display:none;
	}


	.fixeds .formErrorArrow  {
		display: none;
	}


	.fixeds .formErrorContent:before  {
		content: "▲";
		color: #003399;
		position: absolute;
		left: 7px;
		top:-22px;
		font-size:1.5em;
		margin-top: -2px\9;
	}


	.formError .formErrorArrowBottom  {
		margin: -6px;
		top: 0;
	}


	.fixeds .formErrorArrowBottom  {
		display: none;
	}


	

		.formError .formErrorArrow div  {
			margin: 0 auto;
			display: block;
			height: 1px;
			background: #0b880b;
			line-height: 0px;
			font-size: 0px;
			box-shadow: 0px 2px 3px #888;
			-moz-box-shadow: 0px 2px 3px #888;
			-webkit-box-shadow: 0px 2px 3px #888;
		}


			.formError .formErrorArrowBottom div {
				box-shadow: none;
				-moz-box-shadow: none;
				-webkit-box-shadow: none;
			}


			

		.formError .formErrorArrow .line10  {
			width: 19px;
		} 

		.formError .formErrorArrow .line9  {
			width: 17px;
		} 

		.formError .formErrorArrow .line8  {
			width: 15px;
		} 

		.formError .formErrorArrow .line7  {
			width: 13px;
		} 

		.formError .formErrorArrow .line6  {
			width: 11px;
		} 

		.formError .formErrorArrow .line5  {
			width: 9px;
		} 

		.formError .formErrorArrow .line4  {
			width: 7px;
		} 

		.formError .formErrorArrow .line3  {
			width: 5px;
		} 

		.formError .formErrorArrow .line2  {
			width: 3px;
		}


		.formError .formErrorArrow .line1 {
			width: 1px;
		}



/*-- 20210408 --*/

pre  {
	white-space: pre-wrap ;
}

