@charset "UTF-8";
/* CSS Document */


/*
01 form
========================================================================== */
/* General ===================== */
input,textarea,select {
	color: rgba(50,50,50,1);
	background-color: rgba(240,245,248,.9);
	border: 1px solid rgba(220,215,200,1);
	border-radius: initial;
	transition: .2s ease;
}
input,textarea { padding: 7px 10px; }
input:focus,textarea:focus,select:focus { background-color: rgba(255,255,255,1); }
textarea { min-height: 12.5em; }
label { letter-spacing: .04rem; }
select { height: 32px; padding: 0 3em 0 1em; position: relative; }
select option{ background-color: rgba(255,255,255,1); color: rgba(50,50,50,1); }
select::-ms-expand { display: none; }

.typeSelect {	position: relative; }
.typeSelect .wrap { display: inline-block; position: relative; }
.typeSelect .wrap:before,
.typeSelect .wrap:after {
	content: '';
	position: absolute;
	pointer-events: none;
	z-index: 3;
}
.typeSelect .wrap:before {
	width: 1.5em;
	height: calc(100% - 2px);
	background-color: rgba(75,75,75,.95);
	top: 1px;
	right: 1px;
}
.typeSelect .wrap:after {
	width: 3px;
	height: 3px;
	border-top: 2px solid rgba(255,255,255,1);
	border-right: 2px solid rgba(255,255,255,1);
	top: 50%;
	right: calc(.5em + 1.5px);
	transform: translate(0,-50%) rotate(135deg);
}

input[type=radio] { display: none; }
input[type=radio] + label { padding-top: 12px; }
input[type=radio] + label:not(:last-of-type){ margin-right: 1.5em; }
input[type=radio] + label > span {
	display: inline-block!important;
	position: relative;
	vertical-align: middle;
	width: 1em;
	height: 1em;
	box-sizing: border-box;
	background-color: rgba(240,245,248,.9);
	border: 1px solid rgba(220,215,200,1);
	border-radius: 50%;
}
input[type=radio]:checked + label > span::before {
	display: block;
	content: '';
	background-color: rgba(50,50,50,1);
	border-radius: 50%;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	transform-origin: center;
	transform: scale(.5);
}

:placeholder-shown { color: rgba(125,125,125,1); font-weight: 400; }
::-webkit-input-placeholder { color: rgba(125,125,125,1); font-weight: 400; }

.col100 { width: 100%; }
.col95 { width: 95%; }
.col90 { width: 90%; }
.col85 { width: 85%; }
.col80 { width: 80%; }
.col75 { width: 75%; }
.col70 { width: 70%; }
.col65 { width: 65%; }
.col60 { width: 60%; }
.col55 { width: 55%; }
.col50 { width: 50%; }
.col45 { width: 45%; }
.col40 { width: 40%; }
.col35 { width: 35%; }
.col30 { width: 30%; }
.col25 { width: 25%; }
.col20 { width: 20%; }
.col15 { width: 15%; }
.col10 { width: 10%; }
.col05 { width: 5%; }

.ratio10-90 dl dt { width: 10%; }
.ratio10-90 dl dd { width: 90%; }
.ratio15-85 dl dt { width: 15%; }
.ratio15-85 dl dd { width: 85%; }
.ratio20-80 dl dt { width: 20%; }
.ratio20-80 dl dd { width: 80%; }
.ratio25-75 dl dt { width: 25%; }
.ratio25-75 dl dd { width: 75%; }
.ratio30-70 dl dt { width: 30%; }
.ratio30-70 dl dd { width: 70%; }
.ratio35-65 dl dt { width: 35%; }
.ratio35-65 dl dd { width: 65%; }

.inner {
	width: calc(100% - 300px);
	margin: auto;
}
.inner hr {
	width: 100%;
	height: 1px; 
	background-color: rgba(220,215,200,1);
	margin: 35px 0;
}
.inner dl {
	display: flex;
	justify-content: flex-start;
}
.inner > dl + dl { margin: 25px 0 0 0; }
.inner dl dt,
.inner dl dd { position: relative; }
.inner dl dt {
	width: 25%;
	font-weight: 600;
	letter-spacing: .02rem;
	top: 12px;
}
.inner dl dt small { font-size: 12px; }
.inner dl.verReq {}
.inner dl.verReq dt { padding: 0 0 0 22px; }
.inner dl.verReq dt:before {
	content: '';
	width: 14px;
	height: 14px;
	background-image: url(/images/form/ico-req.svg);
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
}
.inner dl dd { width: 75%; }
.inner dl dd > i,
.inner dl dd > b { display: flex; align-items: center; }
.inner dl dd i {}
.inner dl dd > i + i { margin: 20px 0 0 0; }
.inner dl dd i small { margin: 0 0 0 20px; font-size: 12px; white-space: nowrap; }
.inner dl dd i span {
	display: flex;
	align-items: center;
}
.inner dl dd i > span + span { margin: 0 0 0 10px; }
.inner dl dd i sub { padding: 0 15px 0 7px; }
.inner dl dd i > sub + small { margin: 0 0 0 12px; }

.inner.verConfirm dl dt {
	margin: 0 0 5px 0;
	top: 0;
	line-height: 2;
}

.inner.verConfirm dl dd {
	line-height: 2;
}

.inner.verConfirm dl dd > i,
.inner.verConfirm dl dd > b {
	align-items: flex-start;
}

