@charset "UTF-8";

.l-main {
  background:none;
}

.sns{
	display:none;
}

.sns{
  display: flex;
}

#sp_main{
	width:100%;
	margin:0 auto;
	position:relative;
	padding-bottom:6%;
}

#sp_main h2{
	width:68%;
	margin:0 auto;
	padding-top:3%;
}

#sp_main #bullet{
	width:360rem;
	position:absolute;
	right:-80rem;
	bottom:0;
}


#limited{
	border:4px solid #c7000a;
}

#normal{
	border:4px solid #666666;
}

.sell{
	width:690rem;
	margin:0 auto 30rem;
	position:relative;
	box-sizing:border-box;
	padding:50rem 0 30rem;
}

#normal.sell{
	padding:50rem 0 20rem;
}

.sell ul.info{
	width:620rem;
	margin:0 auto;
	position:relative;
	display: flex;
  justify-content: space-between;
	align-items: start;
	flex-wrap: wrap;
}

.sell ul.info li:nth-child(1){
	width:520rem;
	margin:0 auto;
}

.sell ul.info li:nth-child(2){
	margin-top:50rem;;
}

.sell ul.info li p{
	width:400rem;
	margin:0 auto;
}

.sell ul.info li h2{
	width:500rem;
	margin:10rem auto 30rem;
}

.sell ul.info li span{
	display:block;
	font-size:26rem;
	margin-bottom:30rem;
}

.sell .tokuten{
	width:630rem;
	margin:20rem auto 0;
	position:relative;
	padding:60rem 25rem;
	background-image:
    url("../img/disc/sp_bullet.png"), url("../img/disc/sp_bluray_bg.png");
  background-repeat: no-repeat, repeat-y;
  background-position:
    top right,
    left top;
  background-size:
		246rem auto,
		100% auto;
}

.sell .tokuten h3{
	width:214rem;
	margin:0 auto 40rem;
}

.sell .tokuten .num li,
.sell .tokuten .dot li,
.sell .tokuten .caution li {
  position: relative;
  padding-left: 1.2em;
	line-height:1.7;
	font-size:25rem;
}

.sell .tokuten .caution {
	margin-top:40rem;
}

.sell .tokuten .caution li {
	font-size:22rem;
}

.sell .tokuten .num li::before,
.sell .tokuten .dot li::before,
.sell .tokuten .caution li::before {
  position: absolute;
  left: 0;
  top: 0;
}

.sell .tokuten .num li:nth-child(1)::before {
  content: "①";
}

.sell .tokuten .num li:nth-child(2)::before {
  content: "②";
}

.sell .tokuten .num li:nth-child(3)::before {
  content: "③";
}

.sell .tokuten .num li:nth-child(4)::before {
  content: "④";
}

.sell .tokuten .num li:nth-child(5)::before {
  content: "⑤";
}

.sell .tokuten .num li:nth-child(6)::before {
  content: "⑥";
}

.sell .tokuten .num li:nth-child(7)::before {
  content: "⑦";
}

.sell .tokuten .dot li::before {
  content: "・";
  left: 0.3%;
}

.sell .tokuten .caution li::before {
  content: "※";
}


#cp_block{
	width:100%;
	margin:30rem auto 0;
	position:relative;
	background: url(../img/disc/sp_dot.png) repeat-y left top #200002;
	background-size:100% auto;
}

#cp_block_inner{
	width:100%;
	max-width:100%;;
	margin:0 auto 0;
}

#cp_block #cp{
	width:100%;
	margin:0 auto;
	position:relative;
}

#cp_block #cp h2{
	width:533rem;
	margin:0 auto;
	position:relative;
	padding-top:50rem;
}

#cp_block #cp p.lead{
	font-size:27rem;
	text-align:center;
	margin-top:50rem;
	line-height:2.0;
}

#cp_block #cp p.lead span{
	color:#c7000a;
	font-weight:700;
}

#cp_block #cp ul.cp_info{
	width:650rem;
	margin:60rem auto 0;
	position:relative;
	display: flex;
  justify-content: space-between;
	align-items: start;
	flex-wrap: wrap;
}

