@import url("https://use.typekit.net/fre3sxe.css");
@import url("https://use.typekit.net/cfa4xlp.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;}
.storg{color:#efb689;}
.stblu{color:#002f67;}
.stblu2{color:#8bd2f8;}
.stpu{color:#9f71ac;}
.stpu2{color:#7d4189;}
.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;}

.iroha {
font-family: iroha-25icho-stdn, sans-serif;
font-weight: 400;
font-style: normal;
}
.chiaro {
font-family: fot-chiaro-std, sans-serif;
font-weight: 700;
font-style: normal;
}
.farm {
font-family: farmhand, serif;
font-weight: 400;
font-style: normal;
}
.nueva {
font-family: nueva-std, serif;
font-weight: 400;
font-style: italic;
}


/*/////////////////////////////////////////////////////////////////////////
コンテンツ用CSS／オリジナル設定
/////////////////////////////////////////////////////////////////////////*/
html, body, div#con-body {background-color:#f0ebd8; color:#3e2a65;
background-image: linear-gradient(-200deg, #c7a6b2 0%,#fad1b3 25%,#c3d0d3 45%,#fad1b3 85%,#c7a6b2 98%);
animation: gradient 5s ease infinite;}
#con-body {background-color:transparent;}
.inner{width:1080px; margin:0 auto;}
@keyframes gradient {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
#container{position:relative;}
header{margin:0 auto; position:relative;
background-image:url(../img/dot.svg),url(../img/dot.svg),url(../img/cloud2.png),url(../img/cloud1.png);
background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
background-position:calc(50% - 500px) 90%,calc(50% + 500px) 95%,calc(50% - 500px) 70%,calc(50% + 300px) 15%;
background-size:300px,200px,600px,1000px;
overflow:hidden;
}
header:before{
  content: '';
  position: absolute;
  bottom:5%;
  left:0;
  width:120%;
  height:25%;
background-image:linear-gradient(120deg, rgba(249,247,223,0.5) 0%, rgba(251,222,230,0.5) 100%); 
background-repeat:no-repeat;
background-size:100% 100%;
background-position:center bottom;
display:block;
  -webkit-transform: rotate(-1deg);
  transform: rotate(-1deg);
}
#top main{width:100%;}
#top h1{width:1080px; height:763px; position:relative; margin:0 auto;}
#top h1 .main1{background: url(../img/top/main2.jpg) no-repeat center top; background-size:cover; width:1080px; height:763px; margin:0 auto; position:absolute; top:0; left:0;
  animation: fadein 1.5s cubic-bezier(.4, 0, .2, 1) normal,blur 2s; overflow:hidden;
}
#top h1 .main1-2 {
background: url(../img/top/main.jpg) no-repeat center top; background-size:cover; width:1080px; height:763px;
opacity:0;
margin:0 auto; position:absolute; top:0; left:0;
animation  : mainswitching 20s ease 10s infinite;
}
#top h1 .main2{position:absolute; top:10px; left:200px; width:660px; opacity: 0;
  animation: fadein 2s ease-in 1s 1 forwards,blur 1.5s;}
#top h1 .main3{position:absolute; right:12px; bottom:-25px; width:480px; opacity: 0;
  animation: fadein 2.5s ease 1.5s 1 forwards,blur 1.5s;}
@keyframes mainswitching {
    0% { opacity: 0; }
    5% { opacity: 1; }
    25% { opacity: 1; }
    30% { opacity: 0; }
    100% { opacity: 0; }
}
@keyframes fadein {
    0% {opacity:0;}
    100% {opacity:1;}
}
@-webkit-keyframes fadein {
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blur {
  0% {filter: blur(20px);}
  100% {filter: blur(0);}
}

/*menu*/
#menu {margin:1.8em auto 0; position: relative; padding:0 0 .8em;}
#menu:after{background: url(../img/dotline.png) repeat-x center bottom; background-size:contain;
  content: '';
  position: absolute;
  bottom:0;
  left:0;
  width:100%;
  height:6px;
  z-index:1;
}
#menu ul {width:1000px; margin:0 auto; display: flex; flex-flow: row wrap; justify-content: center; }
#menu li {text-align:center; width:155px; height:120px; vertical-align: middle; position: relative; margin:0 .3em 0;}
#menu li a {width:100%; height:100%; display: block; text-decoration:none; vertical-align: middle; color:#3e2a65;
z-index:5; box-sizing: border-box;
display: flex;  justify-content: center; align-items: center;
background: url(../img/menu1.svg) no-repeat center center; background-size:100%;}
#menu li a:before{
background: url(../img/tomato.png) no-repeat 0 0; background-size:contain;
  content: '';
  position: absolute;
  top:5%;
  right:18%;
  width:30px;
  height:40px;
  z-index:1;
}
#menu li p{line-height:140%;}
#menu li span.eng{position:absolute;
font-size:125%; color:#fff;
font-family: nueva-std, serif;
font-weight: 400;
font-style: italic;
line-height:90%;
-webkit-transform: rotate(-5deg);
transform: rotate(-5deg);
display:inline-block;
padding:0 .1em;
}
#menu li.menu1 span.eng{background-color:#ea6e6c; top:20%;left:12%;}
#menu li span.f75{font-size:75%;}
#menu li span.mname{display:inline-block; padding:.2em 0 0; font-size:140%;
font-family: fot-chiaro-std, sans-serif;
font-weight: 700;
font-style: normal;}
#menu li span.mname:first-letter{color:#ea6e6c; font-size:130%;}

