@charset 'UTF-8';
* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	word-break: break-all;
	word-wrap: break-word;
}

/***** ↓sp chrome用 *****/
@media (max-width: 640px) {
	* {
		-webkit-text-size-adjust: 100%;
	}
}

/***** ↑sp chrome用 *****/

html {
	height: 100%;
	width: 100%;
}

body {
	color: #000;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", HiraKakuPro-W3, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
	font-size: 14px;
	height: 100%;
	line-height: 1.7;
	position: relative;
	width: 100%;
}

/***** ↓sp *************************/
@media (max-width: 767px) {
	body {
		font-size: 12px;
	}
}

/***** ↑sp *************************/


img {
	border: none;
}

ul,
li {
	list-style-type: none;
}


/*a:hover {*/
/*	color: #50b4ff;*/
/*}*/

.st-wrapper {
	min-width: 1260px;
}

.container {
	width: 1160px;
	position: relative;
}

.nav-middle .container {
	padding-left: 0;
	padding-right: 0;
	width: 1260px;
}

.ranking-kv-pc-fig {
	margin: 0 auto;
	width: 1160px;
}

.ranking-kv-pc-fig img {
	border: 1px solid #d3d3d3;
	display: block;
	width: 100%;
}

.ranking-kv-sp-fig {
	display: none;
}

.ranking-kv-sp-fig img {
	border: 1px solid #d3d3d3;
	display: block;
	width: 100%;
}


.sc-footer {
	width: auto;
}

.sc-footer .container {
	padding: 0 50px;
	width: 1260px;
	background-color: #eee;
}

.anchor {
	margin-top: -127px;
	padding-top: 127px;
	display: block;
	position: relative;
	z-index: -10;
	font-size: 0;
	line-height: 0;
}

.menu-area-anchor {
	margin-top: -127px;
	padding-top: 127px;
	display: block;
	position: relative;
	z-index: -10;
	font-size: 0;
	line-height: 0;
}



/***** ↓sp *************************/
@media (max-width: 767px) {
	.st-wrapper {
		min-width: auto;
	}

	.container {
		width: auto;
	}

	.nav-middle .container {
		width:auto;
	}

	.nav-middle.open .container {
		width: auto;
		padding-left: 0;
		padding-right: 0;
	}

	.btn-triangle-right {
		font-size: 11px;
	}

	.page-title-st {
		display: none;
	}

	.ranking-kv-pc-fig {
		display: none;
	}

	.ranking-kv-sp-fig {
		display: block;
	}

	.sc-footer .container {
		padding: 0 20px;
		width: auto;
	}

	.anchor {
		margin-top: -63px;
		padding-top: 63px;
	}

	.menu-area-anchor {
		margin-top: -63px;
		padding-top: 63px;
	}
}
/***** ↑sp *************************/


/***** ↓wide *************************/
@media (max-width: 1260px) {
	.sc-nav {
		width: auto;
		left: 0;
	}
}

/***** ↑wide *************************/


.nav-top-inner {
	margin: 0 auto;
	padding-left: 50px;
	padding-right: 50px;
	width: 1260px;
}

.footer-links-outer {
	margin: 0 auto;
	text-align: center;
}

.list-link-f {
	text-align: left;
}

.footer-logo-img {
	width: 100%;
}

/***** ↓sp *************************/
@media (max-width: 767px) {
	.nav-top-inner {
		padding-left: 0;
		padding-right: 0;
		width: auto;
	}

	.footer-links-outer {
		margin: 0 auto;
		width: 100%;
	}
}
/***** ↑sp *************************/



/******************************************************************************
  preface
 ******************************************************************************/
.ranking-preface {
	margin: 30px 0 0;
	padding: 20px;
	border: 1px solid #ddd;
	font-size: 16px;
}

/***** ↓sp *************************/
@media (max-width: 767px) {
	.ranking-preface {
		margin: 25px 0 0;
		font-size: 14px;
	}
}
/***** ↑sp *************************/


/******************************************************************************
  btn (l)
 ******************************************************************************/
.menu-area {
	position: relative;
	z-index: 100;
}

.menu-area::after {
	border-bottom: 1px solid #ddd;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	content: '';
}

.menu-area.float-menu {
	padding-left: 50px;
	padding-right: 50px;
	width: 100%;
	position: fixed;
	left: 0;
	z-index: 10000;
	background: #fff;
}

.menu-area-inner {
	margin: 0 auto;
}

