@charset "utf-8";
body { 
    font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 14px;
    min-width: 1200px;
}
.ah { transition: all .4s ease; }
.ah:hover { opacity: 0.7; }
.pc { display: block; }
.sp { display: none; }
body#index #fullWrap {
    width: 1200px;
    height: 620px;
}
body#index #inWrap {
    min-width: 1200px;
    min-height: 620px;
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
    z-index: 1;
}
#loading{
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    background: #000;
	z-index: 150000;
}
.ani_pc{
	opacity: 0;
	-webkit-filter: blur(30px);
	filter: blur(30px);
	transition: all .8s linear;
}
.ani_pc.active {
	opacity: 1;
	-webkit-filter: blur(0px);
	filter: blur(0px);
}

/* ▼HEADER▼ --------------------------------- 
-------------------------------------------------*/

body#index #headIn{
    position: absolute;
    top: 118px;
    left: 26px;
}
ul#navBox{
    width: 190px;
    font-family: 'Vollkorn',  serif;
}
ul#navBox li a{
    color: #fff;
    font-size: 15px;
    text-decoration: none;
    display: block;
    height: 32px;
    line-height: 32px;
    position: relative;
    padding-left: 20px;
    transition: .3s ease-in-out;
}
ul#navBox li a:hover{
    padding-left: 28px;
}
ul#navBox li a:before{
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 9px;
    border: 1px solid #fff;
    left: 0;
    top: 9px;
    transition: .3s ease-in-out;
    z-index: 1;
}
ul#navBox li a:after{
    content: "";
    position: absolute;
    width: 2px;
    height: 2px;
    background: #fff;
    border-radius: 9px;
    border: 1px solid #fff;
    left: 3px;
    top: 12px;
    transition: .3s ease-in-out;
    z-index: 1;
}
ul#navBox li a:hover:before,
ul#navBox li a.active:before{
    background: #e4141c;
}
@keyframes spin {
0%  {transform: rotate(0);}
100%  {transform: rotateX(360deg);}
}
ul#navBox li a span{
    transition: .3s ease-in-out;
}
ul#navBox li a:hover span{
    text-shadow: 0px 0px 6px #e4141c, 0px 0px 6px #e4141c;
}
body#index header > h1 a{
    background: url(../images/common/logo_w.png) no-repeat 0 0 / 100%;
    width: 148px;
    height: 64px;
    display: block;
    margin-top: 24px;
    margin-left: 16px;
}

/* ▼INDEX▼ --------------------------------- 
-------------------------------------------------*/

#mainBox > h1{
    width: 653px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
}
body#index #mainBox #netflix{
    position: absolute;
    width: 105px;
    top: 26px;
    left: 26px;
}
body#index #oaTxt{
    width: 285px;
    height: 79px;
    position: absolute;
    left: 0;
    bottom: 87px;
}

body#index #oaTxt a {
	display: block;
    background: url(../images/pc/oa_txt.jpg) no-repeat;
    width: 285px;
    height: 79px;    
}
body#index #oaTxt a:hover {
	opacity: 0.6;
}

#mainBox #catch{
    position: absolute;
    background: url(../images/pc/top_catch.png) no-repeat;
    width: 78px;
    height: 387px;
    right: 20px;
    top: 26px;
}
#bgVs{
    position: absolute;
    min-height: 620px;
    min-width: 1200px;
    left: 0px;
    top: 0px;
    bottom: 0;
    right: 0;
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    overflow: hidden;
}
#scene {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}
#scene li {
	display: block;
	position: absolute;
	z-index: 6;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	width: 100%;
}
.parallax {
	background-repeat: no-repeat;
	background-position: center top;
	position: absolute;
	left: 0;
	right: 0;
	background-size: 100%;
	pointer-events: none;
}
#mainVs { background-image: url(../images/pc/main_vs.jpg); }

/* ▼MODAL MOVIE▼ --------------------------------- 
-------------------------------------------------*/