#menu li.menu2 a{background-image:url(../img/menu2.svg);}
#menu li.menu2 a:before{background-image:url(../img/broccoli.png); top:0; left:28%; width:42px; height:36px;}
#menu li.menu2 span.mname{margin:0 0 .5em 0;}
#menu li.menu2 span.mname:first-letter{color:#9ec45d;}
#menu li.menu2 span.eng{background-color:#9ec45d; bottom:25%;right:18%;}

#menu li.menu3 a{background-image:url(../img/menu3.svg);}
#menu li.menu3 a:before{background-image:url(../img/onigiri.png); top:1%; right:16%; width:50px; height:40px;}
#menu li.menu3 span.mname{margin:.2em 0 0 0;}
#menu li.menu3 span.mname:first-letter{color:#49b2bf;}
#menu li.menu3 span.eng{background-color:#49b2bf; top:21.5%;left:12%;}

#menu li.menu4 a{background-image:url(../img/menu4.svg);}
#menu li.menu4 a:before{background-image:url(../img/egg.png); top:-4%; left:27%; width:56px; height:38px;}
#menu li.menu4 span.mname{margin:0 0 .5em 0; letter-spacing:.1em;}
#menu li.menu4 span.mname:first-letter{color:#e1b83e;}
#menu li.menu4 span.eng{background-color:#e1b83e; bottom:25%;right:18%;}

#menu li.menu5 a{background-image:url(../img/menu5.svg);}
#menu li.menu5 a:before{background-image:url(../img/sausage.png); top:4%; right:10%; width:32px; height:40px;}
#menu li.menu5 span.mname{margin:.3em .9em 0 0; letter-spacing:-.15em;}
#menu li.menu5 span.mname:first-letter{color:#df90dc;}
#menu li.menu5 span.fsl{font-size:130%; color:#df90dc; margin:0 0 0 1em;}
#menu li.menu5 span.eng{background-color:#df90dc; top:12%;left:10%;}

#menu li.menu6 a{background-image:url(../img/menu6.svg);}
#menu li.menu6 a:before{background-image:url(../img/shrimp.png); top:3%; left:28%; width:65px; height:35px;}
#menu li.menu6 span.mname{margin:-.25em 0 0 0;}
#menu li.menu6 span.mname:first-letter{color:#327bbe;}
#menu li.menu6 span.eng{background-color:#327bbe; bottom:22%;right:18%;}


