@charset "UTF-8";
@media screen and (max-width: 768px) {
  body section {
    display: block;
    width: 95vw;
    margin: 0 auto 100px;
    padding-bottom: 100px;
  }
  body .pc,
  body img.pc {
    display: none;
  }
  body .sp,
  body img.sp {
    display: block;
  }
  body h2 {
    width: 90%;
    max-width: 90%;
    margin: 0 auto 20px;
    padding: 50px 0 0;
    font-size: 1.7em;
    line-height: 1.5em;
    color: #0a2b4c;
    letter-spacing: 0.07em;
  }
  body h3 {
    font-size: 1.2em;
    line-height: 2em;
    color: #0a2b4c;
    letter-spacing: 0.05em;
    margin-bottom: 25px;
  }
  .tohide {
    display: none;
  }
  #wrapper {
    display: block;
    width: 100vw;
    /******************** header section **************************/
    /******************** Hero section **************************/
    /* footer */
    /* ロールオーバー時の反調 */
    /********************  Apply Button  **************************/
  }
  #wrapper #headerArea {
    min-width: 0;
    background: #fff;
  }
  #wrapper #headerArea .left .header_logo {
    max-width: 47vw;
    padding-top: 7px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #headerArea .left .header_logo {
    padding-top: 12px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #headerArea .left .header_logo .a img {
    width: 100%;
  }
  #wrapper #headerArea .right {
    max-width: 50vw;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #headerArea .right {
    max-width: 58vw;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #headerArea .right .facebook,
  #wrapper #headerArea .right .line,
  #wrapper #headerArea .right .twitter {
    display: block;
    width: 35px;
    margin-right: 10px;
    margin-top: 15px;
  }
  #wrapper #heroSection {
    background-color: #fff;
    width: 100vw;
    max-width: 100%;
    height: 100%;
    margin-bottom: 50px;
    padding-bottom: 50px;
  }
  #wrapper #heroSection .kvImg h1.maincont {
    margin: 0 auto;
    width: 100vw;
    max-width: 100%;
  }
  #wrapper #heroSection .logoArea {
    margin-top: 0;
    width: 100vw;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #heroSection .logoArea {
    width: 320px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #heroSection .logoArea ._block {
    margin: 0 5px;
    width: 220px;
  }
  #wrapper #heroSection .logoArea ._block img {
    width: 100%;
    height: auto;
  }
  #wrapper #heroSection p.intro {
    width: 90%;
    margin: 20px auto 0;
    font-size: 1.2em;
    line-height: 1.7em;
  }
  #wrapper #container {
    position: relative;
    background: none;
    background-size: 130%;
    /******************** company **************************/
    /******************** People **************************/
    /******************** movie **************************/
    /******************** timetable **************************/
    /******************** concept **************************/
    /******************** QA **************************/
  }
  #wrapper #container::before {
    content: "";
    display: block;
    background: url("../img/sp_bg.jpg") 0 0 no-repeat;
    background-size: cover;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -99;
  }
  #wrapper #container #company {
    width: 95%;
    max-width: 95vw;
  }
  #wrapper #container #company h2 {
    width: 80%;
    max-width: 350px;
  }
  #wrapper #container #company h2 img {
    width: auto;
    height: 70px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #company h2 img {
    height: 66px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #company p._subTitle {
    margin: 20px auto 0;
  }
  #wrapper #container #company .date {
    margin-top: 50px;
  }
  #wrapper #container #company .date .listBottom,
  #wrapper #container #company .date .listTop {
    padding: 0 10px;
  }
  #wrapper #container #company .date .listBottom .block,
  #wrapper #container #company .date .listTop .block {
    width: 100%;
    margin-bottom: 20px;
    margin-top: 10px;
  }
  #wrapper #container #company .date .company_acc_btn {
    width: 80%;
    max-width: 80%;
  }
  #wrapper #container #people {
    width: 95%;
    max-width: 95vw;
  }
  #wrapper #container #people h2 {
    width: 80%;
    max-width: 350px;
  }
  #wrapper #container #people h2 img {
    width: auto;
    height: 70px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #people h2 img {
    height: 66px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #people .date {
    width: 95%;
    max-width: 1200px;
  }
  #wrapper #container #people .date.dateThird {
    margin-top: 50px;
  }
  #wrapper #container #people .date .listTop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #wrapper #container #people .date .listTop .block {
    width: 49%;
    max-width: 768px;
    margin-right: 0;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #people .date .listTop .block {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #people .date .listBottom #cms-peopleBottom2,
  #wrapper #container #people .date .listBottom #cms-peopleBottom3 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #wrapper #container #people .date .listBottom #cms-peopleBottom2 .block,
  #wrapper #container #people .date .listBottom #cms-peopleBottom3 .block {
    width: 49%;
    max-width: 768px;
    margin-right: 0;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #people .date .listBottom #cms-peopleBottom2 .block,
  #wrapper #container #people .date .listBottom #cms-peopleBottom3 .block {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #people .company_acc_btn {
    width: 80%;
    max-width: 80%;
  }
  #wrapper #container #movie {
    width: 95%;
    max-width: 95vw;
    padding: 25px 0;
  }
  #wrapper #container #movie h2 {
    width: 80%;
    max-width: 350px;
  }
  #wrapper #container #movie h2 img {
    width: auto;
    height: 70px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #movie h2 img {
    height: 66px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #movie .moviebox {
    background-image: none;
    width: 92vw;
    margin: 20px auto 50px;
    text-align: center;
    padding: 0;
  }
  #wrapper #container #movie .moviebox #ytplayer {
    width: 90vw;
    height: 47vw;
  }
  #wrapper #container #timetable {
    width: 95%;
    max-width: 95vw;
    margin: 0 auto;
  }
  #wrapper #container #timetable h2 {
    width: 80%;
    max-width: 350px;
  }
  #wrapper #container #timetable h2 img {
    width: auto;
    height: 70px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #timetable h2 img {
    height: 66px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #timetable #sp-tabbtn {
    width: 90%;
    margin: 0 auto 10px;
  }
  #wrapper #container #timetable #sp-tabbtn ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #wrapper #container #timetable #sp-tabbtn ul li.tabbtn {
    width: 48%;
    height: 25px;
    list-style: none;
  }
  #wrapper #container #timetable #sp-tabbtn ul li.tabbtn img {
    -webkit-filter: grayscale(100%) contrast(100%);
    filter: grayscale(100%) contrast(100%);
  }
  #wrapper #container #timetable #sp-tabbtn ul li.tabbtn:hover {
    cursor: pointer;
  }
  #wrapper #container #timetable #sp-tabbtn ul li.tabbtn.on img {
    -webkit-filter: grayscale(0%) contrast(100%);
    filter: grayscale(0%) contrast(100%);
  }
  #wrapper #container #timetable .date .roomTtl {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: 18%;
  }
  #wrapper #container #timetable .date .roomTtl p {
    width: 100%;
    font-size: 40px;
  }
  #wrapper #container #timetable .date .roomTtl p:first-child {
    color: #1f4f97;
  }
  #wrapper #container #timetable .date .roomTtl p:last-child {
    color: #0da4b4;
  }
  #wrapper #container #timetable .date .content {
    width: 98%;
    max-width: 1400px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  #wrapper #container #timetable .date .content .left {
    width: 25%;
  }
  #wrapper #container #timetable .date .content .left ul li {
    font-size: 14px;
    height: 120px;
    line-height: 120%;
  }
  #wrapper #container #timetable .date .content .left ul li span {
    font-size: 20px;
    line-height: 50%;
    padding-bottom: 10px;
  }
  #wrapper #container #timetable .date .content .left ul li:first-child {
    height: 75px;
  }
  #wrapper #container #timetable .date .content .right {
    width: 74%;
  }
  #wrapper #container #timetable .date .content .right .row-opening {
    height: 75px;
  }
  #wrapper #container #timetable .date .content .right .row-opening p {
    font-size: 24px;
  }
  #wrapper #container #timetable .date .content .right .roomContent .col-room-A,
  #wrapper #container #timetable .date .content .right .roomContent .col-room-B {
    width: 100%;
  }
  #wrapper #container #timetable .date .content .right .roomContent .col-room-A .block,
  #wrapper #container #timetable .date .content .right .roomContent .col-room-B .block {
    height: 120px;
  }
  #wrapper #container #timetable .date .content .right .roomContent .col-room-A .block.section-6.jtBlock::before,
  #wrapper #container #timetable .date .content .right .roomContent .col-room-B .block.section-6.jtBlock::before {
    font-size: 13px;
    margin-right: 12px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #timetable .date .content .right .roomContent .col-room-A .block.section-6.jtBlock::before,
  #wrapper #container #timetable .date .content .right .roomContent .col-room-B .block.section-6.jtBlock::before {
    margin-right: 6px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #concept {
    width: 100vw;
    max-width: 100%;
  }
  #wrapper #container #concept .conceptbox {
    width: 90%;
    max-width: 700px;
    margin: 25px auto;
  }
  #wrapper #container #concept .conceptbox h2 {
    width: 80%;
    max-width: 350px;
  }
  #wrapper #container #concept .conceptbox h2 img {
    width: auto;
    height: 70px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #concept .conceptbox h2 img {
    height: 66px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #concept .conceptbox h3 {
    width: 90%;
    max-width: 100%;
    font-size: 7.5vw;
    line-height: 1.4em;
    margin: 50px auto;
    text-align: center;
  }
  #wrapper #container #concept .conceptbox p span.op {
    margin-left: -3vw;
  }
  #wrapper #container #concept .conceptbox p span.fs {
    margin-right: -2vw;
  }
  #wrapper #container #concept .conceptbox p span.cl,
  #wrapper #container #concept .conceptbox p span.cm {
    margin-right: -2vw;
  }
  #wrapper #container #concept .conceptbox p.concepttxt1 {
    font-size: 4.8vw;
    margin: 50px auto 40px;
  }
  #wrapper #container #concept .conceptbox p.concepttxt2 {
    font-size: 4.8vw;
  }
  #wrapper #container #concept .conceptbox p.concepttxt3 {
    font-size: 8.6vw;
    margin-top: 15px;
  }
  #wrapper #container #qa {
    width: 100vw;
    max-width: 100%;
  }
  #wrapper #container #qa h2 {
    width: 80%;
    max-width: 350px;
  }
  #wrapper #container #qa h2 img {
    width: auto;
    height: 70px;
  }
}