.ranking-btns-ul {
	margin: 0 auto;
	padding: 30px 0 0;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-align: stretch;
	-webkit-box-align: stretch;
	align-items: stretch;
	-ms-flex-flow: row wrap;
	-webkit-box-direction: normal;
	-webkit-box-orient: horizontal;
	flex-flow: row wrap;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
	box-sizing: content-box;
	position: relative;
}

.ranking-btns-ul-li {
/*	flex-basis: 20%;*/
	flex-basis: 16.6666%;
/*	position: relative;*/
}

/*.ranking-btns-ul-li:first-of-type {
	margin-left: 0;
}*/

.ranking-btns-ul-li-a {
	padding: 15px 20px;
	border: 1px solid #e9e9e9;
	border-bottom: 0;
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	color: #9b9b9b;
	font-weight: bold;
	background: #e9e9e9;
}

.ranking-btns-ul-li-a:hover {
	border: 1px solid #ddd;
	border-bottom: 0;
	position: relative;
	background: #fff;
}

.float-menu .has-submenu .ranking-btns-ul-li-a:hover {
	z-index: 101;
}

.active .ranking-btns-ul-li-a {
	border: 1px solid #ddd;
	border-bottom: 0;
	background: #fff;
	z-index: 101;
}

.ranking-btns-ul-li-a::before {
	border-left: 1px solid #9b9b9b;
	width: 1px;
	height: calc(100% - 24px);
	position: absolute;
	left: 0;
	top: 12px;
	content: '';
}

.ranking-btns-ul-li:first-of-type .ranking-btns-ul-li-a::before {
	border-left: 0;
}

.ranking-btns-ul-li-a:hover::before,
.active .ranking-btns-ul-li-a::before,
.active + .ranking-btns-ul-li .ranking-btns-ul-li-a::before,
.ranking-btns-ul-li:hover + .ranking-btns-ul-li .ranking-btns-ul-li-a::before {
	border-left: 0;
}

.ranking-btns-ul-li-a::after {
	border-left: 8px solid transparent;
	display: block;
	content: '';
	width: 12px;
	height: calc(100% - 18px);
	position: absolute;
	left: 0;
	top: 9px;
	z-index: 10;
}

.ranking-btns-ul-li-a-l {
	display: block;
	font-size: 23px;
	line-height: 1;
}

.ranking-btns-ul-li-a-s {
	padding: 5px 0 0;
	display: block;
	font-size: 16px;
	line-height: 1;
}

.ranking-btns-ul-li-a-sho:hover,
.active .ranking-btns-ul-li-a-sho {
	color: #e89a30;
/*	background-color: #fff;*/
}

.ranking-btns-ul-li-a-sho:hover::after,
.active .ranking-btns-ul-li-a-sho::after {
	border-left-color: #e89a30;
}

.ranking-btns-ul-li-a-kin:hover,
.active .ranking-btns-ul-li-a-kin {
	color: #8dc53b;
/*	background-color: #fff;*/
}

.ranking-btns-ul-li-a-kin:hover::after,
.active .ranking-btns-ul-li-a-kin::after {
	border-left-color: #8dc53b;
}

.ranking-btns-ul-li-a-ken:hover,
.active .ranking-btns-ul-li-a-ken {
	color: #417cc4;
/*	background-color: #fff;*/
}

.ranking-btns-ul-li-a-ken:hover::after,
.active .ranking-btns-ul-li-a-ken::after {
	border-left-color: #417cc4;
}

.ranking-btns-ul-li-a-mk:hover,
.active .ranking-btns-ul-li-a-mk {
	color: #d4a53f;
/*	background-color: #fff;*/
}

.ranking-btns-ul-li-a-mk:hover::after,
.active .ranking-btns-ul-li-a-mk::after {
	border-left-color: #d4a53f;
}

.ranking-btns-ul-li-a-it:hover,
.active .ranking-btns-ul-li-a-it {
	color: #4d8385;
/*	background-color: #fff;*/
}

.ranking-btns-ul-li-a-it:hover::after,
.active .ranking-btns-ul-li-a-it::after {
	border-left-color: #4d8385;
}

.ranking-btns-ul-li-a-sg:hover,
.active .ranking-btns-ul-li-a-sg {
	color: #94586e;
/*	background-color: #fff;*/
}

.ranking-btns-ul-li-a-sg:hover::after,
.active .ranking-btns-ul-li-a-sg::after {
	border-left-color: #94586e;
}

@media (max-width: 1159px) {
	.menu-area.float-menu {
		width: auto;
	}
}

