@charset "utf-8";

@font-face {
    font-family: 'DisplayFreeTFB';
    src: url('../fonts/dftfb.eot?') format('oldIE'),
    url('../fonts/dftfb.woff') format('woff'),
    url('../fonts/dftfb.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

.font_tfb {
    font-family: "DisplayFreeTFB",sans-serif;
    font-style: normal;
    vertical-align: middle;
}

html {
	font-family: "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",Geneva,Arial,Verdana,sans-serif;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing: grayscale;
    font-size: 14px;
    line-height: 1.82em;
    color: #000000;
    background-color: #ffffff;
}
*{
	margin:0;
	padding:0;
}
a {
	text-decoration: none;
    color: #cd0c20;
}
a:hover {
	text-decoration: none;
}
a img{
	border: none;
}
.fcl { 
	zoom: 100%;
}
.fcl:after {
	content: " "; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}
img {
    width: 100%;
	vertical-align:middle;
	margin:0;
	padding:0;
}
html.webkit img[src$=svg] { transform: translate3d(0,0,0); }
ol,li { list-style: none; }

.onlyPc { display: block; }
img.onlyPc { display: inline-block; }
.onlySp,
img.onlySp { display: none; }

.js-string_anim {
    position: relative;
    display: block;
}

.css_imagehover {
    position: relative;
    display: block;
    line-height:0;
}
.css_imagehover img {
    will-change: opacity;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
}
.css_imagehover img:nth-of-type(2) {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

#header {
    min-width: 310px;
    width: 310px;
    background-color: #000000;
	z-index: 2;
}
#header h1 {
    line-height: 0;
    margin-bottom: 40px;
}
#header p {
    line-height: 0;
}

.nav_target .nav {
    padding: 0 9.67%;/*30/310*/
    line-height: 1em;
}
.nav_target .nav ul li {
    font-size: 1.14rem;/*16/14*/
    line-height: 1em;
    margin: 0 0 5.16%;/*16/310*/
    letter-spacing: 0.07em;
}
.nav_target .nav ul li:last-child { margin: 0; }
.nav_target .nav ul li a { color: #ffffff; }
.nav_target .other {
    letter-spacing: -1em;
    line-height: 0;
    padding: 15.16% 9.67%;/*47 30/310*/
}
.nav_target .other .sns {
    display: inline-block;
    vertical-align: middle;
    width: 48%;/*120/250*/
}
.nav_target .other .sns ul li {
    display: inline-block;
}
.nav_target .other .sns ul li.fb {
    width: 22.5%;/*27/120*/
    margin: 0 18.33% 0 0;/*22/120*/
}
.nav_target .other .sns ul li.tw { width: 28.33%;/*34/120*/ }
.nav_target .other .clock {
    display: inline-block;
    vertical-align: middle;
    width: 52%;/*130/250*/
}
.nav_target .other .clock ul {
    position: relative;
    padding: 35.38% 0 0;/*46/130*/
    background: url(../img/nav_clock.png) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;

    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-perspective: 1300px;
    perspective: 1300px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 10;
}
.nav_target .other .clock ul li {
    position: absolute;
    top: 15.21%;/*7/46*/
    left: 0;
    width: 16.5%;/*/130*/
    padding: 23.6% 0 0;/*/130*/
}
.nav_target .other .clock ul li div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    will-change: all;
}
.nav_target .other .clock ul li span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 50%;

    background-color: #262626;

    will-change: transform;

    -webkit-transition-property: transform;
    -moz-transition-property: transform;
    -ms-transition-property: transform;
    -o-transition-property: transform;
    transition-property: transform;

    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
}
.nav_target .other .clock ul li span:after {
    content: '';
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/clock_n0.png) no-repeat center top;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
}
.nav_target .other .clock ul li span:before {
    content: '';
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #000000;
}
.nav_target .other .clock ul li span.top {
    top: 0;
    -webkit-transform-origin: center bottom;
    -moz-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    -o-transform-origin: center bottom;
    transform-origin: center bottom;
}
.nav_target .other .clock ul li span.top:before { bottom: 0; }
.nav_target .other .clock ul li span.top:after { top: 0; background-position: center top; }
.nav_target .other .clock ul li span.bottom {
    bottom: 0;
    -webkit-transform-origin: center top;
    -moz-transform-origin: center top;
    -ms-transform-origin: center top;
    -o-transform-origin: center top;
    transform-origin: center top;
}
.nav_target .other .clock ul li span.bottom:before { top: 0; }
.nav_target .other .clock ul li span.bottom:after { bottom: 0; background-position: center bottom; }

.nav_target .other .clock ul li .front span.bottom {
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
    transform: rotateX(180deg);
}

.nav_target .other .clock ul li.isAnim .front span.top {
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
}
.nav_target .other .clock ul li.isAnim .front span.bottom {
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
    transform: rotateX(0deg);
}

.nav_target .other .clock ul li span.n0:after { background-image: url(../img/clock_n0.png); }
.nav_target .other .clock ul li span.n1:after { background-image: url(../img/clock_n1.png); }
.nav_target .other .clock ul li span.n2:after { background-image: url(../img/clock_n2.png); }
.nav_target .other .clock ul li span.n3:after { background-image: url(../img/clock_n3.png); }
.nav_target .other .clock ul li span.n4:after { background-image: url(../img/clock_n4.png); }
.nav_target .other .clock ul li span.n5:after { background-image: url(../img/clock_n5.png); }
.nav_target .other .clock ul li span.n6:after { background-image: url(../img/clock_n6.png); }
.nav_target .other .clock ul li span.n7:after { background-image: url(../img/clock_n7.png); }
.nav_target .other .clock ul li span.n8:after { background-image: url(../img/clock_n8.png); }
.nav_target .other .clock ul li span.n9:after { background-image: url(../img/clock_n9.png); }

.nav_target .other .clock ul li.hour.digit1 { left: 23.07%;/*30/130*/ }
.nav_target .other .clock ul li.hour.digit2 { left: 40%;/*/130*/ }
.nav_target .other .clock ul li.minute.digit1 { left: 58.23%;/*/130*/ }
.nav_target .other .clock ul li.minute.digit2 { left: 75.38%;/*98/130*/ }
.nav_target .tw_timeline { padding: 0 9.67%;/*30/310*/ line-height: 0; }
.nav_target .tw_timeline iframe { min-width: 0 !important; }
.nav_target .banner { padding: 24.19% 9.67% 45.16%;/*75 30 140/310*/ }
.nav_target .banner ul li { padding: 0 0 12%;/*30/250*/ }
.nav_target .banner ul li:last-child { padding: 0; }
.nav_target .copy {
    display: block;
    font-size: 0.85rem;
    line-height: 1em;
    padding: 0 9.67% 7.74%;/*30 24/310*/
    color: #ffffff;
}

.nav_target .amazon_banner { padding: 17.9% 9.67% 0;/*75 30 140/310*/ }
.nav_target .sale { padding: 17.9% 9.67% 0;/*75 30 140/310*/ }

.flex_target {
    display: flex;
    flex-direction: row;
}

#main {
    position: relative;
    min-width: 890px;
    flex: 1;
    background: url(../img/bg1.jpg) repeat-y left top,url(../img/bg2.jpg) repeat-y right top;
    -webkit-background-size: 332px auto, 642px auto;
    background-size: 332px auto, 642px auto;
}
#main .page {
    padding: 13.48% 24.71% 12.35% 5.61%;/*120 220 110 50/890*/
    min-height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#main .page h2 {
    height: 1em;
    font-size: 2.14rem;/*30/14*/
    line-height: 1em;
    color: #cd0c20;
    padding:0 0 7.74%;/*48/620*/
}

