@import url("https://use.typekit.net/ygz4guz.css");
@import url("https://use.typekit.net/gvs5mwa.css");
@charset "UTF-8";
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,main {margin:0;padding:0;border:0;font-size:100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main {display:block;}
body {font-family:Verdana,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1;}
ol,ul {list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after {content:'';content:none;}
table {border-collapse:collapse;border-spacing:0;}
wbr:after {content:"\00200B";}

/*	TBS reset
============================== */
.alt {position:absolute;top:-5000px;left:-9999px;}
.clearfix:after {content:"";clear:both;display:block;}
.hide-txt {text-indent:110%;white-space:nowrap;overflow:hidden;}
.fp-causion {display:none;}
.nocontxt {-webkit-touch-callout: none;-webkit-user-select: none;user-select: none;-webkit-user-drag:none;}
.nocontxt img {pointer-events: none;}
@media all and (min-width:768px) {
.alt-pc {position:absolute;top:-5000px;left:-9999px;}
.clearfix-pc:after {content:"";clear:both;display:block;}
.hide-txt-pc {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
@media all and (max-width:767px) {
.alt-smp {position:absolute;top:-5000px;left:-9999px;}
.clearfix-smp:after {content:"";clear:both;display:block;}
.hide-txt-smp {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
div.embed-tbsplayer {
background-color:#000;
position:relative;
height:0;
padding-top:56.25%;
}
div.embed-tbsplayer .tbs-player {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
}
div.embed-tbsplayer-audio {
background-color:#fff;
}
div.embed-tbsplayer-audio .tbs-player {
height:46px;
}
div.lbx-overlay {
z-index:10000;position:absolute;background-color:#000;width:100%;height:100%;left:0;top:0;right:0;bottom:0;opacity:0.9;
}
/*/////////////////////////////////////////////////////////////////////////
default_CSS
/////////////////////////////////////////////////////////////////////////*/
@font-face {
  font-family: YuGothicM;
  src: local("Yu Gothic Medium");
}
body { font-family: Roboto, 'Helvetica Neue' ,'Terminal', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; -webkit-text-size-adjust: 100%; line-height: 1;}
body, h1, h2, h3, h4, h5, div, p, dl, dt, dd, ol, ul, li, form, table, caption, tbody, tfoot, thead, tr, th, td, article,figure { margin:0; padding:0; font-weight: normal; font-size:100%; box-sizing: border-box;}
p {background-color:rgba(255,255,255,.01);}
img,iframe { border:none;}
ol,ul { list-style:none; list-style-type: none;}
.relative { position: relative;}
.hid{visibility: hidden;}
.cover {width:100%; height:100%;}
@media print {
.noprint {display:none !important;}
}
/*font*/
.tCenter { text-align:center !important}
.tRight { text-align:right !important}
.tLeft { text-align:left !important}
/*font-size*/
html { font-size: 62.5%;} /* = 10px */
body { font-size: 1.6rem; } /* = 16px */
h1 { font-size: 3.2rem; }
h2 { font-size: 2.3rem; }
h3 { font-size: 2.1rem; }
h4 { font-size: 2.0rem; }
p { font-size: 1.6rem; }
.f160 { font-size:160%;}
.f140 { font-size:140%;}
.f130 { font-size:130%;}
.f120 { font-size:120%;}
.f110 { font-size:110%;}
.f95 { font-size:95%;}
.f90 { font-size:90%;}
.f85 {font-size:85% !important;}
.f80 {font-size:80% !important;}
.f75 {font-size:75% !important;}
.stred{color:#fb4033;}
.stye{color:#fef900;}
.stye2{color:#c99a18;}
.storg{color:#efb689;}
.storg2{color:#ff8549;}
.stgrn{color:#5ce5d5;}
.stblu{color:#0070c0;}
.stblu2{color:#8bd2f8;}
.stblu3{color:#01c4ee;}
.stpk{color:#e95589;}
.stpk2{color:#ff85ea;}
.stpk3{color:#ff4083;}
.ffsp{font-feature-settings: "palt";}
/*link*/
a { text-decoration:none; color:#000;}
a:hover { text-decoration:none; color:#000;}
#menu li,header #logo a,a.btn_prev,a.btn_s,a.btn_i,#prevnext ul li a,.update li a,.bnarea ul li a,.bn_prev a,#gotop a,a.btn_df,ul.bnr li a,.btnitem,#snsarea #sns a,.paraviorg{text-decoration:none;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
#menu li:hover,header #logo a:hover,a.btn_i:hover,a.btn_df:hover,.bn_prev a:hover,#gotop a:hover,ul.bnr li a:hover,.btnitem:hover,#snsarea #sns a:hover,.paraviorg:hover{text-decoration:none;
filter:alpha(opacity=70); -moz-opacity:0.70; opacity:0.70;}
.no-link{ pointer-events: none; cursor: default; text-decoration:none; filter:alpha(opacity=50); -moz-opacity:0.5; opacity:0.5;}

.dsms {
font-family: dnp-shuei-mgothic-std, sans-serif;
font-weight: 400;
font-style: normal;
}
.penletter {
font-family: vdl-penletter, sans-serif;
font-weight: 500;
font-style: normal;
}
.balloon {
font-family: balloon-urw, sans-serif;
font-weight: 700;
font-style: normal;
}
.balloon-d {
font-family: balloon-d, sans-serif;
font-weight: 800;
font-style: normal;
}
.balloon-ds {
font-family: balloon-urw-drop-shadow, sans-serif;
font-weight: 400;
font-style: normal;
}
.balloon-ol {
font-family: balloon-urw-outline, sans-serif;
font-weight: 800;
font-style: normal;
}
.smoothy {
font-family: smoothy, sans-serif;
font-weight: 400;
font-style: normal;
}

/*/////////////////////////////////////////////////////////////////////////
コンテンツ用CSS／オリジナル設定
/////////////////////////////////////////////////////////////////////////*/
html, body, div#con-body {background-color:#fff1d5; background: url(../img/bg.png); color:#000; background-attachment: fixed;}
#con-body {background-color:transparent;}
.inner{width:1000px; margin:0 auto;}

#top #container{
background-image:url(../img/paint5.png),url(../img/paint4.png);
background-repeat:no-repeat,no-repeat;
background-position:calc(50% - 500px) 75%,calc(50% + 500px) 40%;
background-size:400px,400px;
}

header{margin:0 auto; background-size:cover; background-color:#f1bc7b;}
#top main{width:100%;}
#top h1{width:1150px; height:620px; position:relative; margin:0 auto;}
#top h1 .main1{background: url(../img/top/main.jpg?1) no-repeat left bottom; background-size:contain; width:1080px; height:590px; margin:0 auto; position:absolute; bottom:0; left:0;
  animation: fadein 1.5s cubic-bezier(.4, 0, .2, 1) normal;
  /*animation: circlescreen 1.5s cubic-bezier(.4, 0, .2, 1) normal;*/}
#top h1 .main2{position:absolute; top:27px; left:475px; width:245px; opacity: 0;
  animation: zoomout .8s ease-in .5s 1 forwards;}
#top h1 .main3{position:absolute; left:110px; bottom:-1%; width:500px; opacity: 0;
  animation: slide-in .5s ease 1.5s 1 forwards;}

@keyframes circlescreen {
  0% {
    clip-path: circle(0 at 50% 50%);
    -webkit-clip-path: circle(0 at 50% 50%);
  }
  100% {
    clip-path: circle(100% at 50% 50%);
    -webkit-clip-path: circle(100% at 50% 50%);
  }
}
@keyframes fadein {
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes zoomout {
  from {
    opacity: 0;
     transform: scale(5,5);}
  to {opacity: 1; transform: scale(1,1);}
}
@keyframes slide-in {
  0% {
    opacity: 0;
    transform: translateX(-25%);
  }
  85% {
    opacity: 1;
    transform: translateX(2.5%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

#countdown {margin:0 auto; width:100%; vertical-align: middle; position:relative; text-align:center; padding:2em 0 0;}
#countdown .byoa{color:#000;/*position:absolute; top:0; bottom:0; left:0; margin:auto;*/ vertical-align:bottom; display:inline-block; font-size:200%; padding:0 .5em .5em; text-align:right; font-weight:600; background: url(../img/paint7.png) no-repeat right bottom; background-size:100%;}
.timer{display:inline-block; margin:0; padding:0; vertical-align:bottom; color:#000;}   
.timertext{font-weight:bold; font-size:220%; letter-spacing:.2em;}
.timertext span.number{font-size:280%; color:#e95589;
font-family: balloon-urw, sans-serif;
font-weight: 700;
font-style: normal;
letter-spacing:-.05em;}
.timertext span.dhms{ letter-spacing:0; padding:0 0 0 .2em; display:inline-block;}
.timer span.nowoa{text-align:center; font-size:480%; color:#e95589;
font-family: balloon-urw, sans-serif;
font-weight: 700;
font-style: normal;}
#countdown p{background:none !important;}

#bn_fq{width:1000px; display: flex; flex-flow: row wrap; justify-content: center; align-items: center; margin:2.5em auto .5em;}
.fq_btn a,.fq_rs a{width:400px; height:130px; display:block; background:#01c4ee url(../img/top/fq_btn.png) no-repeat center center; margin:0 1.2em; background-size:95%; border-radius:24px; box-shadow:6px 6px rgba(4,172,218,0.7); transition:.5s; border:3px solid #fff;}
.fq_rs a{background: url(../img/top/fq_rs.png) no-repeat center center; background-size:100%; box-shadow:6px 6px rgba(223,51,111,0.7);}
#bn_fq a:hover{transform: translate(6px,6px); box-shadow:none;}
/*.fq_btn a{pointer-events: none; cursor: default; opacity:0.9;}*/

/*menu*/
#menu {margin:0 auto; background-color:rgba(255,255,255,0.7); position: relative; padding:.2em 0 0;}
#menu:before{background: url(../img/freeline.png) repeat-x center 0; background-size:auto 7px;
  content: '';
  position: absolute;
  top:-3px;
  left:0;
  width:100%;
  height:7px;
  z-index:1;
}
#menu:after{background: url(../img/dotline.png) repeat-x center 0; background-size:contain;
  content: '';
  position: absolute;
  bottom:-5px;
  left:0;
  width:100%;
  height:10px;
  z-index:1;
}
#menu ul {width:1000px; margin:0 auto; display: flex; flex-flow: row wrap; justify-content: center; align-items: center;}
#menu li {text-align:center; width:155px; height:100px; vertical-align: middle; position: relative;}
#menu li:before { 
  content:'';
  width: 1px;
  height: 35%;
  position: absolute;
  display: inline-block;
  border-left: solid 1px #ebba93;
  top:25%;
  left: 0;
}
#menu li.menu1:before {
  border:none;
}
#menu li a {width:100%; height:100%; display: block; text-decoration:none; vertical-align: middle; color:#ff8549;
z-index:5; box-sizing: border-box;
display: flex;  justify-content: center; align-items: center;
transition-duration: .5s;
background: url(../img/menu1.png) no-repeat center center; background-size:120px;}
#menu li p{line-height:150%;}
#menu li span.eng{font-size:230%;}
#menu li span.f75{font-size:75%;}
#menu li span.ttlruby{color:#000; display:inline-block; padding:.2em 0 0; font-size:85%;
font-family: vdl-penletter, sans-serif;
font-weight: 600;
font-style: normal;}
#menu li.menu2 a{background-image:url(../img/menu2.png);}
#menu li.menu3 a{background-image:url(../img/menu3.png);}
#menu li.menu4 a{background-image:url(../img/menu4.png);}
#menu li.menu5 a{background-image:url(../img/menu5.png);}
#menu li.menu6 a{background-image:url(../img/menu6.png);}
#menu li.menu5 span.ttlruby{letter-spacing:-.15em;}

#next h2,#update h2,#tbstopics h2{font-size:400%; line-height:100%; letter-spacing:.02em;}
#next h2:first-letter,#update h2:first-letter,#tbstopics h2:first-letter{color:#e95589;}

.oainfo{color:#fff; text-align:center; font-size:125%; line-height:140%; padding:.5em 0 0; background:none;}

#next{padding:1.5em 0; margin:0 auto;
background-image:linear-gradient(to top, rgba(152,234,212,0.4) 0%,rgba(152,234,212,0.4) 100%); 
background-repeat:no-repeat;
background-size:75% 60%;
background-position:right top 20%;
/*background-size:75% 50%;
background-position:right bottom 35%;*/
}
#next h2{padding:0 0 0 .5em;}
#next .inner{/*background: url(../img/paint1.png) no-repeat left top; background-size:35%;*/ padding:2em 0 0; z-index:1;}
#next #trailer {width:736px; height:414px; background-size:cover; background-position: center center; background-repeat: no-repeat; margin:1.5em auto 0; box-shadow:10px 10px 20px rgba(182,176,162,0.5); border-radius:14px; overflow: hidden; z-index:1;}
#next #trailer iframe,#spmov iframe {width:100%; height:414px;}

#newep{width:100%; margin:3.5em 0 0; position:relative; display:inline-block; vertical-align:top; padding:0 0 .5em;}
#newep figure#mainph{width:430px; height:280px; display:inline-block; box-sizing: border-box; position: relative;
margin:0 1.8em 0 1.5em; vertical-align:top; padding:10px; background-color:rgba(255,255,255,0.75);}
#newep figure#mainph span{width:100%; height:100%; background-image:url(../story/img/ep10/ep10.jpg); background-position: center center; background-repeat: no-repeat; background-size:cover; display:block;}
#newep figure#mainph:before, #newep figure#mainph:after {
  content: '';
  position: absolute;
  width: 90px;
  height:1px;
  background-color: black;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  z-index:1;
}
#newep figure#mainph:before {
  top:20px;
  left:-20px;
}
#newep figure#mainph:after {
  bottom:20px;
  right:-20px;
}

#newep #storyline{width:calc(100% - 500px); display:inline-block; padding:0;}
#newep h2{position:absolute; top:-13%; left:320px; font-size:600%; z-index:10;}
#next #newep h2:first-letter{color:#000;}
#newep h3.epnm{font-size:180%; display:inline-block; background: linear-gradient(transparent 75%, rgba(236,159,186,0.4) 75%);}
#newep .oadate{font-size:100%;}
#newep p.text {padding:1em 0; line-height:160%; font-size:110%; word-break: break-all;}
#newep .marker{width:40%; margin:.3em auto; position: relative;}
#newep .marker a,#storyline_sp label {width:100%; height:100%; display:block; text-align:center; font-weight:600; font-size:140%; transition: 0.5s; border:2px solid #000; border-radius:50px; position: relative; z-index:1; padding:.8em 0;}
#newep .marker:before,#storyline_sp label:before{
background-color:rgba(255,217,10,0.3); border-radius:50px;
  content: '';
  position: absolute;
  top:8%;
  left:3%;
  width:100%;
  height:100%;
  z-index:-1;
}

/*topics*/
#tbstopics{padding:0 0 3em; margin:0 auto;
background-image:linear-gradient(to top, rgba(204,150,239,0.4) 0%,rgba(204,150,239,0.4) 100%); 
background-repeat:no-repeat;
background-size:75% 100%;
background-position:left top;
}
#tbstopics h2{margin:0 auto; padding:0 0 .3em .5em; z-index:1;} 
#topics {position:relative; padding:1em 0 0;}
#topics .tolist{text-align:right; position: absolute; top:18%; right:4%;}
#topics .tolist a{position:relative; display:block; z-index:2;}
#topics .tolist a:before{
content: "";
width:50px;
height:1px;
background-color:#000;
position: absolute;
left: -65px;
top: 50%;
}
.paint3{position:absolute; left:calc(40% - 500px); top:-22%; width:400px;}
.ojm{position:absolute; left:calc(40% - 500px); bottom:-8%; width:400px;}

/*whatsnew*/
#whatsnew{margin:5em auto 2em;
background-image:linear-gradient(to top, rgba(169,229,249,0.4) 0%,rgba(169,229,249,0.4) 100%); 
background-repeat:no-repeat;
background-size:80% 100%;
background-position:right top;
position:relative;
}
#whatsnew:before{
background: url(../img/dotline2.png) repeat-x center 0; background-size:auto 5px;
  content: '';
  position: absolute;
  width:62%;
  height:5px;
  z-index:1;
  left:0;
  top:15%;
}
#update {width:1010px; position:relative; margin:0 auto; padding:1.8em 0 1.5em;}
#update h2{margin:0 auto; z-index:1; padding:0 0 .5em; text-align:right;}
#update ul#topicslist{display: flex; flex-flow: row wrap; justify-content: center; align-items: center;
height:auto; height:310px; overflow-y:scroll; padding:.5em 1em 0 0;}
#update ul::-webkit-scrollbar {width:3px;}
#update ul::-webkit-scrollbar-track {background:none;}
#update ul::-webkit-scrollbar-corner {display: none;}
#update ul::-webkit-scrollbar-thumb {background:rgba(169,229,249,0.6); border-radius:20px;}

#update ul#topicslist li{width:47%; height:120px; position: relative; margin:0 0 2em .5em; background-color:rgba(255,255,255,0.75); border-radius:10px; overflow: hidden; z-index:1; box-shadow:10px 10px 20px rgba(182,176,162,0.5);}
#update ul#topicslist li a span.thum{width:160px; height:120px; display:inline-block; background-size: cover; background-repeat: no-repeat; background-position: center top; vertical-align:top; margin:0 2.5% 0 0; vertical-align: middle; /*background-image:url(../img/ph1.jpg);*/}
#update ul#topicslist li p{display:inline-block;line-height:1.4; padding:0; width:58%; vertical-align: middle;}
#update ul#topicslist li a{display:block; width:100%; color:#000;}
#update ul#topicslist li a:hover{opacity: 0.5; transition: 0.4s;}
#update ul#topicslist li span.ymd{color:#e95589; font-size:120%; display:inline-block; position:absolute; bottom:7%; right:3%; text-align:right; background: linear-gradient(transparent 70%, rgba(236,159,186,0.4) 70%); line-height:100%; padding:0 .2em 0;}
#update ul#topicslist li:nth-last-child(2) a{pointer-events: none; cursor: default;}
#update .ytbthum{background-position: center center !important; background-size:contain !important; background-color:rgba(255,255,255,0.1);}
#update .thum0701{background-position: center center !important; background-size:auto 100% !important; background-color:rgba(255,255,255,0.1);}
#update .thum1119{background-position: center center !important; background-size:92% !important; background-color:rgba(255,255,255,1);}

/*bnr*/
.bnarea{padding:0 0 2%; 
background-image:linear-gradient(to top, rgba(255,255,255,0.35) 0%,rgba(255,255,255,0.35) 100%); 
background-repeat:no-repeat;
background-size:100% 85%;
background-position:right bottom;
position:relative;
}
ul.bnr,ul.streambnr{display: flex; flex-flow: row wrap; width:1000px; margin:0 auto; justify-content: center; position:relative; z-index:1;}
ul.bnr li{width:475px; height:133px;  margin:0 0 2em; border-radius:12px; background-color:rgba(255,255,255,0.75); box-shadow:10px 10px 20px rgba(182,176,162,0.5); }
ul.bnr li a{display:block; width:100%; height:100%; background-repeat: no-repeat; background-position:center center; position: relative; background-size:cover;  border-radius:12px;}
ul.bnr li.bn_stmp,ul.bnr li.bn_porg{/*width:600px; height:235px;*/height:186px;}
ul.bnr li.bn_stmp a {background-image:url(../img/top/bn_stmp.png);}
ul.bnr li.bn_porg a {background-image:url(../img/top/bn_porg.jpg);}
ul.bnr li.bn_comic a {background-image:url(../img/top/bn_comic.png);}
ul.bnr li.bn_shopping a {background-image:url(../img/top/bn_shopping.jpg);}
ul.bnr li.bn_shopping2 a {background-image:url(../img/top/bn_shopping2.jpg);}
ul.bnr li.bn_comic img{width:21%; position: absolute; right:8%; top:-5%; transform: rotate(5deg);}

ul.streambnr{margin:0 auto;}
ul.streambnr li{width:300px; height:120px; margin:1.5% 0; text-align:center; position: relative;
width: -webkit-calc(100% / 3 - 2%) ;
width: calc(100% / 3 - 2%);}
ul.streambnr li.tbsfree{margin:1.5% 2.5%;}
ul.streambnr li a{display:block; width:100%; height:100%; background-repeat: no-repeat; position: relative; background-color:rgba(255,255,255,0.6); box-shadow:10px 10px 20px rgba(182,176,162,0.5);}
ul.streambnr li a span.stream{text-align:center; color:#fff; position: absolute; bottom:0; left:0; right:0; display:inline-block; line-height:210%;}
ul.streambnr li.paravi a {background-image:url(../img/top/logo_paravi.svg); background-size:62%; background-position:center 25%;}
ul.streambnr li.paravi a span.stream{background-color:rgba(0,79,153,0.9);}
ul.streambnr li.tbsfree a {background-image:url(../img/top/logo_tbsfree.svg); background-size:65%; background-position:center 31%;}
ul.streambnr li.tbsfree a span.stream{background-color:rgba(0,80,255,0.9);}
ul.streambnr li.tver a {background-image:url(../img/top/logo_tver.svg); background-size:32%; background-position:center 26%;}
ul.streambnr li.tver a span.stream{background-color:rgba(0,174,217,0.9);}

ul.streambnr li.tver:before,
ul.streambnr li.tbsfree:before{
position: absolute;
content:"";
background-color:rgba(252,252,252,0.6);
left:0;right:0;top:0;bottom:0;
z-index:1;
font-weight:bold;
text-align: center;
}
ul.streambnr li.tver,ul.streambnr li.tbsfree{pointer-events: none; cursor: default; text-decoration:none;}
.endtxt{position: absolute; left:0;right:0; top:40%; z-index:2; opacity:1 !important; text-align:center; width:100%; font-size:110% !important; 
text-shadow:1px 1px 5px rgba(252,252,252,0.8),-1px 1px 5px rgba(252,252,252,0.8),1px -1px 5px rgba(252,252,252,0.8),-1px -1px 5px rgba(252,252,252,0.8); margin:auto; color:#000 !important; 
font-weight:600;}

/*sns*/
#snsarea{padding:2% 0 0; margin:0 auto;
background-image:linear-gradient(to top, rgba(249,205,171,0.3) 0%,rgba(249,205,171,0.3) 100%); 
background-repeat:no-repeat;
background-size:100% 25%;
background-position:center bottom;}
#snsarea .inner{width:1000px; margin:4em auto 0; display: flex; flex-flow: row wrap; position: relative; justify-content: center;}
#igTL h3,#twTL h3,#rect h3{font-size:330%;}

#igTL,#twTL{width:345px; height:375px; margin:0 1.5em 0 0; position: relative; background-color:rgba(244,195,171,0.9); padding:1% 0 0;}
#igTL div.insta,#twTL .tline{width:95%; margin:0 auto; overflow:hidden; padding:1.5em 0 0; background-color:rgba(255,255,255,0.7);}
#twTL .tw-inner{width:96%; margin:0 auto; position: relative; padding:1.5em 0 0;}
#igTL h3,#twTL h3{color:#000; text-align:center; line-height:0;}
#igTL .outgo,#twTL .outgo{position:absolute; bottom:-4.8%; left:1%; font-size:75%;}

#rect {width:255px; text-align:center;}
#rect h3{margin:-5% 0 0; padding:0 0 4%; background: url(../img/paint6.png) no-repeat center bottom; background-size:50%;}
#rect .ad {display:block; width:300px; height: 250px; background:#fff;}

#snsarea #sns,#next #sns{text-align:center; margin:0 auto 2em;}
#next #sns{width:340px; background: url(../img/paint2.png) no-repeat center bottom 10px; padding:5em 0 0; margin:0 auto; background-size:contain; position:relative;}
#next #sns:before{
content: "";
width:1px;
height:30%;
background-color:#172c66;
position: absolute;
left: 50%;
top:0;
z-index:1;
}
#next #sns .outgo1{padding:2em 0 0; font-size:75%;}
#snsarea #sns a,#next #sns a{width:85px; height:85px; position: relative; display:inline-block; border-radius:50%; border:2px solid #000;}
#snsarea #sns a img,#next #sns a img{position:absolute; top:0; right:0; bottom:0; left:0; margin:auto; width:50%;}
#snsarea #sns{text-align:center; margin:0 auto 2em;}
#snsarea #sns a{width:70px; height:70px; margin:5% 1% 0;}
#snsarea #sns a img{width:50%;}
#snsarea #sns a img.sns_l{width:56%;}
#next #sns a{margin:0 1.5% 0;}
#next #sns a img.sns_l{width:55%;}

/*footer*/
#top footer{text-align:center; padding:2em 0 3em;}
footer .share{display:inline-block; vertical-align:top; padding:35px 0 0; position: relative; z-index:10;}
footer p.copy {text-align:center; padding:1em 0; font-size:80%;}
#top footer p.copy {display:inline-block; width:720px; margin:0 auto; padding:40px 0 0;}
/*f2*/
footer.dir2{margin:5% 0 0; position:relative; padding:2.5em 0; background-color:rgba(249,205,171,0.3);
/*
margin:10% 0 0; padding:0 0 1em;
background-image:linear-gradient(to top, rgba(249,205,171,0.3) 0%,rgba(249,205,171,0.3) 100%); 
background-repeat:no-repeat;
background-size:100% 100%;
background-position:center bottom;
*/
}
footer.dir2 .inner{width:980px; margin:0 auto; position:relative; /*height:200px;*/ }
footer.dir2 .share{position:absolute; top:20%; left:0;}
#rect2 {width:300px; height: 250px; background:#fff; position:absolute; bottom:10%; right:0;}


/*------------------　2nd　------------------ */
header#dir{padding:0; margin:0 auto 1em; position: relative; background-color:rgba(241,188,123,0.7);}
header#dir #logo{width:980px; margin:0 auto; padding:1em 0 0;
animation: fadein 1.5s ease 0s 1 normal;
-webkit-animation: fadein 2s ease 0s 1 normal;}
header#dir #logo a{width:800px; height:260px; display:block; background: url(../img/head.png) no-repeat 0 0; margin:0 auto; background-size:cover;}
h1#ttl{font-size:450%; line-height:100%; letter-spacing:.02em; text-align:center; background: url(../img/paint2.png) no-repeat center bottom; padding:0 0 .5em; background-size:400px auto; margin:0 auto;}
h1#ttl:first-letter{color:#e95589;}
.wrap{position: relative; padding:2.5em 0 0;
background-image:url(../img/paint5.png),url(../img/paint4.png);
background-repeat:no-repeat,no-repeat;
background-position:calc(50% - 500px) 85%,calc(50% + 500px) 10%;
background-size:400px,400px;
}

#contents{width:980px; background-color:rgba(255,255,255,0.7); padding:3.5em 0 2em; margin:2em auto 3em; position: relative; box-shadow:10px 10px 20px rgba(182,176,162,0.5); border-radius:16px;}
#contents .inner{width:90%;}
#contents .inner p {padding:1em 0 .5em; line-height:1.7;}

.ph_cut {width:600px; height:400px; margin:1.5em auto; background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative;}
.ph_cut_l {width:400px; height:600px; margin:1.5em auto; background-size: cover; background-repeat: no-repeat; background-position: center top; position: relative;}
.lazy {position:relative; display: block; background-repeat: no-repeat; background-position: center center; background-size: cover;}
.lazy img {position:absolute;left:0;top:0; width:100%; height:100%;}
.line1 {background: linear-gradient(transparent 70%, rgba(236,159,186,0.3) 70%); padding:0 .2em .15em;}
.line2 {background: linear-gradient(transparent 70%, rgba(240,223,99,0.4) 70%); padding:0 .2em .15em;}
.bdr{padding:.8em 1.5em; margin:1.5em auto; font-size:95%; background-color:rgba(255,251,244,0.8);}
.bdr2{padding:.8em 1.5em; margin:1.5em auto .5em; font-size:95%; border:1px solid #dabd64; box-shadow:10px 10px 20px rgba(197,152,97,0.2);}
.fuchidori {font-weight: bold; color: rgba(0, 0, 0, 0); text-shadow:2px 2px 0 #fef900; -webkit-text-stroke: 1px #fd52ba; text-stroke: 1px #fd52ba;}

/*about*/
#highlight h2{font-weight:600; line-height:170%; font-size:180%; margin:0 0 1em; text-align:center;}
#highlight h3{font-weight:600; line-height:150%; font-size:160%; margin:1.5em 0; text-align:center;}
#highlight .heart{width:30px; display:inline-block;}
#highlight .ph1{width:800px; height:516px; background:#eee;}
#highlight .ph1 span,#comic .comiccover span {width:100%; height:100%; background-image:url(../img/ph1.jpg?1); background-position: center bottom; position: absolute; z-index:auto; display:block;  background-size: cover;}
#highlight .ph1:before,
#comic .comiccover:before {
  content: "";
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  background-image: radial-gradient(#8bd2f8 12%, transparent 25%),radial-gradient(#8bd2f8 12%, transparent 25%);
  background-position: 0 0, 4px 4px;
  background-size: 8px 8px;
  /*z-index:-1;*/
}
#cast table td {padding:.5em .5em .5em 1em; font-size:90%;}
#highlight p.cap {font-size:85%; text-align:center; padding:0 !important; margin:0 !important;}
#highlight .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}
#highlight input:checked ~ .hidden_show {
    padding:.5em 0 0;
    height: auto;
    opacity: 1;
}
#highlight label {cursor :pointer;}
#highlight input {display: none;}
#highlight .comment,#comic .comment {padding:.8em 1.2em; margin:1.5em 0; border:1px dashed #000; border-radius:14px;}
#highlight .comment h4{padding:.3em .3em .3em; font-size:120%; font-weight:600; line-height:140%;}
/*#highlight .comment h4:before{
content: "";
width:50px;
height:1px;
background-color:#000;
position: absolute;
left:0;
top:50%;
}*/
#highlight .comment p,#music .comment p{padding:.5em;}
.emphasis {
	text-emphasis: filled dot black;
	-webkit-text-emphasis: filled dot black;
}

/*comic*/
#comic h2{font-weight:600; line-height:120%; font-size:180%; margin:0 0 1em; text-align:center;}
#comic h2 span{font-weight:400; font-size:70%;}
#comic h3{font-weight:600; line-height:160%; font-size:175%; margin:1em auto; text-align:center;}
#comic h3:first-of-type{font-weight:400; line-height:130%;}
#comic h3:last-of-type{margin:1em auto 1.5em;}
#comic .ph_cut_l{width:450px; height:638px;}
#comic .comiccover span {width:100%; height:100%; background-image:url(../img/comic.jpg);}
#comic .cap{padding:0 0 .8em !important; line-height:1; margin:0 auto; text-align:center; font-size:80%;}
#comic h3 + p {padding:0 !important; text-align:center; line-height:140%; font-size:140%;}
#comic .comment h4{padding:.5em 0 .3em; font-size:140%; font-weight:600;}

/*story*/
#story h2{font-size:250%; text-align:center; width:600px; margin:0 auto; position: relative; line-height: 1.4;}
#story #trailer {width:736px; height:414px; height:491px; background-size:cover; background-position: center top; background-repeat: no-repeat; margin:.5em auto 1em; border-radius:14px; overflow: hidden; z-index: 1;}
#story #trailer iframe {width:100%; height:414px;}
#story ul#movlist {margin:1em auto; text-align:center;}
#story ul#movlist li {width:340px; margin:0 5px 10px; display: inline-block; font-size:110%; line-height:135%; position:relative;}
#story ul#movlist li a {width:100%; display:block; padding:.8em 0; color:#ca0915; font-weight:bold; z-index:1; position:relative; border:2px solid #ca0915; transition: 0.5s;}
#story ul#movlist li a:hover{box-shadow:5px 5px #ca0915;}
#story #contents .inner p{line-height:180%;}
#story #contents .inner p a{ color:#e95589;}

/*caststaff*/
#caststaff h1#ttl span.spv{font-size:160%; padding:0 0 .2em; display:inline-block;}
#caststaff h2{color:#000; margin:0 auto .5em; text-align:center; letter-spacing:.05em; font-size:400%; position:relative; display:inline-block; position: relative; padding: 0 70px;}
#caststaff h2.staff{margin:1.5em auto .5em;}
#caststaff h2:before, #caststaff h2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color:#000;
}
#caststaff h2:before {
  left:0;
}
#caststaff h2:after {
  right: 0;
}
#caststaff h3{width:75%; margin:1.5em auto .6em; font-size:105%; font-weight:600; background-color:rgba(255,255,102,0.35); position: relative; border-radius: 10px 50px/50px 10px; line-height:170%;}
#caststaff #spvlist h2{margin:2em auto 0; letter-spacing:0;}
#caststaff #spvlist h2:first-of-type{margin:0 auto;}
#caststaff h3:first-of-type{margin:0 auto .6em;}
#caststaff .credit{text-align:center; width:60%; margin:0 auto 2em; font-size:140%; line-height:1.7;}
#caststaff .credit span.f80{font-size:80% !important;}
#caststaff .credit span.f80_2{font-size:85%; line-height:130%; display:block;}
#caststaff .credit span.f80_3{font-size:80%; line-height:130%; display:block;}
#caststaff #spvlist.credit p{line-height:120%;}
#caststaff table{width:80%; margin:0 auto; font-size:160%;}
#caststaff table td{text-align:center; padding:3% 0; line-height:1;}
#caststaff table td.cname{text-align:left;width:46.5%; vertical-align:bottom;}
#caststaff table td.chara{text-align:right;width:46.5%; vertical-align:bottom; color:#ef835c;}
#caststaff table td.naka{padding:0 0 0; font-size:80%; vertical-align:middle; line-height:0; color:#aaa;}
#caststaff table td.maru{font-size:90%; color:#999; padding:2% 0;}

/*btn*/
a.btn_df,#highlight label {width:40%; display:block; text-align:center; font-weight:600; font-size:140%; transition: 0.5s; position: relative; padding:1.4em 0; margin:1.5em auto; background: none;}
a.btn_df span,#highlight label span{position: relative;  z-index:2;}
a.btn_df:before,
#highlight label:before {border:2px solid #000; border-radius:50px;
  position: absolute;
  content: "";
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  z-index: 1;
}
a.btn_df:after,#highlight label:after{
background-color:rgba(255,255,102,0.5); border-radius:50px;
  content: '';
  position: absolute;
  top:8px;
  left:8px;
  width:100%;
  height:100%;
  z-index: -1:
  -webkit-transform: rotate(-1deg);
  -moz-transform: rotate(0deg);
}

