@CHARSET "UTF-8";

/*[ basic ]*************************************/

* {
	margin:0;
	padding:0;
}

html {
	height:100%;
	overflow-y:scroll;
}

body {
	height:100%;
	font-size: 75%;
	font-family: "ヒラギノ丸ゴ Pro W4",HiraMaruPro-W4,Osaka,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","Trebuchet MS",verdana,arial,sans-serif;
}

table {
	border-collapse: collapse;
}

input.xx-short {
	width: 50px;
}

input.x-short {
	width: 80px;
}

input.short {
	width: 155px;
}

input.middle {
	width: 250px;
}

input.long {
	width: 350px;
}

input.x-long {
	width: 400px;
}

input.xx-long {
	width: 450px;
}

input.fit {
	width: 100%;
}

textarea.short {
	width: 150px;
	height: 75px;
}

textarea.middle {
	width: 250px;
	height: 100px;
}

textarea.long {
	width: 350px;
	height: 125px;
}

textarea.x-long {
	width: 400px;
	height: 150px;
}

textarea.xx-long {
	width: 450px;
	height: 200px;
}

textarea.fit {
	width: 100%;
	height: 125px; 
}

.title {
	line-height: 1.8em;
}

.contents {
	line-height: 1.6em;
}

/* ブロックかインライン */
.inline {
	display: inline;
}

.block {
	display: block;
}

/* 上記との組み合わせ */
.left {
	text-align: left !important;
	margin-right: auto;
}

.center {
	text-align: center !important;
	margin-left: auto;
	margin-right: auto;
}

.right {
	text-align: right !important;
	margin-left: auto;
}

/* 要素の回り込み制御 */
.fleft {
	float: left;
}

.fright {
	float: right;
}

/* x+y軸 */
.msmall {
	margin: 1em;
}

.mmedium {
	margin: 2em;
}

.mlarge {
	margin: 4em;
}

.psmall {
	padding: 1em;
}

.pmedium {
	padding: 2em;
}

.plarge {
	padding: 4em;
}

/* x軸 */
.mxsmall {
	margin-left: 1em;
	margin-right: 1em;
}

.mxmedium {
	margin-left: 2em;
	margin-right: 2em;
}

.mxlarge {
	margin-left: 4em;
	margin-right: 4em;
}

.pxsmall {
	padding-left: 1em;
	padding-right: 1em;
}

.pxmedium {
	padding-left: 2em;
	padding-right: 2em;
}

.pxlarge {
	padding-left: 4em;
	padding-right: 4em;
}

/* x軸 left */
.mxlsmall {
	margin-left: 1em;
}

.mxlmedium {
	margin-left: 2em;
}

.mxllarge {
	margin-left: 4em;
}

.pxlsmall {
	padding-left: 1em;
}

.pxlmedium {
	padding-left: 2em;
}

.pxllarge {
	padding-left: 4em;
}

/* x軸 right */
.mxrsmall {
	margin-right: 1em;
}

.mxrmedium {
	margin-right: 2em;
}

.mxrlarge {
	margin-right: 4em;
}

.pxrsmall {
	padding-right: 1em;
}

.pxrmedium {
	padding-right: 2em;
}

.pxrlarge {
	padding-right: 4em;
}

/* y軸 */
.mysmall {
	margin-top: 1em;
	margin-bottom: 1em;
}

.mymedium {
	margin-top: 2em;
	margin-bottom: 2em;
}

.mylarge {
	margin-top: 4em;
	margin-bottom: 4em;
}

.pysmall {
	padding-top: 1em;
	padding-bottom: 1em;
}

.pymedium {
	padding-top: 2em;
	padding-bottom: 2em;
}

.pylarge {
	padding-top: 4em;
	padding-bottom: 4em;
}

/* valign */
.vatop {
	vertical-align: top !important;
}

.vamiddle {
	vertical-align: middle !important;
}

.vabottom {
	vertical-align: bottom !important;
}

/* 行間 */
.lhsmall {
	line-height: 1.3em;
}

.lhmedium {
	line-height: 1.6em;
}

.lhlarge {
	line-height: 1.9em;
}

/*  フォント */
.fxxlarge {
	font-size: 2em;
}

.fxlarge {
	font-size: 1.5em;
}

.flarge {
	font-size: 1.25em;
}

.fmedium {
	font-size: 1em;
}

.fsmall {
	font-size: 0.9em;
}

.fxsmall {
	font-size: 0.8em;
}

/* 意味を持つクラス */

/* 必須 */
.indispensability, .required {
	color: crimson !important;
}

/* 謹告 */
.announce {
	color: crimson;
}

/* 説明 */
.note {
	color: black;
}

/* エラー */
.error-message {
	color: #DF9300;
}

/* 太字 */
.bold {
	font-weight: bold;
}

/* ボーダーなし */
.border-none {
	border: 0px;
}

/* 行色 */
.altrow {
	background-color: #f0faff;
}

/*[ special ]***********************************/

