/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
#mainContents
{
    line-height: 1;
}
#mainContents div,
#mainContents span,
#mainContents object,
#mainContents iframe,
#mainContents h1,
#mainContents h2,
#mainContents h3,
#mainContents h4,
#mainContents h5,
#mainContents h6,
#mainContents p,
#mainContents blockquote,
#mainContents pre,
#mainContents abbr,
#mainContents address,
#mainContents cite,
#mainContents code,
#mainContents del,
#mainContents dfn,
#mainContents em,
#mainContents img,
#mainContents ins,
#mainContents kbd,
#mainContents q,
#mainContents samp,
#mainContents small,
#mainContents strong,
#mainContents sub,
#mainContents sup,
#mainContents var,
#mainContents b,
#mainContents i,
#mainContents dl,
#mainContents dt,
#mainContents dd,
#mainContents ol,
#mainContents ul,
#mainContents li,
#mainContents fieldset,
#mainContents form,
#mainContents label,
#mainContents legend,
#mainContents table,
#mainContents caption,
#mainContents tbody,
#mainContents tfoot,
#mainContents thead,
#mainContents tr,
#mainContents th,
#mainContents td,
#mainContents article,
#mainContents aside,
#mainContents canvas,
#mainContents details,
#mainContents figcaption,
#mainContents figure,
#mainContents footer,
#mainContents header,
#mainContents hgroup,
#mainContents menu,
#mainContents nav,
#mainContents section,
#mainContents summary,
#mainContents time,
#mainContents mark,
#mainContents audio,
#mainContents video
{
    font-size: 100%;

    margin: 0;
    padding: 0;

    list-style: none; 

    vertical-align: baseline;

    border: 0;
    outline: 0;
    background: transparent;
}
#mainContents article,
#mainContents aside,
#mainContents details,
#mainContents figcaption,
#mainContents figure,
#mainContents footer,
#mainContents header,
#mainContents hgroup,
#mainContents menu,
#mainContents nav,
#mainContents section
{
    display: block;
}
#mainContents nav ul
{
    list-style: none;
}
#mainContents blockquote,
#mainContents q
{
    quotes: none;
}
#mainContents blockquote:before,
#mainContents blockquote:after,
#mainContents q:before,
#mainContents q:after
{
    content: '';
    content: none;
}
#mainContents a
{
    font-size: 100%;

    margin: 0;
    padding: 0;

    vertical-align: baseline;
    text-decoration: none; 

    background: transparent;
}
#mainContents ins
{
    text-decoration: none; 

    color: #000;
    background-color: #ff9;
}
#mainContents mark
{
    font-weight: bold; 
    font-style: italic;

    color: #000;
    background-color: #ff9;
}
#mainContents del
{
    text-decoration: line-through;
}
#mainContents abbr[title],
#mainContents dfn[title]
{
    cursor: help; 

    border-bottom: 1px dotted;
}
#mainContents table
{
    border-spacing: 0; 
    border-collapse: collapse;
}
#mainContents hr
{
    display: block;

    height: 1px;
    margin: 1em 0;
    padding: 0; 

    border: 0;
    border-top: 1px solid #ccc;
}
#mainContents input,
#mainContents select
{
    vertical-align: middle;
}
#mainContents img,
#mainContents video
{
    font-size: 0; 
    line-height: 0;
}

@media screen and (max-width: 767px)
{
    .u-is-pc
    {
        display: none !important;
    }
}

@media screen and (min-width: 768px)
{
    .u-is-sp
    {
        display: none !important;
    }
}

@media screen and (max-width: 767px)
{
    .global-footer
    {
        margin-top: 0 !important;
    }
}

#mainContents
{
    font-family: 'Noto Serif JP', serif;

    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents
    {
        width: 100%;
        min-width: 1200px;
        margin-right: auto;
        margin-left: auto;
    }
}

@-webkit-keyframes bounceIn
{
    0%
    {
        -webkit-transform: scale(.3);
        transform: scale(.3); 

        opacity: 0;
    }
    70%
    {
        -webkit-transform: scale(1.1);
        transform: scale(1.1); 

        opacity: 1;
    }
    100%
    {
        -webkit-transform: scale(1);
        transform: scale(1); 

        opacity: 1;
    }
}