/***** ↓sp *************************/
@media (max-width: 767px) {
	.float-menu {
		padding: 0;
		width: auto;
		position: static;
	}

	.menu-area::after {
		display: none;
	}

	.ranking-btns-ul {
		margin: 0 auto;
		padding: 25px 0 10px;
	}

	.ranking-btns-ul-li {
		margin: 0 0 15px;
		flex-basis: 33.33333%;
	}

	.ranking-btns-ul-li:nth-of-type(3n+1) .ranking-btns-ul-li-a::before {
		border-left: 0;
	}

	.ranking-btns-ul-li-a {
		padding: 10px;
	}

	.ranking-btns-ul-li-a::before {
		height: calc(100% - 20px);
		top: 10px;
	}

	.ranking-btns-ul-li-a::after {
		border-left-width: 5px;
		width: 5px;
		height: calc(100% - 14px);
		position: absolute;
		left: 0;
		top: 7px;
		z-index: 10;
	}

	.ranking-btns-ul-li-a-l {
		font-size: 16px;
	}

	.ranking-btns-ul-li-a-s {
		padding: 5px 0 0;
		font-size: 11px;
	}
}
/***** ↑sp *************************/


/******************************************************************************
  btn (sub)
 ******************************************************************************/
.submenu-area {
	position: relative;
	z-index: 100;
}

.submenu-area.float-menu {
	padding-left: 50px;
	padding-right: 50px;
	width: 100%;
	position: fixed;
	left: 0;
	z-index: 10000;
	background: #fff;
}

.submenu-area-inner {
	margin: 0 auto;
}

.submenu-ul {
	margin: 0 auto;
	padding: 30px 0 0;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-align: stretch;
	-webkit-box-align: stretch;
	align-items: stretch;
	-ms-flex-flow: row wrap;
	-webkit-box-direction: normal;
	-webkit-box-orient: horizontal;
	flex-flow: row wrap;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
	box-sizing: content-box;
	width: 1020px;
	position: relative;
}

.submenu-ul-li {
	flex-basis: calc(33.3333% - 20px);
}


