/* ================================================== *
 *
 *  Override
 *
 * ================================================== */
.contentsArea {
  background: #fff;
}
.contentsArea img {
  display: inline;
  max-width: none;
}

/*
@media screen and (max-width: 480px) {
  .contentsArea {
    width: 480px;
  }
}
*/

/* ================================================== *
 *
 *  Layouts
 *
 * ================================================== */
.l-all {
  background: #fff;
}
.l-all.is-debug {
  background: url("../img/debug.jpg") no-repeat 50% 0;
  min-height: 4064px;
}
/* ================================================== *
 *
 *  Modules
 *
 * ================================================== */
/* ------------------------------------------------- *
 *  Common
 * ------------------------------------------------- */
.baseBlk {
  width: 980px;
  margin-left: auto;
  margin-right: auto;
}
/* ------------------------------------------------- *
 *  mainBlk
 * ------------------------------------------------- */
.mainBlk {
  position: relative;
  height: 556px;
  background: url("../img/bg_main.jpg") repeat-x 0 0;
}
.mainBlk-btn {
  position: absolute;
  top: 481px;
  left: 50%;
  top: 407px;
  margin-left: -251px;
}
html.no-opacity .mainBlk-btn {
  position: absolute;
  top: 481px;
  left: 50%;
}
.mainBlk-blk1 {
  height: 481px;
  overflow: hidden;
  position: relative;
  background: url("../img/bg_main.jpg") repeat-x 0 0;
}
.mainBlk-blk1 .loading {
  height: 1px;
  width: 0px;
  background: #c69cc5;
  position: absolute;
  top: 336px;
  left: 50%;
  margin-left: -150px;
}
html.no-opacity .mainBlk-blk1 .loading {
  display: none;
}
.mainBlk-blk1 .logo {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -65px 0 0 -78px;
}
html.no-opacity .mainBlk-blk1 .logo {
  position: absolute;
  top: 40px;
  left: 20px;
  margin: 0;
}
.mainBlk-blk1 .attention {
  position: absolute;
  top: 414px;
  left: 20px;
  display: none;
}
.mainBlk-blk1 .shibuki {
  position: absolute;
  top: 142px;
  left: 34px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .shibuki {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .shibuki2 {
  position: absolute;
  top: 72px;
  left: 314px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .shibuki2 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .packageshadow {
  position: absolute;
  top: 420px;
  left: 330px;
  display: none;
}
html.no-opacity .mainBlk-blk1 .packageshadow {
  display: block;
}
.mainBlk-blk1 .bottoleshadow {
  position: absolute;
  top: 434px;
  left: 503px;
  display: none;
}
html.no-opacity .mainBlk-blk1 .bottoleshadow {
  display: block;
}
.mainBlk-blk1 .bottole2 {
  position: absolute;
  top: 445px;
  left: 505px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .bottole2 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .package2 {
  position: absolute;
  top: 431px;
  left: 345px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .package2 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .bottole {
  position: absolute;
  top: 244px;
  left: 504px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .bottole {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .package {
  position: absolute;
  top: 201px;
  left: 346px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .package {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .txt1 {
  position: absolute;
  top: 36px;
  left: 870px;
  width: 93px;
}
.mainBlk-blk1 .txt1 img {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .txt1 img {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .txt2 {
  width: 33px;
  position: absolute;
  top: 133px;
  left: 831px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .txt2 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .txt3 {
  width: 47px;
  position: absolute;
  top: 133px;
  left: 784px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .mainBlk-blk1 .txt3 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.mainBlk-blk1 .bar {
  height: 1px;
  width: 0;
  background: #c69cc5;
  position: absolute;
  top: 122px;
  left: 786px;
}
html.no-opacity .mainBlk-blk1 .bar {
  width: 79px;
}
/* ------------------------------------------------- *
 *  blk1
 * ------------------------------------------------- */
.blk1 {
  padding-top: 49px;
}
.blk1-inner {
  margin-left: 137px;
}
.blk1-blk {
  float: left;
  width: 191px;
  text-align: center;
}
.blk1-blk .txt {
  margin-top: 11px;
}
.blk1-blk.n1 .txt {
  padding-left: 12px;
}
.blk1-blk.n2 {
  margin-left: 66px;
}
.blk1-blk.n2 .txt {
  margin-left: -14px;
}
.blk1-blk.n3 {
  margin-left: 80px;
}
.blk1-blk.n3 .txt {
  margin-left: -22px;
}
/* ------------------------------------------------- *
 *  blk2
 * ------------------------------------------------- */
.blk2-blk1 {
  height: 180px;
}
.blk2-blk1-inner2 {
  background: url("../img/bg_blk1.png") repeat-x 0 0;
  display: none;
  height: 100%;
  overflow: hidden;
  margin-bottom: 27px;
}
html.no-opacity .blk2-blk1-inner2 {
  display: block;
}
.blk2-blk1-inner {
  background: url("../img/bg_blk2.png") no-repeat 50% 0;
  height: 100%;
}
.blk2-blk1-txt1 {
  padding-top: 20px;
  margin-bottom: 9px;
}
.blk2-blk2 {
  position: relative;
  height: 700px;
}
.blk2-blk2 .mask {
  background: rgba(255,255,255,0.9);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.blk2-blk2-txt1Box {
  position: absolute;
  left: 50%;
  width: 401px;
  margin-left: -380px;
}
.blk2-blk2-txt1Box img {
  vertical-align: top;
}
.blk2-blk2-txt2Box {
  position: absolute;
  top: 72px;
  left: 59px;
}
.blk2-margin {
  height: 244px;
}
.blk2-blk3 {
  width: 725px;
  height: 359px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
.blk2-blk3 .dotline {
  position: absolute;
  top: 191px;
  height: 1px;
  line-height: 1px;
}
.blk2-blk3 .bottle {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -104px;
}
.blk2-blk3 .bottle-shadow {
  position: absolute;
  top: 312px;
  left: 50%;
  margin-left: -104px;
}
.blk2-blk3 .txt1Box {
  position: absolute;
  top: 125px;
  left: 20px;
}
.blk2-blk3 .txt2Box {
  position: absolute;
  top: 150px;
  left: 478px;
}
.blk2-blk3 .level {
  background: url("../img/blk2_level.png") no-repeat 0 0;
  width: 230px;
  height: 33px;
  margin-bottom: 22px;
  position: relative;
}
.blk2-blk3 .level .star {
  width: 18px;
  height: 18px;
  width: 200px;
  height: 200px;
}
html.opacity .blk2-blk3 .level .star img {
  width: 100%;
  height: auto;
}
.blk2-blk3 .level .star1 {
  position: absolute;
  top: -90px;
  left: 30px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .blk2-blk3 .level .star1 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  position: absolute;
  top: 5px;
  left: 125px;
}
.blk2-blk3 .level .star2 {
  position: absolute;
  top: -90px;
  left: 95px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .blk2-blk3 .level .star2 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  position: absolute;
  top: 5px;
  left: 145px;
}
.blk2-blk3 .points .last-child {
  margin-left: -10px;
}
/* ------------------------------------------------- *
 *  blk3
 * ------------------------------------------------- */
.blk3 {
  color: #fff;
  font-size: 13px;
  background: #a15692 url("../img/bg_blk3.png") repeat-x 0 0;
  padding-bottom: 39px;
}
.blk3-frame {
  opacity: 0.1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
  filter: alpha(opacity=10);
  width: 872px;
  margin-left: auto;
  margin-right: auto;
  background: url("../img/blk3_frame2.png") repeat-y 0 0;
}
html.no-opacity .blk3-frame {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.blk3-frameContents {
  padding-left: 28px;
  padding-right: 28px;
}
.blk3-frame-blk1 {
  height: 212px;
  position: relative;
}
.blk3-frame-blk1 .img {
  position: absolute;
  bottom: 0;
  left: 0;
}
.blk3-frame-blk1 .left {
  width: 334px;
  float: left;
}
.blk3-frame-blk1 .right {
  width: 472px;
  float: right;
}
.blk3-margin {
  height: 61px;
}
.blk3-frame-blk2 .left {
  width: 396px;
  float: left;
}
.blk3-frame-blk2 .right {
  width: 402px;
  float: right;
  background: url("../img/dotline3.png") repeat-y 0 50%;
}
.blk3-frame-blk2 .right .fig {
  float: right;
  padding-left: 18px;
}
.blk3-frame-blk2 .right-inner {
  padding-left: 19px;
}
.blk3-frame-blk2-sttl {
  margin-bottom: 15px;
}
.blk3-dotline {
  background: url("../img/dotline2.png") repeat-x 0 50%;
  height: 46px;
}
/* ------------------------------------------------- *
 *  blk4
 * ------------------------------------------------- */
.blk4 {
  height: 860px;
  position: relative;
}
.blk4 .margin {
  height: 59px;
}
.blk4 .mask {
  background: rgba(255,255,255,0.9);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
html.no-opacity .blk4 .mask {
  display: none;
}
.blk4-ttlBox {
  width: 814px;
  height: 165px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-bottom: 11px;
}
.blk4-ttlBox h2 {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -364px;
}
.blk4-ttlBox .bg {
  position: absolute;
  bottom: 0;
  left: 0;
}
.blk4-fig {
  width: 902px;
  height: 573px;
  position: relative;
}
.blk4-fig .bg {
  position: absolute;
  top: 0;
  left: 677px;
}
.blk4-fig .arw {
  position: absolute;
  top: 31px;
  left: 220px;
  width: 625px;
  height: 429px;
}
.blk4-fig .arwInner {
  width: 0;
  height: 100%;
  overflow: hidden;
  position: relative;
}
html.no-opacity .blk4-fig .arwInner {
  width: 100%;
}
.blk4-fig .arwInner .img {
  position: absolute;
  top: 0;
  left: 0;
}
.blk4-fig .arwMask {
  background: #fff;
  width: 625px;
  height: 429px;
  position: absolute;
  top: 31px;
  left: 220px;
}
.blk4-fig .fig1 {
  position: absolute;
  top: 29px;
  left: 55px;
}
.blk4-fig .fig2 {
  position: absolute;
  top: 161px;
  left: 55px;
}
.blk4-fig .fig3 {
  position: absolute;
  top: 293px;
  left: 55px;
}
.blk4-fig .fig4 {
  position: absolute;
  top: 470px;
  left: 591px;
}
.blk4-fig .p1 {
  position: absolute;
  top: 40px;
  left: 525px;
  left: 550px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .blk4-fig .p1 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  position: absolute;
  top: 40px;
  left: 525px;
}
.blk4-fig .p2 {
  position: absolute;
  top: 173px;
  left: 522px;
  left: 550px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .blk4-fig .p2 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  position: absolute;
  top: 173px;
  left: 522px;
}
.blk4-fig .p3 {
  position: absolute;
  top: 408px;
  left: 460px;
  left: 500px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}
html.no-opacity .blk4-fig .p3 {
  opacity: 1;
  -ms-filter: none;
  filter: none;
  position: absolute;
  top: 408px;
  left: 460px;
}
/* ------------------------------------------------- *
 *  bnrBlk
 * ------------------------------------------------- */
.bnrBlk {
  background: #a15692;
  height: 200px;
  margin-bottom: 77px;
}
.bnrBlk-inner {
  position: relative;
  height: 100%;
}
.bnrBlk .ttl {
  position: absolute;
  top: 31px;
  left: 4px;
}
.bnrBlk .img {
  position: absolute;
  top: 21px;
  left: 615px;
}
.bnrBlk .btn {
  position: absolute;
  top: 29px;
  left: 830px;
}
/* ------------------------------------------------- *
 *  bnrBlk2
 * ------------------------------------------------- */
.bnrBlk2 {
  margin-bottom: 73px;
}
.bnrBlk2 ul {
  width: 1005px;
  margin-left: -25px;
}
.bnrBlk2 li {
  float: left;
  margin-left: 25px;
}
