/*** 全体要素 *******************************************************/
* {
	margin: 0px;
	padding: 0px;
}

body {
	padding: 0px 10px 0px 10px;
	font-family: 'ＭＳ ゴシック', monospace;
	background-color: #ffffff;
	font-size: 1em;
}

html {
	overflow-y: scroll;
	height: 100%;
	margin-bottom: 1px;
}

/********************************************************************/
	/*** 汎用要素 *******************************************************/
.center {
	text-align: center;
}

/********************************************************************/
	/*** ページ構成要素 *************************************************/
div#wrapper {
	position: relative;
	width: 950px;
	margin: 0px auto;
	text-align: left;
}

div#header {
	margin-bottom: 10px;
	padding: 10px 0px 5px 0px;
	border-bottom: 2px solid navy;
}

div#headLogo {
	width: 300px;
}

div#headLogoFont {
	margin-top: 3px;
	margin-bottom: 3px;
	font-size: 0.8em;
	color: #778899;
}

div#headNavi {
	position: absolute;
	right: 0;
	top: 60px;
	font-size: 0.9em;
	font-weight: bold;
	color: navy;
}

div#headNavi a {
	margin: 3px;
	font-weight: normal;
}

div#contents {
	line-height: 1.4;
}

div#heightFix {
	clear: both;
	height: 600px;
}

p#contentsNavi {
	margin: 0 0 10px 0;
	font-size: 0.8em;
}

div#main {
	float: left;
	width: 670px;
}

div#sub {
	float: right;
}

div.block {
	margin-bottom: 10px;
	border: 1px solid #cccccc;
	background-color: #ffffff;
}

div.block h2 {
	margin: 0 0 0 0;
	border-top: none;
	border-right: none;
	border-bottom: 1px solid #cccccc;
	border-left: none;
	background-color: #f5f5f5;
	font-size: 0.9em;
	font-weight: normal;
	color: #696969;
}

div#footer {
	clear: both;
	margin: 30px 0 0 0;
	width: 100%;
	height: 20px;
	border-top: 1px solid navy;
	border-bottom: 2px solid navy;
	background-color: #F5F5F5;
	text-align: center;
	vertical-align: middle;
	color: navy;
}

div#footer p {
	line-height: 20px;
	font-family: sans-serif;
	font-size: 0.8em;
}

div#footMenu {
	margin: 5px 0 10px 0;
	font-size: 0.8em;
}

div#footMenu table {
	width: 100%;
}

div#footMenu table td.right {
	text-align: right;
}

div#remarks {
	margin: 5px 0px 0px 0px;
}

div#remarks p {
	text-align: right;
}

div#fixedheight {
	height: 580px;
}

div.ads {
	margin: 8px 0;
}

/********************************************************************/
	/*** 見出し要素 *****************************************************/
h1 {
	margin: 0px 0px 5px 0px;
	padding: 2px 0 2px 5px;
	border: 1px solid #cccccc;
	background-color: #99ccff;
	font-size: 1em;
	font-weight: bold;
	color: #696969;
}

h1.title {
	clear: both;
	margin: 0px 0px 10px 0px;
	border-top: 0px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	border-left: 2px solid red;
	font-size: 0.9em;
	font-weight: normal;
	color: #000099;
	background-color: #ffffff;
	background-image: url(../images/home-title.gif);
}

h2 {
	margin: 10px 0px 5px 0px;
	padding: 2px 0 2px 5px;
	border: solid 1px #cccccc;
	background-color: #E6E6FA;
	font-size: 1em;
	font-weight: normal;
}

h2#label01 {
	background-color: #E6E6FA;
	font-size: 0.9em;
}

h2#label02 {
	background-color: #FFE4E1;
	font-size: 0.9em;
}

h2.menu {
	margin: 0 0 0 0;
	border-top: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
	background-color: #f5f5f5;
	font-size: 0.9em;
	font-weight: normal;
	color: #696969;
}

