@charset "UTF-8";

/* ---------------------------------------------------------------- *
	全体に関わる設定
 * ---------------------------------------------------------------- */

body {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #444444;
	font-size: 13px;
	*font-size: small;
	*font: small;
	line-height: 1.8;
}

a,
a:link {
	color: #225EB3;
	text-decoration: none;
}

a:visited {
	color: #225EB3;
}

a:hover {
	color: #F60;
	text-decoration: underline;
}


p {
	line-height: 1.8;
	margin-top: 0;
	margin-bottom: 0.6em;
}
i.fa { margin: 0 0.3em 0 0.4em; }
ul, ol, dl {
	line-height: 1.7;
}

table, table p {
	line-height: 1.7;
	margin-top: 0;
	margin-bottom: 0;
}



h1 {
	margin: 25px 0;
	font-size: 180%;
	font-weight: bold;
	border-left-width:7px;
	border-left-style: solid;
	border-left-color: #005BAC;
	line-height: 1.6;
	padding-left: 15px;
}

h2 {
	margin-top: 40px;
	margin-bottom: 15px;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2;
	color: #005BAC;
}

h3 {
	margin-bottom: 15px;
	font-size: 18px;
	font-weight: bold;
}

h5 {
	margin-bottom: 15px;
	line-height: 1.7;
	font-size: 14px;
	font-weight: bold;
	color: #F60;
}

.flame {
	border: 1px solid #DDD;
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 2px 2px 2px 3px;
}

h4 {
	font-size: 100%;
	font-weight: bold;
	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: #4978C8;
	padding-left: 10px;
	line-height: 1.5;
	padding-top: 5px;
	padding-bottom: 5px;
	background-color: #F7F7F7;
}


/* テキストサイズ個別設定　*/

.mtitle {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 7px;
}

.stitle {
	color: #225EB3;
	font-size: 100%;
	font-weight: bold;
}

.text-s {
	font-size: 90%;
}

.text-ss {
	font-size: 80%;
}

.style-red {
	color: #C00;
	font-weight: bold;
	font-size: 110%;
}

.style-red2 {
	color: #C00;
	font-weight: bold;
	font-size: 110%;
}
.style-red2 a, .style-red2 a:link {
	color: #C00;
	text-decoration: underline;
}

.style-red2 a:visited {
	color: #C00;
}

.style-red3 {
	color: #C00;
}
.style-red3 a, .style-red3 a:link {
	color: #C00;
	text-decoration: underline;
}

.style-red3 a:visited {
	color: #C00;
}


/* 余白　*/
.space5 { padding-bottom: 5px; }
.space10 { padding-bottom: 10px; }
.space15 { padding-bottom: 15px; }
.space20 { padding-bottom: 20px; }
.space25 { padding-bottom: 25px; }
.space30 { padding-bottom: 30px; }
.space40 { padding-bottom: 40px; }

.clear { clear: both; }


/* ---------------------------------------------------------------- *
	テーブル設定
 * ---------------------------------------------------------------- */

/* 一般表組み　*/

.table_general {
	border-top: 1px solid #aaa;
	border-left: 1px solid #aaa;
	font-size: 100%;
	border-collapse:separate;
}


table.table_general tr:hover td {
	background-color: #EDF3FE; /* 行の背景色 */
}

.table_general td,.table_general th {
	border-collapse:separate;
	padding-top: 4px;
	padding-right: 5px;
	padding-bottom: 3px;
	padding-left: 7px;
}

.table_general th {
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	border-right: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	background-color: #F6F6F6;
	font-weight: bold;
	white-space: nowrap;
}
.table_general th.left {
	text-align:left;
}
.table_general .center {
	text-align:center;
}

.table_general td {
	background-color: #fff;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #aaa;
	border-bottom-color: #aaa;
}

.table_general td.ja {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #ddd;
}

.table_general td.no {
	border-bottom-style: none;
}

.table_general td.pdf {
	padding-right: 3px;
	padding-left: 3px;
}

.table_general th.color, .table_general td.color {
	background-color: #669DCD;
	font-weight: bold;
	color: #FFF;
	border-top-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #fff;
	border-left-color: #fff;
}

.table_general tr:hover td.color { background-color: #669DCD; }
.table_general td.color a:link { color: #fff; }
.table_general td.color a:visited { color: #fff; }
.table_general td.color a:hover { color: #F60; }


/* タイムテーブル表組み　*/

.table_timetable {
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	font-size: 90%;
	border-collapse: separate;
	line-height: 1.5;
	text-align: center;
	width:100%;
}

.table_timetable td,.table_timetable th {
	border-collapse:separate;
	padding-top: 6px;
	padding-right: 3px;
	padding-bottom: 4px;
	padding-left: 4px;
}

.table_timetable th {
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	border-right: 1px solid #669DCD;
	border-bottom: 1px solid #669DCD;
	background-color: #669DCD;
	font-weight: bold;
	white-space: nowrap;
	color: #FFF;
}

.table_timetable td {
	background-color: #fff;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #ccc;
	border-bottom-color: #ccc;
}

.table_timetable td.no {
	border-right-style: none;
}

.table_timetable a {
  display: block;
/*	display:block;width:100%;height:100%;*/
}
/*
.table_timetable td.session:hover {
	background-color: #EDF6FF;
}
*/
.table_timetable td.session {
	background-color: #EDF6FF;
}
.table_timetable td.igil a {
  display: inline;
}


.table-underline td {
	padding: 5px;
	vertical-align: top;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999999;
}

.table-underline th {
	padding: 5px;
	vertical-align: top;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999999;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999999;
}



.table-mokuhyou td {
	vertical-align: top;
	padding-top: 2px;
	padding-right: 5px;
	padding-bottom: 0px;
	padding-left: 5px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999999;
}



.list-line li {
	background-image: url(../image/icon-list-blue.png);
	background-repeat: no-repeat;
	background-position: 4px 12px;
	padding: 4px 0px 2px 15px;
	margin-bottom: 3px;
	border-bottom: 1px dotted #999;
}
.list-line li.noborder {
	border-style: none;
}

.list li {
	background-image: url(../image/icon-list-blue.png);
	background-repeat: no-repeat;
	background-position: 0px 10px;
	padding: 3px 0px 0px 10px;
}

