@charset "UTF-8";

/* !HTML5 elements
---------------------------------------------------------- */
html{
	background: #fff;
}
body,
.row textarea{
	font-family: 'Noto Sans Japanese', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
	-webkit-font-smoothing: antialiased;
	font-size: 20px;
	-webkit-text-size-adjust: none;
	line-height: 1.6;
}
body *{
	margin:0;
	padding:0;
}
form{
	line-height: 1.8;
	width: 80%;
	max-width: 40em;
	display: block;
	margin: 0 auto;
	padding: 1em 2em 3em;
}
form .paper{
	background: #fff6e8;
	box-shadow: #b9b9b9 0 0 1em;
	padding: 0 0em;
}
#register form .paper{
	background: #f0f7ff;
}
h1{text-align:center;margin: 1em 0 0;font-size: 1.7em;line-height: 1.5;background: #1c5d51;padding: 0.5em 0;color: #fff;text-shadow: 0 0.12em #000;}
h1 small{font-size: 0.5em;letter-spacing: 0.5em;}
p.lead{
	text-align:center;
	margin: 1.4em 0 1em;
}
h1 i{
	font-size: 0.7em;
	font-style: normal;
	margin: 0em 0 -1.6em;
	display: block;
}
p.min{
	text-align:center;
	margin: 0.4em 0 1em;
	font-size:0.8em;
}
::placeholder {
  color: #a097ff;
  font-size:0.85em;
}
:checked {
  margin-left: 25px;
  border: 1px solid blue;
}
.row{
	display:block;
	border-bottom: #c6c6c6 1px dashed;
	padding: 0.7em 0;
}
.row:last-of-type{
	border-bottom: none;
}
.row .tl{
	line-height: 1.5;
	display: inline-block;
	width: 23%;
	font-size: 0.85em;
	vertical-align: middle;
	white-space: nowrap;
	font-size: 0.7em;
	text-align: center;
}
.row .input{
	display: inline-block;
	width: 75%;
	vertical-align: middle;
	white-space: nowrap;
}
#register .row .input{
	white-space: normal;
	max-width:73%;
}
.row .tl span{
	background: #f40000;
	line-height:1;
	border-radius: 1em;
	padding: 0.2em 0.2em;
	font-size: 0.75em;
	vertical-align: middle;
	margin: 0.4em auto;
	display: block;
	color: #fff;
	width: 6.3em;
}
.row .tl label{
	display:inline-block;
	vertical-align:middle;
	font-weight: bold;
	color: #750000;
}
.row .tl span.option{
	background: #8385ff;
}
.row input, .row select, .row textarea{
	height: 1.8em;
	/* margin-bottom: 0.5em; */
	padding-left: 3px;
	font-size: 1em;
}
.row textarea{
	width: 98%;
	height: 4.2em;
	font-size: 0.9em;
	padding: 0.2em 0.4em;
	box-sizing: border-box;
}
.row.time .input{
	line-height: 0.6;
}
.row.time .input small{
	display:block;
	font-size: 0.8em;
	margin-left: 7em;
	margin-bottom: 0.7em;
}
.row.name input{
	width: 5.5em;
	font-size: 1em;
	margin: 0.25em 0;
}
.row.Gname input{
	width: 10em;
	font-size: 1em;
	margin: 0.25em 0;
}
.row.address select{
	margin:0.3em 0;
}
.row.address input{
	width: 80%;
	font-size: 1em;
	margin: 0.3em 0;
}
.row .zip input{
	width: 3.3em;
	margin: 0.3em 0.3em 0.3em;
}
.row.tel input{
	width: 4em;
	margin: 0 0.3em;
	font-size: 1em;
}
.row.address button{
	display:inline-block;
	padding: 0.2em 0.4em;
	vertical-align: middle;
}
.row .input label{
	color:#8f8f8f;
	font-size: 0.75em;
}
.row .input.radio input{
	display: inline-block;
	vertical-align: middle;
	width: 1.8em;
	height: 1.8em;
	margin: 0.2em 0.4em 0.2em 0em;
}
.row .input.radio label{
	color:#000;
	font-size: 0.9em;
	display: inline-block;
	vertical-align: middle;
	margin-right: 1em;
}
.row.name .input label{
	width: 2em;
	display:inline-block;
	text-align:  center;
	margin-right: 0.5em;
}
.row.address .input label{
	width: 4em;
	display:inline-block;
	margin-right: 0.1em;
	font-size: 0.7em;
	text-align: right;
}
.row.address .zip label{
	width: 1em;
}
.row.birthday select{
	font-size:1em;
}
.row.birthday .input label{
	margin-right: 0.3em;
}
.submit{
	text-align:center;
}
.submit button{
	display: inline-block;
	margin: 1.5em 1em 2em;
	font-size: 1.2em;
	padding: 0.2em 1em;
	border-radius: 0.5em;
	background: #d0d0d0;
}
@media screen and (min-width: 768px) {
	.forsp{
		display:none !important;
	}
}
@media screen and (max-width: 767px) {
	html,body{
		width: 100%;
		overflow-x:  hidden;
	}
	body {
		font-size: 10px;
		font-size: 4.27vw;
		position: relative;
		margin: 0;
	}
	form{
		line-height: 1.8;
		width: 22.4em;
		max-width: unset;
		margin: 0 auto;
		padding: 0 0em;
	}
	h1{
		font-size: 1.3em;
	}
    .lead{
		font-size: 1em;
	}
	.row .tl{
		width: 7.5em;
	}
	.row .input{
		width: 15em;
	}
	.row.time .input{
		margin: 1.2em 0 0 1.1em;
	}
	.row.time .input label{
		display:block;
		margin: 1.2em 0 -0.3em;
		width: 9em;
	}
	.row.time .input small{
		margin-left:0;
	}
	.row.address select,
	.row.address input{
		width: 12em;
		font-size: 1em;
		margin: 0.3em 0;
	}
	.row textarea{
		width: 15em;
		height: 5em;
		font-size: 1em;
	}
	.row .zip input{
		width: 3.3em;
		margin: 0.3em 0.2em 0.6em;
	}
	.row.address button{
		font-size:.82em;
	}
	
}