@charset "utf-8";
/* CSS Document */
/* 全体のスタイル */
.swiper-pagination-bullet {
	width: 0.6em; /* 幅 */
	height: 0.6em; /* 高さ */
	background:#ccc; /* 色*/
	opacity: 0.2; /* 半透明（デフォルトでは0.2） */
	transform: scale(0.8);
}
/*--------------------------------------*/
/*通常スライダー*/
/*--------------------------------------*/

.slideBox.pt3 .swiper-container{
	padding-bottom: 1.5em;
	box-sizing: content-box;
} 

/* 現在のスライドのスタイル */
.swiper-pagination-bullet-active {
	background:var(--yellow);
	opacity: 1; /* 不透明 */
	transform: scale(1.2);
}
.slideBox.pt6 .swiper-slide {
	border:0;
}
.slideBox.pt6 .swiper-container{
	padding-bottom: 1.5em;/*動画二つ*/
	box-sizing: content-box;
} 

@media(min-width: 786px) {

.slideBox.pt6 .swiper-container{
	 padding: 0;
}
/*一つ----------------*/
.slideBox.pt6 .swiper-wrapper {

	 text-align: center;
	 width: 100%;
	
  }

 .slideBox.pt6 .swiper-slide {
	width:calc(50% - 1em);
	display:block;
	vertical-align:top;
	 margin: 0.5em auto;
	 max-width: 670px;
	
  }*
/*二つ----------------*/
/*.slideBox.pt6 .swiper-wrapper {
	display: grid;
	grid-template-columns:repeat(2, 1fr);
	column-gap: 1em;
	row-gap: 1em;
	 max-width: 1000px;
	 margin: 0 auto;
	
  }

 .slideBox.pt6 .swiper-slide {

  }*/

/*3つ----------------*/
/*.slideBox.pt6 .swiper-wrapper {
	display: grid;
	grid-template-columns:repeat(3, 1fr);
	column-gap: 1em;
	row-gap: 1em;
	 max-width: 1500px;
	 margin: 0 auto;
	
  }

 .slideBox.pt6 .swiper-slide {

  }*/
}

/*スクロールバー--------------------------------------------------------*/
div {
  scrollbar-color: var(--green) var(--black_a_0); /*firefox　つまみ　背景*/
}
div::-webkit-scrollbar { /*chrome : edge　幅*/
  width: 10px;
  height: 10px;
}
div::-webkit-scrollbar-track { /*chrome : edge　背景*/
  background:var(--black_a_0);
  border-radius: 50px;
}
div::-webkit-scrollbar-thumb { /*chrome : edge :つまみ*/
  background: var(--green);
  border-radius: 50px;
}
/*共通--------------------------------------------------------*/

.greenBg{
	background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.greenLine_a,.greenLine_b{
	position: relative;
}
.greenLine_a:before{
		content: "";
		height: 1px;
		width: 100%;
		left: 0;
		top: 0;
		background: var(--greenLine_a);
		position: absolute;
		display: block;
		z-index: 2;
}
.greenLine_a_bottom:after{
		content: "";
		height: 1px;
		width: 100%;
		left: 0;
		bottom: 0;
		background: var(--greenLine_a);
		position: absolute;
		display: block;
		z-index: 2;
}
.greenLine_b:before{
		content: "";
		height: 1px;
		width: 100%;
		left: 0;
		top: 0;
		background: var(--greenLine_b);
		position: absolute;
		display: block;
		z-index: 2;
}
.greenLine_b_bottom:after{
		content: "";
		height: 1px;
		width: 100%;
		left: 0;
		bottom: 0;
		background: var(--greenLine_b);
		position: absolute;
		display: block;
		z-index: 2;
}

.glassBg{
	position: relative;
	background-image: url("../img/bg_glass_top.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.glassBg:after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	top:0;
	bottom: 0;
	background-image: url("../img/bg_glass_bottom.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: -1;
}
/*二階層目--------------------------------------------------------*/
.second{
	background-image: url("../img/second/bg_top.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 150% auto;
	position: relative;
}
.second:after{
	content: "";
	position: absolute;
	display: block;
	left: 0;
	bottom: 0;
	width: 100%;
	background-image: url("../img/second/bg_bottom.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 150% auto;
	min-height: 100vh;
	/*z-index: -1;*/
}
.second .contentsBox{
	position:relative;
	z-index: 3;
}
.second h1{
	max-width: 890px;
	width: 45%;
	margin: 0 auto;
	padding: 1em 0;
	position: relative;
	z-index: 3;
}
/*サブナビ*/
#subNavi{
	border-top: var(--line) 1px solid;
	border-bottom: var(--line) 1px solid;
	display:flex;
	text-align: center;
	justify-content: center;
	position: sticky;
	top:calc(3.5em - 1px);
	z-index: 10;
	background:rgba(0,0,0,0.5);
	padding: 0.5em 0;
	margin-bottom: 1em;
	flex-wrap: wrap;
}
#subNavi a{
	width: calc(100% / 5 - 0.2em);
	display:inline-grid;
	margin: 0.1em 0.1em;
	/*color: #444;*/
	line-height: 1em;
	position: relative;
	/*text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;*/
	
	max-width: 15em;
	transition: text-shadow 200ms ease;
	background-color: #000;
	color: #fff;
	align-items: center;
	justify-content: center;

}
#subNavi.bt4 a{
	width: calc(100% / 3 - 0.2em);
}
#subNavi.bt4 a:nth-child(4),#subNavi.bt4 a:nth-child(5){
	width: calc(50% - 0.2em);
}

#subNavi a .box{
	position: relative;
	z-index: 2;
	font-weight: 600;
	padding: 1.5em 0.25em;
}
#subNavi a .small{
	font-size: max(0.8em,12px);
	line-height: 1em;
}
#subNavi a.selected{
	background-image:url("../img/second/navi_bg.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;
	color: #444;

}
/*#subNavi a.selected:before{
	content: "";
	width: 100%;
	position: absolute;
	display: block;
	left: 0;
	top:0;
	bottom: 0;
	background-image: url("../img/smp/navi_select_icon.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}*/
#subNavi a:not(.selected):hover { /* 各項目のスタイル（ホバー時） */

	text-shadow: 0 0 5px var(--green),0 0 5px var(--green),0 0 5px var(--green),0 0 5px var(--green);

}
#subNavi a.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.7);
	z-index: 3;
	top:0;

}
/*#subNavi a.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
}*/


