@charset "utf-8";
/*-----------------------------------------------
 * BLU-RAY
-------------------------------------------------*/
#bluray .blurayContent{
	position: relative;
	width: 84.9195%;
	min-width: min(1160px, 100%);
	max-width: calc(1160px * var(--max-percent));
	margin: 0 auto;
}
.contTitle[data-title="bluray"]{
	flex-shrink: 0;
}
.contTitle[data-title="bluray"] .contTitle-en{
	height: min(calc(50 / var(--vw-min) * 100vw), calc(50px * var(--max-percent)));
}
.contTitle-ja{
	color: var(--color-main);
}
.contTitle-ja span:before, .contTitle-ja span:after{
	background-color: var(--color-main);
}
.contTitle[data-title="bluray"] .contTitle-en:before{
	width: min(calc(122 / var(--vw-min) * 100vw), calc(122px * var(--max-percent)));
	height: min(calc(78 / var(--vw-min) * 100vw), calc(78px * var(--max-percent)));
	top: max(calc(-50 / var(--vw-min) * 100vw), calc(-50px * var(--max-percent)));
	left: max(calc(-95 / var(--vw-min) * 100vw), calc(-95px * var(--max-percent)));
	-webkit-mask-image: url(../img/common/title/deco_title_news.svg);
	mask-image: url(../img/common/title/deco_title_news.svg);
	background-color: var(--color-main);
}

.blurayContentIn{
	width: 100%;
	padding-top: 5.1725%;
	padding-left: 13.7931%;
	padding-right: 13.7931%;
}

@media screen and (max-width:768px){
	#bluray{
		padding-bottom: calc(120 / var(--vw-min) * 100vw);
	}
	#bluray .blurayContent{
		width: 100%;
		padding: 0;
		flex-direction: column;
	}
	.contTitle[data-title="bluray"] .contTitle-en{
		height: calc(64 / var(--vw-min) * 100vw);
	}
	.contTitle[data-title="bluray"] .contTitle-en:before{
		width: calc(158 / var(--vw-min) * 100vw);
		height: calc(100 / var(--vw-min) * 100vw);
		top: calc(-64 / var(--vw-min) * 100vw);
		left: calc(-120 / var(--vw-min) * 100vw);
	}
	.blurayContentIn{
		padding-left: unset;
		padding-right: unset;
		padding-top: calc(46 / var(--vw-min) * 100vw);
	}
}

/**
* headNav
**/
.bluray__headNav{
	width: 100%;
}
.bluray__headNavLists{
	display: flex;
	flex-wrap: nowrap;
	gap: min(calc(16 / var(--vw-min) * 100vw), calc(16px * var(--max-percent)));
	justify-content: center;
}
.bluray__headNavList{
	width: calc((100% - min(calc(16 / var(--vw-min) * 100vw), calc(16px * var(--max-percent))) * 4) / 5);
}
.bluray__headNav--link{
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: var(--color-main);
	border-radius: 200px;
	overflow: hidden;
	position: relative;
}
.bluray__headNav--link::before{
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(50, 140, 199, 0.20) 0%, rgba(153, 209, 207, 0.20) 100%);
	opacity: 0;
	transition: opacity .3s ease;
}
@media screen and (hover:hover) and (pointer: fine){
	.bluray__headNav--link:hover::before{
		opacity: 50%;
	}
}
.bluray__headNav--link.--is-current::before{
	opacity: 1;
}
.bluray__headNav--link:after{
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image: url(../img/common/deco_curve-lb.svg), url(../img/common/deco_curve-rb.svg);
	background-repeat: no-repeat;
	background-position: left center, right center;
	background-size: contain;
}
.bluray__headNav--txt{
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: min(calc(38 / var(--vw-min) * 100vw), calc(38px * var(--max-percent)));
	padding: 0 min(calc(20 / var(--vw-min) * 100vw), calc(20px * var(--max-percent)));
	position: relative;
	z-index: 1;
	font-size: min(calc(14 / var(--vw-min) * 100vw), calc(14px * var(--max-percent)));
	white-space: nowrap;
}
.bluray__headNav--txt:after{
	content: '';
	position: absolute;
	top: 0;
	right: min(calc(14 / var(--vw-min) * 100vw), calc(14px * var(--max-percent)));
	bottom: 0;
	margin: auto 0;
	width: min(calc(10 / var(--vw-min) * 100vw), calc(10px * var(--max-percent)));
	height: min(calc(10 / var(--vw-min) * 100vw), calc(10px * var(--max-percent)));
	background: url(../img/common/icon_arrow-b.svg) no-repeat center / contain;
}