#cp_block #cp ul.cp_info li{
	width:100%;
}

#cp_block #cp ul.cp_info li:nth-child(1){
	margin-bottom:60rem;
}


#cp_block #cp ul.cp_info li h3{
	font-size:28rem;
	text-align:center;
	background-color:#c7000a;
}

#cp_block #cp ul.cp_info li h4{
	width:606rem;
	margin:60rem auto 30rem;
}

#cp_block #cp ul.cp_info li p{
	font-size:26rem;
	padding-top:20rem;
}

#cp_block #cp ul.cp_info li p span{
	font-size:22rem;
}

#cp_block #cp .shop{
	width:650rem;
	margin:50rem auto 0;
	background-color:#fff;
	padding-bottom:30rem;
}

#cp_block #cp .shop h5{
	font-size:28rem;
	text-align:center;
	background-color:#c7000a;
	padding:5rem 0;
}

#cp_block #cp .shop ul.list{
	width:600rem;
	margin:30rem auto 0;
}

#cp_block #cp .shop ul.list li {
  position: relative;
  padding-left: 1.2em;
	line-height:1.7;
	font-size:22rem;
	color:#333333;
}

#cp_block #cp .shop ul.list li::before {
  position: absolute;
  left: 0;
  top: 0;
}

#cp_block #cp .shop ul.list li.dot::before {
  content: "・";
	left:4rem;
}

#cp_block #cp .shop ul.list li.caution::before,
#cp_block #cp .shop ul.list li.caution2::before {
  content: "※";
}

#cp_block #cp .shop ul.list li.caution {
  font-size:22rem;
}

#cp_block #cp .shop ul.list li.caution2 {
	margin-top:50rem;
}

h2.tenpo{
	width:417rem !important;
	margin:20rem auto 60rem !important;
}

#cp_block #cp .block{
	width:650rem;
	background-color:#fff;
	margin:0 auto 60rem;
	padding-bottom:50rem;
}

#cp_block #cp .block h3{
	font-size:28rem;
	padding:4rem 0;
	text-align:center;
	background-color:#c7000a;
	margin-bottom:60rem;
}

#cp_block #cp .block ul.block_shop{
	width:580rem;
	margin:30rem auto 0;
	display: flex;
  justify-content: space-between;
	align-items: start;
	flex-wrap: wrap;
}

#cp_block #cp .block ul.block_shop.line{
	border-top:1px solid #000000;
	padding-top:50rem;
}

#cp_block #cp .block ul.block_shop li:nth-child(1){
	width:100%;
	text-align:center;
	margin-bottom:55rem;
}

#cp_block #cp .block ul.block_shop li:nth-child(1) img{
	width:350rem;
}

#cp_block #cp .block ul.block_shop li:nth-child(2){
	width:100%;
	color:#333333;
	font-size:26rem;
}

#cp_block #cp .block ul.block_shop li:nth-child(2) p{
	margin-bottom:20rem;
	line-height:1.6;
}

#cp_block #cp .block ul.block_shop li:nth-child(2) p span{
	font-size:32rem;
	font-weight:600;
}

.botan{
	width:550rem;
	margin:50rem auto 0;
}

.botan a{
	display:block;
    transition: opacity .3s;
}

.botan a:hover{
    opacity: .8;
}

.red{
	font-size:22rem;
	text-align:center;
	background-color:#c7000a;
	color:#fff;
	font-weight:600;
	padding:5rem 0;
	margin-bottom:40rem;
}

.black{
	font-size:22rem;
	text-align:center;
	background-color:#000;
	color:#fff;
	font-weight:600;
	padding:5rem 0;
	margin-bottom:40rem;
}

.copy{
	font-size:14rem;
	text-align:center;
	padding-bottom:30rem;
}

  /* 769～1200px のときに適用 */