/*---------------------------------
TOP
-----------------------------------*/
/*TOPエリア共通*/
#top h2{
	position: relative;
	margin-bottom: 1em;
	z-index: 3;
}
#top h2:before{
	content: "";
	position: absolute;
	display: block;
	width: 65%;
	height: 1px;
	right: 0;
	bottom: 30%;
	background-color: var(--green);
	z-index: -1;
}
#top h2:after{
	content: "";
	width: 20%;
	top:30%;
	bottom: -1em;
	right: 0;
	background-image: url("../img/top_h2_img.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	z-index: 2;
}
#top h2 img{
	width: 40%;
}
#top .bgArea{
	padding: 2em 0;
}
/*----------*/
.topArea{
	background-image: url("../img/smp/top_img.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
/*カウントダウンボイス*/
.countDownBt{
	max-width: 510px;
	margin: 0.5em auto;
		width: calc(100% - 1em);
	overflow: hidden;
		border-radius: 10px;
	position: relative;

}
.countDownBt .playBT{
	cursor: pointer;
	transition: opacity 200ms 0s ease;
}
.countDownBt .playBT:hover{
	opacity: 0.7;
}
.countDownBt .playBT:before{
	content: "";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	bottom: 0;
	width: 100%;
	background-image: url("../special/img/count/bt_on.png");
	background-repeat: no-repeat;
	background-size: cover;
}
.countDownBt .playBT.selected:before{

	background-image: url("../special/img/count/bt_off.png");
}

/*バナー*/
.bannerArea{
	padding: 1em 0;
	text-align: center;
}

.bannerArea a{
	
	width: calc(100% - 1em);
	border-radius: 10px;
	margin:0 0.5em;
	/*display: inline-block;*/
	display: block;
	vertical-align: top;
	overflow: hidden;
	transition: opacity 200ms 0s ease;
}
.bannerArea a:hover{
	opacity: 0.7;
}
#news{position: relative;}
#news .bgArea{
	position: relative;
	background-image: url("../img/news_bg_top.png");
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
#news .bgArea:after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	top:0;
	bottom: 0;
	background-image: url("../img/news_bg_bottom.png");
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 1;
}
#news .newsBox{
	height: 13.5em;
	overflow-y: auto;
	position: relative;
	z-index: 2;
	padding-right: 0.2em;
}
#news .newsBox dl{
	padding: 0 0.5em;
	background-image: url("../img/news_bg.jpg");
	background-position: center;
	background-repeat: repeat-y;
	background-size: 100% auto;
	position: relative;
	margin-bottom: 0.3em;
}
#news .newsBox dl:before{
	content: "";
	width: 50%;
	left: 0.5em;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	background-color: #181818;
}
#news .newsBox dl dt{
	padding: 1em;
	float: left;
	width: 6em;
	position: relative;
	z-index: 2;
}
#news .newsBox dl dd{
	padding: 1em;
	margin-left: 6em;
	position: relative;
	z-index: 2;
}
#news .newsBox a{
	color: var(--green);
}
#news .newsBox a:hover{
	color: var(--yellow);
}
/*topムービー*/
#topmovie{
	position:relative;
	display: block;
	width: 100%;
	/*transition:transform 0.6s 0.6s ease-out, opacity 0.5s 0.6s linear;
	opacity: 0;
	transform: translateY(2em);*/
	/*z-index: 50;*/

}
#topmovie.action{
/*	opacity: 1;
	transform: translateY(0);*/

}

.topmovie_box .movie .movieBox{
	position: relative;
	width: 100%;
	display:block;
	height: 25vh;
	overflow: hidden;
	background-image: url("../special/img/movie/pv_thum.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.movieThum{
	width: 100%;
	position: absolute;
	top:0;
	bottom:0;
	left:0;
}
.movieThum.mobile {
	display: block;
	position: relative;
	z-index: 2;
	
}
.topmovie_box a.icon1 {
  display: block;
  position: relative;
}
.topmovie_box .movie .movieBox.icon1:before,.movieBox.icon1:after{
	content: "";
	display: block;
	position: absolute;
	  left: 50%;
	  top:50%;
	 opacity: 0.5;
	 transition: all 0.2s 0s ease-out;
	 transform: scale(1.1);
	box-sizing: border-box;
	--borderColor:#fff;
	z-index: 3;
}
.topmovie_box .movie .movieBox.icon1:before{
	width: 5em;
	height:5em;
	margin-left: -2.5em;
	margin-top: -2.5em;
	border: var(--borderColor) 0.4em solid;
	border-radius: 50%;
	left: 50%;
	top:50%;
}
.topmovie_box .movie .movieBox.icon1:after{
	  content: "";
	  position: absolute;
	  border-top: 1em solid transparent;
	  border-bottom: 1em solid transparent;
	  border-left: 1.5em solid  var(--borderColor);
	  margin-top: -1em;
	  margin-left: -0.5em;
}
.topmovie_box .movie .movieBox.icon1:hover:before,.movieBox.icon1:hover:after{
	 transform: scale(1);
	 opacity: 1;
}
.topmovie_box .movie .movieWrap a .box{
	position: relative;
	display: block;
	height: 25vh;
}
.topmovie_box .txt{
		background: rgba(0,0,0,0.7);
	padding: 0.5em;
	text-align: center;
	position: absolute;
	bottom: 0.5em;
	width: 100%;
	display: block;

	color: #fff;
	
}
#top .movieArea {
	top:-1vh;
 /* top: -15vw;*/
}

.topSnsArea{
	padding: 1em 0;
}
.topSnsArea a{
	width: calc(50% - 0.5em);
	margin: 0.25em;
	display: inline-block;
	vertical-align: top;
	border-radius: 10px;
	overflow: hidden;
	transition: opacity 200ms 0s ease;
}
.topSnsArea a:hover{
	opacity: 0.7;
}
/*製品情報*/
#topProduct .bgArea{
	position: relative;
	background-image: url("../img/product_bg_top.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
#topProduct .bgArea:after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	top:0;
	bottom: 0;
	background-image: url("../img/product_bg_bottom.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	/*z-index: 1;*/
}

.productWrap{
	display:inline-block;
	position: relative;
	z-index: 3;
	width: 100%;
	
}
.productWrap .txtArea{
	position: relative;
	right:17%;
}
.productWrap .jacket{
	width: 30%;
	max-width: 300px;
	margin: 1em auto 0;
	z-index: 3;
	padding-top:3%;
	position: relative;
	right:-18%;
}
table.spec{
	border-spacing: 0.5em;
	padding: 1em 0;
	max-width:32em;
	margin: 0 auto;
}
table.spec th{
	width: 9em;
}
table.spec th,table.spec td{
	padding:0.2em 1em;
}
table.spec th{
	border-right: var(--green) 2px solid;
}

#top .scBox{
	position: relative;
	 transition: transform 0.5s 0s ease-out,opacity 0.5s 0s ease;
	opacity: 0;
	transform: translateY(1em);
}
#top .scBox.action{
	opacity: 1;
	transform: translateY(0);
}

/*---------------------------------
物語
-----------------------------------*/
#story_page{
	padding-bottom: 6em;
}
.storyBox{
	position: relative;
	display: grid;
	align-items: center;
	justify-content: center;
	text-align: center;
	width:calc(100% - 1em);
	padding:8em 4em;
	background: rgba(0,0,0,0.7);
	margin: 1em auto 2em;
}

