@charset "Shift_JIS";


/*--------------------------------------------------------
1、サイト全体の背景設定
------------------------------------------------------*/

#container{ background-color: #fff; }


/*--------------------------------------------------------
2、サイト全体の共通設定
-------------------------------------------------------*/

body{ color: #333; }

/*●リンク文字*/
a{ text-decoration: underline; }

a:link,
a:visited{ color: #39f; }
a:hover,
a:active{ color: #f60; }

a:hover img {
    opacity:0.7;
    -moz-opacity:0.7;
    filter:alpha(opacity = 70);
}
/*--------------------------------------------------------
3、エリアの設定
--------------------------------------------------------*/

#container{
	position: relative;
	padding-top: 25px;
}


/*--------------------------------------------------------
トップ
--------------------------------------------------------*/

#top{ 
	position: absolute;
	top: 0;
	font-size: 1.2em;
}

#top-in{
	position: relative;
	padding: 5px 0;
}

#top-menu{ text-align: right; }

#top-menu li{
	display: inline;
	margin-left: 1em;
	list-style: none;
}

#top-menu li a{
	padding-left: 12px;
	background: url(../images/icon/icon-arrow01.png) left center no-repeat;
}


/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/

#header{
	background:url(../images/common/bg-head.gif) repeat-x #fff bottom center;
	font-size: 1.2em;
	height:110px;
}

#header-in{ padding: 1em 0; }

/*●ヘッダーロゴ（メインタイトル）*/
#header #header-title{
	float: left;
	width: 67%; /*ロゴ（メインタイトル）下の<h1>の1行の幅はこちらのwidthの値を変更*/
}

#header .header-logo{
	margin-top:10px;
	margin-bottom: 0.2em;
	font-size: 3em;
}


/*●ヘッダーロゴテキスト*/
.header-logo a{ text-decoration: none; }

.header-logo a:link,
.header-logo a:visited{ color: #333; }
.header-logo a:hover,
.header-logo a:active{ color: #f60; }


/*●ヘッダーテキスト・右上の文章*/
#header-in #header-text{
	float: right;
	width: 33%; /*・1行の幅はwidthの値を変更*/
	color: #333;
}

#header h1{
	margin-top:-95px;
	margin-bottom: 1em;
	font-size: 1.167em;
	z-index:2;
}


/*--------------------------------------------------------
コンテンツ全体
--------------------------------------------------------*/

#main-in{ padding-top: 1.5em; }


/*●メイン画像*/
#main-image{
	padding-top: 1.5em;
}

#main-image-in{
	position: relative;
	padding-bottom: 1.5em;
	font-size: 1.6em;
}

#main-image img{
	width: 100%;
	height: auto;
}

#main-image .catch-copy{
	position: absolute;
	top: 1em;
	left: 1em;
	color: #fff;
	font-size: 3em;
}


/*●パン屑ナビ*/
#breadcrumbs{
	clear: both;
	margin-bottom: 1.5em;
	font-size: 1.2em;
}

#breadcrumbs li{
	display: inline;
	margin-right: 0.5em;
	line-height: 1.8;
	text-align: right;
	list-style: none;
}

#breadcrumbs li a{
	padding-right: 15px;
	background: url(../images/icon/icon-brc.gif) center right no-repeat;
}


/*--------------------------------------------------------
メインコンテンツ（本文）
--------------------------------------------------------*/

#main-contents{ font-size: 1.6em; }

#main-contents .contents{
	margin-bottom: 3.5em;
	padding: 0 20px;
}


/*●H2タグ*/
#main-contents h2{
	margin: 0 0 1em;
	padding: 20px 20px 10px 20px;
	background: url(../images/title/h2_bg.gif) left top no-repeat;
	font-size: 1.286em;
	font-weight: bold;
}

#main-contents h2 a:link,
#main-contents h2 a:visited{ color: #333; }

#main-contents h2 a:hover,
#main-contents h2 a:active{ color: #f60; }

#main-contents h2.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}