a.btn_df2{font-size:140%; color:#ca0915; display:block; font-weight:bold; text-align:center; width:44.5%; margin:1em auto 1.5em;  letter-spacing:.05em; text-decoration: none; padding:1em 0; border:1px solid #ca0915; transition:.5s;}
a.btn_df2:hover{box-shadow:5px 5px #ca0915;}
a.btn_s {background:#81cac4; padding:.5em; color:#fff; display:block; font-weight:bold; margin:.5em auto; border-radius:30px; text-align:center; width:30%; letter-spacing:.2em; font-size:120%;} 

/*share*/
#share{width:50%; text-align:center; margin:2% auto; vertical-align:middle;}
#share span{position: relative;}
#share span:before{
content: "";
width:35%;
height:1px;
background-color:#172c66;
position: absolute;
left:-45%;
top:50%;
z-index:1;
}
#top #share{margin:3.5em auto 0; width:100%; padding:0 0 1em;}
#top #share h4{font-size:120%; padding:2.6em 0 .8em; position: relative;}
#top #share h4:before{
content: "";
width:1px;
height:48%;
background-color:#172c66;
position: absolute;
left: 50%;
top:0;
z-index:1;
}
#share ul{display: inline-block; margin:0 0 0 .5em; vertical-align:middle;}
#share ul li{display:inline-block; border-radius:50%; margin:0 .4em 0;}
#share ul li img{width:50px;}
#share ul li a{display:block;}
#share ul li a img{transition: .5s;}
#share ul li a:hover img{transform: scale(1.2);}

/*//////pc//////*/
@media all and (min-width: 768px) {
.nobr{display: none;	}
#menu li.menu5{width:185px;}
#update ul#topicslist{justify-content: start; align-items: start;}
#update ul#topicslist li:nth-child(2n){margin:0 0 2em 2.5em;}
ul.bnr li:nth-child(2n){margin:0 0 2em 2.5em;}
/*#update ul#topicslist li:last-child{margin:0 0 2em 2.5em;}*/
#topics{width:1000px; margin:0 auto;}
}

/*//////smp//////*/
@media all and (max-width: 767px) {
body,p { font-size: 1.4rem;}
h1 { font-size: 2.6rem;}
h2 { font-size: 2rem; line-height:1.5em;}
h3 { font-size: 1.6rem; }
h4 { font-size: 1.4rem; }
.f90 { font-size: 1.2rem;}
.hidtxt{visibility:visible;}
.hid_sp{display:none;}
.pcbr{display: none;	}
.ph_cut img,.ph_cut_l img,#top h1 .main1 img,#spot #trailer img,#update ul#topicslist li span.thum img,#newep figure#mainph span img,header#dir #logo a img {position:absolute;left:0;top:0; width:100%; height:100%;}

#top #container{
background-position:-12% 60%,right 36%;
background-size:50%,50%;
}

header{margin:0; padding:4% 0 0;}
#top h1{width:100%; height:auto; /*padding:59.5% 0 0;*/ padding:70% 0 0;}
#top h1 .main1{width:100%; height:0; /*padding:59.5% 0 0;*/padding:70% 0 0; background-size:cover; background-position: right 30% bottom;}
#top h1 .main2{width:24.5%;width:29%; /*top:-.5%; left:40%;*/top:0; left:37.5%; z-index:11;}
#top h1 .main3{width:70%; left:0; right:0; margin:auto; bottom:-2%; z-index:11;}

#countdown{width:100%; margin:4.5% auto 0; padding:0;}
#countdown .byoa{width:31.5%; font-size:4.2vw; padding:1% 1.5% 2% .5%; letter-spacing:-.05em;}
.timer{text-align:left;}
.timertext{font-weight:bold; font-size:3.8vw;}
.timertext span.number{font-size:11.5vw;}
.timer span.nowoa{font-size:11vw;}

#bn_fq{width:98%; margin:5% auto;}
.fq_btn,.fq_rs{width:45%; margin:0 3% 0 1.5%;}
.fq_btn a,.fq_rs a{background:#01c4ee url(../img/top/fq_btn_sp.png) no-repeat center top; background-size:93%; box-shadow:4px 4px rgba(4,172,218,0.7); transition:.5s; border:3px solid #fff;}
.fq_rs a{background: url(../img/top/fq_rs_sp.png) no-repeat center center; background-size:cover; box-shadow:4px 4px rgba(223,51,111,0.7);}
.fq_btn a,.fq_rs a{width:100%; margin:0; height:0; padding:60% 0 0; border:2px solid #fff; border-radius:18px; border-radius:20px;}
#bn_fq a:hover{transform: translate(4px,4px); box-shadow:none;}

#menu{padding:.2em 0;}
#menu:before{background-size:auto 6px; height:6px; top:-2px;}
#menu:after{background-size:190%; height:6%;}
#menu ul {width:100%;}
#menu li {height:0;
width: -webkit-calc(100% / 3) ;
width: calc(100% / 3);
padding:18% 0 0;
}
#menu li a{position:absolute; top:0; left:0; background-size:68%;}
#menu li span.eng{font-size:8vw;}
#menu li span.ttlruby{font-size:3.4vw;}
#menu li.menu5 span.ttlruby{letter-spacing:-.2em;}

#next h2,#newep h2,#update h2,#tbstopics h2,#igTL h3,#twTL h3,#rect h3{font-size:12vw;}

#next{margin:3.5% auto 0; padding:0 0 8%;
/*background-size:85% 60%;
background-position:right bottom 45%;*/
background-size:85% 50%;
background-position:right bottom 50%;
}
#next h2{padding:2% 0 1.5% 3.5%;}
#next .inner{width:100%; padding:0; background-size:60%; background-position: left 5% top 0;}
#next #trailer,#spmov {width:96%; height:auto; margin:.2em auto 0; box-shadow:none; border-radius:12px;}
#next #trailer div,#spmov div {width:100%; position:relative; padding:56.25% 0 0; height:0; border-radius:12px; overflow: hidden !important; z-index:1;}
#trailer iframe,.emb iframe,#spmov iframe{ position:absolute; top: 0; left:0; width:100% !important; height: 100% !important;}
#spmov{width:96%; margin:1.5% auto 20%; box-shadow:none;}

#newep{width:100%; margin:7% auto 0; padding:0 0 3.5%;}
#newep:before,#newep:after {
width:12%;
height:12%;
}
#newep:before {left: 2%;}
#newep:after {right: 2%;}
#newep figure#mainph{width:80%; margin:1em auto 0; display:block; height:auto; padding:2%;}
#newep figure#mainph span{padding:60% 0 0; height:auto;}
#newep figure#mainph:before, #newep figure#mainph:after {
  width:22%;
  height:1px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#newep figure#mainph:before {
  top:10%;
  left:-5%;
}
#newep figure#mainph:after {
  bottom:10%;
  right:-5%;
}
#newep #storyline{width:92%; margin:3.5% auto 0; display:block;}
#newep h2{top:-3.5%; left:0; right:5.5%; z-index:1; font-size:16vw; text-align:right;}
#newep h3.epnm{font-size:5vw; padding:0 .2em 0;}
#newep .marker{width:60%;}
#newep .marker a,#storyline_sp label{font-size:4.6vw; padding:8% 0; margin:5% auto 0;}
#newep p.text {line-height:160%; font-size:90%; margin:0 auto; padding:.5em 0 0;}
#storyline_sp a{font-size:110%; margin:2% auto 0; width:45%; display:block; border:2px dotted; border-radius:50px; text-align:center; padding:3% 0;}
.tmer{position:absolute; left:-1%; bottom:-1%; width:80%;}