.storyBox:before{
	content: "";
	width: 15vw;
	top:-1em;
	bottom: -1em;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 2;
	display: block;
	position: absolute;
	max-width: 238px;
	
}


.storyBox.ten:before{
	left: -1em;
	background-position: left top;
	background-image: url("../story/img/icon_ten.jpg");
}
.storyBox.kami{
	padding-bottom: 6em;
}
.storyBox.kami:before{
	right: -1em;
	background-position: right bottom;
	background-image: url("../story/img/icon_kami.jpg");
}
.storyBox.omake:before{
	content: "";
	width: 60%;
	top:0;
	bottom: 0;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 2;
	display: block;
	position: absolute;
	max-width: 480px;
	left: 0;
	background-position: left top;
	background-image: url("../story/img/h2_omake2.png");
}
.omakeWrap{
	position: relative;
}
.omakeWrap:before{
	content: "";
	width: 15vw;
	top:-1em;
	bottom: -1em;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 2;
	display: block;
	position: absolute;
	max-width: 238px;
	left: -0.5em;
	background-position: left top;
	background-image: url("../story/img/icon_omake.png");
}
.omakeWrap .new:after{
		content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0.5em;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/

}
.omakeWrap .new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;
	top:0;
	left:0.5em;
}

.storyBox:after{
	content: "";
	width: 60%;
	top:0;
	bottom: 0;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 2;
	display: block;
	position: absolute;
	max-width: 480px;
	
}
.storyBox.ten:after{
	right: 0;
	background-position: right bottom;
	background-image: url("../story/img/h2_ten.png");

}
.storyBox.kami:after{
	left: 0;
	background-position: left top;
	background-image: url("../story/img/h2_kami.png");
}
.storyBox.omake:after{
	right: 0;
	background-position: right bottom;
	background-image: url("../story/img/h2_omake.png");

}


.storyBox.ten{
	border-right: #ffedff 1px solid;
	border-bottom: #ffedff 1px solid;
}
.storyBox.kami{
	border-left: #ff6c6f 1px solid;
	border-top: #e4ffa7 1px solid;
}
.storyBox.omake{
	border-right: #43706e 1px solid;
	border-bottom: #02c3a3 1px solid;
}

.storyBox .txt{
	width: 80%;
	margin: 0 auto;
	
}


/*---------------------------------
登場人物
-----------------------------------*/
#chNavi{
	max-width: 1000px;
	padding-bottom: 5em;
}
#chNavi .mainChBox{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(3, 1fr);
}
#chNavi .subChBox{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(4, 1fr);
	padding-top: 2em;
}
#chNavi a{
	position: relative;
	display: block;
	transition: filter 200ms 0s ease-out;
}
#chNavi a:hover{
	filter: brightness(1.2);
}
#chNavi a.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;

}
#chNavi a.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}

@keyframes wave {
  0% {
    transform: scaleX(1) scaleY(1);
	  opacity: 0;

  }
50% {
    transform: scaleX(1.2) scaleY(1.2);
	  opacity: 0.6;

  }
  100% {
    transform: scaleX(1.2) scaleY(1.2);
	  opacity: 0;

  }

}

/*キャラ個別*/
.chArea{
	padding-bottom: 3em;
	z-index: 100;
	position: relative;
}
.chWrap{
	max-width: 1100px;
	width: 100%;
	
}
/*サンプルボイス*/
.sampleVoice{
	display: grid;
	align-items: center;
	justify-content: center;
	padding: 1em 3em;
}
.voiceBox{
	display: grid;
	grid-template-columns:repeat(4, 1fr);
	/*background-color: #000;*/
	position: relative;
}
.voiceBox.two{
	grid-template-columns:repeat(3, 1fr);
	width: 75%;
	margin: 0 auto;
}
.voiceBox .playBT{
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	cursor: pointer;
	filter: grayscale(1);
	transition: filter 200ms 0s ease-out;
	position: relative;
}
.voiceBox .playBT:hover{
	filter: grayscale(0.5);

}
.voiceBox .playBT.selected{
	filter: grayscale(0);
}
.voiceBox .playBT.kami{
	background-image: url("../chara/img/voice1.jpg");
}
.voiceBox .playBT.ten{
	background-image: url("../chara/img/voice2.jpg");
}
.voiceBox .playBT.normal{
	background-image: url("../chara/img/voice3.jpg");
}
.voiceBox .playBT.normal_ch9{
	background-image: url("../chara/img/voice3_ch9.jpg");
}

.voiceBox.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;
	top:0;
	left:0;

}

.voiceBox.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}
#ch9 .voiceBox.new:before,#ch9 .voiceBox.new:after{
	top:0;
	left:75%;
}
/*------------------*/
.chImg{
	
	margin-left: auto;
	position: absolute;
	padding-left: 10%;
	top:0;
	left: 0;
	right: 2.5em;
	transition: all 800ms 0s ease;
	opacity: 0;
	transform: translateX(-2em);
}
.action .chImg{
		opacity: 1;
	transform: translateX(0);
}
.stand_a{
	transition: all 400ms 0s ease;
	opacity: 0;
	transform: translateX(-3em);
	position: absolute;
	width: 100%;
	top:0;
	left:0;
	bottom:0;
	background-position: 5em top;
	background-size: auto 100%;
	background-repeat: no-repeat;
	z-index: 3;
}

.stand_a.showFlg{
	opacity: 1;
	transform: translateX(0);

}
#stand_ch0_0.stand_a{background-image: url("../chara/img/ch0_0.png");}
#stand_ch1_0.stand_a{background-image: url("../chara/img/ch1_0.png");}
#stand_ch2_0.stand_a{background-image: url("../chara/img/ch2_0.png");}
#stand_ch3_0.stand_a{background-image: url("../chara/img/ch3_0.png");}
#stand_ch4_0.stand_a{background-image: url("../chara/img/ch4_0.png");}
#stand_ch5_0.stand_a{background-image: url("../chara/img/ch5_0.png");}
#stand_ch6_0.stand_a{background-image: url("../chara/img/ch6_0.png");}
#stand_ch7_0.stand_a{background-image: url("../chara/img/ch7_0.png");}
#stand_ch8_0.stand_a{background-image: url("../chara/img/ch8_0.png");}
#stand_ch9_0.stand_a{background-image: url("../chara/img/ch9_0.png");}