/*●H3タグ*/
#main-contents h3{
	margin: 0 0 1.5em;
	padding: 16px 20px 10px 25px;
	background: url(../images/title/h3_bg.gif) left top no-repeat;
	font-size: 1.143em;
	font-weight: bold;
}

#main-contents h3 a:link,
#main-contents h3 a:visited{ color: #333; }

#main-contents h3 a:hover,
#main-contents h3 a:active{ color: #f60; }

#main-contents h3.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}


/*●H4タグ*/
#main-contents h4{
	margin: 10px 10px 20px 10px;
	padding: 13px 15px 15px 50px;
	background: url(../images/title/h4_bg.gif) left top no-repeat #A1C8EB;
	font-weight: bold;
}

#main-contents h4 a:link,
#main-contents h4 a:visited{ color: #333; }

#main-contents h4 a:hover,
#main-contents h4 a:active{ color: #f60; }

#main-contents h4.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}


/*●H5タグ*/
#main-contents h5{
	margin: 0 0 1.5em;
	padding: 0 0.8em 0.5em;
	border-bottom: 2px solid #414141;
	font-weight: bold;
}

#main-contents h5.img-title{
	margin: 0 0 1.5em;
	padding: 0;
	border: 0;
	background: none;
}

#main-contents h5 a:link,
#main-contents h5 a:visited{ color: #333; }

#main-contents h5 a:hover,
#main-contents h5 a:active{ color: #f60; }


/*●段落タグ*/
#main-contents p{ margin-bottom: 1.5em; }


/*●リストタグ*/
#main-contents ul,
#main-contents ol{
	margin: 0 0.8em 1.5em 1.7em;
	padding: 0;
}

#main-contents li{
	margin-bottom: 0.5em;
	line-height: 1.5em;
}

#main-contents .cts_list p{
	margin: 0.8em 0 0.8em 35px;
}

/*id・classタグ-------------------------------------------------------------------------------------------*/
#main-contents ul.cts_list li {
	margin-bottom: 1em;
	padding: 0 0 0.5em 0.2em;
	border-bottom: #d2e0e0 2px solid;
}
.cts_table {
	margin-bottom: 0.5em;
}
.cts_table dl {
	border-left: #0071bc 4px solid;
	background: #e4f2f9;
	margin: 0 0 2px;
	padding: 0;
	display: table;
	width: 100%;
}
.cts_table dt {
	padding: 1em;
	display: table-cell;
	vertical-align: middle;
	width: 8em;
	font-weight: bold;
	text-align: center;
}
.cts_table dd {
	padding: 1em;
	border-left: #fff 2px solid;
	display: table-cell;
}
.voice_list li {
	padding: 0.5em 1em 0.5em 5em;
	background: #e4f2f9 url(../images/common/voice_icon.png) no-repeat 20px bottom;
	min-height: 3em;
	border-radius: 3px;
	display: flex;
	align-items: center;
}
.link-box {
	font-size: 0;
}
.link-box li {
	display: inline-block;
	padding: 5px 10px;
	background:#fff9ff;
	margin: 5px;
	width: 176px;
	border: 2px solid #b0c4de;
	font-size: 13px;
	text-align: center;
}
.link-box li p {
	text-align:left;
	background: url(../images/icon/icon-arrow_r.png) 0 7px no-repeat;
	padding: 3px 0 3px 15px;
	margin:0px;
	height: 2em;
}
.link-box li img {
	border:1px solid #ccc;
}

/*応募フォーム----------------------------------------------*/
#main-contents ul.oubo_info {
	margin: 0 0 1.5em 0;
}
.oubo_info li {
	margin: 0 0 0.2em 0;
	padding: 0.5em 1em;
	background: #ebf6f7;
}
.ouboform{
	border			: 2px solid #deb887;
	padding			: 20px;
	margin			: 0 0 30px;
}

.ouboform table{
	margin			: 10px 0;
	font-size		: 90%;
	width			: 100%;
}

.ouboform th{
	padding			: 10px 5px!important;
	border-bottom	: 1px solid #c0c0c0;
	vertical-align	: center;
	width			: 25%;
	font-weight		: normal;
	background		:#c1e4e9;
}
.ouboform td{
	padding			: 10px;
	border-bottom	: 1px solid #c0c0c0;
	vertical-align	: top;
}