#movieWrap{
    overflow: auto;
    position: fixed;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    z-index: 9999;
    background-color: #000; 
    display: none;
}
.ytWrap {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 1200px;
    min-height: 620px;
    width: 100%;
    height: 100%;
}
.ytWrap iframe {
	display: block;
	width: 100%;
	height: 100%;
}
.modalClose{
    width: 100px;
    height: 100px;
    position: absolute;
    top: 40px;
    right: 25px;
    z-index: 1;
}
.modalClose a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.modalClose a span:first-child{
    position: absolute;
    display: block;
    width: 90px;
    height: 2px;
    background: #fff;
    top: 50px;
    left: 5px;
    transform: rotate(20deg);
}
.modalClose a span:last-child{
    position: absolute;
    display: block;
    width: 90px;
    height: 2px;
    background: #fff;
    top: 50px;
    left: 5px;
    transform: rotate(-20deg);
}
.modalClose a span:first-child:before{
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    background: #e60012;
    top: 0;
    right: 0;
    transition: .1s ease-in-out;
}
.modalClose a span:last-child:before{
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    background: #e60012;
    top: 0;
    left: 0;
    transition: .1s ease-in-out;
}
.modalClose a:hover span:first-child:before{
    width: 100%;
}
.modalClose a:hover span:last-child:before{
    transition-delay: .1s;
    width: 100%;
}
#movYt{
    z-index: -2;
    position: relative;
    width: 190%;
    margin-left: -20px;
}

/* ▼FOOTER▼ --------------------------------- 
-------------------------------------------------*/

#shareBox {
    position: absolute;
    width: 163px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    left: 0;
    bottom: 33px;
    font-family: 'Vollkorn',  serif;
}
#shareBox > h2 {
    width: 58px;
    height: 40px;
    line-height: 40px;
    font-size: 12px;
    color: #fff;
    padding-left: 18px;
}
#shareBox > ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
#shareBox > ul li {
    width: 35px;
    height: 35px;
    position: relative;
}
#shareBox > ul li a {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
}
#shareBox > ul li a img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
#shareBox > ul li.tw a img{
    width: 18px;
}
#shareBox > ul li.fb a img{
    width: 7px;
}
#shareBox > ul li.ln a img{
    width: 19px;
}
#copyR{
    position: absolute;
    font-size: 10px;
    color: #fff;
    bottom: 12px;
    left: 17px;
}
body#index #movBtn{
    position: absolute;
    width: 326px;
    height: 326px;
    background: #000;
    bottom: -163px;
    right: -163px;
    transform: rotate(45deg);
    overflow: hidden;
}
#movBtn a{
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}
#movBtn #movCont{
    position: absolute;
    z-index: 1;
    width: 230px;
    height: 230px;
    margin: auto;
    top: 0;
    left: -326px;
    transform: rotate(-45deg);
    right: 0;
    bottom: 0;
}
#movBtn #movCont:before{
    content: "";
    position: absolute;
    background: url(../images/pc/movie_txt.png) no-repeat;
    width: 49px;
    height: 12px;
    bottom: 20px;
    right: 20px;
    z-index: 3;
}
#movBox:before {
    content: "";
    position: absolute;
    z-index: 1;
    width: 230px;
    height: 230px;
    margin: auto;
    bottom: 0;
    left: 0;
    background-color: rgba(228,20,28,.7);
    transition: .4s cubic-bezier(0.02, 0.88, 0.58, 1);
}
#movBox.active:before{
    height: 0;
}
#movBox:after{
    content: "";
    position: absolute;
    top: 0;
    left: 100px;
    right: 0px;
    bottom: -90px;
    height: 36px;
    width: 36px;
    background: url(../images/common/play_icon.png) no-repeat 0 0 / 100%;
    z-index: 2;
    margin: auto;
}
#movBox {
    position: relative;
    height: 230px;
    width: 230px;
}
#movBox video {
    height: 100%;
    width: 410px;
    position: relative;
    z-index: -1;
    margin-left: -90px;
}

/* ▼SUB-COMMON▼ --------------------------------- 
-------------------------------------------------*/

