@charset "UTF-8";

/********************************************************************
	追加
********************************************************************/
/*margin-bottom　外側の下方向にスペースを空けたい時に使用*/
.m_mb15{margin-bottom: -15px!important;}
.m_mb30{margin-bottom: -30px!important;}
.m_mb45{margin-bottom: -45px!important;}
.m_mb70{margin-bottom: -70px!important;}
.mb5{margin-bottom: 5px!important;}
.mb10{margin-bottom: 10px!important;}
.mb15{margin-bottom: 15px!important;}
.mb20{margin-bottom: 20px!important;}
.mb25{margin-bottom: 25px!important;}
.mb30{margin-bottom: 30px!important;}
.mb35{margin-bottom: 35px!important;}
.mb40{margin-bottom: 40px!important;}
.mb45{margin-bottom: 45px!important;}
.mb50{margin-bottom: 50px!important;}
.mb60{margin-bottom: 60px!important;}
.mb65{margin-bottom: 60px!important;}
.mb70{margin-bottom: 70px!important;}
.mb80{margin-bottom: 80px!important;}
.mb90{margin-bottom: 80px!important;}
.mb100{margin-bottom: 100px!important;}
.mb110{margin-bottom: 110px!important;}
.mb120{margin-bottom: 120px!important;}
.mb130{margin-bottom: 130px!important;}
.mb150{margin-bottom: 150px!important;}
.mb180{margin-bottom: 180px!important;}
.mb200{margin-bottom: 200px!important;}

/*margin-top 　外側の上方向にスペースを空けたい時に使用*/
.mt20{margin-top: 20px!important;}
.mt25{margin-top: 25px!important;}
.mt35{margin-top: 35px!important;}
.mt50{margin-top: 50px!important;}
.mt80{margin-top: 80px!important;}

/*margin-right 　外側の右方向にスペースを空けたい時に使用*/
.mr10{margin-right: 10px!important;}
.mr15{margin-right: 15px!important;}

/*margin-left 　外側の右方向にスペースを空けたい時に使用*/
.ml10{margin-left: 10px!important;}
.ml15{margin-left: 15px!important;}
.ml80{margin-left: 80px!important;}

/*padding-top　内側の上方向にスペースを空けたい時に使用*/
.pt10{padding-top: 10px!important;}
.pt20{padding-top: 20px!important;}
.pt30{padding-top: 30px!important;}

/*padding-bottom　内側の下方向にスペースを空けたい時に使用*/
.pb20{padding-bottom: 20px!important;}
.pb30{padding-bottom: 30px!important;}

/*margin マイナス*/
.mb-minus10{margin-bottom: -10px!important;}
.mb-minus15{margin-bottom: -15px!important;}
.mb-minus20{margin-bottom: -20px!important;}
.mb-minus25{margin-bottom: -25px!important;}
.mb-minus30{margin-bottom: -30px!important;}
.mb-minus35{margin-bottom: -35px!important;}
.mb-minus40{margin-bottom: -40px!important;}

/*横幅のサイズ指定*/
.width8{width: 8%!important;}
.width10{width: 10%!important;}
.width15{width: 15%!important;}
.width16{width: 16%!important;}
.width17{width: 17%!important;}
.width18{width: 18%!important;}
.width19{width: 19%!important;}
.width20{width: 20%!important;}
.width21{width: 21%!important;}
.width22{width: 22%!important;}
.width23{width: 23%!important;}
.width24{width: 24%!important;}
.width25{width: 25%!important;}
.width26{width: 26%!important;}
.width27{width: 27%!important;}
.width28{width: 28%!important;}
.width29{width: 29%!important;}
.width30{width: 30%!important;}
.width31{width: 31%!important;}
.width32{width: 32%!important;}
.width33{width: 33%!important;}
.width34{width: 34%!important;}
.width35{width: 35%!important;}
.width36{width: 36%!important;}
.width37{width: 37%!important;}
.width38{width: 38%!important;}
.width39{width: 39%!important;}
.width40{width: 40%!important;}
.width41{width: 41%!important;}
.width42{width: 42%!important;}
.width43{width: 43%!important;}
.width44{width: 44%!important;}
.width45{width: 45%!important;}
.width46{width: 46%!important;}
.width47{width: 47%!important;}
.width48{width: 48%!important;}
.width49{width: 49%!important;}
.width50{width: 50%!important;}
.width51{width: 51%!important;}
.width52{width: 52%!important;}
.width53{width: 53%!important;}
.width54{width: 54%!important;}
.width55{width: 55%!important;}
.width56{width: 56%!important;}
.width57{width: 57%!important;}
.width58{width: 58%!important;}
.width59{width: 59%!important;}
.width60{width: 60%!important;}

