@charset "utf-8";

html {
	overflow-y: scroll;
}

body {
	color: #333;
	font-size: 14px;
	font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana, sans-serif;
	line-height: 1.5em;
	text-align: center;
	padding: 0;
	margin: 0;
	background-color: #FFF;
}

#container {
	margin: auto;
	width: 980px;
	text-align: center;
	height:auto;
	background-color: #FFF;
}


/* ヘッダー・グローバルナビゲーション */

#header {
	width: 980px;
	height:110px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}

#hnav {
	margin:0px;
	position: absolute;
	top: 8px;
	right: 10px;
	font-size: 11px;
	color: #999;
}

#hnav ul {
	margin: 0px;
	padding: 0px;
}

#hnav li {
	list-style-type: none;
	float: left;
	background-image: none;
	margin: 0;
	padding: 0 12px 0 0;
}

#hnav a:link, #hnav a:visited {
	color: #999;
	text-decoration: none;
}

#hnav a:active, #hnav a:hover {
	color: #999;
	text-decoration: underline;
}

#search {
	width: 300px;
	position: absolute;
	top: 40px;
	right: 50px;
	text-align: left;
}

#nav {
	width: 951px;
	height: 39px;
	margin: 0 auto 8px;
	padding: 0;
}

#nav ul {
	margin: 0;
	padding: 0;
}

#nav li {
	list-style-type: none;
	line-height: 0;
	float: left;
	background-image: none;
	margin: 0;
	padding: 0;
}

ul#pulldown-menu a {
	color: #383838;
	text-decoration: none;
}

ul#pulldown-menu ul li a:link, ul#pulldown-menu ul li a:visited {
	color: #383838;
	background-color: #f7f7f7;
	
}

ul#pulldown-menu ul li a:hover, ul#pulldown-menu ul li a:active {
	color: #fff;
	background-color: #6aa7ea;
}

ul#pulldown-menu li {
	float: left;
	position: relative;
}

ul#pulldown-menu li ul {
	display: none;
	top: 39px;
	left: 0;
	line-height: 0;
}

ul#pulldown-menu li:hover ul {
	display: block;
	position: absolute;
	z-index: 100;
}

ul#pulldown-menu ul li {
	float: none;
	font-size: 0;
	line-height: 0;
	border-top: 1px solid #CCC; 
}
ul#pulldown-menu ul li.last {
	border-bottom: 1px solid #CCC;
}

ul#pulldown-menu ul.menu1 li {
	width: 190px;
}

ul#pulldown-menu ul.menu2 li {
	width: 189px;
}

ul#pulldown-menu ul.menu3 li {
	width: 189px;
}

ul#pulldown-menu ul.menu4 li {
	width: 190px;
}

ul#pulldown-menu ul.menu5 li {
	width: 192px;
}

ul#pulldown-menu ul li a {
	display: block;
	text-align: center;
	padding: 8px 0;
	line-height: normal;
	font-size: 12px;
}

ul#pulldown-menu { /* IE6 対策 */
	behavior: url(csshover3.htc);
}


/* フッター */

#footer {
	width: 948px;
	height: auto;
	margin: 0 auto;
	padding: 0;
	clear: both;
	font-size: 12px;
}

#navtop {
	width: auto;
	margin: 0 0 1px;
	padding: 0;
	float: right;
	clear: right;
}

#address {
	width: 948px;
	margin: 0 auto;
	padding: 5px 0 0;
	clear: both;
	text-align: left;
	border-top: 1px solid #CCC;
}

#address-e {
	width: 948px;
	margin: 0 auto;
	padding: 5px 0 0;
	clear: both;
	text-align: left;
	border-top: 1px solid #CCC;
	font-size: 11px;
}

#copy {
	width: 948px;
	margin: 0 auto 8px;
	padding: 0;
	clear: both;
	text-align: left;
	color: #808080;
}


/* トップページコンテンツ */

#top {
	margin: 0 auto 12px;
	padding: 0;
	height: 317px;
	width: 948px;
}

#top img{
	margin: 0;
	padding: 0;
}

ul.photo {
   position: relative;
   overflow: hidden;
   margin: 0;
   padding: 0;
   height: 317px;
	width: 948px;
   list-style: none;
}

ul.photo li {
   position: absolute;
   top: 0;
   left: 0;
   margin: 0;
   padding: 0;
   background-image: none;
}

#top_frame {
	width: 670px;
	height: auto;
	padding: 0;
	margin: 0 0 0 16px;
	text-align: left;
	float: left;
	clear: left;
}

#news {
	width: 321px;
	height: auto;
	padding: 0;
	margin: 0;
	text-align: left;
	float: left;
	clear: left;
}

#seminar {
	width: 321px;
	height: auto;
	padding: 0;
	margin: 0;
	text-align: left;
	float: right;
	clear: right;
}