body#sub{
    overflow: auto;
    background-image: url(../images/pc/in_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-x: 50%;
    background-position-y: 10%;
    background-attachment: fixed;
    background-color: #020735;
    z-index: -1;
}
body#sub #fullWrap {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    position: relative;
    overflow: hidden;
}
/*body#sub #pcHeadWrap{
    position: fixed;
}*/
body#sub footer {
    margin-top: auto;
    position: relative;
    height: 230px; /*--MOVIEボタンの高さ--*/
}
body#sub footer > h1{
    width: 322px;
    position: absolute;
    margin: auto;
    top: 50px;
    left: 0;
    right: 0;
}
body#sub #movBtn {
    position: absolute;
    width: 326px;
    height: 326px;
    background: #000;
    bottom: -163px;
    right: -163px;
    transform: rotate(45deg);
    overflow: hidden;
}
body#sub #pcHeadWrap{
    width: 255px;
    z-index: 9998;
}
body#sub .subCont{
    margin-left: 255px; /*--ナビゲーションの幅分--*/
    margin-bottom: 60px;
}
body#sub #pcHeadWrap > h1 a{
    background: url(../images/common/logo_w.png) no-repeat 0 0 / 100%;
    width: 148px;
    height: 64px;
    display: block;
    margin-top: 24px;
    margin-left: 16px;
}
body#sub #headIn{
    margin-left: 26px;
    margin-top: 30px;
}
body#sub #oaTxt{
    width: 255px;
    height: 108px;
    margin-top: 16px;
}

body#sub #oaTxt a{
    background: url(../images/pc/oa_txt_inner.jpg) no-repeat;
    width: 255px;
    height: 108px;
	display: block;
}

body#sub #oaTxt a:hover{
	opacity: 0.6;
}

body#sub #netflix{
    position: absolute;
    width: 104px;
    top: 26px;
    right: 26px;
}
.subCont > h2 {
    position: relative;
    height: 38px;
    margin-left: -255px;
    font-family: 'Vollkorn',  serif;
}
.subCont > h2 span {
    text-align: center;
    color: #fff;
    background: #e60012;
    padding: 5px 34px;
    font-size: 16px;
    display: inline-block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    letter-spacing: 0.04em;
}
body#sub #subBg {
    position: absolute;
    width: 720px;
    height: 720px;
    background: #000;
    bottom: -360px;
    right: -360px;
    transform: rotate(45deg);
    overflow: hidden;
    z-index: -1;
}
body#sub #subBg > div {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}
body#sub #subBg > div ul {
    position: absolute;
    z-index: 1;
    width: 720px;
    height: 720px;
    margin: auto;
    top: 0;
    left: -720px;
    transform: rotate(-45deg);
    right: 0;
    bottom: 0;
}
@keyframes CrossFade02 {
0% {
    opacity: 0;
}
8% {
    opacity: 1;
}
17% {
    opacity: 1;
}
25% {
    opacity: 0;
    transform: scale(1.2) ;
    z-index:9;
}
100% { opacity: 0 }
}
body#sub #subBg > div ul li{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    animation: CrossFade02 36s 0s infinite;
    opacity: 0;
}
body#sub #subBg > div ul li:nth-child(1){ background-image: url(../images/common/loop_footer_bg01.jpg) }
body#sub #subBg > div ul li:nth-child(2){ animation-delay:6s; background-image: url(../images/common/loop_footer_bg02.jpg)}
body#sub #subBg > div ul li:nth-child(3){ animation-delay:12s; background-image: url(../images/common/loop_footer_bg03.jpg)}
body#sub #subBg > div ul li:nth-child(4){ animation-delay:18s; background-image: url(../images/common/loop_footer_bg04.jpg)}
body#sub #subBg > div ul li:nth-child(5){ animation-delay:24s; background-image: url(../images/common/loop_footer_bg05.jpg)}
body#sub #subBg > div ul li:nth-child(6){ animation-delay:30s; background-image: url(../images/common/loop_footer_bg06.jpg)}

/* ▼INTRODUCTION▼ --------------------------------- 
-------------------------------------------------*/

#introArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -60px;
    padding-left: 60px;
}
@media screen and (min-width:1253px) { 
    #introArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 60px;
        padding-left: 0;
    }
}
#introArea > h2{
    margin-bottom: 80px;
}
#introArea .subInCont > h3{
    font-size: 24px;
    line-height: 2;
    letter-spacing: 0.12em;
    color: #fff;
    margin-bottom: 50px;
    transform: scaleY(1.2);
}
#introArea .subInCont > p{
    font-size: 16px;
    letter-spacing: 0.12em;
    line-height: 3;
    color: #fff;
}
.swImgArea > ul{
    width: calc(100% + 60px);
    height: 280px;
    margin-bottom: 5px;
    position: relative;
    overflow: hidden;
}
@keyframes CrossFade {
0% {
    opacity: 0;
}
16% {
    opacity: 1;
}
34% {
    opacity: 1;
}
50% {
    opacity: 0;
    transform: scale(1.2) ;
    z-index:9;
}
100% { opacity: 0 }
}
.swImgArea > ul:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.swImgArea > ul li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    animation: CrossFade 18s 0s infinite;
    opacity: 0;
}
.swImgArea > ul li:nth-child(2){ animation-delay:6s; }
.swImgArea > ul li:nth-child(3){ animation-delay:12s; }
.swImgArea{
    margin: 50px 0;
}