#next h2,#update h2,#tbstopics h2{font-size:400%; letter-spacing:.05em;}
#next h2 img,#update h2 img,#tbstopics h2 img{height:65px;}
/*#next h2 span.grd,#update h2 span.grd,#tbstopics h2 span.grd{display:inline-block;
background: linear-gradient(120deg, #885fa2 0%, #d39bc2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #885fa2;
}*/
.oainfo{color:#fff; text-align:center; font-size:125%; line-height:140%; padding:.5em 0 0; background:none;}

#next{margin:.8em auto; background: url(../img/top/bokeh.jpg) no-repeat center top; background-size:100%; padding:0 0 5em;}
#next .inner{padding:1.8em 0 0;}
#next #trailer {position: relative; width:640px; height:360px; background-size:cover; background-position: center center; background-repeat: no-repeat; margin:0; box-shadow:20px 20px 20px rgba(154,148,174,0.2); overflow: hidden; z-index:111; background-image:url(../story/img/ep10/ep10_2.jpg);}
#next #trailer iframe,#spmov iframe {width:100%; height:360px;}

#newep{width:48%; margin:3.5em 0 0; display:inline-block; vertical-align:top; padding:0 0 .5em; position:absolute; top:5%; right:0; z-index:1;}
#newep #storyline{width:100%; display:inline-block; padding:0 0 2em; background-image: linear-gradient(120deg, rgba(253,247,216,0.5) 0%, rgba(211,155,194,0.5) 100%);}
#newep h2{margin:-.4em 0 0 38%;}
#next .nextonair{font-size:180%; display:inline-block; color:#3e2a65; margin:0 0 .8em; padding:0 0 .3em; position: relative;}
#next .nextonair span.nextoad{font-size:160%; position: relative;}
#next .nextonair:before{
content: "";
background-image: linear-gradient(to right, rgba(253,247,216,0) 0%,rgba(253,247,216,0.5) 10%, rgba(211,155,194,0.5) 100%);
width:135%;
height:45%;
position: absolute;
left:-50%;
bottom:0;
}
#next .nextoad span.epnm{font-size:180%; margin:0 .25em 0 0;
background: linear-gradient(120deg, #885fa2 0%, #d39bc2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #885fa2;
  }
#next .nextoad span.f70{font-size:5rem;}  
#newep .oadate{font-size:100%; }
#newep p.text {padding:1em 0; line-height:160%; font-size:110%; word-break: break-all; width:71%; margin:.5em 0 0 22.5%;}
#newep .marker{width:43%; margin:0 0 0 34%; 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; position: relative; z-index:1; padding:.8em 0; background-color:rgba(255,255,255,0.7); color:#3e2a65; box-shadow:20px 20px 20px rgba(154,148,174,0.2);}
#newep .marker:before,#storyline_sp label:before{
content: "";
width:17%;
height:1px;
background-color:#975ea3;
position: absolute;
left:-7%;
top: 50%;
z-index:111;
}
.kira{position:absolute; right:2%; top:-5%; width:75px;}
.star{position:absolute; left:calc(50% - 600px); bottom:-5%; width:180px;}
.circles1{position:absolute; right:0; bottom:-20%; width:500px;}

/*topics*/
#tbstopics{padding:0; margin:3em auto 0;
background-image:linear-gradient(to top, rgba(255,255,255,0.4) 0%,rgba(255,255,255,0.4) 100%); 
background-repeat:no-repeat;
background-size:100% 35%;
background-position:center bottom;
}
#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:10%; right:4%;}
#topics .tolist a{position:relative; display:block; z-index:2; color:#fff; background-image: linear-gradient(120deg, #e98a98 0%, #b3b6eb 100%); padding:.3em .5em; transition: .5s;}
#topics .tolist a:hover{filter:alpha(opacity=70); -moz-opacity:0.70; opacity:0.70;}
.cloud3{position:absolute; right:0; bottom:-25%; width:600px;}

/*whatsnew*/
#whatsnew{margin:4em auto 2em;}
#update {width:1020px; position:relative; margin:0 auto; padding:1.8em 0 0;}
#update h2{margin:0 auto; z-index:1; padding:0 0 .3em; position: relative;}
#update ul#topicslist{display: flex; flex-flow: row wrap; justify-content: center; align-items: center;
height:auto; height:375px; overflow-y:scroll; padding:.5em 1.5em .5em 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(175,122,189,0.4); border-radius:20px;}