.width65{width: 65%!important;}
.width70{width: 70%!important;}
.width80{width: 80%!important;}
.width81{width: 81%!important;}
.width82{width: 82%!important;}
.width83{width: 83%!important;}
.width84{width: 84%!important;}
.width85{width: 85%!important;}
.width88{width: 88%!important;}
.width90{width: 90%!important;}
.width100{width: 100%!important;}

/*text　テキストの揃え方指定　親要素に入れること*/
.text-left{text-align: left!important;}/*左揃え*/
.text-right{text-align: right!important;}/*右揃え*/
.text-center{text-align: center!important;}/*中央ぞろえ*/

/*img　画像の揃え方　クラス名のみ親要素に入れること(margin_○○ img　←imgは不要)*/
.margin-right img{margin: 0 0 0 auto!important;}
.margin-left img{margin: auto 0 0 0!important;}

/*possition　基準となる位置を決める　親要素に入れること*/
.position-relative{position: relative;}/*従来の位置*/
.position-absolute{position: absolute;}/*親の左上が基準*/

/*flex　横並びに使用　親要素に入れる 子要素はwidthで横幅を決めておくこと*/
.flex{display: flex;}

/*flex使用時のコンテンツの配置　flexと同じく親要素に入れること*/
.justify-sb{justify-content: space-between;}/*左右にわける*/
.justify-sa{justify-content: space-around;}/* 各アイテムを均等に配置し各アイテムの両側に半分の大きさの間隔を置く */
.justify-left{justify-content: left;}/*左配置*/
.justify-flex-end{justify-content: flex-end;}/*要素の終わり*/
.justify-se{justify-content: space-evenly;}/* 各アイテムを均等に配置し各アイテムの周りに同じ大きさの間隔を置く */
.justify-center{justify-content: center;}/*真ん中*/

.items-center{align-items: center;}/*子要素を上下中央で揃える*/
.flex-wrap{flex-wrap: wrap;}/*コンテンツを折り返す*/
.flex-end{align-items: flex-end;}/*下揃え*/
.row-reverse{flex-direction: row-reverse;}/*順番入れ替え*/

.flex-shrink{flex-shrink: 0;}/*要素を折り返しさせない*/
.flex-grow{flex-grow:1;}/*高さを揃える※親要素にflex-direction:columnを入れること*/
.flex-direction{flex-direction:column;}/*上から下に垂直方向に並べる*/
.margin-top-auto{margin-top: auto;}/*親要素にflexとflex-direction:column;で下揃え*/

/*aos用*/
.overflow-hidden{overflow: hidden;}

/********************************************************************
	共通
********************************************************************/
html {
  scroll-behavior: smooth; /* スムーススクロール */
}

/*line-heightリセット*/
#bbbbbvampire p,#bbbbbvampire a,#bbbbbvampire ul li,#bbbbbvampire h1,#bbbbbvampire h2,#bbbbbvampire h3,#bbbbbvampire h4,#bbbbbvampire h5,#bbbbbvampire h6,#bbbbbvampire h7{
	line-height: 1;
}

/*buttonリセット*/
#bbbbbvampire button{padding: 0; background: none; border: none;}

