/*	TBS reset
============================== */
body { line-height:1;}
.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;}
@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;}
}

/*	RESETS NL4.0.0base
============================== */
html, body, main, div, p, span, applet, 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, section, summary, time, mark, audio, ruby { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }
ol, ul, li { list-style: none; }
a img, form, fieldset { border: none; }
input, button, select { vertical-align: middle; }
textarea { vertical-align: top; overflow: auto; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary, .dpb { display: block; }
audio, canvas, progress { display: inline-block; }
progress { vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template, .nt, .alt { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline-width: 0; }
a:hover { text-decoration: none; }
abbr { cursor: help; border-bottom: 1px dotted #bbb; }
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }
b, strong, .bt { font-weight: 600; }
dfn { font-style: italic; }
mark { background: yellow; color: black; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border-style: none; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
figure { margin: 1em 40px; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
optgroup { font-weight: bold; }
button, input, select { overflow: visible; } /*Edge, IE*/
button, input, select, textarea { margin: 0; } /*Firefox and Safari*/
button, select { text-transform: none; } /*Edge, Firefox, and IE*/
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }
[disabled] { cursor: default; }
button, html [type="button"], [type="reset"], [type="submit"] {appearance: button; -webkit-appearance: button; } /*Android 4, iOS*/
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /*Firefox*/
button:-moz-focusring, input:-moz-focusring { outline: 1px dotted ButtonText; }
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; } /*Edge and IE ...etc*/
textarea { overflow: auto; } /*IE*/
[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; } /*IE10-*/
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /*Chrome*/
[type="search"] {appearance: textfield; -webkit-appearance: textfield; } /*Chrome and Safari*/
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /*Chrome and Safari on OS X*/
pre { overflow: auto; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }
q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; display: table;}
q:after, blockquote:after { clear: both; }
q::after, blockquote::after { content: ""; display: block; clear: both;}
.clearfix:before, .clearfix:after { content: ""; content: none; display: table;}
.clearfix:after { clear: both; }
.clearfix::after { content: ""; display: block; clear: both;}
.tCenter, .ct { text-align: center;}
.tLeft, .lt { text-align: left;}
.tRight, .rt { text-align: right;}
.url_lngtxt { word-break: break-all;}
@media print { .noprint { display: none;} }
/*txt*/
.nt { display: none;}
.bt { font-weight: bold; font-weight: 600;}
.ut { font-weight: lighter;}
.br_rsmp, .br_wsmp, .br_tablet, .br_pc, .br_wpc, .br_bwpc, .br_rsmpi, .br_wsmpi, .br_tableti, .br_pci, .br_wpci, .br_pci, .br_bwpci { display: none; }
.br_smp { display: -webkit-block; display: block; }
.br_smpi { display: -webkit-inline; display: inline; }
@media (min-width: 480px) { 
.br_smp, .br_smpi { display: none; } 
.br_rsmp { display: -webkit-block; display: block; } 
.br_rsmpi { display: -webkit-inline; display: inline; } 
}
@media (min-width: 640px) { 
.br_rsmp, .br_rsmpi { display: none; } 
.br_wsmp { display: -webkit-block; display: block; } 
.br_wsmpi { display: -webkit-inline; display: inline; } 
}
@media (min-width: 768px) { 
.br_wsmp, .br_wsmpi { display: none; } 
.br_tablet { display: -webkit-block; display: block; } 
.br_tableti { display: -webkit-inline; display: inline; } 
}
@media (min-width: 1000px) { 
.br_tablet, .br_tableti { display: none; } 
.br_pc { display: -webkit-block; display: block; } 
.br_pci { display: -webkit-inline; display: inline; } 
}
@media (min-width: 1200px) { 
.br_pc, .br_pci { display: none; } 
.br_wpc { display: -webkit-block; display: block; } 
.br_wpci { display: -webkit-inline; display: inline; } 
}
@media (min-width: 1400px) { 
.br_wpc, .br_wpci { display: none; } 
.br_bwpc { display: -webkit-block; display: block; } 
.br_bwpci { display: -webkit-inline; display: inline; } 
}
br { letter-spacing: 0; }
.ct { text-align: center;}
.lt { text-align: left;}
.rt { text-align: right;}
/*_size*/
.f300 { font-size: 300%;}
.f240 { font-size: 240%;}
.f220 { font-size: 220%;}
.f200 { font-size: 200%;}
.f180 { font-size: 180%;}
.f170 { font-size: 180%;}
.f160 { font-size: 160%;}
.f150 { font-size: 150%;}
.f140 { font-size: 140%;}
.f130 { font-size: 130%;}
.f125 { font-size: 125%;}
.f120, .big { font-size: 120%;}
.f110 { font-size: 110%;}
.f105 { font-size: 105%;}
.f100 { font-size: 100%;}
.f95 { font-size: 95%;}
.f90, .small { font-size: 90%;}
.f85 { line-height: normal; font-size: 85% !important;}
.f75 { line-height: normal; font-size: 75% !important;}
.f65 { line-height: normal; font-size: 65% !important;}
.f64 { line-height: normal; font-size: 64% !important;}
.f60 { line-height: normal; font-size: 60% !important;}
/*_height*/
.lh100 { line-height: 100%;}
.lh110 { line-height: 110%;}
.lh120 { line-height: 120%;}
.lh130 { line-height: 130%;}
.lh140 { line-height: 140%;}
.lh150 { line-height: 150%;}
.lh160 { line-height: 160%;}
.lh170 { line-height: 170%;}
.lh180 { line-height: 180%;}
.lh200 { line-height: 200%;}
.lh230 { line-height: 230%;}
/*space*/
.pd0 { padding: 0;}
.pd1 { padding: 1em;}
.pdt1 { padding-top: 1em;}
.pdt3 { padding-top: 3em;}
.pdt0 { padding-top: 0;}
.pdt05 { padding-top: .5em;}
.pdb05 { padding-bottom: .5em;}
.pdb0 { padding-bottom: 0;}
.pdb1 { padding-bottom: 1em;}
.pdl1 { padding-left: 1em;}
.pd05 { padding: .5em;}
.mgat { margin: auto;}
.mgtb1 { margin: 1em auto;}
.ls-1 { letter-spacing: -.1em;}
.ls-05 { letter-spacing: -0.05em;}
.ls-075 { letter-spacing: -0.075em;}
.ls0 { letter-spacing: 0;}
.ls1 { letter-spacing: .1em;}
.ls2 { letter-spacing: .2em;}
/*color*/
.black { color: rgba(0, 0, 0, 1);}
.lamp { color: rgba(42, 43, 46, 1);}
.chacoal { color: rgba(59, 63, 74, 1);}
.steel { color: rgba(129, 137, 157, 1);}
.silver { color: rgba(192, 196, 206, 1);}
.pearl { color: rgba(236, 237, 240, 1);}
.snow { color: rgba(246, 247, 250, 1);}
.white { color: rgba(255, 255, 255, 1);}
.blue { color: rgba(0, 80, 255, 1);}
.water { color: rgba(120, 180, 255, 1);}
.sky { color: rgba(160, 200, 250, 1);}
.green { color: rgba(50, 200, 60, 1);}
.yellow { color: rgba(255, 240, 0, 1);}
.orange { color: rgba(255, 170, 30, 1);}
.pink { color: rgba(255, 145, 160, 1);}
.red { color: rgba(255, 60, 30, 1);}
.navy { color: rgba(28, 37, 80, 1);}
.col { color: rgba(195, 13, 35, 1);}
.col1 { color: rgba(179, 11, 23, 1);}
.col2 { color: rgba(122, 58, 30, 1);}
a { text-decoration: none;}
a:link { color: rgba(255, 255, 255, 1);}
a:visited { color: rgba(255, 255, 255, 1);}
a:active { color: rgba(122, 30, 37, 1);}
a:hover { color: rgba(255, 255, 255, .8);}
.bktotop a { color: rgba(255, 255, 255, 1);}
.nolnk { opacity: .35;}

.kome li { padding-left: 1em;}
.kome li::before { content: '※ '; margin-left: -1.25em;}
/*etc*/
@media print { .noprint, img { display: none;} }
.cover { width: 100%; height: 100%; background: url(../img/cover.png) repeat; display: block; position: absolute; top: 0; left: 0; }
.cover img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
img { pointer-events: none;}
.nt_txt { font-size: 0; width: 0; height: 0; overflow: hidden; opacity: 0;}
/*lazyload*/
.lazyload, .lazyloading { opacity: 0;}
.lazyloaded { opacity: 1; transition: all 3000ms;}
/*fadein*/
.fadein { -webkit-animation: fadeIn 5s ease 1 normal; animation: fadeIn 5s 1 normal;}
@-webkit-keyframes fadeIn { 0% {opacity: 0} 100% {opacity: 1}}
@keyframes fadeIn { 0% {opacity: 0} 100% {opacity: 1}}
/*fadeout*/
.fadeout { -webkit-animation: fadeout 5s ease 1 normal; animation: fadeout 5s 1 normal;}
@-webkit-keyframes fadeout { 0% {opacity: 1} 100% {opacity: 0}}
@keyframes fadeout { 0% {opacity: 1} 100% {opacity: 0}}

/*	ORG
============================== */
/*loader*/
.ld_sp { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%);}
.loader { width: 50px; aspect-ratio: 1; display: grid; border: 2px solid rgba(255, 255, 255, .5); border-radius: 50%; border-color: rgba(253, 230, 230, 1) rgba(255, 255, 255, .5); animation: l16 1s infinite linear;}
.loader::before, .loader::after {     content: ""; grid-area: 1/1; margin: 2px; border: inherit; border-radius: 50%;}
.loader::before { border-color: #f03355 rgba(255, 255, 255, .5); animation: inherit;  animation-duration: .5s; animation-direction: reverse;}
.loader::after { margin: 8px;}
@keyframes l16 {  100%{transform: rotate(1turn)} }

.sdt_red { text-shadow: rgba(100, 0, 10, 1) 1px 1px 10px;}
.min { font-family: "shippori-mincho-b1", serif; font-weight: 700; font-style: normal;}
.min0 { font-family:Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif; font-weight: 700; font-style: normal;}

/*	COMMON
============================== */
html { overflow-y: visible; min-height: 100%;}
body { width: 100%; min-height: 100vh; position: relative; margin: 0!important; background-color: rgba(239, 0, 29, 1); color: rgba(255, 255, 255, 1); z-index: 0;}
body.fixed { position: fixed; width: 100%; height: 100%; left: 0;}
body a { text-decoration: none; outline-style: none;}
.fix_bg { width: 100%; height: 100%; position: fixed; background-repeat: repeat; -webkit-background-size: cover; background-size: cover; background-image: url(../img/bg.jpg); background-position: center center; z-index: -1;}
.fix_bg .fix_bgsp { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
#con_container { width: 100%; font-size: 85%; font-family: kiwi-maru, sans-serif; font-weight: 400; font-style: normal;}
#contents { width: 100%;}
.wrap { width: 90%; max-width: 980px; margin: 0 auto;}
/*for_W480-*/
@media all and (min-width: 480px) { 
#con_container { font-size: 90%;}
}
/*for_W640-*/
@media all and (min-width: 640px) { 
#con_container { font-size: 95%;}
}
/*for_W768-*/
@media all and (min-width: 768px) { 
#con_container { font-size: 100%;}
}
/*for_W1000-*/
@media all and (min-width: 1000px) { 
#con_container { font-size: 105%;}
}
/*for_W1200-*/
@media all and (min-width: 1200px) { 
#con_container { font-size: 110%;}
}

/* 	photo
============================== */
.cimg_sp-t { width: 90%; max-width: 800px; margin: .5em auto; position: relative; z-index: 1000;}
.cimg_sp-y { width: 90%; max-width: 1000px; margin: .5em auto; position: relative; z-index: 1000;}
.cimg_sp-r { width: 90%; max-width: 900px; margin: .5em auto; position: relative; z-index: 1000;}
.cimg_sp-t img, .cimg_sp-y img, .cimg_sp-r img { width: 100%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: relative; box-shadow: 1px 1px 8px 0 rgba(80, 26, 0, .3);}

.photo { width: 100%; margin: .5em auto 1em auto; text-align: center; user-select:none; -webkit-user-select:none; -ms-user-select: none; -moz-user-select:none; -khtml-user-select:none; -webkit-user-drag:none; -khtml-user-drag: none; -webkit-touch-callout: none;}
.daigae { margin: 0 auto;}
.photo img { width: 100%; background-repeat: no-repeat; -webkit-background-size: cover; background-size: cover;}
.prgimg10090 { max-width: 90%;}
.prgimg10080 { max-width: 80%;}
.prgimg10070 { max-width: 70%;}
.prgimg10060 { max-width: 60%;}
.prgimg10100 img, .prgimg10090 img, .prgimg10080 img, .prgimg10070 img, .prgimg10060 img, .prgimg100100-90 img { width: 100%; max-width: 100%;}
/*for_W768-*/
@media all and (min-width: 768px) {
.photo { width: 96%; max-width: 960px;}
.prgimg10090 { max-width: 90%;}
.prgimg10080 { max-width: 80%;}
.prgimg10070 { max-width: 70%;}
.prgimg10060 { max-width: 60%;}
.prgimg100100-90 { max-width: 90%;}
.prgimg100100-90 img { max-width: 100%;}
}

/* 	youtube
============================== */
.movie_sp { display: block; box-sizing: border-box; width: 100%; margin: 1em auto; box-shadow: 1px 1px 8px 0 rgba(164, 5, 25, .3);}
.movie_sp0 { margin: 1em auto 0 auto;}
.movie_sp .movie { background-color: rgba(0, 0, 0, 1);}
.movie_sp .movie .play_btn { width: 60px; height: 60px;}
.movie_sp .movie .play_txt { font-size: 120%;}
.movie { width: 100%; height: 0; padding-top: 56.25%; position: relative; overflow: hidden; z-index: 200;}
.movie a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
.movie a:hover { opacity: .8;}
.movie img { width: 100%; height: 100%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: absolute; top: 0; left: 0;}
.movie .play_btn { width: 40px; height: 40px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); display: block; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; background-image: url(../img/play.png);}
.movie iframe, .movie video, .movie .fp-player, .movie .tbs-player, .movie object { width: 100%; height: 100%; position: absolute; left: 0; top: 0; border: 0; border: none;}
/*for_W640-*/
@media all and (min-width: 640px) { 
.movie .play_btn, .movie .play_btn-red { width: 60px; height: 60px;}
}

/*	header
============================== */
#con_header { width: 100%; margin: 0 auto; box-shadow: 0px 14px 12px -6px rgba(131, 0, 16, .5);}
#hd_sp { width: 100%; margin: 0 auto;}
#poster_sp { width: 100%; height: 0; padding-top: 70.956521739130435%; padding-top: -webkit-calc(1632 / 2300 * 100%); padding-top: calc(1632 / 2300 * 100%); position: relative;}
#poster_fadein { width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: none;}
#poster { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
/*contents*/
#p_con #con_header {background: linear-gradient(to right, rgba(189,0,6,1) 0%,rgba(189,0,6,1) 50%,rgba(0,0,0,1) 51%,rgba(0,0,0,1) 100%);}
#p_con #hd_sp { max-width: 1100px; background: linear-gradient(to right, rgba(189,0,6,1) 0%,rgba(0,0,0,1) 100%);}
#p_con #logo_sp { width: 100%; height: 0; padding-top: 24.761904761904762%; padding-top: -webkit-calc(520 / 2100 * 100%); padding-top: calc(520 / 2100 * 100%); position: relative;}
#p_con #logo_fadein { width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: none;}
#p_con #logo { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#p_con #logo a { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0;}

/*	sns_btn
============================== */
#sns_sp { width: 70%; max-width: 360px; margin: 1.5em auto;}
#sns_btn { width: 100%; height: 0; padding-top: 22.666666666666667%; padding-top: -webkit-calc(170 / 750 * 100%); padding-top: calc(170 / 750 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: relative;}
#sns_btn .maru_sp { width: 19.733333333333333%; width: -webkit-calc(148 / 750 * 100%); width: calc(148 / 750 * 100%); position: absolute; top: 5.882352941176471%; top: -webkit-calc(10 / 170 * 100%); top: calc(10 / 170 * 100%);}
#sns_btn #maru_x { left: 49.466666666666667%; left: -webkit-calc(371 / 750 * 100%); left: calc(371 / 750 * 100%);}
#sns_btn #maru_insta { left: 72.933333333333333%; left: -webkit-calc(547 / 750 * 100%); left: calc(547 / 750 * 100%);}
#sns_btn .maru_sp a { width: 100%; height: 0; padding-top: 100%; display: block; border-radius: 50%;}
#sns_btn .maru_sp a:hover { background-color: rgba(239, 0, 29, .2);}

/*	sns_btn-full
============================== */
#snsf_set { width: 96%; max-width: 960px; margin: 0 auto;}
#snsf_sp { width: 80%; max-width: 360px; margin: 0 auto;}
#snsf_btn { width: 100%; height: 0; padding-top: 21.621621621621622%; padding-top: -webkit-calc(160 / 740 * 100%); padding-top: calc(160 / 740 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: relative;}
#snsf_btn .maru_sp { width: 16.756756756756757%; width: -webkit-calc(124 / 740 * 100%); width: calc(124 / 740 * 100%); position: absolute; top: 11.25%; top: -webkit-calc(18 / 160 * 100%); top: calc(18 / 160 * 100%); border-radius: 50%;}
#snsf_btn #maru_x { left: 37.432432432432432%; left: -webkit-calc(277 / 740 * 100%); left: calc(277 / 740 * 100%);}
#snsf_btn #maru_insta { left: 56.864864864864865%; left: -webkit-calc(420.8 / 740 * 100%); left: calc(420.8 / 740 * 100%);}
#snsf_btn #maru_tiktok { left: 76.594594594594595%; left: -webkit-calc(566.8 / 740 * 100%); left: calc(566.8 / 740 * 100%);}
#snsf_btn .maru_sp a { width: 100%; height: 0; padding-top: 100%; display: block; border-radius: 50%;}
#snsf_btn .maru_sp a:hover { background-color: rgba(239, 0, 29, .2);}
/*for_W1000-*/
@media all and (min-width: 1000px) { 
#snsf_set { text-align: right;}
#snsf_set:before, #snsf_set:after { content: ""; content: none; display: table;}
#snsf_set:after { clear: both; }
#snsf_set::after { content: ""; display: block; clear: both;}
#snsf_sp { float: right;}
}

/*	contents
============================== */
#catch_set { width: 100%; text-align: center;}
#catch_txt { font-size: 110%; line-height: 160%;}
.con_sp { width: 100%; margin: 3em auto 1em auto; position: relative; z-index: 10;}
.con_sp .contxt_sp { box-sizing: border-box; width: 95%; margin: 0 0 1em 4.9%; padding: 4em 1em 1.5em 1em; background-color: rgba(255, 255, 255, .9); position: relative; z-index: 150; color: rgba(0, 0, 0, 1);}
/*cast_pre*/
#cast_sp h2 { display: block; width: 50%; max-width: 243px; position: absolute; top: -1.5em; left: 0; z-index: 200;}
#cast_sp h2 .h2_img { display: block; width: 100%; height: 0; padding-top: 25.154639175257732%; padding-top: -webkit-calc(122 / 485 * 100%); padding-top: calc(122 / 485 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#cast_sp .contxt_sp table { width: auto; margin: 0 auto; font-size: 120%;}
#cast_sp .contxt_sp th { text-align: right; padding: 0 1em 1.2em 0; white-space: nowrap; font-family: "shippori-mincho-b1", serif; font-weight: 700; font-style: normal; color: rgba(215, 22, 24, 1)}
#cast_sp .contxt_sp td { text-align: left; padding: 0 0 1em 0; font-size: 120%; font-weight: 500;}
#catch_set .cimg_sp-t { width: 90%; max-width: 500px; margin: 1.5em auto;}
#catch_set #img_smp { display: block;}
#catch_set #img_pc { display: none;}
/*cast_plus_pre*/
#cast2_sp { margin: 1em auto;}
#cast2_sp h2 { text-align: center; padding-bottom: .5em;}
#cast2_sp h2::before { content: '♥ '; color: rgba(0, 0, 0, 1);}
#cast2_sp h2::after { content: ' ♥'; color: rgba(0, 0, 0, 1);}
#cast2_sp .contxt_sp { width: 90%; margin: 0 auto .5em auto; padding: 1em;}
#cast2_sp .contxt_sp table { margin: 0 auto; font-size: 110%;}
#cast2_sp .contxt_sp table caption { padding-bottom: .75em; text-align: center; color: rgba(195, 13, 35, 1); font-weight: 700;}
#cast2_sp .contxt_sp table caption::before { content: '［ ';}
#cast2_sp .contxt_sp table caption::after { content: ' ］ ';}
#cast2_sp .contxt_sp th { text-align: right; padding: .35em 1em .35em 0; white-space: nowrap; font-family: "shippori-mincho-b1", serif; font-weight: 700; font-style: normal; color: rgba(215, 22, 24, 1)}
#cast2_sp .contxt_sp td { text-align: left; padding: .35em 0; font-size: 120%; font-weight: 500;}
/*staff_pre*/
#staff_sp h2 { display: block; width: 61%; max-width: 298px; position: absolute; top: -1.5em; left: 0; z-index: 200;}
#staff_sp h2 .h2_img { display: block; width: 100%; height: 0; padding-top: 20.469798657718121%; padding-top: -webkit-calc(122 / 596 * 100%); padding-top: calc(122 / 596 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#staff_sp .contxt_sp { padding: 4em 1em 1em 1em;}
#staff_sp .contxt_sp table { width: auto; margin: 0; font-size: 110%;}
#staff_sp .contxt_sp th { text-align: left; padding: .1em 0 1em 0; white-space: nowrap; font-family: "shippori-mincho-b1", serif; font-weight: 700; font-style: normal; color: rgba(215, 22, 24, 1); font-size: 90%; vertical-align: top; line-height: 140%;}
#staff_sp .contxt_sp td { text-align: left; padding: 0 0 1em 0; font-size: 100%; font-weight: 500; line-height: 140%;}
/*intro_pre*/
#intro_sp { box-sizing: border-box; width: 96%; max-width: 980px; margin: 2em auto; border: 1px solid rgba(255, 255, 255, 1); padding: .5em .5em 0 .5em;}
#intro_sp article h2 { font-size: 120%; font-family: "shippori-mincho-b1", serif; font-weight: 700; font-style: normal; text-align: center; padding: 0 1em;}
#intro_sp article h2 span { padding: 0 1em;}
#intro_sp article h2::before { content: ''; display: inline-block; width: 45.333333333333333px; height: 5.666666666666667px; background-image: url(../img/h2_p.png); -webkit-background-size: contain; background-size: contain; vertical-align: middle;}
#intro_sp article h2::after { content: ''; display: inline-block; width: 45.333333333333333px; height: 5.666666666666667px; background-image: url(../img/h2_p.png); -webkit-background-size: contain; background-size: contain; vertical-align: middle; transform: rotate(180deg);}
#intro_sp article p { padding: 1em 0; line-height: 170%; color: rgba(255, 240, 240, 1);}
#intro_sp article p.mds_p { padding: 1.5em 0 .5em 0; line-height: 170%; color: rgba(255, 255, 255, 1);}
#hl_sp, #story_sp { box-sizing: border-box; width: 100%; background-color: rgba(145, 5, 4, .75); padding: 1.5em; margin-bottom: .5em;}

/*ORG*/
#org_sp { margin: 2em auto;}
#org_sp h2 { font-size: 120%; font-family: "shippori-mincho-b1", serif; font-weight: 700; font-style: normal; text-align: center; padding: 0 1em;}
#org_sp h2 span { padding: 0 1em;}
#org_sp h2::before { content: ''; display: inline-block; width: 45.333333333333333px; height: 5.666666666666667px; background-image: url(../img/h2_p-w.png); -webkit-background-size: contain; background-size: contain; vertical-align: middle;}
#org_sp h2::after { content: ''; display: inline-block; width: 45.333333333333333px; height: 5.666666666666667px; background-image: url(../img/h2_p-w.png); -webkit-background-size: contain; background-size: contain; vertical-align: middle; transform: rotate(180deg);}
#org_sp p { padding: 1em 0; line-height: 170%; color: rgba(255, 240, 240, 1);}
#org_sp .oimg_sp { width: 90%; max-width: 500px; margin: 0 auto 3em auto;}
#org_sp .oimg_sp a { display: block; width: 100%; height: 0; padding-top: 24%; padding-top: -webkit-calc(240 / 1000 * 100%); padding-top: calc(240 / 1000 * 100%); position: relative; box-shadow: 1px 1px 8px 0 rgba(80, 26, 0, .3);}
#org_sp .oimg_sp img { width: 100%; height: 100%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: absolute; top: 0; left: 0;}
#org_sp .oimg_sp a:hover { opacity: .8;}
/*for_W768-*/
@media all and (min-width: 768px) { 
#catch_set { position: relative;}
#catch_set:before, #catch_set:after { content: ""; content: none; display: table;}
#catch_set:after { clear: both; }
#catch_set::after { content: ""; display: block; clear: both;}
#catch_txt { width: 60%; text-align: right; float: left;}
#catch_set .cimg_sp-t { width: 38%; margin: 0; float: right;}
#catch_set #img_smp { display: none;}
#catch_set #img_pc { display: block;}
#cast_sp { width: 60%; float: left;}
#cast_sp .contxt_sp table { font-size: 110%;}
#cast2_sp { margin: 0em auto 2em auto;}
#cast2_sp #cast2_set { width: 100%; display: flex; flex-flow: row nowrap; justify-content: space-between;}
#cast2_sp .contxt_sp { width: 33%; flex-basis: 33%; margin: 0;}
#cast2_sp .contxt_sp table { font-size: 80%;}
}
/*for_W1000-*/
@media all and (min-width: 1000px) { 
.wrap { width: 96%;}
.con_sp { margin: 4em auto 1em auto; font-size: 120%;}
#catch_txt { width: 60%; font-size: 150%; line-height: 170%; padding-top: .5em;}
#catch_set .cimg_sp-t { width: 36%; margin: 0; float: right;}
#cast_sp { width: 60%; float: left; margin-top: 2em;}
#cast_sp .contxt_sp { padding: 4em 1em 2em 1em;}
#staff_sp { width: 97%; max-width: 950px; margin-left: 2.9%;}
#staff_sp .contxt_sp { padding: 4em 1em 2em 2em;}
#cast2_sp #cast2_set { width: 97%; margin: 0 0 2em 2.9%;}
#cast2_sp .contxt_sp table { font-size: 90%;}
}


/*	modal
============================== */
.modal { display: none; height: 100vh; position: fixed; top: 0; left: 0; width: 100%; z-index: 1000000; background: rgba(195, 13, 35, .9); color: rgba(0, 0, 0, 1);}
.modal__bg { height: 100vh; position: absolute; width: 100%;}
.modal__content { box-sizing: border-box; width: 90%; height: 70%; max-width: 900px; background: rgba(255, 255, 255, 1); padding: 0 1em; position: absolute; top: 47%; left: 50%; transform: translate(-50%,-50%); line-height: 160%; overflow-y: scroll; overflow-y: auto;}
#rei_cont, #arata_cont, #gan_cont { max-width: 400px; max-height: 600px; top: 50%; left: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%, -50%); line-height: 100%; padding: 0; background: rgba(145, 5, 4, 0);}
.js-modal-open, .js-modal-close { cursor: pointer;}
.modal .close_btn { width: 50px; height: 50px; position: absolute; top: 10px; right: 10px;}
.modal .close_btn::before, .close_btn::after { content: ''; position: absolute; top: 50%; left: 50%; width: 2px; height: 50px; background: rgba(255, 255, 255, 1);}
.modal .close_btn::before { transform: translate(-50%,-50%) rotate(45deg);}
.modal .close_btn::after { transform: translate(-50%,-50%) rotate(-45deg);}

.modal__content .imgall, .modal__content .txtall { width: 100%;}
.modal__content .imgsp0 { width: 100%; height: 0; padding-top: 100%; position: relative;}
.modal__content .imgsp { width: 100%; height: 100%; background-repeat: no-repeat; -webkit-background-size: cover; background-size: cover; -webkit-background-position: top center; background-position: top center; position: absolute; top: 0; left: 0;}
.modal__content .imgsp2 { opacity: 0; -webkit-animation: fadeInOut2 10000ms linear 3000ms infinite normal; animation: fadeInOut2 10000ms linear 3000ms infinite normal;}
.modal__content .imgsp3 { opacity: 0; -webkit-animation: fadeInOut 10000ms linear 6000ms infinite normal; animation: fadeInOut 10000ms linear 6000ms infinite normal;}
/*fadeinout*/
@-webkit-keyframes fadeInOut { 0% { opacity: 0;} 20% { opacity: 0;} 30% { opacity: 1;} 60% { opacity: 1;} 70% { opacity: 0;} 100% { opacity: 0;}}
@keyframes fadeInOut { 0% { opacity: 0;} 20% { opacity: 0;} 30% { opacity: 1;} 60% { opacity: 1;} 70% { opacity: 0;} 100% { opacity: 0;}}
@-webkit-keyframes fadeInOut2 { 0% { opacity: 0;} 20% { opacity: 0;} 35% { opacity: 1;} 60% { opacity: 1;} 80% { opacity: 0;} 100% { opacity: 0;}}
@keyframes fadeInOut2 { 0% { opacity: 0;} 20% { opacity: 0;} 35% { opacity: 1;} 60% { opacity: 1;} 80% { opacity: 0;} 100% { opacity: 0;}}

.modal__content .namesp { color: rgba(255, 255, 255, 1); padding: 1em 0; text-align: center; font-size: 130%;}
.modal__content .infosp { background: rgba(145, 5, 4, .75); color: rgba(255, 255, 255, 1); padding: .75em; font-size: 100%; line-height: 160%;}


/*for_W768-*/
@media screen and (min-width: 768px) {
.modal__content { height: 80%; top: 50%; left: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%, -50%);}
#rei_cont, #arata_cont, #gan_cont { max-width: 700px; max-height: 500px; top: 50%; left: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%, -50%); display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center;}

.modal__content .imgall { width: 40%; flex-basis: 40%;}
.modal__content .txtall { width: 58%; flex-basis: 58%;}

.modal__content .imgsp0 { width: 100%; height: 0; padding-top: 140%;}
.modal__content .namesp { text-align: left; font-size: 140%;}
.modal__content .infosp { padding: 1.5em; line-height: 170%;}
}
/*for_W1000-*/
@media screen and (min-width: 1000px) {
#rei_cont, #arata_cont, #gan_cont { max-width: 900px; max-height: 600px;}
}
/*for_W1200-*/
@media screen and (min-width: 1200px) {
#rei_cont, #arata_cont, #gan_cont { max-width: 1000px; max-height: 600px;}
}