#tbstopics{padding:0 0 8%;
background-size:80% 100%;}
#tbstopics h2{padding:2% 0 2.5% 3.5%;}
#topics {padding:0;}
#topics .tolist{text-align:right; position: absolute; top:15%; right:1%; }
#topics .tolist a:before{
width:50%;
height:1px;
left: -65%;
top: 50%;
}
#topics .tolist a{right:2%; top:-9%; font-size:90%;}
.paint3{position:absolute; left:-10%; top:-5.5%; width:50%;}
.ojm{position:absolute; left:0; bottom:-4%; width:50%;}

#whatsnew{margin:10% auto 4%;}
#whatsnew:before{
background-size:368%;
  width:calc(50% - 7vw);
  height:5px;
  top:11%;
}
#update{padding:0 0 5%; width:100%;}
#update h2{padding:2.5% 3% 2.5% 0;}
#update ul#topicslist{/*height:auto;*/
overflow-y:scroll;
height:460px; padding:1% 0 2% 0;
overflow-scrolling: touch;
-webkit-overflow-scrolling: touch;
height:43vh;}
#update ul#topicslist li p{line-height:130% !important; font-size:90%;}
#update ul#topicslist li{width:88%; height:auto; margin:0 0 3%;}
#update ul#topicslist li a span.thum{width:35%; height:auto; margin:0 2% 0 0; position:relative; padding:23.3% 0 0;} 
#update ul#topicslist li span.ymd{font-size:100%;}

