@charset "UTF-8";

.error-message {
	text-align: center;
	color: #F00;
}
.form_cell .error-message {
	text-align: left;
}

#headerArea {
	margin-bottom: 0;
}
#header {
	border-bottom: solid 1px #FFF;
}

#header #gnavi li.location a {
	color: #9d8972;
}

#mainvArea {
	height: 320px;
	background: url(../images/admission/p_mainv.png) no-repeat center top;
	margin: 0 0 60px;
}
#mainvArea #mainv {
	width: 1143px;
	margin: 0 auto;
	position: relative;
}
#mainv .catch1 {
	width: 475px;
	margin: 0 0 0 0px;
	padding: 140px 0 0 0;
}
#mainv img {
	width: 100%;
}

.contents1000 {
	width: 1173px;
}

#lead {
	color: #6f6f6f;
}
#lead a:link {
	color: #F00;
}
#lead p {
	margin-bottom: 1.0em;
}
#lead p.intro {
	text-align: center;
}
#lead .catchcopy {
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	color: #442606;
	font-size: 40px;
	text-align: center;
	line-height: 1.6em;
	border-bottom: 1px solid #b9b9b9;
	width: 13em;
	margin: 50px auto;
}
#lead .intro1 {
	margin: 0 auto 80px;
	text-align: center;
}
#lead .intro1 strong {
	font-size: 24px;
	text-align: center;
	font-weight: normal;
}


.stepBar {
	position: relative;
	height: 70px;
	list-style: none;
	margin: 0 auto 4em;
	padding: 0;
	text-align: center;
	width: 690px;
	overflow: hidden;
	*zoom: 1;
	font-family: " source-han-serif-japanese",游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.stepBar.members.attendance {
	width: 460px;
}

.stepBar .step {
	position: relative;
	float: left;
	display: inline-block;
	line-height: 70px;
	padding: 0 15px 0 38px;
	font-size: 20px;
	background-color: #ccc;
	box-sizing: border-box;
	color: #888;
	font-weight: bold;
	-webkit-border-radius: 28px;
	-moz-border-radius: 28px;
	border-radius: 28px;
	margin-right: 30px;
}

.stepBar .step:before {
	position: absolute;
	display: block;
	content: '';
	height: 1px;
	/*left: -5px;
	background-color: #ccc;
	border-left: 4px solid #fdfaf8;*/
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid #a6a6a6;
	left: -22px;
	top: 19px;
}

.stepBar .step:after {
	line-height: 62px;
	position: absolute;
	top: 7px;
	left: 7px;
	font-size: 32px;
	width: 56px;
	height: 56px;
	-webkit-border-radius: 28px;
	-moz-border-radius: 28px;
	border-radius: 28px;
	background-color: #FFF;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.stepBar li.current span {
	color: #6686eb;
}
.stepBar .step:first-child:before, .stepBar .step:first-child:after {
	content: none;
}

.stepBar .step.current {
	color: #FFF;
	background-color: #6686eb;
}

.stepBar .step.current:before, .stepBar .step.current:after {
	background-color: #FFF;
	color: #6686eb;
}

.stepBar.step3 .step:nth-child(1) {
	width: 200px;
}
.stepBar.step3 .step:nth-child(1):after {
	content: '1';
}

.stepBar.step3 .step:nth-child(2) {
	width: 200px;
}
.stepBar.step3 .step:nth-child(2):after {
	content: '2';
}

.stepBar.step3 .step:nth-child(3) {
	width: 200px;
}
.stepBar.step3 .step:nth-child(3):after {
	content: '3';
}

#admission_frm {
	width: 612px;
	text-align: left;
	margin: 0 auto;
	padding: 20px 112px 0;
	border-top: 1px solid #6f6f6f;
}
#admission_frm .form_cell {
	margin-bottom: 0.5em;
}
#admission_frm .form_cell.name-ruby {
	padding-left: 4.0em;
	text-indent: -4.0em;
	margin-right: -3em;
}
#admission_frm input[type=text],
#admission_frm input[type=password]{
	border: 1px solid #6f6f6f;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	width: 612px;
	padding: 12px;
	box-sizing: border-box;
	margin-bottom: 0.5em;
}
#admission_frm input[type=text].name,
#admission_frm input[type=text].ruby{
	display: inline-block;
	margin-right: 2.0em;
	width: 16.0em;
}
#admission_frm textarea {
	border: 1px solid #6f6f6f;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding: 12px;
	box-sizing: border-box;
	width: 612px;
	height: 10.0em;
}
#admission_frm .submit {
	display: block;
	width: 424px;
	height: 60px;
	background-color: #442606;
	margin: 0 auto 1.0em;
	line-height: 60px;
	color: #FFF;
	text-align: center;
	border: none;
	font-size: 16px;
}
#admission_frm .submit.upper_btn {
	margin-top: 35px;
}
#admission_frm .form_cell.agree_radio {
	background-color: #f9f9f9;
	-webkit-border-radius: 33px;
	-moz-border-radius: 33px;
	border-radius: 33px;
	height: 70px;
	padding: 0 160px;
	margin-bottom: 35px;
	text-align: center;
}
#admission_frm .form_cell.agree_radio input[type=radio],
#admission_frm .form_cell.agree_radio input[type=checkbox]{
	display: none;
}
#admission_frm .form_cell.agree_radio label:before {
	content: "";
	display: block;
	position: absolute;
	top: 4px;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #999;
	border-radius: 50%;
	background-color: #a6a6a6;
}
#admission_frm .form_cell.agree_radio input[type=radio] + label,
#admission_frm .form_cell.agree_radio input[type=checkbox] + label{
	padding-left: 30px;
	position:relative;
	/*margin-right: 20px;*/
	font-size: 24px;
	line-height: 70px;
}
#admission_frm .form_cell.agree_radio input[type=radio]:checked + label,
#admission_frm .form_cell.agree_radio input[type=checkbox]:checked + label{
	color: #6686eb;
}
#admission_frm .form_cell.agree_radio input[type=radio]:checked + label:after,
#admission_frm .form_cell.agree_radio input[type=checkbox]:checked + label:after{
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	left: 2px;
	width: 18px;
	height: 18px;
	background: #6686eb;
	border-radius: 50%;
}