#stand_ch10_0.stand_a{background-image: url("../chara/img/ch10_0.png");}
#stand_ch11_0.stand_a{background-image: url("../chara/img/ch11_0.png");}
#stand_ch12_0.stand_a{background-image: url("../chara/img/ch12_0.png");}
#stand_ch13_0.stand_a{background-image: url("../chara/img/ch13_0.png");}
#stand_ch14_0.stand_a{background-image: url("../chara/img/ch14_0.png");}
#stand_ch15_0.stand_a{background-image: url("../chara/img/ch15_0.png");}
#stand_ch16_0.stand_a{background-image: url("../chara/img/ch16_0.png");}
#stand_ch17_0.stand_a{background-image: url("../chara/img/ch17_0.png");}
#stand_ch18_0.stand_a{background-image: url("../chara/img/ch18_0.png");}
#stand_ch19_0.stand_a{background-image: url("../chara/img/ch19_0.png");}
#stand_ch20_0.stand_a{background-image: url("../chara/img/ch20_0.png");}
#stand_ch21_0.stand_a{background-image: url("../chara/img/ch21_0.png");}
#stand_ch22_0.stand_a{background-image: url("../chara/img/ch22_0.png");}
#stand_ch23_0.stand_a{background-image: url("../chara/img/ch23_0.png");}
#stand_ch24_0.stand_a{background-image: url("../chara/img/ch24_0.png");}


/*切り替え*/
#stand_ch1_1.stand_a{background-image: url("../chara/img/ch1_1.png");}
#stand_ch2_1.stand_a{background-image: url("../chara/img/ch2_1.png");}
#stand_ch3_1.stand_a{background-image: url("../chara/img/ch3_1.png");}
#stand_ch4_1.stand_a{background-image: url("../chara/img/ch4_1.png");}
#stand_ch5_1.stand_a{background-image: url("../chara/img/ch5_1.png");}
#stand_ch6_1.stand_a{background-image: url("../chara/img/ch6_1.png");}
#stand_ch7_1.stand_a{background-image: url("../chara/img/ch7_1.png");}
#stand_ch8_1.stand_a{background-image: url("../chara/img/ch8_1.png");}
#stand_ch9_1.stand_a{background-image: url("../chara/img/ch9_1.png");}

.chWord{
	display: block;
	width: 20%;
	margin-left: auto;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	margin-top: -2em;
}

#stand_ch0_0.stand_a .chWord{background-image: url("../chara/img/ch0_word.png");}
#stand_ch1_0.stand_a .chWord{background-image: url("../chara/img/ch1_word.png");}
#stand_ch2_0.stand_a .chWord{background-image: url("../chara/img/ch2_word.png");}
#stand_ch3_0.stand_a .chWord{background-image: url("../chara/img/ch3_word.png");}
#stand_ch4_0.stand_a .chWord{background-image: url("../chara/img/ch4_word.png");}
#stand_ch5_0.stand_a .chWord{background-image: url("../chara/img/ch5_word.png");}
#stand_ch6_0.stand_a .chWord{background-image: url("../chara/img/ch6_word.png");}
#stand_ch7_0.stand_a .chWord{background-image: url("../chara/img/ch7_word.png");}
#stand_ch8_0.stand_a .chWord{background-image: url("../chara/img/ch8_word.png");}
#stand_ch9_0.stand_a .chWord{background-image: url("../chara/img/ch9_word.png");}

#stand_ch10_0.stand_a .chWord{background-image: url("../chara/img/ch10_word.png");}
#stand_ch11_0.stand_a .chWord{background-image: url("../chara/img/ch11_word.png");}
#stand_ch12_0.stand_a .chWord{background-image: url("../chara/img/ch12_word.png");}
#stand_ch13_0.stand_a .chWord{background-image: url("../chara/img/ch13_word.png");}
#stand_ch14_0.stand_a .chWord{background-image: url("../chara/img/ch14_word.png");}
#stand_ch15_0.stand_a .chWord{background-image: url("../chara/img/ch15_word.png");}
#stand_ch16_0.stand_a .chWord{background-image: url("../chara/img/ch16_word.png");}
#stand_ch17_0.stand_a .chWord{background-image: url("../chara/img/ch17_word.png");}
#stand_ch18_0.stand_a .chWord{background-image: url("../chara/img/ch18_word.png");}
#stand_ch19_0.stand_a .chWord{background-image: url("../chara/img/ch19_word.png");}
#stand_ch20_0.stand_a .chWord{background-image: url("../chara/img/ch20_word.png");}
#stand_ch21_0.stand_a .chWord{background-image: url("../chara/img/ch21_word.png");}
#stand_ch22_0.stand_a .chWord{background-image: url("../chara/img/ch22_word.png");}
#stand_ch23_0.stand_a .chWord{background-image: url("../chara/img/ch23_word.png");}
#stand_ch24_0.stand_a .chWord{background-image: url("../chara/img/ch24_word.png");}


/*切り替えあり*/
#stand_ch1_1.stand_a .chWord{background-image: url("../chara/img/ch1_word_2.png");}
#stand_ch2_1.stand_a .chWord{background-image: url("../chara/img/ch2_word_2.png");}
#stand_ch3_1.stand_a .chWord{background-image: url("../chara/img/ch3_word_2.png");}
#stand_ch4_1.stand_a .chWord{background-image: url("../chara/img/ch4_word_2.png");}
#stand_ch5_1.stand_a .chWord{background-image: url("../chara/img/ch5_word_2.png");}
#stand_ch6_1.stand_a .chWord{background-image: url("../chara/img/ch6_word_2.png");}
#stand_ch7_1.stand_a .chWord{background-image: url("../chara/img/ch7_word_2.png");}
#stand_ch8_1.stand_a .chWord{background-image: url("../chara/img/ch8_word_2.png");}
#stand_ch9_1.stand_a .chWord{background-image: url("../chara/img/ch9_word_2.png");}

.chImg:before{
	content: "";
	width: 50%;
	bottom:35%;
	left: 3em;
	top:35%;
	display: block;
	position: absolute;
	background-position:left bottom;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: -1;
	opacity: 0;
	transition: all 400ms 0s ease-out;
}
.chImg:has(.showFlg):before{
	opacity: 1;
}
#bg_ch1_0.chImg:before,
#bg_ch2_0.chImg:before,
#bg_ch3_0.chImg:before,
#bg_ch4_0.chImg:before,
#bg_ch5_0.chImg:before,
#bg_ch6_0.chImg:before,
#bg_ch7_0.chImg:before,
#bg_ch8_0.chImg:before
{
		background-image: url("../chara/img/bg_ten.png");
}
#bg_ch1_1.chImg:before,
#bg_ch2_1.chImg:before,
#bg_ch3_1.chImg:before,
#bg_ch4_1.chImg:before,
#bg_ch5_1.chImg:before,
#bg_ch6_1.chImg:before,
#bg_ch7_1.chImg:before,
#bg_ch8_1.chImg:before,
#bg_ch9_0.chImg:before
{
		background-image: url("../chara/img/bg_kami.png");
}
.chArea .txtArea{
	width: 100%;
	position: relative;
	display: block;
	top:0;
	left: 0;
	z-index: 3;
	padding-top: 100%;
}
.chArea .txtArea .chTxt{
	padding: 1em;
	width: 100%;
	display: grid;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,0.9);
}
.cosBox{
	width: 30%;
	position: absolute;
	top:72vw;
	left: 3em;
	background-image: url("../chara/img/switch_bt_midashi.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto 2em;
	padding-top: 2em;
	z-index: 10;
		
		
}
.cosBox.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;
	top:2em;
	left:50%;

}