.bnarea{padding:0 0 5%; 
background-size:100% 90%;
}
ul.bnr{width:100%; align-items: center;}
ul.bnr li{width:80%; height:auto; margin:2% auto;}
ul.bnr li.bn_stmp,ul.bnr li.bn_porg{width:86%; height:auto; margin:0 auto 5%;}
ul.bnr li a{height:0; padding:27.9569892473% 0 0;}
ul.bnr li.bn_stmp a,ul.bnr li.bn_porg a{height:0; padding:39.1304347826% 0 0;}
ul.bnr li.bn_comic img{right:8%; top:-3%;}

ul.streambnr{width:65%; align-items: center;}
ul.streambnr li{width:100%; height:auto; margin:5% 0 0;}
ul.streambnr li.tbsfree{margin:5% 0 0;}
ul.streambnr li a{height:0; padding:32% 0 0;}
ul.streambnr li a span.stream{line-height:140%; font-size:3vw; padding:2% 0;}
ul.streambnr li.paravi a{ background-size:52%; background-position:center 23%;}
ul.streambnr li.tbsfree a{background-size:52%; background-position:center 30%;}
ul.streambnr li.tver a{background-size:26%; background-position:center 26%;}
.endtxt{font-size:4vw !important;}

#snsarea{padding:4% 0 0;
background:none;}
#snsarea .inner{width:100%; margin:10% auto 0;}
#igTL,#twTL{margin:0 auto 10%; width:90%; height: calc(320px + 2%); padding:2% 0 2%;}
#igTL{height:auto; margin:0 auto 15%;}
#twTL .tw-inner{margin:0 auto; padding:5% 0 0;}
#igTL .tline,#twTL .tline{margin:0 auto; padding:5% 0 0;}
#twTL .tline{
height:280px;
/*overflow-y: scroll;*/
overflow-scrolling: touch;
-webkit-overflow-scrolling: touch;}
/*#twTL .tline iframe.twitter-timeline {
width :100% !important;
height: 280px !important;
}*/
#igTL .outgo,#twTL .outgo{position:absolute; left:2%; bottom:-4%;}
#twTL .outgo{left:2%; bottom:-5%;}