p.agree_msg {
	padding-top: 2.0em;
	text-align: center;
}
.bank_info {
	width: 16em;
	margin: 3.0em auto 0;
	text-align: left;
	border: 1px solid #000;
	padding: 0.4em 1.0em;
}
.bank_info dt {
	float: left;
}
.bank_info dd {
	padding-left: 5.0em;
}
p.agree_link {
	padding-top: 2.0em;
	padding-bottom: 3.0em;
	text-align: center;
}
p.agree_link a {
	color: #F00;
	text-decoration: none;
}
p.agree_link a:link {
	color: #F00;
}

#lead a.reminder {
	text-decoration: none;
}
#lead a.reminder:link {
	color: #700c0c;
}
#message {
	margin-top: 100px;
}
#message .title {
	background-color: #FFF;
}
#message .content {
	background-color: #F6F6F6;
	padding-top: 25px;
}
#message .title .contents1000 {
}
#message .content .contents1000 {
	margin-bottom: 80px;
}
#message h1.common {
	position: relative;
	text-align: center;
	letter-spacing: 2px;
	line-height: 46px;
	margin-bottom: 20px;
}
#message h1.common a {
	position: absolute;
	display: block;
	width: 160px;
	height: 46px;
	background-color: #CCC;
	top: 90px;
	right: 0;
	font-size: 14px;
	text-align: center;
	line-height: 46px;
	text-decoration: none;
}
#message h1.common a:link {
	color: #FFF;
}

#message .box {
	background: #FFF;
	border: solid 1px #DDD;
	padding: 19px 29px;
	color: #6f6f6f;
	font-size: 20px;
	margin-bottom: 1.0em;
}
#message .box:last-child {
	margin-bottom: 3.0em;
}
#message .box h3 {
	font-size: 34px;
	text-decoration: underline;
}
#message .box dl {
	width: 100%;
}
#message .box dl dt  {
	float: left;
}
#message .box dl dt::after {
	content: "：";
}
#message .box dl dd {
	margin: 0;
	padding: 0 0 0 6em;
	color: #6f6f6f;
}

#message .image {
	width: 400px;
	float: left;
}
#message .image img {
	width: 100%;
}
#message .text {
	width: 550px;
	float: right;
}
#message .text h2 {
	border-bottom: solid 1px #888;
	margin: 0 0 20px;
	padding: 0 0 15px;
}
#message .text h2 img {
	width: 234px;
}
#message .text span {
	color: #C5130B;
}

/* ---- スライダー用 --*/
#message .simply-scroll-container { 
	position: relative;
}
#message .simply-scroll-clip { 
	position: relative;
	overflow: hidden;
}
#message .simply-scroll-list { 
	overflow: hidden;
	margin: 0;
	padding: 0;
}
#message .simply-scroll-list li {
	float: left; /* Horizontal scroll only */
	padding: 0;
	margin: 0;
	width: 180px;
	height: 180px;
}


#news {
	background: #EEE;
	padding: 50px 0 80px;
}
#news h2 {
	color: #244C92;
	font-size: 30px;
	background: url(../images/toppage/icn_news.png) no-repeat center top;
	background-size: 64px auto;
	margin: 0 0 30px;
	padding-top: 70px;
}
#news .box {
	width: 510px;
	text-align: left;
	background: #FFF;
	border: solid 1px #DDD;
	margin: 0 auto;
	padding: 0 40px;
}
#news .box .oshirase {
	color: #FFF;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	background: #AA3043;
	margin: -1px 120px 30px;
	padding: 5px 0;
}

#news .box dl {
	font-size: 13px;
}
#news .box dt {
}
#news .box dd {
	border-bottom: solid 1px #DDD;
	margin: 0 0 30px;
	padding: 0 0 30px;
}
#news .box dd:last-child {
	border-bottom: none;
	margin-bottom: 0;
}
#news .box dd .title {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 20px;
}


