.section {
	position: relative;
	padding: 20px;
	border-bottom: 1px solid #dddddd;
}
.extra {
	margin-right: 260px;
	box-sizing: border-box;
	-moz-box-sizing: border-box; /*Firefox 1-3*/
	-webkit-box-sizing: border-box; /* Safari */
	box-shadow: 1px 1px 5px #dddddd;
	margin-top: 25px;
}
.extra {
	border: 1px solid #dddddd\0/;
}

div.rform {
	width: 900px;
	position: relative;
	padding: 15px 25px 25px 245px;
	box-sizing: border-box;
	-moz-box-sizing: border-box; /*Firefox 1-3*/
	-webkit-box-sizing: border-box; /* Safari */
	box-shadow: 1px 1px 5px #dddddd;
}
div.rform {
	border: 1px solid #dddddd\0/;	
}

h1.header {
	font-size: 170%;
	margin: 25px 0 17px 5px;
	font-weight: 400;
}
div.rform form div {
	margin-bottom: 15px;
	min-height: 25px;
}
div.rform form div span {
		position: absolute;
		display: inline-block;
		left: 30px;
		margin-top: 4px;
		line-height: 24px;
}
div.rform div.utype span {margin-top: 0px;}
div.rform div.utype span:after {content:':';}
div.rform form div label {
	margin-right: 50px;
	margin-left: 5px;
}
div.rform div.utype {
	
	font-size: 150%;
	margin-bottom: 0;
	color: #424d5a;
}
.fr {margin-top: 25px;}
div.rform div.utype .radio:not(checked) + label:before{top: 6px;}
div.rform div.utype .radio:not(checked) + label:after{top: 9px;}
div.rform div.birthday select {margin-right: 3px;}
div.rform div.birthday select[name="bday"] {width: 40px !important;}
div.rform div.birthday select[name="bmonth"] {width: 90px !important;}
div.rform div.birthday select[name="byear"] {width: 65px !important;}

div.cn {position: relative;}
div.cn div input[type="text"], div.cn div input[type="password"] {width: 306px !important;}

div.rform input[type="submit"]{
	display: block;
	border: none;
	margin-left: 70px;
	margin-top: 40px;
	width: 285px;
	height: 45px;
	background-color: #11549c;
	color: #ffffff;
	text-align: center;
	line-height: 44px;
	text-decoration: none;
	font-size: 120%;
	font-weight: 500;
	cursor: pointer;
}
div.rform input[type="submit"]:hover {
	color: #ffffff;
	background-color: #d65503;
	-moz-transition: background-color 0.4s 0.1s ease;
	-o-transition: background-color 0.4s 0.1s ease;
	-webkit-transition: background-color 0.4s 0.1s ease;
	transition: background-color 0.4s 0.1s ease;
}

div.cn div.cpt {
	position: absolute;
	bottom: -18px;
	right: -3px;
	width: 306px;
	height: 80px;
}
div.rform form div.cn span {
	left: -215px;
}
.rlogin {
	box-sizing: border-box;
	-moz-box-sizing: border-box; /*Firefox 1-3*/
	-webkit-box-sizing: border-box; /* Safari */
	padding: 8px;
	font-size: 110%;
	font-weight: 400;
	line-height: 140%;
	border-left: 2px solid #4db216;
	margin-bottom: 18px;
}
.rlogin a {
	margin-left: 5px;
	font-size: 115%;
}
.udsc {
	padding: 5px 15px 15px 15px;
	margin: 0 0 15px -232px;
	line-height: 140%;
	border-left: 2px solid #4db216;	
}
.udsc p {margin-top: 10px;}
.udsc p.rinfo {font-size: 90%;}
.nudsc {
	padding: 15px;
	margin: 0 0 15px -230px;
	font-size: 120%;
}
.ctype {margin-bottom: 0 !important;}
.ctype span {
	margin-top: -4px !important;
}	
.ctype div, .utype div {
	display: inline-block;
	margin-bottom: 5px !important;
}
.errs {margin-left: -212px;}
.errs ul {margin-left: -20px;}

.bn {
	padding: 10px;
	overflow: hidden;
}
.m-hor-bn {
	text-align: center;
	font-size: 90%;
}