#rect {margin:0 auto 5%; z-index:10;}
#rect h3{margin:0; padding:0 0 3%; background-size:45%;}

#snsarea #sns{margin:3% auto 0;}
#next #sns{width:70%; background-size:100%; padding:12% 0 0; margin:0 auto;}
#next #sns:before{height:26%;}
#next #sns a{width:68px; height:68px; margin:0 1% 0;}
#snsarea #sns a{width:65px; height:65px; margin:2% 1.5% 0;}

@media all and (max-width: 320px) {
#next #sns{width:80%; background-size:100%;}
#next #sns a{width:65px; height:65px; margin:0 1% 0;}
}

#top footer{padding:5% 0 15%; background-color:rgba(249,205,171,0.3);}
#top footer p.copy {width:100%; padding:0 5%;}

footer.dir2{padding:4% 0 15%;}
footer.dir2 .inner{width:100%; height:auto; text-align:center; /*padding:5% 0 0;*/}
footer p.copy{text-align:center; padding:2% 5%; line-height:130%;}
footer.dir2 .share{position:static; padding:5% 0;}
#rect2{position:static; margin:0 auto;}
#gotop {bottom: 0; right:0; z-index:11;}
#gotop a {width:60px; height:60px;}

/*------------------　2nd　------------------ */
header#dir{padding:1.5% 0 0; margin:0 auto;}
header#dir #logo{width:95%; height:auto; padding:32% 0 0; position: relative;}
header#dir #logo a {width:100%; height:100%; background-size:cover; position: absolute; left:0; top:0;}