@media screen and (max-width:768px){
	.bluray__headNav{
		padding: 0 calc(48 / var(--vw-min) * 100vw);
	}
	.bluray__headNavLists{
		flex-wrap: wrap;
		gap: calc(12 / var(--vw-min) * 100vw);
	}
	.bluray__headNavList{
		width: calc((100% - calc(12 / var(--vw-min) * 100vw)) / 2);
	}
	.bluray__headNav--txt{
		min-height: calc(72 / var(--vw-min) * 100vw);
		padding: 0 calc(48 / var(--vw-min) * 100vw);
		font-size: calc(24 / var(--vw-min) * 100vw);
		white-space: normal;
	}
	.bluray__headNav--txt:after{
		right: calc(24 / var(--vw-min) * 100vw);
		width: calc(18 / var(--vw-min) * 100vw);
		height: calc(18 / var(--vw-min) * 100vw);
	}
}

/**
* bluray__main
**/
.bluray__main{
	width: 100%;
	position: relative;
	padding-top: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	font-size: min(calc(16 / var(--vw-min) * 100vw), calc(16px * var(--max-percent)));
}
.bluray__section{
	width: 100%;
	position: relative;
}
.bluray__section:not(:first-child){
	padding-top: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	border-top: 1px solid rgba(50, 140, 199, 0.15);
	margin-top: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
}
.bluray__secTitle{
	position: relative;
	width: 100%;
	line-height: 1.2;
	font-size: min(calc(32 / var(--vw-min) * 100vw), calc(32px * var(--max-percent)));
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
.bluray__secTitle--txt{
	display: block;
	position: relative;
	padding-bottom: 4px;
}
.bluray__secTitle--txt:before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background-color: rgba(50, 140, 199, 0.4);
}
.bluray__secTitle:after{
	content: '';
	position: absolute;
	top: 0;
	right: max(calc(-60 / var(--vw-min) * 100vw), calc(-60px * var(--max-percent)));
	bottom: 0;
	width: min(calc(118 / var(--vw-min) * 100vw), calc(118px * var(--max-percent)));
	height: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	-webkit-mask: url(../img/common/deco_flower.svg) no-repeat center left / contain;
	mask: url(../img/common/deco_flower.svg) no-repeat center left / contain;
	background-color: #328CC7;
}

@media screen and (max-width:768px){
	.bluray__main{
		font-size: calc(26 / var(--vw-min) * 100vw);
	}
	.bluray__section:not(:first-child){
		padding-top: calc(80 / var(--vw-min) * 100vw);
		margin-top: calc(80 / var(--vw-min) * 100vw);
	}
	.bluray__secTitle{
		font-size: calc(44 / var(--vw-min) * 100vw);
		margin-bottom: calc(60 / var(--vw-min) * 100vw);
	}
	.bluray__secTitle--txt{
		padding: calc(20 / var(--vw-min) * 100vw) calc(48 / var(--vw-min) * 100vw);
	}
	.bluray__secTitle:after{
		top: unset;
		right: 0;
		bottom: calc(-36 / var(--vw-min) * 100vw);
		width: calc(128 / var(--vw-min) * 100vw);
		height: calc(86 / var(--vw-min) * 100vw);
	}
}