#update ul#topicslist li{width:47%; height:120px; position: relative; margin:2em 0 2em .5em; background-color:#f7eef7; overflow: hidden; z-index:1; box-shadow:18px 18px 20px rgba(154,148,174,0.2);}
#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:#3e2a65;}
#update ul#topicslist li a:hover{opacity: 0.5; transition: 0.4s;}
#update ul#topicslist li span.ymd{color:#af7abd; font-size:120%; display:inline-block; position:absolute; bottom:7%; right:3%; text-align:right; line-height:100%; padding:0 .2em 0;
font-family: nueva-std, serif;
font-weight: 400;
font-style: normal;}
#update ul#topicslist li:last-of-type 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 .thum0120{background-position: center center !important; background-size:65% !important; background-color:rgba(255,255,255,0.4);}

/*bnr*/
.bnarea{padding:4% 0 2%; 
background-image:url(../img/cloud2.png),linear-gradient(to top, rgba(255,255,255,0.35) 0%,rgba(255,255,255,0.35) 100%); 
background-repeat:no-repeat,no-repeat;
background-size:auto 100%,75% 100%;
background-position:calc(50% - 500px) 100%,right center;
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; background-color:rgba(255,255,255,0.75); box-shadow:10px 10px 20px rgba(154,148,174,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; }
ul.bnr li.bn_stmp,ul.bnr li.bn_porg{/*width:600px; height:235px;*/height:186px;}
ul.bnr li.bn_comic a {background-image:url(../img/top/bn_comic.png);}
ul.bnr li.bn_comic img{width:22%; position: absolute; left:7%; top:-5%;}
ul.bnr li.bn_shopping a {background-image:url(../img/top/bn_shopping.jpg?1);}
ul.bnr li.bn_dvd a {background-image:url(../img/top/bn_dvd.jpg);}
ul.bnr li.bn_paravi a {background-image:url(../img/top/bn_paravi.jpg);}
ul.bnr li.bn_stamp a {background-image:url(../img/top/bn_stamp.jpg?1);}

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(154,148,174,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:#7d4189 !important; 
font-weight:600;}

/*sns*/
#snsarea{padding:2% 0 0; margin:0 auto;
/*background-image:url(../img/cloud2.png),url(../img/ftbg.png); 
background-repeat:no-repeat,no-repeat;
background-size:800px,100% 25%;
background-position:right -20% top 20%,center bottom;*/
background: url(../img/cloud2.png) no-repeat calc(50% + 500px) 30%; background-size:800px;}
#snsarea .inner{width:1000px; margin:5em auto 0; display: flex; flex-flow: row wrap; position: relative; justify-content: center;}
#igTL h3,#twTL h3,#rect h3{font-size:330%; color:#3e2a65; letter-spacing:0.05em;}

#igTL,#twTL{width:500px; height:400px; margin:0 1.5em 0 0; position: relative; background: url(../img/bg.png); 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{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-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; 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{width:85px; height:85px; position: relative; display:inline-block; border-radius:50%; background-image: linear-gradient(120deg, #a6c0fe 0%, #f68084 100%);}
#snsarea #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:80px; height:80px; margin:5% 1.5% 0; box-shadow:10px 20px 20px rgba(151,122,141,0.3);}
#snsarea #sns a img{width:50%;}
#snsarea #sns a img.sns_l{width:56%;}

/*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%; color:#fff; text-shadow:2px 2px 6px #9d748c;}
footer p.copy a{color:#fff;}
#top footer p.copy {display:inline-block; width:720px; margin:0 auto; padding:40px 0 0;}
/*f2*/
footer.dir2{margin:4% 0 0; position:relative; padding:0 0 3em;}
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;}

#gotop {position: absolute; bottom:0; right:0; z-index:10; width:135px; text-align:right; padding:1em .8em;
font-family: farmhand, serif;
font-weight: 400;
font-style: normal;}
#gotop a {display:block; color:#fff; font-size:160%; letter-spacing:.05em; position: relative;}
#gotop a:before{
background:url(../img/pagetop.svg) no-repeat center center; background-size:100%;
  content: '';
  position: absolute;
  top:5%;
  left:0;
  width:18px;
  height:100%;
  z-index:1;
}