/*ページ全体の指定*/
#bbbbbvampire{
	margin: 0 auto;/*中央揃え*/
	max-width: 770px;/*最大横幅*/
	background: transparent;/*背景色*/
	text-align: center;/*テキスト中央揃え*/
	position: relative;
}

/*ページの内側共通*/
#bbbbbvampire .wrap{
	margin: 0 auto;/*中央揃え*/
	padding: 30px 0 140px 0;/*要素の上下余白*/
	max-width: 730px;/*最大横幅*/
	box-sizing: border-box;
}

#bbbbbvampire .wrap-after{
	margin: 0 auto;/*中央揃え*/
	padding: 30px 0 50px 0;/*要素の上下余白*/
	max-width: 730px;/*最大横幅*/
	box-sizing: border-box;
}

/*ページ内の文章指定*/
#bbbbbvampire p{
    text-align: center;/*中央揃え*/
    color: #261515;/*文字色*/
    font-size: 1.3rem;/*フォントサイズ*/
	letter-spacing:  0em;/*文字間*/
	line-height: 2.4rem;/*行間*/
}

#bbbbbvampire img{
	max-width: 100%;
	height: auto;
	margin: 0 auto;
    display: block;
}

#bbbbbvampire .img_width100 img{width: 100%;}
#bbbbbvampire .img_auto img{width: auto!important;}

/*色*/
#bbbbbvampire .orange{color: #f19007!important;}
#bbbbbvampire .red{color: #f60e39!important;}
#bbbbbvampire .wine-red{color: #c93b66!important;}
#bbbbbvampire .blue{color: #0fc3c8!important;}
#bbbbbvampire .light-blue{color: #0fc3c8!important;}
#bbbbbvampire .green{color: #00a1be!important;}
#bbbbbvampire .pink{color: #ee008c!important;}
#bbbbbvampire .white{color: #fff!important;}
#bbbbbvampire .black{color: #00000a!important;}

/*太字*/
#bbbbbvampire .bold{font-weight: bold;}

/*リスト*/
#bbbbbvampire ul{
	list-style: none;
}
#bbbbbvampire ul li{
	color: #24281f;
	text-align: center;/*中央揃え*/
    font-size: 1.8rem;/*フォントサイズ*/
	letter-spacing:  0em;/*文字間*/
	line-height: 2.8rem;/*行間*/
}

/********************************************************************
	追従ボタン
********************************************************************/
#bbbbbvampire .float {
	width: 770px;
	margin: 0 auto;
}

#bbbbbvampire .floating {
	position: fixed;
	left: auto;
	bottom: 0;
	display: none;
	z-index: 300;
}

#bbbbbvampire .floating a {
	display: block;
	padding: 8px;
	text-decoration: none;
}

#bbbbbvampire.floating a:hover {
	opacity: 1;
}

 /********************************************************************
	アニメーション
********************************************************************/
/*じわっと表示*/
#bbbbbvampire .blur{
  animation-name:blurAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}
 
.blurTrigger{
    opacity: 0;
}

/*ぽよん*/
.fade-in-image {
	opacity: 0;
	transform: scale(0);
	transition: all 2s ease;
}

@keyframes bounce {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.25);
    opacity: 1;
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}

.fade-in-image.show {
	opacity: 1;
	transform: scale(1);
	animation: bounce 0.8s ease forwards;
}

/*ぽよん2*/
.fade-in-image02 {
	opacity: 0;
	transform: scale(0);
	transition: all 2s ease;
}

@keyframes bounce02 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.25);
    opacity: 1;
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}

.fade-in-image02.show02 {
	opacity: 1;
	transform: scale(1);
	animation: bounce02 0.8s ease forwards;
}

/*ぽよん3*/
.fade-in-image03 {
	opacity: 0;
	transform: scale(0);
	transition: all 2s ease;
}

@keyframes bounce03 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.25);
    opacity: 1;
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}

