@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/*Blocks Animationプラグインのアニメーションをループさせる*/
.my-anime {
  animation: bounce 1s infinite; /* 1秒ごとに無限にバウンド */
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0); /* 元の位置に戻る */
  }
  40% {
    transform: translateY(-20px); /* 上に跳ねる */
  }
  60% {
    transform: translateY(-10px); /* 軽くもう一度跳ねる */
  }
}

.my-anime1 {
  opacity: 1; /* 初期状態は表示されている */
  animation: blink 0.6s infinite; /* 0.6秒で1サイクルのアニメーションを無限ループ */
}

@keyframes blink {
  0% {
    opacity: 1; /* 表示 */
  }
  50% {
    opacity: 0; /* 消える */
  }
  100% {
    opacity: 1; /* 再度表示される */
  }
}

.my-anime2 {
  position: relative;
  animation: slide 2.6s infinite;
}

@keyframes slide {
  0% {
    transform: translateX(100%); /* 右から開始 */
  }
  11.54% {
    transform: translateX(0); /* 中央に移動 */
  }
  88.46% {
    transform: translateX(0); /* 中央で2秒間停止 */
  }
  100% {
    transform: translateX(-100%); /* 左に移動 */
  }
}

/*ここまで*/

body{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}


body.category::before{
	position: fixed;
	bottom: 5vh;
	right: 10px;
	content: '特典DVDおよびグッズは在庫がある場合のみお付けいたします。予めご了承ください。';
	display: block;
	z-index: 999;
	width: 30%;
	max-width: 270px;
	padding: 10px 10px 10px 15px;
	background-color: rgba(145, 26, 26, .7);
	border: 1px solid;
	line-height: 1.5;
}

html {
	scroll-behavior: smooth !important;
}

.blod{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 900 !important;
	font-style: normal;
}

.red{
	color:#ff0000 !important;
}

.bigg{
	font-size:4rem;
	line-height:4.5rem;
}

.margin0{
	margin:0px !important;
	padding:0px !important;
}

.float-left{
	float:left;
}
.clear{
	clear:both;
}

.article p , .entry-content>*{
	margin-bottom:1.8rem !important;
}

.header{
	display:none;
}

.date-tags{
	display:none;
}

.height100{
	min-height:205px;
	height:100% !important;
}
.width100{
	width:100% !important;
	height:auto !important;
}

.width145{
	width:145px !important;
}

.width1-4{
	width:25% !important;
	height:auto !important;
}

.glow {
   font-size: 80px;
    color: #fff;
    text-align: center;
    animation: glow 0.5s ease-in-out infinite alternate;
}

@keyframes glow {
    from {
        text-shadow: 0 0 5px #fff;
    }
    to {
        text-shadow: 0 0 10px #fff, 0 0 15px #ff4da6;
    }
}

/*404エラー*/
.not-found{
	display:none;
}

/*年齢認証-インデックス（index）ページ*/
.avwp-av{
	background:rgba(255,255,255,0.3) !important;
	border:2px #555 solid;
	border-radius:3px;
}
.avwp-av h2{
	color:#fff;
}
.avwp-av p{
	color:#fff;
}

.avwp-av button.yes{
	background:#3878b2 !important;
}
.avwp-av button.yes:hover{
	background:#53abfb !important;
}
.avwp-av button.no{
	background:#555 !important;
}
.avwp-av button.no:hover{
	background:#888 !important;
}

/*リストを「※」にする。注意書き*/
ul.attention{
    list-style-type: none; /* デフォルトのマーカーを非表示 */
    padding-left: 0;
  }
  ul.attention li {
    position: relative;
    padding-left: 1em; /* マーカー分のスペースを確保 */
  }
  ul.attention li::before {
    content: "※"; /* カスタムマーカー */
    position: absolute;
    left: 0;
  }

/*メニュー系のスタイル*/
.navi{
	/*background:#000 url('http://justice2024.yume-web.net/wp-content/uploads/2024/05/navi-back-small.png') repeat-x center !important;*/
	background-color: #000;
	background-size:contain !important;
	height:150px;
	position:relative;
}

.navi-in{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:100%;
	background: rgba(0, 0, 0, 0.5);
}

