@charset "UTF-8";
@media screen and (min-width: 768px), print {

main{width: 100% !important;}

#main-con{margin: -61px 0 142px 0;padding: 0px 0 0 0;}
#main-con .ttlen{text-align: center;position: relative;margin: 0 0 100px 0;}
#main-con .ttlen::after{
    content: "";
    width: 24px;
    height: 2px;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -34px;}
#main-con .mainttl{text-align: center;margin: 0 0 40px 0;}
#main-con .mainphoto{text-align: center;margin: 0 auto;max-width: 1920px;display: block;}
#main-con .mainphoto img{width: 100vw;max-width: 1920px;}
#main-con .ttlframe{width: 1200px; margin: 0 auto;}
#main-con .ttlframe .subt{margin: -117px 0 0 0;position: relative;z-index: 10;padding: 60px 50px 39px 100px;width: 787px;background-color:#fff;}
#main-con .ttlframe .txt{font-size: 16px;line-height: 2.4;letter-spacing: 1.9px;margin: 0 0 0 100px;}


#con01{width: 1280px; margin: 0 auto;}
#con01 .inner{}
#con01 .inner .con01-ttlframe{width: 1280px;height: 570px;margin: 0 auto;position: relative;}
#con01 .inner .con01-ttlframe .num{position: absolute;top: 11px;right: 190px;width: 77px;text-align: right;}
#con01 .inner .con01-ttlframe .num::after{
    content: "";
    width: 1px;
    height: 50px;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    right: 90px;
    bottom: -27px;
    }

#con01 .inner .con01-ttlframe .mainttl{
    margin: 0px 0 0 807px;
    padding: 4px 0 0 0;
    font-size: 28px;
    line-height: 2.8;
    letter-spacing: 19px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    }
#con01 .inner .con01-ttlframe .mainttl .mainttl-sub{margin: 77px 0 0 0;}
#con01 .inner .con01-ttlframe .photo01{position: absolute; top:0;left:0;}

#con01 .inner .con02-txtframe{width: 1200px;margin: 0 auto 153px;}
#con01 .inner .con02-txtframe .inner{
    margin: 0 0 37px 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    }

#con01 .inner .con02-txtframe .inner .photo02{width: 531px;margin: 0 45px 0 23px;}
#con01 .inner .con02-txtframe .inner .txtframe{width: 500px;padding: 29px 0 0 0;}
#con01 .inner .con02-txtframe .inner .txtframe .txt{font-size: 16px;line-height: 2.3;letter-spacing: 2px;}

#con01 .inner .con02-txtframe .btnlist{width: 1000px; margin: 0 auto;
-webkit-box-orient:horizontal;-webkit-box-direction:normal;
-ms-flex-wrap: wrap;flex-wrap: wrap;
display:-webkit-box;display:-ms-flexbox;display:flex;
justify-content: center;}
#con01 .inner .con02-txtframe .btnlist li{
   background-image:url(../images/common/btn-arrow01.svg);
   background-position: right 11px center;
   background-repeat:no-repeat;
   text-align: center;
   border:1px solid #707070;
   width: 386px;
   margin: 0 20px 0 20px;
   font-size: 16px;
   line-height: 1.6;
   letter-spacing: 2px;
   }
#con01 .inner .con02-txtframe .btnlist li a{display: block;padding: 21px 0 18px 0;width: 386px;}
    



#con02{width: 1280px;margin: 0 auto 0px;padding: 0 0 60px 0;}
#con02 .inner{}
#con02 .inner .con01-ttlframe{width: 1280px;height: 550px;margin: 0 auto;position: relative;}
#con02 .inner .con01-ttlframe .num{position: absolute;top: 80px;left: 379px;width: 77px;text-align: right;}
#con02 .inner .con01-ttlframe .num::after{
    content: "";
    width: 1px;
    height: 50px;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    right: 90px;
    bottom: -27px;
    }

#con02 .inner .con01-ttlframe .mainttl{
    margin: 0px 0 0 174px;
    padding: 70px 0 0 0;
    font-size: 28px;
    line-height: 2.8;
    letter-spacing: 19px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    }

#con02 .inner .con01-ttlframe .mainttl .mainttl-sub{margin: 187px 0 0 0;}
#con02 .inner .con01-ttlframe .photo01{position: absolute; top:0;right:0;}

