div {
/*
	background-color: #eef;
	border: 1px dashed gray;
	padding: 10px;
	margin: 10px;
*/
}

body{
//	background-color: #afa;
	width: 900px;
	margin-left: auto;
	margin-right: auto;
//	border: 2px solid red;
	text-align: center;
}

img {
	border: none;
}

table {
	border-collapse : collapse;
}

ul.main_menu {
	display : inline-block;
	width: 345px;
	height: 580px;
	padding-top: 150px;
	list-style-type: none;
	margin-left: 20px;
	margin-right: 20px;
}


ul#selection_menu{
	background-image : url("./img/selection_panel.png");
	background-repeat: no-repeat;
}

ul#writing_menu {
	background-image : url("./img/writing_panel.png");
	background-repeat: no-repeat;
}

ul.main_menu li a{
	height: 80px;
	width: 290px;
	font-size:200%;
	margin-bottom: 10px;
	padding-top: 20px;
	text-align: center;
	display:block;
	text-decoration: none;
	color: black;
	background-repeat: no-repeat;
}

ul.main_menu li a:hover{
	color: white;
}


ul#selection_menu li a{
	background-image : url("./img/red_normal.png");	
}

ul#selection_menu li a:hover{
	background-image : url("./img/red_hover.png");	
}

ul#writing_menu li a{
	background-image : url("./img/blue_normal.png");	
}

ul#writing_menu li a:hover{
	background-image : url("./img/blue_hover.png");	
}


table#number_subject_container{
	width: 800px;
	margin-left: 50px;
	margin-top : 20px;
	morgin-bottom : 50px;
}


table#number_subject_container td{
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
	width: 375px;
	border: 1px solid gray;
}

table#number_subject_container td.row_sep{
	width: 50px;
	border-top : none;
	border-bottom : none;
}

div#number_selection {
	margin-left : 50px;
	margin-right : 50px;
	margin-bottom: 50px;
	margin-top : 50px;
	width : 340px;
	float:left;
	border: 2px solid gray;
	padding:5px;
}



div#subject_selection {
	margin: 50px;
	margin-left: 500px;
	border: 2px solid gray;
	padding: 5px;
}

ul.genre_list li{
	display: block;
	width: 250px;
	text-align: left;
	font-size: 80%;
	float: left;
}

ul.genre_list {

}




div#area_selection{
	width: 800px;
	margin-left: 50px;
	margin-top: 40px;
	border : 1px solid gray;
}

div.info_title {
	padding : 10px 10px;
}

table#area_table td{
	vertical-align: top;
	font-size: 90%;
	line-height : 100%;
	width: 250px;
	padding-left:10px;
	padding-right:10px;
	padding-top: 10px;
	padding-bottom: 10px;

	border: 1px solid #ddd;

}

input.area{
	margin:0px;
	margin-right:3px;
}

span.toggler{
	float: left;
}

div.genre{
	text-indent : -1.3em;
	padding-left:35px;
//	font-weight: bold;
/*
	padding-left: 2em;
	padding-right: 2em;
*/
}


ul.category_list {
	list-style-type:none;
	padding-left: 2em;
	margin-top: 5px;
/*
	color : #03a;
*/
}

ul.category_list li{
	text-indent: -4em;
	padding-left: 5em;
	padding-right: 1em;
	line-height: 80%;
	padding-top: 0px;
	padding-bottom: 0px;
	margin-bottom: 8px;
}

span.q_pid {
	font-size:75%;
	font-weight: normal;
}


span#message_for_test {
	display: block;
	font-size: 100%;
	margin-bottom : 10px;
}




body#body_selection_test{
	background-color: #fde;
}

body#body_writing_test{
	background-color: #def;
}

/* test form */

div.q_box {
	margin : 20px 15px;
	border : 1px solid gray;

}

div.q_box div.q{
	font-weight : bold;
	border-bottom : 1px solid #bbb;
	padding : 3px 5px 3px 60px;
	text-align: left;
}


div.q_box div.ans_box{
	padding : 10px;
	text-align: left;
	padding-left: 60px;
}

div.judge_image{
	margin-left:5px;
	padding-top:10px;
	position: absolute;
	z-index:10;
}

div.q_box img.speaker{
	margin-bottom : -3px;	
}

div.score_div{
	border : 2px solid red;
	margin : 10px;
	padding : 15px;
	width: 400px;
}

div.score_div span.dev100 {
	font-size : 400%;
	font-color : red;
	letter-spacing: 0.3em;
}

div.score_div span.detail{
	font-size: 200%;
	letter-spacing: 0.2em;
}