/*------------------　2nd　------------------ */
header#dir{padding:0; margin:0 auto 1em; position: relative;}
header#dir{
background-position:calc(50% - 500px) 80%,calc(50% + 500px) 85%,calc(50% - 500px) 50%,calc(50% + 300px) 15%;
background-size:220px,200px,500px,auto 100%;
}
header#dir:before{bottom:8%;}
header#dir #menu{margin:.8em auto 0;}
header#dir #logo{width:980px; margin:0 auto; padding:1.5em 0 0;
animation: fadein 1.5s ease 0s 1 normal,blur 1.5s;}
header#dir #logo a img{width:650px; display:block; margin:0 auto;}
h1#ttl{text-align:center; padding:0 0 .5em; margin:0 auto;}
h1#ttl img{max-height:75px;}
.wrap{position: relative; padding:2.5em 0 0;
background-image:url(../img/cloud1.png),url(../img/cloud2.png);
background-repeat:no-repeat,no-repeat;
background-position:calc(50% - 300px) 10%,calc(50% + 500px) 50%;
background-size:1000px,800px;
}

#contents{width:980px; background-color:rgba(255,255,255,0.7); padding:3.5em 0 2em; margin:0 auto 3em; position: relative; box-shadow:20px 20px 20px rgba(154,148,174,0.2);}
#contents .inner{width:90%;}
#contents .inner p {padding:1em 0 .5em; line-height:1.7;}

.ph_cut {width:700px; height:467px; 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 60%, rgba(255,255,255,0.6) 60%); 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; color:#7d4189;}
#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:565px; background:#eee;}
#highlight .ph1 span,#comic .comiccover span {width:100%; height:100%; background-image:url(../img/top/main.jpg); background-position: center bottom; position: absolute; z-index:auto; display:block;  background-size: cover;}

#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 dotted #7d4189; border-radius:14px;
background-image: linear-gradient(120deg, rgba(253,247,216,0.2) 0%, rgba(211,155,194,0.2) 100%);}
#highlight .comment h4{padding:.3em .3em .3em; font-size:120%; font-weight:600; line-height:140%; color:#7d4189;}
/*#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:200%; 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:170%; margin:2em auto; text-align:center;}
#comic .ph_cut_l{width:600px; height:660px; margin:1em auto .5em;}
ul.comiclist{margin:0 auto; display: flex; flex-flow: row wrap; justify-content: center;}
ul.comiclist li{width:23%; padding:32% 0 0; background-color:rgba(255,255,255,0.5); margin:0 .7% 1.4%; background-position: center center; background-repeat: no-repeat; background-size:cover;}
#comic .comiccover span {width:100%; height:100%; background-image:url(../img/original.jpg);}
#comic .cap{padding:0 0 .8em !important; line-height:1; margin:0 auto; text-align:center; font-size:80%;}
#comic .comment h4{padding:.5em 0 .3em; font-size:140%; font-weight:600; color:#7d4189;}
#comic .bdr{position: relative; width:600px; padding:0 1.5em .5em; margin:1.5em auto; border:1px solid #9f71ac; background-color:rgba(255,255,255,0.5); color:#7d4189; box-shadow:10px 10px rgba(211,155,194,0.2);}

/*story*/
#story h2{font-size:250%; text-align:center; width:600px; margin:0 auto; position: relative; line-height: 1.4;}
#story #contents h2 span.oad{
font-size:180%;
font-family: nueva-std, serif;
font-weight: 400;
font-style: normal;
letter-spacing:.03em;
color:#9f71ac;
}
#story #contents h3{font-size:140%; color:#7d4189; text-align:center; font-weight: 600; line-height:180%; padding:1em 0;}
#story #trailer {width:736px; height:414px; background-size:cover; background-position: center center; background-repeat: no-repeat; margin:.5em auto 1em; 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:#9f71ac;}


/*caststaff*/
#caststaff h1#ttl span.spv{font-size:160%; padding:0 0 .2em; display:inline-block;}
#caststaff h2{color:#002f67; margin:0 auto .5em; text-align:center; letter-spacing:.05em; font-size:400%; position:relative; display:inline-block; position: relative; padding: 0 70px;
font-family: nueva-std, serif;
font-weight: 400;
font-style: italic;
}
#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:#002f67;
}
#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; position: relative; line-height:170%; color:#7d4189;
background-image: linear-gradient(to right, rgba(253,247,216,0) 0%,rgba(253,247,216,0.5) 10%, rgba(211,155,194,0.5) 100%);}
#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:#9f71ac;}
#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;}
.group{font-size:85%; font-feature-settings: "palt";}

