@charset "UTF-8";
/* CSS Document */

/* ////////////////////////////////////////////////////////////////////////////////

	Common

//////////////////////////////////////////////////////////////////////////////// */

body {
  font-family: YakuHanJP,"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",
    "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 14px;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
  background-color: #000;
  color: #fff;
}

img {
  max-width: 100%;
  height: auto;
}
ul {
  list-style: none;
}

a {
  color: #fff;
}

.anim {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.anim.on {
  opacity: 1;
}

main {
  max-width: 1126px;
  margin: 0 auto;
  padding: 80px 80px 120px;
}

.wrap {
  max-width: 936px;
  margin: 0 auto 80px;
}

@media screen and (min-width: 813px) {
  .sp {
    display: none;
  }

  a {
    transition: all 0.3s ease-out;
  }
  a:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 812px) {
  body{
    font-size: min(3.6vw, 14px)
  }
  .pc {
    display: none;
  }

  main {
    padding: 18vw 6vw 20vw;
  }
  .wrap {
    margin: 0 auto 16vw;
  }
}

/* ////////////////////////////////////////////////////////////////////////////////

	Footer

//////////////////////////////////////////////////////////////////////////////// */
footer {
  padding: 40px;
}
footer .ftrLogo {
  width: 110px;
  margin: 0 auto;
}

@media screen and (max-width: 812px) {
  footer {
    padding: 0vw 6vw 10vw;
  }
}

/* ////////////////////////////////////////////////////////////////////////////////

	mainVisual

//////////////////////////////////////////////////////////////////////////////// */

/* #mainVisual {
	height: 100vh;
    margin-left: 40px;
	opacity: 0;
	animation: op 1s ease-out .5s forwards;
} */
#mainVisual {
  max-width: 1440px;
  margin: 3% auto 0;
  padding: 0 5vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  animation: op 1s ease-out 0.5s forwards;
}
.sknLogo {
  padding: 0 0 30px;
}
h1 {
  font-size: min(4.8vw, 28px);
}
.mainTitle{
  flex: 1;
  padding: 0 3vw 0 0;
}
.mainImg {
  flex: 1;
}
.mainTitle p {
  font-size: min(3.6vw, 16px);
}
.mainDate {
  font-size: min(3.6vw, 16px);
}
.date {
  font-size: min(3.6vw, 16px);
  margin-bottom: min(6vw, 40px);
}
.mainTitle .btnWhite {
  text-align: left;
  margin: 20px 0;
}
.mainTitle .btnWhite a {
  margin: 0 ;
  width: 400px;
}

@keyframes op {
  0% {
    opacity: 0;
    filter: blur(60px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
  }
}

@media screen and (max-width: 812px) {
  #mainVisual {
    padding: 7vw 6vw 0vw;
    flex-direction: column;
    align-items: flex-start;
  }
  .mainTitle{
    flex: 1;
    padding-bottom: 30px;
  }
  .mainImg {
    padding-bottom: 40px;
  }
  .sknLogo {
    /* margin: 0 auto; */
    width: 110px;
  }

}

/* ////////////////////////////////////////////////////////////////////////////////

	common

//////////////////////////////////////////////////////////////////////////////// */

h3 {
  text-align: center;
  font-size: min(8.6vw, 56px);
  font-weight: bold;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  line-height: 1.6;
  margin-bottom: 30px;
  font-family: "Anton", sans-serif;
}
h4{
  font-size: min(4vw, 18px);
}
.lead {
  margin-bottom: 80px;
}
.lead p {
  font-size: 16px;
  margin-bottom: 40px;
  line-height: 2;
}

.iframeBox div {
  position: relative;
  padding-top: 56.25%;
  margin-bottom: 80px;
}
.iframeBox div iframe,
.iframeBox div video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.btnWhite {
  text-align: center;
  margin-bottom: 40px;
}
.btnWhite a {
  display: inline-block;
  background-color: #fff;
  border: #000 solid 1px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
  color: #000;
  text-decoration: none;
  padding: 15px 50px;
  margin: 0 20px;
}

.btnBlack {
  text-align: center;
  margin-bottom: 40px;
}
.btnBlack a {
  display: inline-block;
  background-color: #000;
  border: #fff solid 1px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  padding: 15px 50px;
  border-radius: 40px;
  margin: 0 20px;
}

