@charset "utf-8";
@import"font.css";

* {
		margin: 0;
		padding: 0;
}

a:link {
		text-decoration: underline;
		background-color: transparent;
		color: #00f;
}

a:visited {
		text-decoration: underline;
		background-color: transparent;
		color: #90f;
}

a:hover {
		text-decoration: underline;
		background-color: transparent;
		color: #f00;
}

a { overflow: hidden; }

.skip { display: none; }

body {
		text-align: center;
		font-size: 90%;
		font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
		margin: 0;
		padding: 0;
}

.small { font-size: 90%; }

.medium { font-size: 100%; }

.large { font-size: 120%; }

p,
li {
		line-height: 1.5em;
		margin-bottom: 0.5em;
}

/* ==================================== レイアウト */

#bg { background: url(../image/bg.jpg) repeat-x 0 0; }

#home #bg { background: url(../image/bg-home.jpg) repeat-x 0 0; }

#header {
		width: 100%;
		background: url(../image/bg-header.jpg) repeat-x 0 0;
}

#home #header { background: url(../image/bg-header-home.jpg) repeat-x 0 0; }

#header .inner {
		text-align: left;
		width: 900px;
		height: 110px;
		margin: 0 auto;
		position: relative;
		background: url(../image/bg-header-inner.jpg) no-repeat 0 0;
}

#wrapper {
		text-align: left;
		width: 900px;
		margin: 0 auto;
		background: url(../image/bg-wrapper.jpg) no-repeat 100% 0;
}

#home #wrapper { background: url(../image/bg-wrapper-home.jpg) no-repeat 100% 0; }

#content {
		width: 620px;
		float: right;
		padding: 170px 0 0;
}

#home #content { padding: 350px 0 0; }

.h{ height: 400px; }

#sidebar {
		width: 240px;
		float: left;
		padding-bottom: 70px;
		background: url(../image/bg-sidebar.jpg) no-repeat 0 100%;
}

#sidebar .inner {
		width: 230px;
		padding: 0 5px;
		background: url(../image/bg-sidebar-inner.jpg) repeat-y;
}

#home #sidebar .inner { background-position: 0 400px; }

#undernavi {
		width: 620px;
		padding-left: 280px;
		clear: both;
}

#footer {
		width: 900px;
		height: 120px;
		margin: 0 auto 10px;
		background: url(../image/bg-footer-inner.jpg) no-repeat 100% 0;
}

#footer .inner {
		width: 620px;
		padding-left: 280px;
}

/* ==================================== header */
#header p.logo {
		text-indent: -9999px;
		width: 240px;
		height: 80px;
		margin: 0;
		background: url(../image/bg-logo.jpg) no-repeat 0 0;
		position: absolute;
		top: 30px;
		left: 0;
		z-index: 999;
}

#header p.logo a {
		text-decoration: none;
		display: block;
		width: 240px;
		height: 80px;
		margin: 0;
		background-image: none;
}

#header p.logo a:hover {
		text-decoration: none;
		background: url(../image/bg-logo.jpg) no-repeat -240px 0;
}

h1 {
		font-size: 100%;
		font-weight: normal;
		line-height: 20px;
		position: absolute;
		top: 5px;
		left: 20px;
		color: #fff;
}

ul.headernavi {
		list-style-type: none;
		width: 500px;
		height: 30px;
		margin: 0;
		padding: 0;
		position: absolute;
		top: 0;
		right: 0;
}

ul.headernavi li {
		text-align: center;
		float: left;
		width: 100px;
		line-height: 30px;
		margin: 0;
}

ul.fontsize {
		list-style-type: none;
		width: 120px;
		height: 30px;
		margin: 0;
		padding: 0;
		position: absolute;
		top: 80px;
		right: 0;
		background: url(../image/bg-fontsize.jpg) no-repeat 0 0;
}

ul.fontsize li {
		text-indent: -9999px;
		float: left;
		width: 40px;
		height: 30px;
		margin: 0;
}

ul.fontsize a {
		text-decoration: none;
		display: block;
		width: 40px;
		height: 30px;
}

ul.fontsize a:hover { text-decoration: none; }

p.topicpath {
		line-height: 30px;
		height: 30px;
		margin: 0;
}

div.headline {
		width: 565px;
		height: 90px;
		overflow: hidden;
		margin: 0;
		padding: 0 20px 0 35px;
		background: url(../image/bg-headline.jpg) no-repeat 0 0;
}

div.headline h2 {
		font-size: 140%;
		font-weight: normal;
		line-height: 50px;
		margin: 0;
		color: #003366;
}

div.headline p {
		text-align: right;
		font-size: 85%;
		line-height: 1em;
		margin: 0;
}

ul.temp { margin: 0 0 0 2em; }

/* ==================================== globalnavi */
ul#menu {
		list-style-type:none;
		width: 230px;
		margin: 0;
		padding: 0;
		background-color: #eee;
}

ul#menu ul {
		list-style-type:none;
		width: 220px;
		margin: 0 5px 20px;
		padding: 0 0 15px;
		background: url(../image/bg-menu-ul.jpg) no-repeat 50% 100%;
}

ul#menu span {
		font-size: 85%;
		display: block;
		line-height: 1.2em;
		margin: 4px 0 0;
		padding: 5px 10px 0 10px;
		border-top: 1px dotted #ccc;
		color: #666;
}

ul#menu a {
		display: block;
		text-decoration: none;
}

/*ul#menu li { margin-top: 1px; }*/

ul#menu li {
		width: 230px;
		margin-bottom: 0;
}

ul#menu ul li {
		width: 200px;
		margin: 0 10px;
}

ul#menu li a {
		width: 210px;
		height: 70px;
		padding: 10px 0 0 20px;
		background: url(../image/bg-menu-title.jpg) no-repeat 0 0;
		color: #000;
}

ul#menu li a:hover {
		background: url(../image/bg-menu-title.jpg) no-repeat -230px 0;
		color: #f00;
}

ul#menu li ul li a {
		width: 190px;
		height: 30px;
		line-height: 30px;
		padding: 0 0 0 10px;
		background: #fff url(../image/bg-menu-a.jpg) no-repeat 0 50%;
		color: #00f;
}

ul#menu li ul li a:hover,
ul#menu li ul .current a {
		background: #fff url(../image/bg-menu-hover.jpg) no-repeat 0 50%;
		color: #f00;
}

#undernavi ul {
		list-style-type: none;
		margin: 0;
		padding: 0.5em 1em;
}

#undernavi li {
		display: inline;
		margin: 0;
		padding: 0 1em 0 0;
}

#undernavi p {
		text-align: right;
		margin-bottom: 2em;
}

/* ==================================== footer */
p.copy {
		line-height: 40px;
		margin-bottom: 0.5em;
		color: #fff;
}

#footer p.logo {
		line-height: 1em;
		margin-bottom: 0.5em;
		padding-right: 2em;
		color: #fff;
}

#footer p.logo a {
		text-decoration: none;
		color: #fff;
}

#footer p.logo a:hover {
		text-decoration: none;
		color: #fff;
}

#footer p.logo span { padding-left: 0.5em; }

address {
		color: #fff;
		font-style: normal;
}