@media screen and (min-width: 769px) and (max-width: 1200px) {
	.sns{
	  display: flex;
	}

	#main{
		width:100%;
		max-width:1300px;
		margin:0 auto 60px;
		position:relative;
	}

	#bullet{
		width:370px;
		position:absolute;
		right:-70px;
		bottom:0;
	}

	#main ul{
		width:100%;
		max-width:1300px;
		margin:0 auto;
		position:relative;
		display: flex;
	  justify-content: start;
		align-items: center;
		flex-wrap: wrap;
	}

	#main ul li:nth-child(1){
		width:58.3%;
	}

	#main ul li:nth-child(2){
		width:36.15%;
		margin-left:1.2%;
	}

	#limited{
		border:4px solid #c7000a;
	}

	#normal{
		border:4px solid #666666;
	}

	.sell{
		width:100%;
		max-width:1300px;
		margin:0 auto 30px;
		position:relative;
		box-sizing:border-box;
		padding:80px 0;
	}

	#normal.sell{
		padding:80px 0 20px;
	}

	.sell ul.info{
		width:88%;
		margin:0 auto 2%;
		position:relative;
		display: flex;
	  justify-content: space-between;
		align-items: start;
		flex-wrap: wrap;
	}

	.sell ul.info li{
		width:47.7% !important;
		margin-top:0 !important;
	}

	.sell ul.info li:nth-child(1) img{
		width:95%;
	}

	.sell ul.info li p{
		width:64%;
		margin:0 0 0 14%;
	}

	.sell ul.info li h2{
		width:76%;
		margin:10px 0 10px 8%;
	}

	.sell ul.info li span{
		display:block;
		font-size:22.5rem;
		margin-bottom:15px;
	}

	.sell .tokuten{
		width:84%;
		margin:20px auto 0;
		position:relative;
		background: url(../img/disc/bluray_bg.png) no-repeat right top #c7000a;
		background-size:auto 100%;
		padding:2.2% 3%;
	}

	.sell .tokuten h3{
		width:14.6%;
		margin:0 0 1.2% 0;
	}

	.sell .tokuten .num li,
	.sell .tokuten .dot li,
	.sell .tokuten .caution li {
	  position: relative;
	  padding-left: 1.2em;
		line-height:1.7;
		font-size:22rem;
	}

	.sell .tokuten .caution {
		margin-top:2%;
	}

	.sell .tokuten .caution li {
		font-size:20rem;
	}

	.sell .tokuten .num li::before,
	.sell .tokuten .dot li::before,
	.sell .tokuten .caution li::before {
	  position: absolute;
	  left: 0;
	  top: 0;
	}

	.sell .tokuten .num li:nth-child(1)::before {
	  content: "①";
	}

	.sell .tokuten .num li:nth-child(2)::before {
	  content: "②";
	}

	.sell .tokuten .num li:nth-child(3)::before {
	  content: "③";
	}

	.sell .tokuten .num li:nth-child(4)::before {
	  content: "④";
	}

	.sell .tokuten .num li:nth-child(5)::before {
	  content: "⑤";
	}

	.sell .tokuten .num li:nth-child(6)::before {
	  content: "⑥";
	}

	.sell .tokuten .num li:nth-child(7)::before {
	  content: "⑦";
	}

	.sell .tokuten .dot li::before {
	  content: "・";
	  left: 0.3%;
	}

	.sell .tokuten .caution li::before {
	  content: "※";
	}


	#cp_block{
		width:100%;
		margin:30px auto 0;
		position:relative;
		background: url(../img/disc/dot.png) repeat-y left top #200002;
	}

	#cp_block_inner{
		width:100%;
		max-width:1300px;
		margin:0 auto 0;
	}

	#cp_block #cp{
		width:84%;
		margin:0 auto;
		position:relative;
	}

	#cp_block #cp h2{
		width:48.6%;
		margin:0 auto;
		position:relative;
		padding-top:70px;
	}

	#cp_block #cp p.lead{
		font-size:42rem;
		text-align:center;
		margin-top:20px;
	}

	#cp_block #cp p.lead span{
		color:#c7000a;
		font-weight:700;
	}

	#cp_block #cp ul.cp_info{
		width:100%;
		margin:70px auto 0;
		position:relative;
		display: flex;
	  justify-content: space-between;
		align-items: start;
		flex-wrap: wrap;
	}

	#cp_block #cp ul.cp_info li{
		width:47.7%;
	}

	#cp_block #cp ul.cp_info li h3{
		font-size:30rem;
		text-align:center;
		background-color:#c7000a;
	}

	#cp_block #cp ul.cp_info li h4{
		width:90%;
		margin:40px auto 20px;
	}

	#cp_block #cp ul.cp_info li p{
		font-size:22rem;
		padding-top:20px;
	}

	#cp_block #cp ul.cp_info li p span{
		font-size:20rem;
	}

	#cp_block #cp .shop{
		width:100%;
		background-color:#fff;
		margin-top:40px;
		padding-bottom:30px;
	}

	#cp_block #cp .shop h5{
		font-size:30rem;
		text-align:center;
		background-color:#c7000a;
	}

	#cp_block #cp .shop ul.list{
		width:78%;
		margin:30px auto 0;
	}

	#cp_block #cp .shop ul.list li {
	  position: relative;
	  padding-left: 1.2em;
		line-height:1.7;
		font-size:22rem;
		color:#333333;
	}

	#cp_block #cp .shop ul.list li::before {
	  position: absolute;
	  left: 0;
	  top: 0;
	}

	#cp_block #cp .shop ul.list li.dot::before {
	  content: "・";
		left:0.4%;
	}

	#cp_block #cp .shop ul.list li.caution::before,
	#cp_block #cp .shop ul.list li.caution2::before {
	  content: "※";
	}

	#cp_block #cp .shop ul.list li.caution {
	  font-size:20rem;
	}

	#cp_block #cp .shop ul.list li.caution2 {
		margin-top:20px;
	}

	h2.tenpo{
		width:37% !important;
		margin:10px auto 40px !important;
	}

	#cp_block #cp .block{
		width:100%;
		background-color:#fff;
		margin-bottom:60px;
		padding-bottom:50px;
	}

	#cp_block #cp .block h3{
		font-size:30rem;
		text-align:center;
		background-color:#c7000a;
		margin-bottom:50px;
	}

	#cp_block #cp .block ul.block_shop{
		width:78%;
		margin:30px auto 0;
		display: flex;
	  justify-content: space-between;
		align-items: start;
		flex-wrap: wrap;
	}

	#cp_block #cp .block ul.block_shop.line{
		border-top:1px solid #000000;
		padding-top:50px;
	}



	#cp_block #cp .block ul.block_shop li:nth-child(1){
		width:25%;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(2){
		width:70%;
		color:#333333;
		font-size:22rem;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(2) p{
		margin-bottom:20px;
		line-height:1.4;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(2) p span{
		font-size:28rem;
		font-weight:600;
	}

	.botan{
		width:32%;
		margin:50px auto 0;
	}

	.botan a{
		display:block;
    transition: opacity .3s;
	}

	.botan a:hover{
    opacity: .8;
	}

	.red{
		font-size:22.5rem;
		text-align:center;
		background-color:#c7000a;
		color:#fff;
		font-weight:600;
		padding:1% 0;
		margin-bottom:30px;
	}

	.black{
		font-size:22.5rem;
		text-align:center;
		background-color:#000;
		color:#fff;
		font-weight:600;
		padding:1% 0;
		margin-bottom:30px;
	}

	.copy{
		font-size:20rem;
		text-align:center;
		padding-bottom:30px;
	}
}

/* PC */
@media screen and (min-width: 1201px) {
	.sns{
	  display: flex;
	}

	#main{
		width:100%;
		max-width:1300px;
		margin:0 auto 60px;
		position:relative;
	}

	#bullet{
		width:370px;
		position:absolute;
		right:-70px;
		bottom:0;
	}

	#main ul{
		width:100%;
		max-width:1300px;
		margin:0 auto;
		position:relative;
		display: flex;
	  justify-content: start;
		align-items: center;
		flex-wrap: wrap;
	}

	#main ul li:nth-child(1){
		width:58.3%;
	}

	#main ul li:nth-child(2){
		width:36.15%;
		margin-left:1.2%;
	}

	#limited{
		border:4px solid #c7000a;
	}

	#normal{
		border:4px solid #666666;
	}

	.sell{
		width:100%;
		max-width:1300px;
		margin:0 auto 30px;
		position:relative;
		box-sizing:border-box;
		padding:80px 0;
	}

	#normal.sell{
		padding:80px 0 20px;
	}

	.sell ul.info{
		width:88%;
		margin:0 auto 2%;
		position:relative;
		display: flex;
	  justify-content: space-between;
		align-items: start;
		flex-wrap: wrap;
	}

	.sell ul.info li{
		width:47.7% !important;
		margin-top:0 !important;
	}

	.sell ul.info li:nth-child(1) img{
		width:95%;
	}

	.sell ul.info li p{
		width:64%;
		margin:0 0 0 14%;
	}

	.sell ul.info li h2{
		width:76%;
		margin:10px 0 10px 8%;
	}

	.sell ul.info li span{
		display:block;
		font-size:14px;
		margin-bottom:15px;
	}

	.sell .tokuten{
		width:84%;
		margin:20px auto 0;
		position:relative;
		background: url(../img/disc/bluray_bg.png) no-repeat right top #c7000a;
		background-size:auto 100%;
		padding:2.2% 3%;
	}

	.sell .tokuten h3{
		width:15.6%;
		margin:0 0 1.2% 0;
	}

	.sell .tokuten .num li,
	.sell .tokuten .dot li,
	.sell .tokuten .caution li {
	  position: relative;
	  padding-left: 1.2em;
		line-height:1.7;
		font-size:14px;
	}

	.sell .tokuten .caution {
		margin-top:2%;
	}

	.sell .tokuten .caution li {
		font-size:12px;
	}

	.sell .tokuten .num li::before,
	.sell .tokuten .dot li::before,
	.sell .tokuten .caution li::before {
	  position: absolute;
	  left: 0;
	  top: 0;
	}

	.sell .tokuten .num li:nth-child(1)::before {
	  content: "①";
	}

	.sell .tokuten .num li:nth-child(2)::before {
	  content: "②";
	}

	.sell .tokuten .num li:nth-child(3)::before {
	  content: "③";
	}

	.sell .tokuten .num li:nth-child(4)::before {
	  content: "④";
	}

	.sell .tokuten .num li:nth-child(5)::before {
	  content: "⑤";
	}

	.sell .tokuten .num li:nth-child(6)::before {
	  content: "⑥";
	}

	.sell .tokuten .num li:nth-child(7)::before {
	  content: "⑦";
	}

	.sell .tokuten .dot li::before {
	  content: "・";
	  left: 0.3%;
	}

	.sell .tokuten .caution li::before {
	  content: "※";
	}


	#cp_block{
		width:100%;
		margin:30px auto 0;
		position:relative;
		background: url(../img/disc/dot.png) repeat-y left top #200002;
	}

	#cp_block_inner{
		width:100%;
		max-width:1300px;
		margin:0 auto 0;
	}

	#cp_block #cp{
		width:84%;
		margin:0 auto;
		position:relative;
	}

	#cp_block #cp h2{
		width:48.6%;
		margin:0 auto;
		position:relative;
		padding-top:70px;
	}

	#cp_block #cp p.lead{
		font-size:26px;
		text-align:center;
		margin-top:20px;
	}

	#cp_block #cp p.lead span{
		color:#c7000a;
		font-weight:700;
	}

	#cp_block #cp ul.cp_info{
		width:100%;
		margin:70px auto 0;
		position:relative;
		display: flex;
	  justify-content: space-between;
		align-items: start;
		flex-wrap: wrap;
	}

	#cp_block #cp ul.cp_info li{
		width:47.7%;
	}

	#cp_block #cp ul.cp_info li h3{
		font-size:20px;
		text-align:center;
		background-color:#c7000a;
	}

	#cp_block #cp ul.cp_info li h4{
		width:90%;
		margin:40px auto 20px;
	}

	#cp_block #cp ul.cp_info li p{
		font-size:14px;
		padding-top:20px;
	}

	#cp_block #cp ul.cp_info li p span{
		font-size:12px;
	}

	#cp_block #cp .shop{
		width:100%;
		background-color:#fff;
		margin-top:40px;
		padding-bottom:30px;
	}

	#cp_block #cp .shop h5{
		font-size:20px;
		text-align:center;
		background-color:#c7000a;
	}

	#cp_block #cp .shop ul.list{
		width:78%;
		margin:30px auto 0;
	}

	#cp_block #cp .shop ul.list li {
	  position: relative;
	  padding-left: 1.2em;
		line-height:1.7;
		font-size:14px;
		color:#333333;
	}

	#cp_block #cp .shop ul.list li::before {
	  position: absolute;
	  left: 0;
	  top: 0;
	}

	#cp_block #cp .shop ul.list li.dot::before {
	  content: "・";
		left:0.4%;
	}

	#cp_block #cp .shop ul.list li.caution::before,
	#cp_block #cp .shop ul.list li.caution2::before {
	  content: "※";
	}

	#cp_block #cp .shop ul.list li.caution {
	  font-size:12px;
	}

	#cp_block #cp .shop ul.list li.caution2 {
		margin-top:20px;
	}

	h2.tenpo{
		width:37% !important;
		margin:10px auto 40px !important;
	}

	#cp_block #cp .block{
		width:100%;
		background-color:#fff;
		margin-bottom:60px;
		padding-bottom:50px;
	}

	#cp_block #cp .block h3{
		font-size:20px;
		text-align:center;
		background-color:#c7000a;
		margin-bottom:50px;
	}

	#cp_block #cp .block ul.block_shop{
		width:78%;
		margin:30px auto 0;
		display: flex;
	  justify-content: space-between;
		align-items: start;
		flex-wrap: wrap;
	}

	#cp_block #cp .block ul.block_shop.line{
		border-top:1px solid #000000;
		padding-top:50px;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(1){
		width:25%;
		margin-bottom:0;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(1) img{
		width:100%;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(2){
		width:70%;
		color:#333333;
		font-size:14px;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(2) p{
		margin-bottom:20px;
		line-height:1.4;
	}

	#cp_block #cp .block ul.block_shop li:nth-child(2) p span{
		font-size:18px;
		font-weight:600;
	}

	.botan{
		width:32%;
		margin:50px auto 0;
	}

	.botan a{
		display:block;
    transition: opacity .3s;
	}

	.botan a:hover{
    opacity: .8;
	}

	.red{
		font-size:16px;
		text-align:center;
		background-color:#c7000a;
		color:#fff;
		font-weight:600;
		padding:1% 0;
		margin-bottom:30px;
	}

	.black{
		font-size:16px;
		text-align:center;
		background-color:#000;
		color:#fff;
		font-weight:600;
		padding:1% 0;
		margin-bottom:30px;
	}

	.copy{
		font-size:12px;
		text-align:center;
		padding-bottom:30px;
	}

}


/* --------------------------------------------------
animation
-------------------------------------------------- */

#main ul li:nth-child(1),
#main ul li:nth-child(2) h1,
#main ul li:nth-child(2) h2,
#sp_main h1,
#sp_main h2{
	opacity: 0;
}

.is_loaded #main ul li:nth-child(1),
.is_loaded #sp_main h1{
  animation: fadeIn 1.0s cubic-bezier(.17,.62,.17,.92) 0.6s forwards;
}

.is_loaded #main ul li:nth-child(2) h1,
.is_loaded #sp_main h2{
  animation: fadeInUp 1.0s cubic-bezier(.17,.62,.17,.92) 1.0s forwards;
}

.is_loaded #main ul li:nth-child(2) h2{
  animation: fadeInUp 1.0s cubic-bezier(.17,.62,.17,.92) 1.2s forwards;
}