.formtopline{
	border-top		: 1px solid #c0c0c0;

}
.ouboform span{
	line-height		: 20px;
}

.ouboform .example{
	font-size:80%;
	color:#009933;
}

.ouboform table td ol{
	margin: 0px!important;;
	padding: 0px;
}
.ouboform table td ol li{
	list-style: none;
	margin: 0px;
	padding: 0px;
}
.ouboform table td .formmess{
	width:90%;
}

img.must {
	width: 30px;
	height: 16px;
	float: left;
	margin: 0px 0px 0px 5px;
}
#form-footer {
	margin-bottom: 1em;
}
.submit_btn {
	width: 392px;
	height: 60px;
	text-align: center;
}
.ouboform .small img {
	vertical-align: middle;
	padding: 0 2px;
}
#form-footer h3 {
	margin: 2em 0 1em;
	padding: 0 0 0 0.5em;
	background: none;
	border-left: #ff1717 4px solid;
	font-size: 16px;
}
#main-contents .privacy {
	margin-bottom: 1em;
	border: #bbb 1px solid;
	height: 180px;
	width: 100%;
	overflow-y: scroll;
}
#main-contents .privacy h4 {
	margin: 1em;
	padding: 0 0 0.2em 0;
	border-bottom: #7d7d7d 1px dotted;
	background: none;
	font-size: 15px;
}
#main-contents .privacy h5 {
	margin: 0 1em;
	padding: 1em 0 0;
	font-size: 14px;
	border: none;
	font-weight: normal;
}
#main-contents .privacy p {
	margin: 0 1em;
	padding: 0;
	font-size: 14px;
}


/*--------------------------------------------------------
サブコンテンツ / サイドバー
--------------------------------------------------------*/

#sub-contents,
#sidebar,
#sidebar-in,
#sub-contents-in{
	margin: 0;
	padding: 0;
}

/* 170829 add */
/** html #sub-contents,
* html #sidebar{ overflow: hidden; }*/
* html #sub-contents { overflow: hidden; }
#sidebar.sticky_on{	
  position:fixed;	
  top:0;	
  right:0;	
  width:100%;	
}	
#sidebar.sticky_on #sidebar-in{	
  margin:0 auto;	
  width:960px;	
  position:relative;
}	
#sidebar.sticky_on #sidebar-in #sidebar-in-inner{
  margin:0 auto;	
  width:254px;	
  position:absolute;	
  right:0;	
}	
#sidebar.sticky_on #site_guide {	
  display:none;	
}


#sub-contents .sub-contents-btn,
#sidebar .sidebar-btn{ display: none; }

.sub-column{ font-size: 1.2em; }

.sub-column li{ list-style: none; }


/*●コンテンツ*/
.sub-column .contents
,.sub-column .contents_btn {
	margin-bottom: 1.5em;
	padding: 0.5em;
}

.sub-column hr{ clear: both; }

.sub-column h3{
	padding: 0.7em;
	border: 1px solid #959595; /*サイドバー見出しの枠線*/
	border-top: 3px solid #414141; /*見出しの上部の太線*/
	color: #454545; /*見出し文字の色*/
	font-weight: bold;
}

.sub-column .contents h3{
	margin: -0.5em;
	margin-bottom: 0.8em;
}


/*●プロフィール*/
.sub-column .profile-img img{
	display: block;
	margin: auto;
	margin-bottom: 10px;
}

.sub-column .profile-txt p{ margin-bottom: 1em; }

.col1 .sub-column .profile-img,
.col2 #sub-contents .profile-img,
.col2r #sub-contents .profile-img{
	float: left;
	padding-right: 20px;
}


/*●テーブルタグ*/
.sub-column table caption{
	font-weight: bold;
	text-align: center;
}

.sub-column table{
	width: 90%;
	margin: auto;
	margin-bottom: 1.5em;
	padding: 0;
	border-top: 1px solid #959595;
	border-left: 1px solid #959595;
}