@media screen and (max-width: 812px) {
  h3 {
    font-size: min(8.6vw, 56px);
    margin-bottom: 4vw;
  }

  .lead {
    text-align: left;
    margin-bottom: 10vw;
  }
  .lead p {
    font-size: 3.2vw;
    margin-bottom: 8vw;
  }

.btnWhite,
.btnBlack {
  margin: 8vw 0 8vw;
  }
.btnWhite a,
.btnBlack a {
    font-size: 3.4vw;
    padding: 3vw 4vw;
    margin: 0;
    width: 80vw;
  }
  #mainVisual .btnWhite:nth-child(1) {
    margin: 40px auto 0;
  }
  #mainVisual .btnWhite {
    margin: 20px auto 0;
    text-align: center;
  }
}

/* ////////////////////////////////////////////////////////////////////////////////

	Tour Bluray

//////////////////////////////////////////////////////////////////////////////// */

#tourBluray main {
  padding-top: 120px;
}

/* #tourBluray #mainVisual {
	background: url("../image/main_mv_pc.png") no-repeat center center;
	background-size: auto 100%;
    margin-left: 0;
} */

@media screen and (max-width: 1024px) {
  #tourBluray main {
    padding: 18vw 6vw 20vw;
  }

  /* #tourBluray #mainVisual {
		background: url("../image/main_mv.png") no-repeat center center;
		background-size: auto 100%;
		padding-top: 142%;
	} */
}

/* Release & Shop セクション */
.discInfo {
  border-top: #ccc solid 1px;
}

.discInfo li {
  padding: min(6vw, 30px) 0;
  border-bottom: #ccc solid 1px;
}

.discInfo li h5 {
  font-size: min(3.6vw, 16px);
  margin-bottom: min(3vw, 15px);
}

.discInfo li h5 .yellowTxt {
  display: block;
  font-size: 0.9em;
  color: #fff50e;
}

.discLeftBox {
  padding-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .discBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .discLeftBox {
    width: 35%;
    padding-bottom: 0;
  }

  .discRightBox {
    width: 60%;
  }
}
/* Release & Shop セクション */

/* Shop セクション */
.shopList {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.shopList li {
  width: 32%;
}

.shopList li a {
  display: block;
  background-color: #fff;
  color: #000;
  text-decoration: none;
  text-align: center;
  font-size: min(3.2vw, 14px);
  font-weight: bold;
  padding: min(4vw, 18px) min(2vw, 10px);
}

@media screen and (min-width: 821px) {
  .shopList li:nth-child(n + 4) {
    margin-top: 20px;
  }
}

@media screen and (max-width: 820px) {
  .shopList {
    display: block;
  }

  .shopList li {
    width: 100%;
  }

  .shopList li + li {
    margin-top: min(4vw, 20px);
  }
}
/* Shop セクション */

/* 限定特典 */
.edition {
  padding-top: min(10vw, 60px);
}

.edition h5 {
  font-size: min(4vw, 18px);
  margin-bottom: min(1vw, 5px);
}

.edition .price {
  font-size: min(3.6vw, 16px);
  margin-bottom: min(4vw, 20px);
}

.edition .recorded dt {
  padding-bottom: min(3vw, 10px);
  font-weight: bold;
}

.edition .recorded dd {
  border-top: #ccc dotted 1px;
  padding: min(3vw, 12px) 0;
}

.edition .benefits {
  margin-top: min(6vw, 40px);
}

.edition .benefits h6 {
  background-color: #666666;
  padding: 5px;
  font-size: min(3.2vw, 18px);
  text-align: center;
}

.edition .benefits p {
  font-weight: normal;
  margin-top: min(4vw, 20px);
}

.edition .benefits p a {
  color: #fff;
  text-decoration: underline;
}

.edition .benefits p strong {
  font-weight: bold;
  text-decoration: underline;
}

.edition .reserve {
  background-color: #fff;
  color: #000;
  text-align: center;
  padding: min(4vw, 20px) min(5vw, 20px);
  margin-top: min(6vw, 40px);
}

.edition .reserve a {
  display: block;
  border: #000 solid 2px;
  color: #000;
  text-decoration: none;
  font-size: min(3.4vw, 16px);
  font-weight: bold;
  padding: min(3vw, 15px);
  max-width: 300px;
  width: 100%;
  margin: min(3vw, 15px) auto 0;
}
/* 限定特典 */

/* カルーセル */
.carousel-container {
  margin: 60px auto;
}

.product-carousel {
  width: 100%;
  margin: 0 auto;
}

.product-carousel img {
  width: 100%;
  height: auto;
}

/* スライダーの矢印カスタマイズ */
.slick-prev,
.slick-next {
  width: 30px;
  height: 30px;
  z-index: 1;
}

.slick-prev {
  left: -35px;
}

.slick-next {
  right: -35px;
}

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
  .carousel-container {
    margin: 30px auto;
  }

  .slick-prev {
    left: -25px;
  }

  .slick-next {
    right: -25px;
  }
}