@charset "utf-8";

body,h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,img,table,th,td {margin:0;padding:0;border:none;}
body {font-size: 13px;line-height: 1.5;font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;}
h1,h2,h3,h4,h5 {font-size: 12px;}
ul,ol,li {list-style: none;}
table {border-collapse: collapse;border-spacing: 0;}
a img {vertical-align: bottom;}
a {text-decoration: none;}
a:hover {text-decoration: underline;}

body{color: #444;background: #F9F9F9 url(../img/bg.png) repeat 0 0;}
a {color: #000033;}

/*font*/
#header .title a,
#header strong {color: #fff;}
.pagetop a {color: #444;}
h1,#side .ttl {color: #143D73;}
h2,.smap h2 a {color: #67809F;}
h2.bgType1,
h2.bgType2 {color: #FFF;}
h3{color: #FFF;}
#footer a {color: #143D73;}
.btn a:hover {color: red;}
.table a,.rank,.rank a {color: #F5AB35;}
.site a {color: #003;}
.crumb a {color: #143D73;}
.osusume a,
#inside li.icon a {color: red;}
.bg3 a {color: red;}

/* bg*/
#header div {background-color: #CCC;}
.pagetop a:hover {background-color: #F8F8F8;}
#cBody {background: #FFF;}

#header,
#footer {background-color: #aff5f5!important;}
h2.bgType1 {background-color: none!important;}
h2.bgType2 {background-color: none!important;}
h3 {background-color: #ff887b!important;}
.bg3 a {background-color: transparent!important;}
.bg3 a:hover {background-color: transparent!important;}
.rank {background-color: #f9f9f9!important;}
.rankBox table th {background-color: #FFC;}
.point {background: #ccf7ff;}
.imgL,.imgR {background-color: #F8F8F8;}
#inside p a:hover,#inside li a:hover {background-color: #ebffff!important;}

/* border */
#inside p,#inside li {border-bottom: 1px solid #EEE;}
#inside p {border-top: 1px solid #EEE;}
#inside p.fst {border-top: none;}
#inside a {border-top: 1px solid #FFF;border-bottom: 1px solid #FFF;}
h1,#side .ttl {border-bottom: 2px solid #143D73;border-top: none;}
h2 {border-bottom: 2px solid #67809F;}
h2.bgType1,h2.bgType2 {border: none;}
.rankBox {border: 1px solid #EEE;border-top: none;}
.btn a {border: 1px solid #CCC;}
.btn a:hover {border: 1px solid red;}
.rank {border-top: 3px solid #003;}
.point {border: 1px solid #003;}
.pagetop a {border: 1px solid #EEE;}

/*----------------------------
header
----------------------------*/
#header {
font-weight: bold;
}

#header div {
width: 980px;
height: 320px;
position: relative;
background: url(../img/bg_header.jpg) no-repeat 0 0;
margin: 0 auto;
}

#header .title {
font-size: 27px;
position: absolute;
top: 75px;
left: 30px;
}

#header strong {
position: absolute;
font-size: 16px;
top: 125px;
left: 30px;
}

.crumb {
width: 940px;
height: 40px;
line-height: 40px;
padding: 0 20px;
font-size: 11px;
position: absolute;
left: 0;
top: 210px;
background: url(../img/bg_crumb.png) repeat 0 0;
}

/*----------------------------
contents
----------------------------*/
#wrapper {
width: 980px;
margin: 0 auto;
overflow: hidden;
padding-top: 10px;
margin-top: -55px;
background: url(../img/bg_tab.png) no-repeat 0 0;
}

#contents {
overflow: hidden;
float: left;
z-index: 999;
padding-bottom: 10px;
background: url(../img/bg_btm.png) no-repeat 0 100%;
}

#cBody {
width: 940px;
padding: 10px 20px;
overflow: hidden;
}

.ctnsBox {
clear: both;
width: 620px;
margin-bottom: 40px;
}
.ctnsBox2 {
clear: both;
width: 620px;
margin-bottom: 40px;
}
.ctnsBox2 a {
  color: #0087ff;
  text-decoration: underline;
}
.ctnsBox2 p {
margin-bottom: 10px;
}
.ctnsBox2 ul li {
margin-bottom: 10px;
list-style: disc;
margin-left: 1.5em;
}
.ctnsBox2 ul li span {
font-weight: bold;
}
.ctnsBox2 dl dt {
  color: #67809F;
  font-weight: bold;
}
.ctnsBox2 dl dd {
  margin-bottom: 10px;
}
.ctnsBox2 ol {
  margin-bottom: 1em;
}
#side {
float: left;
width: 300px;
padding-bottom: 20px;
}

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

/*----------------------------
main
----------------------------*/
h1,h2 {
width: 620px;
font-size: 20px;
padding-bottom: 5px;
margin-bottom: 10px;
clear: both;
}

h1 {
width: 590px;
padding-left: 30px;
background: url(../img/bg_h1.png) no-repeat 0 50%;
}

h2.bgType1,
h2.bgType2 {
font-size: 18px;
height: 40px;
line-height: 40px;
text-align: center;
background: url(../img/bg_type1.png) no-repeat 0 0;
padding-bottom: 0;
margin-bottom: 0;
}

h3 {
font-size: 18px;
height: 40px;
line-height: 40px;
padding-left: 35px;
margin-bottom: 10px;
background: url(../img/bg_h3.png) no-repeat 10px 50%;
}

.rank {
font-size: 20px;
font-weight: bold;
width: 535px;
padding: 0 10px 0 75px;
height: 45px;
line-height: 45px;
background-repeat: no-repeat;
background-position: 5px 100%;
background-image: url(../img/bg_rank.png);
}

.rank span {
margin-right: 20px;
}

.rank1 {background-image: url(../img/bg_rank1.png);}
.rank2 {background-image: url(../img/bg_rank2.png);}
.rank3 {background-image: url(../img/bg_rank3.png);}

.rank a {text-decoration: underline;}
.rank a:hover {text-decoration: none;}

.rankBox {
width: 600px;
padding: 10px 9px;
}

.rankBox .img {
width: 200px;
float: left;
padding: 0;
margin-right: 10px;
}

.rankBox .pr {
width: 600px;
float: left;
padding: 0;
margin-top: 10px;
}

.rankBox .img span {
display: block;
margin-top: 10px;
font-size: 16px;
}

.point {
width: 198px;
padding: 10px 0;
text-align: center;
}

.rankBox table {
width: 390px;
float: left;
border-top: 1px solid #EEE;
border-right: 1px solid #EEE;
}

.rankBox table th,.rankBox table td {
border-left: 1px solid #EEE;
border-bottom: 1px solid #EEE;
padding: 10px;
vertical-align: top;
}

.rankBox table th {
width: 80px;
font-weight: normal;
text-align: left;
font-size: 11px;
}

.rankBox table td {
font-size: 12px;
}

.rankBox table th span {
display: block;
margin-top: 10px;
}

.btn {font-size:12px;width: 100%;text-align: center;padding: 0;margin-top:10px;}
.btn a {display: block;padding: 4px;}

.table {
width: 619px;
font-size: 11px;
border-top: 1px solid #EEE;
border-left: 1px solid #EEE;
margin-bottom: 40px;
clear: both;
}

.table a {text-decoration: underline;}
.table a:hover {text-decoration: none;}

.table th,
.table td {
font-weight: normal;
padding: 5px;
border-right: 1px solid #EEE;
border-bottom: 1px solid #EEE;
}

.table thead th {
width: 93px;
vertical-align: top;
}

.table thead th.vm {
vertical-align: middle;
}

.table thead th span {
display: block;
margin-top: 10px;
line-height: 1.2;
}

.table thead th.vm,
.table tbody th {
background: #FCF;
}

.osusume,.site {
width: 100%;
height: 50px;
line-height: 50px;
font-size: 14px;
text-align: center;
}

.osusume a,.site a {
display: block;
height: 50px;
text-decoration: underline;
}

.site {
margin-top: 10px;
clear: both;
}

.osusume a:hover,.site a:hover {text-decoration: none;}
.osusume a {background: url(../img/bg_osusume.png) 0 0 no-repeat;}
.osusume a:hover {background: url(../img/bg_osusume.png) 0 100% no-repeat;}

.bg3 {
font-size:15px;
height:110px;
text-align: left;
line-height: 1.5;
padding:70px 0 0;
background: url(../img/bg_osusume2.png) 0 0 no-repeat;
}

.bg3 a {
display: block;
width: 350px;
padding:0;
margin-left: 270px;
height: auto;
background: none;
}

.bg3 a:hover {background: none;}

.site a {background: url(../img/bg_site.png) 0 0 no-repeat;}
.site a:hover {background: url(../img/bg_site.png) 0 100% no-repeat;}

.imgL,
.imgR {
width: 250px;
}

.imgL {float: left; margin-right: 10px;}
.imgR {float: right; margin-left: 10px;}
.box {padding: 0 0 20px;zoom:1;}

.smap #main ul li,.disc li {list-style: disc outside; margin-left: 20px;}
.smap h2 a {text-decoration: underline;}
.smap h2 a:hover {text-decoration: none;}


.m_campaign {
    clear: both;
    margin-top: 10px;
    border:2px solid #0E1249;
}
.m_campaign p.m_campaign_ttl{
	height:30px;
	background-color:#0E1249;
	margin-bottom:10px;
	color:#fff;
	padding-left:3px;
	font-size:16px;
}
.m_campaign p.m_campaign_ttl span{
	height:30px;
	display:block;
	line-height:2;
	padding-left:30px;
	background:url('../img/tit_icon_campaign.png') no-repeat left center;
}
.m_campaign .inner{
    padding: 10px;
}

/*----------------------------
side
----------------------------*/
#inside a {text-decoration: none;}
#inside a:hover{text-decoration: underline;}
#inside p,#inside ul {width: 300px;}

#inside p.ttl {
text-align: center;
font-size: 20px;
font-weight: bold;
padding-bottom: 5px;
}

#inside p a {
width: 260px;
display: block;
padding: 9px 10px 9px 30px;
background: url(../img/bg_list1.png) no-repeat 7px 12px;
}

.list {margin-bottom: 50px;}

.list li a {
width: 260px;
display: block;
padding: 10px 10px 9px 30px;
background: url(../img/bg_list2.png) no-repeat 7px 12px;
}

#inside li.icon a {
width: 245px;
padding: 10px 10px 9px 45px;
line-height: 1.2;
font-weight: bold;
font-size: 1.4em;
background: url(../img/bg_pickup.png) no-repeat 4px 9px;
}

/*----------------------------
footer
----------------------------*/
.pagetop {
padding: 0;
clear: both;
}

.pagetop a {
display: block;
float: right;
padding: 10px;
font-size: 12px;
line-height: 14px;
}

#footer {
width: 100%;
font-weight: bold;
text-align: center;
line-height: 1;
clear: both;
padding: 60px 0 10px;
margin-top: -40px;
z-index: 1;
}

#footer a {text-decoration: underline;}
#footer a:hover {text-decoration: none;}
/*----------------------------
margin 調整
----------------------------*/
.m20{margin:0 20px 20px !important;}
.mb0{margin-bottom:0px !important;}
.mb5{margin-bottom:5px !important;}
.mb10{margin-bottom:10px !important;}
.mb20{margin-bottom:20px !important;}
.mb30{margin-bottom:30px !important;}
.mt0{margin-top:0px !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mr0{margin-right:0px !important;}
.mr10{margin-right:10px !important;}
.mr20{margin-right:20px !important;}
.ml0{margin-left:0px !important;}
.ml10{margin-left:10px !important;}
.ml15{margin-left:15px !important;}
.ml20{margin-left:20px !important;}
.pb10{padding-bottom:10px !important;}
.pb30{padding-bottom:30px !important;}
/*----------------------------
common
----------------------------*/
.cfx:before,.cfx:after {content:"";display:table;}
.cfx:after {clear:both;}
.cfx {zoom:1;}
.clr {clear: both;}
/*----------------------------
select
----------------------------*/
.selectVisual img {
width: 620px;
}

ul.contents-list{
  margin: 20px 0;
}

ul.contents-list li{
  text-indent: -1em;
  padding-left: 1em;
	list-style: none;
	margin: 0;
}

ul.contents-list li:before {
	content: "・";
  padding-right: 0;
}

ol.contents-list{
  margin: 20px 0;
}

ol.contents-list li{
  text-indent: -1em;
  padding-left: 1em;
}

.ctnsBox2 table {
  margin-bottom: 1em;
}

.ctnsBox2 table th {
  border: solid 1px #777;
  padding: 0.5em;
  background-color: #eee;
}

.ctnsBox2 table td {
  border: solid 1px #777;
  padding: 0.5em;
  vertical-align: top;
}

.ctnsBox2 table tr td:first-child {
  background-color: #f3f3b4;
  vertical-align: middle;
}

#main .list li a {
width: auto;
padding-left: 0;
background: none;
}

/**アフィ文言**/
.afi-att {
  max-width: 992px;
  width: 100%;
  margin: 0px auto 20px;
  text-align: center;
}
.afi-att p {
  margin: 0 10px;
  font-size: 14px;
  font-weight: bold;
}