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

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

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

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: 100%; height: 100%; position: absolute; pointer-events: none; }
.part-header:before{content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: #e93922 url("../images/common/modal-bg.png"); background-size:calc(1066/3000*100vw); visibility: hidden; opacity: 0; transition: all .2s ease 0s; }
.cont-global-logo{ width: calc(420/3000*100vw); margin: 0 auto; padding: 2vw 0 1.5vw 0; position: relative; }
.cont-global-navi{ width: calc(1500/3000*100vw);  position: relative; padding: 3em; margin: 0 auto; }
.cont-global-navi:before{ content:""; width: calc(100% - 3vw ); height: calc(100% - 3vw ); position: absolute; top:1.5vw; left:1.5vw; background: url("../images/common/texture-paper.png"); background-size: calc( 420/3000 * 100vw ); }
.cont-global-navi:after{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; border-image: url("../images/common/frame-a.png") 33% fill / 6vw repeat ;}
.cont-global-logo,
.cont-global-navi{ display: none; }

.global-navi{ width:100%; margin: 0 auto ; position: relative; }
.global-navi > ul{ display: flex; flex-wrap: wrap; flex-direction: row-reverse; list-style-type: none; padding: 0; margin: 0; position: relative; }
.global-navi > ul > li{ display: block; width: calc(12.5% - 1em); padding: 2px ; margin: .5em; position: relative; background-color: #FFF;}
.global-navi > ul > li a{ width: 100%; padding: 0; display: block; line-height: 1; border: #000 solid 1px; position: relative; transform-origin: center center; pointer-events: all; transition: all .1s ease-out 0s; }
.global-navi > ul > li a:hover{ text-decoration: none; background-color: #e93922; border-color:#e93922  }
.global-navi > ul > li a:hover > span{ }
.global-navi > ul > li a.cs{ opacity: .3; pointer-events: none;  }
.global-navi > ul > li a.hdn{ display: none;  }

.global-sns{ width: calc(160/3000*100vw); position: absolute; bottom: -6em; left:0; right:0; margin: 0 auto; pointer-events: auto; }

.cont-sp-btn{ display: block; color:#000; width: 9vw; position: absolute; top:3vw; right: 2vw; z-index: 2; pointer-events: all; }
.cont-sp-btn{ display: none; }
.sub-page .cont-sp-btn{ display: block; }

.cont-sp-btn a{ display: block; line-height: 0; color:#fff; }
.cont-sp-btn svg{ fill: currentColor; }
.cont-sp-btn .sp-navi-open{ display: block; }
.cont-sp-btn .sp-navi-close{ display: none; padding: 2em; }
.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:before{ visibility: visible; opacity: 1; }


/* body */
.part-body{ position: relative; display: block; margin: 0; }
.part-body-side{ display: none; }
.part-body-main{ position: relative; width: 100%; }

.cont-upper{ position: relative; }
.sub-page .cont-upper{ height: 1.5em; position: relative; background-color: #e93922; border-bottom: #000 solid 3px; }
.sub-page .cont-upper:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-c.png"); background-size:calc(20/3000*100vw) auto; opacity: .15; }
.cont-middle{ position: relative; }
.sub-page .cont-middle{background: url("../images/common/texture-paper.png"); background-size: calc( 420/3000 * 100vw ); }
.cont-bottom{ position: relative; }

.sub-logo{ width: calc(342/3000*100vw); position: relative; margin: 0 auto; padding: 2em 0; }

.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(800/3000*100vw); margin: 0 auto 1em auto; z-index: 2; position: relative; }
.top-subtitle > span{}

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

.blocktitle{ font-size: 1em; line-height: 1; margin: 0 auto 1.5em auto; text-align: center; z-index: 2; position: relative; }
.blocktitle > p{ display: inline-block; padding: .5em; background-color: #000; margin: 0; color: #FFF; letter-spacing: .1em; }

.sub-content-container{ width: calc(2000/3000*100vw); margin: 0 auto; position: relative; }
.cont-subtitle{ position: relative; margin: -2em auto 2em auto; text-align: center; }
.cont-subtitle > div{ display: inline-block; background: url("../images/common/ptn-green.png") repeat center top; background-size:calc(32/3000*100vw); border:#08936c solid 2px; line-height: 1; padding: .8em 1.5em; border-radius: 2em; }
.cont-subtitle > div > span{font-size: 1.733em; font-weight: 900; letter-spacing: .1em; color: #FFF; filter:drop-shadow(.15em .15em 0 #08936c); }

.cont-subcatnavi{ width: 100%; font-size: 1em; margin: 0 auto 2em auto; padding: 0; display: block; position: relative; }
.cont-subcatnavi nav{}
.cont-subcatnavi nav ul{ display: flex; justify-content: center; list-style-type: none; padding: 0; margin: 0; }
.cont-subcatnavi nav ul li{ display: block; padding: .25em ; margin: .25em .5em; line-height: 1; font-size: 1.433em; font-weight: bold; letter-spacing: .1em; }
.cont-subcatnavi nav ul li{ border-bottom: #000 solid 1px; }
.cont-subcatnavi nav ul li.spc{ width: 1em; }
.cont-subcatnavi nav ul li.spc.lst{ width: 100%; }
.cont-subcatnavi nav ul li.crt{ border-bottom: #e93922 solid 1px; }
.cont-subcatnavi nav ul li a{ color: #000; text-decoration: none; }
.cont-subcatnavi nav ul li a:before{ content:"> " }
.cont-subcatnavi nav ul li a:hover{ color: #e93922; text-decoration: none; }
.cont-subcatnavi nav ul li.crt a{ color: #e93922; pointer-events: none; }

.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: 3em 0 ; position: relative; text-align: center; background: url("../images/common/texture-paper.png"); background-size: calc( 420/3000 * 100vw ); }
.footer-pagetop{ width: calc( 180/3000 * 100vw ); height: calc( 180/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.8vw; 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:calc( 38 / 3000 * 100vw ); position: absolute; top:2.1vw; left:0; background: url("../images/common/footer-line-l.png") no-repeat right center; background-size: auto 100%;  }
.cont-footer-logo:after{ content:""; width: calc( 1400 / 3000 * 100vw ); height:calc( 38 / 3000 * 100vw ); position: absolute; top:2.1vw; right:0; background: url("../images/common/footer-line-l.png") no-repeat right center; background-size: auto 100%; transform: scale(-1,-1) }
.cont-footer{ padding: 2em 0; }

.footer-copyrihgt p{ font-size: .9em; margin-bottom: 0; }
.cont-footer-banner{ padding: 2em 0 1.5em 0; }
.banner-list{ display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-end; }
.banner-list > div{ margin: .5em 1.5em; }
.banner-list .sep{ width: 100%; }
.banner-list .bn1{ width: calc( 308/3000 * 100vw ); }
.banner-list .bn2{ width: calc( 196/3000 * 100vw ); }
.banner-list .bn3{ width: calc( 640/3000 * 100vw ); padding-top: 1em; margin-bottom: 2em; }

/* 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; }

.sep-a{ width: 100%; height: 1px; border-bottom: #000 dashed 1px; margin: 1em 0; }

.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); }

/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-entry{ padding: 0 2em; }
.news-atl-bg{  margin: 0 0 3em 0; }
.content-entry .entry-head{ margin-bottom: 0; position: relative; text-align: center; }
.content-entry .entry-date{ font-size: 1em; margin-bottom: 0; pointer-events: none;  }
.content-entry .entry-date > span{ font-size: 1.333em; font-weight: bold; line-height: 1; letter-spacing: .1em; margin-bottom: 0;}
/* .content-entry .entry-title{ padding: 1em 0 3.5em 0; margin-bottom: 0; position: relative; background: url("../images/news-sep.png") no-repeat center bottom; background-size: 10em; } */
.content-entry .entry-title{ padding: 1em 0 2em 0; margin-bottom: 0; position: relative; border-bottom:#000 solid 2px; }
.content-entry .entry-title > span{ font-weight: bold; font-size: 1.733em; line-height: 1.5; }

.content-entry .entry-body{ padding: 1.5em 0; font-size: 1.466em; }


.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: #e93922 url("../images/common/modal-bg.png"); background-size:calc(1066/3000*100vw); }
.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: #000; 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: #fff;}

/* 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{ position: relative; }
.cont-top-visual img{ width: 100%; height: auto; }
.cont-top-visual .kv-container{ position: relative; margin: 0 auto; padding: 3vw; overflow: hidden; background: linear-gradient(180deg, #f7ccde, #ddeaca 50%, #f3e99c);}
.kv-container[data_vis="2"]{  background: linear-gradient(180deg, #caefff, #f4ffe6 50%, #e8e3d9); }
.kv-container[data_vis="3"]{  background: linear-gradient(180deg, #caefff, #f4ffe6 50%, #e8e3d9); }
.kv-container[data_vis="4"]{  background: linear-gradient(180deg, #caefff, #f4ffe6 50%, #e8e3d9); }
.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: calc(1958/3000*100vw); margin: 0 auto 0 0; }
.kv-container .grp .vis-grp .bg{ position: relative; }
.kv-container .grp .vis-grp .vis{ position: absolute; top:0; }
.kv-container .grp .catch{ width: calc(333/3000*100vw); top:4vw; left:7.5vw ; }
.kv-container .logo{ width: calc(790/3000*100vw); top:2vw; right: 3vw; }

.vis-switch-container{ width: 21vw; margin: 0; position: absolute; top:75.25vw; right:5.5vw; pointer-events: none; z-index: 2; }
.vis-switch{ display: flex; flex-wrap: wrap; justify-content: space-between; }
/* .vis-switch > div{ width: 9vw; height: 9vw; margin: 0 0 1.5vw 0; pointer-events: auto; line-height: 0; } */
.vis-switch > div{ width: 6vw; height: 6vw; margin: 0 0 1.5vw 0; pointer-events: auto; line-height: 0; }
.vis-switch > div a{ display: inline-block; width: 100%; min-height: 100%; background: #FFF; padding: .4vw; border-image: url("../images/common/frame-a.png") 33% fill / 1.75vw repeat ; }
.vis-switch > div.on a{ background-color:#e93922; pointer-events: none; }

.top-banner{ width: 21vw; margin: 0; position: absolute; top:61.5vw; right:5.4vw; z-index: 2; }

#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(1600/3000*100vw); line-height: 0;  }
#Foreground .opening .op-cont .anm-part .torii{ width: 100%; position: absolute; top:5vw; }
#Foreground .opening .op-cont .anm-part .logo{ width: 65%; position: absolute; top:11vw; left:0; right:0; margin: 0 auto; }
#Foreground .opening .op-cont .anm-part .oa{ width: 65%; position: absolute; top:35vw; left:0; right:0; margin: 0 auto; }

.init #Foreground .opening .op-cont .anm-part .torii{ opacity: 0; transform: scale(.3) rotateY(650deg) ; }
.init #Foreground .opening .op-cont .anm-part .logo{ opacity: 0; transform: translateY(-25%); }
.init #Foreground .opening .op-cont .anm-part .oa{ opacity: 0; transform: translateY(25%); }

.s1 #Foreground .opening .op-cont .anm-part .torii{ opacity: 1; transform: scale(.3) rotateY(0deg); transition: all 1.9s ease-out 0s; }
.s2 #Foreground .opening .op-cont .anm-part .torii{ opacity: .7; transform: scale(1) rotateY(0deg); transition: all .6s ease-in-out 0s; }
.s2 #Foreground .opening .op-cont .anm-part .logo{ opacity: 1; transform: translateY(0); transition: all .7s ease-out .2s; }
.s2 #Foreground .opening .op-cont .anm-part .oa{ opacity: 1; transform: scale(1); transition: all .5s ease-out .7s; }

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

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

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

.s3 .kv-container .grp .vis-grp{ opacity: 1; transform: scale(1,1); transition: all .8s ease-in-out .1s; }
.s3 .kv-container .grp .catch{ transform: translateY(0); transition: all .5s ease-out .4s;}
.s3 .kv-container .logo{ opacity: 1; transform: translateY(0); transition: all .5s ease-out 0s; }

.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{ width: calc(650/3000*100vw); background-color: #eb2405; position: absolute; top:29vw; right:5vw; padding: 2em 2em 2.5em 2em; z-index: 5; }
.cont-top-navi:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-c.png"); background-size:calc(60/3000*100vw) auto; opacity: .1; }
.cont-top-navi:after{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; border-image: url("../images/common/frame-b.png") 33% fill / 1.5vw repeat ;}

.top-navi{ width:100%; margin: 0 auto ; position: relative; z-index: 2; }
.top-navi > ul{ display: flex; flex-wrap: wrap; flex-direction: row-reverse; list-style-type: none; padding: 0; margin: 0; position: relative; }
.top-navi > ul > li{ display: block; width: calc(25% - 1em); padding: 2px ; margin: .5em; position: relative; background-color: #FFF;}
.top-navi > ul > li a{ width: 100%; padding: 0; display: block; line-height: 1; border: #000 solid 1px; position: relative; transform-origin: center center; pointer-events: all; transition: all .1s ease-out 0s; }
.top-navi > ul > li a:hover{ text-decoration: none; background-color: #e93922; border-color:#e93922  }

.top-navi > ul > li a:hover > span{ }
.top-navi > ul > li a.cs{ opacity: .3; pointer-events: none;  }
.top-navi > ul > li a.hdn{ display: none;  }

.top-sns{ width: calc(160/3000*100vw*.75); position: absolute; bottom:-2.0em; left:0; right:0; margin: 0 auto; z-index: 3; }

/* top-oa */
.cont-top-oa{ position: relative; background-color: #e93922; padding: .6em 0; }
.cont-top-oa:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-c.png"); background-size:calc(20/3000*100vw) auto; opacity: .15; }
.cont-top-oa .oa{ background-color: #FFF; position: relative; padding: .5em 0; }
.cont-top-oa .oa span{ display: block; width: calc(1669/3000*100vw); margin: 0 auto; }

/* top-movie */
.cont-top-movie{ margin-bottom: 0; position: relative; background:#e93922;  }
.cont-top-movie:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-b.png"); background-size:calc(192/3000*100vw) auto; opacity: .3; }
.cont-top-movie > .inner{ padding: 2em 0 1em 0; }

.top-movie-list{ position: relative; width:100%; margin: 0 auto; }
.top-movie-list .thm{ padding: 2em 1em; transform-origin: center center; position: relative; text-align: center; }

.top-movie-list .thm > a{ margin-bottom: .5em; position: relative; display: block; background-color: #000; pointer-events: none; }
.top-movie-list .thm > a::after{ content:""; position: absolute; display: block; width:100%; height:100%; background: url("../images/movie-play-btn.png") no-repeat center center; background-size: calc(289/3000*100vw); transform-origin: center center; pointer-events: none; top:0; left: 0; right: 0; margin: 0 auto; opacity: 1; display: none; }
.top-movie-list .thm > a:hover::after{ background-size: calc(289/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.433em; letter-spacing: .1em; line-height: 1; border:#000 solid 1px; }

.top-movie-list .thm > a img{ opacity: .4; min-height: 26em;}
.top-movie-list .thm.slick-current{ transform: scale(1.0,1.0); }
.top-movie-list .thm.slick-current > a img{ opacity: 1; }
.top-movie-list .thm.slick-current > a{ pointer-events: all; background-color: #FFF; }
.top-movie-list .thm.slick-current > a::after{ display: block; }
.top-movie-list .thm.slick-current > a:hover img{ opacity: .8; }
.top-movie-list .thm.slick-current > a:hover::after{ transform: scale(1.2,1.2); }

.top-movie-cursor{ position: absolute; width: 98vw; top:14vw; left: 0; right: 0; margin: 0 auto; pointer-events: none; }
.top-movie-cursor ul{ display: flex; justify-content: space-between; margin: 0; padding: 0; list-style-type: none; }
.top-movie-cursor ul li{ display: block; width:calc(96/3000*100vw); height: calc(171/3000*100vw); position: relative; pointer-events: all; cursor: pointer; }
.top-movie-cursor ul li span{ display: block; width:100%; height: 100%; background:  url("../images/top-movie-cursorbtn.png") no-repeat center center; background-size: 100%; transform-origin: center center; }
.top-movie-cursor ul li.right span{ transform: scale(-1,1); }
/* no slick ver */
/* .top-movie-list .thm{ width: 100%; position: relative;text-align: center; } */

.top-movie-list{ opacity: 0; visibility: hidden; }
.top-movie-list.start{ opacity: 1; visibility: visible; }

/* top-news */
.cont-top-news{margin-bottom: 0; position: relative; background:#FFF; }
.cont-top-news > .inner{ width: calc(2400/3000*100vw); padding: 10.5vw 0 5.5vw 0; margin: 0 auto; }
.top-subtitle.news{ width:calc(205/3000*100vw); position: absolute; top:5vw; left:0;  }

.top-news-frame{ position: relative; width:calc(2200/3000*100vw); background: url("../images/common/texture-paper.png"); background-size: calc( 420/3000 * 100vw ); margin: 0 1em 0 auto; }

.top-news-container{ padding: 3em 3em; }
.top-news-container dl{ margin-bottom: 1.5em; padding: 0; display: flex; flex-wrap: wrap; background: #FFF url("../images/news-marker.png") no-repeat 64vw center; background-size: 1.5em; padding: 2em 4em 2em 2em; }
.top-news-container dl:last-child{ margin: 0;}
.top-news-container dl dt{ width: 16%; font-size: 1em; display: block; padding: 0; margin: 0; line-height: 1.8; font-weight: normal; letter-spacing: .1em;}
.top-news-container dl dt:before,
.top-news-container dl dt:after{content: " | ";}
.top-news-container dl dd{ width: 84%; font-size: 1.2em; display: block; padding: 0; margin: 0; line-height: 1.3; pointer-events: all; }
.top-news-container dl dd a,
.top-news-container dl dd a:visited{ text-decoration: none; color: #000; }
.top-news-container dl dd a:hover{ text-decoration: underline; color: #d7000f; }


/* intro */
.cont-top-intro{ margin-bottom: 0; position: relative; background:#e93922; border-image: url("../images/common/frame-a.png") 33% fill / 4vw repeat ; }
.cont-top-intro:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-ic.png"); background-size:calc(1066/3000*100vw) auto; opacity: .1; }
.cont-top-intro > .inner{ width: calc(2000/3000*100vw); padding: 5.5vw 0; margin: 0 auto; }
.top-subtitle.intro{ width:calc(205/3000*100vw); position: absolute; top:5vw; right:0;  }
.intro-text{ width: calc(1364/3000*100vw); margin: 0 auto 0 6vw; }


/* staffcast */
.cont-top-staffcast{ margin-bottom: 0em; position: relative; background:url("../images/common/pattern-a.png") repeat left top; background-size: calc(412/3000*100vw) auto; }
.cont-top-staffcast > .inner{ width: calc(2400/3000*100vw); padding: 5.5vw 0; margin: 0 auto; }
.top-subtitle.staffcast{ width:calc(362/3000*100vw); position: absolute; top:5vw; left:0;  }
.staffcast-subtitle{ width:calc(65/3000*100vw); margin: 0 auto 3em auto; }

.staffcast-list{ width: 85%; text-align: left; display: flex; flex-wrap: wrap; justify-content: center; margin: 0 auto 1.5em auto; font-family: YakuHanMPs, 'Shippori Mincho', 'Noto Serif JP', serif; }
.staffcast-list > div{ width: 25%; text-align: center; font-weight: bold; margin-bottom: 3em; }
.staffcast-list > div.sep-pc{ width: 100%; height: 0; margin: 0; padding: 0; }
.staffcast-list > div.sep-sp{ display: none; }
.staffcast-list > div.full{ width: 100%; }
.staffcast-list > div.half{ width: 50%; }
.staffcast-list > div.third{ width: 33.33%; }
.staffcast-list > div.quarter{ width: 25%; }
.staffcast-list > div.fifth{ width: 20%; }
.staffcast-list > div > div{ margin-bottom: 1.3em;  }
.staffcast-list .pos{ display: block; font-size: 1em; letter-spacing: .05em;  margin-bottom: .5em; line-height: 1; }
.staffcast-list .name{ display: inline-block; font-size: 1.5em; letter-spacing: .01em; 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: relative; top:-.3em; left:.2em; text-decoration: none; pointer-events: auto; }
.staffcast-list .cmt:hover{transform: scale(1.2); text-decoration: none; cursor: pointer; }

.cont-modal.cmt{ width: 60vw; /*max-width: 1000px;*/ }
.comment-frame{ padding: 2em; background:#FFF; border-image: url("../images/common/frame-c.png") 33% fill / 4vw repeat ; }




/* 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(2800/3000*100vw); padding: 1em 0 3em 0; margin: 0 auto; }
.sub-subtitle.news{ width:calc(205/3000*100vw); position: absolute; top:0; left:0;  }

.sub-news-container{ width: calc(2200/3000*100vw); margin: 0 auto; }
.news-frame{ padding: 2em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 3vw repeat ; }

/* onair */
.cont-sub-onair{ }
.cont-sub-onair > .inner{ width: calc(2800/3000*100vw); padding: 1em 0 3em 0; margin: 0 auto; }
.sub-subtitle.onair{ width:calc(205/3000*100vw); position: absolute; top:0; left:0;  }

.sub-onair-container{ width: calc(2000/3000*100vw); margin: 0 auto; }
.onair-list-container{ max-width: 45em; }
.onair-list{ margin: 0 auto ; }
.onair-list{ display: flex; flex-wrap: wrap; justify-content: center; text-align: left; padding: 1.0em; background-color: #fff; border-top:#e93922 dashed 1px; border-radius: 0; }
.onair-list.first{ border-top:none; }
.onair-list .col-a{ width: 25%; }
.onair-list .col-b{ width: 75%; }
.onair-list .col-c{ width: 100%; }
.onair-list .col-d{ width: 75%; margin-left: 25%; }
.onair-list .name{ font-size: 1.2em; font-weight: normal; margin-bottom: 0; letter-spacing: .05em; color: #000; }
.onair-list .schd{ font-size: 1.2em; font-weight: normal; margin-bottom: 0; letter-spacing: .05em; color: #000; display: inline-block; width: 6.5em; }
.onair-list .time{ font-size: 1.2em; font-weight: normal; margin-bottom: 0; letter-spacing: .05em; color: #000; display: inline-block; }
.onair-list .extr{ font-size: .9em; font-weight: normal; margin: .3em 0 0.1em 0; letter-spacing: .05em; color: #000;}
a.onair-list { text-decoration: none; color: #000; pointer-events: all; }
a.onair-list:hover{ color: #000; background-color: #08936c; }

.onair-list-il-container{ max-width: 45em; margin: 0 auto; color: #444; }
.onair-list-il-container .ttl5{ background-color: #000; color: #FFF; font-weight: bold; font-size: .9em;}
.onair-list-il-container .ttl5 > span{ border-color: #fff; }
.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: #000; padding: .2em; background-color: #FFF; border-radius: 0; text-decoration: none; font-weight: 600; }
.onair-list-il > a span{ display: block; padding: .5em; border:#000 solid 1px; border-radius: 0; }
.onair-list-il > a.cs{ pointer-events: none; }
.onair-list-il > a:hover{ background-color: #e93922; color: #fff;}


/* goods */
.cont-sub-goods{ }
.cont-sub-goods > .inner{ width: calc(2800/3000*100vw); padding: 1em 0 3em 0; margin: 0 auto; }
.sub-subtitle.goods{ width:calc(205/3000*100vw); position: absolute; top:0; left:0;  }

.sub-goods-container{ width: calc(2000/3000*100vw); margin: 0 auto; }

.books-text{ width: calc(1200/3000*100vw); margin: 0 auto; }

.ilink-book{ display: inline-block; border:#000 solid 1px; padding: .2em; border-radius: 0; background-color: #FFF; line-height: 1; letter-spacing: .05em; text-decoration: none; }
.ilink-book span{ display: inline-block; border:#000 solid 1px; padding: .5em .8em; border-radius: 0; background-color: #e93922; }
.ilink-book:before{ content:""; }
.ilink-book span:before{ content:""; }
.ilink-book,
.ilink-book:visited,
.ilink-book:active{ color: #fff;  }
.ilink-book:hover{  color: #fff; transform: scale(1.1); }

.books-list a{  pointer-events: none; }
.books-list a img{  }

.music-frame{ padding: .5em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 1vw repeat ; }
.music-text{ width: calc(1400/3000*100vw); margin: 0 auto; }
.music-text2{ width: calc(2000/3000*100vw); margin: 0 auto; }
.comment-cont{ padding: .75em 0 0 0; display: block; position: relative; text-align: center; }
.comment-cont .name{ display: inline-block; letter-spacing: .1em; margin-bottom: 0; line-height: 1; position: relative; }
.comment-cont .cmt{ display: inline-block; width: 1.8em; position: absolute; top:.5em; left:calc(50% + 5em); text-decoration: none; pointer-events: auto; }
.comment-cont .cmt:hover{transform: scale(1.2); text-decoration: none; cursor: pointer; }

.bluray-frame{ padding: .5em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 1vw repeat ; }
.bluray-text{ width: calc(1600/3000*100vw); margin: 0 auto; }

.bnf-list{ display: flex; flex-wrap: wrap; margin: .5em; 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.8em; font-weight: bold; margin-bottom: .5em; color: #fff; background-color: rgba(0,0,0,1); padding: .2em .4em; }
.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; padding: .5em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 1vw repeat ; }
.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.777em; margin-bottom: .3em; border:#fff solid 1px; display: inline-block; padding: .1em .2em; color: #e93922; }
.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;  }

/* story */
.cont-sub-story{ }
.cont-sub-story > .inner{ width: calc(2800/3000*100vw); padding: 1em 0 3em 0; margin: 0 auto; }
.sub-subtitle.story{ width:calc(205/3000*100vw); position: absolute; top:0; left:0;  }

.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: 5em; height: 5em; display: block; margin: .5em; padding:0; text-align: center; }
.story-navi ul li.spc-sp{ display: none; }
.story-navi ul li a{ width: 5em; height: 5em; padding-top: 1.7em; color: #000; background: #fff url("../images/story-navi-frame.png") no-repeat center center; background-size: cover; display: block; width: 100%; transition: all .1s ease 0s; text-decoration: none; position: relative; line-height: 1; }
.story-navi ul li a span{ font-size: 1.6em; font-weight: bold; position: relative; font-family: YakuHanMPs, 'Shippori Mincho', 'Noto Serif JP', serif; }
.story-navi ul li a:hover{ transform: scale(1.05,1.05);  }
.story-navi ul li.crt a{ pointer-events: none; background-color:#e93922; color: #fff; }
.story-navi ul li.cs a{ pointer-events: none; background-color:#e9e9e9; color: #aaa; }

.cont-story-data{ width:71em; min-height: 60vw; margin: 0 auto; position: relative;  }
.cont-story-data{ margin-bottom: 0; position: relative; background:#e93922; border-image: url("../images/common/frame-a.png") 33% fill / 4vw repeat ; }
.cont-story-data:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-ic.png"); background-size:calc(1066/3000*100vw) auto; opacity: .1; }

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

.story-data .ep-slider-sceneImage{ width: inherit; max-width: 1800px; 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: #fff; font-size: 1.5em; text-indent: 0px; position: absolute; top: 0; left: 0;}
.ep-slider-dots li.slick-active button:before { color: #000;}

.ep-text-container{ text-align: center; width: inherit; background-color: #FFF;  margin: 0 auto 1em auto; position: relative; z-index: 2; }

.story-data .ep-number{ font-size: 1.6em; font-weight: bold; margin-bottom: .5em; letter-spacing: .1em; position: relative; }
.story-data .ep-number > span{ color:#e93922; }
.story-data .ep-title{ font-size: 2em; font-weight: bold; margin-bottom: .75em; letter-spacing: .1em; position: relative; }
.story-data .ep-title > span{  }
.story-data .ep-title [data-ruby]::before { top: -1.0em; }
.story-data .ep-sep{ width: 100%; height: 1px; background-color: #000; margin: 0 auto 1em auto; }
.story-data .ep-text{  }
.story-data .ep-text p{ font-size: 1.433em; 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:#fff; font-size: 1em; line-height: 1.8; letter-spacing: .1em; display: inline; }

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

/* character */
.cont-sub-character{ }
.cont-sub-character > .inner{ width: calc(2800/3000*100vw); padding: 1em 0 3em 0; margin: 0 auto; }
.sub-subtitle.character{ width:calc(205/3000*100vw); position: absolute; top:0; left:0;  }

#CharaCont{ position: relative; }
.cont-character-navi{ width: 70em; margin: 0 auto; position: relative; z-index: 5; }
.character-navi{ width: 100%; }
.character-navi ul{ display: flex; flex-wrap: wrap; justify-content: center; margin: 0; padding: 0; list-style-type: none; }
.character-navi ul li{ width: 16.6%; display: block; margin: 0; padding:.5em; }
.character-navi ul li a{ display: block; position: relative; transform-origin: center center; pointer-events: all; cursor: pointer; background-color: #FFF; }
.character-navi ul li a:hover{ text-decoration: none; background-color: #e93922;  }
.character-navi ul li.crt a{ pointer-events: none; background-color: #e93922;  }

.cont-character-data{ width:100%; min-height: 75vw; padding-bottom: 10vw; position: relative; }
.character-data{ width:100%; min-height: 75vw; position: relative; display: none; pointer-events:none;  }
.character-data .chr-img{ position: relative; z-index: 5; width: calc(1100/3000*100vw); margin: 0 auto 0 4vw;  }
.character-data .chr-img .figure{ display: none; }
.character-data .chr-img .figure.nochange{ display: block; }
.character-data[data-swt="1"] .chr-img .figure.fig1{ display: block; }
.character-data[data-swt="2"] .chr-img .figure.fig2{ display: block; }

.character-data .chr-prof{ position: absolute; top:7vw; left:36vw; z-index: 3; width: calc(1500/3000*100vw); margin: 0 auto;  }
.character-data .chr-prof .chr-switch{ width: calc(319/3000*100vw); position: absolute; top:5vw; left:0; pointer-events: auto; }
.character-data .chr-prof .chr-face{ width: calc(1260/3000*100vw); margin: 0 0 0 auto; position: relative; }
.character-data .chr-prof .chr-face.nochange{ margin: 0 auto 0 3em; }
.character-data .chr-prof .chr-face .figure{ display: none; }
.character-data[data-swt="1"] .chr-prof .chr-face .figure.fig1{ display: block; }
.character-data[data-swt="2"] .chr-prof .chr-face .figure.fig2{ display: block; }

.character-data .chr-prof .prof-frame{ padding: 4em 1em 3em 1em; position: relative; z-index: 3; background-color: #FFF; }
.character-data .chr-prof .prof-frame:before{ content:""; width: calc(100% - .8em ); height: calc(100% - .8em ); position: absolute; top:.4em; left:.4em; border:#000 solid 1px; }
.character-data .chr-prof .prof-frame:after{ content:""; width: calc(117/3000*100vw); height: calc(115/3000*100vw); position: absolute; top:-1.5vw; left:0; right: 0; margin: 0 auto; background: url("../images/character-marker.png") no-repeat center center; background-size: contain; }

.character-data .prof-name{ width: 100%; padding: 0; margin: 0 0 2.5em 0; text-align: center; position: relative;}
.character-data .prof-name .name-ruby{ display: block; margin-right: .25em; }
.character-data .prof-name .name-ruby span{ font-size: 1.2em; font-weight: bold; letter-spacing: 0.3em; }
.character-data .prof-name .name{ display: block; margin-right: .5em; }
.character-data .prof-name .name span{ font-size: 3em; font-weight: bold; letter-spacing: 0.1em; }
.character-data .prof-name .cv{ display: inline-block; }
.character-data .prof-name .cv span{ font-size: 1.8em; color: #666; font-weight: bold; letter-spacing: 0.1em; }
.character-data .prof-text{ padding: 0; text-align: center; }
.character-data .prof-text .text{ margin: 0; font-size: 1.466em; font-weight: bold; letter-spacing: .05em; line-height: 2; position: relative; z-index: 6; }
.character-data .prof-text .text [data-ruby]::before { top: -1.7em; }



.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: translateY(-5%);}
  100% { opacity: 1; transform: translateY(0);}
}
.subnavi-cursor.character-cursor{ width: 20%; bottom:5vw; left: 40%; display: none; }
.subnavi-cursor.character-cursor ul li span{ background-image: url("../images/character-cursor.png");  }
.subnavi-cursor.character-cursor ul li.off{ pointer-events: none; visibility: hidden; }



/* special */
.cont-sub-special{ }
.cont-sub-special > .inner{ width: calc(2800/3000*100vw); padding: 1em 0 3em 0; margin: 0 auto; }
.sub-subtitle.special{ width:calc(205/3000*100vw); position: absolute; top:0; left:0;  }

.sub-special-container{ width: calc(2000/3000*100vw); margin: 0 auto; }

.special-text{ width: calc(1800/3000*100vw); margin: 0 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{ color: #000; background:#fff; }

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; }
.part-header:before{ background-size:calc(1066/3000*100vw*1.5); visibility: hidden; opacity: 0; }
.cont-global-logo{ width: calc(420/3000*100vw*1.5); margin: 0 auto; padding: 3vw 0 2.5vw 0; position: relative; }
.cont-global-navi{ width: 69%; position: relative; padding: 1.5em; margin: 0 auto; }
.cont-global-navi:before{ content:""; width: calc(100% - 3vw ); height: calc(100% - 3vw ); position: absolute; top:1.5vw; left:1.5vw; background: url("../images/common/texture-paper.png"); background-size: calc( 420/3000 * 100vw ); }
.cont-global-navi:after{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; border-image: url("../images/common/frame-a.png") 33% fill / 6vw repeat ;}
.cont-global-logo,
.cont-global-navi{ display: none; }

.global-navi{ width:100%; margin: 0 auto ; position: relative; }
.global-navi > ul{ display: flex; flex-wrap: wrap; flex-direction: row-reverse; list-style-type: none; padding: 0; margin: 0; position: relative; }
.global-navi > ul > li{ display: block; width: calc(25% - 1.2em); padding: 2px ; margin: .6em; position: relative; background-color: #FFF;}
.global-navi > ul > li a{ width: 100%; padding: 0; display: block; line-height: 1; border: #000 solid 1px; position: relative; transform-origin: center center; pointer-events: all; transition: all .1s ease-out 0s; }
.global-navi > ul > li a:hover{ text-decoration: none; background-color: #e93922; border-color:#e93922  }
.global-navi > ul > li a:hover > span{ }
.global-navi > ul > li a.cs{ opacity: .3; pointer-events: none;  }
.global-navi > ul > li a.hdn{ display: none;  }

.global-sns{ width: calc(160/3000*100vw*2.5); position: absolute; bottom: -4.5em; }

.cont-sp-btn{ display: block; color:#000; width: 12vw; position: absolute; top:4.2vw; right: 1.5vw; z-index: 2; pointer-events: all; }
.cont-sp-btn{ display: none; }
.top-page .cont-sp-btn{ display: block; top:2.5vw; }

.cont-sp-btn a{ display: block; line-height: 0; color:#fff; }
.cont-sp-btn svg{ fill: currentColor; }
.cont-sp-btn .sp-navi-open{ display: block; }
.cont-sp-btn .sp-navi-close{ display: none; padding: .5em; }
.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:before{ visibility: visible; opacity: 1; }


/* body */
.sub-page .cont-upper{ height: .4em; position: relative; background-color: #e93922; border-bottom: #000 solid 1px; }
.sub-page .cont-upper:before{ content:""; width: 100%; height: 100%; position: absolute; top:0; left:0; background: url("../images/common/pattern-c.png"); background-size:calc(20/3000*100vw) auto; opacity: .15; }
.sub-page .cont-middle{background-size: calc( 420/3000 * 100vw *2 ); }

.sub-logo{ width: calc(342/3000*100vw*2); position: relative; margin: 0 auto; padding: .5em 0 0 0; }

.cont-subcatnavi nav ul{ justify-content: center; flex-wrap: wrap; }
.cont-subcatnavi nav ul li{ padding: .5em ;  font-size: 1.2em; }
.cont-subcatnavi nav ul li{ border-bottom: #000 solid 1px; }
.cont-subcatnavi nav ul li.crt{ border-bottom: #e93922 solid 1px; }


/* footer */
.part-footer{ position: relative; }
.cont-global-footer{ width: 100%; padding: 2em 0 1em 0 ; background-size: calc( 420/3000 * 100vw *2 ); }
.footer-pagetop{ width: calc( 180/3000 * 100vw*2 ); height: calc( 180/3000 * 100vw*2 ); position: fixed; bottom:1em; right: 1em; }
.cont-footer-logo{ width: 100%; position: absolute; top:-4.8vw; overflow: hidden; }
.cont-footer-logo > div{ position: relative; width: calc( 183/3000 * 100vw *2); margin: 0 auto;  }
.cont-footer-logo:before{ width: calc( 1300 / 3000 * 100vw ); height:calc( 38 / 3000 * 100vw *1.5); position: absolute; top:4.1vw; }
.cont-footer-logo:after{ width: calc( 1300 / 3000 * 100vw ); height:calc( 38 / 3000 * 100vw *1.5); position: absolute; top:4.1vw; }
.cont-footer{ padding: 2em 0 0 0; }
.footer-copyrihgt p{ font-size: .8em; }
.cont-footer-banner{ padding: 1em 0 0em 0; }
.banner-list{ display: flex; justify-content: center; align-items: flex-end; }
.banner-list > div{ margin: 0 1.5em; }
.banner-list .bn1{ width: calc( 308/3000 * 100vw *2 ); }
.banner-list .bn2{ width: calc( 196/3000 * 100vw *2 ); }
.banner-list .bn3{ width: calc( 1000/3000 * 100vw *2 ); }

/* content */
/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-entry{ padding: 0 0; }
.news-atl-bg{  margin: 0 0 3em 0; }
.content-entry .entry-date > span{ font-size: 1em; }
.content-entry .entry-title{ padding: .5em .5em 1em .5em; border-bottom:#000 solid 1px; }
.content-entry .entry-title > span{ font-size: 1.3em; }

.content-entry .entry-body{ padding: 1em 0; 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{ position: relative; padding-bottom: 1em; }
.kv-container{ }
.kv-container .grp .vis-grp{ position: relative; width: 100%; margin: 0 auto; }
.kv-container .logo{ width: calc(790/1000*100vw*0.7); top:93vw; right: 0; left:0; margin: 0 auto; z-index: 51; }
.kv-container[data_vis="2"] .logo{ top:7vw; filter: drop-shadow(0 0 .5em #FFF); }
.kv-container[data_vis="3"] .logo{ top:7vw; filter: drop-shadow(0 0 .5em #FFF); }
.kv-container[data_vis="4"] .logo{ top:7vw; filter: drop-shadow(0 0 .5em #FFF); }
.kv-container[data_vis="5"] .logo{ top:93vw; filter: drop-shadow(0 0 .5em #FFF); }

.vis-switch-container{ width: 100%; margin: -2.5em auto 0 auto; position: relative; top:inherit; right:inherit; pointer-events: none; z-index: 2; }
.vis-switch{ display: flex; flex-wrap: wrap; justify-content: center; }
.vis-switch > div{ width: 15vw; height: 15vw; margin: 0 .5em ; pointer-events: auto; line-height: 0; }
.vis-switch > div a{ display: inline-block; width: 100%; min-height: 100%; background: #FFF; padding: .4vw; border-image: url("../images/common/frame-a.png") 33% fill / 1.75vw repeat ; }
.vis-switch > div.on a{ background-color:#e93922; pointer-events: none; }

.top-banner{ width: 60%; padding: 1em 0 0 0; margin: 0 auto; position: relative; top:inherit; right:inherit;  }

#Foreground .opening .op-cont .anm-part{ position: relative; width: calc(1600/3000*100vw*1.5); height: calc(1600/3000*100vw*1.5); line-height: 0;  }
#Foreground .opening .op-cont .anm-part .torii{ top:5vw; }
#Foreground .opening .op-cont .anm-part .logo{ top:15vw; }
#Foreground .opening .op-cont .anm-part .oa{ top:50vw; }

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

/* top-oa */
.cont-top-oa{ padding: .5em 0; }
.cont-top-oa:before{ background-size:calc(20/3000*100vw*2) auto; }
.cont-top-oa .oa{ padding: .95em 0; }
.cont-top-oa .oa span{ display: block; width: calc(1663/3000*100vw*1.4); margin: 0 auto 0 1.5em; }

/* top-movie */
.cont-top-movie{ }
.cont-top-movie > .inner{ padding: 0; }
.top-movie-list{ position: relative; width:100%; margin: 0 auto; }
.top-movie-list .thm{ padding: 1em .5em; transform-origin: center center; position: relative; text-align: center; }
.top-movie-list .thm > a{  }
.top-movie-list .thm > a::after{ background-position: center 50%; background-size: calc(289/3000*100vw*1.5); }
.top-movie-list .thm > a:hover::after{ background-size: calc(289/3000*100vw*1.8); }
.top-movie-list .thm > a img{ min-height: 10em;}
.top-movie-list .thm .cap{  }

.top-movie-cursor{ width: 98vw; top:18vw; }
.top-movie-cursor ul li{  width:calc(96/3000*100vw*1.2); height: calc(171/3000*100vw*1.2); }

/* top-news */
.cont-top-news{ }
.cont-top-news > .inner{ width: 100%; padding: 7vw 0 5vw 0; margin: 0 auto; }
.top-subtitle.news{ width:calc(205/3000*100vw*1.5); top:3vw; left:2.5vw;  }

.top-news-frame{ width:92.5%; background-size: calc( 420/3000 * 100vw * 2 ); margin: 0 0 0 auto; }

.top-news-container{ padding: 1em 1em 1em 2em; }
.top-news-container dl{ margin-bottom: 1.0em; background: #FFF url("../images/news-marker.png") no-repeat 78vw center; background-size: 1.0em; padding: .5em 2em .5em .5em; }
.top-news-container dl dt{ width: 100%; font-size: .8em;}
.top-news-container dl dd{ width: 100%; font-size: 1em; }

/* top-intro */
.cont-top-intro{ border-image: url("../images/common/frame-a.png") 33% fill / 6vw repeat ; }
.cont-top-intro:before{ background-size:calc(1066/3000*100vw*1.5) auto;  }
.cont-top-intro > .inner{ width: 95%; padding: 10.5vw 0; margin: 0 auto; }
.top-subtitle.intro{ width:calc(205/3000*100vw*1.5); position: absolute; top:103vw; right:0;  }
.intro-text{ width: calc(1364/3000*100vw*2); margin: 0 auto 0 1vw; }

/* staffcast */
.cont-top-staffcast{ background-size: calc(412/3000*100vw*1.5) auto; }
.cont-top-staffcast > .inner{ width: 100%; padding: 5.5vw 0; margin: 0 auto; }
.top-subtitle.staffcast{ width:calc(362/3000*100vw*1.5); position: absolute; top:3vw; left:2.5vw;  }
.staffcast-subtitle{ width:calc(65/3000*100vw*1.5); margin: 0 auto 3em auto; }

.staffcast-list{ width: 100%; text-align: left; margin: 0 auto .5em auto; }
.staffcast-list > div{ width: 50%; margin-bottom: 1em; }
.staffcast-list > div.sep-sp{ width: 100%; height: 0; margin: 0; padding: 0; display: block; }
.staffcast-list > div.sep-pc{ display: none; }
.staffcast-list > div.full-sp,
.staffcast-list > div.full{ width: 100%; }
.staffcast-list > div.half{ width: 100%; }
.staffcast-list > div.third{ width: 100%; }
.staffcast-list > div.quarter{ width: 50%; }
.staffcast-list > div.fifth{ width: 50%; }

.staffcast-list > div > div{ margin-bottom: 1.3em;  }
.staffcast-list .pos{ display: block; font-size: .8em; letter-spacing: .05em;  margin-bottom: .5em; line-height: 1; }
.staffcast-list .name{ display: inline-block; font-size: 1.2em; letter-spacing: .01em; margin-bottom: 0; line-height: 1; }
.staffcast-list .ext{ display: block; font-size: .8em; letter-spacing: .1em; padding-top: .5em; margin-bottom: 0; line-height: 1; }
.staffcast-list .cmt{ width: 2.0em;}

.cont-modal.cmt{ width: 90vw; }
.comment-frame{ padding: .5em; background:#FFF; border-image: url("../images/common/frame-c.png") 33% fill / 6vw repeat ; }


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

/* news */
.cont-sub-news{ }
.cont-sub-news > .inner{ width: 100%; padding: 1em 0; margin: 0 auto; }
.sub-subtitle.news{ width:calc(205/3000*100vw*1.5); position: absolute; top:-11vw; left:1.5vw;  }
.sub-news-container{ width: 90%; margin: 0 auto; }
.news-frame{ padding: 1em; border-image: url("../images/common/frame-d.png") 33% fill / 5vw repeat ; }

/* onair */
.cont-sub-onair{ }
.cont-sub-onair > .inner{ width: 100%; padding: 1em 0; margin: 0 auto; }
.sub-subtitle.onair{ width:calc(205/3000*100vw*1.5); position: absolute; top:-11vw; left:1.5vw;  }
.sub-onair-container{ width: 90%; margin: 0 auto; }

.onair-list-container{ max-width: inherit; }
.onair-list{ margin: 0 auto; max-width: inherit; padding: .75em .25em; }
.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.13em; margin-bottom: .25em; }
.onair-list .schd{ font-size: 1em; }
.onair-list .time{ font-size: 1em;  }
.onair-list .extr{ font-size: .8em; }

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

/* goods */
.cont-sub-goods{ }
.cont-sub-goods > .inner{ width: 100%; padding: 1em 0; margin: 0 auto; }
.sub-subtitle.goods{ width:calc(205/3000*100vw*1.5); position: absolute; top:-11vw; left:1.5vw; }
.sub-goods-container{ width: 90%; margin: 0 auto; }
.books-text{ width: 70%; margin: 0 auto; }
.music-text{ width: 80%; margin: 0 auto;  }
.music-frame{ padding: .5em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 3vw repeat ; }
.comment-cont .cmt{ width: 1.8em; top:.6em; left:calc(50% + 4.5em);  }

.bluray-frame{ padding: .5em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 3vw repeat ; }
.bluray-text{ width: 100%; 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 .inner a{ display: block; /*height: 13em;*/ position: relative; padding: .5em; background: #FFF; border-image: url("../images/common/frame-d.png") 33% fill / 3vw repeat ; }
.bnf-list .thumb{ padding:0 2.5em;  }

/* story */
.cont-sub-story{ }
.cont-sub-story > .inner{ width: 100%; padding: 1em 0; margin: 0 auto; }
.sub-subtitle.story{width:calc(205/3000*100vw*1.5); position: absolute; top:-11vw; left:1.5vw; }

.cont-story-navi{ width: 80%; margin: 0 auto 1.0em auto; }
.story-navi ul li{ width: 4em; height: 4em; }
.story-navi ul li.spc-sp{ display: block; }
.story-navi ul li a{ width: 4em; height: 4em; padding-top: 1.2em; }
.story-navi ul li a span{ font-size: 1.433em; }

.cont-story-data{ width:100%; min-height: 60vw; }
.cont-story-data{ border-image: url("../images/common/frame-a.png") 33% fill / 6vw repeat ; }
.cont-story-data:before{ background-size:calc(1066/3000*100vwvw*1.5) auto; }

.story-data .episode-container{ padding: 2em ; }

.story-data .ep-slider-sceneImage{ width: inherit; max-width: 1800px; 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 .233em; }

.ep-slider-dots{ margin-top: 1em; }
.ep-slider-dots li { margin: 0 3em 0 -1em; }
.ep-slider-dots li button:before { font-size: 1.2em; }

.story-data .ep-number{ font-size: 1.433em; margin-bottom: .25em; }
.story-data .ep-title{ font-size: 1.6em; margin-bottom: .75em; }
.story-data .ep-sep{ margin: 0 auto 1em auto; }
.story-data .ep-text{  }
.story-data .ep-text p{ font-size: 1.2em; }
.story-data .ep-staff p{ font-size: .8em; }

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

/* character */
.cont-sub-character{ }
.cont-sub-character > .inner{ width: 100%; padding: 1em 0; margin: 0 auto; }
.sub-subtitle.character{width:calc(205/3000*100vw*1.5); position: absolute; top:-11vw; left:1.5vw; }

#CharaCont{ position: relative; }
.cont-character-navi{ width: 70%; }
.character-navi ul li{ width: 33.33%; margin: 0; }

.cont-character-data{ width:100%; min-height: 190vw; padding-bottom: 10vw; position: relative; }
.character-data{ width:100%; padding-top: 5em; min-height: 190vw; position: relative; display: none; pointer-events:none; overflow: hidden; }
.character-data .chr-img{ position: absolute; z-index: 5; width: calc(1100/3000*100vw*2); margin: 0; top:0; right:-18vw; }
#C6.character-data .chr-img .fig1{ margin-top: 3em; margin-left: 1em; }
#C8.character-data .chr-img .fig1{ margin-left: 3.5em; }

.character-data .chr-prof{ position: relative; top:inherit; left:inherit; width: 65%; margin: 0 auto 0 1em;  }

.character-data .chr-prof .chr-switch{ width: calc(319/3000*100vw*1.5); position: absolute; top:-14vw; left:0; pointer-events: auto; }
.character-data .chr-prof .chr-face{ width: 85%; margin: 0 auto 0 1em; position: relative; }
.character-data .chr-prof .chr-face.nochange{ margin: 0 auto 0 1em; }

.character-data .chr-prof .prof-frame{ padding: 2em 1em 1em 1em; }
.character-data .chr-prof .prof-frame:before{ width: calc(100% - .8em ); height: calc(100% - .8em ); top:.4em; left:.4em;  }
.character-data .chr-prof .prof-frame:after{ width: calc(117/3000*100vw*2); height: calc(115/3000*100vw*2); top:-2.5vw; }

.character-data .prof-name{ width: 100%; padding: 0; margin: 0 0 2.5em 0; text-align: center; position: relative;}
.character-data .prof-name .name-ruby{ display: block; margin-right: .25em; }
.character-data .prof-name .name-ruby span{ font-size: .8em; font-weight: bold; letter-spacing: 0.3em; }
.character-data .prof-name .name{ display: block; margin-right: .5em; }
.character-data .prof-name .name span{ font-size: 1.7em; font-weight: bold; letter-spacing: 0.1em; }
.character-data .prof-name .cv{ display: inline-block; }
.character-data .prof-name .cv span{ font-size: 1.1em; color: #666; font-weight: bold; letter-spacing: 0.1em; }
.character-data .prof-text{ padding: 0; text-align: center; }
.character-data .prof-text .text{ margin: 0; font-size: 1.0em; font-weight: bold; letter-spacing: .05em; line-height: 2; position: relative; z-index: 6; }
.character-data .prof-text .text [data-ruby]::before { top: -1.7em; }

.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: translateY(-5%);}
  100% { opacity: 1; transform: translateY(0);}
}
.subnavi-cursor.character-cursor{ width: 20%; bottom:5vw; left: 40%; display: none; }
.subnavi-cursor.character-cursor ul li span{ background-image: url("../images/character-cursor.png");  }
.subnavi-cursor.character-cursor ul li.off{ pointer-events: none; visibility: hidden; }


/* special */
.cont-sub-special{ }
.cont-sub-special > .inner{ width: 100%; padding: 1em 0; margin: 0 auto; }
.sub-subtitle.special{ width:calc(205/3000*100vw*1.5); position: absolute; top:-11vw; left:1.5vw; }
.sub-special-container{ width: 90%; margin: 0 auto; }
.special-text{ width: 100%; margin: 0 auto; }

/* 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) {

}