/* ▼CAST&STAFF▼ --------------------------------- 
-------------------------------------------------*/

#caststaff > h2{
    display: none !important;
}
ul#csLink{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -255px;
    margin-bottom: 80px;
    font-family: 'Vollkorn',  serif;
}
ul#csLink li a{
    display: block;
    text-align: center;
    color: #e60012;
    background: #fff;
    width: 176px;
    padding: 5px 0;
    font-size: 16px;
    letter-spacing: 0.04em;
    text-decoration: none;
    border: 1px solid #e60012;
    transition: .4s ease;
}
ul#csLink li a:hover{
    color: #fff;
    background: #e60012;
}
ul#csLink li a.active{
    color: #fff;
    background: #e60012;
}
#caststaff .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -60px;
    padding-left: 60px;
}
@media screen and (min-width:1253px) { 
    #caststaff .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 60px;
        padding-left: 0;
    }
}
ul.csList li{
    font-size: 16px;
    margin-bottom: 30px;
    letter-spacing: 0.18em;
    color: #fff;
}
#staff ul.csList li:first-child{
    font-size: 20px;
}
#staff ul.csList li:first-child span{
    font-size: 16px;
}
.csCont{
    display: none;
}

/* ▼MOVIE▼ --------------------------------- 
-------------------------------------------------*/

#movieArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -35px;
    padding-left: 35px;
}
@media screen and (min-width:1253px) { 
    #movieArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 35px;
        padding-left: 0;
    }
}
#movieArea > h2{
    margin-bottom: 80px;
}
#movieArea ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#movieArea ul li{
    width: 50%; 
    padding-right: 15px;
    box-sizing: border-box;
    margin-bottom: 70px;
}
#movieArea ul li > span{
    padding-top: 56.25%;
    position: relative;
    display: block;
}
#movieArea ul li:nth-child(even){
    padding-left: 15px;
    padding-right: 0;
}
#movieArea ul li a{
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    transition: .3s;
    z-index: 2;
}
#movieArea ul li a:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.5);
    z-index: 1;
    transform-origin: left top;
    transform: scale(1, 1);
    transition: transform .3s ease-in-out;
}
#movieArea ul li a:hover:before {
    transform-origin: right top;
    transform: scale(0, 1);
}
#movieArea ul li a:after{
    content: "";
    position: absolute;
    background: url(../images/common/play_icon.png) no-repeat 0 0 / 100%;
    width: 48px;
    height: 48px;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    z-index: 5;
}
.pvName{
    font-size: 16px;
    color: #fff;
    text-align: center;
    margin-top: 14px;
}

/* ▼MUSIC▼ --------------------------------- 
-------------------------------------------------*/

#musicArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -35px;
    padding-left: 35px;
}
@media screen and (min-width:1253px) { 
    #musicArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 35px;
        padding-left: 0;
    }
}
#musicArea > h2{
    margin-bottom: 80px;
}
.musicWrap > h3{
    font-size: 24px;
    line-height: 2;
    letter-spacing: 0.12em;
    color: #fff;
    margin-bottom: 32px;
    transform: scaleY(1.2);
}
.musicWrap > h3 span{
    font-size: 16px;
}
.musicWrap > figure{
    width: 100%;
    margin-bottom: 30px;
}
.musicWrap > p{
    font-size: 16px;
    letter-spacing: 0.15em;
    line-height: 3;
    color: #fff;
}
.musicWrap:first-child{
    margin-bottom: 60px;
}

/* ▼COMICS▼ --------------------------------- 
-------------------------------------------------*/

#comicsArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -60px;
    padding-left: 60px;
}
@media screen and (min-width:1253px) { 
    #comicsArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 60px;
        padding-left: 0;
    }
}
#comicsArea > h2{
    margin-bottom: 80px;
}
#comicsArea > .subInCont > section > h3{
    font-size: 24px;
    text-align: center;
    letter-spacing: 0.12em;
    color: #fff;
    margin-bottom: 32px;
    transform: scaleY(1.2);
}
#comicsArea > .subInCont > section > h3 span{
    font-size: 16px;
    display: block;
}
#comicsArea > .subInCont > section > ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
#comicWrap01 ul li,
#comicWrap02 ul li{
    width: 260px; 
    margin-right: 30px;
    margin-bottom: 40px;
}
#comicWrap01 ul li:nth-child(even){
    margin-right: 0;
}
#comicWrap01 ul{
    width: 550px;
    margin: 0 auto;
}
#comicWrap02 ul li:nth-child(3n){
    margin-right: 0;
}
#comicWrap02 ul{
    width: 840px;
    margin: 0 auto;
}
#comicsArea > .subInCont > section > ul li figcaption{
    font-size: 15px;
    text-align: center;
    margin-top: 10px;
    color: #fff;
}
#comicsArea > .subInCont > section > ul li{
    position: relative;
}
#comicsArea > .subInCont > section > ul li a{
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
}
#comicWrap01{
    margin-bottom: 60px;
}
.bookLink a{
    text-align: center;
    color: #fff;
    border: 1px solid #fff;
    width: 250px;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    letter-spacing: 0.04em;
    margin: 0 auto 40px;
    display: block;
    text-decoration: none;
    transition: .3s ease;
}
.bookLink a:hover{
    background: rgba(255,255,255,.4);
}
#comicCopyR{
    color: #fff;
    font-size: 12px;
    text-align: center;
}

/* ▼GOODS▼ --------------------------------- 
-------------------------------------------------*/

/*#goodsArea > h2,
#goodsDetailArea > h2{
    display: none !important;
}*/
#goodsArea > h2 {
    margin-bottom: 80px;
}
ul#goodsLink,
ul#goodsLink_d{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -255px;
    margin-bottom: 80px;
    font-family: 'Vollkorn',  serif;
}
ul#goodsLink li:not(:first-child),
ul#goodsLink_d li:not(:first-child){
    margin-left: -1px;
}
ul#goodsLink li a,
ul#goodsLink_d li a{
    display: block;
    text-align: center;
    color: #e60012;
    background: #fff;
    width: 176px;
    padding: 5px 0;
    font-size: 16px;
    letter-spacing: 0.04em;
    text-decoration: none;
    border: 1px solid #e60012;
    transition: .4s ease;
}
ul#goodsLink li a:hover,
ul#goodsLink_d li a:hover{
    color: #fff;
    background: #e60012;
}
ul#goodsLink li a.active,
ul#goodsLink_d li a.active{
    color: #fff;
    background: #e60012;
}
#goodsArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -60px;
    padding-left: 60px;
}
@media screen and (min-width:1253px) { 
    #goodsArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 60px;
        padding-left: 0;
    }
}
.goodsList > ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 840px;
    margin: 0 auto;
}
.goodsList > ul li {
    width: 260px;
    margin-right: 30px;
    margin-bottom: 40px;
}
.goodsList > ul li:nth-child(3n) {
    margin-right: 0;
}
.goodsList > ul li img{
    width: 100%;
}
.goodsList > ul li a{
    text-decoration: none;
}
.goodsList > ul li .goodsTxt{
    font-size: 15px;
    text-align: center;
    margin-top: 10px;
    display: block;
    color: #fff;
}
.goodsList{
    display: none;
}
#goodsDetailArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -35px;
    padding-left: 35px;
}
@media screen and (min-width:1253px) { 
    #goodsDetailArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 35px;
        padding-left: 0;
    }
}
#goodsDetail > h3 {
    font-size: 24px;
    line-height: 2;
    letter-spacing: 0.12em;
    color: #fff;
    margin-bottom: 32px;
    transform: scaleY(1.2);
}
#goodsDetail > p {
    font-size: 16px;
    letter-spacing: 0.15em;
    line-height: 3;
}
#goodsDetail > figure{
    width: 960px;
    margin: 0 auto 30px;
}
#goodsDetail > figure img{
    width: 100%;
}
#backTo a{
    display: block;
    text-decoration: none;
    border: 1px solid #fff;
    color: #fff;
    font-size: 14px;
    text-align: center;
    height: 40px;
    line-height: 40px;
    margin-top: 50px;
    transition: .3s ease;
}
#backTo a:hover{
    background: rgba(255,255,255,.3);
}

