* {
	margin: 0;
	padding: 0;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	tap-highlight-color: rgba(0,0,0,0);
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	outline: none;
}
html, body {
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, sans-serif;
	font-size: 100%
	width: 100%;
	height: 100%;
	position: relative;
}
#cntrls {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 5%;
	box-sizing: border-box;
}
.btn {
	width: 32%;
	text-align: center;
	box-sizing: border-box;
	font-size: 1em;
	position: relative;
	display: inline-block;
	padding: 1em 2em;
	text-decoration: none;
	color: #FFF;
	background: #fd9535;/*背景色*/
	border-bottom: solid 2px #d27d00;/*少し濃い目の色に*/
	border-radius: 4px;/*角の丸み*/
	box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
}
.half {
	width: 16%;
}
.onbtn {
	background: #dd8a11;
	border-bottom: none;
	box-shadow: inset 3px 3px 0 rgba(0, 0, 0, 0.2), inset 0 2px 2px rgba(0, 0, 0, 0.19);
}
#disp div {
	text-align: center;
	border: 1px solid #aaa;
	border-radius: 5px;
	margin: 5px;
	font-weight: bold;
	letter-spacing: 5px;
	font-size: 2em;
	color: #555;
	text-shadow: inset 1px 1px 1px rgba(255, 255, 255, 1);
}
#disp div::before {
	content: "";
	display: inline-block;
}
#keys {
	margin-top: 10px;
}
.key {
	margin: 6px;
	display: inline-block;
	font-size: 1.2em;
	padding: 0.5em 1em;
	text-decoration: none;
	background: #668ad8;/*ボタン色*/
	color: #0a2153;/*ボタン色より暗く*/
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #627295;
	border-radius: 5px;
	font-weight: bold;
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5);
}
.key:nth-child(17) {
	background: #68de77;/*ヒントのボタン色*/
}
@media screen and (min-width: 376px) and ( max-width: 768px) {
	body {
		font-size: 180%;
	}
	#disp {
		margin-top: 30px;
	}
	#cntrls {
		bottom: 30px;
	}
}