@charset "utf-8";

/* 大枠 */
html,
body {
	height: 100%;
	}
body {
	font-size: 14px; 
	line-height: 1.6;
	}
#wrapper {
	width: 100%;
	min-width: 960px;
	position: relative;
	}
body > #wrapper {
	height: auto;
	}
.clearfix:after {
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0;
    }
	
/* リンク */
a:link    {color:#333; text-decoration: underline;}
a:visited {color:#333; text-decoration: underline;}
a:hover   {color:#333; text-decoration: none;}
a:active  {color:#333; text-decoration: none;}

/* アクセシビリティ */
.guidance {
	left: -999px;
	position: absolute;
	width: 990px;
	}
img {
	vertical-align: bottom;
	box-shadow: #000 0 0 0; /* ロールオーバー対応 */
	}
img, x:-moz-any-link, x:default {
    box-shadow: #000 0 0 0; /* IE7対応 */
	}

/* ▼▼▼ ヘッダー
=====================================*/
#header {
	width: 100%;
	min-height: 211px;
	background: url(../img/bg_header.png) repeat-x left top;
	overflow: hidden;
	}
#header_inner {
	width: 950px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	}
	#header_inner .box {
		float: right;
		width: 372px;
		}
		#hnav li {
			float: left;
			margin: 0 0 12px 2px;
			}
		#header_inner .box .tel {
			margin: 0 0 10px 5px;
			}
		#header_inner .box .sub {
			margin-left: 5px;
			overflow: hidden;
			}
			#header_inner .box .sub li {
				float: left;
				margin-right: 20px;
				line-height: 36px;
				}
			#header_inner .box .sub li:last-child {margin-right: 0;}
				#header_inner .box .sub li a {
					background: url(../img/arrow_header.gif) no-repeat left center;
					padding-left: 17px;
					color: #fff;
					}
				#header_inner .box .sub li a:hover {
					text-decoration: none;
					}

/* タイトル */
#site_title {
	float: left;
	margin: 36px 0 0 0;
	overflow: hidden;
	}
h1.title {
	margin: 0 0 20px 0;
	}	

		
/* グローバルナビゲーション */
ul#gnav {
	width: 950px;
	margin: 0 auto;
	clear: both;
	overflow: hidden;
	}
	ul#gnav li {
		float: left;
		}
	#gnav li.outline {background: url(../img/gnav01_over.png) no-repeat left top;}
	#gnav li.schedule {background: url(../img/gnav02_over.png) no-repeat left top;}
	#gnav li.event {background: url(../img/gnav03_over.png) no-repeat left top;}
	#gnav li.company {background: url(../img/gnav04_over.png) no-repeat left top;}
	#gnav li.access {background: url(../img/gnav05_over.png) no-repeat left top;}
		

/* ▼▼▼ メイン 「コンテンツとサイドを囲む要素」
=====================================*/
#main {
	width: 950px;
	padding-bottom: 50px;
	margin: 0 auto;
	clear: both;
	}

/* パンくず */
ol#path {
	margin: 10px 0;
	overflow: hidden;
	}
	ol#path li {
		float: left;
		background: url(../img/path.gif) no-repeat left center;
		padding-left: 13px;
		margin-left: 10px;
		}
	ol#path li:first-child {
		width: 15px;
		background: url(../img/icon_home.gif) no-repeat left center;
		padding: 0;
		margin: 0;
		text-indent: -9999px;
		}
		ol#path li:first-child a {display: block;}


/* コンテンツ */
#contents {
	float: right;
	width: 690px;
	padding-bottom: 90px;
	padding-left: 20px;
	}
.detail {
	font-size: 14px;
	clear: both;
	overflow: hidden;
	}	
#home .detail {
	margin-left: 10px;
	font-size: 14px;
	font-weight: normal;
	}
	.detail a {
		background: url(../img/arrow_detail.gif) no-repeat right center;
		padding-right: 19px;
		}	

/* ▼▼▼ サイド
=====================================*/
#side {
	float: left;
	width: 210px;
	padding-bottom: 90px;
	overflow: hidden;
	}
	#side > dl {overflow: hidden;}
	#side .sub {
		height: 110px;
		background: url(../img/snav_bg.png) no-repeat left top;
		margin: 5px 0 15px;
		overflow: hidden;
		}
		#side .sub > ul {
			padding: 13px 10px 0
			}
			#side .sub > ul li {
				margin-bottom: 6px;
				}
	#side .contact_side {
		background: #F7F5F3;
		padding: 30px 10px 10px;
		margin: 15px 0 0;
		overflow: hidden;
		}
	#side li.exhibit {background: url(../img/snav01_over.png) no-repeat left top;}
	#side li.faq {background: url(../img/snav02_over.png) no-repeat left top;}
	#side li.event {background: url(../img/snav03_over.png) no-repeat left top;}
	
	
/* ▼▼▼ フッター
=====================================*/
#footer {
	width: 100%;
	background: #666 url(../img/bg_footer.png) repeat-x left top;
	padding: 15px 0;
	color: #333;
	clear: both;
	overflow: hidden;
	}