.cosBox.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:2em;
	left:50%;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}

.cosBt{
	width: 50%;
	background-color: #ccc;
	cursor: pointer;
	display: inline-block;
	filter: grayscale(1) brightness(30%);
	opacity: 0.7;
	position: relative;
	transition: all 200ms 0s ease-out;

	
}
.cosBt:hover{
		filter: grayscale(0.5) brightness(50%);

}
.cosBt.non{
	pointer-events: none;
}
.cosBt.selected{
	background-color: #666;
	color: #fff;
	filter: grayscale(0) brightness(100%);
	opacity: 1;
	pointer-events: none;
}

.chName{
	width: 45%;
	position: absolute;
	top:0;
	left: 1em;
}
.chStoryArea{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(1, 1fr);
	max-width: 1100px;
	margin: 0 auto;

}
.chStoryArea .chStoryBox{
	background-color: #000;
	padding: 6em 1em 3em;
	display: grid;
	justify-content: center;
	align-items: center;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 50% auto;
	border: #656565 1px solid;
}
.chStoryArea .chStoryBox.ten{
	background-image: url("../chara/img/story_ten.png");
}
.chStoryArea .chStoryBox.kami{
	background-image: url("../chara/img/story_kami.png");
}

/*一覧に戻る*/
.backPageBt{
	background-color: #000;
	text-align: center;
	padding: 1em;
	color: #fff;
	font-weight: 600;
	font-size: 1.2em;	
	display: block;
	z-index: 100;
	transition: all 200ms  ease;
	margin: 1em auto 0;
	max-width: 500px;

}
.backPageBt:hover{
	opacity: 0.6;
}
.backPageBt span{
	position: relative;
}
.backPageBt span:after{
	content: "";
	width: 1.5em;
	height: 1em;
	display: inline-block;
	position: relative;
	background-image: url("../chara/img/back_icon.png");
	background-position: center;
	background-repeat: no-repeat;
	
	background-size: contain;
}
/*前へ次へ*/
.arrowBt{
	width: 2.5em;
	height: 6em;
	position: absolute;

	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	top:95vw;
	margin-top: -3em;
	z-index: 8;
}
.arrowBt:hover{
	opacity: 0.6;
}
.arrowBt.prev{
		left: 0;
	background-position: left center;
		background-image: url("../chara/img/arrow_prev.png");
}
.arrowBt.next{
	right: 0;
	background-image: url("../chara/img/arrow_next.png");
	background-position: right center;

}
/*ch9限定*/
.ch9Txt_0{
	display: block;
}
.ch9Txt_1{
	display: none;
}
#ch9 .chStoryArea{

	display: none;

}
#ch9 .chStoryArea.showFlg{
	display: block;
}

/*---------------------------------
ギャラリー
-----------------------------------*/
/*CG*/
.cgThumArea{
	padding: 1em 1em 5em;
	min-height: 50vh;
	text-align: center;
}
.cgThumArea .thumBox{
	width:25%!important;
	margin: 0.5em;
	display: inline-block;
	vertical-align: top;
	position: relative;
	outline: none;
}
.cgThumArea .thumBox.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;

}
.cgThumArea .thumBox.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}

.cgThumArea .thumBox a{
	display: block;
	position: relative;
	overflow: hidden;
}
.cgThumArea a span{
	display: block;
	position: relative;
}
.cgThumArea a span:after{
	content: "";
	top:0;
	left: 0;
	bottom: 0;
	width: 0;
	background-color: var(--green);
	transition: all 0.2s 0s ease-out;
	position: absolute;
	display: block;
	opacity: 0.5;
}
.cgThumArea a span:hover:after{
	width: 100%;
}

.cgThumArea a.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;

}
.cgThumArea a.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}