html.indexPage body { background-color: #000000; }
html.indexPage body #main { background: none; }
#index.page {
    padding: 0;
    background: none #000000;
}
#index .inner {
    position: relative;
    width:890px;
    margin: 0 auto;
}
#index .inner > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
#index .inner .bg { position: relative; }
#index .inner h2 {
    top: 6.15%;/*80/1300*/
    left: 87.64%;/*780/890*/
    width: 5.05%;/*45/890*/
    padding: 0;
}
#index .comment {
    padding: 5.61% 19.77% 12.35% 5.61%;/*50 176 110 50/890*/
}
#index .comment ul {
    letter-spacing: -1em;
}
#index .comment ul li {
    width: 43.52%;/*289/664*/
    display: inline-block;
    vertical-align: top;
    letter-spacing: 0;
    padding: 0 0 6.62%;/*44/664*/
}
#index .comment ul li:nth-of-type(2n){ margin: 0 0 0 12.96%;/*86/664*/ }
#index .comment ul li h3 { padding: 0 0 7.61%;/*22/289*/ }
#index .comment ul li:nth-of-type(1) h3 img { width: 97.75%;/*282.5/289*/}
#index .comment ul li:nth-of-type(2) h3 img { width: 65.57%;/*189/289*/}
#index .comment ul li:nth-of-type(3) h3 img { width: 54.84%;/*158/289*/}
#index .comment ul li:nth-of-type(4) h3 img { width: 48.26%;/*139/289*/}
#index .comment ul li p {
    color: #ffffff;
    text-align: justify;
}

#index .page_nav {
	position: fixed;
	bottom: 100px;
	top: auto;
	left: 0;
	width: 100%;
	padding-left: 310px;
	box-sizing: border-box;
}
#index .page_nav .page_nav_inner {
	position: relative;
	width: 890px;
	height: 86px;
	margin: 0 auto;
}
#index .page_nav .page_nav_inner .link {
	position: absolute;
    top: 0;/*674/1300*/
    width: 47.92%;/*426.5/890*/
}
#index .page_nav .page_nav_inner .link.t1 { left: 5.16%;/*46/890*/ }
#index .page_nav .page_nav_inner .link.t2 { left: 47.3%;/*421/890*/ }
#index .page_nav .page_nav_inner .link a {
	display: inline-block;
}
#index .page_nav .page_nav_inner .link a img { width: 100%; }

#introduction h3 {
    padding: 0 0 4.83%;/*30/620*/
    line-height: 1em;
}
#introduction h3 img { width: 90.8%;/*563/620*/}
#introduction p {
    font-size: 1.14rem;/*16/14*/
    line-height: 2.5em;
}

#news .list ul { padding: 0 0 19.35%;/*120/620*/ }
#news .list ul li { margin: 0 0 8.06%;/*50/620*/ }
#news .list ul li:last-child { margin: 0; }
#news .list ul li a {
    display: block;
    padding: 1.61% 0;/*10/620*/
    color: #000000;
}
#news .list ul li a .date {
    font-size: 1rem;
    line-height: 1em;
    padding: 0 0 1.61%;/*10/620*/
}
#news .list ul li a .detail {
    display: flex;
    width: 100%;
}
#news .list ul li a .detail .img { width: 35.48%;/*220/620*/ }
#news .list ul li a .detail .img img { width: 81.81%;/*180/220*/}
#news .list ul li a .detail .txt {
    min-width: 0;
    flex: 1;
    padding: 0 5% 0 0;/*20/400*/
}
#news .list ul li a .detail .txt h3 {
    font-size: 1.28rem;
    line-height: 1.5em;

    white-space: nowrap;
    overflow: hidden;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;

    padding: 0 0 2.63%;/*10/380*/
}
#news .page_nav a {
    position: relative;
    display: inline-block;
    font-size:1rem;
    line-height: 1em;
    color: #ffffff;
    background-color: #000000;
}
#news .page_nav .pn {
    padding: 0 0 4.83%;/*30/620*/
}
#news .page_nav .pn ul {
    display: table;
    width: 100%;
}
#news .page_nav .pn ul li {
    display: table-cell;
    width: 50%;
}
#news .page_nav .pn ul li.next { text-align: right; }
#news .page_nav .pn ul li a {
    width: 38.7%;/*120/310*/
    padding: 3.87% 0;/*12/310*/
    text-align: center;
}
#news .page_nav .pn ul li a:before {
    content: '';
    position: absolute;
    top: 0;
    width: 7.5%;/*9/120*/
    height: 100%;
    background: no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
}
#news .page_nav .pn ul li.prev a:before {
    left: 8.3%;/*10/120*/
    background-image: url(../img/news_btn_icon_prev.svg);
}
#news .page_nav .pn ul li.next a:before {
    right: 8.3%;/*10/120*/
    background-image: url(../img/news_btn_icon_next.svg);
}
#news .page_nav .num ul {
    letter-spacing: -1em;
    text-align: center;
}
#news .page_nav .num ul li {
    display: inline-block;
    width: 5.8%;/*36/620*/
    margin: 0 1.29%;/*8/620*/
    vertical-align: top;
}
#news .page_nav .num ul li:first-child { margin-left: 0; }
#news .page_nav .num ul li:last-child { margin-right: 0; }
#news .page_nav .num ul li a {
    display: block;
    letter-spacing: 0;
    text-align: center;
    padding: 30.55% 0;/*11/36*/
}
#news .page_nav .back {
    text-align: center;
}
#news .page_nav .back a {
    width: 19.35%;/*120/620*/
    padding: 1.93% 0 1.93% 3.06%;/*12 19/620*/
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#news .page_nav .back a:before {
    content: '';
    position: absolute;
    top: 0;
    left: 8.3%;/*10/120*/
    width: 7.5%;/*9/120*/
    height: 100%;
    background: url(../img/news_btn_icon_prev.svg) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
}
#news .article { padding: 0 0 12.9%;/*80/620*/ }
#news .article .date {
    font-size: 1rem;
    line-height: 1em;
}
#news .article h3 {
    font-size: 2.14rem;
    line-height: 1.5em;
    font-weight:normal;
    padding: 3.62% 0 11.69%;/*22.5 72.5/620*/
}
#news .article p,
#news .article .img {
    padding: 0 0 7.13%;/*44.26/620*/
}
#news .article p .idt {
	text-indent:0;
	padding-left:0;
	display: block;
}
#news .article p .idt4 {
	text-indent: -4em;
	padding-left: 4em;
	display: block;
}
#news .article p .idt6 {
	text-indent: -6em;
	padding-left: 6em;
	display: block;
}
#news .article p .idt9 {
	text-indent: -9em;
	padding-left: 9em;
	display: block;
}
#news .article .img .caption {
    padding: 0.8% 0 0;/*5/620*/
}
#news .article h4 {
    font-size: 1.28rem;
    line-height: 1.8em;
    font-weight:normal;
    padding: 0 0 2.06%;/*12.8/620*/
}
#news .article .link dt {
    padding: 0 0 2.3%;/*/620*/
}
#news .article .link dd {
    padding: 0 0 4.6%;/*/620*/
}
#news .article .link dd a { text-decoration: underline; }

#on_air .txt1 img{ width:67.58%;/*419/620*/ }
#on_air .txt2 { padding: 8.38% 0 14.19%;/*52 88/620*/}
#on_air .txt2 img{ width:91.93%;/*570/620*/ }
#on_air .list h3 img { width: 13.54%;/*84/620*/ }
#on_air .list ul {
    display: table;
    width: 100%;
    margin: 2.41% 0 3.7%;/*15 23/620*/
}
#on_air .list ul li {
    display: table-row;
    width: 100%;
}
#on_air .list ul li > div {
    display: table-cell;
    table-layout: fixed;
    border-bottom: 1px solid #000000;

    font-size: 1.28rem;
    line-height: 1.5em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#on_air .list ul li:first-child > div { border-top: 1px solid #000000; }
#on_air .list ul li > div:first-child {
    width: 30%;
    padding: 27px 1em;
}
#on_air .list .note {
    font-size:1rem;
    line-height: 1em;
    text-align: right;
}

