@charset "Shift_JIS";
/* reset */
html, body,
h1, h2, h3, h4, h5, h6,
a, p, span, small, strong, em, b, i, sub, sup,
mark, del, ins, strike, abbr, dfn, blockquote, q, cite, code, pre,
div, section, article, main, aside, nav, header, hgroup, footer, menu,
ol, ul, li, dl, dt, dd,
table, caption, tbody, tfoot, thead, tr, th, td,
img, figure, figcaption,
audio, video, canvas, iframe, details, summary, address, time {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}
section, article, main, aside, nav, header, hgroup, footer, figure, figcaption, details, menu {display: block;}
*, *::before, *::after {box-sizing: border-box;}
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;text-size-adjust: 100%;
}
body {min-height: 100vh;}
a {text-decoration: none;}
a:active, a:hover {outline-width: 0;}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {bottom: -0.25em;}
sup {top: -0.5em;}
/* list */
ul, ol {list-style: none;}
/* table */
table {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
}
th, td {
  vertical-align: top;
  font-weight: normal;
  text-align: left;
}
/* form */
fieldset, form, label, legend {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}
input, button, select, optgroup, textarea {
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}
textarea {resize: vertical;}
button, input {overflow: visible;}
button, select {text-transform: none;}
input[type="text"], input[type="password"], input[type="search"] {-webkit-appearance: none;}
button, input[type='submit'], input[type='button'], input[type="reset"] {-webkit-appearance: button;}
input[type='submit'], input[type='button'], input[type="reset"], label, button, select {cursor: pointer;}