/*	parts
============================== */
.detail_ico { width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}

/*	navi
============================== */
#con_nav { width: 96%; max-width: 1000px; margin: 1em auto .5em auto;}
#con_nav ul { width: 100%; display: flex; flex-flow: row wrap; justify-content: center; align-items: center;}
#con_nav li { box-sizing: border-box; flex-basis: 30%; margin: 0 1% .75em 1%;}
#con_nav li .mn { width: 100%; height: 0; padding-top: 52%; background-color: rgba(208, 0, 25, .6); position: relative;}
#con_nav li .mn_txt { width: 100%; text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%);}
#con_nav li .mn_txt-j { color: rgba(0, 0, 0, 1); font-size: 64%;}
#con_nav li .mn a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#con_nav li .mn a:hover { background-color: rgba(0, 0, 0, .5);}
#con_nav li .mn a:hover .mn_txt-j { color: rgba(208, 0, 25, 1);}
#con_nav li .mn .update { display: inline-block; font-size: 65%; padding: .2em .2em .3em .2em; background-color: rgba(0, 0, 0, 1); color: rgba(255, 255, 255, 1); position: absolute; top: -.4em; right: -.5em;}
#con_nav li .mn .update:before { content: ""; position: absolute; top: calc(100% - 5px); top: -webkit-calc(100% - 5px); left: 0; height: 0; width: 0; border-right: 5px solid rgba(0, 0, 0, 1); border-top: 5px solid transparent; border-bottom: 5px solid transparent; transform: rotate(45deg);}
/*for_W640-*/
@media all and (min-width: 640px) { 
#con_nav ul { flex-flow: row nowrap;}
#con_nav li { flex-basis: 18.5%; margin: 0 .5% .75em .5%;}
}
/*for_W1000-*/
@media all and (min-width: 1000px) { 
#con_nav li .mn { padding-top: 50%; font-size: 110%;}
}
/*	stream
============================== */
#stream_sp { width: 96%; max-width: 1000px; margin: 0 auto;}
#stream_sp ul { width: 100%; display: flex; flex-flow: row wrap; justify-content: center; align-items: center;}
#stream_sp li { box-sizing: border-box; flex-basis: 47%; margin: 0 1% .75em 1%;}
#stream_sp li .stream { width: 100%; height: 0; padding-top: 24%; background-color: rgba(255, 255, 255, 1); position: relative;}
#stream_sp li .stream a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#stream_sp li .stream a:hover { opacity: .8; background-color: rgba(208, 0, 25, .1);}
#stream_sp li .icon_sp { width: 60%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%);}
#stream_sp li .icon_sp .stream_icon { width: 100%; height: 0; padding-top: 24.324324324324324%; padding-top: -webkit-calc(90 / 370 * 100%); padding-top: calc(90 / 370 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#stream_sp li .stream_txt { width: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); text-align: center; color: rgba(0, 0, 0, 1); font-size: 120%;}
#stream_sp li .stream .detail_ico { width: 8%; position: absolute; top: 5px; right: 5px;}
#stream_sp li .stream #streaminfo_link { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#stream_sp li .stream #streaminfo_link:hover { opacity: .9; background-color: rgba(208, 0, 25, .1);}
/*for_W640-*/
@media all and (min-width: 640px) { 
#stream_sp li .stream_txt { font-size: 140%;}
#stream_sp ul { flex-flow: row nowrap;}
#stream_sp li { flex-basis: 31%; margin: 0 .75% .75em .75%;}
}
/*	contents_full
============================== */
/*story_full*/
#story_sp-f { margin: 2em auto 1em auto;}
#story_sp-f h2 { display: block; width: 61%; max-width: 298px;}
#story_sp-f h2 .h2_img { display: block; width: 100%; height: 0; padding-top: 20.469798657718121%; padding-top: -webkit-calc(122 / 596 * 100%); padding-top: calc(122 / 596 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#story_sp-f #oadt_txt { box-sizing: border-box; width: 100%; text-align: right; font-size: 120%; padding-top: .5em; letter-spacing: .05em; margin: -2.5em auto 0 auto;}
#story_sp-f #story_cont { box-sizing: border-box; width: 100%; margin: 0 auto; position: relative; z-index: 150; line-height: 160%; font-size: 95%;}
#story_sp-f .lnk_sp { width: 100%; text-align: center;}
#story_sp-f .lnk { display: inline-block; background-color: rgba(255, 255, 255, .9); margin: 1em auto; box-shadow: 1px 1px 8px 0 rgba(164, 5, 25, .3);}
#story_sp-f .lnk a { display: block; padding: .5em 1.5em; color: rgba(0, 0, 0, 1);}
#story_sp-f .lnk a:hover { opacity: .6;}
#story_sp-f .dv_s { display: inline-block;}
#story_sp-f .dv_p { display: none;}
/*character*/
#chara_sp { margin: 3em auto 1em auto;}
#chara_sp h2 { display: block; width: 100%; max-width: 600px; margin: 0 auto;}
#chara_sp h2 .h2_img { display: block; width: 100%; height: 0; padding-top: 12.631578947368421%; padding-top: -webkit-calc(144 / 1140 * 100%); padding-top: calc(144 / 1140 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#chara_sp #chara_cont { width: 100%; margin: 1.5em auto;}
#chara_sp #chara_cont ul { width: 100%; display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center;}
#chara_sp #chara_cont li { box-sizing: border-box; flex-basis: 32%; margin: 0 0 .75em 0;}
#chara_sp #chara_cont #rei { order: 2;}
#chara_sp #chara_cont #arata { order: 1;}
#chara_sp #chara_cont #gan { order: 3;}
#chara_sp #chara_cont li .chara { width: 100%; height: 0; padding-top: 100%; box-shadow: 1px 1px 8px 0 rgba(164, 5, 25, .3); background-repeat: no-repeat; -webkit-background-size: cover; background-size: cover; -webkit-background-position: top center; background-position: top center; position: relative;}
#chara_sp #chara_cont li .chara .detail_ico { width: 16%; max-width: 20px; position: absolute; top: 2px; right: 2px; opacity: .3;}
#chara_sp #chara_cont li .name_e { font-size: 80%; text-align: center; color: rgba(0, 0, 0, 1); padding-top: .02em;}
#chara_sp #chara_cont .js-modal-open:hover { opacity: .9;}
/*for_W768-*/
@media all and (min-width: 768px) { 
#chara_sp #chara_cont li .name_e { font-size: 90%; padding-top: .1em;}
}
/*news*/
#news_sp { margin: 5em auto 0 auto; position: relative; z-index: 10;}
#news_sp h2 { display: block; width: 48%; max-width: 220px; position: absolute; top: -1.8em; left: 50%; transform: translate(-50%, 0); -webkit-transform: translate(-50%, 0); z-index: 200;}
#news_sp h2 .h2_img { display: block; width: 100%; height: 0; padding-top: 25.154639175257732%; padding-top: -webkit-calc(122 / 485 * 100%); padding-top: calc(122 / 485 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#news_sp #news_cont { box-sizing: border-box; width: 100%; margin: 0 auto; padding: 2em 1em 1.5em 1em; background-color: rgba(255, 255, 255, .3); color: rgba(0, 0, 0, 1); z-index: 150;}
#news_sp #news_cont #news_wh { box-sizing: border-box; width: 100%; max-width: 1000px; margin: .5em auto; max-height: 220px; overflow-y: auto; padding: 0 1em; position: relative; z-index: 250;}
#news_sp #news_cont #news_wh ul { width: 100%; display: flex; flex-flow: row wrap; justify-content: center;}
#news_sp #news_cont #news_wh li { box-sizing: border-box; flex-basis: 100%; margin: .25em auto; background-color: rgba(255, 255, 255, .9); border: 1px solid rgba(255, 255, 255, 1);}
#news_sp #news_cont #news_wh li a { position: relative; z-index: 260; color: rgba(0, 0, 0, 1);}
#news_sp #news_cont #news_wh li a:hover { opacity: .7;}
#news_sp #news_cont #news_wh .news_set { display: flex; flex-flow: row nowrap; justify-content: space-between;}
#news_sp #news_cont #news_wh .np_ps { flex-basis: 44%; background-color: rgba(0, 0, 0, 1);}
#news_sp #news_cont #news_wh .np_ps .img_sp { width: 100%; height: 0; padding-top: 66.129032258064516%; padding-top: -webkit-calc(246 / 372 * 100%); padding-top: calc(246 / 372 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; -webkit-background-position: center center; background-position: center center;}
#news_sp #news_cont #news_wh .nt_ps { box-sizing: border-box; flex-basis: 55%; padding: .5em; font-size: 90%; position: relative;}
#news_sp #news_cont #news_wh .nt_ps .update { color: rgba(215, 22, 24, 1);}
#news_sp #news_cont #news_wh .nt_ps .uptxt { padding: 1em 0 0 0; line-height: 140%; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3;}
/*for_W640-*/
@media all and (min-width: 640px) { 
#news_sp #news_cont #news_wh li { flex-basis: 48%; margin: .25em 1% .25em 0;}
#news_sp #news_cont #news_wh .nt_ps { font-size: 80%;}
#news_sp #news_cont #news_wh .nt_ps .uptxt { padding: .35em 0 0 0; line-height: 130%;}
}
/*for_W768-*/
@media all and (min-width: 768px) { 
#news_sp #news_cont #news_wh { max-height: 300px;}
#news_sp #news_cont #news_wh .nt_ps { font-size: 85%;}
#news_sp #news_cont #news_wh .nt_ps .uptxt { padding: .8em 0 0 0; line-height: 130%;}
}

