@charset "utf-8";

/*-------------------------------------------
  common
-------------------------------------------*/
.wrapper{
  width: 100%;
  height: auto;
  min-width: 902px;
  margin: 0 auto;
}
a:hover{
  opacity: 0.5;
  -webkit-transition: all 0.75s cubic-bezier(0.77, 0, 0.175, 1);
  transition: all 0.75s cubic-bezier(0.77, 0, 0.175, 1);
  filter: alpha(opacity=50);
}


/*-------------------------------------------
  Loader
-------------------------------------------*/
.loader-bg {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('../img/bg_repeat.png') left top repeat #e8fafc;
  z-index: 4;
}
.loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 0px;
  height: 49px;
  overflow: hidden;
  margin-top: -24.5px;
  margin-left: -147px;
  text-align: center;
  z-index: 5;
}


/*-------------------------------------------
  header
-------------------------------------------*/
header h1{
  background: url("../img/image_main.jpg") center top no-repeat;
  height: 986px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.header_container{
  width: 902px;
  margin:0 auto;
  position: relative;
  z-index: 3;
}
.dl{
  background: url('../img/bg.png') center top no-repeat;
  width: 576px;
  height: 127px;
  position: absolute;
  top: -500px;
  left: -100px;
}
.txt__dl_info{
  margin-top: 10px;
  margin-left: 140px;
}
.btn__dl{
  margin-left: 20px;
  margin-top: 10px;
}
.btn__dl li{
  float: left;
}
.btn__dl li:first-child{
  margin-top: 0.25em;
}
.btn__dl li:nth-child(3){
  margin-left: -5px;
}
.btn__dl li:nth-child(4){
  margin-left: -5px;
}


/*-------------------------------------------
  article
-------------------------------------------*/
article{
  height: auto;
  position: relative;
}
.btn__pagetop{
  position: fixed;
  right: 24px;
  bottom: 20px;
  z-index: 3;
}
.btn__pagetop:hover{
  cursor: pointer;
  opacity: 0.5;
  -webkit-transition: all 0.75s cubic-bezier(0.77, 0, 0.175, 1);
  transition: all 0.75s cubic-bezier(0.77, 0, 0.175, 1);
}


/*-------------------------------------------
  secion > lineup
-------------------------------------------*/
.lineup h2{
  margin: 65px 0 70px;
  text-align: center;
}
.lineup h3{
  font-size: 28px;
  margin-left: -0.65em;
}


/*-------------------------------------------
  secion > lineup > special
-------------------------------------------*/
.special{
  width: 902px;
  margin: 0 auto;
  opacity: 0;
}
.jk__release_special{
  width: 266px;
  height: 300px;
  float: left;
  margin-right: 48px;
}
.info__release_special{
  width: 588px;
  float: left;
}
.info__release_special dt{
  margin: 34px 0 12px;
}
.info__release_special dd{
  font-size: 16px;
  margin-left: -0.3em;
}
.special ul{
  width: 752px;
  margin: 40px auto 47px;
}
.special ul li{
  width: 237px;
  height: 237px;
  float: left;
  margin-left: 20px;
}
.special ul li:first-child{
  margin-left: 0;
}
.btn__special{
  width: 352px;
  height: 72px;
  margin: 0 auto 127px;
}


/*-------------------------------------------
  secion > lineup > normal
-------------------------------------------*/
.normal {
  width: 902px;
  margin: 0 auto;
  opacity: 0;
}
.jk__release_normal{
  width: 300px;
  height: 299px;
  float: left;
  margin-right: 31px;
  margin-left: -17px;
}
.info__release_normal{
  width: 571px;
  float: left;
}
.info__release_normal dt{
  margin: 34px 0 12px;
}
.info__release_normal dd{
  font-size: 16px;
  margin-left: -0.3em;
}
.btn__normal{
  width: 352px;
  height: 72px;
  margin: 47px auto 53px;
}


/*-------------------------------------------
  secion > tracklist
-------------------------------------------*/
.bg__line_tracklist{
  display: block;
  background: url('../img/line.png') center top no-repeat;
  height: 355px;
}
.tracklist {
  background: url('../img/bg_repeat.png') left top repeat #e8fafc;
  margin-top: -100px;
  padding-bottom: 160px;
}
.tracklist h2{
  margin: 65px 0 70px;
  text-align: center;
}
.inner__tracklist{
  width: 902px;
  margin: 0 auto;
  opacity: 0;
}
.disc1,
.disc2{
  width: 400px;
  float: left;
}
.disc1{
  margin-right: 100px;
}
.disc1 h3,
.disc2 h3,
.bluray h3{
  font-size: 28px;
  margin-bottom: 56px;
}
.disc1 h3:before{
  content: url('../img/bullet_pink.png');
  margin-right: 12px;
  position : relative;
  bottom : -0.1em;
}
.disc2 h3:before{
  content: url('../img/bullet_blue.png');
  margin-right: 12px;
  position : relative;
  bottom : -0.1em;
}
.bluray h3:before{
  content: url('../img/bullet_orange.png');
  margin-right: 12px;
  position : relative;
  bottom : -0.1em;
}
.disc1 dt,
.disc2 dt,
.bluray dt{
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin: 46px 0 16px;
}
.disc1 dt.title__medley,
.disc2 dt.title__medley{
  font-size: 16px;
  margin: 16px 0 -4px;
}
.disc1 dt:first-child,
.disc2 dt:first-child,
.bluray dt:first-child{
  margin: 0 0 16px;
}
.bluray dt{
  margin: 30px 0 16px;
}
.disc1 dd,
.disc2 dd,
.bluray{
  font-size: 12px;
  letter-spacing: 0;
  line-height: 1.5;
}
.no__disc1{
  color: #ec0081;
}
.no__disc1_medley{
  font-size: 16px;
  color: #ec0081;
}
.no__disc2{
  color: #0052e6;
}
.no__disc2_medley{
  font-size: 16px;
  color: #0052e6;
}
.no__bluray{
  color: #f89400;
}
.title__sub{
  font-size: 16px;
}
.bg__line_disc{
  display: inline-block;
  background: url('../img/line_bluray.png') center no-repeat;
  width: 902px;
  height: 20px;
  padding: 68px 0 60px;
}


/*-------------------------------------------
  footer
-------------------------------------------*/
footer{
  height: auto;
  background: #000;
}
footer ul{
  width: 176px;
  margin: 0 auto;
  padding-top: 66px;
}
footer ul li{
  float: left;
  margin-left: 24px;
}
footer ul li:first-child{
  margin-left: 0;
}
footer small{
  display: block;
  color: #fff;
  font-size: 12px;
  text-align: center;
  padding: 40px 0 70px;
}