@charset "utf-8";
/*
■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 

 ■■■  ■                    ■                   
■     ■                    ■                   
■    ■■■■ ■ ■ ■   ■   ■■■ ■■■■ ■   ■  ■ ■  ■■■ 
 ■■   ■   ■■  ■   ■  ■■ ■  ■   ■   ■  ■■  ■  ■ 
  ■■■ ■   ■   ■   ■  ■     ■   ■   ■  ■   ■   ■
    ■ ■   ■   ■   ■  ■     ■   ■   ■  ■   ■■■■■
■   ■ ■   ■   ■  ■■  ■■    ■   ■  ■■  ■   ■    
■■■■  ■■  ■    ■■ ■   ■■■  ■■   ■■ ■  ■    ■■■ 

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* ---- Structure ---- */
html,body{ min-height:100%; position: relative; }
body{ color: #505456; background:#fff; }

.fnt-b{ font-weight: medium; }
.fnt-b{ font-weight: 500; }

header,article,section,footer{ position: relative; width: 100%; display: block; }
.lo-part,.lo-cont{ position: relative; width: 100%; display: block; }

.part-background{ position: absolute; width: 100%; min-height:100%; overflow: hidden; }
.part-foreground{ position: absolute; width: 100%; min-height:100%; overflow: hidden; z-index: 999; pointer-events: none; }
.part-header{ position: relative; z-index: 500; }
.part-body{ position: relative; }
.part-footer{ position: relative; }

/* lazyestload */
img { transition: filter 0.3s;}
img.lazyestload { width: 100%; filter: blur(8px);}

/* background */
#Background  > div{ width: 100%; min-height: 100%; position: absolute; top:0; }

/* foreground */
#Foreground  > div{ width: 100%; min-height: 100%; position: absolute; top:0; }
#Foreground .opening{ }

/* header */
.part-header{ width: calc(800/3000*100%); height: inherit; position: absolute; pointer-events: none; }
.top-page .part-header{ width: calc(1000/3000*100%); }
.cont-global-logo{ display: none;}
.cont-global-navi{ width: 100%; position: relative; padding: 12.5em 0 0 0; margin: 0 auto; overflow: hidden; }
.top-page .cont-global-navi{ padding-top: 25.5em; }

.global-navi{ width:70%; margin: 0 auto 2em auto ; position: relative; text-align: center; }
.global-navi > ul{ display: flex; flex-wrap: wrap; justify-content: center; list-style-type: none; padding: 0; margin: 0; position: relative; }
.global-navi > ul > li{ width: 100%; display: block; padding:0 ; margin: 0; }
.global-navi > ul > li a{ width: 100%; padding: .5em 0; display: block; letter-spacing: .05em; line-height: 1; position: relative; color: #505456; text-decoration: none; transform-origin: center center; pointer-events: all; /*transition: all .1s ease-out 0s;*/ font-family: YakuHanRPs, "M PLUS Rounded 1c", YakuHanJPs_Noto, "Noto Sans JP", sans-serif;  font-size: 1.333em; }
.global-navi > ul > li a:hover{ color: #ee86a7; transform: scale(1.1); }
.global-navi > ul > li a:hover > span{ }
.global-navi > ul > li a.cs{ color: #c0cacf; pointer-events: none;  }
/* .global-navi > ul > li.gn7{ display: none;  } */

.global-sns{ width:100%; margin: 0 auto ; position: relative; text-align: center; }
.global-sns > ul{ display: flex; flex-wrap: wrap; justify-content: center; list-style-type: none; padding: 0; margin: 0 0 .5em 0; position: relative; }
.global-sns > ul > li{ width: 2.5em; display: block; padding:0 ; margin: 0 .5em; }
.global-sns > ul > li a{ width: 100%; padding: 0; display: block; line-height: 1; position: relative; color: #505456; text-decoration: none; transform-origin: center center; pointer-events: all; }
.global-sns > ul > li a:hover{ transform: scale(1.1); }
.global-sns .label{ font-size: .7em; margin: 0; }

.global-season{ margin: 0 auto ; position: absolute; text-align: center; transform: rotate(-90deg); top:22em; left:-9.6em; }
.top-page .global-season{ top:36em; left:-9.45em; }
.global-season > ul{ display: flex; flex-wrap: wrap; justify-content: center; list-style-type: none; padding: 0; margin: 0 0 .5em 0; position: relative; }
.global-season > ul > li{ width: 10em; display: block; padding:0 ; margin: 0 .5em; }
.global-season > ul > li a{ width: 100%; padding: 0; display: block; line-height: 1; position: relative; color: #505456; text-decoration: none; transform-origin: center top; pointer-events: all; cursor: pointer; }
.global-season > ul > li a:hover{ transform: scale(1.1); }
.global-season > ul > li.off a{ pointer-events: none; }

.cont-sp-btn{ display: none; }

/* body */
.part-body{ position: relative; display: block; margin: 0; }
.part-body-side{ display: none; }
.part-body-main{ position: relative; width: 100%; }
.sub-page .part-body-main{background: url("../images/common/bg-blue-line.png") repeat center top; background-size:calc(20/3000*100vw);}

.cont-upper{ position: relative; }
.cont-middle{ position: relative; }
.cont-bottom{ position: relative; }

.sub-logo{ width: calc(394/3000*100vw); position: absolute; top:3vw; left:6vw; z-index: 2; }

.cont-top-content > .inner{ padding: 0; margin: 0 auto;}
.cont-sub-content > .inner{ padding: 2em 0 2em 0; margin: 0 auto;}

.top-subtitle{ font-size: 1em; width: calc(900/3000*100vw); margin: 0 auto 1em auto; z-index: 2; position: relative; }
.top-subtitle > span{}

.sub-subtitle{ font-size: 1em; width: calc(900/3000*100vw); margin: 0 auto 4em auto; z-index: 2; position: relative; }
.sub-subtitle > span{ }

.sub-blocktitle{ font-size: 1em; width: calc(1062/3000*100vw); margin: 0 auto 2em auto; z-index: 2; position: relative; }
.sub-blocktitle > span{ }

.sub-content-container{  }



.subnavi-cursor{ position: absolute; width: 96%; bottom:.3vw; left: 2%;  pointer-events: none; }
.subnavi-cursor ul{ display: flex; justify-content: space-between; margin: 0; padding: 0; list-style-type: none; }
.subnavi-cursor ul li{ display: block; width:calc(172/3000*100vw); height: calc(79/3000*100vw); position: relative; pointer-events: all; cursor: pointer; }
.subnavi-cursor ul li span{ display: block; width:100%; height: 100%; background: url(../images/common/cursor.png) no-repeat center center; background-size: 100%; transform-origin: center center; }
.subnavi-cursor ul li span:hover{ background-image: url(../images/cursor-hv.png); }
.subnavi-cursor ul li.right span{ transform: scale(-1,1); }

/* footer */
.part-footer{ position: relative; }
.cont-global-footer{ width: 100%; margin: 0 auto; padding: 1em 0; position: relative; text-align: center; background: #f9f3ef; }
.footer-pagetop{ width: calc( 75/3000 * 100vw ); height: calc( 91/3000 * 100vw ); position: fixed; bottom:3em; right: 3em; z-index: 10; margin: 0; }
.footer-pagetop a{ display: block; position: relative; width: 100%; min-height: 100%; background:url(../images/common/pagetop.png) no-repeat center center; background-size: contain; }
.footer-pagetop a:hover{ transform: scale(1.1); }
.footer-pagetop{ opacity: 0;}
.footer-pagetop.start{ animation: anm-pagetop-btn .5s 0s ease-out both running;}
@-webkit-keyframes anm-pagetop-btn { 0% { opacity: 0; -webkit-transform: translateY(-2em); transform: translateY(-2em);} 100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0);}}
@keyframes anm-pagetop-btn { 0% { opacity: 0; -webkit-transform: translateY(-2em); transform: translateY(-2em);} 100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0);}}
.anm-pagetop-btn { -webkit-animation-name: anm-pagetop-btn; animation-name: anm-pagetop-btn;}
.cont-footer-logo{ width: 100%; position: absolute; top:-2.2vw; overflow: hidden; }
.cont-footer-logo > div{ position: relative; width: calc( 183/3000 * 100vw ); margin: 0 auto;  }
.cont-footer-logo:before{ content:""; width: calc( 1400 / 3000 * 100vw ); height:1px; position: absolute; top:1.8vw; left:0; border-top:#ffce00 dashed 1px; }
.cont-footer-logo:after{ content:""; width: calc( 1400 / 3000 * 100vw ); height:1px; position: absolute; top:1.8vw; right:0; border-top:#ffce00 dashed 1px; }
.cont-footer{ padding: 0; }

.footer-copyrihgt p{ font-size: .9em; margin-bottom: 0; }
.cont-footer-banner{ padding: 1.5em 0; }
.banner-list{ display: flex; justify-content: center; align-items: center; }
.banner-list > div{ margin: .5em 1.5em; }
/* .banner-list .bn1{ width: calc( 268/3000 * 100vw ); } */
.banner-list .bn1{ width: calc( 425/3000 * 100vw ); }
.banner-list .bn2{ width: calc( 343/3000 * 100vw ); }

/* content */
.inview{ animation:inview 0.4s .2s ease-out both paused; }
.inview-start{ animation:inview-start 0.4s .2s ease-out both running; }
.inview-act{ transform-origin: left top; transition: all .5s ease .1s;  }

.table-a{ border-collapse: separate; border-spacing: 2px;}
.table-a th{ padding:0.5em; background-color:rgba(0,0,0,.05); font-weight: normal; text-align: inherit; vertical-align: top; text-align: left; }
.table-a td{ padding:0.5em; background-color:rgba(0,0,0,.025); vertical-align: top; }

.frame-a{ background-color:#FFF; padding: .2em;}
.frame-a > .dbl-l{ border:#000 solid 1px; }



.sdw-1{ filter: drop-shadow(0 0 .5em rgba(0,0,0,1)); }
.sdw-2{ filter: drop-shadow(0 0 .5em #d7000f); }
.sdw-3{ text-shadow:-1px 0px 0px #000,1px 0px 0px #000; filter: drop-shadow(0 0 .5em #fb00ff); }

.sdw-t1{ filter: drop-shadow(1px 1px 0 #ffe382); }
.sdw-t2{ filter: drop-shadow(1px 1px 0 #ebaffe); }

/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-entry{ padding: 3em; margin: 0 0 3em 0; background-color: #FFF; border:#505456 dashed 1px; border-radius: 1em; filter: drop-shadow(-.5em .5em 0 #ffedf3); }
.content-entry .entry-head{ margin-bottom: 0; position: relative; }
.content-entry .entry-date{ font-size: 1em; margin-bottom: .5em; pointer-events: none;  }
.content-entry .entry-date > span{ color: #ee86a7; font-weight: 500; line-height: 1; letter-spacing: .1em; margin-bottom: 0;}
.content-entry .entry-title{ padding: 1.5em; margin-bottom: 0; position: relative; background-color: #f3f0ef; border-radius: 1em; }
.content-entry .entry-title > span{ font-weight: 500; font-size: 1.466em; line-height: 1.5; }

.content-entry .entry-body{ padding: 1.5em 1em; font-size: 1.2em; letter-spacing: .05em; line-height: 1.8; }


.cont-singles{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-single{ padding: 0 2em; color: #91b9ed;  }

.cont-tiles{ display: flex; flex-wrap: wrap; justify-content: center;  }

.modal-data{ display: none; }
.cont-modal{ width: 100%; margin: 0 auto; }

/* modaal */
.modaal-overlay{ background: rgba(255,255,255,.75); }
.modaal-wrapper{ overflow-x: hidden; }
.modaal-inner-wrapper{ padding: 80px 0; }
.modaal-container{ background-color: transparent; box-shadow:none; max-width: inherit; }
.modaal-content-container{ padding: 0; }
.modaal-video-wrap{ margin: auto auto; }
.modaal-close{ right: 2.5em; top: 1.5em; width: 3em; height: 3em;}
.modaal-close:before,.modaal-close:after{ background-color: #505456; border-radius: 0; top: .4em; left: 2em; width: .4em; height: 4em; }
.modaal-close:focus,.modaal-close:hover {background: transparent;}
.modaal-close:focus:before,.modaal-close:focus:after{background: #e93922;}
.modaal-close:hover:before,.modaal-close:hover:after{background: #ee86a7;}

/* colorbox customize */
#colorbox{}
#cboxOverlay{ background:rgba(255,255,255,.8) ; /*background:rgba(0,0,0,.7) ;*/ }
#cboxTitle{ visibility: hidden; }
#cboxContent{/*  margin:3.61em 2.22em 0 2.22em; */ background:rgba(255,255,255,0); position: relative;}
#cboxLoadedContent{ padding:3.61em 2.22em 0 2.22em; border:none; background:rgba(255,255,255,0); }

#cboxClose{top: 0 /* -3.61em */ ; right: 0 /* 0.27em */ ; display:block; background:url(../images/lib/colorbox/close.png) no-repeat top center; background-size: contain; width:3.34em ; height:3.34em ; }
#cboxClose:hover{ background-position: top center; }
#cboxPrevious{top:60%; left: 0.27em /* -2.22em */; display:block; background:url(../images/lib/colorbox/prev.png) no-repeat top center; background-size: contain; width:1.667em ; height: 5em ; }
#cboxPrevious:hover{ background-position: top center; }
#cboxNext{top:60%; left:inherit; right: 0.27em /* -2.22em */; display:block; background:url(../images/lib/colorbox/next.png) no-repeat top center; background-size: contain; width:1.667em ; height: 5em ; }
#cboxNext:hover{ background-position: top center; }
#cboxCurrent{ display: none !important; }
#cboxLoadingGraphic{ background-image: url(../images/lib/colorbox/loading-custom.gif); }
/*
■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 

              ■                 ■                
■             ■  ■       ■      ■               ■
■             ■                 ■               ■
■  ■■■■    ■■■■  ■ ■   ■ ■   ■■■■  ■   ■  ■■■   ■
■  ■■  ■  ■■ ■■  ■  ■  ■ ■  ■■ ■■  ■   ■  ■  ■  ■
■  ■   ■  ■   ■  ■  ■ ■  ■  ■   ■  ■   ■   ■■■  ■
■  ■   ■  ■   ■  ■  ■ ■  ■  ■   ■  ■   ■ ■■  ■  ■
■  ■   ■  ■■ ■■  ■   ■■  ■  ■■ ■■  ■  ■■ ■   ■  ■
■  ■   ■   ■■■■  ■   ■   ■   ■■■■   ■■ ■  ■■■■  ■

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* Modal */
#Modal_data{ display: none; }

/* TOP-PAGE */
/* main */
.cont-top-visual{ width: calc(2000/3000*100%); position: relative; margin: 0 0 0 auto; }
.cont-top-visual img{ width: 100%; height: auto; }
.cont-top-visual .kv-container{ position: relative; margin: 0 auto; padding: 0;  }
.kv-container > div{ position: absolute; top:0; }
.kv-container .grp{ position: relative; top:inherit; display: none; }
.kv-container .grp.on{ display: block; }
.kv-container .grp > div{ position: absolute; top:0; }
.kv-container .grp .vis-grp{ position: relative; width: 100%; margin: 0 auto; }
.kv-container .grp .vis-grp .bg{ position: relative; }
.kv-container .grp .vis-grp .vis{ position: absolute; top:0; }
.kv-container .oa{ width: calc(760/3000*100vw); top:19vw; left:-29.5vw; margin: 0 auto; }
.kv-container .logo{ width: calc(760/3000*100vw); top:2.5vw; left:-29.5vw; margin: 0; }

.vis-switch-container{ width: 6vw; margin: 0; position: absolute; top:31vw; left:-2.9vw; pointer-events: none; z-index: 2; }
.vis-switch{ display: flex; flex-wrap: wrap;  }
.vis-switch > div{ width: 6vw; height: 6vw; margin: .125vw; pointer-events: auto; line-height: 1; }
.vis-switch > div a{ display: inline-block; width: 100%; min-height: 100%; background: url("../images/top-vis-switch-bg.png") no-repeat center center; background-size: contain; padding: 0; }
.vis-switch > div.on a{ background-image: url("../images/top-vis-switch-bg-on.png"); pointer-events: none; }

/* #Foreground .opening{ display: none; } */
#Foreground .opening{ position: fixed; overflow: hidden; pointer-events: all; }
#Foreground .opening .bg{ width: 100%; height: 100vh; position: absolute; top:0; background-color: #FFF; }
#Foreground .opening .op-cont{ width: 100%; height: 100vh; position: relative; display: flex; justify-content: center; align-items: center; }
#Foreground .opening .op-cont .anm-part{ position: relative; width: calc(1600/3000*100vw); height: calc(100/3000*100vw); line-height: 0; }
#Foreground .opening .op-cont .anm-part .loafer{ width: calc(308/3000*100vw); height: calc(86/3000*100vw); position: absolute; top:5vw; left:0; right: 0; margin: 0 auto; animation: anm-loafer 2s 0s ease-in-out both paused infinite; transform-origin: center top; }
#Foreground .opening .op-cont .anm-part .loafer .body{ position: relative; }
#Foreground .opening .op-cont .anm-part .loafer .efct{ width: calc(43/3000*100vw); height: calc(27/3000*100vw); position: absolute; top:-1vw; left:-1vw; opacity: 0; animation: anm-loafer-efct .5s 0s linear both paused 1; }
#Foreground .opening .op-cont .anm-part .logo{ width: calc(761/3000*100vw); position: absolute; top:0; left:0; right: 0; margin: 0 auto; }
@keyframes anm-loafer {
0% { transform: translateY(0%) rotate(0deg);}
25% { transform: translateY(-150%) rotate(10deg);}
50% { transform: translateY(0%) rotate(0deg);}
75% { transform: translateY(-150%) rotate(-10deg);}
100% { transform: translateY(0) rotate(0deg);}
}
@keyframes anm-loafer-efct {
0% { opacity:0;}
49% { opacity:0;}
50% { opacity:1;}
100% { opacity:1;}
}

.init #Foreground .opening .op-cont .anm-part .loafer{ animation-play-state: running; }
.init #Foreground .opening .op-cont .anm-part .logo{ opacity: 0; transform: rotateY(-90deg); }

.s2 #Foreground .opening .op-cont .anm-part .loafer{ animation-play-state: paused; }
.s2 #Foreground .opening .op-cont .anm-part .loafer .efct{ animation-play-state: running; }

.s4 #Foreground .opening .op-cont{ opacity: 0; transform: scale(1.1); transition: all .5s ease-out 0s; }
.s4 #Foreground .opening .bg{ opacity: 0; transition: all .5s ease-out .3s; }

.s5 #Foreground .opening{ display: none; }

.init .kv-container .logo{ opacity: 0; transform: scale(1.5,1.5); }
.init .kv-container .oa{ opacity: 0; transform: translateY(-20%); }
.init .kv-container .grp .vis-grp{ opacity: 0; transform: scale(1.1); }

.s5 .kv-container .logo{ opacity: 1; transform: scale(1,1); transition: all .5s ease-in-out .5s; }
.s5 .kv-container .oa{ opacity: 1; transform: translateY(0); transition: all .5s ease-out .9s;}
.s5 .kv-container .grp .vis-grp{ opacity: 1; transform: scale(1) translateY(0); transition: all .5s ease-out .1s; }

.kv-container .grp{ transform: scale(1.1,1.1) ; transform-origin: center center; opacity: 0; }
.kv-container .grp.on{ transform: scale(1,1); opacity: 1; transition: all 1.0s ease .0s; }



/* top-navi */
.cont-top-navi{ display: none;  }




/* top-news */
.cont-top-news{ width: calc(1000/3000*100%); position: absolute; top:-34vw; left: 0; }
.cont-top-news > .inner{ width: 100%; padding: 0; margin: 0 auto; }
.top-news-container{  width: 60%; padding:0; min-height: 20vw; margin: 0 auto; }
.top-news-container > a{ display: block; background: url("../images/common/line-pink.png") no-repeat center bottom; background-size: contain; padding: 1em .5em; margin-bottom: .5em; pointer-events: all; letter-spacing: .1em; }
.top-news-container > a dl{ padding: 0; margin: 0; display: flex; flex-wrap: wrap; align-items: center; }
.top-news-container > a dl dt{ width: inherit; font-size: 1em; display: inline-block; padding: .25em 0; margin: 0; line-height: 1; font-weight: normal; border-bottom: #ee86a7 solid 1px; }
.top-news-container > a dl dd{ width:100%; font-size: 1em; display: block; padding: .25em 0; margin: 0; line-height: 1.5; }
.top-news-container > a,
.top-news-container > a:visited{ text-decoration: none; color: #505456; }
.top-news-container > a:hover{ text-decoration: underline; color: #ee86a7; text-decoration: none; }


/* top-movie */
.cont-top-movie{ margin-bottom: 2em; background-color: #fbf8f5; position: relative; }
.cont-top-movie > .inner{ padding: 2em 0 1em 0; }
.top-movie-list{ position: relative; margin: 0 auto; }
.top-movie-list .thm{ width:calc(1600/3000*100vw); max-width: 1280px; padding: 2em 2em; transform-origin: center center; position: relative; }
.top-movie-list .thm > a{ display: inline-block; pointer-events: auto; overflow: hidden; margin-bottom: .5em; }
.top-movie-list .thm > a::after{ content:""; position: absolute; display: block; width:100%; height:100%; background: url("../images/common/play-btn.png") no-repeat center center; background-size: calc(142/3000*100vw); transform-origin: center center; pointer-events: none; top:0; left: 0; right: 0; margin: 0 auto; opacity: 1; }
.top-movie-list .thm > a:hover::after{ background-size: calc(142/3000*100vw*1.1); }

.top-movie-dots{ text-align: center;}
.top-movie-dots ul{ display: block; list-style-type: none; padding: 0; margin: 0; }
.top-movie-dots li { display: inline-block; margin: 0 3em 0 -1em; padding: 0;}
.top-movie-dots button { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.top-movie-dots li button { position: relative; text-indent: -9999px;}
.top-movie-dots li button:before { content: "●"; color: #d9d7d5; font-size: 1em; text-indent: 0px; position: absolute; top: 0; left: 0;}
.top-movie-dots li.slick-active button:before { color: #58c3e0;}
/* no slick ver */
/* .top-movie-list .thm{ width: 100%; position: relative;text-align: center; }
.top-movie-list .thm > a{ display: inline-block; pointer-events: auto; overflow: hidden; margin-bottom: .5em; }
.top-movie-list .thm > a::after{ content:""; position: absolute; display: block; width:100%; height:100%; background: url("../images/common/play-btn.png") no-repeat center center; background-size: calc(142/3000*100vw); transform-origin: center center; pointer-events: none; top:0; left: 0; right: 0; margin: 0 auto; opacity: 1; }
.top-movie-list .thm > a:hover::after{ background-size: calc(142/3000*100vw*1.1); }
.top-movie-list .thm .cap{ display: inline-block; color: #000; font-weight: bold; margin-bottom: 0; background-color: #FFF; padding: .4em .8em; font-size: 1.3em; letter-spacing: .1em; line-height: 1; border:#000 solid 1px; }
.top-movie-cursor{ display: none; } */



/* intro */
.cont-top-intro{ margin-bottom: 5em; position: relative;  }
.cont-top-intro > .inner{ width: calc(2600/3000*100vw); padding:0; margin: 0 auto; }
.intro-text{ width: calc(1308/3000*100vw); min-height: 30vw; padding: 2em 0; margin: 0 auto; }
.intro-images{ width: calc(520/3000*100vw); display: flex; flex-wrap: wrap; position: absolute; top:6vw; }
.intro-images.left{ left:0; }
.intro-images.right{ right:0; }
.intro-images > div{ width: 100%; margin: 1em; }
.intro-images > div.i1{ filter: drop-shadow(.5em .5em 0 #d7f2fb); transition: all .5s ease-out .1s; }
.intro-images > div.i2{ filter: drop-shadow(.5em .5em 0 #fff6cd); transition: all .5s ease-out .3s; }
.intro-images > div.i3{ filter: drop-shadow(.5em .5em 0 #e5fbe4); transition: all .5s ease-out .5s; }
.intro-images > div.i4{ filter: drop-shadow(.5em .5em 0 #d7f2fb); transition: all .5s ease-out .1s; }
.intro-images > div.i5{ filter: drop-shadow(.5em .5em 0 #e5fbe4); transition: all .5s ease-out .3s; }
.intro-images > div.i6{ filter: drop-shadow(.5em .5em 0 #fce5ed); transition: all .5s ease-out .5s; }

.intro-images.inview-act > div{ opacity: 0; transform:translateY(15%) scale(1.1); }
.intro-images.inview-act-start > div{ opacity: 1; transform:translateX(0) scale(1); }

/* staffcast */
.cont-top-staffcast{ padding: 2em 0; margin-bottom: 2em; position: relative; background: url("../images/common/bg-blue-line.png") repeat center top; background-size:calc(20/3000*100vw); }
.cont-top-staffcast > .inner{ width: calc(1800/3000*100vw); padding: 0; margin: 0 auto; }
.staffcast-subtitle{ font-size: 1.2em; margin-bottom: 2em; text-align: center; font-weight: 500; }

.staffcast-container{ padding: 2em 0; display: flex; flex-wrap: wrap; justify-content: center; position: relative; }
.staffcast-container > div{ width: 50%; }

.staffcast-list{ width: 100%; text-align: center; display: block; margin: 0 auto 1.5em auto;  }
.staffcast-list > div{ display: block; margin-bottom: 1.5em; }
.staffcast-list > div > div{ display: inline-block; position: relative; line-height: 1; }
.staffcast-list > div > div.ext{ display: block; }
.staffcast-list .pos{ display: inline-block; font-size: 1.2em; color: #f4b800; letter-spacing: .05em;  margin-bottom: .5em; line-height: 1; }
.staffcast-list .name{ display: inline-block; font-size: 1.2em; letter-spacing: .1em; margin-bottom: 0; line-height: 1; }
.staffcast-list .ext{ display: block; font-size: .9em; letter-spacing: .1em; padding-top: .5em; margin-bottom: 0; line-height: 1; }
.staffcast-list .cmt{ display: inline-block; width: 2.4em; position: absolute; top:.3em; right:-3em; text-decoration: none; pointer-events: auto; }
.staffcast-list .cmt:hover{transform: scale(1.2); text-decoration: none; cursor: pointer; }

.cont-modal.cmt{ width: 66vw; /*max-width: 1000px;*/ }

.comment-frame{ padding: .25em; background:#FFF; border:#ffce00 dashed 1px; border-radius: 3em; }
.comment-frame > div{ border-radius: 2.65em; background:#f8f8f8; position: relative; overflow: hidden; }
.comment-frame .pdg{ padding: 5em 3em; color:#505456; letter-spacing: .05em; }
.comment-frame .pdg2{ padding: 5em 3em 0 3em; color:#505456; letter-spacing: .05em; }


/* SUB-PAGE */

.sub-page .cont-upper{ }
.sub-page .cont-middle{ min-height: calc(100vh - 13em);}

/* news */
.cont-sub-news{ }
.cont-sub-news > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.news{   }
.sub-news-container{ position: relative; }
.news-twt-btn{ width: 12.5em; margin-bottom: .25em; }

/* onair */
.cont-sub-onair{ }
.cont-sub-onair > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.onair{   }
.sub-onair-container{ position: relative; }

.onair-list{ margin: 0 auto 1.0em auto; max-width: 45em; }
.onair-list{ display: flex; flex-wrap: wrap; justify-content: center; text-align: left; padding: 1.0em; background-color: #fff; border:#fb8537 dashed .133em; border-radius: 1.5em; }
.onair-list.first{  }
.onair-list .col-a{ width: 30%; }
.onair-list .col-b{ width: 70%; }
.onair-list .col-c{ width: 100%; }
.onair-list .col-d{ width: 70%; margin-left: 30%; }
.onair-list .name{ font-size: 1.2em; font-weight: normal; padding: 0 .75em; margin-bottom: 0; letter-spacing: .05em; display: inline-block; position: relative; transform: rotate(-2.5deg); background-color: #ffe6d6; border-radius: .25em; }
.onair-list .schd{ font-size: 1.2em; font-weight: normal; margin-bottom: 0; letter-spacing: .05em; color: #444; }
.onair-list .time{ font-size: 1.2em; font-weight: normal; margin-bottom: 0; letter-spacing: .05em; color: #444; }
.onair-list .extr{ font-size: .9em; font-weight: normal; margin: .3em 0 0.1em 0; letter-spacing: .05em; color: #444;}
a.onair-list { text-decoration: none; color: #000; pointer-events: all; }
a.onair-list:hover{ color: #fff; background-color: #fb8537; }

.onair-listexstream-catch p{ display: inline-block; color: #fb8537; border-bottom:#fb8537 dashed .133em; }
.onair-list-il-container{ max-width: 45em; margin: 0 auto; color: #444; }
.onair-list-il-container .ttl5{  background-color: #ffe6d6; color:#444; font-weight: normal; font-size: 1em; border-radius: .25em; text-align: center;}
.onair-list-il{ margin: 0 auto; text-align: center; display: flex; flex-wrap: wrap; justify-content: center; }
.onair-list-il > a{ width: 49%; margin: 0.5%; display: block; color: #444; padding: .5em; background-color: #fff; border:#fb8537 dashed .133em; border-radius: 1em; text-decoration: none; font-weight: normal; }
.onair-list-il > a.cs{ pointer-events: none; }
.onair-list-il > a:hover{ background-color: #fb8537; color: #fff;}

/* story */
.cont-sub-story{ }
.cont-sub-story > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.story{ margin-bottom: 1em; }
.sub-story-container{ position: relative; }

.cont-story-navi{ width: 90%; margin: 0 auto 1.0em auto; }
.story-navi{ width: 100%; margin: 0 auto;  padding: .25em; border-radius: 0; }
.story-navi ul{ display: flex; flex-wrap: wrap; justify-content: center; margin: 0; padding: 0; list-style-type: none; }
.story-navi ul li{ width: calc(1/6*100%); display: block; margin: 0; padding: .5em; text-align: center; }
.story-navi ul li.spc-sp{ display: none; }
.story-navi ul li a{ display: block; width: 100%; transition: all .1s ease 0s; text-decoration: none; position: relative; line-height: 1; filter: drop-shadow(.3em .3em 0 rgba(96,165,248,.5)); }
.story-navi ul li a img{ border:#fbf8f5 solid .233em; position: relative; }

.story-navi ul li.n1 a{ transform: rotate(5deg); }
.story-navi ul li.n2 a{ transform: rotate(-2.5deg); }
.story-navi ul li.n3 a{ transform: rotate(1deg); }
.story-navi ul li.n4 a{ transform: rotate(0deg); }
.story-navi ul li.n5 a{ transform: rotate(5deg); }
.story-navi ul li.n6 a{ transform: rotate(-2.5deg); }
.story-navi ul li.n7 a{ transform: rotate(-5deg); }
.story-navi ul li.n8 a{ transform: rotate(5deg); }
.story-navi ul li.n9 a{ transform: rotate(-2.5deg); }
.story-navi ul li.n10 a{ transform: rotate(1deg); }
.story-navi ul li.n11 a{ transform: rotate(0deg); }
.story-navi ul li.n12 a{ transform: rotate(5deg); }

.story-navi ul li a:hover{ transform: scale(1.05,1.05);  }
.story-navi ul li.crt a{ pointer-events: none;  }
/* .story-navi ul li.crt a img{ border-color:#fee; } */

.cont-story-data{ width:100%; min-height: 64vw; position: relative;  }
.story-bg{ width: 100%; height: 63vw; position: absolute; top:23.5vw; /*top:27vw;*/ z-index: 0; display: none;  }
.story-bg{ background: #fbf8f5; display: block; }

.story-data{ display: none; }
.story-data{ position: relative; pointer-events:none; text-align: center;  }
.story-data .episode-container{ position: relative; padding: 2em 0 2em 0; }

.story-data .ep-title-block{ margin-bottom: 1.25em; display: flex; flex-wrap: wrap; justify-content: center;flex-direction: column; align-items: center; position: relative; z-index: 2; }

.story-data .ep-title{ font-size: 1em; margin-bottom: 0em; position: relative; width: calc(1000/3000*100vw); }
.story-data .ep-title > span{  }

.story-data .ep-title [data-ruby]::before { top: -1.0em; }
.story-data .ep-slider-sceneImage{ width: 80%; max-width: 1680px; margin:0 auto 2em auto ; position: relative; z-index: 2;  }
.story-data .ep-slider-sceneImage .sld{ position: relative; padding: 0; text-align: center;  }
.story-data .ep-slider-sceneImage .sld img{ border:#fff solid .466em; }

.ep-slider-dots{ text-align: center; margin-top: 1em; pointer-events: auto;}
.ep-slider-dots ul{ display: block; list-style-type: none; padding: 0; margin: 0; }
.ep-slider-dots li { display: inline-block; margin: 0 3em 0 -1em; padding: 0;}
.ep-slider-dots button { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.ep-slider-dots li button { position: relative; text-indent: -9999px;}
.ep-slider-dots li button:before { content: "●"; color: #d9d7d5; font-size: 1em; text-indent: 0px; position: absolute; top: 0; left: 0;}
.ep-slider-dots li.slick-active button:before { color: #b6d7ff;}

.story-data .ep-text{ width: 85%; background-color: #FFF; padding: 2em; border-radius: 1em; margin: 0 auto 1em auto; position: relative; z-index: 2; }
.story-data .ep-text p{ font-size: 1.2em; font-weight: normal; letter-spacing: .05em; line-height: 2;  margin: 0;}
.story-data .ep-text p [data-ruby]::before { top: -1.3em; transform: scale(0.45,0.5); width: 222%;  }
.story-data .ep-staff{ margin-bottom: 1em; position: relative; z-index: 2; }
.story-data .ep-staff p{ color:#808080; font-size: 1em; line-height: 1.8; letter-spacing: .1em; display: inline; }

.story-data .ep-trailer{ max-width: 30em; margin:0 auto; position: relative; z-index: 2; pointer-events: all; }
.story-data .ep-trailer .ttl{ text-align: center; font-size: 1.2em; letter-spacing: .1em; font-weight: bold; margin-bottom: .5em; color: #ff0078; }
.story-data .ep-trailer .th{ text-align: center; }
.story-data .ep-trailer .th a{ display: inline-block; line-height: 1; padding: 1px; background-color: #ff0078;}
.story-data.crt{ display: block; animation: fadeIn .5s 0s ease-out both;  }


/* character */
.cont-sub-character{ position: relative; overflow: hidden; }
.cont-sub-character > .inner{ width: 100%; padding:4em 0 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.character{ margin-left: 44em; margin-bottom: 3em; }

#CharaCont{ position: relative; }
.cont-character-navi{ width: calc(2400/3000*100vw); margin: 0 0 0 auto; position: relative; z-index: 5; }
.character-navi{ width: 50%; margin: 0 auto }
.character-navi ul{ display: flex; flex-wrap: wrap; justify-content: center; margin: 0; padding: 0; list-style-type: none; }
.character-navi ul li{ width: calc(100% / 5); display: block; margin: 0; padding:.5em; }
.character-navi ul li a{ display: block; position: relative; transform-origin: center center; pointer-events: all; cursor: pointer; }
.character-navi ul li a:hover{ text-decoration: none; transform: scale(1.1);  }
.character-navi ul li.crt a{ pointer-events: none; transform: scale(1.2); }
.character-navi ul li.sep-sp{ display: none; }

.cont-character-data{ width:100%; padding-bottom: 5vw; position: relative; }
.character-data{ width:100%; min-height: 60em; position: relative; pointer-events:none; display: none; }
.character-data .bg-bar{ width: 100%; height: 31vw; position: absolute; top:.5vw; right: 0; margin: 0; background: #ffe8f7; transform: skewY(-15deg); transform-origin: right top; }
#C2 .bg-bar{ background-color: #e0f6ff; }
#C3 .bg-bar{ background-color: #ffe9e6; }
#C4 .bg-bar{ background-color: #fff9dc; }
#C5 .bg-bar{ background-color: #eceeff; }
.character-data .chr-img{ position: relative; z-index: 5; width: calc(900/3000*100vw); margin: 0 auto 0 20vw;  }
.character-data .chr-prof{ position: absolute; width: 45em; top:8em; left:50em; z-index: 3; }
.character-data .prof-name-ct{ width: calc(800/3000*100vw); margin: 0 0 1.0em 0; position: relative;}
.character-data .prof-face{ width: calc(1360/3000*100vw); margin: 0 0 1.0em -5em; position: relative;}
.character-data .prof-name{ padding: 0; margin: 0 0 1.5em 0; position: relative;}
.character-data .prof-name .name{ display: inline-block; margin-right: .5em; }
.character-data .prof-name .name span{ font-size: 1.6em; letter-spacing: 0.1em; }
.character-data .prof-name .cv{ display: inline-block; }
.character-data .prof-name .cv span{ font-size: 1.4em; color: #70e56a; letter-spacing: 0.1em; }
.character-data .prof-text{ padding: 0; }
.character-data .prof-text .text{ margin: 0; font-size: 1.3em; letter-spacing: .05em; line-height: 2; position: relative; z-index: 6; }

.character-data.crt{ display: block; }
.character-data.crt .chr-img{ animation: anm-character-change .5s .05s ease-out both running; }
@keyframes anm-character-change {
  0% { opacity: 0; transform: translateX(10%);}
  100% { opacity: 1; transform: translateX(0);}
}
.character-data.crt .prof-face{ animation: anm-character-face-change .5s .05s ease-out both running; }
@keyframes anm-character-face-change {
  0% { opacity: 0; transform: translateX(-10%);}
  100% { opacity: 1; transform: translateX(0);}
}
.character-data.crt .bg-bar{ animation: anm-character-bar-change .5s .05s ease-out both running; }
@keyframes anm-character-bar-change {
  0% { height: .1vw;}
  100% { height: 31vw;}
}

/* blu-ray */
.cont-sub-bddvd{ }
.cont-sub-bddvd > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.bddvd{ }
.sub-bddvd-container{ position: relative; }
.bddvd-text{ color: #39d99f; }
.bddvd-shadow{ filter: drop-shadow(0.399em 0.399em 0 rgba(57, 217, 159, 0.7)); }

.bnf-list{ display: flex; flex-wrap: wrap; margin-bottom: 1em; align-items: flex-start; }
.bnf-list > div{ }
.bnf-list > .item-x1{ width: 100%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x2{ width: 50%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x3{ width: 33.33%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x3x2{ width: 66.66%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x4{ width: 25%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x4x3{ width: 75%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x5{ width: 20%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list > .item-x1.x1-dbl{ width: 50%; margin: 0 ; padding: .5em .25em; display: flex; flex-wrap: wrap; align-items: top; }
.bnf-list .item-col{ width: 100%; }
.bnf-list .item-col-x2{ width: calc((100% - (0.5em * 1)) / 2); margin-right: .5em; }
.bnf-list .item-col-x2:nth-of-type(2n){ margin-right: 0;}
.bnf-list .item-col-x2:last-child{ margin: 0; }
.bnf-list .item-col-x3{ width: calc((100% - (0.5em * 2)) / 3); margin-right: .5em; }
.bnf-list .item-col-x3:nth-of-type(3n){ margin-right: 0;}
.bnf-list .item-col-x3:last-child{ margin: 0; }
.bnf-list .item-col-x3x2{ width: calc((100% - (0.5em * 2)) / 3 * 2); margin-right: .5em; }
.bnf-list .item-col-x4{ width: calc((100% - (0.5em * 3)) / 4); margin-right: .5em; }
.bnf-list .item-col-x4:nth-of-type(4n){ margin-right: 0;}
.bnf-list .item-col-x4:last-child{ margin: 0; }

.bnf-list .shop{ width: 100%; font-size: 0.9em; margin-bottom: .5em; color: #39d99f; background-color: rgba(0,0,0,.025); padding: .2em .4em; text-align: center; }
.bnf-list .shop::before{ content:""; }
.bnf-list .shop::after{ content:""; }
.bnf-list .thumb{ padding:0; text-align: center; margin: .5em auto ; }
.bnf-list .thumb{ display: flex; align-items: center; justify-content: center; vertical-align: middle; }
.bnf-list .thumb .inner{ /*min-height: 13em;*/ position: relative; }
.bnf-list .thumb .inner a{ display: block; /*height: 13em;*/ position: relative; }
.bnf-list .thumb .inner img.vt{ max-width: auto; height: 13em; width: auto\9;}
.bnf-list .thumb.np{ pointer-events: none;  }
.bnf-list .data{ width: 100%; text-align: center; }
.bnf-list .excond{ font-size: 0.666em; color: #ccc; margin-bottom: .3em; }
.bnf-list .name{ font-size: .8em; letter-spacing: -0.05em; margin-bottom: .3em;  }
.bnf-list .cond{ font-size: 0.666em; margin-bottom: .3em; background-color:#39d99f; display: inline-block; padding: .1em .3em; color: #fff; }
.bnf-list .start{ font-size: 0.666em;  }
.bnf-list .shop-link{ width: 100%; font-size: 0.666em; padding: .5em 0 0 0; text-align: center;  }

.bnf-list .thumb{ padding:0 1.5em;  }


/* music */
.cont-sub-music{ }
.cont-sub-music > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.music{ }
.sub-music-container{ position: relative; }
.music-text{ color: #5b58e7; }
.btn-artist-home{ width: 10em; margin: 0 auto; }
.comment-cont{ padding: .75em 0 0 0; display: block; position: relative; text-align: center; }
.comment-cont .name{ display: inline-block; font-size: 1.2em; letter-spacing: .1em; margin-bottom: 0; line-height: 1; position: relative; }
.comment-cont .cmt{ display: inline-block; width: 2.4em; position: absolute; top:.3em; left:calc(50% + 4em); text-decoration: none; pointer-events: auto; }
.comment-cont .cmt:hover{transform: scale(1.2); text-decoration: none; cursor: pointer; }


/* comics */
.cont-sub-comics{ }
.cont-sub-comics > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.comics{ }
.sub-comics-container{ position: relative; }

.cont-sub-comics .content-entry{ filter: drop-shadow(-.5em .5em 0 #efd9fc); }
.comics-comics-ttl{width: calc(1060/3000*100vw); margin: 0 auto 2em auto;}
.books-text{ color: #af58e7; }

.ilink-book{ display: inline-block; border:#58c3e0 solid 2px; padding: .8em 1em; border-radius: .5em; background-color: #FFF; line-height: 1; letter-spacing: .05em; text-decoration: none; filter: drop-shadow(.25em .25em 0 #d7f6ff); }
.ilink-book span{ font-size: 1.133em; }
.ilink-book,
.ilink-book:visited,
.ilink-book:active{ color: #58c3e0;  }
.ilink-book:hover{  color: #fff; background-color: #58c3e0; text-decoration: none; }

.books-list a{  pointer-events: none; }
.books-list a img{ border:#e8d6e9 solid 1px; }


/* special */
.cont-sub-special{ }
.cont-sub-special > .inner{ width: calc(2200/3000*100vw); padding:4em 5em 4em 0; margin: 0 0 0 auto; }
.sub-subtitle.special{ }
.sub-special-container{ position: relative; }

.cont-sub-special .content-entry{ filter: drop-shadow(-.5em .5em 0 #d9fcde); }
.special-sub-ttl{width: calc(1060/3000*100vw); margin: 0 auto 2em auto;}



/*
■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■      

                     ■                                                     
 ■■    ■■            ■  ■             ■■■                     ■            
 ■■    ■■            ■               ■   ■                                 
 ■■■  ■ ■   ■■■   ■■■■  ■  ■■■      ■     ■  ■   ■   ■■■  ■ ■ ■   ■■■  ■■■ 
 ■ ■  ■ ■  ■  ■  ■■ ■■  ■  ■  ■     ■     ■  ■   ■  ■  ■  ■■  ■  ■  ■  ■   
 ■ ■  ■ ■  ■   ■ ■   ■  ■   ■■■     ■     ■  ■   ■  ■   ■ ■   ■  ■   ■ ■■  
 ■  ■■  ■  ■■■■■ ■   ■  ■ ■■  ■     ■     ■  ■   ■  ■■■■■ ■   ■  ■■■■■   ■■
 ■  ■■  ■  ■     ■■ ■■  ■ ■   ■      ■  ■■   ■  ■■  ■     ■   ■  ■        ■
 ■      ■   ■■■   ■■■■  ■  ■■■■       ■■■■■   ■■ ■   ■■■  ■   ■   ■■■  ■■■ 

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* Custom 1920 ----------------------------------------------------------------------------- */
@media (max-width: 1919px) {
}
/* Custom 1400 ----------------------------------------------------------------------------- */
@media (max-width: 1399px) {

}
/* LG ----------------------------------------------------------------------------- */
@media (max-width: 1199px) {

}
/* MD ----------------------------------------------------------------------------- */
@media (max-width: 991px) {
}
/* lt768 ----------------------------------------------------------------------------- */
@media (min-width:768px) {
}
/* SM ----------------------------------------------------------------------------- */
@media (max-width: 767px) {
/* ---- Structure ---- */
html,body{ min-height:100%; position: relative; }
body{ }

header,article,section,footer{ position: relative; width: 100%; display: block; }
.lo-part,.lo-cont{ position: relative; width: 100%; display: block; }

.part-background{ position: absolute; width: 100%; min-height:100%; overflow: hidden; }
.part-foreground{ position: absolute; width: 100%; min-height:100%; overflow: hidden; z-index: 999; pointer-events: none; }
.part-header{ position: relative; z-index: 500; }
.part-body{ position: relative; }
.part-footer{ position: relative; }

/* background */
#Background  > div{ width: 100%; min-height: 100%; position: absolute; top:0; }

/* foreground */
#Foreground  > div{ width: 100%; min-height: 100%; position: absolute; top:0; }

/* header */
.part-header{ width: 100%; height: 100%; position: absolute; pointer-events: none; background-color: rgba(255,255,255,0); transition: all .25s ease-out 0s; overflow: hidden; }
.top-page .part-header{ width: 100%; }
.part-header:before{ content:""; width: 100%; min-height: 75vw; position: absolute; top:-27vw; background: #f9f3ef; transform: skewY(-15deg); visibility: hidden; opacity: 0; transition: all .5s ease-out 0s; }
.part-header:after{ content:""; width: 100%; min-height: 15vw; position: absolute; top:125vw; background: #ffe8f7; transform: skewY(-15deg); visibility: hidden; opacity: 0; transition: all .5s ease-out .1s; }
.cont-global-logo{ width: 40vw; margin: 0 auto; padding: 3vw 0 4vw 0 ; position: relative; }
.cont-global-navi{ padding: 3em 2em 0 2em; margin: 0 auto; }
.top-page .cont-global-navi{ padding-top: 3em; }

.global-navi{ width:100%; margin: 0 auto ; position: relative; z-index: 2; }
.global-navi > ul{ display: flex; flex-wrap: wrap; justify-content: center;  }
.global-navi > ul > li{ width: 50%; display: block; padding:0 0 1.9em 0 ; margin: 0; text-align: center; }
.global-navi > ul > li a{ padding: 0; font-size: 1.5em; }

.global-sns{ z-index: 2; margin-bottom:2em; }
.global-sns > ul > li{ width: 3.5em; }

.global-season{ margin: 0 auto ; position: relative; text-align: center; transform: rotate(0); top:inherit; left:inherit; z-index: 2; }
.top-page .global-season{ top:inherit; right:inherit; }

.cont-global-logo,
.cont-global-navi{ display: none; }

.cont-sp-btn{ display: block; width: 12vw; position: absolute; top:2.5vw; left: 1.5vw; z-index: 2; pointer-events: all; }
.cont-sp-btn .sp-navi-open{ display: block; }
.cont-sp-btn .sp-navi-close{ display: none; }
.spmenu-on .cont-sp-btn .sp-navi-open{ display: none; }
.spmenu-on .cont-sp-btn .sp-navi-close{ display: block; }

.spmenu-on .cont-global-logo,
.spmenu-on .cont-global-navi{ display: block; }
.spmenu-on .part-header{ background-color: rgba(255,255,255,1); }
.spmenu-on .part-header:before{ visibility: visible; opacity: 1; top: 27vw; }
.spmenu-on .part-header:after{ visibility: visible; opacity: 1; top: 105vw; }

/* body */
.top-page .cont-upper{ padding: 0 0 8.5em 0; }
.sub-page .cont-upper{ padding: 1em 0 0 0; }

.sub-logo{ width: calc(501/3000*100vw*1.75); position: relative; top:inherit; left:0; right: 0; margin: 0 auto 1em auto; }

.top-subtitle{ width: 70%; }
.sub-subtitle{ width: 70%; margin-bottom: 2em; }

.sub-blocktitle{ width: 75%; margin-bottom: 2em; }

/* footer */
.part-footer{  }
.cont-global-footer{ padding:1em 0 ; }
.footer-pagetop{ width: calc( 75/3000 * 100vw*2 ); height: calc( 91/3000 * 100vw*2 ); position: fixed; bottom:1em; right: 1em; }
.cont-footer-logo{ top:-6vw; }
.cont-footer-logo > div{ width: calc( 183/3000 * 100vw *3); }
.cont-footer-logo:before{ width: calc( 1200 / 3000 * 100vw ); position: absolute; top:5vw; }
.cont-footer-logo:after{ width: calc( 1200 / 3000 * 100vw ); position: absolute; top:5vw; }
.footer-copyrihgt p{ font-size: .8em; }
.cont-footer-banner{ padding: 1em 0 1.5em 0; }
.banner-list > div{ margin: .5em 1.0em; }
/* .banner-list .bn1{ width: calc( 268/3000 * 100vw *2 ); } */
.banner-list .bn1{ width: calc( 425/3000 * 100vw *3 ); }
.banner-list .bn2{ width: calc( 343/3000 * 100vw *3 ); }

/* content */
/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-entry{ padding: 1.5em; margin: 0 0 3em 0;  border-radius: .5em; }
.content-entry .entry-head{ margin-bottom: 0; position: relative; }
.content-entry .entry-title{ padding: .75em; border-radius: .25em; }
.content-entry .entry-title > span{ font-size: 1.2em; }
.content-entry .entry-body{ padding: 1.5em .8em; font-size: 1.1em; }

.cont-singles{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-single{ padding: 0 2em; color: #91b9ed;  }

.cont-tiles{ display: flex; flex-wrap: wrap; justify-content: center;  }

.modal-data{ display: none; }
.cont-modal{ width: 100%; max-width: 960px; margin: 0 auto; }

.frame-modal{ background-color: #000; border:#252525 solid 0em; border-width: 4em 2em 4em 2em; padding: 2em; }
.frame-modal .entry-body p{ font-size: 1.2em; line-height: 1.5; letter-spacing: .1em; }


/* TOP-PAGE */
/* main */

.cont-top-visual .kv-container{ overflow: visible; }
.kv-container .grp .vis-grp{ position: relative; width: 100%; margin: 0 auto; }
.kv-container .grp .vis-grp .bg{ position: relative; }
.kv-container .grp .vis-grp .vis{ position: absolute; top:0; }
.kv-container .oa{ width: calc(800/1000*100vw); top:130vw; left:0; right: 0; margin: 0 auto; }
.kv-container .logo{ width: 100%; top:59vw; transform: scale(1); left:inherit; right: inherit; margin: 0 auto; }
.kv-container[data_vis="2"] .logo{ top:0vw; }
.kv-container[data_vis="3"] .logo{ top:0vw; }
.kv-container[data_vis="4"] .logo{ top:0vw; }
.kv-container[data_vis="5"] .logo{ top:0vw; }
.kv-container[data_vis="6"] .logo{ top:0vw; }
.kv-container[data_vis="7"] .logo{ top:69vw; }
.kv-container[data_vis="8"] .logo{ top:0vw; }
.kv-container[data_vis="9"] .logo{ top:-5vw; }
.kv-container[data_vis="10"] .logo{ top:12vw; transform: scale(.8); }

.vis-switch-container{ width: 100vw; top:148vw; left:0; }
.vis-switch{ justify-content: center; }
.vis-switch > div{ width: 15.0vw; height: 15.0vw; margin: .25vw; }

#Background .top-vis-bg{ width: 100%; min-height: 80vw; top:-16vw;}

.s3 #Background .top-vis-bg{ top:-16vw; }

#Foreground .opening{ width: 100vw; position: fixed; overflow: hidden; pointer-events: all; }
#Foreground .opening .bg{ width: 100%; height: 100vh; position: absolute; top:0; background-color: #FFF; }
#Foreground .opening .op-cont{ width: 100%; height: 100vh; position: relative; display: flex; justify-content: center; align-items: center; }
#Foreground .opening .op-cont .anm-part{ position: relative; width: 100%; height: calc(1600/3000*100vw); line-height: 0;  }

#Foreground .opening .op-cont .anm-part .loafer{ width: calc(308/3000*100vw*2); height: calc(86/3000*100vw*2); position: absolute; top:5vw; left:0; right: 0; margin: 0 auto; animation: anm-loafer 2s 0s ease-in-out both paused infinite; transform-origin: center top; }
#Foreground .opening .op-cont .anm-part .loafer .body{ position: relative; }
#Foreground .opening .op-cont .anm-part .loafer .efct{ width: calc(43/3000*100vw*2); height: calc(27/3000*100vw*2); position: absolute; top:-2vw; left:-2vw; opacity: 0; animation: anm-loafer-efct .5s 0s linear both paused 1; }
#Foreground .opening .op-cont .anm-part .logo{ width: calc(761/3000*100vw*2); position: absolute; top:0; left:0; right: 0; margin: 0 auto; }


/* top-navi */
.cont-top-navi{ display: none; }





/* top-news */
.cont-top-news{ width: 100%; padding-top: 4em; margin-bottom: 2em; position: relative; top:inherit; left: inherit; }
.cont-top-news > .inner{ width: 100%; padding: 0; margin: 0 auto; }
.top-news-container{ width: 80%; padding:0 1em; min-height: 20vw; }
.top-news-container > a{ padding: 1em; border-radius: 1em; margin-bottom: 1em; }


/* top-movie */
.cont-top-movie{ }
.cont-top-movie > .inner{ padding: 1.5em 0 .1em 0; }
.top-movie-list{ position: relative; width:100%; max-width: 1920px; margin: 0 auto; }
.top-movie-list .thm{ width:inherit; padding: 1em 1em; transform-origin: center center; position: relative; }
.top-movie-list .thm > a{  }
.top-movie-list .thm > a::after{ background-position: center 50%; background-size: calc(142/3000*100vw*1.5); }
.top-movie-list .thm > a:hover::after{ background-size: calc(142/3000*100vw*1.8); }
.top-movie-dots li { margin: 0 3em 0 -1em; }
.top-movie-dots li button:before {  font-size: 1em; }


/* intro */
.cont-top-intro{ margin-bottom: 5em; position: relative;  }
.cont-top-intro > .inner{ width: 100%; }
.intro-text{ width: 95%; padding: 2em 0; }
.intro-images{ width: 100%; justify-content: center; position: relative; top:inherit; margin: 0 auto; }
.intro-images.left{ left:inherit; }
.intro-images.right{ right:inherit; }
.intro-images > div{ width: 29%; margin: 2%; }
.intro-images > div.i1{ filter: drop-shadow(.5em .5em 0 #d7f2fb); }
.intro-images > div.i2{ filter: drop-shadow(.5em .5em 0 #fff6cd); }
.intro-images > div.i3{ filter: drop-shadow(.5em .5em 0 #e5fbe4); }
.intro-images > div.i4{ filter: drop-shadow(.5em .5em 0 #d7f2fb); }
.intro-images > div.i5{ filter: drop-shadow(.5em .5em 0 #e5fbe4); }
.intro-images > div.i6{ filter: drop-shadow(.5em .5em 0 #fce5ed); }

/* staffcast */
.cont-top-staffcast{ margin-bottom: 2em; position: relative; }
.cont-top-staffcast > .inner{ width: 100%; }
.staffcast-subtitle{ font-size: 1.2em; margin-bottom: 2em; }

.staffcast-container{ padding: 2em 0 0 0; }
.staffcast-container > div{ width: 100%; margin-bottom: 0; }

.staffcast-list{ margin: 0 auto ;  }
.staffcast-list > div{ margin-bottom: 1.5em; }
.staffcast-list .pos{ font-size: 1.0em; margin-bottom: .5em; }
.staffcast-list .name{ font-size: 1.2em; margin-bottom: 0; }
.staffcast-list .ext{ font-size: .9em; padding-top: .5em; margin-bottom: 0; }
.staffcast-list .cmt{ width: 2.4em; top:.3em; right:-3em; }

.cont-modal.cmt{ width: 90%; /*max-width: 1000px;*/ }
.comment-frame .pdg{ padding: 4em 2em; }
.comment-frame .pdg2{ padding: 4em 2em; }





/* SUB-PAGE */
#Background .sub-vis-bg{ min-height: 40vw; top:-12vw;}
#Background .sub-vis-bg{ top:-54vw; }
.init #Background .sub-vis-bg{ top:-12vw;  }

.sub-page .cont-upper{ }
.sub-page .cont-middle{ min-height: calc(100vh - 13em);}

/* news */
.cont-sub-news{ }
.cont-sub-news > .inner{ width: 100%; padding: 2em 0 ; }
.sub-news-container{ width: 90%; margin: 0 auto; }
.news-twt-btn{ width: 10em; }

/* onair */
.cont-sub-onair{ }
.cont-sub-onair > .inner{ width: 100%; padding: 2em 0 ; }
.sub-subtitle.onair{   }
.sub-onair-container{ width: 90%; margin: 0 auto; }

.onair-list{ margin: 0 auto .5em auto; max-width: inherit; padding: .8em; }
.onair-list.first{  }
.onair-list .col-a{ width: 100%; }
.onair-list .col-b{ width: 100%; }
.onair-list .col-c{ width: 100%; }
.onair-list .col-d{ width: 100%; margin-left: 0; }

.onair-list .name{ font-size: 1.0em; margin-bottom: .5em; }
.onair-list .schd{ font-size: .9em; }
.onair-list .time{ font-size: .9em;  }
.onair-list .extr{ font-size: .8em; }

.onair-list-il > a{ width: 99%; margin: 1%; }

/* story */
.cont-sub-story{ }
.cont-sub-story > .inner{ width: 100%; padding: 2em 0 ; }
.sub-subtitle.story{ margin-bottom: 2em; }
.sub-story-container{ position: relative; }

.cont-story-navi{ width: 100%; margin: 0 auto 1.0em auto; }
.story-navi{ padding: .25em;  }
.story-navi ul li{ width: calc(1/4*100%); padding: .5em;  }
.story-navi ul li.spc-sp{ display: block; height: 1px; }

.cont-story-data{ width:100%; min-height: 195vw; position: relative;  }
.story-bg{ width: 100%; height: 194vw; position: absolute; top:75vw;  }

.story-data{ display: none; }
.story-data{ position: relative; pointer-events:none; text-align: center;  }
.story-data .episode-container{ position: relative; padding: 2em 0 2em 0; }

.story-data .ep-title-block{ margin-bottom: 1.25em; }

.story-data .ep-title{ width: 100%; }

.story-data .ep-slider-sceneImage{ width: 90%; max-width: inherit; }

.story-data .ep-text{ width: 95%; padding: 1.5em; }
.story-data .ep-staff{ font-size: .7em; padding: 0 1em; }

.story-data.crt{ display: block; animation: fadeIn .5s 0s ease-out both;  }

/* comics */
.cont-sub-comics{ }
.cont-sub-comics > .inner{ width: 100%; padding: 2em 0 ; }
.sub-comics-container{ width: 90%; margin: 0 auto; }
.comics-comics-ttl{width: calc(1060/3000*100vw*1.5); }

/* character */
.cont-sub-character{ }
.cont-sub-character > .inner{ width: 100%;  padding: 2em 0 ; margin: 0 auto; }
.sub-subtitle.character{ margin:0 auto 2em auto; }

.cont-character-navi{ width: 100%; margin: 0 auto; }
.character-navi{ width: 80%; margin: 0 auto }
.character-navi ul li{ width: calc(100% / 5); padding:.25em; }

.cont-character-data{ width:100%; padding-bottom: 5vw; position: relative; }
.character-data{ min-height: 40em; overflow: hidden; }
.character-data .bg-bar{ height: 70vw; top:10vw; }
.character-data .chr-img{ width: 20em; margin: 0 auto 0 -20vw;  }
.character-data .chr-prof{ width: 20em; top:2em; left:10em; z-index: 6; }
.character-data .prof-name-ct{ width: 15em; margin: 0 0 1.0em 0; position: relative;}
.character-data .prof-face{ width: 18em; margin: 0 0 1.0em 1em; position: relative;}
.character-data .prof-name{ padding: 0; margin: 0 0 1.5em 0; position: relative;}
.character-data .prof-name .name{ display: inline-block; margin-right: .5em; }
.character-data .prof-name .name span{ font-size: 1.4em; }
.character-data .prof-name .cv span{ font-size: 1.2em;  }
.character-data .prof-text .text{ margin: 0 0 1em 0; font-size: 1.1em; letter-spacing: .025em; z-index: 6; }

@keyframes anm-character-bar-change {
  0% { height: .1vw;}
  100% { height: 70vw;}
}

/* bddvd */
.cont-sub-bddvd{ }
.cont-sub-bddvd > .inner{ width: 100%; padding: 2em 0 ; }
.sub-subtitle.bddvd{ }
.sub-bddvd-container{ width: 90%; margin: 0 auto; }

.bnf-list > .item-x1{ width: 100%; }
.bnf-list > .item-x2{ width: 100%; }
.bnf-list > .item-x3{ width: 100%; }
.bnf-list > .item-x3x2{ width: 100%; }
.bnf-list > .item-x4{ width: 100%; }
.bnf-list > .item-x4x3{ width: 100%; }
.bnf-list > .item-x1.x1-dbl{ }

.bnf-list > .item-x1 .item-col-x2,
.bnf-list > .item-x2 .item-col-x2,
.bnf-list > .item-x3 .item-col-x2,
.bnf-list > .item-x3x2 .item-col-x2,
.bnf-list > .item-x4 .item-col-x2,
.bnf-list > .item-x4x3 .item-col-x2{ width: 100%; margin-right: 0 }

.bnf-list > .item-x1 .item-col-x3,
.bnf-list > .item-x2 .item-col-x3,
.bnf-list > .item-x3 .item-col-x3,
.bnf-list > .item-x3x2 .item-col-x3,
.bnf-list > .item-x4 .item-col-x3,
.bnf-list > .item-x4x3 .item-col-x3{ width: 100%; margin-right: 0 }

.bnf-list > .item-x1 .item-col-x4,
.bnf-list > .item-x2 .item-col-x4,
.bnf-list > .item-x3 .item-col-x4,
.bnf-list > .item-x3x2 .item-col-x4,
.bnf-list > .item-x4 .item-col-x4,
.bnf-list > .item-x4x3 .item-col-x4{ width: 100%; margin-right: 0 }

.bnf-list .item-col-x3x2{ width: 100%; margin-right: 0 }

.bnf-list .thumb{ padding:0 2.5em;  }


/* music */
.cont-sub-music{ }
.cont-sub-music > .inner{ width: 100%; padding: 2em 0 ; }
.sub-subtitle.music{ }
.sub-music-container{ width: 90%; margin: 0 auto; }

.comment-cont{ padding: .75em 0 0 0; }
.comment-cont .name{ font-size: 1.2em;}
.comment-cont .cmt{ width: 2.4em; top:.3em; left:calc(50% + 4em); }



/* special */
.cont-sub-special{ }
.cont-sub-special > .inner{ width: 100%; padding: 2em 0 ; }
.sub-special-container{ width: 90%; margin: 0 auto; }
.special-sub-ttl{width: calc(1060/3000*100vw*1.6);}


/* SM ----------------------------------------------------------------------------- */
@media (orientation: portrait) and (max-width: 767px) {

}
/* XS ----------------------------------------------------------------------------- */
@media (max-width: 543px) {

}
/* pc - large ----------------------------------------------------------------------------- */
@media (min-width: 768px) {

}
/* pc - xlarge ----------------------------------------------------------------------------- */
@media (min-width: 1200px) {

}


