
.body-wrapper
{
    font-family: sans-serif;
    line-height: 1.15;

        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body
{
    margin: 0;
}

article,
aside,
footer,
header,
nav,
section
{
    display: block;
}

.body-wrapper a
{
    -webkit-text-decoration-skip: objects;
}

.body-wrapper a:active,
.body-wrapper a:hover
{
    outline-width: 0;
}

.body-wrapper abbr[title]
{
            text-decoration: underline;
            text-decoration: underline dotted; 

    border-bottom: none;

    -webkit-text-decoration: underline dotted;
}

.body-wrapper b,
.body-wrapper strong
{
    font-weight: inherit;
}

.body-wrapper b,
.body-wrapper strong
{
    font-weight: bolder;
}

.body-wrapper code,
.body-wrapper kbd,
.body-wrapper samp
{
    font-family: monospace, monospace;
    font-size: 1em;
}

.body-wrapper dfn
{
    font-style: italic;
}

.body-wrapper mark
{
    color: #000; 
    background-color: #ff0;
}

.body-wrapper small
{
    font-size: 80%;
}

.body-wrapper sub,
.body-wrapper sup
{
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

.body-wrapper sub
{
    bottom: -.25em;
}

.body-wrapper sup
{
    top: -.5em;
}

.body-wrapper audio,
.body-wrapper video
{
    display: inline-block;
}

.body-wrapper audio:not([controls])
{
    display: none;

    height: 0;
}

.body-wrapper img
{
    border-style: none;
}

.body-wrapper svg:not(:root)
{
    overflow: hidden;
}

.body-wrapper button,
.body-wrapper input,
.body-wrapper optgroup,
.body-wrapper select,
.body-wrapper textarea
{
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;

    margin: 0;
}

.body-wrapper button,
.body-wrapper input
{
    overflow: visible;
}

.body-wrapper button,
.body-wrapper select
{
    text-transform: none;
}

.body-wrapper [type=reset],
.body-wrapper [type=submit],
.body-wrapper button,
.body-wrapper html [type=button]
{
    -webkit-appearance: button;
}

.body-wrapper [type=button]::-moz-focus-inner,
.body-wrapper [type=reset]::-moz-focus-inner,
.body-wrapper [type=submit]::-moz-focus-inner,
.body-wrapper button::-moz-focus-inner
{
    padding: 0; 

    border-style: none;
}

.body-wrapper [type=button]:-moz-focusring,
.body-wrapper [type=reset]:-moz-focusring,
.body-wrapper [type=submit]:-moz-focusring,
.body-wrapper button:-moz-focusring
{
    outline: 1px dotted ButtonText;
}

.body-wrapper fieldset
{
    margin: 0 2px;
    padding: .35em .625em .75em; 

    border: 1px solid silver;
}

.body-wrapper legend
{
    display: table;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 100%;
    padding: 0;

    white-space: normal; 

    color: inherit;
}

.body-wrapper progress
{
    display: inline-block;

    vertical-align: baseline;
}

.body-wrapper textarea
{
    overflow: auto;
}

.body-wrapper [type=checkbox],
.body-wrapper [type=radio]
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
}

.body-wrapper [type=number]::-webkit-inner-spin-button,
.body-wrapper [type=number]::-webkit-outer-spin-button
{
    height: auto;
}

.body-wrapper [type=search]
{
    outline-offset: -2px; 

    -webkit-appearance: textfield;
}

.body-wrapper [type=search]::-webkit-search-cancel-button,
.body-wrapper [type=search]::-webkit-search-decoration
{
    -webkit-appearance: none;
}

.body-wrapper ::-webkit-file-upload-button
{
    font: inherit; 

    -webkit-appearance: button;
}

.body-wrapper details,
.body-wrapper menu
{
    display: block;
}

.body-wrapper summary
{
    display: list-item;
}

.body-wrapper canvas
{
    display: inline-block;
}

.body-wrapper template
{
    display: none;
}

.body-wrapper [hidden]
{
    display: none;
}

.body-wrapper
{
    text-align: left;
}

.body-wrapper *,
.body-wrapper ::after,
.body-wrapper ::before
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

.body-wrapper ::-moz-selection
{
    background-color: #0ac;
}

.body-wrapper ::selection
{
    background-color: #0ac;
}

.body-wrapper address,
.body-wrapper blockquote,
.body-wrapper dd,
.body-wrapper div,
.body-wrapper dl,
.body-wrapper dt,
.body-wrapper form,
.body-wrapper h1,
.body-wrapper h2,
.body-wrapper h3,
.body-wrapper h4,
.body-wrapper h5,
.body-wrapper h6,
.body-wrapper li,
.body-wrapper ol,
.body-wrapper p,
.body-wrapper pre,
.body-wrapper ul
{
    line-height: 1.75;
}

.body-nav-active
{
    position: fixed;

    overflow: hidden; 

    width: 100%;
    height: 100%;
}

.body-wrapper
{
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.75;

    min-width: 1080px; 
    margin: 0;
    padding: 0;

    color: #333;
}

@media screen and (max-width: 767px)
{
    .body-wrapper
    {
        font-size: 14px;

        min-width: 320px;
    }
}

.body-wrapper img
{
    vertical-align: top;
}

.body-wrapper a
{
    color: #333;
}

.body-wrapper a:hover
{
    text-decoration: none;
}

.body-wrapper ol,
.body-wrapper ul
{
    margin: 0;
    padding: 0;

    list-style: none;
}

.body-wrapper p
{
    margin: 0 0 38px;
}

@media screen and (max-width: 767px)
{
    .body-wrapper p
    {
        margin-bottom: 20px;
    }
}

.body-wrapper small
{
    font-size: 80%;
}

.body-wrapper em,
.body-wrapper strong
{
    font-weight: 700;
}

.body-wrapper ::-moz-selection
{
    color: #fff; 
    background: #6fa7f8;
}

.body-wrapper ::selection
{
    color: #fff; 
    background: #6fa7f8;
}

.body-wrapper input::-moz-selection
{
    color: #333;
}

.body-wrapper input::selection
{
    color: #333;
}

.body-wrapper textarea::-moz-selection
{
    color: #333;
}

.body-wrapper textarea::selection
{
    color: #333;
}

.global-header-underlayer__site-name
{
    font-size: 0; 

    margin: 0;
    padding: 25px;
}

@media screen and (max-width: 767px)
{
    .global-header-underlayer__site-name
    {
        padding: 10px 0;

        text-align: center;
    }
}

.global-header-underlayer__site-name a
{
    -webkit-transition: .3s;
            transition: .3s;
}

.global-header-underlayer__site-name a:hover
{
    opacity: .7;
}

.global-header-underlayer__site-name svg
{
    width: 77px;
    height: auto;
}

.global-header-underlayer__site-name svg path
{
    fill: #074194;
}

.global-footer
{
    clear: both;

    background-color: #fff;
}

.global-footer__lower
{
    padding: 30px 0;

    color: #fff; 
    background: #074194;
}

@media screen and (max-width: 767px)
{
    .global-footer__lower
    {
        padding: 40px 0 40px;
    }
}

.global-footer__lower-body
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

@media screen and (min-width: 768px)
{
    .global-footer__lower-body
    {
        max-width: 1250px;
        margin-right: auto;
        margin-left: auto; 
        padding: 0 25px;
    }
}

@media screen and (max-width: 767px)
{
    .global-footer__lower-body
    {
        padding: 0 20px;
    }
}

@media screen and (max-width: 767px)
{
    .global-footer__lower-body
    {
        display: block;

        text-align: center;
    }
}

@media screen and (max-width: 767px)
{
    .global-footer__copy
    {
        margin-bottom: 30px; 

        text-align: center;
    }
}

.global-footer__copy img
{
    display: block;

    width: 374px;
    margin-bottom: 16px;
}

@media screen and (max-width: 767px)
{
    .global-footer__copy img
    {
        width: 100%;
        max-width: 310px;
        margin-right: auto;
        margin-bottom: 14px;
        margin-left: auto;
    }
}

.global-footer__copy small
{
    /*text-align: left;*/
    font-size: 12px; 

    display: block;
}

@media screen and (max-width: 767px)
{
    .global-footer__copy small
    {
        font-size: 12px;
    }
}

.global-footer__caution
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .global-footer__caution
    {
        display: block;
    }
}