.inner.verConfirm dl.verReq dt:before {
	top: .5em;
}

/* has err */
.inner dl dd b {
	margin: 1.25em 0 .5em;
	padding: 0 0 0 2em;
	color: rgba(225,0,0,1);
	font-size: 12px;
	position: relative;
}
.inner dl dd b:before {
	content: '';
	width: 13px;
	height: 13px;
	background-image: url(/images/form/ico-cau.svg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	/*top: .25em;*/
	left: 0;
}
.inner dl dd > b + i { margin: 20px 0 0 0; }
.inner dl dd p {
	margin: 1em 0 0 0;
	font-size: 12px;
	line-height: 1.9;
	letter-spacing: .02rem;
	text-align: left;
}
.inner dl dd p small { font-size: 11px; }

/* confirm */
.inner.confirm {}
.inner.confirm dt { top: 0; }
.inner.confirm dl dd i { text-align: left; letter-spacing: .05rem; }
.inner.confirm dl dd > i + i { margin: .25em 0 0 0; }
.inner.confirm dl dd i small { margin: 0 0 0 .5em; }
.inner.confirm dl dd i span {
	margin: 0 0 0 2.5em;
	position: relative;
}
.inner.confirm dl dd i span:before {
	content: '';
	width: 10px;
	height: 1px;
	background-color: rgba(255,255,255,1);
	position: absolute;
	top: 1em;
	left: -1.75em;
}

/* Layout ===================== */
.notes {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin: 0 0 3.75em 0;
}
.notes i {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	font-size: 12px;
	letter-spacing: .1rem;
	text-align: center;
}
.notes b { margin: 2em 0 0 0; }
.notes b a { font-size: 13px; letter-spacing: .06rem; }
.notes > i + i, .notes > b + i { margin: 2em 0 0 0; }
.notes em {
	width: 15px;
	height: 15px;
	margin: 0 .35em 0 0;
	position: relative;
	top: -1px;
}
.notes em img { width: 100%; }


/* Button ===================== */
.inner div.button {
	display: flex;
	align-items: center;
	margin: 40px 0 55px;
}
.inner div.button > * {
	display: inline-flex;
	justify-content: center;
	width: 50%;
	color: rgba(255,255,255,1);
	font-weight: 600;
	line-height: 1;
	padding: 22px 0;
	border-radius: 7px;
	white-space: nowrap;
	position: relative;
}
.inner div.button > *:before,
.inner div.button > *:after {
	content: '';
	position: absolute;
	top: 50%;
	transition: .3s ease;
}
.inner div.button > *:before {
	width: 30px;
	height: 1px;
	background-color: rgba(255,255,255,1);
}
.inner div.button > *:after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 7px;
	border-color: transparent transparent transparent rgba(255,255,255,1);
	transform: translate(0,-50%);
}
.inner div.button .next { background-color: rgba(25,120,210,1); }
.inner div.button .back {	background-color: rgba(75,75,75,1); }
.inner div.button .next:before, .inner div.button .next:after { right: 5%; }
.inner div.button .next:hover:before,.inner div.button .next:hover:after { right: 3.5%; }
.inner div.button .back:before, .inner div.button .back:after { left: 5%; }
.inner div.button .back:hover:before,.inner div.button .back:hover:after { left: 3.5%; }
.inner div.button .back:after { transform: translate(0,-50%) scaleX(-1); }
.inner.entry div.button { justify-content: center; }
.inner.verConfirm div.button { justify-content: space-between; }
.inner.verConfirm div.button > * { width: 35%; }

/* err */
.errButton {
	display: flex;
	justify-content: center;
	align-items: center;
}
.errButton a {
	padding: .75em 12.5em;
	font-size: 12px;
	letter-spacing: .08rem;
	border: 1px solid rgba(255,255,255,1);
}

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

.inner { width: calc(100% - 150px); }
.inner dl {	flex-direction: column; }
.inner dl dt {
	width: 100%;
	margin: 0 0 10px 0;
	top: 0;
}
.inner dl dd { width: 100%; }


}


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


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

.typeSelect small { display: inline-block!important; }
.typeSelect .wrap:before { height: calc(100% - 2px); top: 1px; }

.col100 { width: 100%; }
.col95 { width: 100%; }
.col90 { width: 100%; }
.col85 { width: 100%; }
.col80 { width: 100%; }
.col75 { width: 100%; }
.col70 { width: 100%; }
.col65 { width: 100%; }
.col60 { width: 100%; }
.col55 { width: 100%; }
.col50 { width: 100%; }
.col45 { width: 100%; }
.col40 { width: 100%; }
.col35 { width: 100%; }
.col30 { width: 100%; }
.col25 { width: 100%; }
.col20 { width: 100%; }
.col15 { width: 100%; }
.col10 { width: 100%; }
.col05 { width: 100%; }

.inner { width: calc(100% - 50px); }
.inner dl dd p {
	font-size: 11px;
	line-height: 1.8;
}
.inner dl dd i {
	flex-wrap: wrap;
}
.inner dl dd i small {
	display: block;
	margin: 5px 0 0 0;
	font-size: 10px;
}
.inner.entry div.button { width: 100%; }
.inner div.button > * {
	width: 100%;
	padding: 19px 0;
}
.inner div.button > *:before { width: 20px; }
.inner.verConfirm div.button > * { width: 47.5%; }


}
