@charset "shift_jis";
/* 全ページ共通の枠組み指定 */
body {
	margin:0;
	border-top:2px solid #9e9e9e;
}
body#top{
	background-color:#fafafa;
}
img {
	border:0;
	margin:0;
	padding:0;
	vertical-align:top;
}
form {
	margin: 0;
	padding: 0;
}

/* 全体
***********************************************************************************************************************/
.wrapper {
	width: 960px;
	margin: auto;
}

/* ヘッダー
***********************************************************************************************************************/
#header {
	padding:0 0 18px;
	background-color:#FFFFFF;
}
#logo {
	float: left;
	padding:14px 0 0;
	margin:0 0 17px;
}
#logo img {
	margin: 0 17px 0 0;
}
#head_right{
	float:right;
	width:400px;
	padding:30px 0 0;
}

ul#language{
	list-style:none;
	padding:4px 0 0;
	margin:0;
	float:left;
}
ul#language li{
	margin:0;
	padding:0 10px;
	border-right:1px solid #d4d4d4;
	float:left;
}
ul#language li.end{
	padding:0 0 0 10px;
	border:none;
}
ul#language li.first{
	padding:0 10px 0 0px;
	border:none;
}

#search {
	float: right;
	margin:0 0 17px;
	width:190px;
}
#search input {
	margin:0;
	vertical-align:middle;
	float:right;
}
#search input.txt{
	border:1px solid #e5e5e5;
	height:16px;
	width:138px;
	margin:0 5px 0 0;
	font-size:1.2em;
	float:left;
}

ul#headlink {
	clear:both;
	padding:0;
	margin:0;
	list-style:none;
}
ul#headlink li{
	float:left;
	margin:0 20px 0 0;
}
ul#headlink li.end{
	margin:0;
}

.headlink {
	clear:both;
	padding:0;
	margin:0;
}
.headlink ul {
	padding:0;
	margin:0;
	list-style:none;
}
.headlink li{
	float:left;
	margin:5px 20px 0 0;
	padding-left: 10px;
	background: url(../images/icon_bread.gif) no-repeat left center;
}
.headlink li a{
	text-decoration:none;
}


ul.gnavi{
	clear:both;
	list-style:none;
	margin:0;
	padding:0;
	width:100%;
	border-radius:4px;
	box-shadow:0 0 4px #d5d5d5;
	font-size:1.2em;
	line-height:1.4em;
	position:relative;
}
ul.gnavi li{
	text-align:center;
	display:table-cell;
	background-image:url(../images/bg_gnavi.gif);
	background-position:0 0;
	background-repeat:repeat-x;
	vertical-align:middle;
	background-color:#e5e5e5;
	position:relative;
}
*+html ul.gnavi li { display: block; float:left;}


ul.gnavi li:last-child{
	border-radius:0 4px 4px 0;
}
ul.gnavi li:first-child{
	border-radius:4px 0 0 4px;
	border:none;
}
ul.gnavi li a{
	color:#333333;
	text-decoration:none;
	font-weight:bold;
	padding:10px 0;
	text-align:center;
	display:table-cell;
	vertical-align:middle;
	position:relative;
	border-left:1px solid #d2cfd6;
}
*+html ul.gnavi li a { display: block;}

ul.gnavi li:first-child a{
	border:none;
}
ul.gnavi li a:hover,
ul.gnavi li a.on{
	color:#62368f;
	border-bottom:2px solid #9774bd;
	padding:10px 0px 8px;
}
ul.gnavi li:first-child a:hover,
ul.gnavi li:first-child a.on{
	border-radius:4px 0 0 4px;
}
ul.gnavi li:last-child a:hover,
ul.gnavi li:last-child a.on{
	border-radius:0 4px 4px 0;
}


/* メインエリア
***********************************************************************************************************************/
#bread{
	background-image:url(../images/bg_bread.gif);
	background-position:0 0;
	background-repeat:repeat-x;
	padding:7px 0 4px;
}
#bread ul{
	margin:2px auto;
	list-style:none;
	font-size:1.2em;
	line-height:1.4em;
	float:left;
}
#bread ul li{
	float:left;
	margin:0 7px 0 0;
}
#bread ul li#home{
	background-image:url(../images/icon_home.gif);
	background-position:0 center;
	background-repeat:no-repeat;
}
#bread ul li a{
	background-image:url(../images/icon_bread.gif);
	background-position:right center;
	background-repeat:no-repeat;
	padding:0 14px 0 0;
	text-decoration:none;
	color:#5b3c7b;
}
#bread ul li#home a{
	padding:0 14px 0 18px;
}
#bread p{
	float:right;
	margin:0;
}