/* common */
img, video{vertical-align: bottom;}
@media screen and (max-width:999px){img, iframe{max-width: 100%;}}
.bold{font-weight: bold;}
.align-left{text-align:left}
.align-center{text-align:center}
.align-right{text-align:right}
.align-justify{text-align:justify}
.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
/* flex-box */
.flex{display:-webkit-box !important;display:-moz-box !important;display:-ms-flexbox !important;display:-webkit-flex !important;display:flex !important}
.between.flex{-webkit-box-pack:space-between;-moz-box-pack:space-between;-ms-flex-pack:space-between;-webkit-justify-content:space-between;justify-content:space-between}
.around.flex{-webkit-box-pack:space-around;-moz-box-pack:space-around;-ms-flex-pack:space-around;-webkit-justify-content:space-around;justify-content:space-around}
.start.flex{-webkit-box-pack:flex-start;-moz-box-pack:flex-start;-ms-flex-pack:flex-start;-webkit-justify-content:flex-start;justify-content:flex-start}
.end.flex{-webkit-box-pack:flex-end;-moz-box-pack:flex-end;-ms-flex-pack:flex-end;-webkit-justify-content:flex-end;justify-content:flex-end}
.center.flex{-webkit-box-pack:center;-moz-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}
.wrap.flex{-webkit-flex-wrap:wrap;flex-wrap:wrap}
.reverse.flex{-webkit-flex-direction:row-reverse;flex-direction:row-reverse}
.stretch.flex,
.stretch.flex > *{-webkit-align-self:stretch;align-self:stretch}
@media screen and (min-width:1000px){
  .flex_ge-1000{display:-webkit-box !important;display:-moz-box !important;display:-ms-flexbox !important;display:-webkit-flex !important;display:flex !important}
  .between.flex_ge-1000{-webkit-box-pack:space-between;-moz-box-pack:space-between;-ms-flex-pack:space-between;-webkit-justify-content:space-between;justify-content:space-between}
  .around.flex_ge-1000{-webkit-box-pack:space-around;-moz-box-pack:space-around;-ms-flex-pack:space-around;-webkit-justify-content:space-around;justify-content:space-around}
  .start.flex_ge-1000{-webkit-box-pack:flex-start;-moz-box-pack:flex-start;-ms-flex-pack:flex-start;-webkit-justify-content:flex-start;justify-content:flex-start}
  .end.flex_ge-1000{-webkit-box-pack:flex-end;-moz-box-pack:flex-end;-ms-flex-pack:flex-end;-webkit-justify-content:flex-end;justify-content:flex-end}
  .center.flex_ge-1000{-webkit-box-pack:center;-moz-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}
  .wrap.flex_ge-1000{-webkit-flex-wrap:wrap;flex-wrap:wrap}
  .reverse.flex_ge-1000{-webkit-flex-direction:row-reverse;flex-direction:row-reverse}
  .stretch.flex_ge-1000,
  .stretch.flex_ge-1000 > *{-webkit-align-self:stretch;align-self:stretch}
}
@media screen and (max-width:999px){.hidden_lt-1000{display:none !important}}
@media screen and (min-width:1000px){.hidden_ge-1000{display:none !important}}
@media screen and (max-width:660px){.hidden_lt-1000{display:none !important}}
@media screen and (min-width:661px){.hidden_ge-660{display:none !important}}
/* color */
:root{
  --color-primary: #744d4b;
  --color-secondary: #a57865;
  --color-tertiary: #edebec;
  --color-text: #744d4b;
  --color-border: #fff;
  --color-bg: #f1eded;
  --color-header: #0b0707;
  --color-headline: #f8e5ee;
  --color-red: #e43f6f;
  --color-blue: #5db7de;
}
/* font */
html{font-size: 62.5%;font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
body{line-height: 1.6;color: var(--color-text);}
@media screen and (max-width:999px){body{font-size: 1.4rem;}}
@media screen and (min-width:1000px){body{font-size: 1.6rem;}}
a{color: var(--color-text);}
header h1{
  font-size: 1.2rem;font-weight: bold;line-height: 1;
}
@media screen and (max-width:999px){
  h2{font-size: 2.4rem;line-height: 1.4;font-weight: normal;}
  h3{font-size: 1.8rem;line-height: 1.4;}
}
@media screen and (min-width:1000px){
  h2{font-size: calc(2.25rem + ((1vw - .1rem) * 1.3043));line-height: 1.4;font-weight: normal;}/* 36-48 */
  h3{font-size: calc(2rem + ((1vw - .64rem) * 0.7143));line-height: 1.4;}/* 24-36 */
}

.small {font-size: small;}
@media screen and (max-width:999px){
  .em{font-size: 120%;}
}
@media screen and (min-width:1000px){
  .em{font-size: 140%;}
}
/* header */
.grobal_header{background: var(--color-header);}
h1{
  width: 100%;max-width: 1000px;
  margin: 0 auto;padding: .5em;
}
h1 a{
  color: #fff;text-decoration: underline;
}
/* main */
main{overflow-x: hidden;}
.main_visual {
  max-width: 1200px;
  margin: 0 auto;
}
section:not(.about){
  padding-top: 10vw;padding-bottom: 6vw;
}
section.about{
  padding-top: 12vw;padding-bottom: 12vw;
}
.section_header{
  margin: 1em 0;
  position: relative;
}
.section_header h2 {position: relative;z-index: 1;}
.section_header p{
  width: 100%;
  font-family: 'Roboto', sans-serif;font-size: 1000%;
  position: absolute;top: -.8em;
}
@media screen and (max-width:999px){
  .section_header p{font-size: 600%;}
}
@media screen and (min-width:1000px){
  .section_header p{font-size: 1000%;}
}
.marker{background: linear-gradient(transparent 70%, var(--color-primary) 0);}

/* movie
.movie ul{
  width: 90%;max-width: 1000px;
  margin: 0 auto;
}
.movie li{
  width: 320px;
  margin: 0 .5% 2em;
}
@media screen and (max-width:660px){
  .movie li{width: 100%;}
}
@media screen and (min-width:661px){
  .movie li{width: calc( 100% / 2 );}
}
@media screen and (min-width:1000px){
  .movie li{width: calc( 100% / 3 );}
}
.movie .inner{
  width: 90%;max-width: 800px;
  margin: 0 auto;
}
.movie video{width: 100%;min-width: 100%;}
*/
/* system */
.system{background: var(--color-bg);}
.system .inner{
  width: 100%;max-width: 1000px;
  margin: 0 auto;
}
.system header p{margin: ;color: var(--color-border);}
.system table{
  width: 100%;
  border: solid 2px var(--color-border);
}
@media screen and (min-width:1000px){
  .system table{font-size: 140%;}
}
.system table span{font-size: 80%;}
.system th{
  width: calc( 100% / 4);height: 3.6em;
  text-align: center;font-weight: bold;vertical-align: middle;color: var(--color-border);
  background: var(--color-secondary);
  border: solid 2px var(--color-border);
}
.system td{
  height: 3em;
  text-align: center;font-weight: bold;vertical-align: middle;color: var(--color-red);
  border: solid 2px var(--color-border);
}
.system td small{color: #9a9a9a;font-size:80%;text-decoration: line-through;}
.system .txt{
  width: 96%;max-width: 48em;
  margin: 1em auto 0;
}
.system .txt a {color: var(--color-red);}
/* play
.play .inner{
  width: 100%;max-width: 1000px;
  margin: 0 auto;
}
.play ul {
  width: 90%;
  margin: 0 auto;padding: 2em;
  background: #fff;
  border: solid 2px var(--color-border);border-radius: 1em;
  box-shadow: 8px 8px 14px 1px rgba(00,00,00,.12);
}
.play li{
  padding: .5em;
}
.play li span{
  font-weight: bold;color: var(--color-primary);
}*/
/* cast */
.cast{background: var(--color-headline);}
.cast header p{color: var(--color-border);}
.castlist{
  margin: 0 auto;
}
.castlist > li{
  //border: solid 1px var(--color-border);
  background: var(--color-border);
}
@media screen and (max-width:660px){
  .castlist{
    width: 98%;
  }
  .castlist > li{
    width: 100%;
    margin: 1%;
    box-shadow: 2px 2px 4px 1px rgba(00,00,00,.06);
  }
}
@media screen and (min-width:661px){
  .castlist{
    width: 90%;
  }
  .castlist > li{
    width: 100%;
    margin: 1%;
    box-shadow: 6px 6px 10px 1px rgba(00,00,00,.06);
  }
}
@media screen and (min-width:1000px){
  .castlist{
    width: 90%;max-width: 1660px;
  }
  .castlist > li{
    margin: .5%;
    width: calc( 96% / 2);
  }
}
.castlist > li .inner {
  padding-bottom: 80px;
  position: relative;
}
.thumb {width: 36%;}
.profile{
  width: 64%;
  padding: .8em;
}
.tagline{}
.name{
  color: var(--color-red);
  border-bottom: 2px solid var(--color-red);
}
.shop_comment {
  margin-top: .8em;
  display: -webkit-box;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;
}
@media screen and (max-width:660px){.shop_comment {-webkit-line-clamp: 5;}}
@media screen and (min-width:661px){.shop_comment {-webkit-line-clamp: 7;}}

.sch_txt:not(:empty) {
  margin: 1em;padding: .4em;
  background: var(--color-headline);
}
.castlist .schedule {
  margin: 1em auto;
  text-align: center;
}
.castlist .schedule li {
  width: calc(100% / 7);
  padding: .4em;
}
@media screen and (max-width:660px){
  .castlist .schedule li {font-size: 80%;line-height: 1.2}
}
.sch_weekly li {
  background: var(--color-tertiary);
  border: solid 1px #fff;
}
.saturday {color: var(--color-blue);}
.holiday {color: var(--color-red);}
.sch_weekly .time {display: block;}


.btn {
  width: 100%;
  position: absolute;bottom: 20px;
}
.btn a{
  width: 11em;height: 2em;
  margin: 0 auto;
  display: block;
  color: #fff;line-height: 2em;
  background: var(--color-red);
  //border-radius: 1em;
  box-shadow: 4px 4px 8px 1px rgba(00,00,00,.06);
}
/* page_top */
#pagetop_btn {
  position: fixed;
  bottom: 30px;
  right: 20px;
  padding: 10px;
  text-align: center;
  display: block;
  background: var(--color-header);
  border-radius: 30px;
  box-shadow: 4px 4px 8px 1px rgba(00,00,00,.06);
  cursor: pointer;
}
/* footer */
footer{margin-top: 6vw;padding-bottom:2vw;}
footer p{
  font-size: 1.2rem;
}
/* floating-menu
.floating-menu {
  width: 100%;height: 5rem;
  position: fixed;left: 0;bottom: 0;
  z-index: 9999;
  background: ;
}
.floating-menu ul {
  width: 80%;max-width: 60rem;
  margin: .2rem auto;
}
.floating-menu li {
  width: calc(100% / 5);text-align: center;
}
.floating-menu li a {
  width: 4.6rem;height: 4.6rem;
  display: inline-block;
}
.floating-menu li .fa {
  font-size: 3rem;color: var(--color-secondary);
}
*/
