@charset"utf-8";
@media screen and (min-width:14000px) {
}
@media screen and (min-width:800px) and (max-width:1399px) {
}
@media screen and (max-width:799px) {
}
ul {
  list-style: none;
}
header #top {
	background-color: rgba(255,255,255,1.00);
}
/*
================================================================================================================
 背景
================================================================================================================
*/
.top_bg01, .top_bg01::before {
	background-image:url("../img/bg/bg05.jpg");
	background-position:center top;
	background-size: 1920px;
	background-repeat: no-repeat;
	background-color: rgba(152,19,27,0.00);
	background-attachment: fixed; 
}

 @media screen and (max-width:799px) {
.top_bg01, .top_bg01::before {
	background-image:url("../img/bg/bg05_sp.jpg");
	background-position:center top;
	background-size:100%;
	background-repeat:no-repeat;
	background-color: rgba(152,19,27,0.00);
	background-attachment: fixed; 
	/*height:100vw !important;*/
}
}

/*
================================================================================================================
光の上昇
================================================================================================================
*/
.snowfall {
width:100%;
height:100vw;
	display: block;
	position: fixed;
	top: 0px;
	left: 0;
	right: 0;
	bottom:0px;
width:100%;
height:100%;
    background-color:transparent;
    background-image: url('../img/bg/frash01.png'),
        url('../img/bg/frash02.png'),
        url('../img/bg/frash03.png');
    -webkit-animation: snow 20s linear infinite;
    animation: snow 20s linear infinite;
	z-index:10;
}
@media screen and (max-width:799px){.snowfall {display: none;}}

@-webkit-keyframes snow {
    0% {background-position: 0 0, 0 0, 0 0;}
    100% {background-position: 0 -500px, 0 -300px, 0 -400px; }
}
@keyframes snow {
    0% {background-position: 0 0, 0 0, 0 0; opacity: 1.0;}
    100% {background-position: 0 -500px, 0 -300px, 0 -400px;}
}
/*
================================================================================================================
光の上昇
================================================================================================================
*/
.snowfall {
top:0;
	padding-top: 50px;
	bottom: 0;
width:100%;
height:100%;
    background-color:transparent;
    background-image: url('../img/bg/frash01.png'),
        url('../img/bg/frash02.png'),
        url('../img/bg/frash03.png');
    -webkit-animation: snow 20s linear infinite;
    animation: snow 20s linear infinite;
	z-index:10;
}
@media screen and (max-width:799px){.snowfall {padding-top:0px;}}

@-webkit-keyframes snow {
    0% {background-position: 0 0, 0 0, 0 0;}
    100% {background-position: 0 -500px, 0 -300px, 0 -400px; }
}
@keyframes snow {
    0% {background-position: 0 0, 0 0, 0 0; opacity: 1.0;}
    100% {background-position: 0 -500px, 0 -300px, 0 -400px;}
}