@keyframes bounceIn
{
    0%
    {
        -webkit-transform: scale(.3);
        transform: scale(.3); 

        opacity: 0;
    }
    70%
    {
        -webkit-transform: scale(1.1);
        transform: scale(1.1); 

        opacity: 1;
    }
    100%
    {
        -webkit-transform: scale(1);
        transform: scale(1); 

        opacity: 1;
    }
}
#mainContents .p-kv_wrapper
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv_wrapper
    {
        height: calc(100vh - 129px);
    }
}
#mainContents .p-kv
{
    position: relative;
    z-index: 1;

    overflow: hidden; 

    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv
    {
        width: 100%;
        height: calc(100vh - 129px - 50px);

        background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #dac49b), color-stop(50%, #cbb68b));

        background-image: -webkit-linear-gradient(left, #dac49b 50%, #cbb68b 50%);

        background-image: linear-gradient(90deg, #dac49b 50%, #cbb68b 50%);
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv
    {
        height: 88.26667vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv .p-kv-hdg
    {
        position: absolute;
        top: 0;
        left: 50%;

        height: 100%; 

        -webkit-transform: translateX(-50%); 

        transform: translateX(-50%);
    }
    #mainContents .p-kv .p-kv-hdg::before,
    #mainContents .p-kv .p-kv-hdg::after
    {
        position: absolute;
        top: 0;

        display: block;

        width: 50px;
        height: 100%; 

        content: '';
    }
    #mainContents .p-kv .p-kv-hdg::before
    {
        left: 0; 

        background-image: -webkit-gradient(linear, left top, right top, from(#dac49b), to(rgba(218, 196, 155, 0))); 

        background-image: -webkit-linear-gradient(left, #dac49b, rgba(218, 196, 155, 0)); 

        background-image: linear-gradient(90deg, #dac49b, rgba(218, 196, 155, 0));
    }
    #mainContents .p-kv .p-kv-hdg::after
    {
        right: 0; 

        background-image: -webkit-gradient(linear, right top, left top, from(#cbb68b), to(rgba(203, 182, 139, 0))); 

        background-image: -webkit-linear-gradient(right, #cbb68b, rgba(203, 182, 139, 0)); 

        background-image: linear-gradient(-90deg, #cbb68b, rgba(203, 182, 139, 0));
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv .p-kv-hdg img
    {
        width: auto;
        height: 100%;
    }
}

@-webkit-keyframes fadeInVideo
{
    to
    {
        opacity: 1;
    }
}

@keyframes fadeInVideo
{
    to
    {
        opacity: 1;
    }
}
#mainContents .p-kv-countdown_wrapper
{
    z-index: 1; 

    display: -webkit-box; 

    display: -webkit-flex; 

    display: -ms-flexbox; 

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;

    width: 100%;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper
    {
        position: relative;

        height: 50px;

        background-image: -webkit-gradient(linear, left top, right top, from(#ffdb6e), color-stop(30%, #ffedc5), color-stop(50%, #fffce7), color-stop(70%, #ffeeb6), to(#fae395));

        background-image: -webkit-linear-gradient(left, #ffdb6e, #ffedc5 30%, #fffce7 50%, #ffeeb6 70%, #fae395);

        background-image: linear-gradient(90deg, #ffdb6e, #ffedc5 30%, #fffce7 50%, #ffeeb6 70%, #fae395);
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper
    {
        height: 33.33333vw;

        background-image: -webkit-linear-gradient(40deg, #ffd453, #fffbef 30%, #fffff7 50%, #ffedc5 70%, #ffd453);

        background-image: linear-gradient(50deg, #ffd453, #fffbef 30%, #fffff7 50%, #ffedc5 70%, #ffd453);
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_inner
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;

        width: 774px; 
        margin: 0 auto;

        text-align: center;

        -webkit-box-align: center;

        -webkit-align-items: center;

        -ms-flex-align: center;

        align-items: center;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_inner > .-deco
{
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_inner > .-deco
    {
        height: 2px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_inner > .-deco
    {
        display: none;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_inner > .-deco.-before
{
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(241, 186, 105, 0)), color-stop(30%, rgba(230, 158, 52, .4)), color-stop(50%, rgba(242, 216, 159, .8)), to(#fabe65));
    background-image: -webkit-linear-gradient(left, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
    background-image: linear-gradient(90deg, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_inner > .-deco.-after
{
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(241, 186, 105, 0)), color-stop(30%, rgba(230, 158, 52, .4)), color-stop(50%, rgba(242, 216, 159, .8)), to(#fabe65));
    background-image: -webkit-linear-gradient(right, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
    background-image: linear-gradient(-90deg, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    margin: 0 auto; 

    text-align: center;

    -webkit-box-align: center;

    -webkit-align-items: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl
    {
        margin-right: 20px; 
        margin-left: 16px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl
    {
        width: 89.33333vw;
        margin-bottom: 2.13333vw;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl.-center
{
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl .-txt
{
    display: inline-block;

    color: #342b2b;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl .-txt
    {
        font-size: 18px;
        font-weight: 700;
        line-height: 1;

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl .-txt
    {
        font-size: 4.8vw;
        font-weight: 700;
        line-height: 1;

        padding: 0 1.6vw; 

        letter-spacing: .06em;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl > .-deco
{
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl > .-deco
    {
        display: none;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl > .-deco
    {
        height: .53333vw;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl > .-deco.-before
{
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(241, 186, 105, 0)), color-stop(30%, rgba(230, 158, 52, .4)), color-stop(50%, rgba(242, 216, 159, .8)), to(#fabe65));
    background-image: -webkit-linear-gradient(left, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
    background-image: linear-gradient(90deg, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown_ttl > .-deco.-after
{
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(241, 186, 105, 0)), color-stop(30%, rgba(230, 158, 52, .4)), color-stop(50%, rgba(242, 216, 159, .8)), to(#fabe65));
    background-image: -webkit-linear-gradient(right, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
    background-image: linear-gradient(-90deg, rgba(241, 186, 105, 0), rgba(230, 158, 52, .4) 30%, rgba(242, 216, 159, .8) 50% 70%, #fabe65);
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin: 0 auto; 

    -webkit-box-pack: center; 

    -webkit-justify-content: center; 

    -ms-flex-pack: center; 

    justify-content: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown
    {
        width: 254px;
        margin-right: 16px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown
    {
        width: 82.66667vw;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown *
{
    color: #342b2b;
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item
{
    position: relative; 

    display: block;

    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

        -webkit-align-items: center;

        -ms-flex-align: center;

        align-items: center;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item
    {
        width: 25%;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(1)
    {
        margin-right: 10px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2)
    {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2)::after
    {
        content: none !important;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2) .-txt,
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(3) .-txt,
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(4) .-txt
    {
        display: none;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2),
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(3),
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(4)
    {
        margin-left: 19px;
        padding-left: 22px;
    }
}
#mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2)::after,
#mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(3)::after,
#mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(4)::after
{
    position: absolute;
    left: 0; 

    content: ':';
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2)::after,
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(3)::after,
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(4)::after
    {
        font-size: 28px;
        font-weight: 700;
        line-height: 1;

        top: -3px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(2)::after,
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(3)::after,
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item:nth-of-type(4)::after
    {
        font-size: 8vw;
        font-weight: 700;
        line-height: 1;

        top: .53333vw; 

        letter-spacing: 0;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item .-num
    {
        font-size: 28px;
        font-weight: 700;
        line-height: 1; 

        width: 35px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item .-num
    {
        font-size: 10.66667vw;
        font-weight: 700; 
        line-height: 1;

        display: block;

        letter-spacing: 0;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item .-txt
    {
        font-size: 16px;
        font-weight: 700;
        line-height: 1;

        margin-left: 6px;

        -webkit-transform: translateY(3px);

        transform: translateY(3px);
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-kv-countdown_wrapper .p-kv-countdown .-item .-txt
    {
        font-size: 2.66667vw;
        font-weight: 700;
        line-height: 1;

        display: block;

        margin-top: 1.6vw; 

        letter-spacing: .12em;
    }
}
#mainContents .p-about
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about
    {
        margin-top: 9.86111vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about
    {
        margin-top: 118.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about
    {
        margin-top: 24.8vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .c-hdg + .p-about-statement-txt01
    {
        margin-top: 4.09722vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .c-hdg + .p-about-statement-txt01
    {
        margin-top: 49.16667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .c-hdg + .p-about-statement-txt01
    {
        margin-top: 11.2vw;
    }
}
#mainContents .p-about .p-about-statement-txt01
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-statement-txt01
    {
        font-size: 1.66667vw;
        font-weight: 700;
        line-height: 2;

        margin-top: 2.22222vw; 

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-statement-txt01
    {
        font-size: 20px;
        font-weight: 700;
        line-height: 2;

        margin-top: 26.66667px; 

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-statement-txt01
    {
        font-size: 3.73333vw;
        font-weight: 700;
        line-height: 2;

        margin-top: 7.2vw; 

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-statement-txt01 + .p-about-statement-txt01
    {
        margin-top: 2.22222vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-statement-txt01 + .p-about-statement-txt01
    {
        margin-top: 26.66667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-statement-txt01 + .p-about-statement-txt01
    {
        margin-top: 5.33333vw;
    }
}
#mainContents .p-about .p-about-statement-txt02
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-statement-txt02
    {
        font-size: 1.66667vw;
        font-weight: 700;
        line-height: 2;

        margin-top: 2.77778vw; 

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-statement-txt02
    {
        font-size: 20px;
        font-weight: 700;
        line-height: 2;

        margin-top: 33.33333px; 

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-statement-txt02
    {
        font-size: 5.33333vw;
        font-weight: 700;
        line-height: 2;

        margin-top: 8.8vw; 

        letter-spacing: .06em;
    }
}
#mainContents .p-about .p-about-statement-txt03
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-statement-txt03
    {
        margin-top: 4.375vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-statement-txt03
    {
        margin-top: 52.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-statement-txt03
    {
        margin-top: 8vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-statement-txt03 img
    {
        width: 33.05556vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-statement-txt03 img
    {
        width: 396.66667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-statement-txt03 img
    {
        width: 59.73333vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-statement-txt03 + .p-about-statement-txt04
    {
        margin-top: 1.38889vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-statement-txt03 + .p-about-statement-txt04
    {
        margin-top: 16.66667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-statement-txt03 + .p-about-statement-txt04
    {
        margin-top: 4vw;
    }
}
#mainContents .p-about .p-about-features01
{
    position: relative; 

    margin: 0 auto;

    background-image: -webkit-linear-gradient(#fffefa, #fffefa), -webkit-linear-gradient(230deg, #cf9f2e, #925625 13%, #ab7536 23%, #eec663 50%, #e2bc5c 75%, #af7938 92%, #ddb554);

    background-image: linear-gradient(#fffefa, #fffefa), linear-gradient(220deg, #cf9f2e, #925625 13%, #ab7536 23%, #eec663 50%, #e2bc5c 75%, #af7938 92%, #ddb554);
    background-clip: padding-box, border-box;
    background-origin: border-box;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01
    {
        width: 86.11111vw;
        margin-top: 9.65278vw;
        padding: 5.20833vw 4.58333vw;

        border: 2px solid transparent; 
        border-radius: 2.08333vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01
    {
        width: 1033.33333px;
        margin-top: 115.83333px;
        padding: 62.5px 55px;

        border-radius: 25px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-features01
    {
        width: 100%;
        margin-top: 23.2vw;
        padding: 19.73333vw 5.33333vw 15.73333vw;

        border-top: 2px solid transparent;
        border-bottom: 2px solid transparent;
    }
}
#mainContents .p-about .p-about-features01 .p-about-features01_img
{
    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_img
    {
        width: 17.5vw;
        margin-top: 6.45833vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_img
    {
        width: 210px;
        margin-top: 77.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_img
    {
        width: 49.06667vw;
        margin-top: 8.53333vw;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        margin-top: .53333vw;

        row-gap: 4.26667vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item
    {
        position: absolute;

        width: 26.04167vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item
    {
        width: 312.5px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item::after
    {
        position: absolute;

        display: block;

        content: '';

        background-repeat: no-repeat;
        background-size: contain;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item01
    {
        top: 22.63889vw;
        left: 4.58333vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item01
    {
        top: 271.66667px;
        left: 55px;
    }
}
#mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item01::after
{
    background-image: url(../../assets/img/about/line_01.svg);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item01::after
    {
        top: 1.45833vw;
        right: -3.19444vw; 

        width: 19.4625vw;
        height: 5.28819vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item01::after
    {
        top: 17.5px;
        right: -38.33333px; 

        width: 233.55px;
        height: 63.45833px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item02
    {
        top: 29.44444vw;
        left: 57.91667vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item02
    {
        top: 353.33333px;
        left: 695px;
    }
}
#mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item02::after
{
    background-image: url(../../assets/img/about/line_02.svg);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item02::after
    {
        top: 1.59722vw;
        left: -5.76389vw; 

        width: 5.12222vw;
        height: 5.28819vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item02::after
    {
        top: 19.16667px;
        left: -69.16667px; 

        width: 61.46667px;
        height: 63.45833px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item03
    {
        top: 40.69444vw;
        left: 4.58333vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item03
    {
        top: 488.33333px;
        left: 55px;
    }
}
#mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item03::after
{
    background-image: url(../../assets/img/about/line_03.svg);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item03::after
    {
        top: -.83333vw;
        right: -3.19444vw; 

        width: 19.40694vw;
        height: 2.38819vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item.-item03::after
    {
        top: -10px;
        right: -38.33333px; 

        width: 232.88333px;
        height: 28.65833px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-point
    {
        width: 9.02778vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-point
    {
        width: 108.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-point
    {
        width: 19.2vw;
    }
}
#mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-ttl
{
    color: transparent; 
    background: -webkit-linear-gradient(20deg, #fabe65, #e69e34 25%, #ffaf00 50%, #e69e34 90%, #f1ba69); 
    background: linear-gradient(70deg, #fabe65, #e69e34 25%, #ffaf00 50%, #e69e34 90%, #f1ba69);
    -webkit-background-clip: text;
            background-clip: text;

    -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-ttl
    {
        font-size: 2.22222vw;
        font-weight: 700;
        line-height: 2;

        margin-top: .69444vw; 

        letter-spacing: .04em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-ttl
    {
        font-size: 26.66667px;
        font-weight: 700;
        line-height: 2;

        margin-top: 8.33333px; 

        letter-spacing: .04em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-ttl
    {
        font-size: 6.4vw;
        font-weight: 700;
        line-height: 1.6;

        margin-top: 1.06667vw; 

        letter-spacing: .04em;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-txt
    {
        font-size: 1.11111vw;
        font-weight: 700;
        line-height: 1.6;

        margin-top: .69444vw; 

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-txt
    {
        font-size: 13.33333px;
        font-weight: 700;
        line-height: 1.6;

        margin-top: 8.33333px; 

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .p-about-features01 .p-about-features01_list .p-about-features01_item .-txt
    {
        font-size: 3.73333vw;
        font-weight: 700;
        line-height: 1.6;

        margin-top: .8vw; 

        letter-spacing: .06em;
    }
}
#mainContents .p-movie
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie
    {
        margin-top: 10.27778vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie
    {
        margin-top: 123.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie
    {
        margin-top: 25.06667vw;
    }
}
#mainContents .p-movie .p-movie-hdg
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-hdg
    {
        font-size: 3.33333vw;
        font-weight: 300; 
        line-height: .768;

        margin-top: 11.11111vw;

        letter-spacing: 1em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-hdg
    {
        font-size: 40px;
        font-weight: 300; 
        line-height: .768;

        margin-top: 133.33333px;

        letter-spacing: 1em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-hdg
    {
        font-size: 6.93333vw;
        font-weight: 300; 
        line-height: .48;

        margin-top: 21.33333vw;

        letter-spacing: 1em;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .js-cm-slider
    {
        margin-top: 6.04167vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .js-cm-slider
    {
        margin-top: 72.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .js-cm-slider
    {
        margin-top: 14.4vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-thumb + .p-movie-hdg
    {
        margin-top: 10.90278vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-thumb + .p-movie-hdg
    {
        margin-top: 130.83333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-thumb + .p-movie-hdg
    {
        margin-top: 26.13333vw;
    }
}
#mainContents .p-movie .p-movie-slide
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-slide
    {
        width: 50vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-slide
    {
        width: 600px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-slide
    {
        width: 76vw;
    }
}
#mainContents .p-movie .p-movie-thumb
{
    position: relative; 

    display: block;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-thumb
    {
        width: 42.22222vw;

        cursor: pointer;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-thumb
    {
        width: 506.66667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-thumb
    {
        width: 76vw;
    }
}
#mainContents .p-movie .p-movie-thumb::before,
#mainContents .p-movie .p-movie-thumb::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    content: '';
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
}
#mainContents .p-movie .p-movie-thumb::before
{
    z-index: 1;

    -webkit-transform: translate(-50%, -50%);

    transform: translate(-50%, -50%); 

    border-radius: 50%;
    background-color: #dfbe35;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-thumb::before
    {
        width: 4.86111vw;
        height: 4.86111vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-thumb::before
    {
        width: 58.33333px;
        height: 58.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-thumb::before
    {
        width: 10.66667vw;
        height: 10.66667vw;
    }
}
#mainContents .p-movie .p-movie-thumb::after
{
    z-index: 2;

    -webkit-transform: translate(-35%, -50%);

    transform: translate(-35%, -50%); 

    background-color: #fff;

    -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);

    clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-thumb::after
    {
        width: 1.25vw;
        height: 1.52778vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-thumb::after
    {
        width: 15px;
        height: 18.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-thumb::after
    {
        width: 2.93333vw;
        height: 3.2vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-thumb:hover::before
    {
        background-color: #fff;
    }
    #mainContents .p-movie .p-movie-thumb:hover::after
    {
        background-color: #dfbe35;
    }
}
#mainContents .p-movie .p-movie-caption
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-caption
    {
        font-size: 1.38889vw;
        font-weight: 300;
        line-height: .3;

        margin-top: 1.73611vw; 

        letter-spacing: -.3em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-caption
    {
        font-size: 16.66667px;
        font-weight: 300;
        line-height: .3;

        margin-top: 20.83333px; 

        letter-spacing: -.3em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-caption
    {
        font-size: 3.2vw;
        font-weight: 300;
        line-height: .18;

        margin-top: 3.46667vw; 

        letter-spacing: -.3em;
    }
}
#mainContents .p-movie .p-movie-cast-list
{
    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list
    {
        width: 58.33333vw;
        margin-top: 2.36111vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list
    {
        width: 700px;
        margin-top: 28.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list
    {
        width: 78.66667vw;
        margin: 0 auto;
        margin-top: 6.4vw;
    }
}
#mainContents .p-movie .p-movie-cast-list .p-movie-cast-item
{
    border: 1px solid #5c5c5c;
    background-color: #000;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;

        padding: 1.66667vw; 

        -webkit-box-pack: justify; 

        -webkit-justify-content: space-between; 

        -ms-flex-pack: justify; 

        justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item
    {
        padding: 20px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item
    {
        padding: 3.73333vw;
    }
}
#mainContents .p-movie .p-movie-cast-list .p-movie-cast-item.-toBe
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item.-toBe
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        height: 12.5vw;
        padding: 0; 

        -webkit-box-pack: center; 

        -webkit-justify-content: center; 

        -ms-flex-pack: center; 

        justify-content: center;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item.-toBe
    {
        height: 150px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item.-toBe
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        height: 40vw; 

        -webkit-box-pack: center; 

        -webkit-justify-content: center; 

        -ms-flex-pack: center; 

        justify-content: center;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item + .p-movie-cast-item
    {
        margin-top: .69444vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item + .p-movie-cast-item
    {
        margin-top: 8.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item + .p-movie-cast-item
    {
        margin-top: 8vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-img
    {
        width: 14.93056vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-img
    {
        width: 179.16667px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-desc
    {
        width: 37.77778vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-desc
    {
        width: 453.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-desc
    {
        margin-top: 3.73333vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name
    {
        font-size: 1.94444vw;
        font-weight: 300; 
        line-height: .42;

        letter-spacing: 0;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name
    {
        font-size: 23.33333px;
        font-weight: 300; 
        line-height: .42;

        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name
    {
        font-size: 5.86667vw;
        font-weight: 300; 
        line-height: .33;

        letter-spacing: 0;
    }
}
#mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name + .p-movie-cast-item-txt
{
    border-top: 1px solid #fff;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name + .p-movie-cast-item-txt
    {
        margin-top: .97222vw;
        padding-top: .625vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name + .p-movie-cast-item-txt
    {
        margin-top: 11.66667px;
        padding-top: 7.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-name + .p-movie-cast-item-txt
    {
        margin-top: 2.4vw;
        padding-top: 2.4vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-txt
    {
        font-size: 1.11111vw;
        font-weight: 300; 
        line-height: .24;

        letter-spacing: 0;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-txt
    {
        font-size: 13.33333px;
        font-weight: 300; 
        line-height: .24;

        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-item-txt
    {
        font-size: 3.73333vw;
        font-weight: 300; 
        line-height: .21;

        letter-spacing: 0;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-txt01
    {
        font-size: 2.36111vw;
        font-weight: 300;
        line-height: .34;

        margin-bottom: 1.04167vw; 

        letter-spacing: 0;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-txt01
    {
        font-size: 28.33333px;
        font-weight: 300;
        line-height: .34;

        margin-bottom: 12.5px; 

        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-txt01
    {
        font-size: 5.86667vw;
        font-weight: 300;
        line-height: .22;

        margin-bottom: 3.46667vw; 

        letter-spacing: 0;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-txt02
    {
        font-size: 1.25vw;
        font-weight: 300; 
        line-height: .18;

        letter-spacing: 0;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-txt02
    {
        font-size: 15px;
        font-weight: 300; 
        line-height: .18;

        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .p-movie-cast-list .p-movie-cast-item .p-movie-cast-txt02
    {
        font-size: 3.73333vw;
        font-weight: 300; 
        line-height: .14;

        letter-spacing: 0;
    }
}
#mainContents .p-movie .splide__arrow
{
    position: absolute;
    z-index: 1;

    background-color: #000; 

    -webkit-mask-position: center center; 

    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../../assets/img/common/icon-arrow-04.svg);
    mask-image: url(../../assets/img/common/icon-arrow-04.svg);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .splide__arrow
    {
        top: 9.79167vw;

        width: 1.66667vw;
        height: 3.49028vw;

        cursor: pointer;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .splide__arrow
    {
        top: 117.5px; 

        width: 20px;
        height: 41.88333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .splide__arrow
    {
        top: 18.13333vw; 

        width: 3.38667vw;
        height: 6.76vw;
    }
}
#mainContents .p-movie .splide__arrow:disabled
{
    opacity: .3;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .splide__arrow.splide__arrow--prev
    {
        right: 50%;

        margin-right: 27.29167vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .splide__arrow.splide__arrow--prev
    {
        margin-right: 327.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .splide__arrow.splide__arrow--prev
    {
        left: 4.8vw;
    }
}
#mainContents .p-movie .splide__arrow.splide__arrow--next
{
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-movie .splide__arrow.splide__arrow--next
    {
        left: 50%;

        margin-left: 27.29167vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-movie .splide__arrow.splide__arrow--next
    {
        margin-left: 327.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-movie .splide__arrow.splide__arrow--next
    {
        right: 4.8vw;
    }
}
#mainContents .p-movie .splide__arrow svg
{
    display: none;
}
#mainContents .p-cast
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast
    {
        margin-top: 10.20833vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast
    {
        margin-top: 122.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-cast
    {
        margin-top: 25.6vw;
    }
}
#mainContents .p-cast .p-cast_list
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; 

    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast .p-cast_list
    {
        width: 62.5vw;
        margin-top: 6.11111vw;

        row-gap: 2.77778vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast .p-cast_list
    {
        width: 750px;
        margin-top: 73.33333px;

        row-gap: 33.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-cast .p-cast_list
    {
        width: 76vw;
        margin-top: 14.4vw;

        row-gap: 6.4vw;
    }
}
#mainContents .p-cast .p-cast_list .p-cast_item
{
    border: 2px solid transparent;
    background-image: -webkit-linear-gradient(#fffefa, #fffefa), -webkit-linear-gradient(230deg, #cf9f2e, #925625 13%, #ab7536 23%, #eec663 50%, #e2bc5c 75%, #af7938 92%, #ddb554);
    background-image: linear-gradient(#fffefa, #fffefa), linear-gradient(220deg, #cf9f2e, #925625 13%, #ab7536 23%, #eec663 50%, #e2bc5c 75%, #af7938 92%, #ddb554);
    background-clip: padding-box, border-box; 
    background-origin: border-box;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast .p-cast_list .p-cast_item
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;

        padding: 1.52778vw;

        border-radius: 1.11111vw; 

        -webkit-box-pack: justify; 

        -webkit-justify-content: space-between; 

        -ms-flex-pack: justify; 

        justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast .p-cast_list .p-cast_item
    {
        padding: 18.33333px;

        border-radius: 13.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-cast .p-cast_list .p-cast_item
    {
        padding: 5.86667vw 5.86667vw 5.33333vw;

        border-radius: 4.26667vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast .p-cast_list .p-cast_img
    {
        width: 13.88889vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast .p-cast_list .p-cast_img
    {
        width: 166.66667px;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc
    {
        width: 43.61111vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc
    {
        width: 523.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc
    {
        margin-top: 4.53333vw;
    }
}
#mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_name
{
    position: relative;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_name
    {
        font-size: 1.66667vw;
        font-weight: 700;
        line-height: 1.5;

        margin-bottom: .625vw;
        padding-bottom: .69444vw; 

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_name
    {
        font-size: 20px;
        font-weight: 700;
        line-height: 1.5;

        margin-bottom: 7.5px;
        padding-bottom: 8.33333px; 

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_name
    {
        font-size: 5.33333vw;
        font-weight: 700;
        line-height: 1.5;

        margin-bottom: 2.4vw;
        padding-bottom: 2.4vw; 

        letter-spacing: .06em;
    }
}
#mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_name::after
{
    position: absolute;
    bottom: 0; 
    left: 0;

    display: block;

    width: 100%;
    height: 2px;

    content: '';

    background-image: -webkit-gradient(linear, left top, right top, from(#fabe65), color-stop(20%, #e69e34), color-stop(50%, rgba(242, 216, 159, .8)), color-stop(80%, rgba(230, 158, 52, .4)), to(rgba(241, 186, 105, 0)));

    background-image: -webkit-linear-gradient(left, #fabe65, #e69e34 20%, rgba(242, 216, 159, .8) 50%, rgba(230, 158, 52, .4) 80%, rgba(241, 186, 105, 0));

    background-image: linear-gradient(90deg, #fabe65, #e69e34 20%, rgba(242, 216, 159, .8) 50%, rgba(230, 158, 52, .4) 80%, rgba(241, 186, 105, 0));
}
@media screen and (min-width: 768px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_txt
    {
        font-size: 1.11111vw;
        font-weight: 700; 
        line-height: 1.5;

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_txt
    {
        font-size: 13.33333px;
        font-weight: 700; 
        line-height: 1.5;

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-cast .p-cast_list .p-cast_desc .p-cast_txt
    {
        font-size: 3.73333vw;
        font-weight: 700; 
        line-height: 1.5;

        letter-spacing: .06em;
    }
}
#mainContents .p-campaign
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-campaign
    {
        margin-top: 10.20833vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-campaign
    {
        margin-top: 122.5px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-campaign
    {
        margin-top: 25.6vw;
    }
}
#mainContents .p-campaign .p-cast_list
{
    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-campaign .p-cast_list
    {
        width: 62.5vw;
        margin-top: 6.11111vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-campaign .p-cast_list
    {
        width: 750px;
        margin-top: 73.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-campaign .p-cast_list
    {
        width: 76vw;
        margin-top: 14.13333vw;
    }
}
#mainContents .p-product
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-product
    {
        margin-top: 9.93056vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-product
    {
        margin-top: 119.16667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-product
    {
        margin-top: 24.8vw;
    }
}
#mainContents .p-product .p-product-hdg
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-product .p-product-hdg
    {
        position: absolute;
        top: 17.08333vw;
        left: 18.61111vw; 

        width: 35vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-product .p-product-hdg
    {
        top: 205px;
        left: 223.33333px; 

        width: 420px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-product .p-product-hdg
    {
        width: 89.33333vw;
        margin-top: 13.6vw;
    }
}
#mainContents .p-product .p-product-list
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    margin: 0 auto; 

    -webkit-box-pack: justify; 

    -webkit-justify-content: space-between; 

    -ms-flex-pack: justify; 

    justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-product .p-product-list
    {
        width: 22.22222vw;
        margin: 6.25vw 8.33333vw 0 auto;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-product .p-product-list
    {
        width: 266.66667px;
        margin: 75px 100px 0 auto;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-product .p-product-list
    {
        width: 80vw;
        margin-top: 10.13333vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-product .p-product-list .p-product-item
    {
        width: 9.72222vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-product .p-product-list .p-product-item
    {
        width: 116.66667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-product .p-product-list .p-product-item
    {
        width: 34.13333vw;
    }
}
#mainContents .p-product .p-product-list .p-product-item .p-product-txt
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-product .p-product-list .p-product-item .p-product-txt
    {
        font-size: 1.66667vw;
        font-weight: 700;
        line-height: 1;

        margin-top: 1.73611vw; 

        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .p-product .p-product-list .p-product-item .p-product-txt
    {
        font-size: 20px;
        font-weight: 700;
        line-height: 1;

        margin-top: 20.83333px; 

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-product .p-product-list .p-product-item .p-product-txt
    {
        font-size: 5.33333vw;
        font-weight: 700;
        line-height: 1;

        margin-top: 4vw; 

        letter-spacing: .06em;
    }
}
#mainContents img
{
    width: 100%;

    vertical-align: bottom;
}
#mainContents button
{
    font: inherit;

    padding: 0;

    color: inherit;
    border: none;
    outline: none;
    background: none;
}
#mainContents *
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box; 

    color: #604444;
}
#mainContents .c-inner
{
    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-inner
    {
        width: 75.41667vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-inner
    {
        width: 905px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-inner
    {
        width: 89.33333vw;
    }
}
#mainContents .c-hdg
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    text-align: center;

    -webkit-box-align: center;

    -webkit-align-items: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
#mainContents .c-hdg.-center
{
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
#mainContents .c-hdg .-txt
{
    display: inline-block;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg .-txt
    {
        padding: 0 4.16667vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg .-txt
    {
        padding: 0 50px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg .-txt
    {
        padding: 0 4.8vw;
    }
}
#mainContents .c-hdg .-deco
{
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg .-deco
    {
        height: .27778vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg .-deco
    {
        height: 3.33333px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg .-deco
    {
        height: .53333vw;
    }
}
#mainContents .c-hdg .-deco.-before
{
    background-image: -webkit-gradient(linear, right top, left top, from(#fabe65), color-stop(20%, #e69e34), color-stop(50%, rgba(242, 216, 159, .8)), color-stop(80%, rgba(230, 158, 52, .4)), to(rgba(241, 186, 105, 0)));
    background-image: -webkit-linear-gradient(right, #fabe65, #e69e34 20%, rgba(242, 216, 159, .8) 50%, rgba(230, 158, 52, .4) 80%, rgba(241, 186, 105, 0));
    background-image: linear-gradient(-90deg, #fabe65, #e69e34 20%, rgba(242, 216, 159, .8) 50%, rgba(230, 158, 52, .4) 80%, rgba(241, 186, 105, 0));
}
#mainContents .c-hdg .-deco.-after
{
    background: -webkit-gradient(linear, left top, right top, from(#fabe65), color-stop(20%, #e69e34), color-stop(50%, rgba(242, 216, 159, .8)), color-stop(80%, rgba(230, 158, 52, .4)), to(rgba(241, 186, 105, 0)));
    background: -webkit-linear-gradient(left, #fabe65, #e69e34 20%, rgba(242, 216, 159, .8) 50%, rgba(230, 158, 52, .4) 80%, rgba(241, 186, 105, 0));
    background: linear-gradient(90deg, #fabe65, #e69e34 20%, rgba(242, 216, 159, .8) 50%, rgba(230, 158, 52, .4) 80%, rgba(241, 186, 105, 0));
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg.-about .-txt img
    {
        width: 37.77639vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg.-about .-txt img
    {
        width: 453.31667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg.-about .-txt img
    {
        width: 82.98133vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg.-about02 .-txt img
    {
        width: 38.15069vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg.-about02 .-txt img
    {
        width: 457.80833px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg.-about02 .-txt img
    {
        width: 68.94133vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg.-product .-txt img
    {
        width: 19.09722vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg.-product .-txt img
    {
        width: 229.16667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg.-product .-txt img
    {
        width: 38.89867vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg.-movie .-txt img
    {
        width: 17.22222vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg.-movie .-txt img
    {
        width: 206.66667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg.-movie .-txt img
    {
        width: 34.992vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg.-cast .-txt img
    {
        width: 12.95417vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-hdg.-cast .-txt img
    {
        width: 155.45px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg.-cast .-txt img
    {
        width: 26.336vw;
    }
}
#mainContents .c-btn a
{
    position: relative;
    z-index: 1; 

    display: block;
    overflow: hidden;

    text-align: center;

    color: #fff;
    border-radius: 1000px;
    background-color: #604444;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-btn a
    {
        font-size: 1.25vw;
        font-weight: 700; 
        line-height: 1;

        width: 20.55556vw;
        padding: 1.25vw 1.80556vw 1.52778vw .69444vw;

        -webkit-transition: color .3s ease-out, background-color .3s ease-out;

        transition: color .3s ease-out, background-color .3s ease-out;
        letter-spacing: .06em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-btn a
    {
        font-size: 15px;
        font-weight: 700; 
        line-height: 1;

        width: 246.66667px;
        padding: 15px 21.66667px 18.33333px 8.33333px;

        letter-spacing: .06em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-btn a
    {
        font-size: 4.26667vw;
        font-weight: 700; 
        line-height: 1;

        width: 89.33333vw;
        padding: 4.8vw 5.33333vw;

        letter-spacing: .06em;
    }
}
#mainContents .c-btn a::before
{
    position: absolute;
    z-index: -1; 
    top: -1px;
    left: -1px;

    width: calc(100% + 2px);
    height: calc(100% + 2px);

    content: '';
    -webkit-transition: opacity .3s ease-out;
    transition: opacity .3s ease-out;

    opacity: 0;
    background-image: -webkit-gradient(linear, left top, right top, from(#f1d369), color-stop(10%, #fcca43), color-stop(50%, #ffecc2), color-stop(90%, #fcca43), to(#fad565));
    background-image: -webkit-linear-gradient(left, #f1d369, #fcca43 10%, #ffecc2 50%, #fcca43 90%, #fad565);
    background-image: linear-gradient(90deg, #f1d369, #fcca43 10%, #ffecc2 50%, #fcca43 90%, #fad565);
}
#mainContents .c-btn a::after
{
    position: absolute;
    z-index: 2; 
    top: 50%;

    display: block;

    content: '';
    -webkit-transition: background-color .3s ease-out;
    transition: background-color .3s ease-out;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);

    background-color: #fff;

    -webkit-mask-image: url(../../assets/img/common/icon-arrow-01.svg);

    mask-image: url(../../assets/img/common/icon-arrow-01.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-btn a::after
    {
        right: 2.22222vw; 

        width: .45764vw;
        height: .76806vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-btn a::after
    {
        right: 26.66667px; 

        width: 5.49167px;
        height: 9.21667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-btn a::after
    {
        right: 5.86667vw; 

        width: 1.75733vw;
        height: 2.94933vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-btn a:hover
    {
        color: #604444;
        background-color: transparent;
    }
    #mainContents .c-btn a:hover::before
    {
        opacity: 1;
    }
    #mainContents .c-btn a:hover::after
    {
        background-color: #604444;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-btn.-product
    {
        position: absolute;
        top: 26.59722vw;
        left: 25.83333vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-btn.-product
    {
        top: 319.16667px;
        left: 310px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-btn.-product
    {
        margin: 7.46667vw auto 0;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-bg-area
    {
        padding-bottom: 8.68056vw;
    }
}
@media screen and (min-width: 767px) and (max-width: 1200px)
{
    #mainContents .c-bg-area
    {
        padding-bottom: 104.16667px;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-bg-area
    {
        padding-bottom: 21.33333vw;
    }
}
#mainContents .c-bg-area .c-bg
{
    position: fixed;
    z-index: 0;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100vh;

    background-repeat: no-repeat;
    background-position: bottom center; 
    background-size: cover;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-bg-area .c-bg
    {
        background-image: url(../../assets/img/common/bg_01_pc.jpg);
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-bg-area .c-bg
    {
        background-image: url(../../assets/img/common/bg_01_sp.jpg);
    }
}
#mainContents .js-scroll-element.-anim-fade-in
{
    -webkit-transition: opacity .8s ease-out, -webkit-transform .8s ease-out;
    transition: opacity .8s ease-out, -webkit-transform .8s ease-out;
    transition: opacity .8s ease-out, transform .8s ease-out;
    transition: opacity .8s ease-out, transform .8s ease-out, -webkit-transform .8s ease-out; 
    -webkit-transform: translateY(30px); 
    transform: translateY(30px);

    opacity: 0;
}
#mainContents .js-scroll-element.-anim-fade-in.is-visible
{
    -webkit-transform: translateY(0);
    transform: translateY(0); 

    opacity: 1;
}
@media screen and (max-width: 767px)
{
    #mainContents .js-scroll-element.-anim-fade-in.-is-sp-show
    {
        -webkit-transform: translateY(0) !important;
        transform: translateY(0) !important; 

        opacity: 1 !important;
    }
}
#mainContents .js-scroll-element.-anim-unique01 .-deco
{
    -webkit-transition: -webkit-transform 1.2s cubic-bezier(.22, 1, .36, 1);
    transition: -webkit-transform 1.2s cubic-bezier(.22, 1, .36, 1);
    transition: transform 1.2s cubic-bezier(.22, 1, .36, 1);
    transition: transform 1.2s cubic-bezier(.22, 1, .36, 1), -webkit-transform 1.2s cubic-bezier(.22, 1, .36, 1); 
    -webkit-transform: scaleX(0); 
    transform: scaleX(0);
}
#mainContents .js-scroll-element.-anim-unique01 .-deco.-before
{
    -webkit-transform-origin: right center;
    transform-origin: right center;
}
#mainContents .js-scroll-element.-anim-unique01 .-deco.-after
{
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
#mainContents .js-scroll-element.-anim-unique01.is-visible .-deco
{
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.root-wrapper,
#ff87info
{
    position: relative;
    z-index: 2;
}

.mfp-close
{
    overflow: hidden !important;

    padding: 0 !important; 

    white-space: nowrap !important;
    text-indent: 120% !important;

    opacity: 1 !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: contain !important;
}
@media screen and (min-width: 768px)
{
    .mfp-close
    {
        top: -70px !important;
        right: 20px !important;

        width: 71.28px !important;
        height: 43.46px !important;

        background-image: url(../../assets/img/common/icon_close_pc.svg) !important;
    }
}
@media screen and (max-width: 767px)
{
    .mfp-close
    {
        top: -14.66667vw !important;
        right: 5.06667vw !important;

        width: 12.944vw !important;
        height: 8.12533vw !important;

        background-image: url(../../assets/img/common/icon_close_sp.svg) !important;
    }
}

@media screen and (min-width: 768px)
{
    .body-wrapper
    {
        min-width: 1200px !important;
    }
}
