@charset "UTF-8";
/* ========== Common Section ========== */
/* --- CSS Variables --- */
:root {
    --heading-color: #E14646;
       --time-color: #F7CCCC;
}
/* --- Pager --- */
nav#pager {
    text-align: center;
    margin: 15px 0;
}
nav#pager a,
nav#pager b {
    display: block;
    margin: 1px;
    padding: 10px;
    display: inline-block;
    border: 1px solid #f3355e;
    color: #f3355e;
    font-weight: bold;
    text-decoration: none;
    background-color: #fff;
}
nav#pager a:hover {
    background-color: #febfc2;
    color: #f3355e;
}
nav#pager b {
    background-color: #f3355e;
    border: 1px solid #f3355e;
    color: #fff;
}

/* --- New Person --- */
.new {
    color: #f00;
    font-weight: bold;
    font-size: 1.3em;
}

/* --- Date --- */
.sun { color: #c03; }
.sat { color: #09c; }

/* --- License --- */
.lico_s { width: 24px; }
.lico_m { width: 50px; }

/* --- To Detail Button --- */
a.todetail {
    background: linear-gradient(to bottom, #ffcccc 5%, #ef0239 100%);
    background-color: #ff5bb0;
    border-radius: 6px;
    border: 1px solid #ef0239;
    color: #fff;
    font-size: .8em;
    font-weight: bold;
    padding: 8px 5px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #634110;
}

/* ========== for Contents html Section ========== */
/* Contents Column */
main > article:not(#conttop) {
    width: 780px;
    float: left;
    margin:50px 0 20px 20px;
    padding: 30px;
}
aside {
    width: 260px;
    float: right;
}
.yugata img{
    width: 100%;
    margin-bottom: 10px;
}

/* --- for INDEX(TOP/ENTRANCE) html --- */
#r_banner img{
    width: 100%;
    margin-bottom:10px;
}
#de_banner img{
    width: 100%;
    margin-bottom: 10px;
}
#ride{
    width: 720px;
    margin-bottom: 10px;
}
#conttop {
    text-align: center;
    margin: 25px 0;
    border-radius: 0 0 20px 20px;
}
#conttop p {
    color:#fff;
}
#conttop a#enter {
    background-color: #ff5bb0;
    box-shadow: inset 1px 10px 0px -3px #fbafe3;
    background: linear-gradient(to bottom, #ff5bb0 5%, #ef027d 100%);
    border-radius: 40px;
    border: 3px solid #ee1eb5;
    display: inline-block;
    cursor: pointer;
    color: #fff;
    font-size: 1.5em;
    font-weight: bold;
    padding: 14px 47px;
    text-decoration: none;
    text-shadow: 1px 3px 0px #c70067;
}
#conttop a#enter:hover {
    background-color: #ef027d;
    background: linear-gradient(to bottom, #ef027d 5%, #ff5bb0 100%);
}
#conttop a#enter:active {
    position: relative;
    top: 1px;
}
#conttop h1 img {
    margin-top:70px;
}
#conttop .credit {
    text-align:center;
    margin: 50px 0 -50px 0;
    color: #fff;
}
#conttop .credit img {
    margin:5px 0;
}
/* --- for HOME html --- */
#conthome > article:not(#conttop) {
    margin: 0 0 20px 0;
    padding: 10px;
    /*background-color: #ccc;*/
    text-align: left;
}
#conthome > article:not(#conttop) h2 {
    color: #fff;
}
#conthome {
    text-align:center;
}
#conthome #pr,
#conthome #h_text{
    margin-bottom:20px;
}
#conthome .credit {
    text-align:center;
    margin-top: 15px;
    padding-bottom: 10px;
    font-size: 12px;
    font-weight: 300;
    color: #FFFFFF;
    width: 100%;
    border-bottom: 2px solid white;
}
#conthome .credit img {
    margin:5px 0;
}
/* Schedule */
#conthome #sche{
    position: relative;
}
#conthome #sche h2 + time {
    color: var(--time-color);
    font-weight: bold;
}
#conthome #sche section.cast {
    width: 135px;
    padding: 10px;
    margin: 0 3px 3px 0;
    display: inline-block;
    font-size: .9em;
    color: #fff;
    text-shadow: 1px -1px 0px #000;
    background-color: #b58e84;
    text-align: center;
    position: relative;
}
#conthome #sche section.cast .lico_s {
    position: absolute;
    top: 0;
    left: 0;
}
#conthome #sche section.cast .new {
    width: 38px;
    position: absolute;
    top: 0;
    right: 0;
}
#conthome #sche img.thum {
    width: 100%;
    margin: 0 0 5px 0;
}
#conthome #sche h3 {
    font-size: 1.0em;
    display: inline;
}
#conthome #sche section.cast a:link,
#conthome #sche section.cast a:visited {
    color: #fff;
}
#conthome #sche section.noopen {
    color: #fff;
    margin: 10px 0;
    text-align: center;
}
#conthome #sche #schelist{
    position: absolute;
    right: 0;
    border: #634110 1px solid;
    padding: 5px 30px;
    background-color: #b58e84;
    border-radius: 10px;
    text-decoration: none;
}
#conthome #sche .lico_m{
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
}
#conthome #sche .staynow{
    position: absolute;
    bottom: 55px;
    left: 8px;
}
/* Home Schedule Tab */
#conthome #tabnavi {
    margin: 10px 0;
    text-align: center;
}
#conthome #tabnavi li          { display: inline; }
#conthome #tabnavi li span.week{ font-size: .7em; }
#conthome #tabnavi li a {
    width: 80px;
    height: 50px;
    padding: 12px 0 0 0;
    display: inline-block;
    border: 1px solid #d9883b;
    background-color: #d9883b;
    color: #000;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    line-height: 0.8;
}
#conthome #tabnavi li a.active {
    border-bottom: 5px solid #fff8c9;
    color: #fff;
}
#conthome #tabnavi li a:hover {
    border: 1px solid #b58e84;
    background-color: #b58e84;
    color: #000;
}
#conthome #tabcontent{
    padding: 0 35px;
    border: none;
}