/* 管理画面 textarea wysiwyg エディタ用 */
form div.wysiwyg {
	padding: 10px 0px 10px 20px;
}
	form div.wysiwyg label {
		float: left;
		clear: none;
	}
	form div.wysiwyg div {
		float: left;
		clear: none;
		padding: 0px;
		color: black !important;
	}
		form div.wysiwyg div * {
			font-weight: normal;
		}


/*教員の複数選択用*/
div.multi_teacher_select_div{
    width: 80%;
    height: 500px;
    margin: 0 auto;
}

div.left_teacher_column{
    border: 2px #CCC solid;
    width: 40%;
    height: 400px;
    clear: none;
    overflow: auto;
    float: left;
}

div.right_teacher_column{
    border: 2px #CCC solid;
    width: 40%;
    height: 400px;
    clear: none;
    overflow: auto;
    float: right;
}

div.right_teacher_column div.error-message{
    padding-left:0;
}

div.multi_teacher_select_div a{
    margin-left: 0;
}

p#teacher_list_p{
    text-align: center;
    font-weight: bold;
}

table#teacher_list td{
    text-align: left;
}

p#charger_list_p{
    text-align: center;
    font-weight: bold;
    color: crimson;
}

table#charger_list td{
    text-align: left;
}

/*種別の複数選択用*/
div.multi_type_select_div{
    width: 80%;
    height: 500px;
    margin: 0 auto;
}

div.left_type_column{
    border: 2px #CCC solid;
    width: 40%;
    height: 300px;
    clear: none;
    overflow: auto;
    float: left;
}

div.right_type_column{
    border: 2px #CCC solid;
    width: 40%;
    height: 300px;
    clear: none;
    overflow: auto;
    float: right;
}

div.right_type_column div.error-message{
    padding-left:0;
}

div.multi_type_select_div a{
    margin-left: 0;
}

/*審査項目一覧の複数選択用*/
div.multi_investigate_select_div{
    width: 80%;
    height: 250px;
    margin: 0 auto;
}

div.left_investigate_column{
    border: 2px #CCC solid;
    width: 40%;
    height: 200px;
    clear: none;
    overflow: auto;
    float: left;
}

div.right_investigate_column{
    border: 2px #CCC solid;
    width: 40%;
    height: 200px;
    clear: none;
    overflow: auto;
    float: right;
}

div.right_investigate_column div.error-message{
    padding-left:0;
}

div.multi_investigate_select_div a{
    margin-left: 0;
}

p#type_list_p{
    text-align: center;
    font-weight: bold;
}

table#type_list td{
    text-align:left;
}

p#charger_list_p{
    text-align: center;
    font-weight: bold;
    color: crimson;
}

table#tcharger_list td{
    text-align:left;
}

p#investigate_list_p{
    text-align: center;
    font-weight: bold;
}

table#investigate_list td{
    text-align:left;
}

p#use_list_p{
    text-align: center;
    font-weight: bold;
    color: crimson;
}

table#use_list td{
    text-align:left;
}

.type_radio input{
    float: none;
}

div.submit_div{
    text-align: center;
}

div.submit_div input{
    margin:5px;
}

div.name_block{
    padding:20px;
    margin:20px;
    border:1px solid #000;
}

table.name_table{
     border: 0 none;
    width: 500px;
    float: left;
}

table.name_table th{
    width: 30%;
}

table.name_table td{
	text-align: left;
}
table.name_table input{
	width:300px;
}

table.name_table td a {
	color: #333;
	text-decoration: none;		
}

table.name_table td a:hover {
	color: #448F34;
	text-decoration: underline;	
}

div.delete_button_div{
    clear:none;
}
div#add_div{
    text-align: center;
}

.red{
    color: red;
}

p.error_area{
    padding:0;
    color: red;
    font-weight: bold;
}

p.count_p{
    padding:0;
    font-weight: bold;
}

.joint_research th{
    padding: 8px 0px 8px 0px;
    text-align: center;
    width: 30%;
}

.joint_research td{
    padding: 8px 3px 8px 10px;
    font-size: 12px;
    background-color: #F7F7F7;
    text-align: left;
}

.joint_research td a {
    text-decoration: none;		
}

.joint_research td a:hover {
    text-decoration: underline;	
}

/*  Actions  */
div.pankuzu ul {
    margin: 0px 0;
    padding: 0;
}
div.pankuzu li {
    display: inline;
    list-style-type: none;
    line-height: 2em;
    margin: 0 2em 0 0;
    white-space: nowrap;
    float:right;
}
div.pankuzu ul li a {
    background:#fff;
    color: #059;
    text-decoration: none;
}
div.pankuzu ul li a:hover {
    color: #059;
    text-decoration: underline;
}

div.submit_div input{
    margin:5px;
    float: right;
    width: 150px;
    clear: none;
}


div.habtm_div label{
    float:none;
    margin:5px;
}

div.habtm_div > label{
    float: left;
    height: 60px;
}


div.habtm_div div.checkbox{
    display: inline-block;
    padding: 0;
}