/*---------------------------------
システム
-----------------------------------*/
#system .contentsBox{
	padding-bottom: 5em;
}
.sysWrap{
	background: rgba(0,0,0,0.7);
	padding: 1em;
	position: relative;
	margin-bottom: 2em;

}
.sysWrap:before{
	content: "";
	width: 100%;
	position: absolute;
	left: 0;
	top:0;
	bottom: 0;
	background-image: url("../img/news_bg_top.png");
	transform: scale(-1,1);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.sysWrap h2{
	position: relative;
	width: 75%;
	z-index: 3;
	max-width: 700px;
}
.sysBox {
	position: relative;
	z-index: 3;
}
.sysBox h3,.sysBox .txtBg{
	font-size: 1.5em;
	text-align: center;
	padding:0.7em;
	background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-size: cover;
	position: relative;
	font-weight: bold;
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
	margin-top: 2px;
}
.sysBox .txtBg{
	font-size: 1em;
	padding: 0.5em;
	letter-spacing: 2px;
}
.sysBox h3:before,.sysBox .txtBg:before{
	content: "";
	width: 30%;
	max-width: 250px;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	left: 0;
	background-image:url("../sound/img/song_bg_left.png");
	background-size: cover;
}
.sysBox h3:after,.sysBox .txtBg:after{
	content: "";
	width: 30%;
	max-width: 250px;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	right: 0;
	background-image:url("../sound/img/song_bg_right.png");
	background-size: cover;
	background-position: right bottom;
}
.sysBox .gridBox{
		padding: 1em 0 0;
}
.sysBox .txt{
	padding: 0.5em 0 0;
}
/*---------------------------------
サウンド
-----------------------------------*/
.songBox{
	background-color: #000;
	position: relative;
	background-image: url("../sound/img/song_bg_left.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 50% auto;
	margin-bottom: 1em;
	text-align: center;
	padding: 2em;
	border: var(--green) 1px solid;
}
.songBox:after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	top:0;
	right: 0;
	bottom: 0;
	background-image: url("../sound/img/song_bg_right.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 50% auto;
	z-index: 1;
}
.songBox .songTitle{
	color: var(--green);
	font-size: 1.3em;
	padding: 0.5em 0;
}
.artistWrap{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(2, 1fr);padding-bottom: 5em;
}
.artistWrap .artistBox{
	border: var(--green) 1px solid;
	padding: 1em;
	text-align: center;
	background-color: #000;
	background-image: url("../sound/img/artist_bg.jpg");
	background-position: center top;
	background-size: cover;
	background-repeat: no-repeat;
}
.artistWrap .artistName{
	font-size: 1em;
	padding-top: 0.8em;
}
.cdBox{
	position: relative;
	padding:0 0 4em;
}
.cdBgImg{
	width: 30%;
	
	background-image: url("../sound/img/cd_ch.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center top;
	z-index: 5;
	position: absolute;
	right: 0em;
	bottom:2em;
	transition: all 800ms 0s ease-out;
	opacity: 0;
	transform: translateX(-2em);
}

.action .cdBgImg{
	opacity: 1;
	transform: translateX(0);

}
.cdTxtAre{
	position:relative;
	width: 100%;
	display: grid;
	align-items: center;
	
	
}
.cdTxt{
	padding:2em 1em;
	background: rgba(0,0,0,0.7);
	z-index: 3;
	padding-right: calc(30% + 1em);
	position: relative;
}
.cdTxt:before{
	content: "";
	width: 100%;
	position: absolute;
	display: block;
	right: 0;
	bottom: 0;
	top:0;
	background-image: url("../img/product_bg_bottom.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;
}
.cdTxt hr{
	border: 0;
	border-bottom: #333 1px solid;
	margin: 2em 0 1em;
}
.cdTxt a{
	color: #fff;
	padding: 0.5em 0 0.5em 1.5em;
	display: inline-block;
	z-index: 5;
	position: relative;
	/*border-spacing: 2px;*/
	border-radius: 3px;
	/*border: var(--yellow) 1px solid;*/
}
.cdTxt a span{
	text-indent: -0.5em;
	padding: 0 0.5em;
}
.cdTxt a span:not(.br2){
	border-bottom: #fff 1px dashed;
	border-spacing: 2px;
	display: block;
}
.cdTxt a span:not(.br2):hover{
	color: var(--yellow);
	border-bottom: var(--yellow) 1px dashed;

}
.cdTxt a:before{
	content: "";
	display: block;
	position: absolute;
	width: 0.9em;
	height: 0.9em;
	margin-top: -0.6em;
	border: var(--yellow) 0.2em solid;
	border-radius: 50%;
	left: 0;
	top:50%;
	/*top:0.05em;*/
	background-color: #000;
}
.cdTxt a:after{
	content: "";
	position: absolute;
	width: 0.3em;
	height: 0.3em;
	margin-top: -0.2em;
  border-top: 0.2em solid var(--yellow);
border-right: 0.2em solid var(--yellow);
transform: rotate(45deg);
  left: 0.35em;
 /*top:1.1em;*/
	top:50%;
	
}
/*---------------------------------
スペシャル
-----------------------------------*/
.movieThumArea{
	padding: 1em;
	display: block;
	/*display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(2, 1fr);*/
	min-height: 70vh;
	text-align: center;
}
.movieThumArea .movieThumBox{
	width: calc(calc(100% / 1) - 1em);
	margin: 1em 0.5em;
	max-width: 700px;
	border: #000 0.3em solid;
	background-color: #000;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
/*.movieThumArea .txt{
	text-align: center;
	color: #fff;
	padding: 0.5em;
	font-weight: bold;
}
*/
.movieThumArea .movieThumBox.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;

}
.movieThumArea .movieThumBox.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}
.movieThumArea .txt{
	font-size: 1em;
	text-align: center;
	padding:0.5em;
	background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-size: cover;
	position: relative;
	font-weight: bold;
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
	margin-top: 0.3em;
}
.movieThumArea .txt:before{
	content: "";
	width: 30%;
	max-width: 250px;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	left: 0;
	background-image:url("../sound/img/song_bg_left.png");
	background-size: cover;
}
.movieThumArea .txt:after{
	content: "";
	width: 30%;
	max-width: 250px;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	right: 0;
	background-image:url("../sound/img/song_bg_right.png");
	background-size: cover;
	background-position: right bottom;
}

.movieThumArea .txt span{
	position: relative;
}

.movieThumArea a.icon1 {
  display: block;
  position: relative;
}
.movieThumArea .icon1:before,.movieThumArea .icon1:after{
	content: "";
	display: block;
	position: absolute;
	  left: 50%;
	  top:50%;
	 opacity: 0.5;
	 transition: all 0.2s 0s ease-out;
	 transform: scale(1.1);
	box-sizing: border-box;
	--borderColor:#fff;
	z-index: 3;
}
.movieThumArea .icon1:before{
	width: 5em;
	height:5em;
	margin-left: -2.5em;
	margin-top: -2.5em;
	border: var(--borderColor) 0.4em solid;
	border-radius: 50%;
	left: 50%;
	top:50%;
}
.movieThumArea .icon1:after{
	  content: "";
	  position: absolute;
	  border-top: 1em solid transparent;
	  border-bottom: 1em solid transparent;
	  border-left: 1.5em solid  var(--borderColor);
	  margin-top: -1em;
	  margin-left: -0.5em;
}
.movieThumArea .icon1:hover:before,.movieThumArea .icon1:hover:after{
	 transform: scale(1);
	 opacity: 1;
}
.movieThumArea .txt.new span:before {
	 content: "";
	 position: absolute;
	 display: block;
	 bottom:0;
	top:0;
	 left: -1.5em;
	width: 1.5em;
	height: 1.5em;
	background-image: url("../img/new_icon.png");
	background-size: contain;
	background-repeat: no-repeat;
 }
/*キャストコメント*/

#special .contentsBox{
	padding-bottom: 5em;
}

.commentWrap .new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;

}
.commentWrap .new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}