/* Base Layout */
#conthome article:not(#sche):not(#tabcontent) > section {
    margin: 0 0 30px 0;
    padding: 30px;
    background-color: rgba(0,0,0,.6);
    color: #fff;
}
#conthome article:not(#sche):not(#tabcontent) > section h3 {
    color: var(--heading-color);
    font-size: 1.4em;
}
#conthome article:not(#sche):not(#tabcontent) > section time {
    color: var(--time-color);
    font-size: 1.4em;
}
#conthome article > section img.thum {
    max-width: 240px;
    margin: 0 15px 15px 0;
    vertical-align: top;
    float: left;
}

/* To ListPage Button */
#conthome a.contlist {
    width: 300px;
    margin: 0 0 0 400px;
    padding: 5px 20px;
    background: linear-gradient(to bottom, #f0c911 5%, #f2ab1e 100%);
    background-color: #f0c911;
    box-shadow: inset 0px 1px 0px 0px #f9eca0;
    border-radius: 20px;
    border: 1px solid #e65f44;
    display: inline-block;
    cursor: pointer;
    color: #c92200;
    font-size: .8em;
    font-weight: bold;
    text-decoration: none;
    text-shadow: 0px 1px 0px #ded17c;
    text-align: right;
}
#conthome a.contlist:hover {
    background: linear-gradient(to bottom, #f2ab1e 5%, #f0c911 100%);
    background-color: #f2ab1e;
}
#conthome a.contlist:active {
    position:relative;
    top: 1px;
}



/* --- for NEWS html --- #contnews {  } */



/* --- for NEW_PERSON/PICKUP_CAST html --- #contnper {  } */



/* --- for campaign html --- #contcamp {  } */
#contcamp .campaign {
    background-color: #fff;
    padding:5px;
}
#contcamp h3 {
    font-size: 14px;
    color: #5A3E1C;
    background: #D3B3A1;
    font-weight: 500;
    padding-top: 2px;
    padding-bottom: 2px;
    text-align: left;
    margin-top: 5px;
    margin-bottom: 5px;
    width: 100%;
}

/* --- for CAST html --- #contcast {  } */
#contcast section,
#contcade #osusume section {
    width: 235px;
    height: 215px;
    padding: 10px;
    margin: 0 5px 5px 0;
    display: inline-block;
    line-height: 1.2;
    font-size: 13px;
    position: relative;
    color: #fff;
    border:#cc9900 1px dotted;;
    text-align: center;
}

#contcast section .lico_m,
#contcade #osusume section .lico_m {
    width: 35px;
    position: absolute;
    left: 0;
    top: 0;
}

#contcast section .new,
#contcade #osusume section .new {
    padding: 3px;
    position: absolute;
    top: 0;
    margin-top:7px;
    margin-left:62px;
    display:block;
}
#contcast section .new img {
    width: 35px;
}
#contcast section .line_qr,
#contcade #osusume section .line_qr {
    width: 40px;
    padding: 3px;
    position: absolute;
    bottom: 10px;
    top: 128px;
    left: 3px;
}
#contcast section .threep_mark,
#contcade #osusume section .threep_mark {
    width: 150px;
    position: absolute;
    bottom: 10px;
    bottom: -1px;
    right: -1px;
}

