/* 特集ページ設定 */

/* ページ詳細設定
---------------------------------------*/

#main {
	background:#000 url("../../img/251216_2222/charm_01_top.svg") no-repeat left calc(50% - 450px) bottom / 300px;
	width:100%;
	display:flex;
	justify-content: center;
	flex-direction: row-reverse;
	padding:0;
	margin:0;
}
@media screen and (max-width:640px) {
	#main {
		background:#000 url("../../img/251216_2222/charm_01_top.svg") no-repeat left bottom / 150px;
		flex-direction: column;
		padding-bottom:40px;
	}
}
#main .main_r {
	width:445px;
}
@media screen and (max-width:640px) {
	#main .main_r {
		width:auto;
	}
}
#main .main_r img{
	max-width:100%;
	width:auto;
}
#main .main_l {
	width:calc(1200px - 445px);
	text-align:center;
	color:#fff;
	display:flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
@media screen and (max-width:640px) {
	#main .main_l {
		width:auto;
	}
	#main .main_l img{
		width:100%;
		max-width:100%;
	}
}
#main .text{
	line-height:1.9em;
	margin:30px auto 0;
	font-size:16px;
}
@media screen and (max-width:640px) {
	#main .text{
		padding:0 20px;
		font-size:14px;
		line-height:1.8em;
		margin-top:20px;
		word-break: keep-all;
		overflow-wrap: break-word;
	}
}
.btn_goods {
	display:block;
	position:absolute;
	left:118px;
	bottom:74px;
}

.btn_goods_sp {
	display:block;
	position:absolute;
	left:6%;
	bottom:9%;
	width:35%;
}

.btn_goods:hover,.btn_goods_sp:hover {
	opacity:0.8;
}

#container_wrap {
	font-family:Arial,"游ゴシック","Yu Gothic" ,'メイリオ',meiryo,Verdana,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro', Osaka, sans-serif;
}

#container {
	margin: 0 auto;
	background-color: #000;
	position: relative;
	color:#fff;
	font-size:15px;
	line-height:1.57em;
	text-align:left;
}
@media screen and (max-width:640px) {
	#container {
		margin-bottom:0;
	}
}
.hover_position {
	position: absolute;
	top: -15px;
	left: 0;
	z-index: 2;
}

h2, h3 {
    font-size: 0 !important;
    line-height: 0 !important;
    padding: 0 !important;
}
#container .big {
    font-size: 22px;
}
@media screen and (max-width:640px) {
	#container .big {
		font-size: 18px;
	}
}
#container p {
	margin:0;
	padding:0;
}
#container .inner {
	padding:80px 40px;
}
@media screen and (max-width:640px) {
	#container .inner {
		padding:40px 20px;
	}
}
#container .inner-product {
	background:url("../../img/251216_2222/charm_01_bottom.svg") no-repeat left calc(50% - 450px) top / 300px, url("../../img/251216_2222/charm_02_top.svg") no-repeat right calc(50% - 450px) bottom / 300px, #2a2a2a;
}
@media screen and (max-width:640px) {
	#container .inner-product {
		background:url("../../img/251216_2222/charm_01_bottom.svg") no-repeat left top / 150px, url("../../img/251216_2222/charm_02_top.svg") no-repeat right bottom / 150px, #2a2a2a;
	}
}
#container .inner-story {
	background:url("../../img/251216_2222/charm_02_bottom.svg") no-repeat right calc(50% - 450px) top / 300px, url("../../img/251216_2222/charm_03_top.svg") no-repeat left calc(50% - 450px) bottom / 300px, #000;
	text-align: center;
	padding:100px 40px 60px;
}
@media screen and (max-width:640px) {
	#container .inner-story {
		padding:60px 20px 40px;
		background:url("../../img/251216_2222/charm_02_bottom.svg") no-repeat right top / 150px, url("../../img/251216_2222/charm_03_top.svg") no-repeat left bottom / 150px, #000;
	}
}
#container .inner-story .ttl{
	margin-bottom:35px;
}
#container .inner-story p:not(.ttl){
	margin-bottom:35px;
	line-height:2em;
	font-size:16px;
}
@media screen and (max-width:640px) {
	#container .inner-story p:not(.ttl){
		font-size:14px;
		line-height:2em;
		word-break: keep-all;
		overflow-wrap: break-word;
		margin-bottom:20px;
	}
}
#container .logo {
	padding-top:132px;
}

#container .caption {
	text-align:left;
	line-height:28px;
	font-weight:bold;
	vertical-align:middle;
	padding:40px 0 0 0;
	clear:both;
}

#container .caption h2 {	
    width: 100%;
	margin:0 auto 0px auto;
	font-size:22px !important;
	line-height: 28px !important;
}

#container .caption p {
	font-size:16px;
}

#container .movie {
	width:320px;
	vertical-align:middle;
	position: absolute;
	right:0;
	top:0;
}
@media screen and (max-width:640px) {
	#container .movie {
		position: static;
		display:block;
		margin:0 auto;
		width:100%;
	}
	#container .movie img{
		max-width:100%;
		display: block;
	}
}
#container .lead {
	font-size:18px;
	text-align:center;
	line-height:1.8em;
	margin-bottom:45px;
}
@media screen and (max-width:640px) {
	#container .lead {
		font-size:14px;
		margin-bottom:30px;
	}
}
/*商品情報*/

