@charset "utf-8";
/* CSS Document */

@media screen and (max-width:640px) {

/*--------------------------------
TOP
--------------------------------*/

#top header{
	margin:0;
}

/*----------*/
#top .contents{
	padding:0 0 14% 0;
	position:relative;
}

#top .contents .container{
}

/*----------*/
#top .contents .top-hd{
}

#top .contents .top-hd .inner{
	padding:7.8% 0 2.5rem 0;
	position:relative;
}

#top .contents .top-hd h2{
	width:80%;
	margin:0 auto;
}

#top .contents .top-hd .txt_read{
	text-align:left;
	font-size:0.26rem;
	line-height:177%;
	width:90%;
	margin:10% auto;
}

#top .contents .top-hd .btn_measure{
	width:38%;
	margin:0 auto;
	position:relative;
	z-index:2;
}

#top .contents .top-hd .img01{
	width:38.75%;
	margin:0;
	
	position:absolute;
	/*top:8.5rem;*/
	bottom:1rem;
	right:4.6%;
	z-index:0;
}

/*----------*/

#top .contents .bg_book{
	padding:30% 0 10% 0;
}

#top .contents h3{
	width:78.4%;
	margin:0 10.8%;
	position:absolute;
	top:-0.5rem;
}

#top .contents .measure{
	text-align:center;
	font-size:0.26rem;
	width:5.4rem;
	margin:0 auto;
}

#top .contents .measure h4{
	color:#00a5e3;
	font-size:0.4rem;
	line-height:130%;
	font-weight:bold;
}

#top .contents .measure h5{
	font-size:0.3rem;
	color:#00448d;
	font-weight:bold;
	margin:0 0 5% 0;
}

#top .contents .measure .schoolyear{
	margin:10% 0 0 0;
}

#top .contents .measure .schoolyear select::-ms-expand {
	display: none;
}

#top .contents .measure .schoolyear select{
	width:5.4rem;
	height:0.76rem;
	margin:0;
	border:none;
	padding:0 1em;
	background:url(../images/top/sp/measure_schoolyear.png) no-repeat center center;
	background-size:contain;
	text-align:center;
	font-size:0.28rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display:block;
	box-sizing:border-box;
}

#top .contents .measure .direction{
	margin:10% 0 0 0;
}

#top .contents .measure .direction:after{
	content:"";
	display:block;
	clear:both;
}

#top .contents .measure .direction .box{
	margin:0 0 0 0;
}

#top .contents .measure .direction .box em{
	font-weight:bold;
}

#top .contents .measure .direction .vertical{
}

#top .contents .measure .direction .horizontally{
	margin:5% 0 0 0;
}

#top .contents .measure .direction .box .button,
#top .contents .measure .direction .box .button_on{
	display:block;
	width:5.4rem;
	height:1.82rem;
	margin:0 0 3.5% 0;
	padding:0 0 0 35%;
	border:none;
	text-align:left;
}

#top .contents .measure .direction .box.vertical .button{
	background:url(../images/top/sp/measure-btn_vertical_off.png) no-repeat center center;
	background-size:contain;
	color: #aaa;
}
#top .contents .measure .direction .box.horizontally .button_on{
	background:url(../images/top/sp/measure-btn_horizontally.png) no-repeat center center;
	background-size:contain;
	cursor: pointer;
}

#top .contents .measure .direction .box.horizontally .button{
	background:url(../images/top/sp/measure-btn_horizontally_off.png) no-repeat center center;
	background-size:contain;
	color: #aaa;
}

#top .contents .measure .direction .box.vertical .button_on{
	background:url(../images/top/sp/measure-btn_vertical.png) no-repeat center center;
	background-size:contain;
	cursor: pointer;
}


/*----------*/
#top .contents .about{
	width:87%;
	margin:10% auto 0 auto;
}

#top .contents .about h4{
	font-size:0.28rem;
	line-height:157%;
}

#top .contents .about .point{
}

#top .contents .about .point:after{
	content:"";
	display:block;
	clear:both;
}

#top .contents .about .point dl{
	display:block;
	background:#ffee32;
	border-radius:10px;
	padding:1em;
	box-sizing:border-box;
	margin:4% 0 0 0;
}

#top .contents .about .point dl dt{
	font-size:0.33rem;
	font-weight:bold;
	color:#00448d;
	text-align:center;
	margin:0 0 0.5em 0;
}

#top .contents .about .point dl dd{
	font-size:0.24rem;
	line-height:158%;
	margin:0;
	padding:0;
}

#top .contents .about .notes{
	font-size:0.22rem;
	color:#5a5a5a;
	text-align:center;
	margin:7% 0 0 0;
}

/*----------*/
.contents .bnr {
	width: 87%;
	margin: 10% auto 0;
}
.contents .bnr a img {
	margin-bottom: 25px;
}

