@charset "utf-8";
body {
	font-family: Arial, san-serif;
	font-size: 15px;
	color: #000;
	background-color: #fff;
	max-width: 820px;
	min-width: 320px;
	margin: 0 auto;
	overflow: auto;
	line-height: 1.2;
}

header {
	margin: 2px;
	text-align: center;
	padding: 0px;
}

main {
	float: left;
	width: 77%;
}

aside {
	float: right;
	width: 22%;
	padding-left: -1px;
}

a {
	color: #0000ff;
}

a:visited {
	color: #000080;
}

a:hover {
	color: #ff0000;
}

@media screen and (max-width: 650px) {
	body {
		overflow-wrap: break-word;
	}
	main,
	aside {
		width: 100%;
		display: block;
		clear: both;
	}
}

h1 {
	margin: 0px;
	font-size: 15px;
}

h2 {
	padding: 3px;
	background-color: #6699ff;
	color: #ffffff;
	text-align: center;
	font-size: 15px;
	margin-bottom: 6px;
}

hr {
	clear: both;
	border-width: 1px 0px 0px 0px;
	border-style: solid;
	border-color: #bbbbbb;
	height: 1px;
}

p {
	margin: 3px;
	padding: 3px;
}

section {
	padding: 0px 0px 6px 0px;
	border-right: 1px solid #6699ff;
	border-left: 1px solid #6699ff;
	border-bottom: 1px solid #6699ff;
	margin-bottom: 10px;
}

section ul {
	padding: 0px 20px;
}

/* forms
------------------------------ */
input,
textarea,
select,
label {
	font-size: 100%;
	vertical-align: middle;
}

textarea {
	overflow: auto;
}

/* tables
------------------------------ */
table {
	border-collapse: collapse;
	empty-cells: show;
	width: 100%;
}

th {
	padding: 5px;
	border-bottom: 1px solid #6699ff;
	white-space: nowrap;
	text-align: left;
}

td {
	padding: 5px;
	border-bottom: 1px solid #6699ff;
}

.tbl_top td {
	vertical-align: top;
	line-height: 2.0;
	border: 0px none;
}

.tbl_rank {
	text-align: center;
}

.tbl_dif {
	text-align: center;
	font-size: 12px;
}

.tbl_time td {
	padding: 0px;
	text-align: center;
	border: 0px none;
}

footer {
	padding: 5px;
	clear: both;
	text-align: center;
	font-size: 12px;
}

.font_red {
	color: #ff0000;
}

.font_green {
	color: #008000;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}