h3 {
	margin: 10px 0px 10px 0px;
	padding: 2px 0 2px 5px;
	border-top: 0 solid #000099;
	border-right: 0 solid #000099;
	border-bottom: 1px solid #cccccc;
	border-left: 4px solid #99ccff;
	background-color: #ffffff;
	text-align: left;
	font-size: 1em;
	font-weight: normal;
}

p#select_title {
	margin: 10px 0;
	font-size: 0.9em;
	font-weight: bold;
	color: navy
}

/********************************************************************/
	/*** リンク要素 *****************************************************/
a:link {
	color: #0000CD;
}

a:visited {
	color: #0000CD;
}

a:hover {
	color: red;
}

a:active {
	color: red;
}

/********************************************************************/
	/*** 表要素 *********************************************************/
table.list {
	border: solid #808080 1px;
	border-collapse: collapse;
	margin-left: 0;
}

table.list td {
	border: solid #808080 1px;
	padding: 3px;
}

td.head {
	background-color: #e0ffff;
	text-align: center;
}

td.index01 {
	background-color: #ffffff;
	font-weight: bold;
	text-align: center;
}

td.index02 {
	background-color: #ffffe0;
	font-weight: bold;
	text-align: center;
}

td.value01 {
	background-color: #ffffff;
	vertical-align: top;
}

td.value02 {
	background-color: #ffffe0;
	vertical-align: top;
}

/********************************************************************/
	/*** ボタン要素 *****************************************************/
input.search_button {
	width: 130px;
	height: 30px;
	color: navy;
}

input.clear_button {
	margin-left: 40px;
	width: 60px;
	height: 30px;
	color: navy;
}

input.order_button {
	width: 125px;
	height: 30px;
	color: navy;
}

input.default_button {
	margin-left: 33px;
	width: 70px;
	height: 30px;
	color: navy;
}

/********************************************************************/
	/*** 画像要素 *******************************************************/
img {
	border: none;
}

img.nobaseline {
	vertical-align: bottom;
}

img.middle {
	vertical-align: middle;
}

img#alert {
	margin-right: 4px;
	vertical-align: middle;
}

img#return {
	margin-right: 4px;
	vertical-align: middle;
}

/********************************************************************/
	/*** メッセージ要素 *************************************************/
p.message {
	margin-bottom: 10px;
	font-size: 0.9em;
	color: navy;
}

p.error_message {
	font-size: 0.9em;
	color: red;
}

div.error_message {
	overflow: auto;
	margin: 5px 0;
	width: 410px;
	height: 50px;
}

/********************************************************************/
	/*** 共通画面 *******************************************************/
div#common {
	height: 560px;
	text-align: center;
	color: navy;
}

div#common p {
	margin: 5px 0;
}

div#common p#top {
	margin-top: 50px;
}

div#common p#link {
	margin-top: 50px;
	font-size: 0.9em;
}

div#common p.button {
	margin: 20px 0;
}

div#common table {
	margin: 0px auto;
}

div#common td.head {
	padding: 6px 4px;
	background-color: #e0ffff;
	text-align: center;
	font-size: 0.9em;
}

div#common td.value {
	padding: 6px 4px;
	background-color: #F5F5F5;
	color: #000000;
	font-size: 0.9em;
}

/********************************************************************/
	/*** TOP画面 ******************************************************/
div#center {
	overflow: hidden;
	float: left;
	width: 510px;
}

div#left {
	overflow: hidden;
	float: left;
	width: 160px;
	margin-right: 15px;
}

div#right {
	overflow: hidden;
	float: right;
}

div.menu {
	margin-bottom: 10px;
	border: 1px solid #cccccc;
	background-color: #ffffff;
}

div.menu h2 {
	margin: 0 0 7px 0;
	border-top: none;
	border-right: none;
	border-bottom: 1px solid #cccccc;
	border-left: none;
	background-color: #f5f5f5;
	font-size: 0.9em;
	font-weight: normal;
	color: #696969;
}

div.menu p.title {
	margin: 0 0 0 0;
	border-top: none;
	border-right: none;
	border-bottom: 1px solid #cccccc;
	border-left: none;
	background-color: #f5f5f5;
	font-size: 0.9em;
	font-weight: normal;
	color: #696969;
}

