/* -------------------------
00-bootstrap override
--00-01 carousel
--00-02 form
01-layout
--01-01 header
--01-02 nav
--01-03 main-contents
--01-04 footer
02-common parts
03-home
------------------------- */


@media screen and (max-width:640px){
/*　00-bootstrap override
------------------------- */
body{
	background-color: #FFF;
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',
}

p{
	margin-left: 10px;
}

.visible-sm{
	display: block!important;
}
.hidden-sm{
	display: none!important;
}

/* 00-01 bootstrap-carousel */
.carousel-control{
	top:125px;
}

/* 00-02 form */
.aform .aform-content .form-table{
	margin-left: 30px;
}
.aform .aform-content .form-table th{
	display: block;
	padding: 0;
	width: 100%!important;
}
.aform .aform-content .form-table th .required{
	display: inline;
}
.aform .aform-content .form-table td{
	display: block;
	padding: 0 0 20px 0;
	width: 100%!important;
}
.aform .aform-content .form-table td input,
.aform .aform-content .form-table td textarea{
	width: 100%;
	vertical-align: middle;
}
.aform .aform-content .form-table td input.aform-radio{
	width: auto!important;
}
.aform .aform-content .form-table td p.aform-input-example{
	display: block;
}
.aform .aform-content .form-table ul.aform-name-ul li input, .aform .aform-content .form-table td.kana-form ul.aform-kana-ul li input{
	width: 100%;
}
#aform-999.aform .aform-content .form-table td input#student_id,
#aform-999.aform .aform-content .form-table td p.student_id{
	float: none;
}
#aform-999.aform .aform-content .form-table td input#password-confirm{
	float: none;
}
#aform-999.aform .aform-content .form-table td p.password{
	float: none;
	margin-left: 0px;
}

/*　01-layout
------------------------- */
header,
nav,
#main-contents,
#main,
#sub,
footer{
	border: none;
	box-shadow:0 0 0 0;
}

/* 01-01 header */
header{
	margin: 0;
	padding: 0 0 0 0;
	box-shadow:0px 0px 3px 1px #c3c3c3;
}

/*logo*/
header h1{
	font-size:10px;
	font-weight: normal;
	margin: 0;
	padding: 5px 8px;
}
header h1 img{
	margin: 0 6px 0 0;
/*	width: 30px;*/
	height: 29px;
}
header h1 strong{
	font-size: 12px;
}

/*header-nav*/
#header-nav{
	font-size: 10px;
	margin: 0 6px 0 0;
	padding: 0;
	top:0;
	right: 0;
	width: 96px;
	height: 100%;
}
#header-nav li{
	display: inline-block;
	float: left;
	width: 50%;
	height: 100%;
	margin: 0;
	padding: 0;
}

#header-nav a{
	color: #FFF;
	display: inline-block;
	margin: 0;
	padding: 5px 0;
	text-align: center;
	width: 100%;
	height: 100%;
	background-position:50% 20px;
	background-repeat:  no-repeat;
	background-size: 18px 16px;
}

#header-nav  a:hover{
	text-decoration: none;
}

#go-home > a{
	background-color: #5b5a5a;
	background-image: url(../images/sp-icon-home.gif);
}

#open-menu > a{
	background-color: #cf1116;
	display: none;	
	position: static;
}

#open-menu > a:first-of-type{
	background-image: url(../images/sp-icon-menu-open.gif);
}

#open-menu > a:last-of-type{
	background-image: url(../images/sp-icon-menu-close.gif);
}

#open-menu:not(:target) > a:first-of-type,
#open-menu:target > a:last-of-type{
	display: block;
}

#open-menu > ul{
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	width: 100%;
	padding: 0 8px;
	z-index: 1000;
}

#open-menu:target > ul{
	display: block;
}

#open-menu > ul > li{
	width: 100%;
	background:-moz-linear-gradient(100%,#fff, #d0d0d0);
	background:-webkit-gradient(linear, center top, center bottom, from(#fff), color-stop(50%, #fff), to(#d0d0d0)); 
	border: solid 1px #ccc;
	border-bottom: none;
	margin-bottom: 3px;
}

#open-menu > ul > li > a{
	background-image: url(../images/sp-icon-arrow.png);
	background-position-y:50%;
	background-position-x:98% ;
	background-repeat: no-repeat;
	background-size: 17px 17px;
	display: block;
	text-align: left!important;
	padding: 16px 34px 12px 16px;
	color: #101010;
}

/* 01-03 main-contents */
#main-contents.column-2{
	position: relative;
	padding-bottom: 47px;
	margin-bottom: 0;
}
/* sub */
.sub-nav li a{
	width: 100%;
	display: block;
	background:none;
	background:none; 
	border-bottom: none;
	margin-bottom: 0px;
	padding: 0;
}