#staff_cast.page { padding-right: 19.77%;/*176/890*/ }
#staff_cast .list { letter-spacing: -1em; }
#staff_cast .list dl {
    display: inline-block;
    vertical-align: top;
    letter-spacing: 0;
    padding: 0 0 4.51%;/*30/664*/
    width: 59%;/*398/664*/
}
#staff_cast dl:nth-of-type(2n),
#staff_cast .staff .list dl:nth-of-type(9) { width: 40%;/*267/664*/}
#staff_cast .staff .list dl:nth-of-type(8) { width: 59%;/*398/664*/ }
#staff_cast .staff .list dl.single { width: 100%; }
#staff_cast .list dl dt {
    font-size: 1.42rem;/*20/14*/
    line-height: 1.51em;
    color: #cd0c20;
}
#staff_cast .list dl dd {
    font-size: 2.14rem;/*30/14*/
    line-height: 1em;
    padding: 0.46em 0 0;
}
#staff_cast .list dl dd .note {
    display: block;
    font-size: 1.28rem;/*18/14*/
    line-height: 1em;
    padding: 1em 0 0;
}
#staff_cast .list dl dd .note span {
    font-size: 1.42rem;/*20/14*/
}
#staff_cast .cast { padding-top: 10.51%;/*70/664*/}

#character .nav { margin: 0 -7.09% 0 0;/*-44/620*/ }
#character .nav ul { letter-spacing: -1em; }
#character .nav ul li {
    display: inline-block;
    width: 10.54%;/*70/664*/
    margin: 0 0.6% 0 0;/*4/664*/
}
#character .nav ul li:last-child { margin-right: 0; }
#character .nav ul li a {
    display: block;
    overflow: hidden;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #000000;
    line-height: 0;
    font-size: 0;
}
#character .nav ul li a img {
    opacity: 0.5;
    will-change: opacity;
}

#character .img_wrap {
    position: relative;
    margin: -3.22% -7.09% 0 -8.06%;/*-20 -44 -50/620*/
    padding: 109.35% 0 0;/*678/620*/
    overflow: hidden;
}
#character .img_wrap .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#character .img_wrap .img p {
    position: absolute;
    top: 70.35%;/*477/678*/
    left: 14.84%;/*106/714*/
    width: 35.01%;/*250/714*/
    text-align: justify;
}
#character .img_wrap .img_nav a {
    position: absolute;
    top: 42.03%;/*285/678*/
    display: block;
    width: 2.94%;/*21/714*/
}
#character .img_wrap .img_nav a.prev { left: 7%;/*50/714*/ }
#character .img_wrap .img_nav a.next { right: 7%;/*50/714*/ }

#movie .box { padding: 0 0 17.74%;/*110/620*/}
#movie .box .youtube {
    position: relative;
    padding: 56.25% 0 0;/*348.75/620*/
}
#movie .box iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#movie .box h4 {
    font-size: 1.28rem;
    font-weight:normal;
    line-height: 1.5em;
    text-align: right;
    padding: 2.41% 0 0;/*15/620*/
}

#music.page { padding-right: 19.77%;/*176/890*/ }

#music .page_nav {
	position:fixed;
	top: 124px;
	right: -10px;
	z-index: 2;
	text-align: right;
}
#music .page_nav a { display: block; }
#music .page_nav a + a { margin-top: 30px; }
#music .page_nav a img { width: 266px; }

#music h3 {
    text-align: center;
    padding: 0 0 5.12%;/*34/664*/
}
#music h3.t1 img {width: 40.73%;/*270.5/664*/}
#music h3.t2 { padding: 13.4% 0 5.12%;/*89/664 34/664*/ }
#music h3.t2 img {width:41.11%;/*273/664*/}

#music h4 {
    text-align: center;
    padding: 0 0 3.01%;/*20/664*/
}
#music .artist { padding: 0 0 7.53%;/*50/664*/}
#music .artist h4.t1 img { width: 20.03%;/*133/664*/}
#music .artist h4.t2 { padding-top: 7.53%;/*50/664*/ }
#music .artist h4.t2 img { width: 19.65%;/*130.5/664*/}
#music .artist h4.t3 img { width: 62.42%;/*414.5/664*/}
#music .artist .img {
    float: right;
    width: 37.65%;/*250/664*/
    text-align: center;
}
#music .artist .img img { width: 72%;/*180/250*/ }
#music .artist .txt {
    width: 59.73%;/*/664*/
    font-size: 1rem;
    line-height: 1.8em;
}
#music .artist p.link {
    font-size: 1rem;
    line-height: 1.8em;
    padding: 1em 0 0;
}
#music .album { padding: 0 0 7.53%;/*50/664*/}
#music .album h4.t1 img { width: 67.99%;/*451.5/664*/ }
#music .album h4.t2 img { width: 78.23%;/*519.5/664*/}
#music .album .img_wrap {
    display:block;
    width: 100%;
    margin: 0 auto;
	letter-spacing: -.4em;
}
#music .album .img_wrap > div {
	letter-spacing: normal;
	display: inline-block;
    width: 50%;
    vertical-align: top;
}
#music .album .img_wrap > div:nth-child(n+3){
	margin-top:4.51%;
}
#music .album .img_wrap .inner {
    width: 92.77%;/*308/332*/
}
#music .album .img_wrap  > div:nth-of-type(2) .inner { margin: 0 auto; }
#music .album .img_wrap > div.img img { width: 90.25%;/*278/308*/ }
#music .album .img_wrap.t1 > div:nth-of-type(2) .img img { width: 90.25%;/*278/308*/ }
#music .album .img_wrap.t2 { padding-bottom: 2.12%; }
#music .album .img_wrap.t2 > div { vertical-align: bottom; }
#music .album .img_wrap.t2 > div .img img { width: 90.25%;/*278/308*/ }
#music .album .img_wrap h5 {
    font-size: 1.28rem;
    line-height: 1em;
    padding: 7.79% 0 4.54%;/*24 14/308*/
}
#music .album .img_wrap h5:before { content: '◆'; }

#music .album .detail h6 {
    font-size: 1rem;
    padding: 1em 0 0;
}
#music .album .detail h6:before { content: '【'; }
#music .album .detail h6:after { content: '】'; }
#music .album .detail ol { counter-reset:music_count; }
#music .album .detail ol li {
    position: relative;
    padding: 0 0 0 2em;
    counter-increment:music_count;
}
#music .album .detail ol li.r { color: #cd0c20; }
#music .album .detail ol li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '0'counter(music_count) ".";
}
#music .album .detail ol li:nth-of-type(9) ~ li:before { content: counter(music_count) "."; }
#music .album .detail ul li {
    position: relative;
    padding: 0 0 0 1em;
}
#music .album .detail ul li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "●";
}
#music .tours h4.t1 img { width: 100%;/*/620*/}
#music .tours h4.t2 img { width: 94.51%;/*586/620*/}
#music .tours ul {
    display: table;
    width: 100%;
}
#music .tours ul li {
    display: table-row;
    width: 100%;
}
#music .tours ul li > div {
    display: table-cell;
    table-layout: fixed;
    border-bottom: 1px solid #000000;
    padding:0 0.5em;

    font-size: 1.28rem;
    line-height: 1.5em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#music .tours ul li:first-child > div { border-top: 1px solid #000000; }
#music .tours ul li > div:first-child {
    width: 20%;
    padding: 27px 0.5em;
}
#keyword .list { padding: 0 0 0 4.83%;/*30/620*/ }
#keyword .list .box {
    display: flex;
    margin: 0 0 11.86%;/*70/590*/
    align-items: center;
    justify-content: center;
}
#keyword .list .box.b2,
#keyword .list .box.b4,
#keyword .list .box.b6 { flex-direction: row-reverse; }
#keyword .list .box h3 {
    text-align: center;
    width: 55.93%;/*330/590*/
}
#keyword .list .box.b1 h3 img { width: 83.03%;/*274/330*/ }
#keyword .list .box.b2 h3 img { width: 70.3%;/*232/330*/ }
#keyword .list .box.b3 h3 img { width: 63.63%;/*210/330*/ }
#keyword .list .box.b4 h3 img { width: 46.06%;/*152/330*/ }
#keyword .list .box.b5 h3 img { width: 59.09%;/*195/330*/ }
#keyword .list .box.b6 h3 img { width: 48.18%;/*159/330*/ }
#keyword .list .box p {
    flex: 1;
}