#leftMenu {
	margin-left: 0;
	padding-left: 0;
	list-style-type: none;
	font-size: 0.8em;
}

#leftMenu a {
	display: block;
	padding: 5px;
	background-color: #FFFFFF;
}

#leftMenu a:hover {
	color: navy;
	background-color: #E0FFFF;
}

#leftMenu li {
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
}

#leftMenu p.label {
	padding: 5px;
}

#leftMenu span.sub {
	margin-left: 1em;
}

#calendar {
	border-top: 1px solid #cccccc;
	border-bottom: 0px solid #cccccc;
	border-left: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
}

p.bookmark {
	margin: 5px 0 5px 5px;
	font-size: 0.9em;
}

p.bookmark img {
	margin-right: 4px;
	vertical-align: middle;
}

div#infoList {
	font-family: sans-serif;
	font-size: 0.9em;
}

div#infoList ul {
	margin: 0 0 5px 20px;
	line-height: 1.5;
	color: navy;
}

div#infoList ul li {
	margin-top: 3px;
	border-bottom: 1px solid #E5E5E5;
}

div#infoList p.list {
	margin-top: 0;
	margin-bottom: 4px;
	text-align: right;
	font-size: 0.8em;
}

div#infoList span.date {
	margin-right: 10px;
	font-weight: bold;
}

ul.examList {
	list-style-type: none;
	font-size: 0.9em;
}

ul.examList li {
	float: left;
	white-space: nowrap;
	margin-left: 3px;
	padding: 0 5px 7px 18px;
	background: url(../images/dot01.gif) no-repeat 0px 1px;
}

p.title {
	margin: 10px 0px 0px 0px;
	padding: 2px 0 2px 5px;
	border-top: 0px solid #cccccc;
	border-right: 1px solid #cccccc;
	border-bottom: 0px solid #cccccc;
	border-left: 1px solid #cccccc;
	font-size: 0.9em;
	color: #000099;
	background-image: url(../images/home-title.gif);
}

p.label01 {
	clear: both;
	margin: 3px 0 0 3px;
	font-size: 0.9em;
	color: gray;
	margin: 3px 0 0 3px;
}

/********************************************************************/
	/*** 試験情報画面 *************************************************/
div#examCategory {
	margin-top: 20px;
	font-size: 0.9em
}

#examCategory h2 {
	margin-left: 10px;
	padding: 0 0 0 4px;
	border-top: 0 solid #000099;
	border-right: 0 solid #000099;
	border-bottom: 1px solid #cccccc;
	border-left: 2px solid #99ccff;
	background-color: #ffffff;
	text-align: left;
	font-weight: normal;
}

#examCategory p {
	margin-left: 20px;
}

#examCategory img {
	vertical-align: middle;
	margin-right: 3px;
}

#examCategory a {
	margin-right: 20px;
}

table.exam {
	width: 100%;
	margin-top: 15px;
	margin-bottom: 25px;
	border: solid #808080 1px;
	border-collapse: collapse;
	border: solid #808080 1px;
}

table.exam caption {
	text-align: left;
	font-size: 0.9em;
	color: navy
}

table.exam td {
	font-size: 0.9em;
	border: solid #808080 1px;
	padding: 5px 5px;
	line-height: 150%;
}

table.exam td.head {
	width: 14%;
	text-align: center;
	background-color: #E6E6FA;
}

table.exam td p.indent {
	margin-left: 1em;
}

table.exam td ol {
	margin: 3px 0 3px 30px;
}

/********************************************************************/
	/*** テスト一覧画面 *************************************************/
p.testList {
	width: 100%;
	margin-top: 3px;
	margin-bottom: 10px;
	text-align: right;
}

p.testList input {
	width: 130px;
	height: 30px;
}

table.test {
	margin-top: 0px;
	margin-left: 0;
	width: 100%;
	border: solid #808080 1px;
	border-collapse: collapse;
}

table.test td {
	font-size: 0.9em;
	border: solid #808080 1px;
	padding: 4px 5px;
}