.navi-in > ul li{
	position:relative;
	width:20%;
	height:90px;
}
.navi-in > ul li a , .navi-in > ul li .caption-wrap{
	position:relative;
	height:90px;
}
ul.menu-top > li.menu-item > a > .caption-wrap > .item-label{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:100%;
	line-height:1rem;
	font-size:2rem;
	font-weight:900;
	overflow:visible;
	padding:0.5rem 0;
	background: linear-gradient(to right, #ffffff, #dcdcdc);
    -webkit-background-clip: text;
    color: transparent;
	filter: drop-shadow(1px 1px 1px #000);
}
.top-has-sub{
	height:90px;
	color:#fff;
}
#menu-item-385 > a > .caption-wrap > .item-label:after{
	white-space:pre;
	content:"\A作品一覧" !important;
	font-size:1rem;
	font-weight:400;
}
#menu-item-3666 > a > .caption-wrap > .item-label:after{
	white-space:pre;
	content:"\Aオフィシャル販売" !important;
	font-size:1rem;
	font-weight:400;
}
#menu-item-19 > a > .caption-wrap > .item-label:after{
	white-space:pre;
	content:"\A求人（モデル・スタッフ大募集）" !important;
	font-size:1rem;
	font-weight:400;
}
#menu-item-34 > a > .caption-wrap > .item-label:after{
	white-space:pre;
	content:"\A取り扱いショップ" !important;
	font-size:1rem;
	font-weight:400;
}
#menu-item-22 > a > .caption-wrap > .item-label{
	font-size:4rem;
	line-height:4rem;
	padding:0 0;
	margin-top:-0.5rem;
}

/*メニューのアニメーション*/
.navi-in a::before{
	background: #3878b2;
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
	margin: auto;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.navi-in a:hover{
	background:transparent !important;
}
.navi-in a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*サブメニュー*/
.navi-in > ul .sub-menu{
	width:100% !important;
	background:transparent !important;
}
.sub-menu li , .sub-menu a , .sub-menu .caption-wrap{
	height:auto !important;
}
nav , .sub-menu .item-label{
	position:relative;
	z-index:100;
}
.sub-menu a{
	background: rgba(0, 0, 0, 0.5) !important;
    color: #fff !important;
	filter: drop-shadow(1px 1px 1px #000) !important;
}
.sub-menu a:hover{
	background: rgba(0, 0, 0, 0.5) !important;
    color: #fff !important;
	filter: drop-shadow(1px 1px 1px #000) !important;
}

/*サイドバーX（旧Twitter）*/
.x-timeline{
	max-height: 500px;
	overflow-y:scroll;
}

/*メインカラム*/
.main{
	padding:0px 20px !important;
	/*background:url('http://justice2024.yume-web.net/wp-content/uploads/2024/06/main_back-scaled.jpeg') no-repeat center top;
	background-size:cover;
	background-color:rgba(255,255,255,0.8);
	background-blend-mode:lighten;
	background-attachment: fixed;*/
	background:#000000;
	/*box-shadow: inset 0 0 10px rgba(0, 0, 0, 1);
	border:1px #000 solid;*/
}
.entry-content , .swiper-wrapper{
	margin-top:0px !important;
}
.swiper-wrapper{
	margin-left:0 !important;
}
.sidebar{
	background:#000000;
	padding:0 1.5%;
}
.footer-meta{
	display:none;
}

.main a:hover{
	color:#04ffeb !important;
}

	/*スライダー*/
.swiper{
	border:3px #04ffeb solid;
	border-radius:5px;
	box-shadow: 0px 0px 5px 3px #04ffeb;
}
/*スライダーリンク*/
.xo-slider-template-default .slide-content-button a{	
	background-color: rgba(0, 0, 0, 0.7) !important;
	color:#ff0000 !important;
	border:2px #ff0000 solid !important;
}
.xo-slider-template-default .slide-content-button a:hover{	
	background-color: rgba(0, 0, 0, 0.7) !important;
	color:#ff0000 !important;
	border:2px #ff0000 solid !important;
}

	/*トップページ新作*/
.featured-post{
	display: inline-block;
	padding:5px 5px;
}
.featured-post img{
	display:block;
	width:100%;
}

	/*トップページスライダー*/
.swiper-slide a{
	position:relative;
	z-index:100 !important;
}
.top-slider-block{
	display:block;
	width:100%;
	height:100%;
	overflow:hidden;
}
.slide-content{
	padding:0 !important;
}

	/*見出し*/
.main-h2 , .entry-title{
	position: relative;
	background: linear-gradient(0deg, #FFFFFF, #C0C0C0);
	color:#555555 !important;
	font-size:1rem !important;
	padding:5px 0 5px 15px !important;
	border-radius:3px;
}
.main-h2:before , .entry-title:before{
	content: '';
	width:100%;
	position: absolute;
	left: 0;
	bottom: 0;
	border-bottom:2px #3878b2 solid;
	animation: border_anime 7s linear;
	animation-delay: 1s;
	animation-fill-mode:both;
}
@keyframes border_anime {
	0%{
		width: 0%;
	}
	5%{
		width: 100%;
	}
	95%{
		width: 100%;
	}
}
.main-h2>span , .entry-title{
	font-size:2rem !important;
	font-weight:900;
	color:#ff0000 !important;
	padding-right:5px;
}

	/*テーブル・表*/
table , tbody{
	width:100% !important;
}
table tr:nth-of-type(2n+1){
	background:#333333 !important;
}
table th{
	background:transparent !important;
}

	/*投稿*/
.entry-title{
	margin-top:0 !important;
}
.cat-link{
	background:#555 !important;
	border:1px #fff solid !important;
}
.a-wrap:hover{
	background:#555 !important;
}

		/*投稿・固定ページh2見出し*/
.article h2{
  font-weight: bold;
	padding: 0 0.5em;
	margin-top:2em;
	margin-left: 0.6em;
	margin-right: 0.6em;
	border-left: 7px dotted #3878b2;
	background-color:#000 !important;
	outline: 0.1em solid #3878b2;
	outline-offset: 0.5em;
	position: relative;
	border-radius:0px !important;	
}
.article h2::after {
  content: '';
  position: absolute;
  right: calc(-0.55em - 0.1em);
  top: calc(-0.55em - 0.1em);
  border-width: 0 20px 20px 0;
  border-style: solid;
  border-color: #3878b2 #000 #3878b2 !important;
  box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.15);
	border-radius:3px;
}

.article h3{
	border:0px;
	border-top:2px #3878b2 solid;
	border-bottom: double 6px #3878b2;
}

		/*関連記事・コンテンツサムネイル*/
.related-entry-card-wrap{
	width:155px !important;
}
.related-entry-card-thumb{
	width:145px !important;
	height:205px !important;
}
.card-thumb img{
	height:100%;
}
.related-entry-card-snippet{
	display:none;
}

	/*一覧ページページ送り*/
.pagination-next-link, .comment-btn{
	background:#000;
}
.pagination-next-link:hover, .comment-btn:hover {
	/*all: unset !important;*/
  background-color: #333;
  transition: all 0.3s ease-in-out;
	color:#fff !important;
	border:1px #fff solid !important;
}

	/*Sales Shop（取扱店）*/
.selesshop-toc{
	list-style: none;
	width:100%;
	clear:both;
}
.selesshop-toc>li{
	float:left;
}
#ss-toc1{
	clear:both;
}

	/*カテゴリーページ*/
.entry-card-wrap {
	width:165px !important;
	height:245px !important;
	padding:10px 10px !important;
}
.entry-card-thumb{
	width:145px !important;
	height:205px !important;
}
.entry-card-title{
	font-weight:400 !important;
	font-size:1rem !important;
}
.entry-card-snippet , .entry-card-meta{
	display:none !important;
}

.pagination .current{
	background:#333 !important;
}

	/*フォーム*/
#form1{
	margin-bottom:20px;
	margin-top:-20px;
}
#form1 > input{
	background:#ff0000;
	color:#ffffff;
	font-weight:900;
}