.global-footer__caution-text
{
    font-size: 10px;

    max-width: 427px;
    margin-right: 18px;

    text-align: left;
}

@media screen and (max-width: 767px)
{
    .global-footer__caution-text
    {
        font-size: 10px;
    }
}

@media screen and (max-width: 767px)
{
    .global-footer__caution-text
    {
        max-width: none;
        margin-right: 0;
        margin-bottom: 14px; 

        text-align: left;
    }
}

.global-footer__caution-image img
{
    width: 105px;
}

.global-footer__caution-image-ab img
{
    width: 515px;
}

@media screen and (max-width: 767px)
{
    .global-footer__caution-image-ab img
    {
        width: 100%;
    }
}

.page-top
{
    position: fixed;
    z-index: 3; 
    right: 30px;
    bottom: 30px;

    -webkit-transition: .6s;
            transition: .6s;
    -webkit-transform: translate(0, 10px);
            transform: translate(0, 10px);

    opacity: 0;
}

.page-top[data-toggle=true]
{
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); 

    opacity: 1;
}

@media screen and (max-width: 767px)
{
    .page-top
    {
        right: 20px;
        bottom: 20px;
    }
}

.page-top a
{
    line-height: 1;

    position: relative;

    display: block;

    width: 60px;
    height: 60px;

    -webkit-transition: .3s;
            transition: .3s;

    border-radius: 50%; 
    background: rgba(0, 0, 0, .6);
}

.page-top a i
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: inline-block;
    overflow: hidden;

    width: 21px;
    height: 12px;

    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

.page-top a i::after,
.page-top a i::before
{
    position: absolute;
    top: 0; 
    left: 0;

    display: block;

    width: 21px;
    height: 12px;

    content: '';

    background: url(../img/img-pagtop.svg) no-repeat;
}

.page-top a i::before
{
    -webkit-transform: translate(0, 40px);
            transform: translate(0, 40px);
}

@media screen and (max-width: 767px)
{
    .page-top a i
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: inline-block;
        overflow: hidden;

        width: 21px;
        height: 12px;

        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); 

        background: url(../img/img-pagtop.svg) no-repeat;
        background-size: 21px 12px;
    }
    .page-top a i::after,
    .page-top a i::before
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .page-top a:hover
    {
        opacity: .7;
    }
    .page-top a:hover i::before
    {
        -webkit-transition: .4s;
                transition: .4s;
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    .page-top a:hover i::after
    {
        -webkit-transition: .4s;
                transition: .4s;
        -webkit-transform: translate(0, -40px);
                transform: translate(0, -40px);
    }
}

