@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&display=swap');
/* -----------------------------------------------------------------
フォント設定
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
メディアクエリ
----------------------------------------------------------------- */
/* media query */
/* -----------------------------------------------------------------
ホバー
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
ホバーアニメーション
----------------------------------------------------------------- */
/* 半透明になる - 優先度の低いバナーなど */
/* 押しボタン - UIパーツなど */
@keyframes hoverPush {
	30% {
		transform: scale(0.92);
	}

	100% {
		transform: scale(1);
	}
}
/* 飛び出し - 目立たせたい要素など */
@keyframes hoverOutBack {
	50% {
		translate: 0 -10%;
	}

	100% {
		translate: 0 0%;
	}
}
/* -----------------------------------------------------------------
テキスト内リンク設定
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
リンクアイコン付与
----------------------------------------------------------------- */
/* aタグ内のspanにアイコン付与したい際にselectorWrapは使用する */
/* -----------------------------------------------------------------
拡張子別リンクアイコンカラー設定
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
子要素のマージントップを0に強制
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
次要素のマージントップを0に強制
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
カラム別マージントップ設定
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
テキスト非表示
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
クリック・タッチの最小ターゲット設定
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
Webフォント設定
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
CSS変数設定
----------------------------------------------------------------- */
:root {
	--primary: #e8380d;
	--secondary: #94252a;
	--txtColor: #3b3d48;
	--borderColor: #c6c6c6;
	--bgColor: #fff;
	--bgColorSecondary: #3b3d48;
	--bgColorTertiary: #f5f5f5;
	--bgColorTh: #e6e6e6;
	--bgColorThSub: rgba(230,230,230, 0.25);
	--white: #fff;
	--black: #3b3d48;
	--fontFamily: 'Zen Maru Gothic', 'ヒラギノ角 Pro W3', 'Hiragino Kaku Pro W3', 'メイリオ', Meiryo, 'MS Pゴシック',
		'MS PGothic', sans-serif;
	--txtSizeSp: 1.4rem;
	--txtSizePc: 1.6rem;
	--lineHeight: 1.75;
	--lineHeightTitle: 1.5;
	--letterSpacing: 0.01em;
	--fixedWidth: 1040px;
	--fixedWidthInner: 880px;
	--fixedWidthMain: 800px;
	--zIndexLv0: 0;
	--zIndexLv1: 1;
	--zIndexLv2: 10;
	--zIndexLv3: 100;
	--zIndexLv4: 1000;
	--zIndexLv5: 10000;
	--breakTabLength: 768;
	--breakPcLength: 1025;
	/* 個人設定 */
	--colorKey: #f46ca9;
	--colorKey50: #f9b5d4;
	--colorKey25: #fcdae9;
	--colorKeyText: #ea4f98;
	/* キャラ設定 */
	--colorCurewonderful: #ff326b;
	--colorCurewonderfulUiBg: #FFFCDF;
	--colorCurefriendly: #aa57ff;
	--colorCurefriendlyUiBg: #F4DAFA;
	--colorCurenyami: #29b6ff;
	--colorCurenyamiUiBg: #fdfedf;
	--colorCurelillian: #25e9e8;
	--colorCurelillianUiBg: #ffd3ff;
	--colorCurelillianText: #0fbdd0;
	/* イージング */
	--easeOutBack: cubic-bezier(0.4, 1.5, 0.64, 1.5);
	/* アスペクト比計算用 */
	--widthPC: 1440;
	--widthSP: 750;
	--heightCharacterPc: 700;
	--heightCharacterSp: 856;
}
.m-list-thumb {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}
@media print, screen and (min-width: 1025px) {
.m-list-thumb {
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
}
	}
.m-list-thumb > li {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 3;
		gap: 0;
		background: var(--white);
	}
.m-list-thumb > li a {
			display: grid;
			grid-template-rows: subgrid;
			grid-row: span 3;
			overflow: hidden;
			font-size: 1.2rem;
			border: 1px solid var(--colorKeyText);
			border-radius: 5px;
			box-shadow: 0 0 20px 0 rgba(234, 79, 152, 0.15);
		}
@media print, screen and (min-width: 1025px) {
.m-list-thumb > li a {
				border: 2px solid var(--colorKeyText);
				border-radius: 10px;
		}
	}
.m-list-thumb > li a:focus-visible {
				text-decoration: none;
	}
.m-list-thumb > li a:focus-visible .thumb-img img {
						transform: scale(1.1);
					}
@media (hover: hover) and (pointer: fine) {
		.m-list-thumb > li a:hover {
				text-decoration: none;
		}
					.m-list-thumb > li a:hover .thumb-img img {
						transform: scale(1.1);
					}
	}
.m-list-thumb > li a .thumb-img {
				position: relative;
				display: block;
				padding-top: 100%;
				overflow: hidden;
			}
.m-list-thumb > li a .thumb-img img {
					position: absolute;
					top: 0px;
					right: 0px;
					bottom: 0px;
					left: 0px;
					max-width: 75%;
					height: 100%;
					max-height: 74%;
					margin: auto;
					transition: 200ms var(--easeOutBack);
					-o-object-fit: contain;
					   object-fit: contain;
				}
.m-list-thumb > li a .thumb-title {
				padding-inline: 8px;
				font-weight: 700;
				letter-spacing: 0.05em;
			}