#container .jacket {
	min-width:188px;
}
@media screen and (max-width:640px) {
	#container .jacket {
		min-width:0;
		width:69%;
		height:auto;
		margin-right:20px;
		max-width:134px;
	}
}
#container .product_ttl {
	display:block;
	font-size:24px;
	padding-bottom:10px;
}

#container .info {
	margin-bottom:20px;
	display:inline-block;
	vertical-align:bottom;
	width:100%;
	position: relative;
}
@media screen and (max-width:640px) {
	#container .info {
		margin:0;
	}
}
#container .bluray .info{
	margin:20px 0 0;
}
@media screen and (max-width:640px) {
	#container .bluray .info{
		margin:0;
	}
	#container .info_colmn-sp {
		display:flex;
		align-items: flex-start;
	}
}
#container .bluray {
	width:188px;
	align-items:flex-start !important;
}
#container .bluray{
	margin-right:50px;
}
@media screen and (max-width:640px) {
	#container .bluray{
		margin-right:0px;
	}
}
#container .info ul.detail{
	margin:10px 0;
	list-style-type:none;
	padding:0;
}
#container .info dl.detail{
	padding:0;
	margin:0;
	display:flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-top:30px;
	border-top:1px solid #4a4a4a;
	padding-top:30px;
}
@media screen and (max-width:640px) {
	#container .info dl.detail{
		margin-bottom:20px;
	}
}
#container .detail dt{
	width:5em;
}
#container .detail dd{
	width:calc(100% - 5em);
	padding:0;
	margin:0;
}
#container .detail_space {
	display:inline-block;
	width:2em;
}
#container .info ul.disc_contents {
	clear:both;
	text-indent:-1em;
	padding-left:1em;
	padding-top:15px;
}

#container .info ul.disc_contents li.tag ul {
	margin-left:0.8em;
}

#container .info .link {
	display:inline-block;
	padding-bottom:20px;
}
@media screen and (max-width:640px) {
	#container .info .link {
		padding-bottom:0;
	}
}
#container .info .link a{
	display:block;
	margin-bottom:12px;
	color:#fff;
}

#container .info .link a:last-of-type{
	margin-bottom:0;
}
#container .info_release {
	font-size:22px;
	line-height:1em;
	margin-bottom:10px;
}
#container .btn-buy {
	height:45px;
	display:flex !important;
	align-items:center;
	justify-content:center;
	border-radius:200px;
	border:1px solid rgb(198, 116, 152);
	box-sizing:border-box;
	max-width:210px;
	background-image: -moz-linear-gradient( 30deg, rgb(103,95,162) 0%, rgb(147,79,137) 55%, rgb(191,62,112) 100%);
	background-image: -webkit-linear-gradient( 30deg, rgb(103,95,162) 0%, rgb(147,79,137) 55%, rgb(191,62,112) 100%);
	background-image: -ms-linear-gradient( 30deg, rgb(103,95,162) 0%, rgb(147,79,137) 55%, rgb(191,62,112) 100%);
	position: relative;
	color:#fff;
	text-decoration: none;
}
#container .btn-detail {
	height:45px;
	display:flex !important;
	align-items:center;
	justify-content:center;
	border-radius:200px;
	border:1px solid #fff;
	box-sizing:border-box;
	max-width:210px;
	margin-bottom:14px;
	color:#fff;
	text-decoration: none;
}
#container .attention {
	clear:both;
	font-size:12px;
	margin-bbotom:20px;
}
#container .attention li{
	padding-left:1em;
	text-indent:-1em;
}
#container .box {
	clear:both;
	border:1px solid #848484;
	max-width:960px;
	margin:0 auto;
	padding:40px 60px;
	font-size:14px;
	font-weight:500;
	line-height:22px;
	box-sizing: border-box;
	position: relative;
	z-index: 2;
}
@media screen and (max-width:640px) {
	#container .box {
		padding:30px 20px 30px;
		margin:15px auto 0;
	}
}
#container .box::before {
	content:"";
	display:block;
	background:url("../../img/251216_2222/charm_bluray.png") no-repeat center top / contain;
	width:266px;
	height:102px;
	position: absolute;
	left:-55px;
	top:-24px;
	z-index: -1;
}
@media screen and (max-width:640px) {
	#container .box::before {
		width: 72%;
		height: 12%;
		left: -20px;
	}
}
#container .box_ttl {
	display:block;
	color:#fff;
	font-weight:bold;
	font-size:16px;
	text-align:center;
	margin:0px 0 40px 0;
}
#container .box_ttl_point {
	font-size:20px;
	display:inline-block;
	margin-top:5px;
}
#container .box_column {
	display:flex;
	align-items: flex-start;
	gap:60px;
}
@media screen and (max-width:640px) {
	#container .box_column {
		display:block;
	}
}
#container .text-link {
	text-decoration:underline;
	color:#000;
}
#container .text-link:hover {
	text-decoration:none;
	color:#000;
}


.fancybox-inner {
  overflow: hidden;
	height:auto!important;
	aspect-ratio: 16 / 9!important;
}