/*--------------------------------------------------------------------------
   Index
---------------------------------------------------------------------------*/
#Index #Main {
  width: 100%;
  text-align: center;
  position: relative;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  #Index #Main {
    height: 500px;
  }
}
@media print, screen and (min-width:768px) {
  #Index #Main::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 500px;
    background-color: #EFF5F3;
    z-index: 1;
  }
}
@media print, screen and (min-width:768px) {
  #Index #Main::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 500px;
    background-color: #EFF5F3;
    z-index: 1;
  }
}
@media print, screen and (min-width:768px) {
  #Index #Main .pic {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    width: 1400px;
    height: 500px;
  }
}
@media screen and (min-width:768px) and (max-width: 1028px) {
  #Index #Main .pic {
    transform: translateX(0);
    left: -245px;
  }
}
@media screen and (max-width:767px) {
  #Index #Main .pic {
    position: relative;
  }
}
@media print, screen and (min-width:768px) {
  #Index #Main .pic h2 img {
    width: 100%;
    height: 500px;
  }
}
#Index #Main .pic .bnr {
  position: absolute;
  width: 190px;
  height: 198px;
  bottom: 20px;
  left: 48.5%;
  z-index: 3;
}
@media print, screen and (min-width:768px) {
  #Index #Main .main-ttl {
    position: relative;
  }
}
#Index #Main .main-ttl span {
  position: absolute;
  top: 35px;
  font-size: 50px;
  color: #000;
  z-index: 10;
  line-height: 1.2;
  text-align: left;
  letter-spacing: -0.1em;
}
@media print, screen and (min-width:768px) {
  #Index #Main .main-ttl span {
    width: 1028px;
    left: 50%;
    padding-left: 10px;
    transform: translateX(-50%);
  }
}
@media screen and (min-width:768px) and (max-width: 1028px) {
  #Index #Main .main-ttl span {
    width: 100%;
    left: 0;
    transform: translateX(0);
  }
}
@media screen and (max-width:767px) {
  #Index #Main .main-ttl span {
    font-size: 5.0666666667vw;
    top: 8vw;
    left: 0;
    padding-left: 2.6666666667vw;
  }
}
#Index #Main .main-ttl span b {
  font-size: 60px;
}
@media screen and (max-width:767px) {
  #Index #Main .main-ttl span b {
    font-size: 6.4vw;
  }
}
#Index #Main .main-name {
  position: absolute;
  bottom: 30px;
  z-index: 2;
  text-align: left;
  display: flex;
  align-items: center;
}
@media print, screen and (min-width:768px) {
  #Index #Main .main-name {
    font-size: 12px;
    width: 1028px;
    left: 50%;
    padding-left: 70px;
    transform: translateX(-50%);
  }
}
@media screen and (min-width:768px) and (max-width: 1028px) {
  #Index #Main .main-name {
    width: 100%;
    left: 0;
    transform: translateX(0);
    padding-left: 10px;
  }
}
@media screen and (max-width:767px) {
  #Index #Main .main-name {
    font-size: 2.1333333333vw;
    bottom: 2vw;
    left: 0;
    padding-left: 4.6666666667vw;
  }
}
#Index #Main .main-name span {
  margin-left: 10px;
  border: solid 1px;
  line-height: 1;
  padding: 4px 8px;
}
@media screen and (max-width:767px) {
  #Index #Main .main-name span {
    padding: 0.8vw 1.3333333333vw 0.5333333333vw;
  }
}
@media print, screen and (min-width:768px) {
  #Index #Bnr {
    width: 960px;
    margin-top: 60px;
    margin-bottom: 75px;
  }
}
#Index #Bnr ul {
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width:767px) {
  #Index #Bnr ul {
    margin: 0;
  }
}
@media screen and (max-width:767px) {
  #Index #Bnr ul.link-bnr {
    flex-direction: column;
  }
}
@media screen and (max-width:767px) {
  #Index #Bnr ul.link-bnr li + li {
    margin-top: 10px;
  }
}
@media screen and (max-width:767px) {
  #Index #Bnr .bannerBox {
    margin-right: -3.125%;
    margin-left: -3.125%;
  }
}
@media screen and (max-width:767px) {
  #Index #Bnr .bannerBox ul {
    margin: 0;
  }
}
@media print, screen and (min-width:768px) {
  #Index #Cm {
    padding-bottom: 180px;
  }
}
#Index #Cm .ttl {
  margin-bottom: 60px;
}
#Index #Cm #movie_container ul {
  overflow: hidden;
}
#Index #Cm #movie_container ul li {
  width: 504px;
  margin: 20px auto 0 auto;
}
#Index #Cm #movie_container ul li:nth-child(1), #Index #Cm #movie_container ul li:nth-child(2) {
  margin-top: 0;
}
#Index #Cm #movie_container ul li img {
  width: 100% !important;
  height: auto !important;
}
#Index #Cm #movie_container ul li .thumb {
  position: relative;
}
#Index #Cm #movie_container ul li .thumb .btn-arrow-movie {
  position: absolute;
  display: block;
  top: 68px;
  left: 95px;
  width: 320px;
  height: 240px;
  background-image: url("../../images/common/btn-arrow-movie_off.png");
  background-repeat: no-repeat;
}
#Index #Cm #movie_container ul li .thumb .btn-arrow-movie:hover {
  opacity: 0.5;
}
#Index #Cm #movie_container .lead {
  font-size: 15px;
  text-align: center;
  line-height: 1.4;
  padding: 0 10px;
  margin-bottom: 10px;
}
@media screen and (max-width:767px) {
  #Index #Cm #movie_container .lead {
    font-size: 4vw;
    line-height: 1.4;
    padding: 0 2.6666666667vw;
    margin-top: 2.6666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
#Index #Cm #movie_container .thumb {
  text-align: center;
  padding-bottom: 10px;
}
#Index #Cm .not_movie {
  text-align: center;
}
#Index #Cm .jstream-eqPlayer {
  display: block !important;
  margin: 0 auto !important;
}
@media screen and (max-width:767px) {
  #Index #Contents ul {
    padding: 0;
  }
}