@charset "UTF-8";

html{
	font-size:30px;
}

body{
	font-family: "UD デジタル 教科書体 N-R","Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-size:30px;
	line-height:1.5;
	background-color:#1eb9ef;
	background-image:url("../img/common/bg.jpg");
	background-position:center center;
	background-attachment:fixed;
	background-size:cover;
	background-repeat:no-repeat;
	height:100%;
	text-align:center;
	color:#fff;
}

h1,h2,h3,h4,h5,h6{
	margin:0;
	padding:0;
	line-height:1.5;
}
.left{
	text-align:left;
}

#top_title{
	margin-top:100px;
	margin-bottom:100px;
}

#top_title h1{
	font-size:50px;
	text-shadow:0 0 10px rgba(0,0,0,0.2);
}
#top_title h1 span{
	font-size:100px;
}

a.active_btn{
	background:#FFF700;
	color:#222;
	font-weight:bold;
	text-shadow:5px 2px 0px #fff;
	text-decoration:none;
	display:inline-block;
	min-width:10%;
	padding:20px 100px;
	margin:20px;
	border:solid 5px #fff;
	border-radius:100px;
	box-shadow:0 0 10px rgba(0,0,0,0.5);
}
a.active_btn:hover{
	box-shadow:none;
	background:#FF9900;
}
.quest_type{
	display:none;
}

header{
	text-align:left;
	padding:20px;
}
header a{
	color:#fff;
	text-decoration:none;
}
header a span{
	margin-left:10px;
	margin-top:10px;
	margin-bottom:10px;
}

#main{
	background:#fff;
	padding:50px 20px;
	width:90%;
	margin-left:auto;
	margin-right:auto;
	color:#333;
	position:relative;
}
#main h1{
	font-size:1rem;
	margin-bottom:50px;
}
#main .input{
	position:relative;
}
#main input{
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-size:1.2rem;
	letter-spacing:0.2rem;
	padding:20px;
	border:none;
	margin:0;
	text-align:center;
	color:#fff;
	position:absolute;
	top:0;
	left:calc(50% - 370px);
	z-index:1;
	max-width:700px;
	width:90%;
	min-height:1.2rem;
	display:block;
	outline: none;
}
#main input:focus {
    outline: none;
}
#main .img img{
	max-height:100%;
	max-width:100%;
}
#main .img{
	height:230px;
	display:flex;
	justify-content:center;
	align-items:center;
}
#main .txt{	
	margin-top:20px;
}

#main #kana{
	font-size:2rem;
	line-height:1.2;
}
#main #alphabet{
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-size:1.2rem;
	letter-spacing:0.2rem;
	line-height:1.2;
}
#main #char_typing{
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-size:1.2rem;
	letter-spacing:0.2rem;
	padding:20px;
	margin:20px auto;
	text-align:center;
	border:1px solid #999;
	max-width:700px;
	display:block;
	min-height:1.2rem;
	position:relative;
	z-index:100;
	width:90%;
	word-break: break-all;
}
#main #char_typing .miss{
	color:#f00;
}
#main #correct{
	position:absolute;
	color:#f00;
	font-size:20rem;
	top:calc(50% - 10rem);
	left:calc(50% - 10rem);
	z-index:500;
}
#main #times_block{
	background:#00B9FF;
	color:#fff;
	position:absolute;
	top:0;
	right:0;
	min-width:5rem;
	text-align:center;
	padding:20px;
	border:3px solid #fff;
}
#main #times_block #times{
	font-size:2rem;
	margin-right:0.3rem;
}

/* result */

.title img{
	max-width:60px;
	vertical-align:middle;
}
#main .title h1{
	margin-bottom:20px;
}
#resultBlock{
	background:#00CBFF;
	color:#fff;
	max-width:700px;
	text-align:center;
	padding:1rem;
	margin-left:auto;
	margin-right:auto;
	border-radius:10px;
}
#resultBlock #resultTime{
	font-size:3rem;
	display:block;
	margin-left:1rem;
}
#resultBlock #questSum{
	font-size:1.2rem;
}
#resultBlock #tps{
	font-size:0.8rem;
}
#resultBlock>div{
	display:flex;
	flex-grow:1;
	justify-content:center;
	align-items:center;
}
#lebel{
	padding:50px 20px;
	max-width:700px;
	margin-left:auto;
	margin-right:auto;
	font-size:0.8rem;
}
#lebel p{
	margin:0;
	padding:0;
}
#lebel #lebel_txt{
	font-size:2rem;
}
#lebel img{
	max-width:100%;
	margin-top:20px;
}
.retry_btn{
	padding:20px 100px;
	border:solid 3px #999;
	border-radius:100px;
	min-width:10%;
	text-decoration:none;
	display:inline-block;
	color:#333;
	margin-top:50px;
	background:#fff;
}
.retry_btn:hover{
	background:#eee;
}

#modal_bg{
	background:rgba(0,0,0,0.5);
	width:100%;
	height:100%;
	position:fixed;
	z-index:1000;
	top:0;
	left:0;
}
#modal{
	background:#fff;
	position:fixed;
	z-index:1500;
	padding:50px;
	top:50%;
	margin-top:-200px;
	left:50%;
	margin-left:-200px;
	width:300px;
	height:300px;
	border-radius:50%;
	font-size:7rem;
	text-align:center;
	color:#300;
}

.currentC{
	color:#00B9FF;
}
.checked{
	color:#999;
}
.rankimg img{
	max-width: 100%;
}