#comic.page { padding-right: 19.32%;/*172/890*/ }
#comic h3 img { width: 94.16%;/*629/668*/ }
#comic .t1 { padding: 5.98% 0 3.74%;/*40 25/668*/ }
#comic .t1 a {
    display: inline-block;
    padding: 0.5em 0 0;
}
#comic ul {
    letter-spacing: -1em;
}
#comic ul li {
    display: inline-block;
    vertical-align: top;
    width: 23.65%;/*158/668*/
    margin: 0 1.49% 4.49% 0;/*10 30/668*/
}
#comic ul li:nth-of-type(4n) { margin-right: 0; }
#comic .t2 { padding: 7.48% 0;/*50/668*/ }
#comic .t2 img { width: 87.2%;/*582.5/668*/}
#comic .t3 { padding: 0 0 7.48%;/*50/668*/ }
#comic .t3 img { width: 82.85%;/*553.5/668*/}
#comic dl { font-size: 1.14rem;/*16/14*/ }
#comic dl dt:before{ content: '【'; }
#comic dl dt:after { content: '】'; }
#comic dl dd { line-height: 2.5em; }

#comment ul li + li { padding-top: 13.08%; }
#comment ul li p { padding-top: 4.66%; }
#comment ul li:nth-child(1) h3 img { width:74.81%; } /* 664 */
#comment ul li:nth-child(2) h3 img { width:31.42%; }
#comment ul li:nth-child(3) h3 img { width:41.35%; }
#comment ul li:nth-child(4) h3 img { width:27.51%; }
#comment ul li:nth-child(5) h3 img { width:74.73%; }
#comment ul li:nth-child(6) h3 img { width:38.3%; }
#comment ul li:nth-child(7) h3 img { width:42.82%; }
#comment ul li:nth-child(8) h3 img { width:36.77%; }
#comment ul li:nth-child(9) h3 img { width:35.64%; }
#comment ul li:nth-child(10) h3 img { width:36.14%; }
#comment ul li:nth-child(11) h3 img { width:33.28%; }
#comment ul li:nth-child(12) h3 img { width:40.36%; }
#comment ul li:nth-child(13) h3 img { width:29.66%; }
#comment ul li:nth-child(14) h3 img { width:27.4%; }

#movie_premier h3 img { width:45.64%; }
#movie_premier p { padding-top: 8.22%; }
#movie_premier p + p { padding-top: 4.51%; }
#movie_premier p span {
	display: block;
	text-indent: -4em;
	padding-left: 4em;
}
#movie_premier p a { text-decoration: underline; }
#movie_premier > .note { padding-top: 8.06%; }
#movie_premier .note span {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}
#movie_premier .application { padding-top: 12.9%; }
#movie_premier .application h3 img { width: 19.51%; }
#movie_premier .step { padding-top: 6.93%; }
#movie_premier .step h4 { padding: 0 0 4.67%; }
#movie_premier .step.s1 h4 img { width:61.61%; }
#movie_premier .step.s2 h4 img { width:71.93%; }
#movie_premier .step .step_inner {
	width:59.67%;
	margin-left: 8.38%;
	text-align: center;
}
#movie_premier .step .step_inner a { display: inline-block; }
#movie_premier .step .step_inner .note { padding-top: 5.67%; }
#movie_premier .step .step_inner > p img { width:65.4%; }
#movie_premier .step .step_inner .btn img { width: 100%; }
#movie_premier .step .step_inner .txt { font-weight: bold; font-size: 16px; }

#special h3 img { } /* 664 */
#special p { padding-top: 8.22%; }
#special p + p { padding-top: 4.51%; }
#special p span {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}
#special #archive_sec h3 img { width:65.81%; }
#special #archive_sec h4 { font-size: 1.42rem; }
#special #archive_sec .link { padding-top: 4.51%; }
#special #archive_sec .link a { display: inline-block; }
#special #archive_sec .link a + a { margin-left: 4.81%; }
#special #archive_sec ul { width: 100%; }
#special #archive_sec ul li {
	position: relative;
	border-bottom: solid 1px #bbbbbb;
	padding: 7.68% 0;
}
#special #archive_sec ul li:before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #444444;
}
#special #archive_sec ul li #linelive { margin-bottom: 3.01%; }
#special #archive_sec ul li p { padding-top: 0; }
#special #archive_sec ul li p a { text-decoration: underline; }

#special #present_sec h3 img { width:62.95%; }
#special #present_sec { padding-top: 12.9%; }

#special #present_sec .note { font-size:0.83rem; }
#special #present_sec form span {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.6em;
    font-size: 1.35rem;
}
#special #present_sec form input {
	margin-left: 2%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	vertical-align: middle;
}
#special #present_sec form input[type="text"] {
    border: solid 1px #444444;
    line-height: 1.6em;
    font-size: 1.35rem;
	padding: 0 1%;
	width:45.18%;
	box-sizing: border-box;
}
#special #present_sec form input[type="text"]::-webkit-input-placeholder { color: #908e8e; }
#special #present_sec form input[type="text"]:-ms-input-placeholder { color: #908e8e; }
#special #present_sec form input[type="text"]::-moz-placeholder { color: #908e8e; }

#special #present_sec form input[type="button"] {
    border: solid 1px #444444;
    line-height: 1.6em;
    font-size: 1.35rem;
	background-color: #000;
	color: #FFF;
	font-weight: bold;
	width:19.27%;
	text-align: center;
	border-radius: 5px;
	cursor: pointer;
	border: solid 1px #000;
}
#special #present_sec #error_message {
	font-size: 1.35rem;
	color: #cd0c20;
	padding: 3% 0;
}

#present h3 img { width:62.65%; }
#present p { padding-top: 8.22%; }
#present p + p { padding-top: 4.51%; }
#present .list { letter-spacing: -.4em; margin-top: 11.48%; }
#present .list li { letter-spacing: normal; display: inline-block; vertical-align: top;  width: 30.25%; }
#present .list li + li { margin-left: 4.53%; }
#present .list li:nth-child(3n+1) { margin-left: 0; }
#present .list li:nth-child(n+4) { margin-top: 4.53%; }
#present .list li .info { display: table; width: 100%; }
#present .list li .info > span { display: table-cell; vertical-align: middle; }
#present .list li .info .num { text-align: left; color: #cd0c20; }
#present .list li .info .date { text-align: right; }
#present .list li figure { width: 100%; }
#present .list li h4 {
	font-size: 1rem;
	font-weight: normal;
	line-height: 1.35em;
	padding:4% 0;
	min-height: 55px;
}
#present .list li .download {
	width: 100%;
}
#present .list li .download a {
	display: inline-block;
	width: 100%;
	background-color: #000;
	color: #FFF;
	text-align: center;
	line-height: 1em;
	font-size: 0.83rem;
	padding: 5%;
	border: solid 1px #000;
	box-sizing: border-box;
}



.css_loader {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/preloader.gif) no-repeat center;
    -webkit-background-size: 48px;
    background-size: 48px;
}

#pjax_loader {
    z-index: 1000;
    opacity: 0;
}
#loader {
    display: block;
    position: fixed;
    z-index: 10000;
    background-color: #ffffff;
}

.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
}
.modal .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.85);
    opacity: 0;
}
.modal .window {
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
}
#modal_movie .window .modal_window_inner {
    position: relative;
}
#modal_movie .window .youtube {
    position: relative;
    padding: 56.25% 0 0;/*540/960*/
}
#modal_movie .window iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}
#modal_movie .window .btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 2.85%;/*25/876*/
    margin: -5.13% 0 0;/*-45/876*/
}
#modal_movie .window .list {
    padding: 2.05% 0 0;/*18/876*/
}
#modal_movie .window .list ul { letter-spacing: -1em; }
#modal_movie .window .list ul li {
    display: inline-block;
    width: 50%;/*438/876*/
    letter-spacing: -1em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 1.14% 0 0;/*10/876*/
}
#modal_movie .window .list ul li:nth-of-type(2) { padding: 0 0 0 1.14%;/*10/876*/}
#modal_movie .window .list ul li a {
    position: relative;
    display: block;
    border: 2px solid #ffffff;
    color: #ffffff;
    background-color: #000000;
    font-size: 1em;
    line-height:  1em;
    padding: 6.16% 6.84%;/*27 30/438*/
    letter-spacing: 0;
}
#modal_movie .window .list ul li a:before {
    content: '';
    position: absolute;
    top: 0;
    right: 4.56%;/*20/438*/
    display: block;
    width: 2.96%;/*13/438*/
    height: 100%;
    background: url(../img/modal_btn_arrow.svg) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
}