h1#ttl{font-size:12vw; background-size:55%; padding:0 0 .3em;}
.wrap{position: relative; padding:7% 0 0;}

#contents{width:96%; margin:3.5% auto; padding:6% 0; box-sizing: border-box; box-shadow:none;}
#contents .inner{width:98%;}
#contents .inner p {padding:.5em 0 1em; line-height:160%;}
#contents .inner p.f85,#contents .inner p.f80 {line-height:normal !important;}
.ph_cut {width:95%; height:0; padding:63% 0 0; position: relative; margin:1em auto;}
.ph_cut_l {width:60%; height:0; padding:90% 0 0; position: relative; margin:1em auto .5em;}
#bknm{width:100%; margin:2em auto 1em;}
.bdr{width:92%; padding:.4em 0;}

/*about*/
#highlight h2{font-size:4.7vw; padding:0 1% 0;}
#about #contents p,#story #contents p,#music #contents p {padding:1em 1em .5em;}
#highlight h3{font-size:4.5vw; padding:0; margin:1em auto 0;}
#highlight .heart{width:5.5%;}
#highlight .ph1{width:90%; height:0; padding:63.4921875% 0 0;}
#highlight .ph1 span,#comic .comiccover span{position: absolute; top:0; left:0;}
#highlight .ph1:before,#comic .comiccover:before {
  bottom: -12px;
  right: -14px;
}
#highlight .comment,#comic .comment{width:94%; margin:.8em auto 1em; padding:2.5%;}
#highlight .comment h4{font-size:4.5vw; padding:.2em 0 0 .3em; margin:0 0 .6em;}
#highlight .comment p,#comic .comment p{padding:0 .5em !important; font-size:95%;}