.commentWrap{
	background: rgba(0,0,0,0.7);
	padding: 0;
	position: relative;
	margin-bottom: 2em;

}
.commentWrap:before{
	content: "";
	width: 100%;
	position: absolute;
	left: 0;
	top:0;
	bottom: 0;
	background-image: url("../img/news_bg_top.png");
	transform: scale(-1,1);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.commentWrap h2{
	position: relative;
	z-index: 3;
	padding: 1em;
	width: 100%;
}
.commentWrap h2:before{
	content: "";
	width: 100%;
	display: block;
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	background-image: url("../img/news_bg_bottom.png");
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: contain;
	transform: scale(-1,1);
}
.commentWrap h2 img{
		width: 80%;
	max-width: 700px;
	display: block;
	position: relative;
	z-index: 4;

}
.qBox {
	position: relative;
	z-index: 3;
	margin-bottom: 0.5em;
	padding:0 1em 1em;
}
.qBox h3{
	font-size: 1em;
	padding:0.7em 1em 0.5em;
	/*background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-size: cover;*/
		background: rgba(0,0,0,0.5);
	color: var(--green);
	border-bottom: var(--green) 1px solid;
	position: relative;
	/*font-weight: bold;*/
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
	margin-top: 2px;
}
.aTxt{
	padding: 0.7em 1em;
	background: rgba(0,0,0,0.5);
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
}
/*SNSアイコン*/
.sp-sns-iconWrap{
	text-align: center;
}
.sp-sns-iconWrap a{
	display: inline-block;
	width: calc(calc(100% / 3) - 1em);
	margin: 0.5em;
	overflow: hidden;
	border-radius: 50%;
	position: relative;
}

.sp-sns-iconWrap a:after{
	content: "";
	top:0;
	left: 0;
	bottom: 0;
	width: 0;
	background-color: var(--green);
	transition: all 0.2s 0s ease-out;
	position: absolute;
	display: block;
	opacity: 0.5;
}
.sp-sns-iconWrap a:hover:after{
	width: 100%;
}
.ssBtWrap a{
	width: calc(calc(100% / 2) - 1em);
	margin: 0.5em;
	display: inline-block;
	vertical-align: top;
	position: relative;
}
.ssBtWrap a span{
	display: block;
	position: relative;
}
.ssBtWrap a span:after{
	content: "";
	top:0;
	left: 0;
	bottom: 0;
	width: 0;
	background-color: var(--green);
	transition: all 0.2s 0s ease-out;
	position: absolute;
	display: block;
	opacity: 0.5;
}
.ssBtWrap a span:hover:after{
	width: 100%;
}
.ssBtWrap a.new:before{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: var(--pink);
	display: block;
	position: absolute;
	transform: scale(0.8);
	z-index: 3;

}
.ssBtWrap a.new:after{
	content: "";
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #f991f7;
	/*border: var(--pink) 1px solid;*/
	position: absolute;
	top:0;
	left:0;
	display: block;
    animation: 1s easeInOut 0s infinite normal forwards running;
	 animation-name: wave;
	/*filter: brightness(110);*/
}
/*カウントダウンバックナンバー*/
.backWrap{
		text-align: center;
		padding: 2em 0;
		display: grid;
		column-gap: 1em;
		row-gap: 1em;
			grid-template-columns:repeat(1, 1fr);

	}
.backBox{
	background-color: #000;
	border: var(--green) 1px solid;
	background-image: url("../special/img/count/bg.jpg");
	padding: 0;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 1em;

}
.backBox.wide{
	background-size: 100% auto;
}
.backBox:not(.wide) .playBT{
width: 100%;
	letter-spacing: 0.2em;
	display:block;
	padding: 1em;
	background-color:#000;
	border: var(--green) 2px solid;
	color: #fff;
	margin: 0.5em auto 0;
	cursor: pointer;
	border-radius: 6px;
	text-align: center;
}
.backBox:not(.wide) .playBT:hover,.backBox:not(.wide) .playBT.selected{
	background-color:  var(--green);

}
.backBox img{
	max-width: 500px;
}
.backBox .txt{
	text-align: left;
	text-indent: -1em;
	padding: 0.7em 0.5em 0;
	font-size: max(0.9em,13px);
}
.countBtBox{
	width: calc(calc(100% / 3) - 1em);
	display: inline-block;
	vertical-align: top;
	cursor: pointer;
	position: relative;
	margin: 0.5em;
	transition: opacity 200ms 0s ease;
}

.countBtBox:hover{
	opacity: 0.7;
}
.countBtBox:before{
	content: "";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	bottom: 0;
	width: 100%;
	background-image: url("../special/img/count/ch_bt_on.png");
	background-repeat: no-repeat;
	background-size: cover;
}
.countBtBox.selected:before{

	background-image: url("../special/img/count/ch_bt_off.png");
}
.txtBacknum{
		display: grid;
		column-gap: 1em;
		row-gap: 1em;
		grid-template-columns:20% 1fr;
	align-items: center;
	padding: 1em;
	border: #666 1px solid;
	border-radius: 6px;
	margin-top: 0.5em;
	background: rgba(0,0,0,0.7);
}
.formKiyaku{
	font-size: 1em;
	padding:0.7em;
	background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-size: cover;
	position: relative;
	font-weight: bold;
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
	margin-top: 2px;
}
.formKiyakuBox dt{
	color: var(--green);
	border-bottom: var(--green) 1px solid;
}
.formKiyakuBox dd{
	padding:0.5em;
}
/*---------------------------------
製品情報
-----------------------------------*/
#product_info .contentsBox{
	width: 100%;
	padding-bottom: 3em;
}
#product_info .blackBg{
	background: rgba(0,0,0,0.7);
	padding:3em 2em 2em;
	position: relative;

}
#product_info .blackBg:before{
	content: "";
	width: 100%;
	position: absolute;
	display: block;
	right: 0;
	bottom: 0;
	top:0;
	background-image: url("../img/product_bg_bottom.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;
}

.bonusBox{
	padding: 1.5em 0;
	margin-top: 3em;
	position: relative;
	z-index: 5;

}
.bonusBox h2{
	font-size: 1.5em;
	text-align: center;
	padding:0.7em;
	background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-size: cover;
	position: relative;
	font-weight: bold;
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
	
}
.bonusBox h2:before{
	content: "";
	width: 30%;
	max-width: 250px;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	left: 0;
	background-image:url("../sound/img/song_bg_left.png");
	background-size: cover;
}
.bonusBox h2:after{
	content: "";
	width: 30%;
	max-width: 250px;
	top:0;
	bottom: 0;
	display: block;
	position: absolute;
	right: 0;
	background-image:url("../sound/img/song_bg_right.png");
	background-size: cover;
	background-position: right bottom;
}
.bonusBox hr{
	
	border: 0;
	margin: 1em;
	border-bottom: var(--green) 1px solid;
	position: relative;
	z-index: 5;
}
.bonusBox ul.notes{
	padding:0 1em;
	position: relative;
	z-index: 5;
}
.bonusTxt{
	padding:0 ;
		position: relative;
	z-index: 5;
}
.bonusTxt strong{
	text-align: center;
	padding: 1em;
	position: relative;
	display: block;
	border-top: var(--green) 1px solid;
	border-bottom: var(--green) 2px solid;
	background-color: #111;
	
}
#shop .shopWrap{

	margin: 0 auto;
	/*padding: 1em 0;*/
	background-color: #000;
	padding: 2%;
	margin-top: -10%;

}
#shop .shopWrap h3{/*店舗名*/
	width: 80%;
	margin: 0 auto;
	margin-bottom:5%;
	padding:0.5em;
	/*font-weight: bold;*/
	font-size: 1.3em;
	text-align: center;
	/*background-color: #ececec;*/
	background:linear-gradient(90deg,#111,#8ad007 ,#111);
	font-weight: bold;
	color: #111;
	/*border-left: var(--green) 0.5em solid;
	border-right: var(--green) 0.5em solid;*/

}
.shopList{
	width: 48%;
	display: inline-block;
	border: var(--green) 1px solid;
	margin: 0.5%;
	padding: 1%;
}
.shopList2{
	width: 97.5%;
	display: inline-block;
	border: var(--green) 1px solid;
	margin:2% auto;
	padding: 3%;
	text-align: left;
}

.shopName{
	font-size: 130%;
	text-align: center;
	letter-spacing: 0.1em;
	line-height: 2em;
	background-color:var(--green);
	margin-bottom: 20px;
	padding:0 15px;
	font-weight: bold;
	color:#000;
}

.bonusImg img{
	width: 100%;
	margin-bottom: 30px;
}

.set
	padding:20px;
	margin: 15px auto;
	background-image: url(../img/tex2_2.png);
	background-repeat: repeat-x;
	background-position: center top;
}