.submenu-ul-li-a {
	padding: 20px;
	border-bottom: 3px solid #bababa;
	display: block;
	width: 100%;
	position: relative;
	color: #bababa;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}

.submenu-ul-li-a:hover,
.submenu-ul-li-a:focus,
.submenu-ul-li-a:active {
	border-bottom: 3px solid #bababa;
}

.submenu-ul-li.active .submenu-ul-li-a::before {
	border-top: 12px solid #9b9b9b;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	width: 16px;
	height: 12px;
	position: absolute;
	left: calc(50% - 6px);
	bottom: -12px;
	content: '';
}

.submenu-ul-li-a-sogo:hover,
.submenu-ul-li.active .submenu-ul-li-a-sogo {
	border-bottom-color: #025092;
	color: #025092;
}

.submenu-ul-li-a-sogo:hover::before,
.submenu-ul-li.active .submenu-ul-li-a-sogo::before {
	border-top-color: #025092;
}

.submenu-ul-li-a-ribun:hover,
.submenu-ul-li.active .submenu-ul-li-a-ribun {
	border-bottom-color: #27900D;
	color: #27900D;
}

.submenu-ul-li-a-ribun:hover::before,
.submenu-ul-li.active .submenu-ul-li-a-ribun::before {
	border-top-color: #27900D;
}

.submenu-ul-li-a-bunrui:hover,
.submenu-ul-li.active .submenu-ul-li-a-bunrui {
	border-bottom-color: #C3750C;
	color: #C3750C;
}

.submenu-ul-li-a-bunrui:hover::before,
.submenu-ul-li.active .submenu-ul-li-a-bunrui::before {
	border-top-color: #C3750C;
}



@media (max-width: 1159px) {
	.submenu-area.float-menu {
		width: auto;
	}
}

/***** ↓sp *************************/
@media (max-width: 767px) {
	.float-menu {
		padding: 0;
		width: auto;
		position: static;
	}

	.submenu-area::after {
		display: none;
	}

	.submenu-ul {
		margin: 0 auto;
		padding: 0;
		width: auto;
	}

	.submenu-ul-li {
		flex-basis: calc(33.3333% - 10px);
	}

	.submenu-ul-li-a {
		padding: 10px 0;
		font-size: 18px;
	}

}
@media (max-width: 640px) {
	.submenu-ul-li {
		flex-basis: 100%;
	}

	.submenu-ul-li-a {
		margin: 20px 0 0;
	}

	.submenu-ul-li.active .submenu-ul-li-a::before {
		display: none;
	}
}
/***** ↑sp *************************/


/******************************************************************************
  submenu
 ******************************************************************************/
.has-submenu .submenu-box {
	padding: 0 0 30px;
	display: none;
	width: 100%;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	background: #fff;
	transition-property: all;
	transition-duration: .2s;
	transition-timing-function: ease-in-out;
}

.has-submenu .submenu-ul {
	margin: 0 auto;
}


.has-submenu.active .submenu-box {
	display: block;
}

.has-submenu.active .submenu-box::before {
	position: absolute;
	width: calc(50vw - 50%);
	height: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	transform: translateX(-100%);
	content: '';
}

.has-submenu.active .submenu-box::after {
	position: absolute;
	width: calc(50vw - 50%);
	height: 100%;
	top: 0;
	right: 0;
	background-color: #fff;
	transform: translateX(100%);
	content: '';
}

/*.submenu-ul {
	margin: 35px auto 20px;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
	-ms-flex-flow: row wrap;
	-webkit-box-direction: normal;
	-webkit-box-orient: horizontal;
	flex-flow: row wrap;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
	box-sizing: content-box;
}

.submenu-ul-li {
	padding-left: 20px;
	position: relative;
	font-size: 14px;
}

.submenu-ul-li::before {
	border-right: 2px solid;
	border-bottom: 2px solid;
	width: 8px;
	height: 8px;
	position: absolute;
	top: 50%;
	left: 0;
	content: '';
	transform: rotate(45deg) translate(-5px,-5px);
}

.submenu-ul-gyo .submenu-ul-li {
	margin: 15px 0 0 40px;
	flex-basis: calc(25% - 30px);
}

.submenu-ul-gyo .submenu-ul-li:nth-of-type(4n+1) {
	margin-left: 0;
}

.submenu-ul-gyo .submenu-ul-li::before {
	border-color: #7fb4f3;
}


.submenu-ul-dj .submenu-ul-li {
	margin: 15px 0 0 40px;
	flex-basis: calc(25% - 30px);
}

.submenu-ul-dj .submenu-ul-li:nth-of-type(4n+1) {
	margin-left: 0;
}

.submenu-ul-dj .submenu-ul-li::before {
	border-color: #efcd82;
}


.submenu-ul-ris .submenu-ul-li {
	margin: 15px 0 0 40px;
	flex-basis: calc(20% - 32px);
}

.submenu-ul-ris .submenu-ul-li:nth-of-type(5n+1) {
	margin-left: 0;
}

.submenu-ul-ris .submenu-ul-li::before {
	border-color: #5e9597;
}


.submenu-ul-dai .submenu-ul-li {
	margin: 15px 0 0 40px;
	flex-basis: calc(16.66666% - 33.33333px);
}

.submenu-ul-dai .submenu-ul-li:nth-of-type(6n+1) {
	margin-left: 0;
}

.submenu-ul-dai .submenu-ul-li::before {
	border-color: #a3657d;
}
*/


/***** ↓sp *************************/
@media (max-width: 767px) {
	.has-submenu .submenu-box {
		padding: 0;
	}

	/*.has-submenu:hover .submenu-box {
		display: none;
	}*/

	/*.submenu-ul {
		margin: 0 auto 25px;
		position: relative;
		z-index: 10;
	}

	.submenu-ul-li {
		padding-left: 15px;
		font-size: 12px;
	}

	.submenu-ul-li::before {
		width: 7px;
		height: 7px;
	}

	.submenu-ul-gyo .submenu-ul-li {
		margin: 15px 0 0 24px;
		flex-basis: calc(50% - 12px);
	}

	.submenu-ul-gyo .submenu-ul-li:nth-of-type(4n+1) {
		margin-left: 24px;
	}

	.submenu-ul-gyo .submenu-ul-li:nth-of-type(2n+1) {
		margin-left: 0;
	}


	.submenu-ul-ris .submenu-ul-li {
		margin: 15px 0 0 24px;
		flex-basis: calc(33.33333% - 16px);
	}

	.submenu-ul-ris .submenu-ul-li:nth-of-type(5n+1) {
		margin-left: 24px;
	}

	.submenu-ul-ris .submenu-ul-li:nth-of-type(3n+1) {
		margin-left: 0;
	}


	.submenu-ul-dai .submenu-ul-li {
		margin: 15px 0 0 24px;
		flex-basis: calc(33.33333% - 16px);
	}

	.submenu-ul-dai .submenu-ul-li:nth-of-type(6n+1) {
		margin-left: 24px;
	}

	.submenu-ul-dai .submenu-ul-li:nth-of-type(3n+1) {
		margin-left: 0;
	}*/
}

@media (max-width: 480px) {
	/*.submenu-ul-dj .submenu-ul-li {
		margin: 15px 0 0 24px;
		flex-basis: calc(50% - 12px);
	}

	.submenu-ul-dj .submenu-ul-li:nth-of-type(4n+1) {
		margin-left: 24px;
	}

	.submenu-ul-dj .submenu-ul-li:nth-of-type(2n+1) {
		margin-left: 0;
	}


	.submenu-ul-ris .submenu-ul-li {
		margin: 15px 0 0 24px;
		flex-basis: calc(50% - 12px);
	}

	.submenu-ul-ris .submenu-ul-li:nth-of-type(3n+1) {
		margin-left: 24px;
	}

	.submenu-ul-ris .submenu-ul-li:nth-of-type(2n+1) {
		margin-left: 0;
	}*/
}
/***** ↑sp *************************/


/******************************************************************************
  ribbon, belt, etc.
 ******************************************************************************/
.category-section {
	display: none;
}

.category-section.active {
	display: block;
}

.ranking-section {
	padding: 0 0 80px;
	display: none;
	position: relative;
}

.ranking-section.active {
	display: block;
}

.ranking-section-inner {
	padding: 170px 0 0;
	position: relative;
}

.ranking-ribbon-h2 {
	text-align: center;
}

.ranking-ribbon-h2-bunrui {
	padding: 30px 0 50px;
}

.ranking-ribbon-h2-img-sp {
	display: none;
}

.ranking-ribbon-h2-img-pc {
	margin: 0 auto;
	display: block;
	width: 740px;
	line-height: 1;
}

.ranking-ribbon-h2-bunrui .ranking-ribbon-h2-img-pc {
	width: 555px;
}

.ranking-belt-h2 {
	margin: 0 0 20px;
	padding: 15px;
	border-radius: 100px;
	font-size: 15px;
	color: #fff;
	text-align: center;
	background: #707070;
}

.ranking-belt-h3-sogo {
	margin: 0 0 50px;
	padding: 15px 20px;
	font-size: 20px;
	color: #fff;
	text-align: center;
	background: #025092;
}

.ranking-ribbon-h3-bunrui-s {
	margin: 0 0 20px;
	padding: 10px 10px 10px 20px;
	border-left: 6px solid #C3750C;
	width: 300px;
	font-size: 18px;
	font-weight: bold;
	background-color: #f9f1e6;
}


.container-afterword {
	padding-top: 25px;
	padding-bottom: 100px;
}

/***** ↓sp *************************/
@media (max-width: 767px) {
	.ranking-section {
		padding: 0 0 50px;
	}

	.ranking-section-inner {
		padding: 250px 0 0;
	}

	.ranking-ribbon-h2 {
		width: 100%;
	}

	.ranking-ribbon-h2-img-sp {
		margin: 0 auto;
		display: block;
		width: 100%;
		max-width: 465px;
	}

	.ranking-ribbon-h2-img-pc {
		display: none;
	}

	.ranking-ribbon-h2-bunrui {
		padding: 0 0 10px
	}

	.ranking-ribbon-h2-bunrui .ranking-ribbon-h2-img-sp {
		max-width: 350px;
	}

	.ranking-ribbon-h2-s {
		padding: 10px 0;
	}

	.ranking-belt-h3 {
		margin: 10px 0;
		padding: 5px;
		font-size: 12px;
	}

	.container-afterword {
		padding-top: 0;
		padding-bottom: 50px;
	}

	.ranking-belt-h2 {
		margin: 0 0 15px;
		padding: 8px;
		font-size: 12px;
	}

	.ranking-belt-h3-sogo {
		margin: 50px 0 30px;
	}

	.ranking-ribbon-h3-bunrui-s {
		width: auto;
		font-size: 16px;
	}
}
/***** ↑sp *************************/


/******************************************************************************/
/******************************************************************************
  ranking-top10
 ******************************************************************************/
.ranking-top10-ul {
	margin-top: 50px;
	align-items: stretch;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	flex-flow: row wrap;
	-ms-flex-align: stretch;
	-ms-flex-flow: row wrap;
	-ms-flex-pack: justify;
	-webkit-box-align: stretch;
	-webkit-box-direction: normal;
	-webkit-box-orient: horizontal;
	-webkit-box-pack: justify;
	justify-content: space-between;
}

.ranking-top10-ul-li {
	margin: 0 0 50px;
	flex-basis: calc(50% - 25px);
}

.ranking-top10-ul-li-inner {
	padding: 30px;
	border-radius: 10px;
	position: relative;
	background-color: #F7F7F7;
}

.ranking-order-top3-fig {
	width: 98px;
	position: absolute;
	left: -30px;
	top: 24px;
}

.ranking-top3-img {
	display: block;
	width: 100%;
}

.ranking-order-circle {
	padding: 20px 0 0;
	border-radius: 50%;
	width: 80px;
	height: 80px;
	position: absolute;
	top: 40px;
	left: -18px;
	text-align: center;
	background-color: #025092;
}

.ranking-order-circle-num {
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	line-height: 30px;
	vertical-align: baseline;
}

.ranking-order-circle-i {
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 30px;
	vertical-align: baseline;
}

.ranking-company-top10-box {
	padding: 20px 20px 50px 60px;
	align-items: center;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	flex-flow: row nowrap;
	-ms-flex-align: center;
	-ms-flex-flow: row nowrap;
	-ms-flex-pack: justify;
	-webkit-box-align: center;
	-webkit-box-direction: normal;
	-webkit-box-orient: horizontal;
	-webkit-box-pack: justify;
	justify-content: space-between;
	min-height: 135px;
}

.ranking-link-a.ranking-link-a-top10-sogo {
	display: block;
	max-width: 340px;
	color: #025092;
	font-size: 24px;
	font-weight: bold;
}

.ranking-pt-top10 {
	font-size: 20px;
	color: #9B9B9B;
	text-align: right;
}

.ranking-reasons-box {
	padding: 35px 25px 30px;
	border-radius: 7px;
	position: relative;
	background-color: #fff;
}

.ranking-reasons-h4 {
	padding: 10px;
	border-radius: 100px;
	width: 220px;
	position: absolute;
	top: -17px;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	font-size: 13px;
	text-align: center;
	background-color: #025092;
}

.ranking-reasons-tbl {
	border-collapse: collapse;
	width: 100%;
	table-layout: fixed;
}

.ranking-reasons-tbl th {
	padding: 0 10px 0 0;
	width: 100px;
	height: 48px;
	vertical-align: middle;
}

.ranking-reasons-tbl td {
	padding: 0;
	vertical-align: middle;
}

.ranking-reasons-b {
	padding: 4px ;
	width: 70px;
	position: relative;
	color: #fff;
	font-size: 16px;
	line-height: 1;
	text-align: center;
}

.ranking-reasons-b::after {
	border-top: 12px solid transparent;
	border-bottom: 12px solid transparent;
	border-left: 14px solid;
	width: 14px;
	height: 24px;
	position: absolute;
	top: 0;
	right: -14px;
	content: '';
}

.ranking-reasons-b1 {
	background: #caa846;
}

.ranking-reasons-b1::after {
	border-left-color: #caa846;
}

.ranking-reasons-b2 {
	background: #b2baba;
}

.ranking-reasons-b2::after {
	border-left-color: #b2baba;
}

.ranking-reasons-b3 {
	background: #b87333;
}

.ranking-reasons-b3::after {
	border-left-color: #b87333;
}

.ranking-reasons-highlight {
	display: inline-block;
	position: relative;
	font-size: 18px;
	line-height: 1.3333;
}

.ranking-reasons-highlight::before {
	width: 100%;
	height: 10px;
	position: absolute;
	bottom: -2px;
	left: 0;
	background: #edf2f7;
	content: '';
}

.ranking-reasons-highlight-inner {
	position: relative;
	z-index: 5;
}


/***** ↓sp *************************/
@media (max-width: 767px) {
	.ranking-top10-ul {
		margin: 0 0 10px;
		display: block;
	}

	.ranking-top10-ul-li {
		margin: 0 0 10px;
		padding: 50px 0 0;
		position: relative;
	}

	.ranking-top10-ul-li-inner {
		padding: 40px 20px 20px;
	}

	.ranking-top3-ul-li-inner {
		padding-top: 70px;
	}

	.ranking-order-top3-fig {
		width: 80px;
		position: absolute;
		left: 50%;
		top: -30px;
		transform: translateX(-50%);
	}

	.ranking-order-circle {
		width: 70px;
		height: 70px;
		position: absolute;
		left: 50%;
		top: -40px;
		transform: translateX(-50%);
	}

	.ranking-company-top10-box {
		padding: 20px 20px 40px;
		font-size: 26px;
		height: auto;
		min-height: 0;
	}

	.ranking-link-a.ranking-link-a-top10-sogo {
		flex-basis: calc(100% - 70px);
		font-size: 20px;
	}

	.ranking-pt-top10 {
		flex-basis: 70px;
		font-size: 15px;
	}

	.ranking-reasons-box {
		padding: 35px 20px 20px;
	}

	.ranking-reasons-h4 {
		padding: 5px 10px;
		top: -12px;
	}

	.ranking-reasons-b {
		padding: 5px;
		font-size: 14px;
	}

	.ranking-reasons-b::after {

	}

	.ranking-reasons-highlight {
		font-size: 14px;
	}
}
/***** ↑sp *************************/


/******************************************************************************/
/******************************************************************************/
/******************************************************************************/
/******************************************************************************/
/******************************************************************************
  tbl
 ******************************************************************************/
.ranking-tbl-top10 {
	border-top: 1px solid #ddd;
	border-collapse: collapse;
	width: 100%;
}

.ranking-tbl-top10 tr:nth-of-type(2n) {
	background: #f8f8f8;
}

.ranking-order-top10-th {
	padding: 40px 50px 40px 40px;
	border-bottom: 1px solid #ddd;
	width: 155px;
	height: 105px;
	color: #212121;
	font-size: 27px;
	text-align: right;
	line-height: 1;
	vertical-align: middle;
}

.ranking-order-top10-unit {
	font-size: 20px;
}

.ranking-company-top10-td {
	padding: 32px 50px;
	border-bottom: 1px solid #ddd;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.2;
	vertical-align: middle;
}

.ranking-point-top10-td {
	padding: 32px 50px 32px 0;
	border-bottom: 1px solid #ddd;
	width: 150px;
	text-align: right;
}


/***** ↓sp *************************/
/***** ↓sp *************************/
/***** ↓sp *************************/
/***** ↓sp *************************/
@media (max-width: 767px) {
	.ranking-tbl-top10 {

	}

	.ranking-order-top10-th {
		padding: 25px 15px 25px 5px;
		width: 65px;
		height: auto;
		font-size: 15px;
		text-align: right;
		line-height: 1;
		vertical-align: middle;
	}

	.ranking-order-top10-unit {
		font-size: 12px;
	}

	.ranking-company-top10-td {
		padding: 25px 15px;
		font-size: 17px;
	}

	.ranking-point-top10-td {
		padding: 25px 15px 25px 0;
		width: 70px;
	}
}
/***** ↑sp *************************/


.ranking-tbl-outer {
	align-items: flex-start;
	box-sizing: content-box;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	flex-flow: row wrap;
	-ms-flex-align: start;
	-ms-flex-flow: row wrap;
	-ms-flex-pack: justify;
	-webkit-box-align: start;
	-webkit-box-direction: normal;
	-webkit-box-orient: horizontal;
	-webkit-box-pack: justify;
	justify-content: space-between;
}

.ranking-tbl-outer-mgnt {
	margin-top: 50px;
}

.ranking-box-s {
	flex-basis: calc(50% - 25px);
	width: calc(50% - 25px);
}

.ranking-tbl {
	border-top: 1px solid #E3E3E3;
	border-collapse: collapse;
	flex-basis: calc(50% - 25px);
}

.ranking-tbl-bunrui {
	width: 100%;
}

.ranking-tbl-cpt {
	padding: 30px 0 50px;
}

.ranking-link-a {
	font-size: 19px;
}

.ranking-link-a:hover {
	text-decoration: underline;
}

.ranking-link-a.ranking-nolink-a {
	pointer-events: none;
	cursor: default;
}

.ranking-link-a.ranking-nolink-a:hover {
	text-decoration: none;
}

.ranking-tbl-sogo .ranking-link-a {
	color: #025092;
}

.ranking-tbl-ri .ranking-link-a {
	color: #27900D;
}

.ranking-tbl-bun .ranking-link-a {
	color: #119BA7;
}

.ranking-tbl-bunrui .ranking-link-a {
	color: #C3750C;
}

.ranking-link-a-s {
	font-size: 75%;
}

.ranking-order-th {
	padding: 30px 20px;
	border-bottom: 1px solid #E3E3E3;
	width: 90px;
}

.ranking-order-num {
	font-size: 25px;
}

.ranking-order-i {
	font-size: 15px;
}

.ranking-company-td {
	padding: 30px 20px 30px 0;
	border-bottom: 1px solid #E3E3E3;
	font-size: 20px;
}

.ranking-pt-td {
	padding: 30px 20px 30px 0;
	border-bottom: 1px solid #E3E3E3;
	width: 90px;
	color: #9B9B9B;
	font-size: 16px;
	text-align: right;
}


/***** ↓sp *************************/
/***** ↓sp *************************/
/***** ↓sp *************************/
/***** ↓sp *************************/
@media (max-width: 767px) {
	.ranking-tbl-outer {
		display: block;
	}

	.ranking-tbl-outer-mgnt {
		margin-top: 0;
	}


	.ranking-box-s {
		margin-top: 30px;
		width: auto;
	}


	.ranking-tbl {
		width: 100%;
	}

	.ranking-tbl-cpt {
		padding: 50px 0 30px;
	}

	.ranking-tbl:first-of-type .ranking-tbl-cpt {
		padding-top: 0;
	}

	.ranking-tbl-cpt img {
		margin: 0 auto;
		max-width: 350px;
	}

	.ranking-order-th {
		padding: 15px 15px 15px 10px;
		width: 70px;
	}

	.ranking-order-num {
		font-size: 14px;
	}

	.ranking-order-i {
		font-size: 12px;
	}

	.ranking-company-td {
		padding: 15px 15px 15px 0;
		font-size: 14px;
	}

	.ranking-link-a {
		font-size: 16px;
	}

	/*.ranking-pt {
		padding: 0;
		font-size: 12px;
		text-align: right;
	}*/

	.ranking-pt-td {
		padding: 10px 15px 10px 0;
		width: 70px;
		font-size: 12px;
		text-align: right;
	}
}
/***** ↑sp *************************/



/******************************************************************************
  afterword
 ******************************************************************************/
.ranking-afterword-body {
	padding: 0 10px;
}

.list-disc-ul {
	margin: 0 0 10px 1.5em;
}

.list-disc-ul-li {
	list-style-type: disc;
}

.ilb {
	display: inline-block;
}


/***** ↓sp *************************/
@media (max-width: 767px) {

}
/***** ↑sp *************************/



/****************************************/
/****************************************
 vote-btn
****************************************/
.vote-btn-box {
	padding: 75px 40px;
	text-align: center;
}

.vote-btn-box-last {
	padding-top: 20px;
}

.vote-btn {
	margin: 0 auto;
	padding: 28px 0;
	border-radius: 35px;
	display: inline-block;
	width: 440px;
	height: 70px;
	position: relative;
	color: #fff;
	font-size: 16px;
	background: #ed7d31;
	letter-spacing: -0.01em;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
}

.vote-btn .fa {
	margin-top: -10px;
	position: absolute;
	top: 50%;
	right: 25px;
	font-size: 20px;
}

.vote-btn-notice {
	margin: 25px auto 0;
	display: inline-block;
	text-align: left;
}

.list-kome-ul-li {
	padding-left: 1.5em;
	font-size: 14px;
	position: relative;
}

.list-kome-ul-li::before {
	content: '※';
	position: absolute;
	left: 0;
	top: 0;
}

.vote-btn-disabled {
	padding: 28px 0;
	display: inline-block;
	width: 440px;
	/*height: 70px;*/
	position: relative;
	color: #fff;
	font-size: 16px;
	background: #999;
	letter-spacing: -0.01em;
	line-height: 1.5;
	text-align: center;
	vertical-align: middle;
}


@media screen and (max-width: 767px) {
	.vote-btn-box {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.vote-btn-box-last {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.list-kome-ul-li {
		font-size: 12px;
	}

	.vote-btn {
		margin: 0 0 18px;
		padding: 20px 15px;
		border-radius: 28px;
		float: none;
		width: 100%;
		height: 56px;
		font-size: 14px;
	}

	.vote-btn .fa {
		margin-top: -8px;
		right: 15px;
		font-size: 15px;
	}

	.vote-btn-disabled {
		margin: 0 0 18px;
		padding: 20px 15px;
		width: 100%;
		/*height: 56px;*/
		font-size: 13px;
	}

	.vote-btn-notice {
		margin: 40px auto 0;
	}
}


/****************************************/
/****************************************
 note-box
****************************************/
.note-box {
	padding: 0 40px 80px;
/*	text-align: center;*/
}

.list-kome-ul.list-note {
	margin: 0 auto;
	display: table;
}


@media screen and (max-width: 767px) {
/*	.note-box {
		padding-top: 0;
		padding-bottom: 50px;
		text-align: left;
	}

	.list-kome-ul.list-note {
		display: block;
	}*/
}