table.test td.head {
	text-align: center;
	background-color: #E6E6FA;
}

table.test td.value {
	padding: 6px 4px;
	background-color: #FFFAFA;
	color: #000000;
}

/********************************************************************/
	/*** テスト画面 *****************************************************/
div#question {
	overflow: auto;
	padding: 5px;
	height: 150px;
	border: 1px solid #cccccc;
}

div#question pre {
	font-family: 'ＭＳ ゴシック', 'ＭＳ Ｐゴシック', sans-serif;
	font-size: 1em;
	line-height: 150%;
	/* 折り返し対応↓ */
	overflow: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
	/* 折り返し対応↑ */
}

div#question pre img {
	margin: 15px 0 0 10px;
}

div#source {
	height: 10px;
	text-align: right;
	font-size: 0.8em;
	color: gray;
}

div#choice {
	overflow: auto;
	padding: 5px;
	height: 172px;
	border: 1px solid #cccccc;
}

div#choice td {
	padding: 5px 0;
	vertical-align: top;
}

div#choice input {
	margin-right: 5px;
}

div#check_question a {
	white-space: nowrap;
}

p#limit {
	width: 100%;
	text-align: right;
	font-size: 0.9em
}

p#limit #min {
	padding: 0 5px 2px 5px;
	width: 25px;
	text-align: right;
	border: solid 0 #000000;
	font-weight: bold;
}

p#limit #sec {
	padding: 0 5px 2px 5px;
	width: 16px;
	text-align: right;
	border: solid 0 #000000;
	font-weight: bold;
}

div#exam_button {
	margin: 40px 0;
}

div#exam_button input {
	width: 80px;
	height: 28px;
	color: navy;
}

p#question_image {
	float: left;
	margin-top: 2px;
	text-align: right;
	font-size: 0.9em;
}

p#question_image img {
	margin-right: 2px;
	vertical-align: middle;
}

p#question_check {
	margin-top: 10px;
	text-align: right;
	font-size: 0.9em;
}

p#question_check_return {
	margin-top: 120px;
	text-align: center;
}

div#mark_show {
	position: relative;
	width: 90%;;
	margin: 0px auto;
}

p#mark_message {
	text-align: center;
	color: navy;
	font-weight: bold;
}

table.mark_title {
	margin-top: 20px;
	width: 100%;
}

table.mark_title td.left {
	text-align: left;
	width: 10%;
}

table.mark_title td.center {
	text-align: center;
	width: 10%;
}

table.mark_title td.right {
	text-align: right;
	width: 10%;
}

table.mark_result {
	width: 100%;
	border-collapse: collapse;
}

table.mark_result td.line {
	text-align: center;
	background-color: #00BFFF;
}

table.mark_result p#line-pass {
	position: absolute;
	left: 260px;
	top: 70px;
	width: 200px;
	text-align: left;
}

table.mark_result p#line-score {
	position: absolute;
	left: 260px;
	top: 142px;
	width: 200px;
	text-align: left;
}

table.mark_result td.line_ok {
	text-align: center;
	background-color: #00FF7F;
}

table.mark_result td.line_ng {
	text-align: center;
	background-color: #DC143C;
}

table.mark_result td.base {
	height: 25px;
	background-color: #D3D3D3;
}

table.result_list {
	margin-left: 0;
	border: solid #808080 1px;
	border-collapse: collapse;
}

table.result_list td {
	text-align: center;
	padding: 4px 5px;
	border: solid #808080 1px;
	font-size: 0.9em;
}

table.result_list td.head {
	text-align: center;
	background-color: #E6E6FA;
}

span.right {
	color: red;
	font-weight: bold;
}

/********************************************************************/
	/*** 管理メニュー画面 ***********************************************/
p#message {
	margin: 20px 0;
	text-align: left;
	font-size: 0.9em;
	color: navy;
	text-align: left;
}

table#menu tr.item {
	height: 80px;
}

table#menu tr.item td {
	vertical-align: top;
	width: 300px;
}

table#menu tr.item ul {
	margin: 10px 0 30px 40px;
	text-align: left;
}

