@charset "UTF-8";

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+　ページ共有のスタイル
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* --------------------------------------------------------------------------------------
 基本設定
--------------------------------------------------------------------------------------- */

/* 基本フォント ------------------------------ */

body {
	color: #333333;
	font-family: Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 12px;
	line-height: 1.5;
}

input,textarea,select {
	font-family: Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 100%;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}

/*\*/
* html body {
	font-size: 80%;
}
* html table {
	font-size: 100%;
	line-height: 1.5;
}
*:first-child+html body {
	font-size: 80%;
}
/**/


/* 基本タグ ------------------------------ */

body,div,
h1,h2,h3,h4,h5,h6,
dl,dt,dd,ul,ol,li,
p,blockquote,pre,cite,code,caption,
form,fieldset,legend,input,textarea,select,option,label {
	margin: 0;
	padding: 0;
}

body {
	background: #F8F7F1;
	text-align: center;
}

img,table {
	border: none;
}

table {
	border-collapse: collapse;
}

ul {
	list-style: none;
}

li img,
dt img {
	vertical-align: bottom;
}

address,em,cite {
	font-style: normal;
}


/* 基本テキストリンク ------------------------------ */

a:link {
	color: #333333;
	text-decoration: none;
}
a:visited {
	color: #333333;
	text-decoration: none;
}
a:hover {
	color: #333333;
	text-decoration: underline;
}
a:active {
	color: #333333;
	text-decoration: underline;
}


/* --------------------------------------------------------------------------------------
 float解除
--------------------------------------------------------------------------------------- */

.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; }
.clearfix { display:inline-block; }
/*\*/
* html .clearfix { height:1%; }
.clearfix { display:block; }
/**/


/* --------------------------------------------------------------------------------------
 レイアウト枠
--------------------------------------------------------------------------------------- */

div#contents {
	width: 940px;
	margin: 0 auto;
	text-align: left;
}

div#contents .topicpath {
	padding: 18px 0 30px;
	font-size: 86%;
}

div#contents h1 {
	margin-bottom: 20px;
	padding-bottom: 3px;
	border-bottom: 3px solid #ECEADC;
}

div#main {
	float: left;
	width: 690px;
}

div#side {
	float: right;
	width: 220px;
}


/* --------------------------------------------------------------------------------------
 ヘッダー
--------------------------------------------------------------------------------------- */

div#header {
	position:relative;
	width: 940px;
	margin: 0 auto;
	text-align: left;
	background: url(../images/common/bg_line.gif) repeat-x left bottom;
}

div#header .logo {
	padding-top:19px;
	font-size: 0;
}


/* menu ------------------------------ */

div#header .menu {
	position: absolute;
	top: 11px;
	right: 0;
	font-size: 0;
}

div#header .menu li {
	float: left;
	padding-left: 15px;
}


/* search ------------------------------ */

div#header .search {
	position: absolute;
	top: 37px;
	/* left: 541px; */
	right: 0px;
}

div#header .search dt {
	position: absolute;
	top: 4px;
	left: 0;
	font-size: 0;
}

div#header .search dd {
	padding-left: 75px;
}

div#header .search dd input {
	vertical-align: top;
}

div#header .search dd .inputStyle {
	width: 117px;
	height: 16px;
	margin-right: -1px;
	padding: 2px;
	border: 1px solid #CCCCCC;
}
* html div#header .search dd .inputStyle {
	width:122px;
	height: 22px;
	padding: 4px 0;
	margin-top: -1px;
}
*:first-child+html div#header .search dd .inputStyle {
	height: 14px;
	margin-top: -1px;
	padding: 3px 0;
}


/* font ------------------------------ */

div#header .font {
	position: absolute;
	top: 38px;
	right: 0;
	width: 136px;
	font-size: 0;
}

div#header .font dt img {
	position: absolute;
	top: 6px;
	left: 0;
}

div#header .font dd {
	float: left;
	padding-left: 4px;
}

div#header .font dd.small {
	padding-left: 65px;
}

div#header .font dd span {
	display: block;
	width: 21px;
	cursor: pointer;
}

div#header .font dd.small span {
	background: url(../images/common/font_small_on.gif) no-repeat;
}
div#header .font dd.medium span {
	background: url(../images/common/font_medium_on.gif) no-repeat;
}
div#header .font dd.big span {
	background: url(../images/common/font_big_on.gif) no-repeat;
}

/* nav ------------------------------ */