#con02 .inner .con02-txtframe{width: 1200px;margin: 0 auto 100px;}
#con02 .inner .con02-txtframe .inner{
    margin: 0 0 10px 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction:row-reverse;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    }

#con02 .inner .con02-txtframe .inner .photo02{width: 531px;margin: 0 7px 0 63px;}
#con02 .inner .con02-txtframe .inner .txtframe{width: 500px;padding: 49px 0 0 0;}
#con02 .inner .con02-txtframe .inner .txtframe .txt{font-size: 16px;line-height: 2.3;letter-spacing: 2px;margin: 0 0 32px 0;}

#con02 .inner .con02-txtframe .btnlist{width: 1140px;margin: 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-wrap: wrap;flex-wrap: wrap;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content: center;}
#con02 .inner .con02-txtframe .btnlist li{
   background-image:url(../images/common/btn-arrow01.svg);
   background-position: right 11px center;
   background-repeat:no-repeat;
   text-align: left;
   border:1px solid #707070;
   width: 390px;
   margin: 0 20px 0 20px;
   font-size: 16px;
   line-height: 1.6;
   letter-spacing: 2px;
   position: relative;
   }
#con02 .inner .con02-txtframe .btnlist li a{display: block;padding: 21px 0 18px 35px;width: 400px;}

#con02 .inner .con02-txtframe .btnlist li.kinokalogo{position: relative;background-image:url(../images/common/btn-arrow02.svg);background-position: right 10px bottom 10px;}
#con02 .inner .con02-txtframe .btnlist li.kinokalogo::before{content: '';display: inline-block;width: 65px;height: 12px;position: absolute;top: 27px;right: 40px;background-image: url(../images/concept/concept02-logo.svg);background-size: contain;background-repeat: no-repeat;}


#con03{width: 1280px;margin: 0 auto;padding: 0 0 5px 0;}
#con03 .inner{}
#con03 .inner .con01-ttlframe{width: 1280px;height: 572px;margin: 0 auto;position: relative;}
#con03 .inner .con01-ttlframe .num{position: absolute;top: 11px;right: 190px;width: 77px;text-align: right;}
#con03 .inner .con01-ttlframe .num::after{
    content: "";
    width: 1px;
    height: 50px;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    right: 90px;
    bottom: -27px;
    }

#con03 .inner .con01-ttlframe .mainttl{
    margin: 0px 0 0 807px;
    padding: 4px 0 0 0;
    font-size: 28px;
    line-height: 2.8;
    letter-spacing: 19px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    }
#con03 .inner .con01-ttlframe .mainttl .mainttl-sub{margin: 40px 0 0 0;}
#con03 .inner .con01-ttlframe .photo01{position: absolute; top:0;left:0;}

#con03 .inner .con02-txtframe{width: 1200px;margin: 0 auto 100px;}
#con03 .inner .con02-txtframe .inner{
    margin: 0 0 37px 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    }

#con03 .inner .con02-txtframe .inner .photo02{width: 531px;margin: -17px 68px 0 0px;}
#con03 .inner .con02-txtframe .inner .txtframe{width: 530px;padding: 29px 0 0 0;}
#con03 .inner .con02-txtframe .inner .txtframe .txt{font-size: 16px;line-height: 2.3;letter-spacing: 2px;}

#con03 .inner .con02-txtframe .btnlist{width: 1000px; margin: 0 auto;
-webkit-box-orient:horizontal;-webkit-box-direction:normal;
-ms-flex-wrap: wrap;flex-wrap: wrap;
display:-webkit-box;display:-ms-flexbox;display:flex;
justify-content: center;}
#con03 .inner .con02-txtframe .btnlist li{
   background-image:url(../images/common/btn-arrow01.svg);
   background-position: right 11px center;
   background-repeat:no-repeat;
   text-align: center;
   border:1px solid #707070;
   width: 386px;
   margin: 0 20px 0 20px;
   font-size: 16px;
   line-height: 1.6;
   letter-spacing: 2px;
   }
#con03 .inner .con02-txtframe .btnlist li a{display: block;padding: 21px 0 18px 0;width: 386px;}

.end-bunner{width: 1000px;margin: 0 auto 120px;}
.end-bunner .end-bunner-list{
    justify-content: center;
    -ms-flex-wrap: wrap;flex-wrap: wrap;
    display:-webkit-box;display:-ms-flexbox;display:flex;
    -webkit-box-orient:horizontal;-webkit-box-direction:normal;}