table#menu tr.item li {
	margin-bottom: 20px;
}

table#menu td#title {
	height: 50px;
	text-align: left;
	color: navy;
}

table#menu td.head {
	background-color: #E7F0FF;
	text-align: left;
	padding: 3px 8px;
	border: 1px solid #cccccc;
}

/********************************************************************/
	/*** 登録画面 *******************************************************/
table.update {
	margin-bottom: 5px;
	width: 100%;
	font-size: 0.9em;
}

table.update caption {
	text-align: left;
	font-size: 0.9em;
	color: navy;
}

table.update td {
	font-size: 0.9em;
	padding: 2px 6px;
}

table.update td.head {
	text-align: left;
	background-color: #E0FFFF;
}

table.update td.value {
	padding: 6px 5px;
	background-color: #F5F5F5;
	color: #000000;
}

table.update select {
	margin-top: 3px;
}

table.update td.remark {
	text-align: right;
	color: navy
}

table#update_head {
	margin-top: 10px;
	width: 100%;
	font-size: 0.9em;
	color: navy;
}

table#update_head .left {
	text-align: left;
}

table#update_head .right {
	text-align: right;
}

table#update_head span.value {
	font-weight: bold;
}

p.button {
	margin-top: 10px;
	text-align: center;
	width: 100%;
}

input.button {
	width: 80px;
	height: 30px;
}

span.required {
	margin-left: 2px;
	color: red;
}

div#agreement {
	background-color: #ffffff;
	overflow: auto;
	margin: 5px 0;
	width: 600px;
	height: 100px;
}

div#agreement ol {
	margin-left: 25px;
}

div#agreement li {
	margin: 5px 0;
}

div#agreement dl {
	margin: 10px 0;
	text-align: left;
	color: #000000;
}

div#agreement dd {
	margin: 5px 0 10px 15px;
}

div#agreement dd ol {
	margin: 10px 50px;
}

textarea {
	padding: 2px;
	font-family: 'ＭＳ ゴシック', 'ＭＳ Ｐゴシック', sans-serif;
	font-size: 1em;
	line-height: 150%;
}

/********************************************************************/
	/*** 検索画面 *******************************************************/
table.list {
	width: 100%;
	border: solid #808080 1px;
	border-collapse: collapse;
	margin-left: 0;
}

table.list td {
	font-size: 0.9em;
	border: solid #808080 1px;
	padding: 4px 5px;
}

table.list td.head {
	background-color: #E6E6FA;
	text-align: center;
}

table.list td.value1 {
	background-color: #ffffff;
	text-align: center;
}

table.list td.value1left {
	background-color: #ffffff;
	text-align: left;
}

table.list td.value1right {
	background-color: #ffffff;
	text-align: right;
}

table.list td.value1center {
	background-color: #ffffff;
	text-align: center;
}

table.list td.value2 {
	background-color: #F0F8FF;
	text-align: center;
}

table.list td.value2left {
	background-color: #F0F8FF;
	text-align: left;
}

table.list td.value2right {
	background-color: #F0F8FF;
	text-align: right;
}

table.list td.value2center {
	background-color: #F0F8FF;
	text-align: center;
}

div#list_order {
	font-size: 0.9em;
}

div#list_order p {
	margin: 10px;
}

div#list_search {
	font-size: 0.9em;
}

div#list_search table {
	margin-top: 5px;
}

div#list_search td {
	padding: 5px 2px;
}

div#list_search p {
	margin: 10px 0 10px 10px;
}

table.result {
	margin: 3px 0;
	width: 100%;
	font-size: 0.9em;
}

table.result td.link {
	text-align: left;
}

table.result td.result {
	text-align: right;
	color: navy;
}

span.result {
	font-weight: bold;
}

/********************************************************************/
	/*** プロステップについて画面 ********************************************/
div#about {
	margin: 15px 0;
}

div#about h2 {
	font-size: 0.9em;
}

div#about p {
	margin-left: 5px;
	font-size: 0.9em;
}
/********************************************************************/