#contcast section img.thum,
#contcade #osusume section img.thum {
    box-shadow: 0px 0px 5px 5px rgba(154, 103, 50, 1);
    width: 100%;
    margin: 0 10px 10px 0;
    width: 100px;
    height: 150px;
    display: block;
    float: left;
}
/*
#contcast section img.thum:before,
#contcast #osusume section img.thum:before {
    content:url(common/img/cast_frame.png);
    position:absolute;
    top:10px;
    left:10px;
    z-index: 100;
}
*/
#contcast section h3,
#contcade #osusume h6 {
    font-size: 1.2em;
    display: inline;
}

#contcast section .staynow{
    width: 103px;
    position: absolute;
    left: 9px;
    bottom: 53px;
}
#contcast h2 {
    color:#fff;
    text-align:center;
    margin-top:0;
}
#contcast p {
    line-height:1.5;
}
#contcast .price {
    margin:;
    display:block;
    clear:both;
}

/* --- for CAST_DETAIL html --- #contcade {  } */
#contcade h3 {
    color: #fff;
    text-align:center;
    font-size:175%;
    letter-spacing: 10px;
    text-shadow: 0px 1px 0px #000;
}

#contcade h4,
#contcade h5 {
    width: 345px;
    margin:0;
    color: #fff;
    font-size: 1.0em;
    border-bottom: 1px solid #db6d00;
    padding:5px;
    margin-top:20px;
}
#contcade #line_qr {
    width: 150px;
}
#contcade h4:before {
    content:url(img/point.gif);
    margin-right:10px;
}
#contcade .new {
    width: 65px;
    font-size: 0.8em;
}
#contcade #photoslider {
    position: relative;
    width: 360px;
    float: right;
}
#contcade #photoslider .threep_mark {
    width: 300px;
    position: absolute;
    top: 445px;
    right: 0;
}


#contcade #photoslider img {
    float: right;
}

#contcade #photoslider .lSSlideOuter .lSPager.lSGallery li.active,
#contcade #photoslider .lSSlideOuter .lSPager.lSGallery li:hover {
    border-bottom: 5px solid #e95189;
}
#contcade #photoslider .caution {
    color: #fff;
}
#contcade #schedule table {
    width: 720px;
    margin: 0 0 50px 0;
    line-height: 1.2;
}
#contcade #schedule table th,
#contcade #schedule table td {
    width: calc(100%/7);
    vertical-align: middle;
    text-align: center;
}
#contcade table th:not(:last-child),
#contcade table td:not(:last-child) {
    border-right: 1px dashed #fff;
}
#contcade table#option {
    width: 720px;
}
#contcade table#option th,
#contcade table#option td {
    width: calc(100%/8);
    text-align: center;
}
#contcade table#option th {
    font-size: .8em;
}
#contcade table#option td {
    font-size: 1.4em;
}
#contcade span {
    color:#fff;
    display:inline-block;
    width: 345px;
}
#contcade #detail a.todetail {
    display:inline-block;
    margin-top:5px;
}

/* --- for GRAVURE html --- #contgrav {  } */
#contgrav {
    color:#fff;
}
#contgrav h3 {
    color:#ffa6ba;
}
#contgrav #photoslider img {
    width: 780px;
}
#contgrav a.todetail {
    margin-top:5px;
    display:inline-block;
}


/* --- for SCHEDULE html --- #contsche {  } */
#contsche h2 {
    color: #fff;
}
#contsche h3 {
    color: var(--time-color);
}
#contsche {
    background-color: #85604E;
}
#contsche table .staynow{
    position: absolute;
    bottom: 5px;
    left: 5px;
}
#contsche table caption {
    padding: 10px;
    color:#fff;
}

#contsche table caption b {
    color: #ffcccc;
}
#contsche table caption h4 {
    display: inline;
}
#contsche table caption h4 a {
    text-decoration:none;
}
#contsche table {
    width: 720px;
    margin: 0 auto;
    line-height: 1.2;
    margin-top:10px;
    margin-bottom:10px;
}
#contsche table th,
#contsche table td {
    width: calc(100%/8);
    vertical-align: middle;
    text-align: center;
    border: 1px solid #ffcccc;
    position: relative;
}
#contsche table th {
    background-color:#ffff99;
    color:#000;
}
#contsche table .thum {
    background-color: #fff;
}
#contsche table td {
    height: 100px;
    background-color: #fff;
}
#contsche .new img {
    width: 5%;
}
/*
#contsche table th:not(:last-child),
#contsche table td:not(:last-child) {
    border-right: 1px dashed #fff;
}
*/
#contsche table a:link,
#contsche table a:visited {
    color: #fff;
}
#contsche #update {
    color: #fff;
    text-align: center;
}
#contsche #update time {
    color: var(--time-color);
    font-size: 1.8em;
}