/* ▼NEWS▼ --------------------------------- 
-------------------------------------------------*/

#newsArea > h2{
    margin-bottom: 80px;
}
ul#newsList{
    /* margin-left: -255px; */
}
ul#newsList li a{
    text-decoration: none;
    background: rgba(75,75,75,.6);
    padding: 20px 0;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    position: relative;
}
ul#newsList li a > span{
    margin-left: 40px;
    padding-right: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    z-index: 1;
}
.newsDate{
    font-size: 15px;
    width: 94px;
    display: inline-block;
    vertical-align: top;
    transform: scaleY(1.17);
    position: relative;
    z-index: 1;
}
.newsTtlTxt{
    width: calc(100% - 94px);
    font-size: 15px;
    display: inline-block;
    transform: scaleY(1.17);
    position: relative;
    z-index: 1;
}
ul#newsList li a > span:before{
    content: "";
    background: url(../images/common/arrow_w.svg) no-repeat;
    width: 31px;
    height: 6px;
    position: absolute;
    top: 8px;
    right: 35px;
    transition: .3s ease-in-out;
    z-index: 1;
}
ul#newsList li a:hover > span:before{
    background: url(../images/common/arrow_r.svg) no-repeat;
    right: 24px;
}
ul#newsList li a:before{
    content: "";
    width: 0;
    height: 100%;
    background: rgba(230,0,18,.5);
    position: absolute;
    top: 0;
    left: 0;
    transition: .4s cubic-bezier(0.02, 0.88, 0.58, 1);
}
ul#newsList li a:after{
    content: "";
    width: 0;
    height: 100%;
    background: rgba(230,0,18,.5);
    position: absolute;
    top: 0;
    right: 0;
    transition: .4s cubic-bezier(0.02, 0.88, 0.58, 1);
}
ul#newsList li a:hover:before,
ul#newsList li a:hover:after{
    width: 50%;
}
#newsDetail > h3 > span{
    display: block;
    width: 900px;
    margin: 0 auto;
}
#newsDetail > h3 {
    padding: 20px 0;
    color: #fff;
    position: relative;
    margin-bottom: 40px;
}
#newsDetail > h3:after{
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(230,0,18,.5);
    position: absolute;
    top: 0;
    left: 0;
}
#newsDetail > h3:before{
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(75,75,75,.6);
    position: absolute;
    top: 0;
    left: 0;
}
#newsTxtBox{
    width: 900px;
}
#newsTxtBox img{
    max-width: 910px;
    margin-bottom: 30px;
}
#newsTxtBox{
    font-size: 16px;
    letter-spacing: 0.15em;
    line-height: 2;
    margin: 0 auto;
    color: #fff;
}
#newsTxtBox > p {
    margin-bottom: 20px;
}
#newsTxtBox a{
    color: #e4141c;
    font-weight: bold;
}
#newsArea #backTo{
    width: 910px;
    margin: 0 auto;
}
/*-- PAGER --*/
.pages{
    display: none !important;
}
.wp-pagenavi{
    width: 800px;
    margin: 100px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}
.wp-pagenavi a,
.wp-pagenavi span{
    display: block;
    width: 40px; 
    height: 40px;
    text-align: center;
    font-size: 16px;
    line-height: 40px;
    margin-left: 5px;
    margin-right: 5px;
}
.wp-pagenavi a{
    background: rgba(255,255,255,.5);
    color: #000;
    text-decoration: none;
    transition: all .3s;
}
.wp-pagenavi a:hover{
    background: #e60012;
    color: #fff;
}
.wp-pagenavi span{
    background: #e60012;
    color: #fff;
}

/* ▼CHARACTER▼ --------------------------------- 
-------------------------------------------------*/

.charaCont{
    background-image: none !important;
}
#charaArea .subInCont{
    width: 100%;
    min-height: 620px;
    margin-left: -60px;
    position: relative;
}
#charaList {
    width: 801px;
    height: 450px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
