@charset "shift_jis";

/* ========== heading (ranking-index) ========== */
/* heading */
.heading {
	position: relative;
	/*height: 156px;*/
	background: url(//life-cdn.oricon.co.jp/img/common/bg-heading.png) repeat;
	border-bottom: 1px solid #fff;
	-webkit-box-shadow: 0 3px 36px -3px rgba(204,204,204,0.1);
	box-shadow: 0 3px 36px -3px rgba(204,204,204,0.1);
}
.heading .heading-title {
	float: left;
	margin: 0;
}
.heading .heading-pickup {
	float: right;
	width: 300px;
	padding-top: 30px;
}
.heading .heading-pickup div {
	position: relative;
	width: 300px;
	height: 30px;
	margin-bottom: 10px;
	text-align: center;
	line-height: 30px;
	color: #fff;
	background-color: #e66;
	border-radius: 3px;
}
.heading .heading-pickup div:after {
	content: "";
	display: block;
	position: absolute;
	left: 50px;
	bottom: -7px;
	border-style: solid;
	border-width: 8px 7px 0 0;
	border-color: #ee6666 transparent transparent transparent;
}
.heading .heading-pickup div strong {
	padding: 0 3px;
	font-size: 129%;
}
.heading .heading-pickup p {
	padding: 0 1px;
	font-size: 86%;
	line-height: 1.6;
}
.heading .heading-pickup p strong {
	color: #e66;
	background-color: transparent;
}
.heading .heading-pickup .anchor {
	display: inline-block;
	margin: 0.2em 0 0;
	font-size: 116%;
}
.heading h2 {
	position: relative;
	width: 410px;
	height: 156px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background:url("//life-cdn.oricon.co.jp/img/common/heading-emblem.png") no-repeat 26px -15px;
	background-size:110px auto;
	padding:8px 0 0 168px;
}
.heading h2:before {
	float: left;
	display: block;
	content: "";
	/*height: 156px;*/
	margin: 0;
}
.heading .heading-pickup {width:400px; padding-top:10px;}
.heading .heading-pickup div {width:290px;}

/* ========== main-contents(ranking-index) ========== */

/* ranking-category
-------------------------------------------------- */
.ranking-category {
	margin-bottom: 25px;
}
.ranking-category .box {
	position: relative;
	padding: 8px 3px;
	text-align: center;
	color: #fff;
	background-color: #55a0c5;
	border-radius: 3px;
}
.ranking-category .box a {
	color: #fff;
	background-color: transparent;
}
.ranking-category .box span {
	display: inline-block;
	margin: 0 15px;
	font-weight: bold;
	line-height: 30px;
}
.ranking-category .box .level01 { font-size: 172%;}
.ranking-category .box .level02 { font-size: 129%;}
.ranking-category .box .level03 { font-size: 100%;}
.ranking-category .box span:last-of-type {
	margin-right: 90px;
}
.ranking-category .box .btn {
	position: absolute;
	right: 3px;
	bottom: 4px;
	width: 80px;
}

/* ranking-header
-------------------------------------------------- */
.ranking-header {
	margin-bottom: 14px;
}
.ranking-header h3 {
	font-size: 143%;
	line-height: 1.2;
}

/* .ranking-box
-------------------------------------------------- */
.ranking-box {
	padding-top: 14px;
	margin-bottom: 24px;
}

/* .box-title */
.ranking-box .box-title {
	/*height: 40px;*/
	margin-bottom: 14px;
	padding: 0 10px;
	color: #333;
	background-color: #e7ebef;
	border-radius: 3px 3px 0 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/* .box-title -- title */
.ranking-box .box-title h4 {
	display: inline-block;
	padding-top: 9px;
	font-size: 143%;
	line-height: 1.2;
	width:423px;
}
.ranking-box .box-title h4 a {
	color: #00f;
	background-color: transparent;
	text-decoration: underline;
}
.ranking-box .box-title h4 a:hover { text-decoration: none;}
/* .box-title -- side */
.ranking-box .box-title .box-title-side {
	float: right;
	display: inline-block;
	padding-top: 6px;
}
.ranking-box .box-title .box-score strong {
	font-size: 115%;
}
.box-title .box-score strong span {
	font-size: 150%;
}
.ranking-box .box-title .box-btn {
	float: right;
	width: 120px;
	margin-left: 5px;
}

/* .box-logo */
.ranking-box .box-logo {
	width: 228px;
	margin-right: 1px;
	text-align: center;
	vertical-align: middle;
}
.ranking-box .box-logo .box-detail {
	margin-top: 10px;
}
.ranking-box .box-logo img {
	width:auto;
	max-width:190px;
}

/* box-voice */
.ranking-box .box-logo + .box-voice {
	display: table-cell;
}
.ranking-box .box-voice li {
	width: 192px;
	margin: 0 18px 10px 0;
	padding: 6px;
}

.ranking-aside .ranking-box .box-voice li {
	width: 180px;
}

.ranking-box .box-voice > .box-voice-img {
	float: left;
	display: inline-block;
	margin-bottom: 10px;
	padding: 0 20px;
}
.ranking-box .box-voice .box-voice-img img {
	margin-right: 8px;
	text-align: left;
	vertical-align: middle;
}
.ranking-box .box-voice > .box-voice-txt p {
	margin: 0.8em 1em 0 0;
}
.ranking-box.outside-client .box-voice > .box-voice-txt p {
	margin-top:0;
}
.ranking-box .box-voice .box-detail {
	clear: both;
	width: 228px;
}

/* .box-detail */
.ranking-box .box-detail {
	text-align: center;
}
.ranking-box .box-detail a {
	color: #00f;
	background-color: transparent;
}
.ranking-box .box-detail a:before {
	content: "";
	display: inline-block;
	width: 4px;
	vertical-align: 0.1em;
	border-style: solid;
	border-width: 4px 0 4px 5px;
	border-color: transparent transparent transparent #00f;
}

/* .box-contact */
.ranking-box .box-contact {
	display: table;
	width: 530px;
	margin: 18px auto 0;
	padding: 10px 14px;
	color: #333;
	background-color: #fcf4cd;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.ranking-box .box-contact dl,
.ranking-box .box-contact dt,
.ranking-box .box-contact dd {
	margin: 0;
	padding: 0;
}
.ranking-box .box-contact .box-contact-tel {
	display: table-cell;
	max-width: 220px;
	width: 52.2%;
	padding-left: 44px;
	font-weight: bold;
	line-height: 1.1;
	vertical-align: middle;
	color: #e44;
	background: transparent url(//life-cdn.oricon.co.jp/img/common/icon-tel.png) no-repeat left center;
}
.ranking-box .box-contact .box-contact-tel dt {
	margin-bottom: 5px;
	font-size: 93%;
}
.ranking-box .box-contact .box-contact-tel dd {
	font-size: 172%;
}
.ranking-box .box-contact .box-contact-tel + .box-contact-hours {
	border-left: 1px solid #e2dbb8;
}
.ranking-box .box-contact .box-contact-hours {
	display: table-cell;
	padding-left: 20px;
	vertical-align: middle;
}
.ranking-box .box-contact .box-contact-hours dt {
	float: left;
	width: 4em;
	font-weight: bold;
}
.ranking-box .box-contact .box-contact-hours dd {
	padding-left: 4.7em;
}

/* .ranking-aside
-------------------------------------------------- */
.ranking-aside {
	margin-bottom: 36px;
	border: 1px solid #dfe3e8;
	border-radius: 3px;
}
/* ranking-aside-header */
.ranking-aside .ranking-aside-header {
	padding: 0.8em 18px;
	font-size: 115%;
	line-height: 1.2;
	color: #333;
	background: #fafbfc url(//life-cdn.oricon.co.jp/img/common/bg-line-dot.png) repeat-x left bottom;
}
.ranking-aside .ranking-aside-header + p {
	margin: 18px;
}
/* ranking-aside -- rankig-box */
.ranking-aside .ranking-box {
	margin: 0 18px 24px;
}
.ranking-aside .ranking-box .box-title {
	padding-left: 14px;
}
.ranking-aside .ranking-box .box-title h4 {
	font-size: 122%;
}
.ranking-aside .ranking-box .box-logo {
	width: 195px;
	padding-right: 15px;
}
.ranking-aside .ranking-box .box-voice li {
	margin: 0 0 10px;
}
.ranking-aside .ranking-box .box-voice li:last-child {
	margin-left: 10px;
	/* margin-left: 18px; */
}
/* ranking-aside-lists */
.ranking-aside .ranking-aside-lists {
	margin: 0 18px 18px 18px;
	padding-top: 20px;
	border-top: 1px solid #dfe3e8;
}
.ranking-aside .ranking-aside-lists ul {
	/*float: left;
	width: 50%;*/
	margin: 0;
	padding: 0;
	line-height: 1.7;
	list-style-type: none;
	vertical-align: top;
}
.ranking-aside .ranking-aside-lists li {
	margin: 0;
	padding: 0;
	float:left;
	width:300px;
}
.ranking-aside .ranking-aside-lists li a {
	display: inline-block;
	margin-left: 1.6em;
	text-indent: -1em;
}
.ranking-aside .ranking-aside-lists li a:before {
	content: "\30fb";
}
/* ranking-aside -- region-list */
.ranking-aside .region-list {
	padding: 10px 28px;
}
.region-list .region {
	margin: 0.3em 0;
}

/* .about-research
-------------------------------------------------- */
.about-research {
	margin-top: 10px;
}
.about-research h3 {
	margin-bottom: 24px;
	/*height: 40px;*/
	line-height: 20px;
	text-align: center;
	color: #333;
	background-color: #dce2e8;
	border-radius: 18px;
	padding:10px 0;
}
/* number */
.about-research .research-number {
	float: left;
	width: 140px;
	margin: 0 20px;
	padding: 10px 0;
	font-size: 115%;
	line-height: 1.7;
	text-align: center;
	color: #fff;
	background-color: #e66;
}
.about-research .research-number strong {
	font-size: 150%;
}
/* data table */
.about-research .research-data {
	width: 460px;
	font-size: 86%;
	line-height: 1.6;
	margin-left: 180px;
}
.about-research .research-data th {
	width: 6.2em;
	text-align: left;
	padding: 2px 0;
	vertical-align: top;
}
.about-research .research-data td {
	padding: 2px 0;
	vertical-align: top;
}
.about-research .research-data tr th:last-of-type {
	width: 4.2em;
}

/* history-data */
.old-research {
	clear: both;
	display: inline-block;
	margin: 0 10px 0 20px;
	padding: 34px 0;
}
.old-research dt {
	display: inline-block;
	margin: 0;
	padding: 0 5px 0 0;
	font-weight: bold;
}
.old-research dd {
	display: inline-block;
	margin: 0;
	padding: 0 5px 0 0;
}

/* appeal(cs-ad-banner) */
.appeal {
	width: 530px;
	height: auto;
	margin: 0 0 26px;
	padding: 18px 58px;
	color: #64a7c8;
	background-color: #fff;
	border: 2px solid #64a7c8;
	border-radius: 4px;
	overflow: hidden;
}
.appeal .txt {
	float: left;
	width: 370px;
}
.appeal .pr {
	font-weight: bold;
	font-size: 140%;
	/*font-size: 158%;*/
	line-height: 1.8;
}
.appeal .pr strong {
	font-size: 127%;
	line-height: 1;
}
.appeal .pr strong span {
	font-size: 160%;
	position: relative;
	top: 0.1em;
}
.appeal .pr + p {
	margin-top: 1.5em;
	line-height: 1.1;
}
.appeal .pik {
	float: right;
	display: inline-block;
}

/* ---------- other ---------- */
.ad-banner {
	margin: 0 auto 10px;
	border: 1px solid #dfe3e8;
	border-radius: 3px;
}
.ad-banner a {
	display: block;
	padding: 12px 12px 12px 20px;
	overflow: hidden;
	color: #333;
	background-color: transparent;
}
.ad-banner a:hover {
	text-decoration: none;
}
.ad-banner a img {
	float: left;
	margin-right: 20px;
}
.ad-banner a p {
	line-height: 1.4;
}
.ad-banner a p strong {
	display: block;
	margin-bottom: 0.4em;
	color: #1188aa;
	background-color: transparent;
}


.related-special {margin-bottom:20px;}
.related-special h2 {padding:14px 20px; font-size:115%; line-height:1.2; color:#333; border-radius:3px 3px 0 0;
	background:#ddd url(//life-cdn.oricon.co.jp/img/index/bg-line-dot-light.png) no-repeat left bottom;}
.related-special .special-box {padding:1px 0 0; border:1px solid #dfe3e8; border-top:0 none; border-radius:0 0 3px 3px;}
.related-special .special-box dl {margin-left:15px; margin-right:15px; padding-top:15px; position:relative;	border-top:2px solid #ddd;}
.related-special .special-box dl:first-child {border:none; padding-top:0;}
.related-special .special-box dl:after {content: "."; display: block; height: 0; font-size:0; clear: both; visibility:hidden;}

.related-special .special-box dt {float:left; width:150px; margin-right:15px;}
.related-special .special-box dt a {display:block; text-align:center; background-color:#f0f0f0;}
.related-special .special-box dt img {max-height:106px; max-width:150px;}
.related-special .special-box dd {display:inline-block; margin-left:0; width:453px;}
.related-special .special-box dd br {display:none;}
.related-special .special-box .sp_title {border-left:7px solid #999; padding-left:10px; margin-bottom:8px; font-size:14px; 
	font-weight:bold; color:#999; line-height:22px;}
.related-special .special-box .list_link {position:absolute; top:15px; right:0;}
.related-special .special-box dl:first-child .list_link {top:0;}
.related-special .special-box .list_link a {padding:1px 3px; border:1px solid #ccc; font-size:11px; background-color:#b3b3b3; color:#fff; border-radius:3px;}
.related-special .special-box .sp_menu {margin:4px 0;}
.related-special .special-box .sp_menu a:before {content: ""; display: inline-block; width: 0; height: 0; margin-right: 3px;
	vertical-align: 1px; border-style: solid; border-width: 4px 0 4px 5px;
	border-color: transparent transparent transparent #1189aa;}



/* ---------- 右カラム関連リンク ---------- */
.right-menu-box {width:296px; border:2px solid #cad1db; padding:0 0 5px 0; border-radius:2px;}
.right-menu-box h4 {font-size:14px; padding:7px 10px 5px 10px; border-bottom:2px solid #eee; background-color:#FAFBFC;}
.right-menu-box ul {margin:5px 10px 0 10px; padding:0 0 10px 0; width:276px;}
.right-menu-box ul li a {color:#333; padding:0 0 0 14px; display:block; margin:3px 0;}
.right-menu-box ul li {background:url(//life-cdn.oricon.co.jp/img/common/marker-arrow-right.png) 0 50% no-repeat; list-style:none; min-width:133px; float:left;}
.right-menu-box ul.noborder {border:none;}

/* ---------- ランキング下部関連リンク ---------- */
.ranking-topics {
	margin-top:20px;
	margin-bottom: 22px;
	border-radius: 3px;
}
.ranking-topics h2 {
	padding: 14px 20px;
	font-size: 115%;
	line-height: 1.2;
	color: #333;
	background: #ddd url(//life-cdn.oricon.co.jp/img/index/bg-line-dot-light.png) no-repeat left bottom;
	border-radius: 3px 3px 0 0;
}
.ranking-topics h2 span {
	display: inline-block;
	margin-right: 10px;
	padding: 6px 8px;
	font-weight: normal;
	font-size: 10px;
	vertical-align: middle;
	border: 1px solid #888;
}
.ranking-all-list {
	margin-bottom: 14px;
	color: #333;
	background-color: #f5f5f5;
	border-radius: 3px;
}
.ranking-all-list h2 {
	padding: 14px 20px;
	font-size: 115%;
	line-height: 1.2;
	color: #fff;
	background: #999 url(//life-cdn.oricon.co.jp/img/index/bg-line-dot-dark.png) no-repeat left bottom;
	border-radius: 3px 3px 0 0;
}
.ranking-all-list section {
	padding-top: 16px;
	padding-bottom: 10px;
	padding-left: 20px;
}
.ranking-all-list ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.ranking-all-list li {
	position: relative;
	float: left;
	width: 151px;
	margin: 0 2px 2px 0;
	padding: 0;
}
.ranking-all-list li:nth-child(4n+1) {
	clear: left;
}
.ranking-all-list li a {
	display: table-cell;
	width: 130px;
	height: 48px;
	padding: 0 7px 0 12px;
	line-height: 1.2;
	vertical-align: middle;
	background: #fff;
	background: -webkit-linear-gradient(top,  #f8f8f8 0%,#ffffff 60%,#ffffff 100%);
	background: linear-gradient(to bottom,  #f8f8f8 0%,#ffffff 60%,#ffffff 100%);
	border: 1px solid #d4d7db;
}
.lte8 .ranking-all-list li a {
	background: url(//life-cdn.oricon.co.jp/img/index/bg-all-list.png) repeat-x left bottom;
}
.lte7 .ranking-all-list li a {
	display: inline;
	*zoom: 1\9;
}
.ranking-all-list li a small {
	font-size: 86%;
}
.ranking-all-list li.new a:before {
	display: inine-block;
	position: absolute;
	top: 5px;
	right: 5px;
	content: url("/img/index/icon-new.png");
	vertical-align: top;
	font-size: 8px;
	line-height: 1;
}



/* ---------- 右カラム属性ランキング ---------- */
.side-contents .feature-box .box.side-ranking {border:none; padding:10px 0;}
.side-contents .feature-box .side-ranking article header h4 {background-color:#ddd; display:block; padding:4px 4px 2px 8px; font-size:14px;
	border-radius: 3px 3px 0 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;}
.side-contents .feature-box .side-ranking .side-ranking-list img {width:22px;}
.side-contents .feature-box .side-ranking article li a {line-height:22px; padding:0 1em 0 0; color:#00f;}
.side-contents .feature-box .side-ranking article li {border-bottom:1px solid #ddd; padding:5px 0}
.side-contents .feature-box .side-ranking article ul {margin-left:0; padding-top:0;}


/* ---------- migration-menu ---------- */
.migration-menu {background-color:#f0f0f0; border-top:5px solid #51e029; padding-bottom:10px; margin-bottom:10px;}
.migration-menu h3 {font-weight:bold; font-size:16px; padding:3px 10px;}
.migration-menu ul {margin:0; padding:0; list-style:none; text-align:center;}
.migration-menu li {display:inline-block; font-size:12px; width:206px; font-weight:bold; border:1px solid #bababa; text-align:left;
	background: #fff; background: -moz-linear-gradient(top,  #ffffff 0%, #f4f4f4 100%);
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f4f4f4 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#f4f4f4 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f4f4f4',GradientType=0 );}
.migration-menu li a {display:block; padding:1px 10px 1px 24px; line-height:150%; text-decoration:none;
	background: url(//life-cdn.oricon.co.jp/img/common/marker-arrow-right.png) 8px 50% no-repeat;}
.migration-menu li a .genre-name {font-size:16px; color:#333; font-weight:bold;}
.migration-menu li:hover {opacity:0.6; filter:alpha(opacity=60); -ms-filter: "alpha( opacity=60 )";}


.migration-menu {background-color:#ddd; border-top:5px solid #EE6666; padding-bottom:10px; margin-bottom:10px;}
.migration-menu li {display:inline-block; font-size:12px; width:206px; font-weight:bold; border:1px solid #bababa; text-align:left;
	background: #fff; background: -moz-linear-gradient(top,  #ffffff 0%, #eeeeee 100%);
	background: -webkit-linear-gradient(top,  #ffffff 0%,#eeeeee 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#eeeeee 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );}
.migration-menu li a {display:block; padding:1px 10px 1px 24px; line-height:150%; text-decoration:none;
	background: url(//life-cdn.oricon.co.jp/img/common/marker-arrow-right-pink.png) 8px 50% no-repeat; color:#EE6666;}


/* ---------- this style sheet clearfix ---------- */
.box-voice ul:before, .box-voice ul:after,
.ranking-aside-lists:before, .ranking-aside-lists:after,
.cf:before, .cf:after {
    content: "";
    display: table;
}
.box-voice ul:after,
.ranking-aside-lists:after,
.cf:after { clear: both; }