.sub-nav li a:hover{
	text-decoration: none;
	border-color:#6d6d6d; 
}

.sub-nav #logout{
	position: absolute;
	top:13px;
	right: 13px;
}

.sub-nav #logout img,
.sub-nav #setting img{
	display: none;
}

.sub-nav #logout span,
.sub-nav #setting span{
	display: inline;
}

.sub-nav #setting{
	font-size: 9px;
	margin: 0 6px 0 0;
	padding: 0;
	bottom:0;
	right: 0;
	width: 48px;
	height: 50px;
	position: absolute;
}
.sub-nav #setting > a{
	background: url(../images/sp-icon-setting.gif) #5b5a5a;
	color: #FFF;
	display: inline-block;
	margin: 0;
	padding: 4px 0;
	text-align: center;
	width: 100%;
	height: 100%;
	background-position:50% 30px;
	background-repeat:  no-repeat;
	background-size: 22px 16px;
}

.sub-nav > #news .sub-nav2 > li > dl,
.sub-nav > #news .sub-nav2 > li > ul{
	margin-left: 0;
	list-style: none;
}

.sub-nav > #news .sub-nav2 > li > dl > dt{
	width: 100%;
	border: solid 1px #ccc;
	border-bottom: none;
	padding: 0;
	margin-bottom: 0;
}
.sub-nav > #news .sub-nav2 > li > dl > dt > a{
	width: 100%;
	display: block;
	padding: 10px 34px 0px 16px;
}
.sub-nav > #news .sub-nav2 > li > dl > dd{
	width: 100%;
	background:-moz-linear-gradient(100%,#fff, #d0d0d0);
	background:-webkit-gradient(linear, center top, center bottom, from(#fff), color-stop(50%, #fff), to(#d0d0d0)); 
	border: solid 1px #ccc;
	border-top: none;
	display: block;
	margin-bottom: 5px;
	padding: 0px;
}
.sub-nav > #news .sub-nav2 > li > dl > dd > a{
	width: 100%;
	background-image: url(../images/sp-icon-arrow.png);
	background-position: 98% 0%;
	background-repeat: no-repeat;
	background-size: 17px 17px;
	display: block;
	margin-bottom: 5px;
	padding: 0px 34px 5px 16px;
}
.sub-nav > #news .sub-nav2 > li > ul > li{
	width: 100%;
	background:-moz-linear-gradient(100%,#fff, #d0d0d0);
	background:-webkit-gradient(linear, center top, center bottom, from(#fff), color-stop(50%, #fff), to(#d0d0d0)); 
	border: solid 1px #ccc;
	border-bottom: none;
	margin-bottom: 5px;
}

.sub-nav > #news .sub-nav2 > li > ul > li >a{
	background-image: url(../images/sp-icon-arrow.png);
	background-position: 98% 50%;
	background-repeat: no-repeat;
	background-size: 17px 17px;
	color: #101010;
	display: block;
	padding: 10px 34px 25px 16px;
	text-align: left!important;
}

.sub-calendar,.sub-banner{
	margin: 0 auto 5px auto;
}
/* 01-04 footer */
footer{
	background: #e8e8d6;
	padding: 10px ;
}

footer #footer-nav{
	position: relative;
	top: 0;
	left: 0;
	margin-left: 0;
	margin-bottom: 10px;
}

footer #footer-logo{
	float: left;
	margin-left: 0px;
	font-size: 13px;
}


footer #footer-logo img.hidden-sm{
	display: none!important;
}

footer #address{
	float: left;
	width: 300px;
}

footer #copyright{
	font-size: 7px;
	position: static;
	text-align: left;
}

/*　02-common parts
------------------------- */
.contents{
	padding: 13px 7px 13px 7px;
}
section.contents{
	padding-top: 0;
}
.ttl{
	background-color: transparent;
	border: none;
	border-left: solid 8px #333333;
	padding: 15px 0 15px 11px;;
}

.list{
	margin-left: 0;
}