#news dl, #seminar dl {
	margin: 0 0 10px;
	padding: 12px 5px 0;
	height: 330px;
	width: auto;
	overflow: auto;
}

#news dt, #seminar dt {
	margin: 0;
	padding: 5px 0 0;
	float: none;
	padding: 0;
	background-image: none;
	font-weight: bold;
	color: #999;
	clear: both;
}

#news dd, #seminar dd {
	margin: 0;
	padding: 0 0 10px;
}

img.newsimg {
	float: left;
	clear: left;
	margin: 0 5px 0 0;
}

#banner {
	width: 248px;
	padding: 0;
	margin: 0 16px 0 0;
	float: right;
	clear: right;
}

#banner ul {
	margin: 0;
	padding: 0;
}

#banner ul li {
	margin: 0 0 10px;
	padding: 0;
	background-image: none;
	list-style-type: none;
	line-height: 0;
}

#banner ul li.text1 {
	background-image: url(image/bn3.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text1 a:link, #banner ul li.text1 a:visited, #banner ul li.text1 a:active, #banner ul li.text1 a:hover {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 21px 0 20px 15px;
	line-height: 15px;
}

#banner ul li.text2 {
	background-image: url(image/bn4.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text2 a:link, #banner ul li.text2 a:visited, #banner ul li.text2 a:active, #banner ul li.text2 a:hover {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 21px 0 20px 15px;
	line-height: 15px;
}

#banner ul li.text3 {
	background-image: url(image/bn5.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text3 a:link, #banner ul li.text3 a:visited, #banner ul li.text3 a:active, #banner ul li.text3 a:hover {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 21px 0 20px 15px;
	line-height: 15px;
}

#banner ul li.text4 {
	background-image: url(image/bn6.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text4 a:link, #banner ul li.text4 a:visited, #banner ul li.text4 a:active, #banner ul li.text4 a:hover {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 21px 0 20px 15px;
	line-height: 15px;
}

#banner ul li.text5 {
	background-image: url(image/bn7.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text5 a:link, #banner ul li.text5 a:visited, #banner ul li.text5 a:active, #banner ul li.text5 a:hover {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 21px 0 20px 15px;
	line-height: 15px;
}

#banner ul li.text6 {
	background-image: url(image/bn8.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text6 a:link, #banner ul li.text6 a:visited, #banner ul li.text6 a:active, #banner ul li.text6 a:hover {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 21px 0 20px 15px;
	line-height: 15px;
}

#banner ul li.text1nigyo {
	background-image: url(image/bn8.gif);
	background-position: 0 0;
	width: 248px;
	height: 56px;
	padding: 0;
	text-align: left;
}

#banner ul li.text1nigyo a:link, #banner ul li.text1nigyo a:visited, #banner ul li.text1nigyo a:active, #banner ul li.text1nigyo a:hover {
	color: whitesmoke;
	text-decoration: none;
	display: block;
	padding: 10px 0 20px 15px;
	line-height: 15px;
}

/* 全ページ共通コンテンツ */

#main {
	width: 949px;
	height: auto;
	margin: 0 auto;
	padding: 0 0 20px;
	text-align: left;
	overflow: hidden;
}

img {
	border-style: none;
}

img.ic {
	vertical-align: bottom;
}

.img_left {
	width: auto;
	float: left;
	margin: 0 15px 5px 45px;
	padding: 0;
}

.img_right {
	width: auto;
	float: right;
	margin: 0 45px 5px 15px;
	padding: 0;
}

.img_right_last {
	width: auto;
	float: right;
	margin: 0 45px 30px 15px;
	padding: 0;
}

hr {
	border: 1px dotted #999999;
	margin: 25px 15px;
	clear: both;
}

.clear {
	clear: both;
}

a:link {
	color: #5298E4;
}

a:visited {
	color: #5298E4;
}

a:active {
	color: #a1a1a1;
}

a:hover {
	color: #a1a1a1;
}

a:focus {
	outline:none;
}

.noborder { border:none; outline:none; }

h1 {
	margin: 0;
	position: absolute;
	top: 20px;
	left: 16px;
}

h2 {
	height: 18px;
	width: 918px;
	color: #FFF;
	margin: 0 auto 20px;
	padding: 45px 0 40px 30px;
	font-size: 18px;
	font-weight: bold;
	line-height: 18px;
	background-repeat: no-repeat;
}

h2.h2_1 {
	background-image: url(image/h2_1.jpg);
}

h2.h2_2 {
	background-image: url(image/h2_2.jpg);
}

h2.h2_3 {
	background-image: url(image/h2_3.jpg);
}

h2.h2_4 {
	background-image: url(image/h2_4.jpg);
}

h2.h2_5 {
	background-image: url(image/h2_5.jpg);
}

h2.h2_6 {
	background-image: url(image/h2_6.jpg);
}