/* --- for BLOG html --- #contblog {  } */
#contblog h2 {
    color: #fff;
}
#contblog section {
    margin: 0 0 50px 0;
    background-color: #85604E;
    padding:20px;
    border: double #D3B3A1 10px;
}
#contblog section p {
    color: #fff;
}
#contblog section h3 a:link,
#contblog section h3 a:visited {
    color: #ffcccc;
    font-size: 1.4em;
    text-decoration: none;
}

#contblog section time {
    color: #ffff99;
    font-size: 1.4em;
    float:right;
    margin-left:-178px;
}
#contblog section .author {
    float:right;
    margin-top:5px;
    color:#fff;
}
#contblog section img.photo {
    max-width: 240px;
    margin: 0 15px 15px 0;
    vertical-align: top;
    float: left;
}
#contblog section .btn {
    margin: 15px 0 15px 380px;
}


/* --- for SYSTEM html --- #contsyst {  } */
#contsyst h3 {
    font-size: 14px;
    color: #5A3E1C;
    background: #D3B3A1;
    font-weight: 500;
    padding-top: 2px;
    padding-bottom: 2px;
    text-align: left;
    margin-top: 5px;
    margin-bottom: 5px;
    width: 100%;
}
#contsyst .tickets {
margin: 0 auto;
}
#contsyst .card {
    text-align:center;
    margin:15px 0;
}
#contsyst .system table {
    width:100%;
    border:0;
    background: #FFFFFF;
}
#contsyst .system{
    font-size: 15px;
    font-weight: 300;
    color: #5A3E1C;
    text-align: left;
    vertical-align: top;
}
#contsyst .system ul li{
    list-style:none;
}
#contsyst .system ul li:nth-child(2){
    color: #f00;
}
#contsyst .system td {
    border:none;
}
#contsyst .price {
    background-color: #fff;
    padding:5px;
    padding-bottom:30px;
}
#contsyst .price .price_img{
    width: 715px;
}
#contsyst .price table {
    margin-top:10px;
}
#contsyst .price table.price:nth-of-type(1) {
    margin-top:-50px;
}
#contsyst .price table.price {
    width: 95%;
    margin-left:20px;
}
#contsyst .price img.price {
    position:absolute;
}
#contsyst .price th,
#contsyst .price td{
    border: solid 2px #ccac8a;
    text-align:center;
    color:#fff;
    font-size:1.2rem;
    vertical-align: middle;
}
#contsyst .price .free tr th{
    color:#EEDE06;
}
#contsyst .price p {
    font-size:0.9rem;
    margin-left:10px;
}
/* #contsyst .price p:nth-of-type(2) {
    position:absolute;
    margin-left:115px;
    font-size:1.1rem;
    margin-top:2px;
    color:#6F503C;
} */
#contsyst .price img.kouthuhi_img {
    margin-bottom:-65px;
}
#contsyst .price table tr:nth-child(1) {
    background-color: #775C2F;
}
#contsyst .price table tr:nth-child(2) {
    background-color: #8A6F57;
}
#contsyst .price table tr:nth-child(3) {
    background-color: #A08266;
}
#contsyst .price .kouthuhi {
    width: 95%;
    margin-left:20px;
    margin-top:25px;
}
#contsyst .price .kouthuhi tr:nth-child(1) {
    background-color: #B08E76;
}
#contsyst .price .kouthuhi tr:nth-child(2) {
    background-color: #B08E76;
}
#contsyst .price .kouthuhi tr:nth-child(3) {
    background-color: #A37E65;
}
#contsyst .price .kouthuhi tr:nth-child(4) {
    background-color: #8A644A;
}
#contsyst .price .kouthuhi tr:nth-child(5) {
    background-color: #7D5A3F;
}
#contsyst .price .kouthuhi tr:nth-child(6) {
    background-color: #5B3E1C;
}
#contsyst .price .kouthuhi tr:nth-child(7) {
    background-color: #4a3319;
}
#contsyst .price .play {
    width: 100%;
}
#contsyst .price .play .playbox{
    width: calc(93%/2);
    margin-left:22px;
    display: inline-block;

}
#contsyst .price .play table {
    margin-top:-40px;
    margin-left: -10px;
}
#contsyst .play table tr th{
    background: -webkit-linear-gradient(#D0B3A2, #6E4F36);
}
#contsyst .price .play tr th {
    text-align:left;
    font-size:1.1rem;
    padding:10px;
}
#contsyst .price .play_img,
#contsyst .price .option_img {
    margin-left:-30px;
    margin-top:36px;
    width: 98%;
}