@media screen and (min-width: 751px){
    #pjax_target {
        height: 100%;
        width: 890px;
        margin: 0 auto;
    }
    .css_imagehover:hover img:nth-of-type(2) { opacity: 1; }

    .css_hover {
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -ms-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s;
    }
    .css_hover:hover { opacity: 0.5; }

    #nav ul li a {
        position: relative;
        display: inline-block;

        -webkit-transform-style: preserve-3d;
        -moz-transform-style: preserve-3d;
        -ms-transform-style: preserve-3d;
        transform-style: preserve-3d;
        -webkit-perspective: 1300px;
        perspective: 1300px;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;

        -webkit-transition: color 0.3s;
        -moz-transition: color 0.3s;
        -ms-transition: color 0.3s;
        -o-transition: color 0.3s;
        transition: color 0.3s;
    }
    #nav ul li a:hover { color: #cd0c20; }
    #nav ul li a > span {
        position: relative;
        display: inline-block;
        padding: 0.25em 0 0;
        opacity: 0;
        z-index: 2;
    }
    #nav ul li a > span > span {
        display: inline-block;
        width: 0.8em;
        text-align: center;
    }

    #nav ul li a > div { z-index: 1; }
    #nav ul li a > div,
    #nav ul li a > div > div {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
    }
    #nav ul li a > div > div > div {
        position: relative;
        display: inline-block;
        width: 0.8em;
        height: 1.5em;

        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    #nav ul li a > div > div > div > span {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 50%;
        line-height:1em;
        overflow: hidden;

        will-change: transform;

        background-color: #000000;

        -webkit-transition-property: transform;
        -moz-transition-property: transform;
        -ms-transition-property: transform;
        -o-transition-property: transform;
        transition-property: transform;

        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    #nav ul li a > div > div > div > span:nth-of-type(1) {
        height: 0.6em;
    }
    #nav ul li a > div > div > div > span:nth-of-type(2) {
        top: 0.6em;
        height: 0.6em;
    }
    #nav ul li a > div > div > div > span > span {
        position: absolute;
        left: 0;
        display: block;
        width: 100%;
        text-align: center;
    }
    #nav ul li a > div > div > div > span:nth-of-type(1) > span { padding: 0.25em 0 0; top: 0; }
    #nav ul li a > div > div > div > span:nth-of-type(2) > span { bottom: 0; }

    #nav ul li a .front .top {
        -webkit-transform-origin: center bottom;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
    #nav ul li a .front .bottom {
        -webkit-transform-origin: center top;
        -moz-transform-origin: center top;
        -ms-transform-origin: center top;
        -o-transform-origin: center top;
        transform-origin: center top;
    }
    #nav ul li a .front .bottom {
        -webkit-transform: rotateX(180deg);
        -moz-transform: rotateX(180deg);
        -ms-transform: rotateX(180deg);
        -o-transform: rotateX(180deg);
        transform: rotateX(180deg);
    }
    #nav ul li a .isAnim.front .top {
        -webkit-transform: rotateX(-180deg);
        -moz-transform: rotateX(-180deg);
        -ms-transform: rotateX(-180deg);
        -o-transform: rotateX(-180deg);
        transform: rotateX(-180deg);
    }
    #nav ul li a .isAnim.front .bottom {
        -webkit-transform: rotateX(0deg);
        -moz-transform: rotateX(0deg);
        -ms-transform: rotateX(0deg);
        -o-transform: rotateX(0deg);
        transform: rotateX(0deg);
    }
	
	#index .page_nav .page_nav_inner .link a {
		width: 426px;
		height: 86px;
	}
	#index .page_nav .page_nav_inner .link a img {
		display: none;
	}
	#index .page_nav .page_nav_inner .link a:before,
	#index .page_nav .page_nav_inner .link a:after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: inline-block;
		width: 100%;
		height: 100%;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		-webkit-transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1);
        -moz-transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1);
        -ms-transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1);
        -o-transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1);
        transition: opacity 0.5s cubic-bezier(0.23, 1, 0.32, 1);
	}
	#index .page_nav .page_nav_inner .link a:before { opacity: 1; }
	#index .page_nav .page_nav_inner .link a:after { opacity: 0; z-index: 2; }
	#index .page_nav .page_nav_inner .link.t1 a:before { background-image: url(../img/top_link3.png); }
	#index .page_nav .page_nav_inner .link.t1 a:after { background-image: url(../img/top_link3_on.png); }
	#index .page_nav .page_nav_inner .link.t2 a:before { background-image: url(../img/top_link2.png); }
	#index .page_nav .page_nav_inner .link.t2 a:after { background-image: url(../img/top_link2_on.png); }
	
	#index .page_nav .page_nav_inner .link a:hover:after {
		opacity: 1;
	}
	

    #news .list ul li a {
         -webkit-transition: background 0.3s;
         -moz-transition: background 0.3s;
         -ms-transition: background 0.3s;
         -o-transition: background 0.3s;
         transition: background 0.3s;
        background-color: rgba(229,229,229,0);
     }
    #news .list ul li a:hover {
        background-color: rgba(229,229,229,0.5);
    }

    #news .page_nav a:after,
    #modal_movie .window .list ul li a:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #ffffff;
        opacity: 0;

        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -ms-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s;
    }
    #news .page_nav a:hover:after,
    #modal_movie .window .list ul li a:hover:after { opacity: 0.3; }
    #news .article .link dd a:hover { text-decoration: none; }
    #character .nav ul li a img {
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -ms-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s;
    }
    #character .nav ul li a:hover img,
    #character .nav ul li a.active img{ opacity: 1; }
    #comic p a:hover,
    #music .artist p.link a:hover { text-decoration: underline; }
	#music .page_nav a {
        -webkit-transition: margin 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -moz-transition: margin 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -ms-transition: margin 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -o-transition: margin 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        transition: margin 0.3s cubic-bezier(0.23, 1, 0.32, 1);
    }
	#music .page_nav a:hover { margin-right: 10px; }
	#movie_premier .step .step_inner a {
		-webkit-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -moz-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -ms-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -o-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
	}
	#movie_premier .step .step_inner a:hover {
		opacity: 0.7;
	}
	#special #present form input[type="button"] {
		-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -moz-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -ms-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -o-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
	}
	#special #present form input[type="button"]:hover {
		color: #000;
		background-color: #FFF;
	}
	#present .list li .download a {
		-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -moz-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -ms-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        -o-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
        transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
	}
	#present .list li .download a:hover {
		color: #000;
		background-color: #FFF;
	}
	
}
@media screen and (max-width: 750px){
    html {
        font-size: 12px;
        font-size: 3.75vw;
        line-height: 1.8em;
    }

    .onlyPc,
    img.onlyPc { display: none; }
    .onlySp { display: block; }
    img.onlySp { display: inline-block; }

    .css_imagehover img:nth-of-type(2) { display: none; }
    .flex_target {
        display: block;
        flex-direction: column;
    }

    #header {
        position: absolute;
        top: 0;
        left: 0;
        min-width: 0;
        width: 100%;
        z-index: 10;
    }
    #header:before {
        content: '';
        display: block;
        padding: 18.75% 0 0;/*120/640*/
    }
    #header h1 {
        position: absolute;
        top: 0;
        left: 0;
        width: 27.34%;/*175/640*/
        padding: 0;
    }

    #header p,
    #header .other,
    #header .tw_timeline,
    #header .banner,
    #header .copy,
	#header .amazon_banner,
	header .sale { display: none; }

    #header .nav_toggle {
        position: absolute;
        top: 0;
        right: 4.68%;/*30/640*/
        width: 5%;/*32/640*/
        margin: 3.12% 0 0;/*20/640*/
        z-index: 101;
        line-height: 0;
    }
    #header .nav_toggle a {
        position: relative;
        display: block;
        height: 100%;
    }
    #header .nav_toggle a img {
        -webkit-transition: opacity 0.3s,transform 0.3s;
        -moz-transition: opacity 0.3s,transform 0.3s;
        -ms-transition: opacity 0.3s,transform 0.3s;
        -o-transition: opacity 0.3s,transform 0.3s;
        transition: opacity 0.3s,transform 0.3s;
    }
    #header .nav_toggle a img:nth-of-type(2){
        position: absolute;
        top: 24.69%;/*20/81*/
        left: 0;
        opacity: 0;

        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }
    #header .nav_toggle.active a img:nth-of-type(1) {
        opacity: 0;
        -webkit-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        -o-transform: rotate(135deg);
        transform: rotate(135deg);
    }
    #header .nav_toggle.active a img:nth-of-type(2) {
        opacity: 1;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    #nav {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: auto;
        z-index: 100;
        background-color: rgba(0,0,0,0.8);
        padding: 0;
    }
    #nav ul {
        padding: 24% 0 24% 22.65%;/*154 145/640*/
    }
    #nav ul li {
        margin: 0 0 12.12%;/*60/495*/
        font-size: 1rem;
    }
    .nav_target .nav ul li a {
        position: relative;
    }
    .nav_target .nav ul li a:after {
        content: '';
        display: inline-block;
        width: 1em;
        height: 1em;
        vertical-align: top;
        background: url(../img/sp/nav_arrow.svg) no-repeat center right;
        -webkit-background-size: contain;
        background-size: contain;
    }
    .nav_target .nav ul li a .js-string_anim { display: inline-block; }

    .nav_target .other .sns {
        width: 65.45%;/*343/524*/
    }
    .nav_target .other .sns ul li.fb,
    .nav_target .other .sns ul li.tw,
    .nav_target .other .sns ul li.li { margin: 0 16.5% 0 0;/*/343*/}
    .nav_target .other .sns ul li.fb { width: 15.74%;/*54/343*/}
    .nav_target .other .sns ul li.tw { width: 18.65%;/*64/343*/}
    .nav_target .other .sns ul li.li { width: 16.03%;/*55/343*/}
    .nav_target .other .clock {
        width: 34.35%;/*180/524*/
    }

    #footer { background-color: #000000; }
    #footer .nav { padding: 0; }
    #footer .nav ul {
        padding: 18.75% 9.06% 9.37%;/*120 58 60/640*/
    }
    #footer .nav ul li {
        font-size: 1.26rem;
        line-height: 1em;
        margin: 0 0 10.31%;/*66/640*/
    }
    #footer .other {
        text-align: center;
        padding: 0 9.37% 12.5%;/*60 80/640*/
    }
    #footer .pagetop {
        text-align: center;
    }
    #footer .pagetop a {
        display: block;
        color: #ffffff;
        font-size: 0.83rem;
        line-height: 1em;
    }
    #footer .pagetop a .img { line-height: 0; padding: 0 0 1em; }
    #footer .pagetop a .img img { width: 3.43%;/*22/640*/ }
    #footer .copy {
        font-size: 0.83rem;
        text-align: center;
        padding: 12.5% 0;/*80/640*/
    }
	#footer .amazon_banner,
	#footer .sale {
		padding: 0 9.06% 16.37%;
	}

    #main {
        min-width:0;
        background: none;
    }
    #main .page {
        padding: 18.75% 0 15.62%;/*120 100/640*/
        background: url(../img/sp/bg.jpg) repeat-y center top;
        -webkit-background-size: 100% auto;
        background-size: 100% auto;
    }
    #main .page h2 {
        font-size: 2.29rem;
        line-height: 1em;
        text-align: center;
        padding: 18.43% 0;/*118/640*/
    }
    #pjax_loader {
        position: fixed;
        background-color: #ffffff;
    }
    #pjax_target { width: 100%; }

    html.indexPage #header {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        background-color: transparent;
    }
    html.indexPage #header h1 { display: none; }
    #index.page { padding: 0; background: none #000000; }
    #index .dummyHeader {
        background-color: #000000;
        padding: 0 0 9.37%;/*60/640*/
    }
    #index .inner {
        width: 100%;
        background-color: #000000;
		backface-visibility: hidden;
    }
    #index .inner h2 {
        top: 0;
        left: 0;
        width: 100%;
        padding: 0;
    }
	#index .inner .link {
        top: 0;
        left: 0;
		width: 79.84%;
        padding: 0;
    }
	#index .page_nav {
		position: absolute;
		bottom: auto;
		top: 64.39%;
		left: 0;
		width: 100%;
		height: auto;
		padding: 0;
	}
	#index .page_nav .page_nav_inner {
		position: relative;
		top: auto;
		left: auto;
		width: 79.84%;
		height: auto;
		margin: 0 auto;
	}
	#index .page_nav .page_nav_inner .link {
		position: static;
		width: 100%;
	}
	#index .inner .link { width: 100%; }
	#index .inner .link a { display: inline-block; }
	#index .inner .link img {  width: 100%; }
	#index .page_nav .page_nav_inner .link.t1 {}
	#index .page_nav .page_nav_inner .link.t2 { padding-top: 6%; }
    #index .comment {
        position: relative;
        width: 87.5%;/*560/640*/
        padding: 0 0 3.12%;/*20/640*/
        margin: -7.81% auto 0;/*50/640*/
    }
    #index .comment ul li {
        width: 100%;
        display: block;
        padding: 0 0 14.28%;/*80/560*/
    }
    #index .comment ul li:nth-of-type(2n){ margin: 0; }
    #index .comment ul li h3 { text-align: center; }
    #index .comment ul li h3,
    #index .comment ul li:nth-of-type(1) h3 { padding: 0 0 3.57%;/*20/560*/ }
    #index .comment ul li:nth-of-type(1) h3 img { width: 88.75%;/*497/560*/}
    #index .comment ul li:nth-of-type(2) h3 img { width: 45.17%;/*253/560*/}
    #index .comment ul li:nth-of-type(3) h3 img { width: 36.78%;/*206/560*/}
    #index .comment ul li:nth-of-type(4) h3 img { width: 33.03%;/*185/560*/}
    #index .tw_timeline { padding:5.93% 3.12% 0;/*20/640*/ margin: 0 auto; width: 100%; box-sizing: border-box; }
    #index .banner { padding: 12.5% 3.12% 6.24%;/*80 20 40/640*/ }
    #index .banner ul li { padding: 0 0 6.66%;/*40/600*/ }

    #introduction h3 { padding: 0 0 7.03%;/*45/640*/ text-align: center; }
    #introduction h3 img { width: 76.87%;/*492/640*/ }
    #introduction p {
        width: 75%;/*480/640*/
        margin: 0 auto;
        font-size: 1rem;
        line-height: 1.8em;
    }
    #news .list ul { padding: 0; }
    #news .list ul li { margin: 0 0 15.62%;/*100/640*/ }
    #news .list ul li:last-child { margin: 0 0 7.81%;/*50/640*/ }
    #news .list ul li a {
        width: 90.62%;/*580/640*/
        padding: 0;
        margin: 0 auto;
    }
    #news .list ul li a .detail { display: block; }
    #news .list ul li a .detail .img,
    #news .list ul li a .detail .img img { width: 100%; }
    #news .list ul li a .detail .txt { padding:0; }
    #news .list ul li a .detail .txt .date {
        font-size: 1rem;
        line-height: 1em;
        padding: 1em 0;
    }
    #news .list ul li a .detail .txt h3 {
        font-size: 1.25rem;
        padding: 0 0 0.5em;
    }
    #news .page_nav {
        width: 93.75%;/*600/640*/
        padding: 0;
        margin: 0 auto;
    }
    #news .page_nav .pn { padding: 0 0 5%;/*30/600*/ }
    #news .page_nav .pn ul li a {
        width: 56%;/*168/300*/
        font-size: 0.83rem;
        line-height: 1em;
        padding: 5.66% 0;/*17/300*/
    }
    #news .page_nav .num ul li {
        width: 8.33%;/*50/600*/
        margin: 0 1.55%;/*10/600*/
    }
    #news .page_nav .num ul li a {
        font-size: 0.83rem;
        line-height: 1em;
        padding:34% 0;/*17/50*/
    }
    #news .page_nav .back a {
        width: 33.33%;/*200/600*/
        padding: 3% 0 3% 6%;/*18 36/600*/
    }
    #news .page_nav .back a:before {
        left: 9%;/*18/200*/
        width: 8%;/*16/200*/
    }
    #news .article {
        width: 90.62%;/*580/640*/
        padding: 0 0 28.12%;/*180/640*/
        margin: 0 auto;
    }
    #news .article h3 {
        font-size: 1.99rem;
        line-height: 1.5em;
        padding: 0.25em 0 1.8em;
        text-align: center;
    }
    #news .article p,
    #news .article .img { padding: 0 0 2.5em; }
    #news .article .img .caption { padding: 0.3em 0 0; }
    #news .article h4 {
        font-size: 1.5rem;
        line-height: 1.5em;
        padding: 0 0 0.5em;
    }
    #news .article .link dt { padding: 0; }
    #news .article .link dd { padding: 0 0 1em; }
    #on_air .txt1,
    #on_air .txt2 { text-align: center; }
    #on_air .txt1 img{ width:88.12%;/*564/640*/ }
    #on_air .txt2 { padding: 15.62% 0;/*100/640*/}
    #on_air .txt2 img{ width:79.84%;/*511/640*/ }
    #on_air .list {
        width: 93.75%;/*600/640*/
        margin: 0 auto;
    }
    #on_air .list h3 img { width: 24.33%;/*146/600*/ }
    #on_air .list ul { margin: 3.66% 0;/*22/600*/ }
    #on_air .list ul li > div {
        font-size: 1rem;
        line-height: 1.5em;
    }
    #on_air .list ul li > div:first-child {
        width: 30%;
        padding: 17px 0;
    }
    #on_air .list .note {
        font-size:0.83rem;
        line-height: 1em;
        text-align: left;
    }

    #staff_cast .list dl {
        display: inline-block;
        padding: 0 0 14.06%;/*90/640*/
        width: 50%;
        text-align: center;
    }
    #staff_cast .staff .list dl,
    #staff_cast .staff dl:nth-of-type(2n),
    #staff_cast .staff .list dl:nth-of-type(9),
    #staff_cast .staff .list dl:nth-of-type(8),
    #staff_cast .staff .list dl.single { width: 100%; }
    #staff_cast .cast .list {
        width: 93.75%;/*600/640*/
        margin: 0 auto;
    }
    #staff_cast .cast .list { padding-bottom: 16.66%;/*100/600*/}
    #staff_cast .list dl dt {
        font-size: 1rem;
        line-height: 1em;
    }
    #staff_cast .list dl dd {
        font-size: 2rem;/*48/24*/
        line-height: 1.2em;
        padding: 0.5em 0 0;
    }
    #staff_cast .list dl dd .note {
        font-size: 0.83rem;/*20/24*/
        line-height: 1.8em;
        padding: 1em 0 0;
    }
    #staff_cast .list dl dd .note span { font-size: 1rem; }
    #staff_cast .cast { padding-top: 4.68%;/*30/640*/}

    #character.page h2 { padding-bottom: 7.03%;/*45/640*/}
    #character .nav {
        width: 95%;/*608/640*/
        padding: 0;
        margin: 0 auto;
    }
    #character .nav ul li {
        width: 17.43%;/*106/608*/
        margin: 0 3.2% 3.2% 0;/*/608*/
    }
    #character .nav ul li:nth-of-type(5n) { margin-right: 0; }
    #character .nav ul li a {
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
    }
    #character .nav ul li a.active img { opacity: 1; }
    #character .img_wrap {
        margin: 0;
        padding: 169.53% 0 0;/*1085/640*/
    }
    #character .img_wrap .img p {
        position: relative;
        top: 0;
        left: 0;
        width: 75%;/*480/640*/
        margin: 0 auto;
    }
    #character .img_wrap .img_nav a {
        top: 26.63%;/*289/1085*/
        width: 3.28%;/*21/640*/
    }
    #character .img_wrap .img_nav a.prev { left: 2.5%;/*16/640*/ }
    #character .img_wrap .img_nav a.next { right: 2.5%;/*16/640*/ }

    #movie .box {
        width: 93.75%;/*600/640*/
        margin: 0 auto;
        padding: 0 0 17.18%;/*110/640*/
    }
    #movie .box h4 {
        font-size: 1rem;
        line-height: 1.5em;
        padding: 0.5em 0 0;
    }

    #music h3 { padding: 0 0 15.64%;/*100/640*/ }
    #music h3.t1 img {width: 56.56%;/*362/640*/}
	#music h3.t2 img {width:58.59%;/*375/640*/}
    #music h4 { padding: 0 0 7.81%;/*50/640*/ }
    #music .artist { padding: 0 0 14.06%;/*90/640*/}
    #music .artist h4.t1 img { width: 24.21%;/*155/640*/}
    #music .artist h4.t2 { padding-top: 13.28%;/*85/640*/ }
    #music .artist h4.t2 img { width: 29.37%;/*188/640*/}
	#music .artist h4.t3 { padding-top: 13.28%;/*85/640*/ }
	#music .artist h4.t3 img { width: 85.78%;/*549/640*/}

    #music .artist .img {
        float: none;
        width: 100%;
        text-align: center;
        padding: 0 0 4.68%;/*30/640*/
    }
    #music .artist .img img { width: 52.34%;/*335/640*/}
    #music .artist .txt {
        width: 75%;/*480/640*/
        font-size: 1rem;
        line-height: 1.8em;
        margin: 0 auto;
    }
    #music .album h4.t1 img { width: 77.65%;/*497/640*/ }
	#music .album h4.t2 img { width: 63.28%;/*405/640*/ }
    #music .album .img_wrap { display: block; text-align: center; }
    #music .album .img_wrap > div { display: block; width: 100%; }
    #music .album .img_wrap > div:nth-of-type(2) { padding-top: 7.81%;/*50/640*/}
    #music .album .img_wrap .inner { width: 100%; }
    #music .album .img_wrap .img { text-align: center; }
    #music .album .img_wrap.t1 > div:nth-of-type(1) .img img { width: 47.5%;/*304/640*/ }
    #music .album .img_wrap.t1 > div:nth-of-type(2) .img img { width: 43.43%;/*278/640*/ }
	#music .album .img_wrap.t2 > div .img img { width: 47.5%;/*304/640*/ }
    #music .album .img_wrap h5 {
        font-size: 1.16rem;
        line-height: 1em;
        padding: 1.78em 0 0.71em;
        text-align: center;
    }
    #music .album .img_wrap h6 {
        font-size: 1rem;
        padding: 1em 0 0;
    }
    #music .album .detail {
        width: 79.68%;/*510/640*/
        margin: 0 auto;
    }

    #music .tours h4.t1 img { width: 67.81%;/*434/640*/}
	#music .tours h4.t2 img { width: 70.31%;/*450/640*/}
    #music .tours ul {
        display: table;
        width: 93.75%;/*600/640*/
        margin: 0 auto;
    }
    #music .tours ul li > div {
        padding:15px 0;
        vertical-align: middle;

        font-size: 1rem;
        line-height: 1.8em;
    }
    #music .tours ul li > div:first-child {
        width: 40%;
        padding: 15px 1.5em;
    }
    #music .tours ul.t1 li > div:last-child { display: none; }
    #music .tours ul li div span { display: block; }
	
	#music .page_nav {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		width: 100%;
		margin-top: 5%;
		padding-bottom: 94px;
	}
	#music .page_nav:after {
		content: "";
		display: inline-block;
		padding-top: 24.25%;
	}
	#music .page_nav .page_nav_inner {
		position: absolute;
		bottom:0;
		right: 0;
		width: 35.15%;
		height: 100%;
	}
	#music .page_nav.fixed .page_nav_inner {
		position: fixed;
		bottom: 94px;
		height: auto;
	}
	#music .page_nav a + a {
		margin-top: 13.21%;
	}
	#music .page_nav a img { width: 100%; }
	
    #keyword .list {
        width: 87.5%;/*560/640*/
        margin: 0 auto;
        padding: 0;
    }
    #keyword .list .box {
        display: block;
        margin: 0 0 5.35%;/*30/560*/
    }
    #keyword .list .box.b2,
    #keyword .list .box.b4,
    #keyword .list .box.b6 { text-align: right; }
    #keyword .list .box h3 {
        text-align: left;
        width: 100%;
        padding: 0 0 1.78%;/*10/560*/
    }
    #keyword .list .box.b2 h3,
    #keyword .list .box.b4 h3,
    #keyword .list .box.b6 h3 { text-align: right; }
    #keyword .list .box.b1 h3 img { width: 58.92%;/*330/560*/ }
    #keyword .list .box.b2 h3 img { width: 50%;/*280/560*/ }
    #keyword .list .box.b3 h3 img { width: 48.75%;/*273/560*/ }
    #keyword .list .box.b4 h3 img { width: 36.07%;/*202/560*/ }
    #keyword .list .box.b5 h3 img { width: 38.75%;/*217/560*/ }
    #keyword .list .box.b6 h3 img { width: 33.21%;/*186/560*/ }
    #keyword .list .box p {
        display: inline-block;
        width: 85.71%;/*480/560*/
        text-align: justify;
    }
    #keyword .list .box.b4 p { width: 39.28%;/*220/560*/ }
    #keyword .list .box.b6 p { width: 60.71%;/*340/560*/ }

    #comic h3 { text-align: center; }
    #comic h3 img { width: 80%;/*512/640*/ }
    #comic .t1 {
        padding: 11.71% 0 15.62%;/*75 100/640*/
        text-align: center;
    }
    #comic .t1 a {
        padding: 0.8em 0 0;
        font-size: 1.125rem;/*27/24*/
        text-decoration: underline;
    }
    #comic ul {
        width: 96.87%;/*620/640*/
        margin: 0 auto;
    }
    #comic ul li {
        width: 50%;
        padding: 0 3.33%;/*20/600*/
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    #comic ul li,
    #comic ul li:nth-of-type(4n) { margin: 0 0 11.66%;/*70/600*/ }
    #comic .t2 {
        padding: 14.84% 0 7.81%;/*95 50/640*/
        text-align: center;
    }
    #comic .t2 img { width: 81.87%;/*524/640*/ }
    #comic .t3 {
        padding: 0 0 17.18%;/*110/640*/
        text-align: center;
    }
    #comic .t3 img { width: 83.28%;/*533/640*/ }
    #comic dl {
        padding: 0 17.18% 0 9.37%;/*110 60/640*/
        font-size: 1rem;
    }
    #comic dl dd { line-height: 1.8em; }
	
	#comment ul { margin: 0 6.09%; }
	#comment ul li + li { padding-top: 17.25%; }
	#comment ul li p { padding-top: 5.33%; }
	#comment ul li h3 { text-align: center; }
	#comment ul li:nth-child(1) h3 img { width:91.1%; } /*562*/
	#comment ul li:nth-child(2) h3 img { width:45.01%; }
	#comment ul li:nth-child(3) h3 img { width:50.71%; }
	#comment ul li:nth-child(4) h3 img { width:32.91%; }
	#comment ul li:nth-child(5) h3 img { width:94.83%; }
	#comment ul li:nth-child(6) h3 img { width:34.16%; }
	#comment ul li:nth-child(7) h3 img { width:42.5%; }
	#comment ul li:nth-child(8) h3 img { width:36.12%; }
	#comment ul li:nth-child(9) h3 img { width:36.47%; }
	#comment ul li:nth-child(10) h3 img { width:36.65%; }
	#comment ul li:nth-child(11) h3 img { width:36.47%; }
	#comment ul li:nth-child(12) h3 img { width:44.83%; }
	#comment ul li:nth-child(13) h3 img { width:36.29%; }
	#comment ul li:nth-child(14) h3 img { width:36.47%; }
	
	#movie_premier h3 { text-align: center; }
	#movie_premier h3 img { width:70.93%; }
	#movie_premier p { padding-top: 16.71%; margin: 0 4.68%; }
	
	#movie_premier > .note { padding-top: 10.31%; margin: 0 4.68%; }
	#movie_premier .application { padding-top: 12.9%; margin: 0 4.68%; }
	#movie_premier .application h3 img { width:33.16%; }
	#movie_premier .step { padding-top: 6.93%; text-align: center; }
	#movie_premier .step h4 { padding: 0 0 9.79%; }
	#movie_premier .step.s1 h4 img { width:96.21%; }
	#movie_premier .step.s2 h4 img { width:97.07%; }
	#movie_premier .step .step_inner {
		width:90.37%;
		margin: 0 auto;
		text-align: center;
	}
	#movie_premier .step .step_inner > p {
		padding-top: 7.03%;
	}
	#movie_premier .step .step_inner a { display: inline-block; }
	#movie_premier .step .step_inner .note { padding-top: 0.67%; font-size:0.71rem; font-size:3.12vw; }
	#movie_premier .step .step_inner > p img { width:65.4%; }
	#movie_premier .step .step_inner .btn img { width: 100%; }
	#movie_premier .step .step_inner .txt { font-size:0.85rem; font-size:3.75vw; }
	

    #modal_movie .window .btn {
        width: 9.33%;/*56/600*/
        margin: -12.83% 0 0;/*-77/600*/
    }
    #modal_movie .window .list { padding: 6.66% 0 0;/*40/600*/ }
    #modal_movie .window .list ul li {
        display: block;
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 0 3%;/*18/600*/
    }
    #modal_movie .window .list ul li:nth-of-type(2) { padding: 0 0 3%;}
    #modal_movie .window .list ul li a {
        display: block;
        width: 100%;
        padding: 6% 10%;/*36 60/600*/
        letter-spacing: 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
	
	#special h3 { text-align: center; }
	#special h3 img { width:70.93%; }
	#special p { padding-top: 16.71%; }
	
	#special #archive_sec { margin: 0 4.68%; }
	#special #archive_sec h3 img { width:72%; }
	
	#special #archive_sec .link { text-align: center; padding-top: 13.51%; }
	#special #archive_sec .link a { text-decoration: underline; }
	#special #archive_sec .link a + a { margin-left: 0; padding-top: 10%; }
	#special #archive_sec ul {  padding:12.16% 0 0; }
	#special #archive_sec ul li { padding: 7.68% 8.33%; }
	#special #archive_sec ul li #linelive {
		width: 100%;
		position: relative;
	}
	#special #archive_sec ul li p { padding-top:3%; }
	#special #archive_sec ul li p a { word-wrap: break-word; }
	
	#special #present_sec { margin: 0 4.68%; }
	#special #present_sec h3 img { width:83.5%; }
	#special #present_sec .note { padding-top: 10.51%; }
	#special #present_sec .form { text-align: center; }
	#special #present_sec .form #error_message {
		padding: 10% 0 3%;
		font-size: 3.45vw;
	}
	#special #present_sec form input[type="text"] {
		width:76%;
		padding: 2% 3%;
	}
	#special #present_sec form input[type="button"] {
	    width: 33.33%;
		padding: 4.5% 0;
		margin: 5% 0 0;
		line-height: 1em;
	}
	
	#present h3 { text-align: center; }
	#present h3 img { width:70.93%; }
	#present .present_inner { margin: 0 4.68%; }
	#present p { padding-top: 16.71%; }
	#present .list li + li { margin-left: 0; margin-top: 14.53%; }
	#present .list li:nth-child(4n) { margin-left: 0; }
	#present .list li:nth-child(n+4) { margin-top: 14.53%; }
	#present .list li .info { margin-bottom: 2%; }
	#present .list li .info span { font-size:5.46vw; }
	#present .list li {
		width: 100%;
		padding: 0 8.16%;
		box-sizing: border-box;
	}
	#present .list li h4 {
		font-size:1.07rem; font-size:4.68vw;
		min-height: auto;
	}
	#present .list li .download a {
		font-size:4.68vw;
	}
	
}
/*ONAIR REBUILD*/
#onairWrap {
    width:95%;
    margin:0 auto;
    line-height:1.6;
}
#onairWrap table {
    width:100%;
    margin-bottom:50px;
    border-collapse: collapse;
}
#onairWrap table caption {
    font-size:24px;
    margin-bottom:12px;
    color:#CE041A;
}
#onairWrap table th,
#onairWrap table td {
    width:50%;
    border:1px solid #CE041A;
    padding:10px 15px;
    font-size:16px;
    color:#000;
    text-align: left;
}
#onairWrap table th {
    background:#CE041A;
    color:#FFF;
}