#category{
	clear:both;
	background-image:url(../images/bg_category.gif);
	background-position:0 0;
	background-repeat: repeat-x;
	background-color:#e3e1e2;
	margin:0;
}
#category div {
    background-color: #5B3C7B;
    margin: 0 auto;
    width: 960px;
}
#category p {
    background-image: url("../images/bg_category_title.gif");
    background-position: 0 0;
    color: #FFFFFF;
    float: left;
    font-size: 1.6em;
    font-weight: bold;
    margin: 0;
    padding: 29px 10px 29px 0;
    text-align: center;
    width: 182px;
}
#category img{
	float:right;
	margin:0;
}

#contents {
	clear:both;
	text-align: left;
	background-color:#FFFFFF;
	padding:21px 0 0
}


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

#main p.totop{
	background-color:#eaeaea;
	text-align:right;
	padding:8px 7px;
	margin:55px 0 20px;
	font-size:1em;
}
#main p.totop a{
	background-image:url(../images/icon_totop.gif);
	background-position:0 center;
	background-repeat:no-repeat;
	padding:0 0 0 16px;
	color:#333333;
	text-decoration:none;
}


#side {
	float:left;
	width:202px;
	margin:0;
	padding:0 0 30px 0;
}
ul#sub {
	list-style:none;
	margin:0;
	padding:0;
	font-size:1.4em;
	line-height:1.4em;
	position:relative;
}
ul#sub li {
	margin:0 0 9px;
	display:block;
	position:relative;
	background-color:#f5f4f4;
	border-radius:4px;
	box-shadow:0 1px 5px #d5d5d5;
	width:202px;
}
ul#sub li a{
	background-image:url(../images/bg_subnavi.gif);
	background-position:0 center;
	background-repeat:no-repeat;
	display:block;
	padding:10px 10px 10px 29px;
	color:#34105a;
	text-decoration:none;
	font-weight:bold;
	border-radius:4px;
	box-shadow:0 1px 5px #d5d5d5;
	background-color:#e5e5e5;
	width:163px;
	position:relative;
}
ul#sub li a:hover,
ul#sub li a.on{
	background-image:url(../images/bg_subnavi_o.gif);
	color:#FFFFFF;
}
ul#sub li ul{
	list-style:none;
	font-size:0.85em;
	margin:0;
	padding:0;
	line-height:100%;
	background-color:#f5f4f4;
	border-radius:0 0 4px 4px;
	display:block;
}
ul#sub li ul li{
	box-shadow:none;
	border-radius:0;
	margin:0;
	border-top:1px solid #dfdfdf;
}
ul#sub li ul li:first-child{
	border:none;
}

ul#sub li ul li a{
	background-image:url(../images/bg_subnavi_icon02.gif);
	background-color:#f5f4f4;
	background-position:15px center;
	padding:12px 10px 12px 36px;
	width:156px;
	border-radius:0;
	font-weight:normal;
	color:#4c4c4c;
	box-shadow:none;
}
ul#sub li ul li a:hover,
ul#sub li ul li a.on{
	background-image: url(../images/bg_sub_sub_o.gif);
	background-position:0px center;
	background-color:#805ea3;
	color:#fff;
}
ul#sub li ul li:last-child a{
	border-radius:0 0 4px 4px;
}
ul#sub li ul li ul{
	font-size:100%;
	background-color:#FFF;
	border-top:1px solid #dfdfdf;
	padding:5px 2px;
	line-height:1.2em;
	border-radius:0;
}
ul#sub li ul li ul li{
	background:none;
	border:none;
	width:198px;
}
ul#sub li ul li ul li a{
	background:none;
	padding:4px 0 2px 31px;
	width:auto;
	background-image:url(../images/bg_subnavi3.gif);
	background-position:18px center;
	background-repeat:no-repeat;
	font-weight:normal;
}
ul#sub li ul li ul li a:hover{
	background:none;
	background-color:#e2dbea;
	color:#502480;
	background-image:url(../images/bg_subnavi2.gif);
	background-position:18px center;
	background-repeat:no-repeat;
}
ul#sub li ul li ul li:last-child a{
	border-radius:0;
}


/* フッター
***********************************************************************************************************************/
#footer {
	clear: both;
	border-top:1px solid #cecece;
}

#copyright {
	text-align: center;
	font-size: 1.1em;
	line-height:1.8em;
	color:#666666;
	padding:14px 0;
}

ul#footlink, ul.footlink {
	clear:both;
	float: left;
	text-align: left;
	list-style:none;
	margin:18px 0;
	padding:0;
	border-right:1px solid #a7a7a7;
}
ul#footlink li, ul.footlink li{
	float:left;
	border-left:1px solid #a7a7a7;
	padding:0 7px;
}
#footlink a, .footlink a {
	margin: 0;
	text-decoration: none;
}
#footlink a:link, .footlink a:link {
	color: #654e7c;
}
#footlink a:visited, .footlink a:visited {
	color: #654e7c;
}
#footlink a:hover, .footlink a:hover {
	color: #654e7c;
}
#footlink a:active, .footlink a:active {
	color: #654e7c;
}
#copyright {
	float: right;
	width: 40%;
	text-align: right;
	padding:18px 0;
	color:#666666;
}