.list > li{
	width: 100%;
	background:-moz-linear-gradient(100%,#fff, #d0d0d0);
	background:-webkit-gradient(linear, center top, center bottom, from(#fff), color-stop(50%, #fff), to(#d0d0d0)); 
	border: solid 1px #ccc;
	border-bottom: none;
	margin-bottom: 5px;
}

.list > li >a{
	background-image: url(../images/sp-icon-arrow.png);
	background-position: 98% 50%;
	background-repeat: no-repeat;
	background-size: 17px 17px;
	display: block;
	text-align: left!important;
	padding: 16px 34px 12px 16px;
	color: #101010;
}

/*form*/
.form-table{
	width: 90%;
	margin: 0 5%;
}
.form-table th{
	letter-spacing:normal;
	padding-right: 5px;
	padding-bottom: 10px;
	vertical-align: top;
	width: 25%;
}

.normal-form input{
	width: 100%;
	margin-left: 0em;
	margin-right: 5px;
}

.name-form input{
	width: 100%;
	margin-right: 15px;
	margin-left: 5px;
	margin-bottom: 5px;;
}

.birthday-form input{
	margin-left: 0em;
	margin-right: 5px;
	margin-bottom: 5px;
	width: 20%;
}

.number-form input{
	width: 80%;
}

.form-table .form-format{
	display: block;
}

.required{
	display: block;
	color: #ff0000;
	font-size: 12px;
	letter-spacing:normal;
	padding-left: 0px;
}

.voluntary{
	display: block;
	font-size: 12px;
	letter-spacing:normal;
	padding-left: 5px;
}

.form-note{
	border-top: dashed 1px #c8c8c8;
	margin: 0 0 0 0 3%;
	padding: 7px 5% 10px 2%;
}

.login-contents{
	background-color: #eae9e9;
	margin: 40px 5% 5% 5%;
	padding: 50px 3%;
	width: 90%;
}

.login-form{
	width: 90%;
	margin: 0;
}

.login-form td{
	padding-bottom: 30px;
}

/*　03-home
------------------------- */
#main-contents #home-btn{
	margin: 0px;
	padding: 0 12px;
}
#main-contents #home-btn li{
	margin: 0;
	padding: 0;
}
#btn-entry > a,#btn-login > a{
	display: block;
	float: left;
	font-size: 15px;
	font-weight: normal;
	height: 45px;
	margin: 0 0 20px;
	padding: 0;
	width: 48%;
}
#btn-entry > a{
	background-image: none;
	background: -moz-linear-gradient(top, #fff, #fff 20%, #e3cfb8);
	background: -webkit-gradient(
							linear,
							left top, left bottom,
							color-stop(0, #fff),
							color-stop(60%, #fff),
							color-stop(100%, #e3cfb8)); 
	line-height: 45px;
	margin-right: 2%;
}

#btn-login > a{
	background: -moz-linear-gradient(top, #fff, #fff 20%, rgba(150,196,227,1.0));
	background:	-webkit-gradient(
							linear,
							left top, left bottom,
							color-stop(0, #fff),
							color-stop(60%, #fff),
							color-stop(100%, rgba(150,196,227,1.0))); 
	border: solid 1px #405b8d;
	line-height: 45px;
	margin-left: 2%;
}

#btn-introduce , #btn-contact{
	clear: both;
	width: 100%;
	background: -moz-linear-gradient(100%,#fff, #d0d0d0);
	background: -webkit-gradient(linear, center top, center bottom, from(#fff), color-stop(50%, #fff), to(#d0d0d0)); 
}

#btn-introduce > a,#btn-contact > a{
	background-image: url(../images/sp-icon-arrow.png);
	background-position: 98% 50% ;
	background-repeat: no-repeat;
	background-size: 17px 17px;
	border: solid 1px #ccc;
	border-bottom: none;
	margin-bottom: 20px;
	display: block;
	text-align: left!important;
	padding: 16px 34px 12px 16px;
	color: #101010;

}

/* 04-login
------------------------- */
.password-forgot{
	border-bottom: dashed 1px #c8c8c8;
	margin-top: 40px;
	margin-left:8px;
	margin-bottom: 10px;
	padding-bottom: 10px;
}
.password-forgot a{
	text-decoration: underline;
}

/* 05-2col
------------------------- */
.welcom{
	font-size: 13px;
	margin:13px 0 13px 8px;
}

}