/*
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;
    }
}

.u-mt-1em
{
    margin-top: 1.5em !important;
}

[data-simplebar]
{
    position: relative;

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

    -webkit-flex-direction: column;

    -ms-flex-direction: column;

    flex-direction: column;

    -webkit-flex-wrap: wrap;

    -ms-flex-wrap: wrap;

    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.simplebar-wrapper
{
    overflow: hidden;

    width: inherit;
    max-width: inherit;
    height: inherit;
    max-height: inherit;
}

.simplebar-mask
{
    position: absolute;
    z-index: 0; 
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    overflow: hidden;

    width: auto !important;
    height: auto !important;
    margin: 0;
    padding: 0;

    direction: inherit;
}

.simplebar-offset
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    -webkit-box-sizing: inherit !important;

    box-sizing: inherit !important;
    margin: 0;
    padding: 0;

    resize: none !important;

    direction: inherit !important;
    -webkit-overflow-scrolling: touch;
}

.simplebar-content-wrapper
{
    position: relative;

    display: block;
    overflow: auto;

    -webkit-box-sizing: border-box !important;

    box-sizing: border-box !important;
    width: auto;
    max-width: 100%;
    height: 100%;
    max-height: 100%;

    direction: inherit;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar
{
    display: none;

    width: 0;
    height: 0;
}

.simplebar-content:after,
.simplebar-content:before
{
    display: table; 

    content: ' ';
}

.simplebar-placeholder
{
    width: 100%;
    max-width: 100%;
    max-height: 100%;

    pointer-events: none;
}

.simplebar-height-auto-observer-wrapper
{
    position: relative;
    z-index: -1;

    float: left;
    overflow: hidden;

    -webkit-box-sizing: inherit !important;

    box-sizing: inherit !important;
    width: 100%;
    max-width: 1px;
    height: 100%;
    max-height: 1px;
    margin: 0;
    padding: 0;

    pointer-events: none;

    -webkit-box-flex: inherit;

    -webkit-flex-grow: inherit;

    -ms-flex-positive: inherit;

    flex-grow: inherit;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
}

.simplebar-height-auto-observer
{
    position: absolute;
    z-index: -1; 
    top: 0;
    left: 0;

    display: block;
    overflow: hidden;

    -webkit-box-sizing: inherit;

    box-sizing: inherit;
    width: 1000%;
    min-width: 1px;
    height: 1000%;
    min-height: 1px;

    pointer-events: none;

    opacity: 0;
}

.simplebar-track
{
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 0;

    overflow: hidden; 

    pointer-events: none;
}

[data-simplebar].simplebar-dragging
{
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; 
    pointer-events: none;

    -webkit-touch-callout: none;
     -khtml-user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-content
{
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; 
    pointer-events: none;

    -webkit-touch-callout: none;
     -khtml-user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-track
{
    pointer-events: all;
}

.simplebar-scrollbar
{
    position: absolute;
    right: 0;
    left: 0;

    min-height: 10px;
}

.simplebar-scrollbar:before
{
    position: absolute;
    right: 2px;
    left: 2px;

    content: '';
    -webkit-transition: opacity .2s .5s linear;
    transition: opacity .2s .5s linear; 

    opacity: 0;
    border-radius: 7px;
    background: #000;
}

.simplebar-scrollbar.simplebar-visible:before
{
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transition-duration: 0s;
    transition-duration: 0s; 

    opacity: 1;
}

.simplebar-track.simplebar-vertical
{
    top: 0;

    width: 11px;
}

.simplebar-scrollbar:before
{
    top: 2px;
    right: 2px; 
    bottom: 2px;
    left: 2px;
}

.simplebar-track.simplebar-horizontal
{
    left: 0;

    height: 11px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar
{
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;

    width: auto; 
    min-width: 10px;
    min-height: 0;
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical
{
    right: auto;
    left: 0;
}

.simplebar-dummy-scrollbar-size
{
    position: fixed;

    visibility: hidden;
    overflow-x: scroll;
    overflow-y: hidden;

    width: 500px;
    height: 500px;

    opacity: 0;

    direction: rtl;
    -ms-overflow-style: scrollbar !important;
}

.simplebar-dummy-scrollbar-size > div
{
    width: 200%;
    height: 200%;
    margin: 10px 0;
}

.simplebar-hide-scrollbar
{
    position: fixed;
    left: 0;

    visibility: hidden;
    overflow-y: scroll;

    scrollbar-width: none;
    -ms-overflow-style: none;
}

#mainContents
{
    font-family: 'Noto Serif JP', serif, '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;

    position: relative;

    overflow: hidden; 

    color: #222;
    background: #fff;
}
@media screen and (min-width: 768px)
{
    #mainContents
    {
        width: 100%;
        min-width: 1100px;
        margin-right: auto;
        margin-left: auto;
    }
}
#mainContents *,
#mainContents *::before,
#mainContents *::after
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#mainContents a
{
    color: inherit;
}
#mainContents img
{
    width: 100%;
    height: auto;

    vertical-align: bottom;
}
#mainContents em
{
    font-style: normal;
}
#mainContents strong
{
    font-weight: normal;
}
#mainContents [data-animate='fade-up']
{
    -webkit-transition: opacity 1s, -webkit-transform 1s;
    transition: opacity 1s, -webkit-transform 1s;
    transition: opacity 1s, transform 1s;
    transition: opacity 1s, transform 1s, -webkit-transform 1s; 
    -webkit-transform: translateY(50px); 
    transform: translateY(50px);

    opacity: 0;
}
#mainContents [data-animate='fade-up'].is-animated
{
    -webkit-transform: translateY(0);
    transform: translateY(0); 

    opacity: 1;
}
#mainContents [data-animate='scale-y']
{
    -webkit-transition: -webkit-transform 1s;
    transition: -webkit-transform 1s;
    transition: transform 1s;
    transition: transform 1s, -webkit-transform 1s; 
    -webkit-transform: scaleY(0); 
    transform: scaleY(0);
    -webkit-transform-origin: top left;
    transform-origin: top left;
}
#mainContents [data-animate='scale-y'].is-animated
{
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
}
#mainContents .c-bg-area
{
    color: #604444;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-bg-area
    {
        background: url(https://asahigold202604-campaign-lp.beluga-cp.jp/assets/img/common/bg_01_pc.jpg) no-repeat center top;
        background-size: cover; 

        padding-block: max( 120px, 8.33333vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-bg-area
    {
        background: url(https://asahigold202604-campaign-lp.beluga-cp.jp/assets/img/common/bg_01_sp.jpg) no-repeat center top;
        background-size: cover; 

        padding-block: 16vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .c-inner
    {
        width: max( 800px, 55.55556vw );
        margin: 0 auto;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-inner
    {
        width: 100%;
        padding: 0 2.66667vw;
    }
}
#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;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg
    {
        margin-bottom: max( 60px, 4.16667vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg
    {
        margin-bottom: 8vw;
    }
}
#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;

    -webkit-transition: opacity 1.2s cubic-bezier(.22, 1, .36, 1);

    transition: opacity 1.2s cubic-bezier(.22, 1, .36, 1); 

    opacity: 0;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg .-txt
    {
        padding: 0 max( 20px, 1.38889vw ) 0 max( 20px, 1.38889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg .-txt
    {
        padding: 0 3.2vw 0 3.2vw;
    }
}
#mainContents .c-hdg .-txt img
{
    width: auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg .-txt img
    {
        height: max( 64px, 4.44444vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg .-txt img
    {
        height: 13.6vw;
    }
}
#mainContents .c-hdg .-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);

    -webkit-box-flex: 1;

    -webkit-flex: 1;

    -ms-flex: 1;

    flex: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .c-hdg .-deco
    {
        height: max( 3px, .20833vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .c-hdg .-deco
    {
        height: .8vw;
    }
}
#mainContents .c-hdg .-deco.-before
{
    -webkit-transform-origin: right center;
    transform-origin: right center;

    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
{
    -webkit-transform-origin: left center;
    transform-origin: left center;

    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));
}
#mainContents .c-hdg.is-visible
{
    -webkit-transform: translateY(0) !important;
    transform: translateY(0) !important;

    opacity: 1 !important;
}
#mainContents .c-hdg.is-animated .-deco
{
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
#mainContents .c-hdg.is-animated .-txt
{
    opacity: 1;
}

#mainContents .p-about .about-copy
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-copy
    {
        font-size: max( 24px, 1.66667vw );
        font-weight: 600; 
        line-height: 2;

        letter-spacing: .04em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-copy
    {
        font-size: 4.26667vw;
        font-weight: 600; 
        line-height: 2;

        letter-spacing: .04em;
    }
}

#mainContents .p-about .about-note
{
    text-align: center;

    color: #604444;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-note
    {
        font-size: max( 16px, 1.11111vw );
        font-weight: 600; 
        line-height: 1.5;

        letter-spacing: .04em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-note
    {
        font-size: 3.2vw;
        font-weight: 600; 
        line-height: 2;

        letter-spacing: .04em;
    }
}

#mainContents .p-about .about-periodwrapper
{
    position: relative;
    z-index: 0;

    text-align: center; 

    background: none;
}
#mainContents .p-about .about-periodwrapper::before
{
    position: absolute;
    z-index: -1; 
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';

    border-radius: inherit;
    background: -webkit-linear-gradient(231.85deg, #cf9f2e -6.36%, #925625 7.47%, #ab7536 18.22%, #eec663 46.89%, #e2bc5c 73.51%, #af7938 91.94%, #ddb554 100.13%);
    background: linear-gradient(218.15deg, #cf9f2e -6.36%, #925625 7.47%, #ab7536 18.22%, #eec663 46.89%, #e2bc5c 73.51%, #af7938 91.94%, #ddb554 100.13%);

    -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));

    -webkit-mask: -webkit-linear-gradient(#fff 0 0) content-box, -webkit-linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
}
#mainContents .p-about .about-periodwrapper::after
{
    position: absolute;
    z-index: -1; 

    content: '';

    border-radius: inherit;
    background: rgba(255, 255, 255, .6);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-periodwrapper
    {
        font-size: max( 20px, 1.38889vw );
        font-weight: 700; 
        line-height: 1.6;

        margin: max( 60px, 4.16667vw ) 0 0;
        padding: max( 40px, 2.77778vw );

        letter-spacing: .04em;

        border: max( 2px, .13889vw ) solid transparent;
        border-radius: max( 24px, 1.66667vw );
    }
    #mainContents .p-about .about-periodwrapper:before
    {
        padding: max( 2px, .13889vw );
    }
    #mainContents .p-about .about-periodwrapper::after
    {
        top: max( 2px, .13889vw );
        right: max( 2px, .13889vw );
        bottom: max( 2px, .13889vw ); 
        left: max( 2px, .13889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-periodwrapper
    {
        font-size: 3.73333vw;
        font-weight: 700; 
        line-height: 2;

        width: 100%;
        margin: 10.66667vw 0 0;
        padding: 10.66667vw 5.33333vw;

        letter-spacing: .04em;

        border: .53333vw solid transparent;
        border-radius: 6.4vw;
    }
    #mainContents .p-about .about-periodwrapper:before
    {
        padding: .53333vw;
    }
    #mainContents .p-about .about-periodwrapper::after
    {
        top: .53333vw;
        right: .53333vw;
        bottom: .53333vw; 
        left: .53333vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-periodwrapper dl dt
    {
        margin-bottom: max( 4px, .27778vw );
    }
}
#mainContents .p-about .about-periodwrapper dl dt img
{
    width: auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-periodwrapper dl dt img
    {
        height: max( 51px, 3.54167vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-periodwrapper dl dt img
    {
        height: 8.53333vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-periodwrapper dl dd + dt
    {
        margin-top: max( 40px, 2.77778vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-periodwrapper dl dd + dt
    {
        margin-top: 8.53333vw;
    }
}

#mainContents .p-about .about-sns
{
    text-align: center;

    color: #000;
}
#mainContents .p-about .about-sns img
{
    width: auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-about .about-sns .about-sns_line
    {
        margin-top: max( 25px, 1.73611vw );
    }
    #mainContents .p-about .about-sns .about-sns_line div
    {
        font-family: 'Noto Sans JP', '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;

        display: -webkit-box;

        display: -webkit-flex;

        display: -ms-flexbox;

        display: flex;

        width: max( 620px, 43.05556vw ); 
        margin: 0 auto;
        padding: max( 22px, 1.52778vw ) max( 27px, 1.875vw ) max( 21px, 1.45833vw );

        border: max( 3px, .20833vw ) solid #06c755;
        border-radius: max( 10px, .69444vw );
        background-color: #fff;

        -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-about .about-sns .about-sns_line div .about-sns_icon
    {
        width: max( 74px, 5.13889vw );
        margin-right: max( 10px, .69444vw );
    }
    #mainContents .p-about .about-sns .about-sns_line div .about-sns_qr
    {
        width: max( 94px, 6.52778vw );
    }
    #mainContents .p-about .about-sns .about-sns_line p
    {
        font-size: max( 14px, .97222vw );
        font-weight: 500; 
        line-height: 1.5;

        margin-right: max( 14px, .97222vw );

        text-align: left;
        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-sns
    {
        margin-top: 4.26667vw;
        padding: 0 5.33333vw;
    }
    #mainContents .p-about .about-sns div
    {
        margin-top: 4.26667vw;
    }
    #mainContents .p-about .about-sns img
    {
        height: 22.93333vw;
    }
}
#mainContents .p-about .about-sns .about-sns_btn
{
    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    color: #fff; 
    border-radius: 50vw;
    background-repeat: no-repeat;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
#mainContents .p-about .about-sns .about-sns_btn img
{
    width: auto;
    height: 3.73333vw;
}
#mainContents .p-about .about-sns .about-sns_btn::after
{
    position: absolute;
    top: 50%;
    right: 1.4em;

    width: .7em;
    height: .7em;

    content: '';
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg); 

    border: solid #fff;
    border-width: 1px 1px 0 0;
}
#mainContents .p-about .about-sns .about-sns_btn--line
{
    background-color: #06c756;
    background-image: url(../img/ico_line_01.svg);
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-sns .about-sns_btn
    {
        font-size: 4vw;
        font-weight: 400; 
        line-height: 1.6;

        height: 16vw;

        letter-spacing: 0;

        background-image: none;
    }
}

@-webkit-keyframes fadeUp
{
    to
    {
        -webkit-transform: translateY(0);
        transform: translateY(0); 

        opacity: 1;
    }
}

@keyframes fadeUp
{
    to
    {
        -webkit-transform: translateY(0);
        transform: translateY(0); 

        opacity: 1;
    }
}

#mainContents .p-about .about-anchor
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    margin: max( 60px, 4.16667vw ) 0;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
    gap: 0 max( 22px, 1.52778vw );
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-anchor
    {
        margin: 10.66667vw 0; 

        gap: 0 1.33333vw;
    }
}
#mainContents .p-about .about-anchor .about-anchor_itm
{
    width: max( 252px, 17.5vw );
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-anchor .about-anchor_itm
    {
        width: 30.66667vw;
    }
}
#mainContents .p-about .about-anchor .about-anchor_itm a
{
    font-size: max( 16px, 1.11111vw );
    font-weight: 700; 
    line-height: 1.4;

    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    width: 100%;
    height: max( 68px, 4.72222vw );

    -webkit-transition: all .3s ease;

    transition: all .3s ease;
    text-align: center;
    text-decoration: none;
    letter-spacing: .06em;

    border: max( 1.5px, .10417vw ) solid #604444;
    border-radius: max( 40px, 2.77778vw );
    background-color: #fff;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
#mainContents .p-about .about-anchor .about-anchor_itm a::after
{
    position: absolute;
    top: 50%;
    right: max( 20px, 1.38889vw );

    width: max( 16px, 1.11111vw );
    height: max( 9px, .625vw );

    content: '';
    -webkit-transition: all .3s ease;
    transition: all .3s ease; 
    -webkit-transform: translateY(-50%); 
    transform: translateY(-50%);

    border-width: 1px 1px 0 0;
    background: url(https://asahigold202604-campaign-lp.beluga-cp.jp/assets/img/about/icon_arrow.svg) no-repeat center bottom/cover;
}
#mainContents .p-about .about-anchor .about-anchor_itm a:hover
{
    text-decoration: none; 

    color: #fff;
    background-color: #604444;
}
#mainContents .p-about .about-anchor .about-anchor_itm a:hover::after
{
    background: url(https://asahigold202604-campaign-lp.beluga-cp.jp/assets/img/about/icon_arrow_o.svg) no-repeat center bottom/cover;
}
@media screen and (max-width: 767px)
{
    #mainContents .p-about .about-anchor .about-anchor_itm a
    {
        font-size: 3.2vw;
        font-weight: 700;
        line-height: 1.4;

        width: 100%;
        height: 22.4vw;
        padding-bottom: 4.8vw; 

        letter-spacing: .06em;

        border-width: .4vw;
        border-radius: 10.66667vw;
    }
    #mainContents .p-about .about-anchor .about-anchor_itm a::after
    {
        top: auto;
        right: auto;
        bottom: 4.26667vw;
        left: 50%;

        width: 4.26667vw;
        height: 2.4vw; 

        -webkit-transform: translateX(-50%) translateY(0); 

        transform: translateX(-50%) translateY(0);
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-prize
    {
        padding: max( 105px, 7.29167vw ) 0 0;
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-prize
    {
        padding: 16.53333vw 0 0;
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-inner
    {
        width: max( 800px, 55.55556vw );
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-inner
    {
        width: 100%;
        padding: 0 2.66667vw;
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-prize .c-hdg
    {
        margin-bottom: max( 178px, 12.36111vw );
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-prize .c-hdg
    {
        margin-bottom: 32.86933vw;
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-prize .c-hdg.-prize .-txt img
    {
        height: max( 77px, 5.34722vw );
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-prize .c-hdg.-prize .-txt img
    {
        height: 13.6vw;
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-inner
    {
        width: max( 800px, 55.55556vw );
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-inner
    {
        width: 100%;
        padding: 0 2.66667vw;
    }
}

#mainContents .p-prize .prize-coupon
{
    font-weight: bold;

    margin: 0 auto;

    text-align: center;

    color: #fff; 
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-coupon
    {
        width: max( 986px, 68.47222vw );
        height: max( 402px, 27.91667vw );

        background-image: url(../img/prize/bg_01_pc.png);
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-coupon
    {
        width: 87.2vw;
        height: 150.13333vw;

        background-image: url(../img/prize/bg_01_sp.png);
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_inner
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;

        height: max( 386px, 26.80556vw ); 

        -webkit-box-pack: center; 

        -webkit-justify-content: center; 

        -ms-flex-pack: center; 

        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
#mainContents .p-prize .prize-coupon .prize-coupon_img
{
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_img
    {
        width: max( 458px, 31.80556vw );
    }
    #mainContents .p-prize .prize-coupon .prize-coupon_img img
    {
        margin-top: min( -80px, -5.55556vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_img
    {
        width: 50.66667vw;
        margin: 0 auto;
    }
    #mainContents .p-prize .prize-coupon .prize-coupon_img img
    {
        margin: -30.66667vw 0 -1.33333vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_txt
    {
        margin-left: min( -150px, -10.41667vw ); 

        -webkit-box-flex: 1; 

        -webkit-flex: 1; 

        -ms-flex: 1; 

        flex: 1;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_txt h3 img
    {
        width: max( 480px, 33.33333vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_txt h3 img
    {
        width: 64.16533vw;
    }
}
#mainContents .p-prize .prize-coupon .prize-coupon_upper
{
    margin: 0 auto;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_upper
    {
        width: max( 280px, 19.44444vw );
        margin-bottom: max( 28px, 1.94444vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-coupon .prize-coupon_upper
    {
        width: 72.26667vw;
        margin-bottom: 5.33333vw;
    }
}

#mainContents .p-prize .prize-period
{
    color: #604444; 
    background: rgba(255, 255, 255, .8);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-period
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;

        width: max( 580px, 40.27778vw );
        height: max( 64px, 4.44444vw );
        margin-top: max( 30px, 2.08333vw ); 
        margin-left: max( 55px, 3.81944vw );
        padding: max( 12px, .83333vw ) max( 30px, 2.08333vw );

        border-radius: max( 12px, .83333vw );

        -webkit-box-pack: center;

        -webkit-justify-content: center;

        -ms-flex-pack: center;

        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-period
    {
        width: 75.73333vw;
        margin: 5.86667vw auto 0;
        padding: 3.2vw;

        text-align: center; 

        border-radius: 3.2vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-period dt
    {
        font-size: max( 24px, 1.66667vw );
        font-weight: 700;
        line-height: 2;

        position: relative;

        margin-right: max( 12px, .83333vw );
        padding-right: max( 12px, .83333vw );

        letter-spacing: .03em;

        border-right: 1px solid rgba(96, 68, 68, .4);
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-period dt
    {
        font-size: 6.4vw;
        font-weight: 700; 
        line-height: 1;

        letter-spacing: .04em;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-period dt::after
    {
        position: absolute;
        top: 50%;
        right: 0;

        height: max( 40px, 2.77778vw );
        margin-top: min( -20px, -1.38889vw );

        content: '';

        border-right: 1px solid rgba(255, 255, 255, .4);
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-prize .prize-period dd
    {
        font-size: max( 16px, 1.11111vw );
        font-weight: 700; 
        line-height: 2;

        letter-spacing: .04em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-prize .prize-period dd
    {
        font-size: 3.73333vw;
        font-weight: 700; 
        line-height: 1;

        margin-top: 2.66667vw;

        letter-spacing: .04em;
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-info
    {
        padding: max( 135px, 9.375vw ) 0 0;
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-info
    {
        padding: 11.73333vw 0 0;
    }
}

@media screen and (min-width: 768px)
{
    #mainContents .p-info .c-hdg.-info2
    {
        margin-top: max( 100px, 6.94444vw );
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-info .c-hdg.-info2
    {
        margin-top: 16vw;
    }
    #mainContents .p-info .c-hdg.-info2 .-txt img
    {
        height: 27.2vw;
    }
}

#mainContents .p-info .info-box
{
    font-family: 'Noto Sans JP', '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;

    word-break: break-all; 

    color: #604444;
    border: 1px solid;
    border-image-source: linear-gradient(218.15deg, #cf9f2e -6.36%, #925625 7.47%, #ab7536 18.22%, #eec663 46.89%, #e2bc5c 73.51%, #af7938 91.94%, #ddb554 100.13%);
    border-image-slice: 1;
    background: rgba(255, 255, 255, .6);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-info .info-box
    {
        padding: max( 20px, 1.38889vw ) max( 12px, .83333vw ) max( 20px, 1.38889vw ) max( 20px, 1.38889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-info .info-box
    {
        padding: 5.33333vw 2.66667vw 5.33333vw 5.33333vw;
    }
}

#mainContents .p-info .info-box_scroll
{
    word-break: break-all;
}
#mainContents .p-info .info-box_scroll * + .info-terms
{
    margin-top: 2em;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-info .info-box_scroll
    {
        font-size: max( 12px, .83333vw );
        font-weight: 500; 
        line-height: 1.6;

        max-height: max( 271px, 18.81944vw );
        padding-right: max( 18px, 1.25vw );

        letter-spacing: .12em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-info .info-box_scroll
    {
        font-size: 3.2vw;
        font-weight: 500; 
        line-height: 1.6;

        max-height: 97.86667vw;
        padding-right: 2.66667vw;

        letter-spacing: .12em;
    }
}
#mainContents .p-info .info-box_scroll p + p
{
    margin-top: max( 19px, 1.31944vw );
}
@media screen and (max-width: 767px)
{
    #mainContents .p-info .info-box_scroll p + p
    {
        margin-top: 5.06667vw;
    }
}
#mainContents .p-info .info-box_scroll a
{
    text-decoration: underline;
}

#mainContents .p-info .info-terms dt ~ dt
{
    margin-top: 2em;
}

#mainContents .p-info .info-terms dd + dd
{
    margin-top: 1.5em;
}

#mainContents .p-info .info-terms ul li
{
    text-indent: 0;
}

#mainContents .p-info .info-terms ol li
{
    margin-left: 1.5em;

    list-style-position: outside;
    list-style-type: decimal;
}
#mainContents .p-info .info-terms ol li ~ li
{
    margin-top: 1em;
}
#mainContents .p-info .info-terms ol li > p ~ p
{
    margin-top: 1em;
}

#mainContents .p-info .info-terms ol ul li
{
    margin: 0;

    list-style-type: none;

    text-indent: -1em;
}

#mainContents .p-info .info-terms strong
{
    font-weight: bold;
}

#mainContents .p-info .info-terms a
{
    text-decoration: underline;
}
#mainContents .p-info .info-terms a:hover
{
    text-decoration: none;
}

#mainContents .p-faq
{
    color: #604444;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-faq
    {
        padding: max( 100px, 6.94444vw ) 0 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-faq
    {
        padding: 16vw 0 0;
    }
}
#mainContents .p-faq .faq-accordion
{
    overflow: hidden; 

    border: 1px solid #604444;
    background-color: #fff;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-faq .faq-accordion
    {
        border-radius: max( 12px, .83333vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-faq .faq-accordion
    {
        border-radius: 3.2vw;
    }
}
#mainContents .p-faq .faq-accordion .faq-accordion_ttl
{
    position: relative;

    cursor: pointer; 
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-faq .faq-accordion .faq-accordion_ttl
    {
        font-size: max( 20px, 1.38889vw );
        font-weight: 700; 
        line-height: 1;

        padding: max( 20px, 1.38889vw ) 0;

        letter-spacing: .12em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-faq .faq-accordion .faq-accordion_ttl
    {
        font-size: 4.8vw;
        font-weight: 700; 
        line-height: 1.11111;

        padding: 4vw 0;

        letter-spacing: .12em;
    }
}
#mainContents .p-faq .faq-accordion .faq-accordion_ttl::after
{
    position: absolute;
    top: 50%;

    content: '';
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); 

    background-image: url(../img/ico_toggle_01.svg), url(../img/ico_toggle_02.svg);
    background-repeat: no-repeat, no-repeat;
    background-position: center, center;
    background-size: contain, 0;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-faq .faq-accordion .faq-accordion_ttl::after
    {
        right: max( 16px, 1.11111vw );

        width: max( 36px, 2.5vw );
        height: max( 36px, 2.5vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-faq .faq-accordion .faq-accordion_ttl::after
    {
        right: 5.33333vw;

        width: 8vw;
        height: 8vw;
    }
}
#mainContents .p-faq .faq-accordion .faq-accordion_ttl.is-active::after
{
    background-size: 0, contain;
}
#mainContents .p-faq .faq-accordion .faq-accordion_ctn
{
    font-family: 'Noto Sans JP', '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;

    display: none;

    word-break: break-all; 

    border-top: 1px solid #604444;
}
#mainContents .p-faq .faq-accordion .faq-accordion_ctn p + p
{
    margin-top: 2em;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-faq .faq-accordion .faq-accordion_ctn
    {
        font-size: max( 12px, .83333vw );
        font-weight: 500; 
        line-height: 1.6;

        padding: max( 20px, 1.38889vw ) max( 12px, .83333vw ) max( 20px, 1.38889vw ) max( 30px, 2.08333vw );

        letter-spacing: .12em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-faq .faq-accordion .faq-accordion_ctn
    {
        font-size: 3.2vw;
        font-weight: 500; 
        line-height: 1.6;

        padding: 5.33333vw 2.66667vw 5.33333vw 5.33333vw;

        letter-spacing: .12em;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-faq .faq-scroll
    {
        height: max( 410px, 28.47222vw ); 
        padding-right: max( 18px, 1.25vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-faq .faq-scroll
    {
        height: 64vw; 
        padding-right: 2.66667vw;
    }
}
#mainContents .p-faq .info-terms.is-faq dt
{
    font-size: 133%;
}
#mainContents .p-faq .info-terms dt ~ dt
{
    margin-top: 2em;
}
#mainContents .p-faq .info-terms dd + dd
{
    margin-top: 1.5em;
}
#mainContents .p-faq .info-terms ul li
{
    text-indent: 0;
}
#mainContents .p-faq .info-terms ol li
{
    margin-left: 1.5em;

    list-style-position: outside;
    list-style-type: decimal;
}
#mainContents .p-faq .info-terms ol li ~ li
{
    margin-top: 1em;
}
#mainContents .p-faq .info-terms ol li > p ~ p
{
    margin-top: 1em;
}
#mainContents .p-faq .info-terms ol ul li
{
    margin: 0;

    list-style-type: none;

    text-indent: -1em;
}
#mainContents .p-faq .info-terms strong
{
    font-weight: bold;
}
#mainContents .p-faq .info-terms a
{
    text-decoration: underline;
}
#mainContents .p-faq .info-terms a:hover
{
    text-decoration: none;
}

@media screen and (min-width: 768px)
{
    #mainContents .p-contact
    {
        padding: max( 100px, 6.94444vw ) 0 0;
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-contact
    {
        padding: 16vw 0 0;
    }
}

#mainContents .p-contact .contact-box
{
    font-family: 'Noto Sans JP', '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif; 

    border: 1px solid;
    border-image-source: linear-gradient(218.15deg, #cf9f2e -6.36%, #925625 7.47%, #ab7536 18.22%, #eec663 46.89%, #e2bc5c 73.51%, #af7938 91.94%, #ddb554 100.13%);
    border-image-slice: 1;
    background: rgba(255, 255, 255, .6);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box
    {
        padding: max( 28px, 1.94444vw ) 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box
    {
        padding: 8vw 0 6.66667vw;
    }
}
#mainContents .p-contact .contact-box .contact-box_ttl
{
    text-align: center;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box .contact-box_ttl
    {
        font-size: max( 16px, 1.11111vw );
        font-weight: 500; 
        line-height: 1;

        margin-bottom: max( 20px, 1.38889vw );

        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box .contact-box_ttl
    {
        font-size: 3.73333vw;
        font-weight: 500; 
        line-height: 1.5;

        margin-bottom: 4.26667vw;

        letter-spacing: 0;
    }
}
#mainContents .p-contact .contact-box dl
{
    position: relative; 

    text-align: center;
}
#mainContents .p-contact .contact-box dl::after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';

    background: -webkit-linear-gradient(231.85deg, #cf9f2e -6.36%, #925625 7.47%, #ab7536 18.22%, #eec663 46.89%, #e2bc5c 73.51%, #af7938 91.94%, #ddb554 100.13%);

    background: linear-gradient(218.15deg, #cf9f2e -6.36%, #925625 7.47%, #ab7536 18.22%, #eec663 46.89%, #e2bc5c 73.51%, #af7938 91.94%, #ddb554 100.13%);
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box dl
    {
        margin-bottom: max( 20px, 1.38889vw );
        padding-bottom: max( 20px, 1.38889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl
    {
        margin-bottom: 4.26667vw;
        padding-bottom: 4.26667vw;
    }
    #mainContents .p-contact .contact-box dl::after
    {
        left: 4vw; 

        width: 86.66667vw;
    }
}
#mainContents .p-contact .contact-box dl dt
{
    font-weight: bold; 

    display: -webkit-box; 

    display: -webkit-flex; 

    display: -ms-flexbox; 

    display: flex;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
    -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-contact .contact-box dl dt
    {
        margin-bottom: max( 20px, 1.38889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl dt
    {
        margin-bottom: 4.26667vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box dl dt > img
    {
        width: max( 38px, 2.63889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl dt > img
    {
        width: 10.13333vw;
    }
}
#mainContents .p-contact .contact-box dl dt span
{
    line-height: 1; 

    display: block;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box dl dt span
    {
        padding: 0 0 max( 6px, .41667vw ) max( 2px, .13889vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl dt span
    {
        padding: 0 0 1.6vw .53333vw;
    }
}
#mainContents .p-contact .contact-box dl dt span small
{
    display: block;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box dl dt span small
    {
        font-size: max( 12px, .83333vw );
        font-weight: 400; 
        line-height: 1;

        margin-bottom: max( 15px, 1.04167vw );

        letter-spacing: 0;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl dt span small
    {
        font-size: 3.2vw;
        font-weight: 400; 
        line-height: 1;

        margin-bottom: 4vw;

        letter-spacing: .08em;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box dl dt span img
    {
        width: max( 189px, 13.125vw );
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl dt span img
    {
        width: 50.4vw;
    }
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box dl dd
    {
        font-size: max( 12px, .83333vw );
        font-weight: 400; 
        line-height: 1.5;

        letter-spacing: .05em;
    }
}
@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box dl dd
    {
        font-size: 2.93333vw;
        font-weight: 400; 
        line-height: 1.63636;

        letter-spacing: 0;
    }
}
#mainContents .p-contact .contact-box dl dd span
{
    font-weight: 700; 

    display: block;
}
@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box ul
    {
        display: table;

        margin: 0 auto;
    }
}

#mainContents .p-contact .contact-box_note li
{
    padding-left: 1.5em;

    text-indent: -1.5em;
}
#mainContents .p-contact .contact-box_note li::before
{
    margin-right: .5em;

    content: '※';
}

@media screen and (min-width: 768px)
{
    #mainContents .p-contact .contact-box_note
    {
        font-size: max( 12px, .83333vw );
        font-weight: 400; 
        line-height: 1.83333;

        letter-spacing: .01em;
    }
}

@media screen and (max-width: 767px)
{
    #mainContents .p-contact .contact-box_note
    {
        font-size: 3.2vw;
        font-weight: 400; 
        line-height: 1.83333;

        padding: 0 4vw;

        letter-spacing: .025em;
    }
}

@media print
{
    .no-print
    {
        background-image: none !important;
    }
    .no-print *::before,
    .no-print *::after
    {
        background-image: none !important;
    }
    img.no-print
    {
        visibility: hidden !important;
    }
}

@media screen and (min-width: 768px)
{
    .root-wrapper
    {
        width: 100%;
        min-width: 1100px;
        margin-right: auto;
        margin-left: auto;
    }
}

.simplebar-track.simplebar-vertical
{
    border-radius: 100px; 
    background: #efe9e9;
}
@media screen and (min-width: 768px)
{
    .simplebar-track.simplebar-vertical
    {
        width: max( 6px, .41667vw );
    }
}
@media screen and (max-width: 767px)
{
    .simplebar-track.simplebar-vertical
    {
        width: 1.6vw;
    }
}

.simplebar-scrollbar:before
{
    right: 1px;
    left: 1px;

    opacity: 1 !important; 
    border-radius: 100px;
    background: #604444;
}
