@charset 'UTF-8';
body
{
    background: #fff;
}

/* -----------------------------------------------------------------------
## index.html ############################################################
----------------------------------------------------------------------- */
main
{
    padding-top: 64px;
}

.pageTitle
{
    font-size: 48px;
    font-weight: normal;

    padding: 36px 0;

    color: #7b5b4a;
}

.stage-index
{
    display: block;

    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
.stage-index .stage
{
    margin: 0 0 0 -24px;
}
.stage-index .stageList
{
    float: left;

    box-sizing: border-box;
    width: 33.333%;
    margin: 0 0 24px 0;
    padding: 0 0 0 24px;
}
.stage-index .stageList a
{
    position: relative;

    display: block;
    overflow: hidden;

    transition: .4s ease;
}
.stage-index .stageList a:hover
{
    opacity: .75;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=75)';
}
.stage-index .stageList img
{
    width: 100%;
    height: auto;

    vertical-align: bottom;
}
.stage-index .stageList:first-child a:before
{
    position: absolute;
    top: 20px;
    left: -45px;

    width: 150px;
    padding: 4px 0;

    content: '最新';
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    text-align: center;

    color: #fff;
    background: #e1362d;
}
.stage-index .volume
{
    position: absolute;
    top: 0;
    right: 0;

    padding: 8px 16px;

    color: #fff;
    background: rgba(0, 0, 0, .5) url(/common/img/common/pattern.png) repeat;
}
.stage-index .statusBox
{
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;

    color: #fff;
    background: rgba(0, 0, 0, .5) url(/common/img/common/pattern.png) repeat;
}
.stage-index .statusBox span
{
    display: block;
}
.stage-index .statusBox .titleBox
{
    padding: 8px 8px 0;
}
.stage-index .statusBox .date
{
    padding: 0 8px;
}
.stage-index .statusBox .place
{
    padding: 0 8px 8px;
}
.stage-index .statusBox .side
{
    font-size: 1.84615em;
    line-height: 48px;

    position: absolute;
    top: -64px;
    right: 16px;
    bottom: 0;

    width: 48px;
    height: 48px;
    margin: auto;

    text-align: center;

    color: #333;
    color: #7b5b4a;
    border-radius: 100%;
    background: white;
    box-shadow: 0 2px 7px rgba(0, 0, 0, .35);
}
.stage-index .statusBox .side span
{
    font-size: .54167em;

    display: inline;
}

@media screen and (max-width: 768px)
{
    .pageTitle
    {
        font-size: 2.76923em;

        padding-right: 16px;
        padding-left: 16px;
    }

    .stage-index .stageList
    {
        width: 50%;
    }
    .stage-index .stageList img
    {
        width: 100%;
    }
}
@media screen and (max-width: 640px)
{
    .stage-index .stage
    {
        padding: 0 16px;
    }
    .stage-index .stageList
    {
        width: 100%;
    }
}
/* -----------------------------------------------------------------------
## stage.html ############################################################
----------------------------------------------------------------------- */
.stageInner
{
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 16px 32px;
}