.bdr3{width:92%;}
.bdr3:last-child{padding:0 !important;}

/*comic*/
#comic h2{font-size:4.4vw;}
#comic h3{font-size:4vw;}
#comic h3:first-of-type{font-size:4.4vw;}
#comic .ph_cut_l{width:70% !important; height:0; padding:99.3125% 0 0 !important;}
#comic .cap{padding:.8em 0 .8em !important; font-size:75%;}
#comic h3 + p{font-size:3.5vw;}
#comic .comment h4{font-size:4.3vw; padding:.5em 0 .6em;}

/*story*/
#story h2{font-size:5.4vw; width:100%;}
#story h2 span.num,#gallery h2 span.num{font-size:180%;}
#story ul#movlist {width:100%; padding:0; margin:1em auto 0;}
#story ul#movlist li{width:44.5%; margin:0 1.2% 1.5% .5%; font-size:3.3vw;}
#story ul#movlist li span.f90{font-size:2.3vw;}
#story ul#movlist li a{padding:5% 0;}
#story #trailer,#info .emb,#movie .emb {width:92%; position: relative; /*padding:51.75% 0 0;*/ padding:61.3% 0 0; height: 0; overflow: hidden; height:auto; margin:0 auto .5em;}
#story #trailer iframe,#topics .emb iframe,#movie .emb iframe,#story #trailer img{ position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important;}