.fade-in-image03.show03 {
	opacity: 1;
	transform: scale(1);
	animation: bounce02 0.8s ease forwards;
}
 /********************************************************************
	リンク
********************************************************************/
#bbbbbvampire a{
	color: #1e1e1e;
}

#bbbbbvampire a:hover{text-decoration: none;}

/********************************************************************
	共通
********************************************************************/
#bbbbbvampire .bg01{
	background: url(/auto/images/fix/title/250307_bbbbbvampire/pcc/bg-tile.png) left -17px top 0 repeat;
}

#bbbbbvampire .bg-box{
	padding: 30px 40px 30px 40px;
	width: 100%;
	background: #fff;
	box-sizing: border-box;
}

#bbbbbvampire .story-wrap{
	margin: 0 auto;
	width: 730px;
}

/********************************************************************
	top
********************************************************************/
#bbbbbvampire .can-time{
	margin: 0 auto;
	padding: 3px 3px 3px 3px;
	width: 95%;
	background: #fff;
	border-radius: 20px;
	font-size: 1.6rem;
}

#bbbbbvampire h3{
    font-size: 2.5rem;
    line-height: 1.5;
}

#bbbbbvampire #anime-info p{
	font-size: 2.4rem;
	line-height: 4rem;
}

/*youtube*/
#bbbbbvampire .youtube-ratio{
	margin: 0 auto;
	padding-top: 56.25%;
	width: 90%;
	position: relative;
}

#bbbbbvampire .youtube-ratio iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/********************************************************************
	story-sec01
********************************************************************/
#bbbbbvampire .bg-sec01{
	padding: 40px 0 0 0;
	background: url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec01/bg-sec01.png) no-repeat;
}

#bbbbbvampire .bg-sec01 .sentence02{position: relative; left: 10px; top: 30px;}
#bbbbbvampire .bg-sec01 .koma03-sentence03{position: relative; bottom: -135px;}
#bbbbbvampire .bg-sec01 .sentence01{position: absolute; right: 0; bottom: -100px; z-index: 100;}
#bbbbbvampire .bg-sec01 .koma03{position: absolute; bottom: -40px; z-index: 90;}
#bbbbbvampire .bg-sec01 .sentence03{position: absolute; bottom: 0; z-index: 100;}

/********************************************************************
	story-sec02
********************************************************************/
#bbbbbvampire .bg-sec02{
	background: url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec02/bg.png) no-repeat, url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec02/bg02.png) bottom no-repeat;
}

#bbbbbvampire .bg-sec02 .story-wrap{padding: 100px 0 30px 0;}

#bbbbbvampire .bg-sec02 .koma02{margin-bottom: -18px; position: relative; top: -18px; z-index: 20;}
#bbbbbvampire .bg-sec02 .sentence02-koma03{margin-bottom: -10px; position: relative; z-index: 10;}
#bbbbbvampire .bg-sec02 .koma03{margin-bottom: -55px; position: relative; top: -55px;}
#bbbbbvampire .bg-sec02 .koma04-koma05{margin-bottom: 170px;}
#bbbbbvampire .bg-sec02 .koma05{position: absolute; bottom: -170px; left: 40px; z-index: 20;}
#bbbbbvampire .bg-sec02 .sentence03{position: relative; top: 20px;}
#bbbbbvampire .bg-sec02 .sentence03-02{position: relative; top: -20px;}
#bbbbbvampire .bg-sec02 .koma06{margin-bottom: -140px; position: relative; top: -140px; z-index: 10;}
#bbbbbvampire .bg-sec02 .koma07{position: relative; top: 0; left: -150px;}
#bbbbbvampire .bg-sec02 .sentence04-koma09{margin-bottom: -50px; position: relative; top: -50px; z-index: 100;}
#bbbbbvampire .bg-sec02 .sentence04{position: relative; top: 55px;}

/********************************************************************
	story-sec03
********************************************************************/
#bbbbbvampire .bg-sec03{padding: 15px 0 0 0; background: #f0ff00;}