.set strong{
	color: #038;
	font-size: 130%;
}
.set p{
	display: inline-block;
}
.set span{
	display: inline-block;
	width: 250px;
	font-size:max(1vw,22px);
	vertical-align: bottom;
	margin-left: 2%;
}	
.set img{
	width: 40%;
}
.setTitle{
	font-size: 120%;
	margin-bottom: 15px;
	color: #FFF;
	font-weight: bold;
}

.set dt {
	border-bottom: var(--green) 1px solid;
	margin-bottom: 3%;
	padding-bottom: 2%;
}

.shopLink{
	width: 50%;
	border-radius: 10px;
	margin: 0em 4% ;
		padding: 10px 0;
	/*background:linear-gradient(90deg,#ececec,#83f9f8 ,#ececec);*/
	background-color: var(--yellow);
	border: var(--yellow) 1px solid;
	padding:1em ;
		color:#111;
	text-align: center;
	display: block;position: relative;
	
	font-weight: 600;
}


.shopLink:hover{
	opacity: 0.6;
}


/*---------------------------------------------------------
@media
------------------------------------------------------------*/
/*----------------------------------------------------------------
メディアクエリ
-----------------------------------------------------------------*/
@media (min-width: 500px) {
.storyBox{

	padding:8em 8em;
}
}
@media (min-width: 787px) {


/*---------------------------------
登場人物
-----------------------------------*/

	
#chNavi .mainChBox{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(4, 1fr);
}
#chNavi .subChBox{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(5, 1fr);
	padding-top: 2em;
}

.bannerArea a{
	/*width: calc(50% - 1em);*/

}
	.backWrap{

	grid-template-columns:repeat(2, 1fr);

	}
	.backBox.wide{
		grid-column: span 2;
	}
.countBtBox{
	width: calc(calc(100% / 5) - 1em);
}
.txtBacknum{
		grid-template-columns:15% 1fr;
}

}

@media screen and (max-width: 760px) {
.shopList{
	width: 100%;
	display: block;
	margin: 2% auto;
}
.set img{
	width: 30%;
}	
.set dl{
	margin-left: 2%;
}	
}

@media (min-width: 530px) {

	.cdBox{
	position: relative;
	padding: 2em 0;
}
.cdBgImg{
	width: 30%;
	margin-left: auto;
	z-index: 5;
	position: relative;
}
.cdTxtAre{
	position: absolute;
	top:0;
	left: 0;
	bottom:0;
	width: 100%;
	display: grid;
	align-items: center;
	
	
}
.cgThumArea .thumBox{
	width: calc(calc(100% / 4) - 1em);
}
/*SNSアイコン*/
.sp-sns-iconWrap a{
	width: calc(calc(100% / 5) - 1em);
}
	
	
	

}
/*PC*/
@media (min-width: 1025px) {
	.glassBg{
		background-size: 50% auto;
	}
	.glassBg:after{
		background-size: 50% auto;
	}
	
/*二階層目--------------------------------------------------------*/
	.second{
		background-size: 100% auto;
		min-height: 100vh;

	}
	.second h1{
		width: 35%;
	}
	.second:after{
			background-size: 100% auto;
	}

	/*TOP---------------------------------*/
	#top h2:before{
		width: 75%;
	}
	#top h2 img{
		width: 30%;
	}
	.bannerArea a{
		/*width: calc(33.3% - 1em);*/

	}
	.topArea{
	background-image: url("../img/pc/top_img.jpg");
	}
		
	#news .bgArea,#topProduct .bgArea{

		background-size: 50% auto;
	}
	#news .bgArea:after,#topProduct .bgArea:after{

		background-size: 50% auto;

	}
	.productWrap{
		display: grid;
		position: relative;
		grid-template-columns:50% 50%;
	}
	.productWrap .jacket{
		width: 100%;
		margin: 0;
	}
	.topmovie_box .movie .movieBox{
		height: 25vw;
	}
	#top .movieArea {
	  top: -15vw;
	}
	.topmovie_box .movie .movieWrap a .box{
		height: 25vw;
	}
	
	/*---------------------------------
	物語
	-----------------------------------*/

	.storyBox{

		margin: 1em auto 3em;
	}
	/*---------------------------------
	物語
	-----------------------------------*/

	#chNavi{
		grid-template-columns:repeat(5, 1fr);
	}
	/*---------------------------------
	登場人物
	-----------------------------------*/

	
	/*キャラ個別*/
	.chImg{
		width: 70%;
		margin-left: auto;
		position: relative;

		padding: 0;
	}
	.chImg:before{
		width: 50%;
		bottom: 0;
		left: 0;
		top:50%;

	}
	.chWrap{
		width: calc(100% - 6em);

	}
/*サンプルボイス*/
.sampleVoice{
	padding: 1em;
}

	.chArea .txtArea{
		width: 45%;
		max-width:662px;
		padding: 0;
		position: absolute;
	}
	.chName{
		width: 100%;
		position: relative;
	}
	.cosBox{
		width: 20%;
		top:auto;
		bottom: 2em;
		left: 0;
	}
	.chArea .txtArea .chTxt{
		background: rgba(0,0,0,0);
	}
	.chStoryArea{
		grid-template-columns:repeat(2, 1fr);
	}
		.chStoryArea.wide{
		grid-template-columns:repeat(1, 1fr);
	}

	.stand_a{
		background-position: right top;
	}
	.chStoryArea.wide .chStoryBox{
		background-size: 30% auto;
	}
/*前へ次へ*/
.arrowBt{
	top:30vw;
	position: fixed;
}
	/*---------------------------------
	システム
	-----------------------------------*/
	.sysBox .img,.sysBox .txt{
		width: calc(50% - 0.5em);
		margin: 1em 0.5em 0;
		display: inline-block;
		vertical-align: top;
	}
	.sysBox .img{
		margin-left: 0;
	}
	.sysBox .txt{
		margin-right: 0;
	}
	/*---------------------------------
	ギャラリー
	-----------------------------------*/

	.cgThumArea .thumBox{
		width: calc(calc(100% / 6) - 1em);
	}
	/*---------------------------------
	サウンド
	-----------------------------------*/
	.songBox{
		padding: 3em 2em;
	}
	.artistWrap .artistName{
		font-size: 1.2em;
	}
	.cdTxtAre{
		bottom:30% ;
	}
	.cdTxt{
		padding:5em 2em;
		padding-right: 30%;
	}
/*---------------------------------
スペシャル
-----------------------------------*/
.movieThumArea .movieThumBox{
	width: calc(calc(50% / 1) - 1em);
}
.commentWrap h2 img{
		width: 75%;
}
.ssBtWrap a{
	width: calc(calc(100% / 4) - 1em);
	margin: 0.5em;
	display: inline-block;
	vertical-align: top;
}
	.backWrap{

	grid-template-columns:repeat(3, 1fr);

	}
	.backBox.wide{
		grid-column: span 3;
	}


}
/*小さいスマホ*/
@media (max-width: 390px) {
.cdTxt{
	padding:2em 0.5em;
	padding-right: 30%;
}

}