.sub-column table th,
.sub-column table td{
	padding: 0.5em 0.2em;
	border-right: 1px solid #959595;
	border-bottom: 1px solid #959595;
}

.sub-column table th{
	background: #f0f0f0;
	font-weight: bold;
	text-align: center;
}


/*●検索ボックス*/
.sub-column dl.search-box{
	margin: 0 0 16px;
	width: 100%;
}

.sub-column dl.search-box dt{
	display: block;
	float: left;
	width: 63%;
	margin: 0;
	padding: 0;
	padding-right: 5px;
}

.sub-column dl.search-box dt input{
	width: 95%;
	height: 1.4em;
	padding: 2px;
	border: 1px solid #aaa;
	color: #aaa;
	line-height: 1.4em;
}

.sub-column dl.search-box dt input.onfocus{ color: #333; }

.sub-column dl.search-box dd{
	float: left;
	margin: 0;
	padding: 0;
}

.sub-column dl.search-box dd input{
	height: 2em;
	padding: 0.1em 1em;
	line-height: 1.4em;
}


/*●お問い合わせ*/
.sub-column .contact .icon-contact{
	float: left;
	padding: 0 10px 10px 0;
}

.sub-column .contact .text-contact{ overflow: hidden; }


/*●サイドメニュー*/
.sub-column .side-menu{ margin: 0; }

.sub-column .side-menu li{ list-style: none; }

.sub-column .side-menu li a{
	display: block;
	padding: 12px 10px 12px 20px;
	background: url(../images/icon/icon-arrow_r.png) 2px 15px no-repeat;
}

.sub-column .side-menu li a:active,
.sub-column .side-menu li a:hover{
	background-color: #fc6;
	color: #fff;
}

.sub-column .side-menu ul{
	padding: 0;
	margin: 0;
}

.sub-column .side-menu ul ul{ padding: 0; }

.sub-column .side-menu li li{
	width: 95%;
	margin-bottom: 0;
	padding-left: 5%;
	border: 0;
}

.sub-column .side-menu li li a:link,
.sub-column .side-menu li li a:visited{
	padding: 6px 10px 6px 15px;
	border-left: none;
	background: url(../images/icon/icon-menu02.png) 2px 12px no-repeat;
}

.sub-column .side-menu li li a:active,
.sub-column .side-menu li li a:hover{ background: url(../images/icon/icon-menu02.png) 2px 12px no-repeat #fc6; }



.col1 .ranking .item-img,
.col2 #sub-contents .ranking .item-img,
.col2r #sub-contents .ranking .item-img{
	float: left;
	padding-right: 20px;
}


/*●バナーエリア*/
.sub-column .banner{ margin-bottom: 10px; }

.sub-column .banner li{
	margin-bottom: 18px;
	list-style: none;
	text-align: center;
}

.col1 .sub-column .banner li,
.col2 #sub-contents .banner li,
.col2r #sub-contents .banner li{
	display: inline;
	margin-right: 8px;
}


/*--------------------------------------------------------
フッター
--------------------------------------------------------*/

#footer{
	clear: both;
	padding-top: 30px;
	padding-bottom: 10px;
	background: url(../images/common/foot-line.gif) repeat-x top center #778899; /*フッター全体の背景色を指定*/
	color: #fff;
	font-size: 1.2em;
}

#footer a:link,
#footer a:visited{ color: #fff; }
#footer a:hover,
#footer a:active{ color: #f60; }

#footer h3{
	margin-bottom: 1em;
	padding: 0.8em;
	border-left:30px solid #1C267E;
	background: url(../images/common/foot-title_bg.gif) repeat-x top center #fff;
	color: #333;
	font-weight: bold;
}

#footer-in li{ list-style: none; }

#footer .area01{
	float: left;
	width: 39%;
	padding-bottom: 20px;
}

#footer .area02{
	float: right;
	width: 60%;
	padding-bottom: 20px;
}

/*●アクセス情報*/
#footer .access{ padding: 0 1em; }

#footer .access p{ margin-bottom: 1em; }