#charaList ul img{
    width: 100%;
}
#chara01 { width: 133px; }
#chara02 { width: 141px; }
#chara03 { width: 119px; }
#chara04 { width: 102px; }
#chara05 { width: 99px; }
#chara06 { width: 141px; }
#chara07 { width: 198px; }
#chara08 { width: 104px; }
#charaList ul li {
    position: absolute;
    bottom: 0;
}
#charaList ul li a{
    transition: .3s ease-in-out;
}
#charaList ul li#chara01{
    z-index: 9;
    left: 50%;
    transform: translateX(-50%);
    margin-left: -28px;
}
#charaList ul li#chara02{
    z-index: 8;
    right: 252px;
}
#charaList ul li#chara03{
    z-index: 7;
    right: 152px;
}
#charaList ul li#chara04{
    z-index: 6;
    left: 256px;
}
#charaList ul li#chara05{
    z-index: 5;
    right: 90px;
}
#charaList ul li#chara06{
    z-index: 3;
    left: 0;
}
#charaList ul li#chara07{
    z-index: 3;
    left: 89px;
}
#charaList ul li#chara08{
    z-index: 2;
    right: 0;
}
#charaList ul:hover li a:not(:hover){
    opacity: .6;
}
#charaDetailArea .subInCont {
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin-left: -35px;
    padding-left: 35px;
}
@media screen and (min-width:1253px) { 
    #charaDetailArea .subInCont{
        width: 1000px;
        margin: 0 auto;
        padding-right: 35px;
        padding-left: 0;
    }
}
#charaDetailArea > h2{
    margin-bottom: 80px;
}
#charaImg{
    width: 480px; /*--キャラwidth / 1200px--*/
}
#charaDetailCont{
    position: relative;
}
h3#charaName {
    position: absolute;
    font-size: 24px;
    color: #fff;
    top: 128px;
    left: 440px;
    letter-spacing: 0.3em;
}
h3#charaName > span {
    display: block;
    font-size: 16px;
    letter-spacing: 0.13em;
    margin-top: 4px;
}
#charaTxt {
    font-size: 14px;
    line-height: 34px;
    color: #fff;
    position: absolute;
    left: 440px;
    top: 240px;
    letter-spacing: 0.13em;
    width: 356px;
}
ul#pager{
    position: absolute;
    width: calc(100% - 300px);
    height: 40px;
    top: 320px;
}
ul#pager li#next{
    float: right;
}
ul#pager li#prev{
    float: left;
}
ul#pager li a{
    display: block;
    width: 50px;
    height: 40px;
    transition: .3s ease;
    transform: translateX(0);
    position: relative;
}
ul#pager li#next a:before{
    content: "";
    position: absolute;
    width: 50px;
    height: 1px;
    background: #e60012;
    top: 10px;
    left: 0;
    transform: rotate(20deg);
}
ul#pager li#next a:after{
    content: "";
    position: absolute;
    width: 50px;
    height: 1px;
    background: #e60012;
    bottom: 12px;
    left: 0;
    transform: rotate(-20deg);
}
ul#pager li#prev a:before{
    content: "";
    position: absolute;
    width: 50px;
    height: 1px;
    background: #e60012;
    top: 10px;
    left: 0;
    transform: rotate(-20deg);
}
ul#pager li#prev a:after{
    content: "";
    position: absolute;
    width: 50px;
    height: 1px;
    background: #e60012;
    bottom: 12px;
    left: 0;
    transform: rotate(20deg);
}
ul#pager li#next a:hover{
    transform: translateX(16px);
}
ul#pager li#prev a:hover{
    transform: translateX(-16px);
}
.charaClose {
    width: 100px;
    height: 100px;
    position: absolute;
    top: 85px;
    right: 40px;
    pointer-events: auto;
}
.charaClose a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.charaClose a span:first-child{
    position: absolute;
    display: block;
    width: 90px;
    height: 1px;
    background: #fff;
    top: 50px;
    left: 5px;
    transform: rotate(20deg);
}
.charaClose a span:last-child{
    position: absolute;
    display: block;
    width: 90px;
    height: 1px;
    background: #fff;
    top: 50px;
    left: 5px;
    transform: rotate(-20deg);
}
.charaClose a span:first-child:before{
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    background: #e60012;
    top: 0;
    right: 0;
    transition: .1s ease-in-out;
}
.charaClose a span:last-child:before{
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    background: #e60012;
    top: 0;
    left: 0;
    transition: .1s ease-in-out;
}
.charaClose a:hover span:first-child:before{
    width: 100%;
}
.charaClose a:hover span:last-child:before{
    transition-delay: .1s;
    width: 100%;
}