/**
* bluray__contHead
**/
.bluray__contHead{
	width: 100%;
	position: relative;
	display: flex;
	gap: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
@media screen and (max-width:768px){
	.bluray__contHead{
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
		flex-direction: column;
		gap: calc(56 / var(--vw-min) * 100vw);
	}
}

.bluray__image{
	width: min(calc(380 / var(--vw-min) * 100vw), calc(380px * var(--max-percent)));
	flex-shrink: 0;
}
.bluray__image img{
	width: 100%;
}
@media screen and (max-width:768px){
	.bluray__image{
		width: calc(520 / var(--vw-min) * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
}

.bluray__detail{
	width: 100%;
}
.bluray__title{
	display: flex;
	flex-direction: column;
}
.bluray__title--title{
	font-size: min(calc(22 / var(--vw-min) * 100vw), calc(22px * var(--max-percent)));
	font-weight: 600;
	line-height: 1.5;
}
.bluray__title--sub{
	font-size: min(calc(15 / var(--vw-min) * 100vw), calc(15px * var(--max-percent)));
	font-weight: 500;
	line-height: 1.6;
	color: var(--color-main);
	margin-top: min(calc(12 / var(--vw-min) * 100vw), calc(12px * var(--max-percent)));
}
.bluray__title--date{
	order: -1;
	font-size: min(calc(16 / var(--vw-min) * 100vw), calc(16px * var(--max-percent)));
	font-weight: 600;
	line-height: 1;
	color: var(--color-main);
	margin-bottom: min(calc(12 / var(--vw-min) * 100vw), calc(12px * var(--max-percent)));
}
.bluray__detailLists{
	display: flex;
	flex-direction: column;
	gap: min(calc(14 / var(--vw-min) * 100vw), calc(14px * var(--max-percent)));
	margin-top: min(calc(32 / var(--vw-min) * 100vw), 32px);
}
.bluray__detailList{
	display: flex;
	gap: 1em;
}
.bluray__detailList--dt{
	min-width: calc(min(calc(120 / var(--vw-min) * 100vw), 120px));
	color: var(--color-main);
	flex-shrink: 0;
}
.bluray__detailList--dd{
	min-width: 0;
	flex: 1;
}
.bluray__detailList--dd a[target="_blank"],
.bluray__contIn a[target="_blank"]{
	color: var(--color-main);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 6px;
	transition: color .3s ease;
	overflow-wrap: anywhere;
	word-break: break-all;
}
.bluray__detailList--dd a[target="_blank"]:after,
.bluray__contIn a[target="_blank"]:after{
	content: '';
	display: inline-block;
	margin: 0 min(calc(8 / var(--vw-min) * 100vw), calc(8px * var(--max-percent)));
	width: min(calc(10 / var(--vw-min) * 100vw), calc(10px * var(--max-percent)));
	height: min(calc(10 / var(--vw-min) * 100vw), calc(10px * var(--max-percent)));
	-webkit-mask: url(../img/common/icon_blank.svg) no-repeat center / contain;
	mask: url(../img/common/icon_blank.svg) no-repeat center / contain;
	background-color: var(--color-main);
	transition: background-color .3s ease;
}
.bluray__detailList--dd a[target="_blank"]:hover,
.bluray__contIn a[target="_blank"]:hover{
	color: var(--color-main-black);
}
.bluray__detailList--dd a[target="_blank"]:hover:after,
.bluray__contIn a[target="_blank"]:hover:after{
	background-color: var(--color-main-black);
}
.bluray__contIn ul li{
	overflow-wrap: anywhere;
}

@media screen and (max-width:768px){
	.bluray__title--title{
		font-size: calc(32 / var(--vw-min) * 100vw);
	}
	.bluray__title--sub{
		font-size: calc(26 / var(--vw-min) * 100vw);
		margin-top: calc(20 / var(--vw-min) * 100vw);
	}
	.bluray__title--date{
		font-size: calc(28 / var(--vw-min) * 100vw);
		margin-bottom: calc(20 / var(--vw-min) * 100vw);
	}
	.bluray__detailLists{
		margin-top: calc(40 / var(--vw-min) * 100vw);
		gap: calc(26 / var(--vw-min) * 100vw);
	}
	.bluray__detailList--dt{
		width: calc(176 / var(--vw-min) * 100vw);
	}
}

.bluray__cont{
	width: 100%;
	position: relative;
	margin-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
.bluray__cont--title{
	color: var(--color-main);
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: min(calc(8 / var(--vw-min) * 100vw), calc(8px * var(--max-percent)));
}
.bluray__contIn{
	line-height: 2;
}
.bluray__contIn ol{
	padding-left: 1.5em;
}
.bluray__contIn ol li{
	list-style: decimal;
}
.bluray__contIn ul{
	padding-left: 1.5em;
}
.bluray__contIn ul li{
	list-style: disc;
}
.bluray__contIn p + p{
	margin-top: 1em;
}
.bluray__note{
	margin-top: min(calc(24 / var(--vw-min) * 100vw), calc(24px * var(--max-percent)));
	font-size: min(calc(13 / var(--vw-min) * 100vw), calc(13px * var(--max-percent)));
	opacity: 0.8;
	line-height: 1.6;
}

@media screen and (max-width:768px){
	.bluray__cont{
		margin-top: calc(60 / var(--vw-min) * 100vw);
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
	}
	.bluray__cont--title{
		margin-bottom: calc(16 / var(--vw-min) * 100vw);
	}
	.bluray__detailList--dd a[target="_blank"],
	.bluray__contIn a[target="_blank"]{
		text-underline-offset: calc(8 / var(--vw-min) * 100vw);
	}
	.bluray__detailList--dd a[target="_blank"]:after,
	.bluray__contIn a[target="_blank"]:after{
		margin: 0 calc(12 / var(--vw-min) * 100vw);
		width: calc(16 / var(--vw-min) * 100vw);
		height: calc(16 / var(--vw-min) * 100vw);
	}
	.bluray__note{
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
		font-size: calc(22 / var(--vw-min) * 100vw);
		margin-top: calc(32 / var(--vw-min) * 100vw);
	}
}

/**
* bluray__bonus
**/
.bluray__bonusItem:not(:first-child){
	padding-top: min(calc(60 / var(--vw-min) * 100vw), calc(60px * var(--max-percent)));
	margin-top: min(calc(60 / var(--vw-min) * 100vw), calc(60px * var(--max-percent)));
	border-top: 1px dashed rgba(50, 140, 199, 0.2);
}
.bluray__bonusTitle{
	font-size: min(calc(20 / var(--vw-min) * 100vw), calc(20px * var(--max-percent)));
	font-weight: 600;
	color: var(--color-main);
	line-height: 1.4;
	margin-bottom: min(calc(8 / var(--vw-min) * 100vw), calc(8px * var(--max-percent)));
}
.bluray__bonusDesc{
	line-height: 1.8;
	margin-bottom: min(calc(16 / var(--vw-min) * 100vw), calc(16px * var(--max-percent)));
}

@media screen and (max-width:768px){
	.bluray__bonusItem:not(:first-child){
		padding-top: calc(80 / var(--vw-min) * 100vw);
		margin-top: calc(80 / var(--vw-min) * 100vw);
	}
	.bluray__bonusTitle{
		font-size: calc(32 / var(--vw-min) * 100vw);
		margin-bottom: calc(16 / var(--vw-min) * 100vw);
	}
}

/**
* campaign
**/
#campaign-sign-script .bluray__contHead,
#campaign-support .bluray__contHead,
#vol1-campaign .bluray__contHead{
	margin-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}

@media screen and (max-width:768px){
	#campaign-sign-script .bluray__contHead,
	#campaign-support .bluray__contHead,
	#vol1-campaign .bluray__contHead{
		margin-top: calc(60 / var(--vw-min) * 100vw);
	}
	#campaign-sign-script .bluray__detailLists,
	#campaign-support .bluray__detailLists,
	#vol1-campaign .bluray__detailLists{
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
	}
}
