@charset "utf-8";
/*ReSet.css*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {
	outline: 0;
}

img {
	vertical-align: bottom;
}

/* clearfix */

.clearfix {zoom:1;}
.clearfix:after{
    content: "";
    display: block;
    clear: both;}

/* html */

html {
	font-size: 100%;
}

/* body */

body {
	color:#333;
	font-size: 62.5%;
	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #f4f4f4;
	/*background-image: url(../img/white_wall.png);*/
	background-color: #FFF;
}

/********* container **********/

#container {
	margin: auto;
	padding: 0;
}

/********* header *********/

#header {
	border-top: 4px solid #039;
	font-size: 1.2em;
	background-color: #FFF;
	box-shadow: 0 3px 4px rgba(0,0,0,0.3);
}

#hgroup {
	width: 960px;
	margin: 0 auto;
}

#header h2 {
	padding: 0;
	background-image: none;
	float: left;
}

/********* nav css sprite *********/

#nav {
	position: relative;
	height: 60px;
	background-image: url(../img/nav_bg.jpg);
	z-index: 9999;
	border-top: 1px solid #EEE;
}

#nav ul {
	width: 960px;
	height: 60px;
	margin: auto;
}

#nav ul li {
	display: block;
	text-indent: -2000em;
	float: left;
	background-image: url(../img/nav.jpg);
	background-repeat: no-repeat;
	height: 60px;
	width: 160px;
}

#nav ul li a {
	display: block;
	text-indent: -2000em;
	float: left;
	background-image: url(../img/nav.jpg);
	background-repeat: no-repeat;
	height: 60px;
	width: 160px;
}

#nav_01 a {background-position:0 0;}
#nav_01 a:hover, #nav_01_stay {background-position:0 -60px;}
        
#nav_02 a {background-position:-160px 0;}
#nav_02 a:hover, #nav_02_stay {background-position:-160px -60px;}
       
#nav_03 a {background-position:-320px 0;}
#nav_03 a:hover, #nav_03_stay {background-position:-320px -60px;}
        
#nav_04 a {background-position:-480px 0;}
#nav_04 a:hover, #nav_04_stay {background-position:-480px -60px;}

#nav_05 a {background-position:-640px 0;}
#nav_05 a:hover, #nav_05_stay {background-position:-640px -60px;}

#nav_06 a {background-position:-800px 0;}
#nav_06 a:hover, #nav_06_stay {background-position:-800px -60px;}

#nav ul.sub-menu {
	display: none;
}
#nav ul li:hover ul.sub-menu {
	display: block;
	padding: 60px 0 0;
}
#nav ul li ul.sub-menu li {
	float: none;
	background-image: none;
	height: 50px;
}
#nav ul li ul.sub-menu li a {
	width: 200px;
	height: 50px;
	position: relative;
	z-index: 9999;
	text-indent: 8px;
	line-height: 50px;
	background: #FFF;
	outline: 1px solid #DDD;
	color: #039;
	text-decoration: none;
	font-weight: bold;
	font-size: 14px;
	opacity: 0.9;
}
#nav ul li ul.sub-menu li a:hover {
	background: #fff;
	opacity: 1;
	color: #cc0066;
}

/********* image *********/
#image {
	/*margin: 10px 0 0;*/
	height: 300px;
	margin: 30px auto 0;
	/*background: url(../img/white_wave.png);*/
}

#image_box {
	overflow: hidden;
	width: 960px;
	height: 300px;
	margin: 0 auto;
	background: #FFF;
	border-bottom: 1px solid #999;
}

#image_box .bxslider li img {
}

/********* sub_image *********/
#sub_image {
	margin: 10px auto 0;
	padding: 0 10px;
}

/********* pankuzu *********/
#pankuzu {
	width: 960px;
	padding: 0;
	margin: 0 auto;
	font-size: 12px;
}

#pankuzu ul li {
	display: inline;
}

/********* page_top *********/

#toTop {
	position: absolute;
	bottom: -90px;
	right: 15px;
}

#toTop p {
	padding: 0;
}
#toTop p a img:hover {
	opacity: 1;
}

/* footer */

#footer {
	color: #FFF;
	text-align: center;
	/*font-weight: bold;*/
	text-shadow: 1px 1px 0 #000;
	box-shadow: 0 -3px 3px rgba(0,0,0,0.2);
	background: #1a1a1a;
/*	
	background-image: -webkit-linear-gradient(top, #333, #000);
	background-image: -moz-linear-gradient(top, #333, #000);
	background-image: -ms-linear-gradient(top, #333, #000);
	background-image: -o-linear-gradient(top, #333, #000);
	background-image: linear-gradient(to bottom, #333, #000);
*/	
	font-weight: bold;
	border-top: 4px solid #039;
	border-bottom: 4px solid #039;
}

#fgroup {
	font-size: 1.2em;
	line-height: 1.2em;
	padding: 20px 0 ;
	width: 960px;
	margin: 0 auto;
	text-align: left;
}