div.rated_hint{
	font-size : 80%;
	text-align : left;
	margin-left: 50px;
	margin-top : 5px;
	margin-bottom: 10px;

/*
	margin-top : 5px;
	padding-top : 10px;
	padding-left : 20px;
	padding-bottom : 10px;
*/
}


div.extra_hint{
	border-top : 1px solid gray;
}


span.writing_judge{
	font-style: italic;
}

span.test_correct{
	color: red;
}

span.test_incorrect{
	color: blue;
}

span.pid_count{
	font-style : italic;
	color: #888;
	font-size:80%;
}

span.graph_current_point{
	color: red;
}


table.lesson_result {
	margin : 10px;
}


table.lesson_result td , table.lesson_result th{
	border :1px solid gray;
}

table.lesson_result th{
	padding: 5px 3px 3px 8px;
	line-height: 140%;
}

table.lesson_result td {
	padding: 5px;
}


table.extra_hint_box {
	margin : 10px 50px ;
}

table.extra_hint_box td{
	vertical-align : top;
	padding: 5px;
	font-size:80%;
	line-height: 1.3em;
}

span.youranswer{
	color : red;
}


div#current_set_score {
	font-size : 300%;
	border : 2px solid red;
	padding: 20px;
	margin : 20px;
	width: 40%;
}

div#current_set_score span.detail {
	font-size : 60%;
	letter-spacing : 0.2em;
}


table#lesson_result th> table.japanese_box td{
	border : 0px none;
}

table.japanese_box {
	margin : 3px 0px 2px 10px;
}

table.japanese_box td{
	vertical-align: top;
	padding : 0px;
	line-height: 110%;
	font-style : italic;
	font-size :90%;
	color : #333;
	border: 0px none;
}

table.japanese_box a{
	margin-right: 2px;
}


div.response_to_answer, div.response_to_correct_answer{
	margin: 5px 0px 0px 5px;
	padding: 5px;
	border: 1px solid gray;
}



div.selection_container{
	border : 1px solid gray;
	background-color : white;
	
}


/* test_form */
body#body_selection_test div.q_box div.q{
	background-color : #fde;
}

body#body_selection_test div.q_box div.ans_box{
	background-color : #ffefff;
}

body#body_writing_test div.q_box div.q{
	background-color : #ddf;
}

body#body_writing_test div.q_box div.ans_box{
	background-color : #eef;
}


/* form */
div.relation_category{
	font-size : 90%;
	font-weight : normal;
	text-align : right;
	margin : 0px;
	margin-top : 4px;
}

div.debug {
	background-color: #ab0;
	margin :2px;

}

div#suggest_div {
	padding: 10px;
	border: 1px solid gray;
	margin: 5px 0px 0px 5px;
	color: blue;
}

span.extra_message {
	font-weight : normal;
	font-size: 80%;
}


div.extra_mes {
	font-weight : normal;
}

div.extra_mes table{
	margin-top : 5px;
}

div.extra_mes table td{
	vertical-align: top;
	padding-right: 10px;
}

div.extra_mes input {
	margin-top:4px;  // just as text marign
}

div.test_comment{
	margin: 5px 0px 5px 0px;
	font-size: 80%;
}

div.warn{
	color :red;
}

span.ul {
	text-decoration: underline;
}




div.history_env{
	background-color : #ddd;
	border : 3px double gray;
	margin : 10px 0px 20px 0px;
	padding-bottom : 10px;
}



div.env_title{
	padding : 5px;
	background-color : #dff;
	border-bottom : 3px double gray;
	text-align : left;
}

div.env_title span.link{
	margin-left : 30px;
	text-align: right;
	font-size:80%; 
	border : 1px solid gray;
	padding : 2px;
}

div.history_parent{
	background-color : #adf;
	margin-top : 15px;
	margin-left : 10px;
	margin-right : 15px;
	border : 1px solid gray;
	border-right : 2px solid gray;
	border-bottom : 2px solid gray;
	text-align :left;
}

div.parent_title{
	padding : 5px;
	border-bottom : 1px dashed gray;
}



div.history_scores{
	background-color : #eff;
	padding-left : 20px;
	padding-top:5px;
	padding-bottom:5px;
}

div.history_scores ul{
	margin: 0px;
	margin-left : 15px;
}


div.env_title span.link, div.parent_title span.link{
	margin-left : 30px;
	text-align: right;
	font-size:80%; 
	border : 1px solid gray;
	background-color : #eee;
	padding : 2px;
}

div.parent_title span.link{
margin-left : 20px;
}


div.relation_category{
	font-size : 90%;
	font-weight : normal;
	text-align : right;
	margin : 0px;
	margin-top : 4px;
}


ul#history_branch{
	font-size : 150%;
}

ul#history_branch li{
	margin-bottom : 20px;
}