/*caststaff*/
#caststaff h2{font-size:9vw; margin:0 auto 2%;}
#caststaff .castlist{width:95%; padding:180% 0 0 !important;}
#caststaff h2.staff{margin:8% auto 2%;}
#caststaff h3{margin:5% auto .5em; font-size:4.3vw;}
#caststaff #spvlist h2{margin:5% auto 1%;}
#caststaff #spvlist h2:first-of-type{margin:0 auto 1%;}
#caststaff table{width:100%; margin:0 auto 1em;}
#caststaff table td{padding:4% 0;}
#caststaff table td.cname{font-size:4.4vw; width:46%;}
#caststaff table td.chara{font-size:4.4vw; width:46%;}
#caststaff table td.naka{font-size:3.5vw; vertical-align:middle;}
#caststaff .credit{width:95%; font-size:4.2vw; margin:0 auto 2%;}
#caststaff table td.cname span.f90{font-size:3vw;}
#caststaff table td.maru{font-size:75%; padding:2% 0 !important; line-height:100% !important;}
#caststaff .credit span.f80_2{font-size:90%;}

a.btn_ap {margin:.5em auto 1.5em; width:62%; font-size:1.5rem; font-size:4vw;}
a.btn_s{width:50%;}
a.btn_i {margin:.5em 0 .2em; padding:.5em 2em;}
a.btn_df,#highlight label,a.btn_df2{width:70%; margin:1.2em auto 1.5em; padding:5.5% 0; font-size:4.5vw; letter-spacing:.05em;}
a.btn_df2{width:70%; padding:4% 0; margin:1.5em auto 1em; font-size:4.3vw;}
a.btn_df:after,#highlight label:after{
  top:6px;
  left:6px;
}

#msg #contents h1.entry span.ttl img{top:-1.2%;}
#msg .postbtn{margin:12% auto 5%;}

/*share*/
#share{width:100%; margin:2% auto 5%;}
#top #share{margin:8% auto 0;}
#share span:before{
content: "";
width:40%;
left: -50%;
}
#share ul li{margin:0 .2em 0;}
#share ul li img{width:40px;}
}

@media all and (max-width: 320px) {
a.btn_ap {width:70%;}
}
.md-inner {box-shadow:none !important;}
.md-caption {color:#222 !important;}

.fadedown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadedown;
 -ms-animation-name: fadedown;
 animation-name: fadedown;
 visibility: visible !important;
}
@-webkit-keyframes fadedown {
 0% { opacity: 0; -webkit-transform: translateY(10px);}
 100% { opacity: 1; -webkit-transform: translateY(0);}
}
@keyframes fadedown {
 0% { opacity: 0; -webkit-transform: translateY(10px); -ms-transform: translateY(10px); transform: translateY(10px);}
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0);}
}

/*	instagram
============================== */
#igTL div.insta{padding:1.5em 1.5% 2%;}
div.insta ul{margin:.6em auto 0; display: flex; flex-flow: row wrap; justify-content: center; align-items: center;}
div.insta ul li {
margin:1.5%;
width: -webkit-calc(100% / 3 - 3%) ;
width: calc(100% / 3 - 3%);
}
div.insta ul li span, div.insta ul li a, div.insta ul li a img {
	display:block;
}
div.insta ul li a, div.insta ul li a img {
	background-position:center center;
	background-repeat:no-repeat;
}
div.insta ul li a {
	background-size:cover;
	position:relative;
	height:0;
	padding-top:100%;
}
div.insta ul li a:hover img {
	background-color:rgba(244,195,171,0.4);
}
div.insta ul li a img {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	border:0;
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	transition:.5s;
}
div.insta ul li a img.icon-video {
	background-image:url(/um/img/play.png);
}

@media all and (max-width: 767px) {
#igTL div.insta{padding:5% 1.5% 1.5%;}
div.insta ul{margin:3% auto 0;}
}




.swiper-wrap{position:relative;
width:980px;
  margin:5em auto 0;
}
.swiper {
  max-width:800px;
}
.bg-slide-image {
  width:100%;
  height:500px;
  background-size: cover;
  background-position:  center center;
  background-repeat: no-repeat;
}
.swiper-button-prev,
.swiper-button-next {
background: none;
 position: absolute;
 top: 50%;
 width: calc(var(--swiper-navigation-size) / 44 * 27);
 height: var(--swiper-navigation-size);
 margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
 z-index: 10;
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 color: var(--swiper-navigation-color, var(--swiper-theme-color));
	width:40px;
	height:65px;
 background-size: 40px 65px; /* 背景画像としてのサイズ（＝表示したい画像サイズ） */
 margin-top: -24px; /* 縦中央配置用：ボタンの高さの半分のネガティブマージン（top:50%がすでに設定されている） */
}
.swiper-button-next {
 background-image: url(../img/top/slider_arrow_r.svg);
  background-position:  right center;
  background-repeat: no-repeat;
}
.swiper-button-prev {
 background-image: url(../img/top/slider_arrow_l.svg);
  background-position:  left center;
  background-repeat: no-repeat;
}

.swiper-button-next::after, .swiper-button-prev::after {
  content: none !important;
}

@media all and (min-width: 768px) {
.swiper,.bg-slide-image {border-radius:14px;}
}

@media all and (max-width: 767px) {
.swiper-wrap{position:relative;
width:100%;
  margin:5% auto 0;
}
.swiper {
  max-width:100%;
}
.bg-slide-image {
  width:100%;
  height:0;
  padding:66% 0 0;
}
.swiper-button-prev,
.swiper-button-next {width:8%;  /*background-color:rgba(255,255,255,0.5);*/
	height:0; padding:10% 0 0;
 background-size:contain;
}
}