h2.h2_7 {
	background-image: url(image/h2_7.jpg);
}

h2.h2_8 {
	background-image: url(image/h2_8.jpg);
}

h2.h2_9 {
	background-image: url(image/h2_9.jpg);
}

h2.h2_10 {
	background-image: url(image/h2_10.jpg);
}

h2.top {
	height: 53px;
	width: 321px;
	margin: 0 auto;
	padding: 0;
	background-image: none;
}

h2.twoline {
	height: 36px;
	padding: 40px 0 27px 30px;	
}

h2 span.small {
	font-size: 13px;
}

h3 {
	width: 933px;
	height: 16px;
	color: #FFF;
	font-size: 16px;
	background-image: url(image/h3.gif);
	background-repeat: repeat-x;
	margin: 20px auto 15px;
	padding: 12px 0 9px 13px;
	font-weight: normal;
	clear: both;
	line-height: 16px;
}

h3.first {
	margin-top: 15px;
}

h3.top {
	width: 707px;
	margin: 0 auto;
}

h4 {
	margin: 20px 15px 5px 25px;
	padding: 0;
	font-size: 15px;
	font-weight: bold;
	color: #5298E4;
}

h4.first {
	margin-top: 11px;
}

h5 {
	margin: 5px 15px 5px 30px;
	padding: 0;
	font-size: 14px;
	font-weight: bold;
}

sup, sub {
	font-size: 0.5em;
	line-height: 0.5em;
}

p {
	margin: 5px 25px 10px 35px;
	padding: 0;
	text-indent: 0.7em;
}

p.allindent {
	text-indent: 0;
	margin-left: 44px;
}

p.noindent { /* 字下げしない */
	text-indent: 0;
}

.first { /* 冒頭段落：上マージン多め */
	margin-top: 20px;
}

.last { /* 最終段落：下マージン多め */
	margin-bottom: 30px;
}

.both { /* 上下マージン多め */
	margin-top: 20px;
	margin-bottom: 30px;
}

.center {
	text-align: center;
	text-indent: 0;
}

.margin_top_none {
	margin-top: 0;
}

.margin_bottom_none {
	margin-bottom: 0;
}

.margin_img {
	margin-left: 0;
	margin-right: 0;
	text-align: center;
}


/* リスト */

ol {
	margin: 5px 25px 10px 34px;
	padding: 0 0 0 35px;
}

ol li {
	margin: 0;
	padding: 2px 0;
}

ul {
	margin: 5px 25px 10px 23px;
	padding: 0 0 0 25px;
}

ul li {
	list-style: none;
	padding: 2px 0 2px 20px;
	background-position: 0 7px;
	background-image: url(image/li.gif);
	background-repeat: no-repeat;
}

ul li ul {
	margin: 0 0 0 7px;
	padding: 0;
}

.list_first { /* 目次やリンクページ用：行間広め */
	margin-top: 20px;
}

ol.index { /* 目次やリンクページ用：行間広め */
	margin-top: 20px;
	margin-bottom: 25px;
}

ol.index li { /* 目次やリンクページ用：行間広め */
	padding: 8px 0 8px 20px;
}

ul.index { /* 目次やリンクページ用：行間広め */
	margin-top: 20px;
	margin-bottom: 25px;
}

ul.index li { /* 目次やリンクページ用：行間広め */
	list-style: none;
	padding: 8px 0 8px 20px;
	background-position: 0 13px;
	background-image: url(image/li.gif);
	background-repeat: no-repeat;
}

ul.index li ul {
	margin: 3px 0 0 7px;
	padding: 0;
}

ul.index li ul li {
	padding: 4px 0 4px 20px;
	background-position: 0 10px;
}

dl {
	margin: 5px 25px 5px 23px;
	padding: 0 0 0 25px;
}

dt {
	margin: 0;
	padding: 5px 0 0;
	float: none;
	padding: 0;
	background-image: none;
	font-weight: bold;
	color: #999;
	clear: both;
}

dd {
	margin: 0;
	padding: 0 0 10px 10px;
}


/* テーブル */

table {
	margin: 5px 25px 10px 45px;
	padding: 0;
}

table.center {
	margin: 5px auto 10px;
	text-align: left;
}

table.border {
	border-collapse: collapse;
	border-top: 1px dotted #9495B1;
}

table.border td {
	padding: 8px;
	border-bottom: 1px dotted #9495B1;
}

div.attention {
	margin: 30px 0 10px 40px;
	width: 450px;
	padding: 25px 35px;
	background-color: #ecf0f4;
}

div.attention-e {
	margin: 30px 0 10px 40px;
	width: 600px;
	padding: 25px 35px;
	background-color: #ecf0f4;
}


/* スタッフ */