#copyright h6 {
	margin:0.1em 0;
}

/* トップ
***********************************************************************************************************************/
#key_visual{
	margin:0;
	width:100%;
	overflow:hidden;
}
#key_visual div.visual01{
	height:400px;
	overflow:hidden;
}
#key_visual div.visual02{
	height:400px;
	overflow:hidden;
}
#key_visual div.visual03{
	height:400px;
	overflow:hidden;
}
#key_visual div div.inner{
	width:960px;
	margin:0 auto;
	height:400px;
}
#key_visual div div.inner p{
/*	margin:258px 0 0; */
	text-align:right;
}
#top #contents{
	background-color: #fafafa;
	padding:0;
}
#top #main{
	float:left;
	margin:0 0 24px;
	width:728px;
}
#top #main h2{
	border:none;
	padding:0;
	margin:0;
}
#news{
	margin:0;
}
.news{
	margin:0;
	clear:both;
}
.news div.inner{
	background-image:url(../../images/bg_news_top.gif);
	background-position:0 0;
	background-repeat:no-repeat;
	width:235px;
	margin:0 11px 12px 0;
	padding:12px 0px 0 0;
	float:left;
}
.news div.inner .in{
	padding:0 18px 12px;
	background-image:url(../../images/bg_news_btm.gif);
	background-position:bottom left;
	background-repeat:no-repeat;
}
#top .news div.inner h3{
	font-size:1.4em;
	font-weight:normal;
	color:#0c5961;
	line-height:1.4em;
	display:block;
	padding:0;
	border:none;
	margin:0;
	background:none;
}
#top .news div.inner h3 a{
	color:#0c5961;
	text-decoration:none;
}
#main .news p.date{
	font-size:1em;
	text-align:right;
}
#main .news div.inner p img{
	float:right;
	margin:0 0 0 15px;
	display:inline;
	position:relative;
}


#top #side{
	float:right;
	width:209px;
	margin:0 0 24px;
}
#top #side h2{
	color:#333;
	background-image:none;
	margin:0 0 0 0;
	padding:0;
	font-size:1.2em;
}
#top #side p{
	margin:0;
}
#top #side ul{
	list-style:none;
	margin:0 0 17px;
	padding:0;
	font-size:1.2em;
	line-height:1.6em;
}
#top #side ul li{
	margin:4px 0;
}
#top #side ul a{
	border:1px solid #d4d2d2;
	background-color:#ededed;
	border-radius:4px;
	text-decoration:none;
	color:#333333;
	padding:3px 5px 3px 18px;
	background-image:url(../../images/icon_arrow.gif);
	background-position:7px center;
	background-repeat:no-repeat;
	position:relative;
	width:184px;
	
}
html>/**/body#top #side ul a{ display:block;}

#top ul#banner{
	clear:both;
	list-style:none;
	margin:25px 0 0;
	padding:0;
}
#top #side ul#banner li{
	margin:5px 0;
}

#top #side ul#banner li a{
	width:auto;
	padding:0;
	background:none;
	border-radius:0;
	border:none;
}

/* 検索結果
***********************************************************************************************************************/
#content{
	width:960px;
	margin:0 auto 30px auto;
}

#content h1.entry-title{
	font-size:1.6em;
	border:none;
	margin:0 0 5px 0;
	padding:0;
}
#content div.entry-summary{
	font-size:1.4em;
	line-height:1.6em;	
}
#content footer.entry-meta{
	font-size:1.4em;	
	line-height:1.6em;	
}

/* サイトマップ
***********************************************************************************************************************/
#sitemap_list{
	font-size:1.4em;
	line-height:1.6em;
	list-style:none;
}
#sitemap_list ul{
	margin-top:0;
	margin-bottom:0;
	list-style:none;
}
#sitemap_list a{
	padding:3px 5px 3px 22px;
	background-image:url(../images/icon_arrow01.gif);
	background-position:7px center;
	background-repeat:no-repeat;
}

/* 404ページ
***********************************************************************************************************************/
.entry-content p{
	font-size:1.4em;
	line-height:1.6em;	
}
#searchform .screen-reader-text{
	font-size:1.4em;
	line-height:1.6em;	
}


/* clearfix
***********************************************************************************************************************/
.clearfix,
#contents,
ul.gnavi,
#bread ul,
.wrapper,
#index,
#top ul#banner,
.news_foot,
#category div
{zoom:1;}

.clearfix:after,
#contents:after,
ul.gnavi:after,
#bread ul:after,
.wrapper:after,
#index:after,
#top ul#banner:after,
.news_foot:after,
#category div:after
{content:".";
	display: block;
	height:0px;
	clear:both;
	visibility:hidden;
}
/* End clearfix */


.widget_sp_image img{
	margin-bottom:4px;
}