#contsyst .red14 {
    color: #FF0000;
    font-size: 14px;
}
.red {
    color: #FF0000;
    font-size: 15px;
    text-align: left;
    line-height: 17px;
}
/* --- for RECRUIT html --- #contrecr {  } */
#contrecr h3 {
    padding: 10px;
    color: var(--heading-color);
    font-size: 1.2em;
    border-left: 5px solid var(--heading-color);
    border-bottom: 1px solid var(--heading-color);
}
#contrecr h4 {
    color: var(--heading-color);
}
#contrecr h2 {
    color:#fff;
}
#contrecr section #rec_content {
    width: 100%;
}
#contrecr section #rec_content dt {
    font-size: 14px;
    color: #5A3E1C;
    padding: 2px 0 2px 2px;
    text-align: left;
    margin-top: 5px;
}
#contrecr section #rec_content>.rec dt {
    background: #D3B3A1;
    font-weight: 500;
    text-align:left;
}
#contrecr section #rec_content>.rec dt:before {
    content: "● ";
}
#contrecr #rec_content dd {
    font-size: 15px;
    font-weight: 300;
    color: #5A3E1C;
    text-align: left;
    background: #FFFFFF;
    padding: 7px 0 5px 2px;
}
#contrecr section #rec_content .ouboshikaku{
    background-color: #fff;
    margin-top: 10px;
    padding: 5px 0;
}
#contrecr section #rec_content .ouboshikaku dt {
    font-weight: 500;
    float: left;
}
#contrecr section #rec_content>.ouboshikaku dt:before {
    content: "■ ";
}
#contrecr section #rec_content>.ouboshikaku dd {
    padding-left: 80px;
    border-bottom: 1px dotted #5a3e1c;
}
#contrecr a {
    color: #5A3E1C;
}

/* --- for LINK html --- #contlink {  } */
#contlink {
    color: #fff;
}
#contlink p {
    line-height: 1.8;
}
#contlink .readme {
    color: #ff0;
}
#contlink table {
    margin-bottom:30px;
}
#contlink section {
    line-height: 1.5;
    margin: 20px 0;
}
#contlink h3 {
    font-size: .8em;
    margin: 5px 0;
}

/* --- for ENQUETE html --- #contenqu {  } */
#contenqu {
    width: 680px;
    margin:0 auto;
    margin-bottom:100px;
}
#contenqu h2 {
    color:#fff;
}
#contenqu h3 {
    font-size: 14px;
    color: #5A3E1C;
    background: #D3B3A1;
    font-weight: 500;
    padding-top: 2px;
    padding-bottom: 2px;
    text-align: left;
    margin-top: 5px;
    margin-bottom: 5px;
    width: 100%;
}
#contenqu form dl dt {
    font-size:1.2rem;
    background-color: #D3B3A1;
    color:#5A3E1C;
    padding:10px;
    border-left: #7C4936 46px solid;
    border-right: #7C4936 46px solid;
    margin-top:20px;
    font-weight:bold;
    text-align:center;
    border-radius:20px 20px 0 0;
}
#contenqu form dl dd {
    padding:30px 20px;
    margin-bottom:30px;
    line-height:2;
    background-color: #fffcf5;
    color:#5A3E1C;
    border: double #D3B3A1 10px;
    text-align:center;
}
#contenqu form dl dd textarea {
    width: 100%;
    height: 80px;
    background-color: #fff;
}
#contenqu form input {
    background-color: #fff;
}
#contenqu form label {
    margin-right:30px;
}
#contenqu form .btn {
    text-align: center;
}
#contenqu form select {
    background-color: #fff;
}
#contenqu form button {
    background: linear-gradient(to bottom, #ffcccc 5%, #ef0239 100%);
    background-color: #ff5bb0;
    border-radius: 6px;
    border: 1px solid #ef0239;
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    padding: 10px 20px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #634110;
    margin:0 auto;
    display:block;
}
#contenqu .caution {
    background-color: #ffffffba;
    display:block;
    padding:10px;
}
#contenqu .smltxt {
    font-size:0.9rem;
    padding:0;
    color: #900;
    font-weight: bold;
}
#contenqu hr {
    margin:0;
}