@charset "utf-8";


html{
	touch-action: manipulation;
}


a:link{color:inherit}
a:active{color:inherit}
a:visited{color:inherit}
a:hover{color:inherit}

*{


-webkit-appearance:none;
-webkit-touch-callout:none; 
-webkit-user-select:none; 
user-select:none;



margin: 0;
padding: 0;
border: 0;
outline: 0;
box-sizing: border-box;

}



body {

	
font-size:5vmin;
line-height:1em;
letter-spacing:0;
font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
background:#fff;
position: relative;
color: #000;

width: 100vw;
overflow-x: hidden;

}


body.lang_ja en{
    display: none !important;
}

body.lang_en ja{
    display: none !important;
}




.wrapper{
padding-top:1em;
height:100vh;
height:100dvh;
overflow: auto;
background:#fff;
box-sizing: border-box;
width: 100vw;
overflow-x: hidden;
overflow-y: auto;

}





.header{
	display: flex;
	justify-content: space-around;
	align-items: center;
	box-sizing: border-box;
	text-align:center;
	padding-bottom:2vh;
	position:relative;

}

.header>div{
	width:25%;
}

.header .left_wrapper{
	display:inline-block;
}

.header .time{

}

.header .tap_count{

}





.owari{

	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	height:100dvh;
	box-sizing:border-box;
	background:rgba(0,0,0,0.9);
	padding-top:20px;
	
	color:#fff;
	text-align:center;
	line-height:normal;
	z-index:10;
	overflow-y: auto;

}


.owari h3 {
	font-size: 1.2em;
    text-align: center;
    line-height: 1em;
	padding: 20px 0;
}

.owari p{
	text-align:center;
	margin: 0 0 10px;
}
.owari .btn{
    padding: 0.1em 0.2em;
}


hr{
	margin:1em 0;
	border-bottom:1px dashed #ccc;
}

h1{
margin:1em 0 0 0;
text-align: center;
font-size:1.3em;
font-weight: bold;
}

p{
margin:0 0 1em ;
text-align: center;
}

.small{
font-size:0.7em;
}



.btn{

	display:inline-block;
	padding:0.2em 0.4em;
	margin:0 0.2em;

	min-width:2em;
	text-decoration: none;
	background:#eee;
	color:#000 !important;
	font-size:1.2em;

	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	border-radius: 0.5em;

	border-bottom:0.1em solid #ddd;
}


.btn_circle{
	font-size:1.1em;
	display:inline-block;
	text-align: center;
	vertical-align: middle;
	width:1.5em;
	height:1.5em;
	text-decoration: none;
	background:#eee;
	color:#000;
	border-radius: 2em;
	border-bottom:0.2em solid #ddd;
}





.mrgtb10{
margin-top:10px;
margin-bottom:10px;
}

.tcenter{text-align:center !important;}
.tright{text-align:right;}


img{
max-width:100%;
height: auto;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	font-size:0;
	visibility: hidden;
}

.red{
	color:red;
}

.blue{
	color:blue;

}
.yellow{
	color: gold;
}
.purple{
	color: magenta;
}


.table{
	display:table;
	width:100%;
	height:100%;
}

.table .cell{
	display:table-cell;
	vertical-align:middle;
	width:100%;
	height:100%;
}

.table .cell p{
text-align:center;
}



game_start{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	height:100dvh;
	margin:0;

	display: flex;
	align-items: center;
	justify-content: center;
	text-align:center;
	font-size:2em;
	line-height:1.2em;
	background-color:rgba(0,0,0,0.8);
	z-index:10;
	flex-direction: column;
}

game_start div,
game_start div{
	background-color:#000;
	color:#fff;
	padding: 1em;
	display: inline-block;

}

game_start>div{
	margin:0 0 1em;
}

highscore{
	display: none;
	font-size: 1.2em;
	color: gold;
	font-weight: bold;
}

highscore_all{
	display: none;
	font-size: 1.2em;
	color: gold;
	font-weight: bold;
}



#particles-js{ 
	top:0;
	left:0;
	position:fixed;
	z-index:11;
	width: 100%;
	height: 100%;
	display: none;
	
}


#particles-js2{ 
	top:0;
	left:0;
	position:fixed;
	z-index:11;
	width: 100%;
	height: 100%;
	display: none;
	
}


timebar{
	font-size:1em;
	display: block;
	width:10em;
	height:1em;
	border:0.2em solid #000;
	background-color:red;
	margin:0 auto;

}


timebar_progress{
	font-size:1em;
	display: block;
	width:100%;
	height:100%;
	background-color:#f0f0f0 !important;
}


graph_block{
	font-size:0.8em;
	display: block;
	background-color: #f0f0f0;

	color:#000;
	padding:1em 0;
	margin:0 1em 1em;

}



.hanrei{
	text-align: center;
	font-size:0.7em;
	font-weight:bold;
}
red{
	color:rgb(255,0,0);
}
green{
	color:rgb(0,150,0);
}
blue{
	color:rgb(0,0,255);
}
purple{
	color:rgb(255,0,255);
}
small{
	font-size:0.7em;
	font-weight: normal;
}


.game_info{
	font-size:0.7em;
	padding: 1em;
}

.game_info h3{
	text-align: center;
	background-color: #f5f5f5;
	padding: 0.5em 0;
	margin:0 0 1em;
}

.game_info p{
	text-align: center;

	padding: 0.5em 0;
	margin:0 0 0.5em;
	line-height: 1.4em;
}


.game_info p img{
	height: 5em;
}

.first_view{
	min-height: 100vh;
	min-height: 100dvh;
}