#form2{
	margin:10px 0px;
}
#form2 > input{
	background:#ff0000;
	color:#ffffff;
	font-weight:900;
}

	/*DVD・作品詳細ページ*/
.column2 .wp-block-image , .top-newdvd .wp-block-image{
	width:50%;
	margin:0 auto;
}

.column2 img , .top-newdvd img{
	display:block;
	margin-left:auto;
	margin-right:auto;
}

.wp-block-image figcaption {
	font-size:1rem;
	color:#fff;
	font-weight:900;
}

.wp-block-video{
	border:2px #3878B2 solid;
	border-radius:3px;
}

.wp-element-caption{
	text-align:center;
	display: block !important;
	color:#fff !important;
	font-weight:400 !important;
	opacity:1;
}

	/*フッター*/
.navi-footer-in a:hover{
	background:rgba(255,255,255,0.1);
}
/*グリッチエフェクト*/

/*購入者特典サイト*/
div.wpforms-container-full .wpforms-field-label, .wp-core-ui div.wpforms-container-full .wpforms-field-label , div.wpforms-container-full .wpforms-field-label-inline, .wp-core-ui div.wpforms-container-full .wpforms-field-label-inline{
	color:#fff;
}

/*管理バー*/
.admin-panel , .admin-panel a{
	color:#000 !important;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
	.column1{grid-area:column1;}
	.column2{grid-area:column2;}
	.wp-block-columns{
		display: grid !important;
		grid-template-areas:
			"column2"
			"column1" !important;		
	}
}



.article h2.big{
	    font-size: 34px;
}
@media screen and (max-width: 480px) {
.article h2.big{
	    font-size: 24px;
}
}
