/*	TBS reset
============================== */
.alt {position:absolute;top:-5000px;left:-9999px;}
.clearfix:after {content:"";clear:both;display:block;}
.hide-txt {text-indent:110%;white-space:nowrap;overflow:hidden;}
.fp-causion {display:none;}
@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: bold; font-weight: 700; }
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; font-weight: 700; }
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"] { -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"] { -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;}
@media print { .noprint { display: none;} }
/*lazyload*/
.lazyload, .lazyloading { opacity: 0;}
.lazyloaded { opacity: 1; transition: all 1000ms;}
/*fadein*/
.fadein { -webkit-animation: fadeIn 10s ease 1 normal; animation: fadeIn 10s 1 normal;}
@-webkit-keyframes fadeIn { 0% {opacity: 0} 100% {opacity: 1}}
@keyframes fadeIn { 0% {opacity: 0} 100% {opacity: 1}}
/*fadeout*/
.fadeout { -webkit-animation: fadeout 10s ease 1 normal; animation: fadeout 10s 1 normal;}
@-webkit-keyframes fadeout { 0% {opacity: 1} 100% {opacity: 0}}
@keyframes fadeout { 0% {opacity: 1} 100% {opacity: 0}}
/*txt*/
.nt { display: none;}
.nt_txt { font-size: 0; width: 0; height: 0; overflow: hidden; opacity: 0;}
.bt { font-weight: bold; font-weight: 700;}
.ut { font-weight: lighter;}
.br_rsmp, .br_wsmp, .br_tablet, .br_pc, .br_rsmpi, .br_wsmpi, .br_tableti, .br_pci { 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; } 
}
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%;}
.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;}
/*_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*/
.pd1 { padding: 1em;}
.pdt1 { padding-top: 1em;}
.pdb1 { padding-bottom: 1em;}
.pdtb1 { padding: 1em 0;}
.pd05 { padding: .5em;}
.mgat { margin: auto;}
.mgb05 { margin-bottom: .5em;}
.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*/
.col { color: rgba(200, 20, 50, 1);}
.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, .col { 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, 55, 110, 1);}
a:link { color: rgba(255, 230, 82, 1);}
a:visited { color: rgba(255, 230, 82, 1);}
a:active { color: rgba(200, 20, 50, 1);}
a:hover { color: rgba(238, 218, 98, 1);}
.bktotop a { color: rgba(255, 255, 255, 1);}
/*etc*/
@media print { .noprint { display: none;} }
.cover { width: 100%; height: 100%; background: url(../img/cover.png) repeat; display: block; position: absolute; top: 0; left: 0; }
/*lazyload*/
.lazyload, .lazyloading { opacity: 0;}
.lazyloaded { opacity: 1; transition: all 1000ms;}
/*fadein*/
.fadein { -webkit-animation: fadeIn 10s ease 1 normal; animation: fadeIn 10s 1 normal;}
@-webkit-keyframes fadeIn { 0% {opacity: 0} 100% {opacity: 1}}
@keyframes fadeIn { 0% {opacity: 0} 100% {opacity: 1}}
/*fadeout*/
.fadeout { -webkit-animation: fadeout 10s ease 1 normal; animation: fadeout 10s 1 normal;}
@-webkit-keyframes fadeout { 0% {opacity: 1} 100% {opacity: 0}}
@keyframes fadeout { 0% {opacity: 1} 100% {opacity: 0}}

/*	COMMON
============================== */
* { font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'BIZ UDPGothic', Meiryo, sans-serif; font-weight: 400;}
html { overflow-y: visible; min-height: 100%;}
body { width: 100%; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; display: flex; min-height: 100vh; flex-direction: column; position: relative; background: rgb(255, 255, 255, 1); color: rgba(0, 0, 0, 1);}
body.fixed { position: fixed; width: 100%; height: 100%; left: 0;}
body a { text-decoration: none; outline-style: none;}
#container { width: 100%; font-size: 80%;}
.bt { font-weight: bold; font-weight: 700;}
/*for_W480-*/
@media all and (min-width: 480px) {
#container { font-size: 90%;}
}
/*for_W640-*/
@media all and (min-width: 640px) {
#container { font-size: 100%;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#container { font-size: 110%;}
}
/*for_W900-*/
@media all and (min-width: 900px) {
#container { font-size: 115%;}
}