/* FOR smartphone landscape
***************************************************************************/
@media screen and (max-width:768px) {

	#header {
		border-bottom: solid 1px #FFF;
	}

	.contents1000 {
		width: 100%;
	}

	.stepBar {
		display: none;
	}

	#admission_frm {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	#admission_frm input[type=text],
	#admission_frm input[type=password],
	#admission_frm textarea {
		width: 100%;
	}
	#admission_frm .submit {
		width: 100%;
	}

	#admission_frm .form_cell.name-ruby {
		padding-left: 0;
		text-indent: 0;
		margin-right: 0;
	}

	#admission_frm input[type=text].name,
	#admission_frm input[type=text].ruby {
		width: 100%;
		margin-right: 0;
	}

	#admission_frm .form_cell.agree_radio {
		padding-right: 10px;
		padding-left: 10px;
		height: 70px;
		text-align: center;
	}

	#admission_frm a.submit {
		width: 100%;
	}

	#mainvArea {
		height: 158px;
		background: url(../images/admission/p_mainv.png) no-repeat center top;
		background-size: 700px auto;
		margin: 0 0 30px;
	}
	#mainvArea #mainv {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	#mainv .catch1 {
		width: 255px;
		text-align: center;
		margin: 0 auto 15px;
		padding: 65px 0 0 0;
	}
	#mainv .catch2 {
		width: 150px;
		text-align: center;
		margin: 0 auto;
	}

	#lead .catchcopy {
		font-size: 24px;
		width: 95%;
		margin: 50px auto;
	}

	#login_frm {
		width: auto;
	}
	#login_frm input[type=text],
	#login_frm input[type=password] {
		width: 100%;
	}
	#login_frm a.submit {
		width: auto;
	}
	#login_frm input[type=password] {
		margin-bottom: 3.0em;
	}

	#next {
		margin-bottom: 20px;
		padding: 20px 10px;
	}
	#next .title {
		min-height: 50px;
		margin: 0 0 20px 0;
		padding: 5px 0 5px 0;
		letter-spacing: 1px;
	}
	#next .title p {
		font-size: 16px;
	}
	#next .title p.sub {
		font-size: 13px;
	}
	#next .box {
		background: #FFF;
		border: solid 1px #DDD;
		padding: 10px 15px;
	}
	#next .box dl {
		width: 100%;
		margin-top: 0;
		float: none;
	}
	#next .box dl dt {
		float: left;
	}
	#next .box dl dt::after {
		content: "：";
	}
	#next .box dl dd {
		margin: 0 0 15px;
		padding: 0 0 0 6em;
	}
	#next .box dl dt.date { padding-top: 7px; }
	#next .box dl dd span.date { font-size: 16px; }
	#next .box dl dd span.time { }
	#next .box dl dd span.note { font-size: 12px; }

	#next .box iframe {
		width: 100%;
		height: 260px;
		float: none;
	}

	#message {
		margin-top: 50px;
	}
	#message h1.common a {
		position: static;
		margin: 0 auto;
	}
	#message .contents1000 {
		margin-bottom: 40px;
	}
	#message .title .contents1000 {
		margin-bottom: 0;
	}
	#message .box {
		font-size: 16px;
	}
	#message .box h3 {
		font-size: 20px;
		margin-bottom: 1.0em;
	}
	#message .image {
		width: 100%;
		margin: 0 0 15px;
		float: none;
	}
	#message .text {
		width: auto;
		margin: 0 10px;
		float: none;
	}
	#message .text h2 {
		border-bottom: solid 1px #888;
		margin: 0 0 20px;
		padding: 0 0 15px;
	}
	#message .text h2 img {
		width: 160px;
	}
	#message #messagelist img {
		width: 90px;
	}
	/* ---- スライダー用 --*/
	#message .simply-scroll-list li {
		float: left; /* Horizontal scroll only */
		padding: 0;
		margin: 0;
		width: 90px;
		height: 90px;
	}


	#news {
		background: #EEE;
		padding: 30px 0 10px;
	}
	#news h2 {
		font-size: 20px;
		background: url(../images/toppage/icn_news.png) no-repeat center top;
		background-size: 50px auto;
		margin: 0 0 20px;
		padding-top: 60px;
	}
	#news .box {
		width: 94%;
		text-align: left;
		background: #FFF;
		border: solid 1px #DDD;
		margin: 0 3%;
		box-sizing: border-box;
		padding: 0 20px;
	}
	#news .box .oshirase {
		color: #FFF;
		font-size: 14px;
		font-weight: bold;
		text-align: center;
		background: #AA3043;
		margin: -1px 30px 30px;
		padding: 5px 0;
	}

	#news .box dl {
		font-size: 12px;
	}
	#news .box dt {
	}
	#news .box dd {
		margin: 0 0 20px;
		padding: 0 0 20px;
	}
	#news .box dd:last-child {
	}
	#news .box dd .title {
		font-size: 15px;
		font-weight: bold;
		margin: 0 0 15px;
	}

}


/* FOR smartphone portrait
***************************************************************************/
@media screen and (max-width:400px) {


}