#fgroup ul {
	float: left;
	width: 220px;
	/*min-height: 120px;*/
	padding: 10px 20px 0 0;
	margin: 0 40px 0 0;
	border-right: 1px solid #333;
	letter-spacing: 1px;
}

#fgroup li {
	font-size: 1em;
	padding: 0 0 8px;
	list-style-image: url(../img/list_f.gif);
	list-style-position: inside;
}

#fgroup li span {
	padding: 5px 10px;
	font-size: 0.95em;
}

#fgroup li a {
	text-decoration: none;
	color: #FFF; 
}

#fgroup li a:hover {
	color: #039;
}

#fgroup li ul {
	padding: 5px 0;	
	margin: 0;
	border: none;
	min-height: 100px;
}

#fgroup li ul li {
	padding: 0 0 4px 0.5em;	
	margin: 0;
	list-style-image: none;
}

#fgroup ul.last-child {
	float: left;
	width: 340px;
	margin: 0;
	border-style: none;
	padding: 5px 0 0;
	line-height: 1.4em;
}

#fgroup .last-child li {
	list-style-image: none;
	padding: 0 0 5px;
}

#fgroup .last-child li a {
	text-decoration: underline;
}

/* address */

address {
	float: right;
	clear: both;
	display: block;
	margin: 0 20px 0 0;
}

address a {
	color: #FFF; 
}

/********** #aside **********/

#aside {
	padding: 0;
	margin: 0;
	float: left;
}

#aside .section {
	width: 225px;
	padding: 0;
	margin: 0 0 15px;
}

/********** #menu **********/

#menu {
   position: relative;
}

#menu li {
	font-size: 14px;
	height: 50px;
	line-height: 50px;
	text-indent: 10px;
	/*border: 1px solid #CCC;
	outline: 1px solid #FFF;*/
	list-style-image: url(../img/list_s.gif);
	list-style-position: inside;
	position: relative;
	overflow: hidden;
	margin: 0;
	border-bottom: 1px dotted #CCC;
}

#menu li ul {
	padding: 0;	
	margin: 0;
}

#menu li.last-child {
	margin: 0;
	border-bottom: 1px solid #CCC;
}

#menu li a {
	text-decoration: none;
	color: #333; 
	/*display:block;*/
}

#menu li a:hover {
	text-decoration: underline;
}

#menu li ul li {
	font-size: 14px;
	height: 40px;
	line-height: 40px;
	text-indent: 14px;
	border-style: none;
	padding: 0;
	margin: 0;
	list-style-image: none;
}

#menu .drop_7row:hover {
	height: 170px;
}

#aside .section * {/*アニメーション*/
   -moz-transition: .5s;
   -webkit-transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   transition: .5s;
}

#aside .sidebnr li {
	margin: 0 0 15px;
}

/********** contents **********/

#contents {
	position: relative;
	width: 960px;
	margin: 30px auto 90px;
	padding: 0;
	/*background: #FFF;
	box-shadow: 0 0 5px rgba(0,0,0,0.3);*/
}

#contents a img:hover {
	opacity: 0.8;
}

/* h */

h1 {
	padding: 8px 0 0;
	margin: 0 0 -10px;
	font-size: 12px;
	color: #666;
	display: block;
	text-align: right;
}

#main h2 {
	display: block;
	color: #039;
	font-size: 18px;
	font-weight: bold;
	padding: 28px 18px;
	margin: 0 0 20px;
	letter-spacing: 1px;
	clear: both;
	border-top: 4px solid #039;
	border-bottom: 1px solid #039;
/*	
	background: url(../img/h2_bg.jpg) no-repeat;
	padding: 18px;
	color: #FFF;
	font-weight: normal;
	border: none;
	border-radius: 4px;
*/
}

#main h2 span {
	font-size: 12px;
	color: #666;
	padding: 0 0 0 20px;
}


#aside h2 {
	/*background: url(../img/h2_bg_side.jpg) no-repeat;*/
	display: block;
	color: #039;
	font-size: 16px;
	font-weight: bold;
	padding: 24px;
	margin: 0;
	letter-spacing: 2px;
	border-top: 4px solid #039;
	border-bottom: 1px solid #039;
	clear: both;
/*	
	padding: 16px;
	color: #FFF;
	background-color: #039;
	border: none;
*/
}

#fgroup .last-child li h2 {
	color: #FFF;
	font-weight: bold;
	font-size: 1.2em;
}

h3 {
	display: block;
	color: #039;
	height: 16px;
	font-size: 16px;
	font-weight: bold;
	padding: 16px;
	border-bottom: 2px solid #039;
	border-left: 2px solid #039;
	margin: 40px 0 15px;
	clear: both;
}

h3.h3img {
	display: block;
	height: auto;
	padding: 0 10px;
	border: none;
}

h4 {
	display: block;
	font-size: 16px;
	font-weight: bold;
	padding: 16px;
	margin: 30px 0 10px;
	color:#039;
	text-align: left;
	clear: both;
	border-left: 6px solid #039;
}