/*	sns_timeline
============================== */
#sns_tl-all { box-sizing: border-box; width: 100%; background-color: rgba(145, 5, 4, .75); padding: 1.5em; margin-bottom: .5em;}
#sns_tl-sp { width: 100%; max-width: 400px; margin: 1em auto; display: flex; flex-flow: row wrap; justify-content: center;}
.sns_tl { width: 100%; flex-basis: 100%;}
.sns_tl h3 { display: block; width: 100%;}
.sns_tl h3:before, .sns_tl h3:after { content: ""; content: none; display: table;}
.sns_tl h3:after { clear: both; }
.sns_tl h3::after { content: ""; display: block; clear: both;}
.sns_tl h3 .sns_title { width: 49%; font-size: 180%; font-weight: 500; float: left;}
.sns_tl h3 .sns_acc { width: 49%; font-size: 85%; color: rgba(0, 0, 0, 1); text-align: right; padding-top: 1em; float: right;}
.sns_tl .tl_sp { box-sizing: border-box; width: 100%; padding: 1em .75em; background-color: rgba(145, 5, 4, .75); margin-top: .5em;}
#twitter_set { margin-bottom: 2em;}
#insta_set .tl_sp { margin-top: .75em;}
.sns_tl .timeline { width: 100%;} 
.sns_tl .timeline .tl { box-sizing: border-box; width: 100%; height: 350px;}
.sns_tl .timeline .tl iframe { width: 100% !important;}
.sns_tl .timeline .tl iframe { width: 740px !important;}
#sns_tl-all .info_txt { text-align: center; font-size: 80%; padding: 2em 0;}