/*btn*/
a.btn_df,#highlight label {width:40%; display:block; text-align:center; font-weight:600; font-size:150%; transition: 0.5s; position: relative; padding:1.4em 0; margin:1.5em auto; background: none; background-color:rgba(255,255,255,0.75); color:#7d4189; box-shadow:20px 20px 20px rgba(154,148,174,0.2);
font-family: fot-chiaro-std, sans-serif;
font-weight: 700;
font-style: normal;}
a.btn_df span,#highlight label span{position: relative;  z-index:2;}
a.btn_df:before,#highlight label:before{
content: "";
width:14%;
height:1px;
background-color:#975ea3;
position: absolute;
left:-7%;
top: 50%;
z-index:11;
}

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:nth-child(odd){margin:1.5em .3em 0;}
#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:1040px; margin:0 auto;}
.circles2{position:absolute; left:0; top:-30%; width:500px;}
}

/*//////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 header{
background-position:calc(50% - 220px) 70%,calc(50% + 200px) 95%,calc(50% - 120px) 100%,calc(50% + 220px) 80%;
background-size:35%,28%,80%,100%;
}
header:before{height:40%;}
#top header:before{height:30%;}
#top h1{width:100%; height:auto; /*padding:59.5% 0 0;*/ padding:70.625% 0 0;}
#top h1 .main1,#top h1 .main1-2{width:100%; height:0; /*padding:59.5% 0 0;*/padding:70.625% 0 0; background-size:cover;}
#top h1 .main2{width:60%; top:1.5%; left:20%; z-index:11;}
#top h1 .main3{width:64%; right:1.5%; bottom:-6%; z-index:11;}

#menu{padding:0 0 1.5%;}
#menu:after{height:8px; background-size:200%;}
#menu ul {width:100%;}
#menu li {height:0; margin:0 .5% 0;
width: -webkit-calc(100% / 3 - 2%) ;
width: calc(100% / 3 - 2%);
padding:25% 0 0;
}
#menu li:nth-child(2){margin:3% .5% 0 .8%;}
#menu li:nth-child(5){margin:1% .5% 0 .8%;}
#menu li:nth-child(4),#menu li:nth-child(6){margin:-2% .5% 0;}
#menu li a{position:absolute; top:0; left:0;}
#menu li span.eng{font-size:4vw;}
#menu li span.mname{font-size:4.5vw;}
#menu li.menu5 span.mname{letter-spacing:-.2em;}
#menu li.menu1 a:before{top:5%; right:17%; width:26%; height:30%; }
#menu li.menu2 a:before{top:0; left:28%; width:28%; height:31%; }
#menu li.menu3 a:before{top:3%; right:16%; width:32%; height:32%;}
#menu li.menu4 a:before{top:0; left:26%; width:32%; height:30%;}
#menu li.menu5 a:before{top:6.5%; right:6%; width:25%; height:30%; }
#menu li.menu5 span.mname{margin:.3em 1em 0 0; line-height:100%;}
#menu li.menu6 a:before{top:3%; left:28%; width:41%; height:30%;}
#menu li.menu6 span.eng{bottom:24%;right:18%;}

#next h2,#newep h2,#update h2,#tbstopics h2,#igTL h3,#twTL h3,#rect h3{font-size:10vw;}
#next h2 img,#update h2 img,#tbstopics h2 img{max-height:11vw;}

#next{margin:3.5% auto 5%; padding:0 0 3%; background-size:cover; background-position: right bottom; background-size:100% 80%;}
#next .inner{width:100%; padding:0; background: url(../img/cloud1.png) no-repeat right top; background-size:80%;}
#next #trailer,#spmov {width:96%; height:auto; margin:.2em auto 0; box-shadow:none; }
#next #trailer div,#spmov div {width:100%; position:relative; padding:56.25% 0 0; height:0; 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:0 auto; padding:0 0 3.5%; position:static;}
#newep #storyline{width:96%; margin:0 auto 0; display:block; position: relative;}
#newep h2{margin:0 auto; text-align:center; padding:5% 0 0;}
#next .nextonair{font-size:5.5vw; margin:0 0 0; padding:0 0 .5% 3%;}
#next .nextonair:before{
width:90%;
height:45%;
left:0;
bottom:0;
}
#next .nextoad span.epnm{font-size:150%;}
#next .nextoad span.f70{font-size:8vw;}  
#newep .marker{width:50%; margin:0 auto;}
#newep .marker a{font-size:4.6vw; padding:8% 0; margin:5% auto 0;}
#newep p.text {line-height:160%; font-size:95%; padding:2% 0 2% !important; width:89%; margin:0 auto !important;}
.kira{position:absolute; right:5%; top:5%; width:12%;}
.star{position:absolute; left:2.5%; bottom:-2%; width:22%;}
.circles1{position:absolute; right:0; bottom:-15%; width:45%;}