.footer_inner {
	width: 960px;
	margin: 0 auto;
	position: relative;
	clear: both;
	overflow: hidden;
	}
	.contact {
		float: left;
		width: 522px;
		background: url(../img/bar.png) repeat-y right top;
		padding: 16px 35px 11px 0;
		/* margin-bottom: 43px; */
		overflow: hidden;
		}
	.facebook {
		float: right;
		width: 370px;
		padding-top: 10px;
		overflow: hidden;
		}
	.f01 {padding-bottom: 25px;}
	.f02 {padding-top: 20px;}
	.logo {
		float: left;
		margin-right: 60px;
		}
	ul#bnav {
		border-left: 1px solid #fff;
		padding-left: 20px;
		margin: 12px 0 17px;
		overflow: hidden;
		}
		ul#bnav li {
			float: left;
			border-right: 1px solid #fff;
			padding-right: 20px;
			margin-right: 20px;
			}
			ul#bnav li a {
				color: #fff;
				text-decoration: none;
				}
			ul#bnav li a:hover {
				text-decoration: underline;
				}
	ul#fnav {
		width: 420px;
		margin-bottom: 80px;
		overflow: hidden;
		}
		ul#fnav li {
			float: left;
			background: url(../img/arrow_footer.gif) no-repeat left center;
			padding-left: 15px;
			margin: 0 30px 10px 0;
			}


/* ▼ ページ上部へ戻る */
.pagetop {
	position: absolute;
	top: 23px;
	right: 0;
	}
	
/* ▼ コピーライト */
#copyright {
	font-size: 12px;
	text-align: right;
	}


/* ▼▼▼ トップ
=====================================*/

#home #main {padding-bottom: 70px;}
/* ▼ スライダー */
#mainVisual {
	height: 390px;
	background: url(../img/top/mainVisual.jpg) no-repeat left top;
	margin-bottom: 30px;
	position: relative;
	overflow: hidden;
	}	
	#mainVisual .date {
		position: absolute;
		top: 36px;
		left: 27px;
		}
	#mainVisual .box {
		position: absolute;
		top: 36px;
		right: 32px;
		}
		#mainVisual .box div {
			float: right;
			width: 411px;
			height: 155px;
			background: url(../img/top/visual_box.png) no-repeat left top;
			margin-bottom: 15px;
			}
		#mainVisual .box div.last {
			width: 588px;
			background: url(../img/top/visual_box02.png) no-repeat left top;
			}
			#mainVisual .box div p {
				padding: 15px 0 10px;
				margin-left: 35px;
				/* text-align: center; */
				}
				#mainVisual .box div ul {
					width: 340px;
					margin: 0 auto;
					overflow: hidden;
					}
				#mainVisual .box div.last ul {
					width: 518px;
					}
					#mainVisual .box div ul li {
						float: left;
						margin-right: 12px;
						}
					#mainVisual .box div ul li:last-child {
						margin-right: 0;
						}
	#mainVisual .finish {
		position: absolute;
		bottom: 0;
		left: 22px;
		}
	#mainVisual .result {
		position: absolute;
		top: 30px;
		right: 20px;
		}
	#mainVisual .next {
		position: absolute;
		bottom: 15px;
		left: 30px;
		}
.nav {
	margin-bottom: 30px;
	clear: both;
	overflow: hidden;
	}	
	.exhibit_top,
	.attendance {
		border-radius: 10px;
		padding: 25px 20px;
		text-align: center;
		behavior: url(/PIE.htc);
		position: relative;
		overflow: hidden;
		}
		.nav ul {
			margin-top: 25px;
			overflow: hidden;
			}
		.nav .attendance ul {width: 284px;margin: 25px auto 0;}
		.nav ul li {
			float: left;
			background: #fff;
			margin-right: 1px;
			}
		.nav ul li:last-child {margin-right: 0;}
	.attendance {
		float: left;
		width: 543px;
		background: url(../img/top/attendance_bg.png);
		border: 2px solid #F9CCD0;
		}	
	.exhibit_top {
		float: right;
		width: 285px;
		background: url(../img/top/exhibit_bg.png);
		border: 2px solid #9FD7FE;
		}	
					
#home h2.subtitle {
	margin-bottom: 20px;
	clear: both;
	}
#home h3.subtitle {
	margin-bottom: 10px;
	color: #1D4B9E;
	font-size: 21px;
	font-weight: bold;
	}
#home h4.teacher {
	border-left: 6px solid #1D4B9E;
	padding-left: 10px;
	margin-bottom: 10px;
	color: #1D4B9E;
	font-size: 16px;
	font-weight: bold;
	clear: both;
	}
#home ul.list {
	border-top: 1px dotted #ccc;
	padding-top: 10px;
	overflow: hidden;
	}	
	#home ul.list li {
		float: left;
		width: 170px;
		font-size: 13px;
		}	
		#home ul.list li a {
			background: url(../img/arrow.gif) no-repeat left center;
			padding-left: 14px;
			}
		#home ul.list li .left {margin-right: 10px;}
		#home ul.list li .name {
			display: block;
			overflow: hidden;
			}
#s01,#s02 {
	margin-bottom: 70px;
	clear: both;
	overflow: hidden;
	}
	#s01 .s01_01 {
		float: left;
		width: 420px;
		overflow: hidden;
		}
		#s01 .s01_01 li:last-child {width: 250px;}
	#s01 .s01_02 {
		float: right;
		width: 510px;
		overflow: hidden;
		}
#s02 {margin-bottom: 0;}
	#s02 .s02_01,
	#s02 .s02_02,
	#s02 .s02_03 {
		margin-bottom: 40px;
		position: relative;
		overflow: hidden;
		}
	#s02 .s02_01 {
		background: url(../img/top/logo.png) no-repeat 515px top;
		font-size: 16px;
		}
		#s02 .txt_box {
			width: 610px;
			margin-bottom: 20px;
			line-height: 1.8;
			}
			#s02 .txt_box .detail {text-align: right;}
	#home #s02 ul.list li {
		width: 237px;
		}	
	#s02 .s02_03 {
		min-height: 306px;
		}
	#s02 .s02_03 .photo {
		position: absolute;
		top: 0;
		right: 0;
		}
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
			
			