/*	head
============================== */
#header { width: 100%;}
#head_sp { width: 100%; max-width: 1080px; margin: 0 auto; background-repeat: no-repeat; -webkit-background-size: cover; background-size: cover; -webkit-background-position: top center; background-position: top center; background-image: url(../img/head.jpg); padding: 1em 0;}
/*#logo_sp { width: 65%; margin: 0 auto 2.5em auto;}
#logo_sp { width: 56%; margin: .15em auto 2.5em auto;}*/
#logo_sp { width: 60%; margin: .05em auto 2.5em auto;}
#logoimg { width: 100%; height: 0; padding-top: 18%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: relative;}
#mainimg_bg { width: 100%; margin-top: -2.5em; padding-bottom: 1em; background: rgb(37,34,51);
background: -moz-linear-gradient(-45deg, rgba(37,34,51,1) 20%, rgba(37,34,51,1) 20%, rgba(0,0,0,1) 100%);
background: -webkit-linear-gradient(-45deg, rgba(37,34,51,1) 20%,rgba(37,34,51,1) 20%,rgba(0,0,0,1) 100%);
background: linear-gradient(135deg, rgba(37,34,51,1) 20%,rgba(37,34,51,1) 20%,rgba(0,0,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#252233', endColorstr='#000000',GradientType=1 );}
#mainimg_sp { width: 100%; max-width: 1080px; margin: 0 auto;}
#mainimg { width: 100%; height: 0; padding-top: 56.25%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; position: relative;}
#logoimg a, #mainimg a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 1000;}
#mainimg a:hover { background-color: rgba(255, 230, 82, .1);}
#tickets_sp { box-sizing: border-box; width: 80%; max-width: 600px; margin: 1em auto; padding: .5em; border: 1px solid rgba(255, 230, 82, 1); display: flex; flex-flow: row wrap; justify-content: space-between; align-items: center; position: relative;}
#tickets_sp .tickets { flex-basis: 49.5%; text-align: center; color: rgba(255, 230, 82, 1); letter-spacing: .05em; font-size: 95%; font-weight: bold; font-weight: 700;}
#tickets_sp .img_sp { display: block; width: 100%; height: 0; padding-top: 58.666666666666667%; padding-top: -webkit-calc(110 / 400 * 100%); padding-top: calc(110 / 400 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#tickets_sp a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#tickets_sp a:hover { background-color: rgba(255, 230, 82, .15);}
#link_sp { text-align: center; padding: .3em 0; letter-spacing: .1em; font-size: 95%;}
#link_sp a { color: rgba(255, 230, 82, 1);}
/*for_W1080-*/
@media all and (min-width: 1080px) {
#header { background-repeat: repeat-x; -webkit-background-position: top center; background-position: top center; background-image: url(../img/head_bg.jpg);}
}
/*nav_sp*/
#nav_sp { width: 98%; max-width: 1080px; margin: 0 auto; padding: .3em 0; position: relative; z-index: 1000;}
#nav_sp li { line-height: 105%;}
#nav_sp li a:hover { background: rgba(255, 230, 82, .2);}
#nav_sp .j_txt { font-weight: bold; font-weight: 700; letter-spacing: .05em;}
#nav_sp .e_txt { font-size: 82%; letter-spacing: .025em;}
/*_nav*/
#nav ul { width: 100%; display: flex; flex-flow: row wrap; justify-content: space-between; align-items: center; margin-bottom: .35em;}
#nav li { box-sizing: border-box; flex-basis: 32.5%; text-align: center; background: rgba(200, 20, 50, 1); box-shadow: 1px 1px 5px rgba(149, 62, 62, .4); -webkit-box-shadow: 1px 1px 5px rgba(149, 62, 62, .4); position: relative; margin: .35em 0 0 0;}
#nav li a { width: 100%; height: 100%; display: block; padding: .75em 0;}
#nav .j_txt { color: rgba(255, 255, 255, 1);}
#nav .e_txt { color: rgba(255, 255, 255, .75);}
#nav li.nolnk { padding: .75em 0; background: rgba(129, 0, 22, .5);}
#nav li.nolnk .j_txt { opacity: .5;}
#access_mn #mn_access, #seat_mn #mn_seat, #floor_mn #mn_floor, #qa_mn #mn_qa, #archives_mn #mn_archives, #eng_mn #mn_eng, #bf_mn #mn_bf { background: rgba(129, 0, 22, 1);}
#access_mn #mn_access a, #seat_mn #mn_seat a, #floor_mn #mn_floor a, #qa_mn #mn_qa a, #archives_mn #mn_archives a, #eng_mn #mn_eng a { cursor: default; pointer-events: none;}

/*_sp_nav*/
#sp_nav ul { width: 100%; display: flex; flex-flow: row wrap; justify-content: space-between; align-items: center;}
#sp_nav li { box-sizing: border-box; flex-basis: 49.5%; text-align: center; background: rgba(37, 34, 51, 1); box-shadow: 1px 1px 5px rgba(37, 34, 51, .4); -webkit-box-shadow: 1px 1px 5px rgba(37, 34, 51, .4); position: relative;}
#sp_nav li::before { content: url(../img/star.png); position: absolute; top: 43%; left: 2%; -webkit-transform: scale(.7) translateY(-50%); transform: scale(.7) translateY(-50%);}
#sp_nav li::after { content: url(../img/star.png); position: absolute; top: 43%; right: 2%; -webkit-transform: scale(.7) translateY(-50%); transform: scale(.7) translateY(-50%);}
#sp_nav li a { width: 100%; height: 100%; display: block; padding: .75em 0;}
#sp_nav .e_txt { color: rgba(255, 230, 82, .75);}
#sp_nav li.nolnk { padding: .75em 0; color: rgba(255, 255, 255, .5); background: rgba(62, 59, 72, .95);}
#sp_nav li.nolnk::before, #sp_nav li.nolnk::after { filter: saturate(0%) brightness(75%);}
#sp_nav li.nolnk .e_txt { color: rgba(255, 255, 255, .35);}
/*for_W640-*/
@media all and (min-width: 640px) {
#nav_sp { padding: .5em 0;}
#nav li { margin: .5em 0 0 0;}
}

/*	footer
============================== */
#footer { box-sizing: border-box; width: 100%; background: rgb(229, 229, 229, 1); padding-top: 1.5em;}
#btm { box-sizing: border-box; width: 100%; padding: 2em 0 90px 0; background: rgb(37, 34, 51, 1); color: rgba(255, 255, 255, 1);}
#cr { width: 90%; margin: 0 auto; text-align: center; letter-spacing: .1em; font-size: 95%; line-height: 160%; position: relative;}
#pgtp { margin: 0 auto; padding: 1em 0 2em 0; text-align: center;}
#pgtp a { display: block;}
#pgtp .txt1, #pgtp .txt2 { font-weight: bold; font-weight: 500; letter-spacing: .1em; display: inline-block; vertical-align: middle;}
#pgtp .txt2 { padding-right: 1em;}
#pgtp #star { width: 30px; height: 30px; display: inline-block; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; background-image: url(../img/star_b.png); margin: 0 5px; vertical-align: middle;}
/*_contact*/
#contact { box-sizing: border-box; width: 95%; max-width: 1080px; margin: 0 auto 1.5em auto; padding: 2em 2em 1em 2em; background: rgba(255, 255, 255, 1);}
#contact dl { width: 100%;}
#contact .gtitle { text-align: center; font-size: 120%; color: rgba(200, 20, 50, 1); font-weight: 700;}
#contact .gtitle::before { content: '─ ';}
#contact .gtitle::after { content: ' ─';}
#contact .sub_dd { padding: 2em 0 0 0;}
#contact .sub_dd dt { color: rgba(98, 6, 6, 1); letter-spacing: .05em;}
#contact .sub_dd dd { padding: 1em 0 2em 2em; line-height: 160%;}
#contact .sub_dd dd.btm_line { border-bottom: 2px dashed rgba(200, 20, 50, 1); margin-bottom: 2em;}
#contact a { color: rgba(220, 40, 70, 1); position: relative; z-index: 10000;}
#contact a:hover { color: rgba(200, 20, 50, 1);}
/*_twitter*/
#sns_twitter { box-sizing: border-box; width: 92%; margin: 0 auto; padding: 1em 1.5em; background: rgba(200, 20, 50, 1);}
#sns_twitter h3 a { color: rgba(255, 255, 255, 1); width: 100%; display: flex; flex-flow: row wrap; justify-content: space-between; align-items: flex-end; padding-bottom: .3em;}
#sns_twitter h3 a span { box-sizing: border-box; flex-basis: 49.5%;}
#sns_twitter h3 a .logo { font-size: 180%; font-weight: 700; letter-spacing: .1em; padding-left: 1.8em; position: relative;}
#sns_twitter h3 a .logo::before { content: url(../img/twitter.png); display: inline-block; -webkit-transform: scale(.7); transform: scale(.7); position: absolute; top: -14px; left: -5%;}
#sns_twitter h3 a .acnt { letter-spacing: .1em; text-align: right;}
#sns_twitter .timeline { width: 100%;} 
#sns_twitter .timeline .tl { box-sizing: border-box; width: 100%; height: 460px;}
#sns_twitter .timeline .tl iframe { width: 100% !important;}
#sns_twitter .timeline .tl iframe { width: 740px !important;}
/*_bn*/
#bn_sp { padding: 1.5em 0 .5em 0;}
#bn_sp ul { width: 85%; max-width: 1080px; margin: 0 auto;}
#bn_sp li .bnl { display: block; width: 100%; height: 0; padding-top: 40%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; margin-bottom: 1em;}
#bn_sp li .bns { display: block; width: 100%; height: 0; padding-top: 23.333333333333333%; padding-top: -webkit-calc(140 / 600 * 100%); padding-top: calc(140 / 600 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; margin-bottom: 1em;}
#bn_sp li a:hover { opacity: .8;}
/*for_W640-*/
@media all and (min-width: 640px) {
#bn_sp ul { display: flex; flex-flow: row wrap; justify-content: space-between;}
#bn_sp li { flex-basis: 32%;}
#bn_sp ul { display: flex; flex-flow: row wrap; justify-content: center;}
#bn_sp li { margin: 0 .5%;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#ind_plus { width: 100%; max-width: 1080px; margin: 0 auto;}
#sns_twitter h3 { padding: .5em 0 1em 0;}
#sns_twitter h3 a .logo { font-size: 160%; padding-left: 1.5em;}
#sns_twitter h3 a .logo::before { -webkit-transform: scale(.7); transform: scale(.7); position: absolute; top: -10px; left: -5%;}
#sns_twitter h3 a .acnt { display: block; font-size: 80%;}
#btm { padding: 2em 0 3em 0;}
#contact .sub_dd { font-size: 95%;}
}
/*for_W1000-*/
@media all and (min-width: 1000px) {
#contact .sub_dd { display: flex; flex-flow: row wrap; justify-content: space-between;}
#contact .sub_dd .sub_dl { width: 49.5%; flex-basis: 49.5%; margin: 0;}
}

/*	contents
============================== */
#wrap { box-sizing: border-box; width: 100%; max-width: 1080px;  margin: 0 auto; padding: 1em 0 0 0;}
#wrap .c_h { color: rgba(200, 20, 50, 1); text-align: center; line-height: 150%; font-weight: bold; font-weight: 700; letter-spacing: .05em; padding-bottom: 1em;}
#wrap .c_p { padding: 0 5% 1em 5%; line-height: 160%; letter-spacing: .05em; text-align: justify; text-justify: inter-ideograph;}
#wrap .sub_sp { box-sizing: border-box; width: 100%; padding: 2em; background-color: rgba(255, 248, 248, .5); font-size: 90%;}
#wrap .sub_sp .c_t { color: rgba(141, 67, 79, 1); text-align: left; line-height: 150%; font-weight: bold; font-weight: 700; letter-spacing: .02em; padding-bottom: 1em;}
#wrap .sub_sp .c_d { line-height: 160%; letter-spacing: .1em; text-align: justify; text-justify: inter-ideograph;}
#theater_photo { width: 98%; height: 0; padding-top: 73.5%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; margin: 0 auto; position: relative;}
/*for_W768-*/
@media all and (min-width: 768px) {
#wrap .c_h { font-size: 110%;}
}
/*for_W900-*/
@media all and (min-width: 900px) {
#wrap { padding: 1em 0 2em 0;}
#wrap .c_h { font-size: 120%;}
#wrap .sub_sp .c_t { text-align: center;}
}

/*	modal
============================== */
.modal { display: none; height: 100vh; position: fixed; top: 0; left: 0; width: 100%; z-index: 10000; center; background: rgba(129, 0, 22, .9);}
.modal__bg { height: 100vh; position: absolute; width: 100%;}
.modal__content { box-sizing: border-box; width: 90%; height: 77%; max-width: 1000px; background: rgba(255, 255, 255, 1); padding: 1.5em 1em 0 1em; position: absolute; top: 47%; left: 50%; transform: translate(-50%,-50%); line-height: 160%; overflow-y: scroll; overflow-y: auto;}
.modal__content .senko_txt { font-size: 90%; text-align: left; line-height: 180%;}
.js-modal-close { cursor: pointer;}
.modal__content a { z-index: 10000; text-align: center; margin: 0 auto; padding: 5px 0 10px 0; font-size: 110%; font-weight: bold; display: block; cursor: pointer;}
.close_btn { width: 50px; height: 50px; position: absolute; top: 10px; right: 10px;}
.close_btn::before, .close_btn::after { content: ''; position: absolute; top: 50%; left: 50%; width: 2px; height: 50px; background: rgba(255, 255, 255, 1);}
.close_btn::before { transform: translate(-50%,-50%) rotate(45deg);}
.close_btn::after { transform: translate(-50%,-50%) rotate(-45deg);}
.modal__content dt { font-size: 110%; font-weight: bold; font-weight: 700;}
.modal__content dt::before { content: '【';}
.modal__content dt::after { content: '】';}
.modal__content .t_dd { line-height: 180%; color: rgba(90, 90, 90, 1); padding: .5em .75em 1.5em .5em; text-align: justify; text-justify: inter-ideograph;}
.modal__content .t_dd .sub_t { font-size: 80%; color: rgba(0, 0, 0, .5); line-height: 130%; padding-top: 1em;}
/*_aire*/
#aire #logo_aire_sp { width: 100%; max-width: 500px; margin: 0 auto;}
#aire #logo_aire_sp .logo_img { width: 100%; height: 0; padding-top: 34.917733089579525%; padding-top: -webkit-calc(191 / 547 * 100%); padding-top: calc(191 / 547 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
/*_minden*/
#minden .modal__content { padding-bottom: .5em;}
#minden #photo_sp { width: 100%; max-width: 1000px; margin: 0 auto 1.5em auto;}
#minden #photo_sp .photo_img { width: 100%; height: 0; padding-top: 64%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
/*for_W1000-*/
@media screen and (min-width: 1000px) {
.modal__content { height: 80%; top: 50%; left: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%, -50%)}
.modal__content a { padding: 0 0 30px 0; font-size: 110%;}
}

/*	customer_harassment
============================== */
#cushara_sp { box-sizing: border-box; width: 85%; max-width: 480px; height: 46px; margin: 1.5em auto .35em auto; border: 1px solid rgba(200, 20, 50, 1); background-color: rgba(255, 255, 255, 1); position: relative;}
#cushara_sp a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#cushara_sp a:hover { background-color: rgba(200, 20, 50, .15);}
#cushara_sp a span { display: block; width: 100%; text-align: center; color: rgba(200, 20, 50, 1); font-size: 95%; font-weight: bold; font-weight: 700; position: absolute; top: 50%; left: 0; transform: translateY(-50%); -webkit-transform: translateY(-50%);}
/*for_W640-*/
@media screen and (min-width: 640px) {
#cushara_sp { margin: 1.5em auto 0 auto;}
}
/*for_W768-*/
@media screen and (min-width: 768px) {
#cushara_sp { margin: 1.5em auto 0 auto; height: 54px;}
}