@media (max-width: 970px) {
	div.rform {
		width: 100%;
		padding-right: 15px;
		padding-left: 180px;
	}
	.errs {margin-left: -147px;}
	.nudsc, .udsc {margin-left: -165px;}
	div.rform form div.cn span {left: -150px;}
	div.cpt {
		position: relative !important;
		left: 0;
		top: 0;
	}
	div.cn div input[type="text"], div.cn div input[type="password"] {width: 303px !important;}
	div.rform input[type="submit"] {
		margin-left: 0;
		width: 303px;
		margin-top: 15px;
	}
}
@media (max-width: 689px) {
	.ctype div {
		display: inline-block;
		width: auto;
		margin-top: auto;
	}
	div.rform {padding-left: 15px;}
	div.rform form input[type="text"], div.rform form select, div.rform form textarea, div.rform input[type="submit"] {width: 100%;}
	div.rform div.cn input[type="text"], div.rform div.cn div input[type="password"] {width: 100% !important;}
	div.rform form div span {
		position: relative;
		left: auto !important;
	}
	div.rform form div span:after {content:":";}
	.udsc {margin: 15px 0 0 0;}
	.nudsc {margin-left: auto;}
	div.utype, .nudsc {text-align: center;}
	.nudsc {font-size: 110%;}
	div.utype span {margin-right: 25px;}
	div.birthday {margin-top: 25px;}
	div.birthday span {margin-right: 25px;}
	div.ctype span {
		display: block !important;
		margin-bottom: 5px;
	}
	.udsc, .rinfo {padding-top: 0; padding-bottom: 0;}
	.rinfo {font-weight: 300;}
	.errs {
		margin-left: 5px;
		text-align: center;
		font-size: 100%;
	}
	.errs ul li {font-size: 105%;}
}
@media (max-width: 650px) {
	label.regemp {margin-right: 0 !important;}
}
@media (max-width: 539px) {
	h1.header {margin-top: 0;}
}
@media (max-width: 519px) {
	div.ctype div {
		display: block;
		margin-top: 5px;
	}
}
@media (max-width: 500px) {
	div.ctype span {margin-bottom: 0;}
}
@media (max-width: 480px) {
	div.utype span {
		display: block !important;
		margin-bottom: 15px;
	}
	.nudsc {font-size: 100%;}
	div.rlogin {
		font-size: 90%;
		padding-top: 0;
		padding-bottom: 0;
	}
}
@media (max-width: 430px) {
	div.birthday {margin-top: 10px;}
	div.birthday span {
		width: 100%;
		margin-right: 0;
	}
}
@media (max-width: 390px) {
	.nudsc {
		font-size: 95%;
		padding: 0;
	}
	div.utype span {margin-bottom: 7px;}
	div.utype {font-size: 120% !important;}
	div.rform div.utype .radio:not(checked) + label:before {top: 3px;}
	div.rform div.utype .radio:not(checked) + label:after {top: 6px;}
	.rinfo {display: none;}
	.udsc p {font-size: 95%;}
	.udsc {
		border: 0;
		padding: 0;
		text-align: center;
	}
	.fr {margin-top: 5px;}
}
@media (max-width: 355px) {
	.rform ::-webkit-input-placeholder {font-size: 80%;}
	.rform ::-moz-placeholder {font-size: 80%; line-height: 245%;}/* Firefox 19+ */
	.rform :-moz-placeholder {font-size: 80%;}/* Firefox 18- */
	.rform ::-ms-input-placeholder {font-size: 80%;}
	.rform :-ms-input-placeholder {font-size: 80%;}
	div.cpt {
		transform: scale(0.88);
		transform-origin: left top;
	}
}
@media (max-width: 340px) {
	div.utype div {
			display: block;
			margin-bottom: 3px !important;
	}
}
@media (max-width: 319px) {
	div.cpt {transform: scale(0.72);}
	p.sjfi {
		width: auto;
		margin: 0 0 10px 0 !important;
	}
}
@media (max-width: 301px) {
	.rform ::-webkit-input-placeholder {font-size: 67%;}
	.rform ::-moz-placeholder {font-size: 67%; line-height: 285%;}/* Firefox 19+ */
	.rform :-moz-placeholder {font-size: 67%;}/* Firefox 18- */
	.rform ::-ms-input-placeholder {font-size: 67%;}
	.rform :-ms-input-placeholder {font-size: 67%;}
}
@media (max-width: 290px) {
	#page-content {padding: 10px 5px;}
	div.rform {padding: 15px 5px;}
	div.rform div.birthday select[name="bmonth"] {width: 90px;}
	div.rform div.birthday select[name="byear"] {width: 60px;}
}