/*
================================================================================================================
 コンテンツエリア
================================================================================================================
*/
.container {
	position: relative;
	width:100%;
	/*height:100%;*/
	top:0px;
	margin:0px 0 0 0;
	padding:0px 0 0% 0;
	background-color: rgba(213,253,253,1.00);
	z-index: 100 !important;
}
.content {
	position:relative;
	width:100%;
	max-width:1400px;
	/*height:calc(100% - 80px);*/
	top:0;
	bottom:0;
	padding:0 0 0 0;
	border-radius:0px;
	margin:0px auto;
	background-color: rgba(0,20,60,0.0);
}
@media screen and (max-width:979px) {
.container {
	position: relative;
	width:100%;
	/*height:100%;*/
	top:0px;
	margin:0px 0 0 0;
	padding:0px 0 0% 0;
	background-color: rgba(213,253,253,1.00);
}
.content {
	position:relative;
	width:98%;
	/*height:calc(100% - 80px);*/
	padding:0;
	top:0;
	bottom:0;
	padding:0;
	border-radius:0px;
	margin:0px auto;
	background-color: rgba(0,20,60,0.0);
}
}
@media screen and (max-width:639px) {
.container {
	position: relative;
	width:100%;
	/*height:100%;*/
	top:0px;
	margin:0px 0 0 0;
	padding:0px 0 0% 0;
	background-color: rgba(213,253,253,1.00);
}
.content {
	position:relative;
	width:96%;
	min-width:320px;
	/*height:calc(100% - 80px);*/
	padding:0;
	top:0;
	bottom:0;
	padding:0;
	border-radius:0px;
	margin:0px auto;
	background-color: rgba(0,20,60,0.0);
}
}
/*
================================================================================================================
 TITLE
================================================================================================================
*/
.title_area {
	position: relative;
	width:100%;
	height:440px;
	top:40px;
	margin:0 0 2% 0;
	padding:0;
	background-color: rgba(0,20,60,0.8);
	background:url("../img/chara_list/charalist_title01.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 920px;
}
@media screen and (max-width:1400px) {
.title_area {
	position: relative;
	width:100%;
	height:440px;
	top:40px;
	margin:0 0 0 0;
	padding:0;
	background-color: rgba(0,20,60,0.8);
	background:url("../img/chara_list/charalist_title01.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 780px;
}
}

@media screen and (max-width:980px) {
.title_area {
	position: relative;
	width:96%;
	height:45vw;
	top:40px;
	margin:0 0 0 0;
	padding:0;
	background-color: rgba(0,20,60,0.8);
	background:url("../img/chara_list/charalist_title01.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 90%;
}
}
@media screen and (max-width:799px) {
.title_area {
	position: relative;
	width:100%;
	height:50vw;
	top:40px;
	margin:0 0 0 0;
	padding:0;
	background-color: rgba(0,20,60,0.8);
	background:url("../img/chara_list/charalist_title01.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 90%;
}
}


/*
================================================================================================================
 投票完了ポップアップ
================================================================================================================
*/
.popup_wrap input {
  display: none;
}

.popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.2s;
  transform: scale(0);
}

.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}

.popup_content {
  position: relative;
  align-self: center;
  width: 60%;
	height: 8vw;
  max-width: 400px;
	max-height: 120px;
  min-width: 300px;
	min-height: 90px;
  padding: 0;
	border-radius: 12px;
  box-sizing: border-box;
  /*background: #fff;*/
  line-height: 1.4em;
  transition: 0.2s;
	text-align: center;
	background-image: url("../img/popular/popular_chara/btn_close.jpg");
	background-size: cover;
	background-repeat: repeat;
	background-position: center center;
}

.close_btn {
  position: absolute;
  top: 0px;
  right: 0px;
	padding: 2px;
  font-size: 30px;
	text-align: left;
  cursor: pointer;
}

.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.2s;
}

.open_btn {
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
   /*display: flex;
  justify-content: center;
  align-items: center;
 width: 200px;
  height: 30px;
  margin:10px auto;
  padding: 8px 16px;
  color: #fff;
  background:#0c0d62;
  font-weight: bold;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
  border-radius: 3px;*/
  cursor: pointer;
  transition: .3s ease;

}
.open_btn:hover{
    background:#000;
    color:#fff;
    transition: .2s ease;
}


/*
================================================================================================================
 キャラ名鑑
================================================================================================================
*/

#wrapper01 {
	max-width: 1400px;
	margin: 40px auto 0 auto;
	color: #7d7d7d;
	padding-bottom: 20px;
}

h1 {
	margin: 50px 0 70px;
}
.controls{
  text-align: center;
}
.controls li{
	display:inline-block;
}
ul.controls li{
	font-size:100%;
	padding:0.8em 0.8em;
	background:#745D76;
	border:0;
	color:#fff;
	border-radius:4px;
	cursor:pointer;
}
@media screen and (min-width:801px){ul.controls li{font-size: 20px; font-weight: bold; margin:0 5px 5px;}}
@media screen and (min-width:601px) and (max-width:800px){ul.controls li{font-size: 2.6vw; font-weight: bold; margin:0 0.2vw 5px;}}
@media screen and (max-width:600px){ul.controls li{font-size: 2.4vw; font-weight: bold; margin:0 0.2vw 5px;}}
ul.controls li.active.col_00{
	background: #EB52A3;
}
ul.controls li.active.col_01{
	background: #3353E9;
}
ul.controls li.active.col_02{
	background: #2B9B15;
}
ul.controls li.active.col_03{
	background: #E3911C;
}
ul.controls li.active.col_04{
	background: #12A39C;
}
ul.controls li.active.col_05{
	background: #BC0000;
}
ul.controls li.active.col_06{
	background: #A627C9;
}
ul.controls li.active.col_07{
	background: #C94A26;
}
ul.controls li:focus{
	outline: 0 none;
}
ul.controls li + label{
	margin-left: 1em;
}
.alpha {
    display:inline-block;
    zoom: 1;
    line-height: 1;
}