.end-bunner .end-bunner-list li{width: 340px;margin: 0 20px 0 20px;}
.end-bunner .end-bunner-list li a{}

}





@media screen and (max-width: 767px) {

main{width: 100% !important;}

#main-con{margin: 0vw 0 15vw 0;padding: 0px 0 0 0;}
#main-con .ttlen{text-align: center;position: relative;margin: 0 0 20vw 0;}
#main-con .ttlen::after{
    content: "";
    width: 6vw;
    height: 0.5vw;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8vw;}
#main-con .mainttl{text-align: center;margin: 0 auto 10vw auto;width: 72vw;/* padding: 0 3vw 0 3vw; */}
#main-con .mainphoto{text-align: center;}
#main-con .mainphoto img{width: 100vw;}
#main-con .ttlframe{width: 100%; margin: 0 auto;}
#main-con .ttlframe .subt{margin: -5vw 0 0 0;position: relative;z-index: 10;padding: 6vw 6vw 6vw 6vw;width: 84%;background-color:#fff;}
#main-con .ttlframe .txt{font-size:3.382vw;line-height: 2.4;letter-spacing: 0.25vw;margin: 0 5vw 0 5vw;}


#con01{width: 100%;margin: 0 auto 15vw;}
#con01 .inner{}
#con01 .inner .con01-ttlframe{width: 100%;margin: 0 auto 6vw;position: relative;}
#con01 .inner .con01-ttlframe .num{width: 100%;text-align: left;margin: 0 0 0 7vw;padding: 0 0 10vw 0;position: relative;}
#con01 .inner .con01-ttlframe .num::after{
    content: "";
    width: 17vw;
    height: 0.3vw;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    bottom: 3vw;
    }
#con01 .inner .con01-ttlframe .mainttl{margin: 0px 0 0 7vw;padding: 2vw 0 5vw 0;font-size:5.314vw;line-height: 1.6;letter-spacing: 1vw;}
#con01 .inner .con01-ttlframe .mainttl .mainttl-sub{margin: 0 0 0 0;}
#con01 .inner .con01-ttlframe .photo01{}
#con01 .inner .con02-txtframe{width: 96%;margin: 0 auto 10vw;}
#con01 .inner .con02-txtframe .inner{margin: 0 0 7vw 0;}
#con01 .inner .con02-txtframe .inner .photo02{display: block;/* width: 100%; */margin: 0 0 3vw 0;padding: 0 5vw 0 5vw;}
#con01 .inner .con02-txtframe .inner .txtframe{width: 90%; margin: 0 auto; padding: 3vw 0 0 0;}
#con01 .inner .con02-txtframe .inner .txtframe .txt{font-size:3.865vw;line-height: 2;letter-spacing:0.25vw;}

#con01 .inner .con02-txtframe .btnlist{width: 100%; margin: 0 auto;}
#con01 .inner .con02-txtframe .btnlist li{
   background-image:url(../images/common/btn-arrow01.svg);
   background-position: right 2vw center;
   background-repeat:no-repeat;
   text-align: center;
   border:1px solid #707070;
   width: 90%;
   margin: 0 auto 3vw auto;
   font-size:3.865vw;
   line-height: 1.6;
   letter-spacing: 0.25vw;
   }
#con01 .inner .con02-txtframe .btnlist li a{display: block;padding: 3vw 0 3vw 0;width: 100%;}



#con02{width: 100%;margin: 0 auto 20vw;}
#con02 .inner{}
#con02 .inner .con01-ttlframe{width: 100%;margin: 0 auto 6vw;position: relative;}
#con02 .inner .con01-ttlframe .num{width: 100%;text-align: left;margin: 0 0 0 7vw;padding: 0 0 10vw 0;position: relative;}
#con02 .inner .con01-ttlframe .num::after{
    content: "";
    width: 17vw;
    height: 0.3vw;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    bottom: 3vw;
    }