/*----------*/
#top .contents .measure .nickname{
	margin:8.75vw 0 0 0;
}
#top .contents .measure .nickname .speechBubble{
  position: relative;
  margin: 0 auto 3.75vw;
  padding: 0 3.125vw;
  width: 75vw;
	height: 9.375vw;
	line-height: 9.375vw;
	border-radius: 37.5vw;
	box-sizing: border-box;
  color: #00448d;
  font-size: 3.4375vw;
	font-weight: bold;
	text-align: center;
  background: #ffee32;
}
#top .contents .measure .nickname .speechBubble:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-top: 8px solid #ffee32;
}
#top .contents .measure .nickname .speechBubble p {
  margin: 0;
  padding: 0;
	font-weight: bold;
}
#top .contents .measure .nickname input{
    width: 5.4rem;
    height: 0.76rem;
    margin: 0;
    border: none;
    padding: 0 1em;
	background:url(../images/top/sp/measure_nickname.png) no-repeat center center;
    background-size: contain;
    text-align: left;
    font-size: 0.28rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    box-sizing: border-box;
}
#top .contents .measure .nickname input::placeholder{
	color: #aaa;
}
#top .contents .measure .nickname input.nicknameError{
	background:url(../images/top/sp/measure_nickname_error.png) no-repeat center center;
  background-size: contain;
}
#top .contents .measure .nickname .nicknameErrorTxt {
	padding:1.275vw 0 0 1em;
	color: #e3005b;
	font-size: 3.4375vw;
	text-align: left;
}


/*----------*/
#top .contents #rankingArea {
	padding: 14.0625vw 0 0 0;
}
#top .contents #rankingArea .rankingAreaTitle{
	text-align: center;
	font-size: 4.6875vw;
	color: #00a5e3;
	font-weight: bold;
	padding-bottom: 7.5vw;
}
#top .contents #rankingArea section {
  display: none;
}
.tab {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-justify-content:space-between;
	-moz-justify-content:space-between;
	-ms-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width:100%;
	margin: 0 auto;
}
.tab li {
	width: 49.3%;
	height: 10.9375vw;
	line-height: 10.9375vw;
	margin: 0;
	padding: 0;
	cursor: pointer;
	vertical-align: middle;
	text-align: center;
	background: #eee;
	border-radius: 1.5625vw 1.5625vw 0 0;
	box-sizing: border-box;
	font-size: 4.0625vw;
	font-weight: bold;
	color: #282827;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.tab li.current {
	position: relative;
	width: 49.3%;
	background: #00a5e3;
	background: -webkit-gradient(linear, left top, left bottom, from(#00a5e3), to(#0099d3));
	background: -moz-linear-gradient(top, #00a5e3, #0099d3);
	background: -ms-linear-gradient(top, #00a5e3, #0099d3);
	color: #fff;
}
.tab li.current:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -0.1rem;
  border: 0.1rem solid transparent;
  border-top: 0.1rem solid #0099d3;
}
.tab li:hover {
	opacity:0.65;
}
.tab li.current:hover {
	opacity:1;
}
.content {
	border: 3px solid #0098d1;
	padding: 6.875vw 3.125vw 6.25vw;
	box-sizing: border-box;
}
.rankingAreaInr .content {
	display: none;
}
.rankingAreaInr .content:nth-child(1) {
	display: block;
}
.rankingAreaInr .gradeName {
	text-align: center;
}
.rankingAreaInr .gradeName p {
	display: inline-block;
	max-width: 48.625vw;
	padding: 0 4.6875vw;
	box-sizing: border-box;
	position: relative;
	text-align: center;
	color: #00448d;
	font-size: 4.6875vw;
	font-weight: bold;
	margin: 0 auto 6.875vw;
}
.rankingAreaInr .gradeName p::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -9px;
	border-bottom: 0.9375vw solid #ffee32;
}
.rankingAreaInr .rankingList {
	display: table;
	border-collapse: collapse;
}
.rankingAreaInr .rankingList dl {
	display: table-row;
}
.rankingAreaInr .rankingList dl dt {
	display: table-cell;
	-webkit-box-box-sizing: border-box;
	-moz-box-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 3vw;
	color: #282827;
	padding: 2.5vw 0 0 0;
	vertical-align: middle;
}
.rankingAreaInr .rankingList dl:nth-child(1) dt,
.rankingAreaInr .rankingList dl:nth-child(2) dt,
.rankingAreaInr .rankingList dl:nth-child(3) dt {
	font-size: 3.75vw;
	font-weight: bold;
	padding: 3.125vw 0 2.1875vw 0;
	line-height: 1.4;
}
.rankingAreaInr .rankingList dl:nth-child(4) dt {
	padding: 3.125vw 0 0 0;
}
.rankingAreaInr .rankingList dl dt:nth-child(1) {
	width: 15.625vw;
	text-align: right;
}
.rankingAreaInr .rankingList dl dt:nth-child(2) {
	width: 42.1875vw;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
	text-align: left;
}
.rankingAreaInr .rankingList dl dt:nth-child(3) {
	width: 26.5625vw;
	text-align: right;
	font-size: 3.125vw;
}
.rankingAreaInr .rankingList dl:nth-child(1) {
	border-bottom: 2px dotted #ffc332;
}
.rankingAreaInr .rankingList dl:nth-child(2) {
	border-bottom: 2px dotted #888888;
}
.rankingAreaInr .rankingList dl:nth-child(3) {
	border-bottom: 2px dotted #fd8e57;
}
.rankingAreaInr .rankingList dl:nth-child(1) dt:nth-child(1) {
	background:url(../images/top/sp/rankicon01.png) left center / 4.53125vw auto no-repeat;
}
.rankingAreaInr .rankingList dl:nth-child(2) dt:nth-child(1) {
	background:url(../images/top/sp/rankicon02.png) left center / 4.53125vw auto no-repeat;
}
.rankingAreaInr .rankingList dl:nth-child(3) dt:nth-child(1) {
	background:url(../images/top/sp/rankicon03.png) left center / 4.53125vw auto no-repeat;
}




/*================================*/
}