@media print, screen and (min-width: 1025px) {
.m-list-thumb > li a .thumb-title {
					padding-inline: 16px;
					font-size: 1.6rem
			}
	}
.m-list-thumb > li a .thumb-data {
				display: flex;
				flex-direction: column;
				gap: 4px;
				padding-top: 10px;
				padding-bottom: 10px;
				margin-inline: 8px;
				margin-top: 15px;
				border-top: 4px dotted var(--colorKey);
			}
@media print, screen and (min-width: 1025px) {
.m-list-thumb > li a .thumb-data {
					flex-direction: row;
					gap: 20px;
					align-items: center;
					margin-inline: 16px
			}
	}
.m-list-thumb > li a .data-date {
				position: relative;
				display: inline-flex;
				gap: 8px;
				align-items: center;
				color: var(--colorKeyText);
			}
.m-list-thumb > li a .data-date:before {
					display: inline-block;
					width: 13px;
					height: 13px;
					content: '';
					background: var(--colorKeyText);
					-webkit-mask-image: url('/tv/wonderful_precure/assets/images/book/i_cal.svg');
					        mask-image: url('/tv/wonderful_precure/assets/images/book/i_cal.svg');
					-webkit-mask-repeat: no-repeat;
					        mask-repeat: no-repeat;
					-webkit-mask-position: center;
					        mask-position: center;
					-webkit-mask-size: contain;
					        mask-size: contain;
				}
.m-list-thumb > li a .data-cat {
				position: relative;
				display: inline-flex;
				gap: 8px;
				align-items: center;
				color: var(--colorKeyText);
			}
.m-list-thumb > li a .data-cat:before {
					display: inline-block;
					width: 13px;
					height: 13px;
					content: '';
					background: var(--colorKeyText);
					-webkit-mask-image: url('/tv/wonderful_precure/assets/images/bluraydvd/i_disc.svg');
					        mask-image: url('/tv/wonderful_precure/assets/images/bluraydvd/i_disc.svg');
					-webkit-mask-repeat: no-repeat;
					        mask-repeat: no-repeat;
					-webkit-mask-position: center;
					        mask-position: center;
					-webkit-mask-size: contain;
					        mask-size: contain;
				}
.p-table-common {
	width: 100%;
	margin-top: 20px;
	border: 2px solid var(--colorKey);
}
@media print, screen and (min-width: 1025px) {
.p-table-common {
		margin-top: 25px;
}
	}
.p-table-common tr + tr {
			border-top: 2px solid var(--colorKey);
		}
.p-table-common tr th {
			font-weight: bold;
			color: var(--colorKey);
			background: var(--colorKey25);
		}
.p-table-common tr th,
		.p-table-common tr td {
			padding: 10px 15px;
			text-align: left;
		}
@media print, screen and (min-width: 1025px) {
.p-table-common.table-music {
			margin-top: 20px
	}
	}
.m-list-label {
	display: flex;
	flex-wrap: wrap;
}
@media print, screen and (min-width: 1025px) {
.m-list-label {
		margin-top: 15px;
}
	}
.m-list-label li {
		position: relative;
		padding: 3px 10px 3px 27px;
		margin: 5px 10px 0 0;
		font-size: 1.2rem;
		color: #fff;
		background: var(--colorKey);
		border-radius: 5px;
	}
.m-list-label li:before {
			position: absolute;
			top: 50%;
			left: 10px;
			display: inline-block;
			width: 13px;
			height: 13px;
			margin-top: -6px;
			content: '';
			background-repeat: no-repeat;
			background-position: center;
			background-size: 13px 13px;
		}
@media print, screen and (min-width: 1025px) {
.m-list-label li:before {
				margin-top: -7px
		}
	}
@media print, screen and (min-width: 1025px) {
.m-list-label li{
			padding: 1px 12px 3px 30px;
			margin-top: 10px;
	}
	}
.m-list-label li.label-cat:before {
				background-image: url(https://precure-web.com/hirogaru-sky/assets/img/i_cal_wh.svg);
			}
.m-list-label li.label-disc:before {
				background-image: url(https://precure-web.com/hirogaru-sky/assets/img/i_disc_wh.svg);
			}
.m-list-label li.label-book:before {
				background-image: url(https://precure-web.com/hirogaru-sky/assets/img/i_book_whs.svg);
			}
.u-episodettl {
	position: relative;
	padding-bottom: 17.5px;
	margin-top: 15px;
	font-size: 2.0rem;
	font-weight: bold;
}
@media print, screen and (min-width: 1025px) {
.u-episodettl {
		padding-bottom: 30px;
		margin-top: 30px;
		font-size: 2.4rem
}
	}
.p-border {
	width: 100%;
	height: 18px;
	background: url("/tv/wonderful_precure/assets/images/common/bg_heart_border.webp") repeat-x;
}
.u-txt-num {
	text-align: center;
}
.u-txt-num span {
		display: inline-block;
		padding: 2.75px 30px;
		font-size: 1.4rem;
		font-weight: bold;
		color: #fff;
		letter-spacing: 0.05em;
		background: var(--colorKey);
		border-radius: 15px;
	}
@media print, screen and (min-width: 1025px) {
.u-txt-num span {
			padding: 5px 25px;
			font-size: 2.4rem;
			line-height: 1.25;
			border-radius: 20px
	}
	}
.entry-book {
	margin-top: 40px;
}
