@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);
}

/*
================================================================================================================
 NEW
================================================================================================================
*/
.new_L, .new_R {width:18%; z-index: 900;}
.new_L {
	position: absolute;
	float: left;
	margin: -5% 0 0 -2%;
	background-image:url("../img/common/icon_new_l.png");
	background-position:center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.new_R {
	position: absolute;
	float: right;
	margin: -5% 0 0 82%;
	background-image:url("../img/common/icon_new_r.png");
	background-position:center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/*
================================================================================================================
 背景
================================================================================================================
*/
.top_bg01, .top_bg01::before {
	background-image:url("../img/bg/bg07.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/bg07_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(0,0,0,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 40px 0;
	border-radius:0px;
	margin:0px auto 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(0,0,0,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(0,0,0,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:500px;
	top:0px;
	margin:0 0 2% 0;
	padding:0;
	background-color: rgba(0,20,60,0.0);
	
	background-image:url("../img/collabo/collabo_comic_title.png"), url("../img/bg/bg03_01.png");
	background-position: center top 30px, center bottom;
	background-size: 800px, 1400px;
	background-repeat:no-repeat, repeat-x;
}
@media screen and (max-width:1400px) {
.title_area {
	position: relative;
	width:100%;
	height:500px;
	top:0px;
	margin:0 0 0 0;
	padding:0;
	background-color: rgba(0,20,60,0.0);
	
	background-image:url("../img/collabo/collabo_comic_title.png"), url("../img/bg/bg03_01.png");
	background-position: center top 30px, center bottom;
	background-size: 800px, 1400px;
	background-repeat:no-repeat, repeat-x;
}
}

@media screen and (max-width:980px) {
.title_area {
	position: relative;
	width:100%;
	height:500px;
	top:0px;
	margin:0 0 0 0;
	padding:0;
	background-color: rgba(0,20,60,0.0);
	
	background-image:url("../img/collabo/collabo_comic_title.png"), url("../img/bg/bg03_01.png");
	background-position: center top 30px, center top;
	background-size: 720px, 100%;
	background-repeat:no-repeat, repeat-x;
}
}
@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.0);
	
	background-image:url("../img/collabo/collabo_comic_title.png"), url("../img/bg/bg03_01.png");
	background-position: center top 30px, center top;
	background-size: 76%, 100%;
	background-repeat:no-repeat, repeat-x;
}
}
/*
================================================================================================================
 仕様説明
================================================================================================================
*/
.notice{
display:block;
width:90%;
	max-width: 840px;
font-weight:bold;
letter-spacing:1px;
margin:50px auto 0px auto;
padding: 2px;
border-radius: 8px;
background-color: rgba(255,255,255,0.8);
z-index:4;}
.notice .text01{text-align:center; font-size:18px; line-height:24px; padding:10px 20px 5px 20px; font-weight:bold; color:#F69;}
.notice .text02{text-align:left; font-size:14px; line-height:18px; padding:5px 20px 10px 20px; color:#F69;}

@media screen and (max-width:800px){
.notice{margin:25px auto 0px auto;}
.notice .text01{text-align:center; font-size:2.6vw; line-height:3.8vw; padding:0.4vw 2vw 0.2vw 2vw; font-weight:bold; color:#F69;}
.notice .text02{text-align:left; font-size:1.2vw; line-height:2.4vw; padding:0.2vw 2vw 0.4vw 2vw; color:#F69;}
}

/*
================================================================================================================
 投票完了ポップアップ
================================================================================================================
*/
.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: 980px;
	margin: 20px auto 0px 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: 18px; font-weight: bold; margin:0 5px 5px;}}
@media screen and (max-width:800px){ul.controls li{font-size: 2.8vw; 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: #A627C9;
}
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: 10px 15px 30px 15px;
	color: #fff;
}
}
@media screen and (max-width:900px){
	#animationList li {
	padding: 20px 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 0px;
	margin-top: 5px;
	background-color:rgba(255,255,255,1.00) ;
	border: solid 1px rgba(253,214,255,1.00) ;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
}
#animationList li label:hover, #animationList li a:hover {background-color:rgba(247,179,249,1.00) ;}

@media screen and (min-width:801px){#animationList li p {
  vertical-align:middle; text-align: center; width:calc(100% - 0px); margin: auto; color: rgba(255,255,255,1.00); font-size:18px; line-height: 20px; font-weight: bold; padding: 4px 0;}}
@media screen and (max-width:800px){#animationList li p {
  vertical-align:middle; text-align: center; width:calc(100% - 0px); margin: auto; color: rgba(255,255,255,1.00); font-size:16px; line-height: 18px; font-weight: bold; padding: 3px 0;}}
#animationList li p {	
  text-shadow    : 
       1px  1px 1px #003366,
      -1px  1px 1px #003366,
       1px -1px 1px #003366,
      -1px -1px 1px #003366,
       1px  0px 1px #003366,
       0px  1px 1px #003366,
      -1px  0px 1px #003366,
       0px -1px 1px #003366;
}
@media screen and (min-width:1201px){#animationList li{height: 220px;display: inline-block; width: calc(100% / 3 - 32px)!important;}}
@media screen and (max-width:1200px){#animationList li{height: 24vw;display: inline-block; width: calc(100% / 3 - 32px)!important;}}
@media screen and (max-width:900px){#animationList li{height: 35vw;display: inline-block; width: calc(100% / 2 - 32px)!important;}}
@media screen and (max-width:600px){#animationList li{height:64vw;display: inline-block; width: calc(100% / 1 - 32px)!important;}}

#animationList li .bg_icon img{
	width: 100%;
	opacity: 1.0;
}
#animationList li .bg_icon img:hover{
	opacity: 0.6;
}
#animationList li.soon .bg_icon img:hover{
	opacity: 1.0;
}

@media screen and (min-width:1201px){#animationList li .bg_icon {width:calc(100% - 0px); margin-left: 0%; float: right;}}
@media screen and (min-width:901px) and (max-width:1200px){#animationList li .bg_icon {width:calc(100% - 0px); margin-left: 0%; float: right;}}
@media screen and (min-width:601px) and (max-width:900px){#animationList li .bg_icon {width:calc(100% - 0px); margin-left: 0%; float: right;}}
@media screen and (max-width:600px){#animationList li .bg_icon {width:calc(100% - 0px); margin-left: 0%; float: right;}}

.red {
	background-color: #cf0000;
}

.blue {
	background-color: #0208da;
}

.green {
	background-color: #2baa08;
}

.yellow {
	background-color: #e8ec04;
}