h5 {
	font-size: 16px;
	font-weight: bold;
	padding: 6px 16px;
	margin: 20px 5px 10px;
	color: #039;
	text-align: left;
	/*display: inline-block;
	border-radius: 2px;*/
	clear: both;
	border-bottom: 1px dotted #039;
}

/* #main */

#main {
	float: right;
	width: 690px;
}

#main a img:hover {
	opacity: 0.8
;
}

#main .concept {
	text-align: center;
	font-size: 1.6em;
}

#main .concept_l {
	text-align: left;
	font-size: 1.6em;
	padding: 0 0 0 15px;
}

#main .concept span, #main .concept_l span {
	font-weight: bold;
	color: #333;
}

/* .section */

#main .section {
	width: 690px;
	padding: 0;
	margin: 0;
	float: right;
/*	outline: 1px solid #CCC;
	box-shadow: 0 0 3px rgba(0,0,0,0.3);*/
}

#main .section p {
	font-size: 1.4em;
	line-height: 1.6em;
	padding: 0 5px;
	margin: 0 0 1em;
}

#main .section .note {
	font-size: 1.2em;
	line-height: 1.5em;
	padding: 10px;
	margin: 10px;
	outline: 1px dotted #CCC;
}

#main .section p span {
	font-weight: bold;
	color: #cc0066;
}

#main .section p span.focus {
	font-weight: bold;
	line-height: 1.6em;
	color: #F30;
}

#main .section p span.tx_r {
	float: right;
	color: #333;
}

#main .section p .photo_r {
	float: right;
	margin: 0 0 0 10px;
}

#main .section p .photo_l {
	float: left;
	margin: 0 10px 0 0;
}

#main .section .desc {
	font-size: 1.6em;
}

#main .section p span.page_link {
	float: right;
}

#main .section p span.page_link a {
	color: #0071B9;
}

#main .section dl {
	width: 688px;
	font-size: 1.3em;
	margin: 0 0 20px;
}

#main .section dt {
	float: left;
	width: 100px;
	padding: 25px 10px 15px;
	margin: 5px 0;
	border-bottom: 1px solid #1D2087;
	color: #1D2087;
	font-weight: bold;
}

#main .section dd {
	float: left;
	width: 540px;
	padding: 25px 10px 15px;
	margin: 5px 0;
	border-bottom: 1px solid #CCC;
}

/* .map */

#main .section .map {
	padding: 0;
	margin: 0 5px 20px;
	outline: 1px solid #CCC;
}

/* table */

table {
	width: 690px;
	margin: 20px 0;
	font-size: 1.3em;
	text-align: left;
	vertical-align: top;
	line-height: 1.4em;
	border-collapse: separate;
	border-spacing: 1px 1px;
}

tr {
	height: 20px;
}

th {
	width: 120px;
	padding: 15px;
	vertical-align: middle;
	margin: 0 5px 5px 0;
	border: 1px solid #ccc;
	background-color: #F2F2F2;
}

td {
	padding: 15px;
	vertical-align: middle;
	margin: 0 0 5px;
	border: 1px solid #ccc;
}

/* .item */

.category {
	width: 690px;
	float: left;
	margin: 0 0 15px;
	padding: 0;
}
.category.last-child {
	width: 690px;
	float: left;
	padding: 0;
	margin: 0 0 60px;
}

#main .section .category .item {
	width: 220px;
	float: left;
	padding: 0;
	margin: 0 15px 0 0;
	/*border: 1px solid #CCC;*/
}

#main .section .category .item h3 {
	font-weight: bold;
	font-size: 1.4em;
	margin: 8px 0 0;
	color: #039;
	padding: 0;
	border: none;
}

#main .section .category .item.last-child {
	float: left;
	margin: 0;
}

#main .section .category .item p {
	padding: 0;
	font-size: 1.2em;
}

#main .section p span.page_link {
	float: right;
	margin: 15px 0 0;
}

#main p.cont_bnr {
	padding: 0;
	margin: 0;
}

#main .section ul {
	font-size: 1.4em;
	padding: 10px 0 30px 10px;
	line-height: 1.6em;
}

#main .section li {
	padding: 0 0 15px;
	font-size: 1.2em;
	list-style-image: url(../img/list_s.gif);
	list-style-position: inside;
}

#main .section li a {
	color: #333;
	text-decoration: none;
}

#main .section li a:hover {
	text-decoration: underline;
}

#main .section li ul {
	font-size: 0.75em;
	padding: 0.5em 0 0;	
	margin: 0 0 -4px;
}

#main .section li ul li {
	border: none;
	padding: 0 0 4px 1em;	
	margin: 0;
	list-style-image: none;
}

/********** 新着情報 ***********/
#main .section .news {
	width: 658px;
	border: 1px solid #DDD;
	padding: 15px;
}

#main .section .news dd {
	width: 638px;
}
	
	
	
	