.insta { padding-top: .5em;}
.insta ul { width: 100%; max-width: 300px; margin: 0 auto; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center;}
.insta ul li { flex-basis: 32%; width: 32%; margin: .5em .65%;}
.insta ul li span { display: block; box-sizing: border-box; width: 100%; height: 0; padding-top: 100%; position: relative;}
.insta ul li a { display: block; width: 100%; height: 100%; border-radius: 0; -webkit-border-radius: 0; background-repeat: no-repeat; -webkit-background-size: cover; background-size: cover; background-position: center center; position: absolute; top: 0; left: 0;}
.insta ul li a .icon-video { background-image: url(../img/play.png); background-repeat: no-repeat; position: absolute; top: 50%; left: 50%; margin: -25px 0 0 -25px;}
.insta ul li a:hover { filter: brightness(1.2) saturate(130%); -webkit-filter: brightness(1.2) saturate(130%);}

/*for_W768-*/
@media all and (min-width: 768px) { 
#sns_tl-sp { width: 96%; max-width: 900px; flex-flow: row nowrap; justify-content: space-around;}
.sns_tl { width: 48%; flex-basis: 48%;}
#twitter_set { margin-bottom: 0;}
.insta { padding-top: 0;}
.insta ul { max-width: 360px; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center;}
.insta ul li { flex-basis: 29%; width: 29%; margin: .05em 2% .85em 2%;}

}