p.accessmap{
	padding: 0px 0 3px;
	padding-left: 25px;
	background: url(../images/icon/icon-arrow02.png) left center no-repeat;
}


/*●フッターメニュー*/
#footer .footer-menu{
	overflow: hidden;
	width: 100%;
	padding: 0;
}

#footer .footer-menu ul{
	float: left;
	width: 42%;
	margin-right: 5%;
	padding: 1%;
}

#footer .footer-menu ul ul{
	float: none;
	width: auto;
	margin-top: 1em;
	margin-right: 0;
}

.footer-menu li{
	margin-bottom: 5px;
	padding: 0px 0 3px;
	padding-left: 25px;
	background: url(../images/icon/icon-arrow02.png) left top no-repeat;
}

.footer-menu li li{
	padding-left: 15px;
	padding-top: 0;
	background: url(../images/icon/icon-arrow03.png) left 5px no-repeat;
}


/*●フッターバナー*/
#footer-banner{
	clear: both;
	padding: 20px 0;
	border-top: 1px solid #ccc;
}

#footer-banner li{
	display: inline;
	list-style: none;
}


/*●コピーライト*/
.copyright{
	padding: 15px 0;
	background: #eaeaea;
	font-size: 1.2em;
	text-align: center;
}


/*--------------------------------------------------------
ページトップ
--------------------------------------------------------*/

.page-top{
	position: fixed;
	right: 0;
	bottom: 20px;
	z-index: 99;
	width: 182px;
	color: #fff;
	font-size: 1.2em;
	font-weight: bold;
	text-align: left;
}

* html .page-top{ display: none; }

.page-top a{
	display: block;
	padding: 10px;
	padding-left: 42px;
	border: 1px solid #fff;
	border-right: 0;
	text-decoration: none;
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
	-webkit-border-top-left-radius: 8px;
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-topleft: 8px;
	-moz-border-radius-bottomleft: 8px;
}

.page-top a:link,
.page-top a:visited{
	background: url(../images/common/bg-pagetop.gif) 14px center no-repeat #999;
	color: #fff;
}

.page-top a:hover,
.page-top a:active{
	background: url(../images/common/bg-pagetop.gif) 14px center no-repeat #fc6;
	color: #f60;
}


/*------------------------------------------------------------
ソーシャルボタン
-------------------------------------------------------------*/

#main-contents .sb{
	width:100%;
	margin: 0;
	padding: 0;
}

#main-contents .sb li{
	display: inline-block;
	margin-right: 5px;
	vertical-align: top;
	list-style: none;
}

* html #main-contents .sb li{
	float: left;
	width: 130px;
	list-style: none;
} /* IE6 */

*+html #main-contents .sb li{
	display: inline;
	list-style: none;
} /* IE7 */

#main iframe.twitter-share-button{ width: 100px!important; }


/*コメントナビ*/
.navigation .alignright{
	float: right;
}
.navigation .alignleft{
	float: left;
}

.navigation:after{ content : ''; display : block; clear : both; height:0; }
.navigation{
	margin-bottom: 30px;
	/zoom : 1;
}


/*------------------------------------------------------------
floatの回り込みを解除
-------------------------------------------------------------*/

#top-in:after,
#header-in:after,
#global-nav-in #menu:after,
#main-in:after,
#main-and-sub:after,
.contents:after,
#main-contents dl.dl-style01:after,
.box-wrap:after,
dl.search-box:after,
#footer-in:after,
#main-contents .sb:after,
.contact:after,
#main-contents .cont-menu01:after,
#main-contents .cont-menu02:after,
.clearfix:after{ content : ''; display : block; clear : both; height:0; }

#top-in,
#header-in,
#global-nav-in #menu,
#main-in,
#main-and-sub,
.contents,
#main-contents dl.dl-style01,
.box-wrap,
dl.search-box,
#footer-in,
#main-contents .sb,
.contact,
#main-contents .cont-menu01,
#main-contents .cont-menu02,
.clearfix{ /zoom : 1; }


/*------------------------------------------------------------
　template created by web-rider
-------------------------------------------------------------*/