table.staff {
	margin: 5px auto 10px;
	border-collapse: collapse;
	border-top: 1px dotted #9495B1;
	line-height: 1.3em;
}

table.staff td {
	width: 195px;
	padding: 8px 15px;
	border-bottom: 1px dotted #9495B1;
	vertical-align: top;
}

table.staff p {
	margin: 5px 10px 0 0;
	padding: 0;
	text-indent: 0;
}

span.name {
	font-size: 15px;
	font-weight: bold;
}

span.major {
	font-size: 12px;
}

table.individual {
	width: 700px;
	margin: 20px 45px 30px 0;
	border-collapse: collapse;
	border: 1px solid #999;
}

table.individual th {
	width: 170px;
	padding: 8px;
	border: 1px solid #999;
	background-color: #F4F4F4;
	font-weight: normal;
	text-align: center;
}

table.individual td {
	padding: 8px;
	border: 1px solid #999;
}

span.eng {
	font-size: 12px;
	line-height: 1.2em;
	color: #808080;
}

.img_individuum {
	width: auto;
	float: left;
	margin: 10px 20px 0 45px;
	padding: 0;
}


/* 受賞履歴 */

table.jusho {
	width: 870px;
	margin: 20px auto;
	border-collapse: collapse;
}

table.jusho td {
	padding: 8px;
	border-bottom: 1px dotted #9495B1;
}

table.prize {
	border-collapse: collapse;
}
table.prize th {
	padding: 8px;
	border-bottom: 1px dotted #9495B1;
}
table.prize td {
	padding: 8px;
	border-bottom: 1px dotted #9495B1;
}


/* アルバム */

table.album {
	margin: 20px auto;
}

table.album td {
	width: 200px;
	padding: 6px 8px;
	text-align: center;
}

table.album img {
	margin: 0 0 3px;
}


/* 数学科Q&A */

tr.color1 td {
	padding: 8px;
	background-color: #DCEAFA;
	text-align: left;
}

tr.color2 td {
	padding: 8px;
	background-color: #F4F4F4;
	text-align: left;
}


/* 進路・就職情報 */

table.shinro {
	width: auto;
	margin: 5px 45px 10px;
	border-collapse: collapse;
	border: 1px solid #999;
}

table.shinro th {
	padding: 6px;
	border: 1px solid #999;
	background-color: #F4F4F4;
	font-weight: normal;
	text-align: center;
}

table.shinro td {
	padding: 6px;
	border: 1px solid #999;
	text-align: center;
}

table.shinro2 {
	width: auto;
	margin: 5px 45px 10px;
	border-collapse: collapse;
	border: 1px solid #999;
}

table.shinro2 th {
	padding: 6px;
	border: 1px solid #999;
	background-color: #F4F4F4;
	font-weight: normal;
	text-align: center;
}

table.shinro2 td {
	padding: 6px;
	border: 1px solid #999;
	text-align: left;
}

/* セミナー・談話会・集中講義 */

table.seminar {
	width: auto;
	margin: 5px auto 10px;
	border-collapse: collapse;
	border: 1px solid #999;
}

table.seminar th {
	padding: 6px;
	border: 1px solid #999;
	background-color: #F4F4F4;
	font-weight: normal;
	text-align: center;
}

table.seminar td {
	padding: 6px;
	border: 1px solid #999;
	text-align: center;
	align: center;
}

/* 図書室 */
table.library{
    border-top:2px solid;
    border-bottom:2px solid;
    border-left:2px solid;
    border-collapse:collapse;
    border-spacing:0;
    background-color:#EEE;
    empty-cells:show;
}
.library th{
    border-right:2px solid #000;
    border-top:2px solid #000;
/*    border-right:2px solid #000;
    border-bottom:2px solid #000;*/
    /* color:#330000; */
    /* background-color: #5298E4; */
    color:#FFF;
    background-color: #69F;
    background-position:left top;
    padding:0.3em 1em;
    text-align:center;
}
th.library_sp {
    border-right:2px solid #000;
    border-top:0px solid #000;
    border-bottom:0px solid #000;
    /* color:#330000; */
    /* background-color: #5298E4; */
    color:#FFF;
    background-color: #69F;
    background-position:left top;
    padding:0.3em 1em;
    text-align:center;
}
.library td{
    border-right:2px solid;
    border-top:2px solid;
    border-bottom:2px solid;
    padding:0.3em 1em;
    text-align:center;
}

/* -> Japanese */
div.japanese {
	height: 6px; /* しょうがない */
	margin: 0px;
	padding: 2px 2px 2px 2px;
}
/* -> English */
div.english {
	height: 6px;
	margin: 0px;
	padding: 2px 2px 2px 2px;
}


/* ul 英語 access ページ用 */
ul li.nomark {
	list-style: none;
	padding: 2px 0 2px 20px;
	background-position: 0 7px;
	background-image: none;
}