#bbbbbvampire .bg-sec03 .koma02 {position: absolute; left: 70px; top: 20px; z-index: 10;}
#bbbbbvampire .bg-sec03 .koma03 {margin-bottom: 30px; position: relative; top: -30px; z-index: 20;}
#bbbbbvampire .bg-sec03 .koma04 {position: relative; z-index: 10;}
#bbbbbvampire .bg-sec03 .koma-bg01 {position: absolute; bottom: 0; z-index: 0;} 

#bbbbbvampire .bg-sec03 .koma05{position: relative; z-index: 10;}
#bbbbbvampire .bg-sec03 .koma-bg02{position: absolute; top: 0; z-index: 0;}
#bbbbbvampire .bg-sec03 .koma05-koma-bg02{margin-bottom: -30px; position: relative; top: -30px;}

#bbbbbvampire .bg-sec03 .koma06{position: relative; top: -35px;}
#bbbbbvampire .bg-sec03 .koma08{position: absolute; bottom: -90px; z-index: 20;}
#bbbbbvampire .bg-sec03 .koma06-koma08{margin-bottom: 90px;}

#bbbbbvampire .bg-sec03 .koma09{margin-bottom: -100px; position: relative; top: -100px; z-index: 10;}

#bbbbbvampire .bg-sec03 .koma10{ margin-bottom: -290px;position: relative; top: -290px; z-index: 0;}
#bbbbbvampire .bg-sec03 .koma11-sentence02{margin-bottom: -190px;position: relative; top: -190px;}
#bbbbbvampire .bg-sec03 .sentence02{position: relative; top: 20px;}

/********************************************************************
	story-sec04
********************************************************************/
#bbbbbvampire .bg-sec04 .sentence01{margin-bottom: -80px; position: relative; z-index: 10; top: -80px;}
#bbbbbvampire .bg-sec04 .bg-sec04-bg{
	margin-bottom: -60px;
	padding: 65px 0 120px 0;
	position: relative;
	top: -60px;
	background: url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec04/bg-sec04.png) no-repeat, url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec04/bg-sec04-bottom.png) left bottom 20px no-repeat;
	background-color: #000066;
	z-index: 0;
}

#bbbbbvampire .bg-sec04 .koma01{
	background: url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec04/koma01-bg.png) 0 50% no-repeat;
	position: relative;
	z-index: 20;
}
#bbbbbvampire .bg-sec04 .sentence02{position: absolute;	bottom: 0; right: 10px; z-index: 10;}
#bbbbbvampire .bg-sec04 .sentence03{
	background: url(/auto/images/fix/title/250307_bbbbbvampire/pcc/story/sec04/sentence03-bg.png) top right no-repeat;
	position: relative;
	top: 20px;
	right: 10px;
}

/********************************************************************
	campaign
********************************************************************/
#bbbbbvampire .bottom .wrap{padding: 30px 0 30px 0;}

#bbbbbvampire .bottom .other-comic h2{
	padding: 10px 10px 10px 10px;
	font-size: 2.6rem;
	color: #fff;
	font-weight: normal;
	background: #0031d1;
}

#bbbbbvampire .bottom h3{
	font-size: 2rem;
	font-weight: bold;
	line-height: 1;
}

#bbbbbvampire .bottom h3 + p{
	font-size: 1.2rem;
	font-weight: normal;
}

#bbbbbvampire .campaign p,#bbbbbvampire p.campaign{
	color: #fe0c8e;
	font-size: 2.3rem;
}

#bbbbbvampire .campaign hr{
	border: none;
	border-top: 2px #000 solid;
}

/********************************************************************
	footer
********************************************************************/
#bbbbbvampire footer{
	margin: 0 auto;
	width: 770px;
	background: transparent;
}

#bbbbbvampire footer p{font-size: 1.2rem;}

/********************************************************************
	上部クーポンarea非表示
********************************************************************/
.contents_right .couponArea2022{display: none;}