/* 	modal_video
============================== */
/*modal_youtube*/
@keyframes modal-video { from { opacity: 0;} to { opacity: 1;}}
@keyframes modal-video-inner { from { transform: translate(0, 100px);} to { transform: translate(0, 0);}}
.modal-video { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(34, 34, 34, .95); z-index: 1000000; cursor: pointer; opacity: 1; animation-timing-function: ease-out; animation-duration: 0.3s; animation-name: modal-video; -webkit-transition: opacity 0.3s ease-out; -moz-transition: opacity 0.3s ease-out; -ms-transition: opacity 0.3s ease-out; -o-transition: opacity 0.3s ease-out; transition: opacity 0.3s ease-out;}
.modal-video-close { opacity: 0;}
.modal-video-close .modal-video-movie-wrap { -webkit-transform: translate(0, 100px); -moz-transform: translate(0, 100px); -ms-transform: translate(0, 100px); -o-transform: translate(0, 100px); transform: translate(0, 100px);}
.modal-video-body { max-width: 1280px; width: 100%; height: 100%; margin: 0 auto; padding: 0 10px; display: flex; justify-content: center; box-sizing: border-box;}
.modal-video-inner { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%;}
@media (orientation: landscape) { .modal-video-inner { padding: 10px 60px;   box-sizing: border-box;}}
.modal-video-movie-wrap { width: 100%; height: 0; position: relative; padding-bottom: 56.25%; background-color: #333; animation-timing-function: ease-out; animation-duration: 0.3s; animation-name: modal-video-inner; -webkit-transform: translate(0, 0); -moz-transform: translate(0, 0); -ms-transform: translate(0, 0); -o-transform: translate(0, 0); transform: translate(0, 0); -webkit-transition: -webkit-transform 0.3s ease-out; -moz-transition: -moz-transform 0.3s ease-out; -ms-transition: -ms-transform 0.3s ease-out; -o-transition: -o-transform 0.3s ease-out; transition: transform 0.3s ease-out;}
.modal-video-movie-wrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.modal-video-close-btn { position: absolute; z-index: 2; top: -45px; right: 0; display: inline-block; width: 35px; height: 35px; overflow: hidden; border: none; background: transparent;}
@media (orientation: landscape) { .modal-video-close-btn {   top: 0;   right: -45px; }}
.modal-video-close-btn:before { transform: rotate(45deg);}
.modal-video-close-btn:after { transform: rotate(-45deg);}
.modal-video-close-btn:before, .modal-video-close-btn:after { content: ''; position: absolute; height: 2px; width: 100%; top: 50%; left: 0; margin-top: -1px; background: #fff; border-radius: 5px; margin-top: -6px;}

/*stream_modal*/
#modal_streaminfo .modal__content { position: relative; background: rgba(255, 255, 255, 0);}
#stream_set { width: 100%; margin: auto; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
#stream_set ul { display: flex; flex-flow: row wrap; justify-content: center;}
#stream_set li { box-sizing: border-box; flex-basis: 47.5%; margin: .5em 1%; background-color: rgba(255, 255, 255, .9); border: 1px solid rgba(255, 255, 255, 1); color: rgba(0, 0, 0, 1); text-align: center; font-size: 100%; font-weight: 700; font-family: Arial; padding: 1em; position: relative;}
#stream_set li#amazon { letter-spacing: -0.04em;}
#stream_set li a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#stream_set li a:hover { background-color: rgba(255, 255, 255, .2);}
/*for_W768-*/
@media all and (min-width: 768px) { 
#stream_set li { font-size: 180%;}
}