#tbstopics{padding:0 0 2%;
background-size:100% 50%;}
#tbstopics h2{padding:2% 0 0 3.5%;}
#topics {padding:0;}
#topics .tolist{text-align:right; position: absolute; top:10%; right:0; font-size:3.5vw;}
.cloud3{position:absolute; right:0; bottom:-20%; width:70%;}

#whatsnew{margin:6% auto 4%;}
#update{padding:0 0 5%; width:100%;}
#update h2{padding:2% 0 0 3.5%;}
#update ul#topicslist{height:auto;
overflow-y:scroll;
height:460px; padding:1% 2% 2% 0;
overflow-scrolling: touch;
-webkit-overflow-scrolling: touch;
height:43vh;}
#update ul#topicslist li p{line-height:130% !important; font-size:3.4vw;}
#update ul#topicslist li{width:88%; height:auto; margin:0 0 4% 8%;}
#update ul#topicslist li:nth-child(even){ margin:0 2% 4% 0;}
#update ul#topicslist li a span.thum{width:35%; height:auto; margin:0 2% 0 0; position:relative; padding:24% 0 0;} 
#update ul#topicslist li span.ymd{font-size:4vw;}
.circles2{position:absolute; left:0; bottom:-12% !important; width:50%;}

.bnarea{padding:5% 0 3%;
background-position:left bottom,right top;
background-size:auto 50%,75% 58%;
}
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; margin:8% auto 0;}
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:1% 0 0; background-position:right bottom 10%; background-size:100%;}
#snsarea .inner{width:100%; margin:15% 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 3%; z-index:10;}
#rect h3{margin:0; padding:0 0 3%;}

#snsarea #sns{margin:3% auto 0;}
#snsarea #sns a{width:70px; height:70px; margin:2% 2% 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 20%;}
#top footer p.copy {width:100%; padding:0 5%;}

footer.dir2{padding:0 0 18%;}
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 {position:static; padding:0 1.4%; width:30%; margin:0 auto; font-size:4vw;}
#gotop a:before{width:15%; height:100%;}

/*------------------　2nd　------------------ */
header#dir{padding:1.5% 0 0; margin:0 auto;
background-position:left -15% top 45%,right -15% top 92%,left 100%,calc(50% + 150px) 0;
background-size:30%,28%,100%,100%;
}
header#dir #logo{width:85%; height:auto; padding:25% 0 0; position: relative;}
header#dir #logo a img{width:100%;}

h1#ttl img{max-height:12vw;}
.wrap{position: relative; padding:7% 0 0;
background-position:left 1%,right 100%;
background-size:100%,100%;}

#contents{width:96%; margin:2% auto 6%; padding:6% 0 5%; 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:100%; height:0; padding:66.6% 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.3vw; padding:0 2% 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.375% 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:5vw; margin:2% 0 4%;}
#comic h3{font-size:4.5vw; margin:8% auto}
#comic .ph_cut_l{width:90% !important; height:0; padding:99% 0 0 !important;}
#comic .cap{padding:0 0 .8em !important; font-size:80%;}
#comic .comment h4{font-size:4.3vw; padding:.5em 0 .6em;}
#comic .bdr{width:88%; padding:2% 4% 0; box-shadow:8px 8px rgba(211,155,194,0.2);}
ul.comiclist li{width: calc(100% / 3 - 5%); padding:41% 0 0; margin:0 1% 2%;}

/*story*/
#story h2{font-size:6vw; width:100%;}
#story #contents h3{font-size:4vw;}
#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; 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:49%;}
#caststaff table td.chara{font-size:4.4vw; width:44%;}
#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%;}
.group{font-size:70%;}

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) {
#caststaff table td.cname{width:50%;}
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;}
}