@media screen and (max-width: 768px) and (max-width: 320px) {
  #wrapper #container #qa h2 img {
    height: 66px;
  }
}

@media screen and (max-width: 768px) {
  #wrapper #container #qa .qabox {
    width: 90%;
    max-width: 700px;
    margin: 50px auto 0;
  }
  #wrapper #container #qa .qabox ._block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    color: #fff;
  }
  #wrapper #container #qa .qabox ._block .qatxt1 {
    width: 5%;
    margin-right: 5%;
    font-weight: bold;
    font-size: 1.7em;
    line-height: 1.5em;
  }
  #wrapper #container #qa .qabox ._block .qatxt2 {
    width: 90%;
    font-size: 1.2em;
    line-height: 2.5em;
    font-weight: bold;
  }
  #wrapper #container #qa .qabox ._block .qatxt3 {
    width: 90%;
    font-size: 1.1em;
    line-height: 2em;
    padding-top: 6px;
  }
  #wrapper #container #banner {
    padding: 50px 0;
  }
  #wrapper #container #banner .bannerpc {
    display: none;
  }
  #wrapper #container #banner .bannersp {
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  #wrapper footer {
    display: block;
    width: 100%;
    margin: 0 auto;
    color: #fff;
    background-color: #000;
  }
  #wrapper footer .footerbox {
    width: 100%;
    margin: 0 auto;
    padding: 3rem;
    font-size: 12px;
    overflow: auto;
  }
  #wrapper footer .footerbox .pagetop {
    float: right;
  }
  #wrapper footer .footerbox .pagetop a {
    color: #fff;
  }
  #wrapper footer .footerbox .pagetop a:hover {
    text-decoration: none;
    cursor: pointer;
  }
  #wrapper footer .footerbox .pagetop a::before {
    content: "^";
    display: block;
    text-align: center;
    height: 20px;
    font-size: 20px;
  }
  #wrapper footer .footerbox .copyright {
    float: left;
  }
  #wrapper footer .footerbox {
    padding-left: 0;
  }
  #wrapper footer .footerbox .copyright {
    float: none;
    text-align: left;
    margin-left: 10px;
  }
  #wrapper a:hover img.btnhover {
    cursor: pointer;
    zoom: 1;
  }
  #wrapper #applybtn {
    bottom: 2%;
    right: 2%;
    width: 35%;
  }
  #wrapper #applybtn a {
    width: 100%;
  }
}
/*# sourceMappingURL=sp-style.css.map */