div#header .nav {
	padding-top: 19px;
	font-size: 0;
}
div#header .nav:after { content:"."; display:block; height:0; clear:both; visibility:hidden; }
div#header .nav { display:inline-block; }
/*\*/
* html div#header .nav { height:1%; }
div#header .nav { display:block; }
/**/

div#header .nav li {
	float: left;
	margin-right: 19px;
}
div#header .nav li.end {
	margin-right: 0;
}

div#header .nav li img {
	display: block;
	border-bottom: 3px solid #ECEADC;
}
div#header .nav li.on a img,
div#header .nav li a:hover img {
	border-bottom: 3px solid #000000;
}


/* --------------------------------------------------------------------------------------
 メイン
--------------------------------------------------------------------------------------- */

div#main .pageNav {
	margin-top: 18px;
}

div#main .pageNav .link {
	margin-top: -1.5em;
	text-align: right;
}
* html div#main .pageNav .link {
	margin-top: -1.7em;
}

div#main .pageNav a {
	padding: 3px 2px;
	border: 1px solid #D5D5D5;
	background: #FFFFFF;
	font-size: 86%;
	zoom:1;
}

div#main .pageNav a:hover,
div#main .pageNav a:active {
	border: 1xp solid #D5D5D5;
	background: #000000;
	text-decoration: none;
	color: #FFFFFF;
}

div#main .pageNav a.on {
	border: 1xp solid #D5D5D5;
	background: #000000;
	color: #FFFFFF;
}

div#main .pageNav .link .pre {
	padding: 5px 0;
	border: none;
	background: none;
	margin-right: 10px;
}

div#main .pageNav .link .next {
	padding: 5px 0;
	border: none;
	background: none;
	margin-left: 10px;
}

div#main .pageNav .link .view_back {
	padding: 5px 0;
	border: none;
	background: none;
	margin-right: 10px;
}

div#main .pageNav .link .view_next {
	padding: 5px 0;
	border: none;
	background: none;
	margin-left: 10px;
}


div#main .pageNav a.pre:hover,
div#main .pageNav a.pre:active,
div#main .pageNav a.next:hover,
div#main .pageNav a.next:active,
div#main .pageNav a.view_back:hover,
div#main .pageNav a.view_back:active ,
div#main .pageNav a.view_next:hover,
div#main .pageNav a.view_next:active {
	border: none;
	background: none;
	text-decoration: underline;
	color: #333333;
}


/* --------------------------------------------------------------------------------------
 サイドナビ
--------------------------------------------------------------------------------------- */

div#side div.sideNav {
	width: 220px;
	margin-top: 18px;
	padding-bottom: 3px;
	background: #FFFFFF url(../images/common/bg_sidenav.gif) no-repeat left bottom;
}

div#side div.sideNav ul {
	padding: 0 3px;
	border-right: 1px solid #ECEADC;
	border-left: 1px solid #ECEADC;
}

div#side div.sideNav li {
	padding: 8px 4px 7px;
	background: url(../images/common/bg_line_dot.gif) repeat-x;
}
div#side div.sideNav li.noline {
	padding-top: 7px;
	background: none;
}

div#side div.sideNav li span {
	display: block;
	padding-left: 22px;
	background: url(../images/common/icon_arw01.gif) no-repeat left center;
	font-weight: bold;
}

div#side div.sideNav ul a:link,
div#side div.sideNav ul a:visited,
div#side div.sideNav ul a:hover,
div#side div.sideNav ul a:active {
	color: #7F7F7F;
}

/* --------------------------------------------------------------------------------------
 フッター
--------------------------------------------------------------------------------------- */

div#footer {
	margin-top: 90px;
	padding-bottom: 23px;
}

div#footer p {
	width: 940px;
	margin: 0 auto;
	text-align: right;
}

div#footer .footerNav {
	width: 100%;
	margin: 20px 0;
	background: #ECEADC;
}

div#footer .footerNav .navArea {
	width: 940px;
	margin: 0 auto;
	padding: 10px 0;
	background: #ECEADC;
	text-align: right;
	/*\*/
	overflow: hidden;
	/**/
}
/*\*/
div#footer .footerNav ul {
	margin-right: -17px;
}
/**/

div#footer .footerNav ul li {
	display: inline;
	padding: 0 16px;
	border-right: 1px solid #333333;
	font-size: 86%;
}

/* --------------------------------------------------------------------------------------
 Not Found
--------------------------------------------------------------------------------------- */

p.notFound {
	padding: 20px 0 100px ;
}

p.notFound strong {
	display: block;
	margin: 0 0 10px;
}