.alpha:hover {
    opacity: 1.0;
    filter: alpha(opacity=100);
	background-color: #A17CA4;
}
.active {
	background-color: #A17CA4;
}

#btn {
	overflow: hidden;
	margin-bottom: 30px;
}

#btn li {
	/*float: left;*/
	margin: 0px;
	cursor: pointer;
}

#animationList {
	overflow: hidden;
	padding: 0 ;
}

@media screen and (min-width:901px){
	#animationList li {
	padding: 0px 15px 30px 15px;
	color: #fff;
}
}
@media screen and (max-width:900px){
	#animationList li {
	padding: 0px 10px 20px 10px;
	color: #fff;
}
}
#animationList li img{
	width: 100%;
}

#animationList li label, #animationList li a{
	display:table;
	width:calc(100% - 2px);
	height: auto;
	min-height:60px;
	padding: 0px 0 0 10px;
	margin-top: 5px;
	border: solid 1px rgba(253,214,255,1.00) ;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
background: #feffff; /* Old browsers */
background: -moz-linear-gradient(top,  #feffff 13%, #f3e6f7 56%, #f0d7f2 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #feffff 13%,#f3e6f7 56%,#f0d7f2 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #feffff 13%,#f3e6f7 56%,#f0d7f2 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#feffff', endColorstr='#f0d7f2',GradientType=0 ); /* IE6-9 */
}
#animationList li label:hover, #animationList li a:hover {
background: #f0d7f2; /* Old browsers */
background: -moz-linear-gradient(top,  #f0d7f2 0%, #ff82ee 0%, #fde0ff 65%, #fdf7ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #f0d7f2 0%,#ff82ee 0%,#fde0ff 65%,#fdf7ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #f0d7f2 0%,#ff82ee 0%,#fde0ff 65%,#fdf7ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0d7f2', endColorstr='#fdf7ff',GradientType=0 ); /* IE6-9 */
}

@media screen and (min-width:801px){#animationList li p {display:table-cell;
  vertical-align:middle; width:calc(100% - 0px); color: rgba(116,58,7,1.00); font-size:16px; line-height: 18px; font-weight: bold; padding: 4px 0;}}
@media screen and (max-width:800px){#animationList li p {display:table-cell;
  vertical-align:middle; width:calc(100% - 0px);  color: rgba(116,58,7,1.00); font-size:18px; line-height: 20px; font-weight: bold; padding: 3px 0;}}
	
@media screen and (min-width:1401px){#animationList li{height: 120px;display: inline-block; width: calc(100% / 4 - 32px)!important;}}
@media screen and (max-width:1400px){#animationList li{height: 120px;display: inline-block; width: calc(100% / 3 - 32px)!important;}}
@media screen and (max-width:1000px){#animationList li{height: 120px;display: inline-block; width: calc(100% / 2 - 32px)!important;}}
@media screen and (max-width:600px){#animationList li{height:120px;display: inline-block; width: calc(100% / 1 - 32px)!important;}}

#animationList li .bg_icon img{
	width: 100%;
}

@media screen and (min-width:1401px){#animationList li .bg_icon {width:calc(120px - 0px); margin-left: 0%; float: right;}}
@media screen and (min-width:1001px) and (max-width:1400px){#animationList li .bg_icon {width:calc(120px - 0px); margin-left: 0%; float: right;}}
@media screen and (min-width:601px) and (max-width:1000px){#animationList li .bg_icon {width:calc(120px - 0px); margin-left: 0%; float: right;}}
@media screen and (max-width:600px){#animationList li .bg_icon {width:calc(120px - 0px); margin-left: 0%; float: right;}}

.red {
	background-color: #cf0000;
}

.blue {
	background-color: #0208da;
}

.green {
	background-color: #2baa08;
}

.yellow {
	background-color: #e8ec04;
}