@charset "UTF-8";
/*
   ランキングについて
*/

/* ---- ボックスモデル ---- */
.cp_menu * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* ---- ラッパー ---- */
.cp_menu {
	width: 1000px;     /* PC：横幅1000px */
	max-width: 100%;   /* SP：画面に収まらない場合は100%に縮小 */
	margin: 0 auto 30px;
}

/* ---- チェックボックス本体（非表示） ---- */
.acd-check {
	display: none;
}

/* ---- ラベル（クリック領域） ---- */
.acd-label {
	background: #609e06;
	color: #fff;
	display: block;
	margin-bottom: 1px;
	padding: 14px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	position: relative;
	cursor: pointer;
}

/* ---- 開閉するコンテンツ（初期状態：閉） ---- */
.rank_outline_box {
	width: 100% !important;   /* 親(.cp_menu)に追従：PC=1000px / SP=100% */
	height: 0 !important;
	opacity: 0;
	transition: .5s;
	visibility: hidden;
}

/* settle_style 配下での内側パディング
   ※ このアコーディオンが .settle_style の中にある場合のみ効きます */
.settle_style .rank_outline_box {
	height: 140px;
}
.settle_style .rank_outline_inner {
	padding: 10px 0 0 10px;
}

/* ---- 開いた状態（checkbox:checked） ---- */
.acd-check:checked + .acd-label + .rank_outline_box {
	height: 140px !important;
	opacity: 1;
	visibility: visible;
}

/* ---- ＋／− アイコン（ラベル内の span） ---- */
.acd-label span {
	position: absolute;
	width: 30px;
	height: 30px;
	right: 20px;
	top: 50%;
	margin-top: -15px;
	background: #fff;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
}
.acd-label span::before,
.acd-label span::after {
	content: "";
	position: absolute;
	background: #609e06;
}
.acd-label span::before { /* 横棒 */
	width: 14px;
	height: 2px;
	top: 14px;
	left: 8px;
}
.acd-label span::after {  /* 縦棒 */
	width: 2px;
	height: 14px;
	top: 8px;
	left: 14px;
}

/* JS で .active を付与する実装用（任意・現状なくても動作） */
.acd-label.active span::after {
	display: none;
}

/* 開いたとき縦棒を消して「＋」→「−」に */
.acd-check:checked + .acd-label span::after {
	display: none;
}