#con02 .inner .con01-ttlframe .mainttl{margin: 0px 0 0 7vw;padding: 2vw 0 5vw 0;font-size:5.314vw;line-height: 1.6;letter-spacing: 1vw;}
#con02 .inner .con01-ttlframe .mainttl .mainttl-sub{margin: 0 0 0 0;}
#con02 .inner .con01-ttlframe .photo01{}
#con02 .inner .con02-txtframe{width: 96%;margin: 0 auto 10vw;}
#con02 .inner .con02-txtframe .inner{margin: 0 0 7vw 0;}
#con02 .inner .con02-txtframe .inner .photo02{display: block;/* width: 100%; */margin: 0 0 3vw 0;padding: 0 5vw 0 5vw;}
#con02 .inner .con02-txtframe .inner .txtframe{width: 90%; margin: 0 auto; padding: 3vw 0 0 0;}
#con02 .inner .con02-txtframe .inner .txtframe .txt{font-size:3.865vw;line-height: 2;letter-spacing:0.25vw;}

#con02 .inner .con02-txtframe .btnlist{width: 100%; margin: 0 auto;}
#con02 .inner .con02-txtframe .btnlist li{
   background-image:url(../images/common/btn-arrow01.svg);
   background-position: right 2vw center;
   background-repeat:no-repeat;
   text-align: left;
   border:1px solid #707070;
   width: 90%;
   margin: 0 auto 3vw auto;
   font-size:3.865vw;
   line-height: 1.6;
   letter-spacing: 0.25vw;
   }
#con02 .inner .con02-txtframe .btnlist li a{display: block;padding: 3vw 0 3vw 5vw;width: 100%;}

#con02 .inner .con02-txtframe .btnlist li.kinokalogo{position: relative;background-image:url(../images/common/btn-arrow02.svg);background-position: right 2vw bottom 2vw;}
#con02 .inner .con02-txtframe .btnlist li.kinokalogo::before{content: '';display: inline-block;width: 17vw;height: 3vw;position: absolute;bottom: 4.8vw;right: 9vw;background-image: url(../images/concept/concept02-logo.svg);background-size: contain;background-repeat: no-repeat;}



#con03{width: 100%;margin: 0 auto 15vw;}
#con03 .inner{}
#con03 .inner .con01-ttlframe{width: 100%;margin: 0 auto 6vw;position: relative;}
#con03 .inner .con01-ttlframe .num{width: 100%;text-align: left;margin: 0 0 0 7vw;padding: 0 0 10vw 0;position: relative;}
#con03 .inner .con01-ttlframe .num::after{
    content: "";
    width: 17vw;
    height: 0.3vw;
    margin: 0 auto;
    background: #000;
    position: absolute;
    left: 0;
    bottom: 3vw;
    }
#con03 .inner .con01-ttlframe .mainttl{margin: 0px 0 0 7vw;padding: 2vw 0 5vw 0;font-size:5.314vw;line-height: 1.6;letter-spacing: 1vw;}
#con03 .inner .con01-ttlframe .mainttl .mainttl-sub{margin: 0 0 0 0;}
#con03 .inner .con01-ttlframe .photo01{}
#con03 .inner .con02-txtframe{width: 96%;margin: 0 auto 10vw;}
#con03 .inner .con02-txtframe .inner{margin: 0 0 7vw 0;}
#con03 .inner .con02-txtframe .inner .photo02{display: block;/* width: 100%; */margin: 0 0 3vw 0;padding: 0 5vw 0 5vw;}
#con03 .inner .con02-txtframe .inner .txtframe{width: 90%; margin: 0 auto; padding: 3vw 0 0 0;}
#con03 .inner .con02-txtframe .inner .txtframe .txt{font-size:3.865vw;line-height: 2;letter-spacing:0.25vw;}

#con03 .inner .con02-txtframe .btnlist{width: 100%; margin: 0 auto;}
#con03 .inner .con02-txtframe .btnlist li{
   background-image:url(../images/common/btn-arrow01.svg);
   background-position: right 2vw center;
   background-repeat:no-repeat;
   text-align: center;
   border:1px solid #707070;
   width: 90%;
   margin: 0 auto 3vw auto;
   font-size:3.865vw;
   line-height: 1.6;
   letter-spacing: 0.25vw;
   }
#con03 .inner .con02-txtframe .btnlist li a{display: block;padding: 3vw 0 3vw 0;width: 100%;}


.end-bunner{width: 100%;margin: 0 auto 15vw;}
.end-bunner .end-bunner-list{}
.end-bunner .end-bunner-list li{width: 74%;margin: 0 auto 4vw auto;}
.end-bunner .end-bunner-list li a{}


}