.stage-detail
{
    display: block;
}
.stage-detail .pageTitle
{
    margin-bottom: 32px;
    padding: 32px 0 0;
}
.stage-detail .pageTitle .numbering
{
    font-size: .5em;
    line-height: 1;

    display: block;
}
.stage-detail .heading
{
    font-size: 32px;
    font-weight: normal;

    margin-bottom: 16px;
    padding: 0;
}
.stage-detail .heading + p
{
    margin-bottom: 40px;
}
.stage-detail .stage_story
{
    font-size: 16px;
    line-height: 1.7;

    margin-bottom: 32px;
    padding: 0;
}
.stage-detail .stage_story .stage_catch
{
    font-weight: bold;

    display: block;

    margin-bottom: 16px;
}
.stage-detail .stageDetailWrapper
{
    margin-bottom: 16px;
}
.stage-detail .stageDetailWrapper_flyer
{
    float: right;

    width: 55%;

    text-align: center;
}
.stage-detail .stageDetailWrapper_flyer img
{
    width: 100%;
}
.stage-detail .stageDetailWrapper_text
{
    width: 40%;
}
.stage-detail .stageDetailWrapper_text > p
{
    font-size: 16px;

    padding: 0;
}
.stage-detail .stageDetailWrapper .stage_cast
{
    font-size: 13px;

    padding: 0;
}
.stage-detail .stageDetailWrapper .stage_cast dt
{
    float: left;

    width: 104px;
    padding-bottom: 8px;
}
.stage-detail .stageDetailWrapper .stage_cast dd
{
    margin: 0 0 8px 0;
    padding: 0 0 8px 114px;

    border-bottom: 1px dotted #ccc;
}
.stage-detail .stageDetailWrapper .stage_cast .affiliation
{
    font-size: 11px;
}
.stage-detail .postNavi
{
    clear: both;

    margin: 32px 0 0;
    padding: 8px 0 0;

    border-top: 3px double #ccc;
}
.stage-detail .postNavi_prev
{
    float: left;

    width: 40%;
}
.stage-detail .postNavi_prev a
{
    display: inline-block;

    padding: 12px 32px;

    text-align: center;

    color: #7b5b4a;
    background: #ffdf7f;
}
.stage-detail .postNavi_prev a:hover
{
    background: #ffbf00;
}
.stage-detail .postNavi_next
{
    float: right;

    width: 40%;

    text-align: right;
}
.stage-detail .postNavi_next a
{
    display: inline-block;

    padding: 12px 32px;

    text-align: center;

    color: #7b5b4a;
    background: #ffdf7f;
}
.stage-detail .postNavi_next a:hover
{
    background: #ffbf00;
}
.stage-detail .article_sns
{
    text-align: right;
}
.stage-detail .article_sns li
{
    display: inline-block;

    vertical-align: top;
}

@media screen and (max-width: 768px)
{
    .stageInner
    {
        width: auto;
    }

    .stage-detail .pageTitle
    {
        margin-bottom: 16px;
    }
    .stage-detail .pageTitle .numbering
    {
        font-size: .75rem;
    }
    .stage-detail .heading
    {
        font-size: 1.333rem;

        margin-bottom: 0;
    }
    .stage-detail .heading + p
    {
        margin: 8px 0 24px;
    }
    .stage-detail .stage_story
    {
        font-size: .875rem;
    }
    .stage-detail .stageDetailWrapper_flyer
    {
        float: none;

        width: 100%;
        max-width: 320px;
        margin: 0 auto 16px;
    }
    .stage-detail .stageDetailWrapper_flyer img
    {
        width: 100%;
    }
    .stage-detail .stageDetailWrapper_text
    {
        width: auto;
    }
    .stage-detail .stageDetailWrapper .stage_cast
    {
        margin-top: 8px;
    }
    .stage-detail .postNavi
    {
        margin: 32px 0;
    }
    .stage-detail .postNavi_prev
    {
        width: 100%;
        margin-bottom: 8px;
    }
    .stage-detail .postNavi_prev a
    {
        display: block;
    }
    .stage-detail .postNavi_next
    {
        width: 100%;
    }
    .stage-detail .postNavi_next a
    {
        display: block;
    }
}
@media screen and (max-width: 640px)
{
    .stage-detail .pageTitle
    {
        font-size: 1.84615em;
    }
}
/* -----------------------------------------------------------------------
## slider ################################################################
----------------------------------------------------------------------- */
.slider
{
    position: relative;

    overflow: auto;
}

.unslider
{
    position: relative;

    overflow: auto;

    margin: 0;
    padding: 0;
}

.unslider-wrap
{
    position: relative;
}

.unslider-wrap.unslider-carousel li
{
    float: left;
}

.unslider-vertical > ul
{
    height: 100%;
}

.unslider-vertical li
{
    float: none;

    width: 100%;
}

.unslider-fade
{
    position: relative;
}

.unslider-fade .unslider-wrap li
{
    position: absolute;
    z-index: 8;
    top: 0;
    right: 0;
    left: 0;
}

.unslider-fade .unslider-wrap li.unslider-active
{
    z-index: 10;
}

.unslider li,
.unslider ol,
.unslider ul
{
    margin: 0;
    padding: 0;

    list-style: none;

    border: none;
}

.unslider-arrow
{
    display: none;
}

.unslider-nav > ol
{
    text-align: center;
}

.unslider-nav li
{
    line-height: 1;

    display: inline-block;

    margin: 8px;
    padding: 16px 32px;

    cursor: pointer;

    background: #ffdf7f;
}

.unslider-nav .unslider-active
{
    cursor: default;

    color: #fff;
    background: #e1362d;
}

.unslider-nav li:hover
{
    background: #ffbf00;
}

.unslider-nav .unslider-active:hover
{
    background: #e1362d;
}
