/*
* product_detail.css
*
*/
.c-border
{
    display: flex;

    height: 58px;
    margin: 10px 0 0;

    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;

    align-items: center;
}

@media (max-width: 767.98px)
{
    .c-border
    {
        height: 11.5625vw;
        margin-top: 2.5vw;

        border-width: .3125vw;
    }
}
.c-border.c-border--underline
{
    height: auto;

    border-top: none;
}

.c-card
{
    padding: 20px 0;

    border-radius: 22px;
    background-color: #fff;
}

@media (max-width: 767.98px)
{
    .c-card
    {
        padding: 10.9375vw 0 8.75vw;

        border-radius: 3.4375vw;
    }
}
@media (max-width: 767.98px)
{
    .c-card.c-card--py40-sm
    {
        padding: 6.25vw 0;
    }
}
.c-card.c-card--py30
{
    padding: 30px 0;
}

.c-card.c-card--py36
{
    padding: 30px 0 36px;
}

.c-card.c-card--py50
{
    padding: 50px 0;
}

@media (max-width: 767.98px)
{
    .c-card.c-card--py50
    {
        padding: 12.5vw 0;
    }
}
.c-card.c-card--radius12
{
    border-radius: 12px;
}

@media (min-width: 768px)
{
    .c-card.c-card--w458
    {
        width: 458px;
    }
}
.c-card__image
{
    padding: 0 30px;
}

@media (max-width: 767.98px)
{
    .c-card__image
    {
        padding: 0 13.4375vw;
    }
}
.c-card__image.c-card__image--px0
{
    padding: 0;
}

@media (min-width: 768px)
{
    .c-card__image.c-card__image--w242
    {
        width: 242px;
    }
}
@media (max-width: 767.98px)
{
    .c-card__image.c-card__image--w100
    {
        padding: 0;
    }
}
.c-card__image img
{
    border-radius: 12px;
}

@media (max-width: 767.98px)
{
    .c-card__image img
    {
        border-radius: 1.875vw;
    }
}
.c-card__title
{
    font-size: 20px;
    font-weight: bold;

    position: relative;

    margin-bottom: 32px;
    padding-left: 14px;

    letter-spacing: .15em;
}

@media (max-width: 767.98px)
{
    .c-card__title
    {
        font-size: 5.625vw;
        font-weight: 400;

        margin-bottom: 9.375vw;
        padding-left: 3.75vw;

        letter-spacing: .1em;
    }
}
.c-card__title > span
{
    font-size: 16px;

    display: block;
}

@media (max-width: 767.98px)
{
    .c-card__title > span
    {
        font-size: 3.125vw;
    }
}
.c-card__title::before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 6px;
    height: 100%;

    content: '';

    border-radius: 3px;
    background-color: #094;
}

.c-card__title.c-card__title--mx50
{
    margin-right: 50px;
    margin-left: 50px;
}

@media (max-width: 767.98px)
{
    .c-card__title.c-card__title--mx50
    {
        margin-right: 6.25vw;
        margin-left: 6.25vw;
    }
}
.c-card__body
{
    text-align: center;
}

.c-card__body.c-card__body--mx20
{
    margin-right: 20px;
    margin-left: 20px;

    text-align: left;
}

.c-card__body.c-card__body--mx30
{
    margin-right: 30px;
    margin-left: 30px;
}

@media (max-width: 767.98px)
{
    .c-card__body.c-card__body--mx30
    {
        margin-right: 6.25vw;
        margin-left: 6.25vw;
    }
}
.c-card__body.c-card__body--mx50
{
    margin-right: 50px;
    margin-left: 50px;
}

@media (max-width: 767.98px)
{
    .c-card__body.c-card__body--mx50
    {
        margin-right: 6.25vw;
        margin-left: 6.25vw;
    }
}
.c-card__body.c-card__body--text-left
{
    text-align: left;
}

.c-card__body:not(:first-child)
{
    margin-top: 12px;
}

.c-card__text
{
    font-size: 16px;

    text-align: center;
    letter-spacing: .05em;

    color: #094;
}

@media (max-width: 767.98px)
{
    .c-card__text
    {
        font-size: 5vw;
    }
}
@media (max-width: 767.98px)
{
    .c-card__text.c-card__text--26sm
    {
        font-size: 4.0625vw;
    }
}
.c-card__text > span
{
    font-size: 13px;

    color: #000;
}

@media (max-width: 767.98px)
{
    .c-card__text > span
    {
        font-size: 3.75vw;
    }
}
.c-card__flex
{
    display: flex;

    justify-content: space-between;
}

@media (max-width: 767.98px)
{
    .c-card__flex
    {
        flex-direction: column;
    }
}
.c-card__flex-item:nth-child(1)
{
    width: 208px;
}

.c-card__flex-item:nth-child(2)
{
    flex: 1;
}

.c-card__image-tabitem
{
    display: none;

    opacity: 0;
}

.c-card__image-tabitem.is-active
{
    display: block;

    animation-name: displayAnimation;
    animation-duration: .3s;

    animation-fill-mode: forwards;
}

.c-card__video
{
    width: 398px;
    margin: 0 30px;

    aspect-ratio: 16/9;
}

@media (max-width: 767.98px)
{
    .c-card__video
    {
        width: 62.5vw;
        margin: 0 6.25vw;
    }
}
.c-card__video iframe
{
    width: 100%;
    height: 100%;
}

.c-card__list
{
    font-size: 14px;
    line-height: 1.571;

    display: flex;

    flex-wrap: wrap;
}

@media (max-width: 767.98px)
{
    .c-card__list
    {
        font-size: 3.75vw;
        line-height: 1.5;
    }
}
.c-card__flex .c-card__list
{
    flex: 1;
}

.c-card__list dt
{
    font-weight: bold;

    position: relative;

    width: 50px;
    padding: 10px 0;

    color: #0d0d0d;
}

@media (max-width: 767.98px)
{
    .c-card__list dt
    {
        display: flex;

        width: 18.75vw;
        padding: 3.125vw 0;

        align-items: flex-end;
    }
}
.c-card__list dt::after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';

    background-color: #094;
}

.c-card__flex .c-card__list dt
{
    width: 112px;
}

@media (max-width: 767.98px)
{
    .c-card__flex .c-card__list dt
    {
        width: 18.75vw;
        padding-right: 3.125vw;

        align-items: center;
    }
}
.c-card__list dd
{
    position: relative;

    width: 124px;
    padding: 10px 0;

    color: #000;
}

@media (max-width: 767.98px)
{
    .c-card__list dd
    {
        width: 43.75vw;
        padding: 3.125vw 0;
    }
}
.c-card__list dd::after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';

    background-color: #c1c1c1;
}

.c-card__flex .c-card__list dd
{
    width: calc(100% - 112px);
}

@media (max-width: 767.98px)
{
    .c-card__flex .c-card__list dd
    {
        width: calc(100% - 18.75vw);
    }
}
@keyframes displayAnimation
{
    from
    {
        opacity: 0;
    }
    to
    {
        opacity: 1;
    }
}
.c-deco-title
{
    font-size: 32px;
    line-height: 1;

    position: relative;

    width: 440px;
    margin: 0 auto 80px;

    text-align: center;
    letter-spacing: .05em;

    color: #094;
}

@media (max-width: 767.98px)
{
    .c-deco-title
    {
        font-size: 6.25vw;
        line-height: 1.5;

        width: 100%;
        margin-bottom: 12.5vw;
    }
}
.c-deco-title::before
{
    position: absolute;
    bottom: 4px;
    left: -110px;

    width: 80px;
    height: 70px;

    content: '';

    background: center/contain no-repeat url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2281px%22%20height%3D%2271px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(242%2C%20156%2C%203)%22%20d%3D%22M79.330%2C70.998%20C78.498%2C70.998%2077.823%2C70.326%2077.823%2C69.497%20L77.823%2C46.764%20C77.822%2C41.320%2071.591%2C35.114%2066.125%2C35.114%20L43.721%2C35.114%20C36.753%2C35.114%2030.117%2C31.785%2025.968%2C26.209%20L10.669%2C5.646%20C9.285%2C3.786%206.639%2C3.396%204.770%2C4.776%20C3.865%2C5.444%203.275%2C6.424%203.109%2C7.534%20C2.943%2C8.645%203.221%2C9.752%203.892%2C10.654%20L33.468%2C50.944%20C34.958%2C52.972%2035.745%2C55.372%2035.745%2C57.885%20L35.745%2C69.492%20C35.745%2C70.321%2035.071%2C70.993%2034.239%2C70.993%20C33.407%2C70.993%2032.733%2C70.321%2032.733%2C69.492%20L32.733%2C57.885%20C32.733%2C56.014%2032.147%2C54.227%2031.037%2C52.717%20L1.465%2C12.434%20C0.321%2C10.896%20-0.155%2C8.996%200.129%2C7.092%20C0.414%2C5.189%201.424%2C3.510%202.976%2C2.364%20C6.180%2C-0.001%2010.716%2C0.669%2013.090%2C3.858%20L28.389%2C24.420%20C31.972%2C29.236%2037.704%2C32.111%2043.721%2C32.111%20L66.125%2C32.111%20C73.273%2C32.111%2080.835%2C39.643%2080.836%2C46.764%20L80.836%2C69.497%20C80.836%2C70.326%2080.161%2C70.998%2079.330%2C70.998%20ZM50.493%2C31.442%20C42.468%2C31.442%2035.939%2C24.937%2035.939%2C16.941%20C35.939%2C8.944%2042.468%2C2.439%2050.493%2C2.439%20C58.518%2C2.439%2065.047%2C8.944%2065.047%2C16.941%20C65.047%2C24.937%2058.518%2C31.442%2050.493%2C31.442%20ZM50.493%2C5.441%20C44.129%2C5.441%2038.952%2C10.599%2038.952%2C16.941%20C38.952%2C23.281%2044.129%2C28.440%2050.493%2C28.440%20C56.857%2C28.440%2062.034%2C23.281%2062.034%2C16.941%20C62.034%2C10.599%2056.857%2C5.441%2050.493%2C5.441%20ZM66.748%2C53.033%20C67.580%2C53.033%2068.254%2C53.705%2068.254%2C54.535%20L68.254%2C69.492%20C68.254%2C70.321%2067.580%2C70.993%2066.748%2C70.993%20C65.916%2C70.993%2065.241%2C70.321%2065.241%2C69.492%20L65.241%2C54.535%20C65.241%2C53.705%2065.916%2C53.033%2066.748%2C53.033%20Z%22%2F%3E%3C%2Fsvg%3E');
}

@media (max-width: 767.98px)
{
    .c-deco-title::before
    {
        right: .3125vw;
        bottom: 3.125vw;
        left: auto;

        width: 12.5vw;
        height: 10.9375vw;
    }
}
.c-deco-title__sub
{
    font-size: 20px;

    position: relative;

    display: inline-block;

    margin-bottom: 18px;
}

@media (max-width: 767.98px)
{
    .c-deco-title__sub
    {
        font-size: 3.125vw;

        margin-bottom: 0;
    }
}
.c-deco-title__sub::before,
.c-deco-title__sub::after
{
    position: absolute;
    top: 0;

    width: 3px;
    height: 24px;

    content: '';

    background-color: #f29b00;
}

@media (max-width: 767.98px)
{
    .c-deco-title__sub::before,
    .c-deco-title__sub::after
    {
        width: .625vw;
        height: 4.375vw;
    }
}
.c-deco-title__sub::before
{
    left: -24px;

    transform: rotate(-30deg);
}

.c-deco-title__sub::after
{
    right: -24px;

    transform: rotate(30deg);
}

.c-deco-title__underline
{
    position: relative;
}

.c-deco-title__underline::after
{
    position: absolute;
    z-index: -1;
    bottom: 2px;
    left: 0;

    width: 100%;
    height: 6px;

    content: '';

    background-color: #c0e255;
}

@media (max-width: 767.98px)
{
    .c-deco-title__underline::after
    {
        bottom: 0;
    }
}
.c-table
{
    font-size: 16px;
    line-height: 1.5;

    display: flex;

    letter-spacing: .05em;

    border: solid 1px #ccc;

    flex-wrap: wrap;
}

@media (max-width: 767.98px)
{
    .c-table
    {
        font-size: 4.0625vw;

        width: 946px;
    }
}
.c-table > *
{
    padding: 18px;
}

.c-table.c-table__bg-white > *
{
    padding: 18px 18px 18px 20px;
}

.c-table__title
{
    font-weight: bold;

    width: 21.1416490486%;

    color: #fff;
    border-bottom: solid 1px #fff;
    background-color: #a6b8ad;
}

.c-table__title:last-of-type
{
    border-bottom: none;
}

.c-table__bg-white .c-table__title
{
    position: relative;

    display: flex;

    text-align: center;

    color: #f29b00;
    border-color: #ccc;
    border-right: solid 1px #ccc;
    background-color: #fff;

    justify-content: center;
    align-items: center;
}

.c-table__bg-white .c-table__title img
{
    width: 32px;
    height: 32px;
    margin-left: 6px;
}

.c-table__bg-white .c-table__title.c-table__title--align-left
{
    text-align: left;

    justify-content: flex-start;
}

.c-table__bg-white .c-table__title.c-table__title--align-left img
{
    margin-right: 14px;
}

.c-table__title.c-table__title--w225
{
    width: 225px;
}

.c-table__title.table__title--green
{
    color: #008135;
}

.c-table__body
{
    width: 78.8583509514%;

    color: #000;
    border-bottom: solid 1px #ccc;
    background-color: #fff;
}

.c-table__body:last-of-type
{
    border-bottom: none;
}

.c-table__bg-white .c-table__body
{
    display: flex;

    align-items: center;
}

.c-table__body.c-table__body--2col
{
    width: 49.2600422833%;
}

.c-table__body.c-table__body--2col:nth-last-child(2)
{
    border-bottom: none;
}

.c-table__body.c-table__body--2col + .c-table__body--2col
{
    width: 29.5983086681%;

    border-left: solid 1px #ccc;
}

.c-table__body.c-table__body--w225
{
    width: 719px;
}

.c-text
{
    font-size: 16px;

    letter-spacing: .05em;

    color: #000;
}

@media (max-width: 767.98px)
{
    .c-text
    {
        font-size: 4.0625vw;
    }
}
.c-text.c-text--sm
{
    font-size: 13px;
}

@media (max-width: 767.98px)
{
    .c-text.c-text--sm
    {
        font-size: 3.125vw;
        line-height: 1.5;

        display: inline-block;
    }
}
@media (max-width: 767.98px)
{
    .c-text.c-text--24-sm
    {
        font-size: 3.75vw;
    }
}
@media (max-width: 767.98px)
{
    .c-text.c-text--26-sm
    {
        font-size: 4.0625vw;
    }
}
@media (max-width: 767.98px)
{
    .c-text.c-text--32-sm
    {
        font-size: 5vw;
    }
}
.c-text.c-text--lg
{
    font-size: 20px;
}

@media (max-width: 767.98px)
{
    .c-text.c-text--lg
    {
        font-size: 5vw;
    }
}
.c-text.c-text--center
{
    text-align: center;
}

.c-text.c-text--left
{
    text-align: left;
}

@media (max-width: 767.98px)
{
    .c-text.c-text--left-sm
    {
        text-align: left;
    }
}
.c-text.c-text--green
{
    color: #094;
}

.c-text.c-text--bold
{
    font-weight: bold;
}

.c-text.c-text--block
{
    display: block;
}

.c-text.c-text--indent1
{
    padding-left: 1em;

    text-indent: -1em;
}

.c-text.c-text--indent
{
    padding-left: 1.5em;

    text-indent: -1.5em;
}

.c-text.c-text--indent5
{
    padding-left: 5em;

    text-indent: -5em;
}

.c-text + .c-text
{
    margin-top: 1.75em;
}

.c-text.c-text--mt0
{
    margin-top: 0;
}

.c-text a
{
    text-decoration: underline;

    color: #094;
}

.c-text a:hover
{
    text-decoration: none;
}

.p-card-wrapper
{
    display: flex;

    flex-wrap: wrap;
}

@media (max-width: 767.98px)
{
    .p-card-wrapper
    {
        flex-direction: column;
    }
}
.p-card-wrapper.p-card-wrapper--center
{
    justify-content: center;
}

.p-card-wrapper__item
{
    width: 214px;
    margin-left: 30px;
}

@media (max-width: 767.98px)
{
    .p-card-wrapper__item
    {
        width: 100%;
        margin-top: 6.25vw;
        margin-left: 0;
    }
    .p-card-wrapper__item:first-child
    {
        margin-top: 0;
    }
}
@media (min-width: 768px)
{
    .p-card-wrapper__item:not(:nth-child(-n+4))
    {
        margin-top: 30px;
    }
}
@media (min-width: 768px)
{
    .p-card-wrapper__item:first-child,
    .p-card-wrapper__item:nth-child(4n+1)
    {
        margin-left: 0;
    }
}
@media (min-width: 768px)
{
    .p-card-wrapper__item.p-card-wrapper__item--2col
    {
        width: 458px;
    }
}
.p-details-container
{
    padding: 0 0 100px;

    background: #e9f0d5;
}

@media (max-width: 767.98px)
{
    .p-details-container .productDetail__morebtnWrapper
    {
        width: 75vw;
    }
}
@media (max-width: 767.98px)
{
    .p-details-container .productDetail__morebtn
    {
        width: 62.5vw;
    }
}
.p-infolist dt
{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;

    margin-bottom: 10px;

    letter-spacing: .1em;

    color: #008135;
}

@media (max-width: 767.98px)
{
    .p-infolist dt
    {
        font-size: 4.6875vw;
        line-height: 1.6;

        margin-bottom: 2.5vw;
    }
}
.p-infolist dd
{
    line-height: 1.75;

    margin-bottom: 28px;
}

@media (max-width: 767.98px)
{
    .p-infolist dd
    {
        margin-bottom: 8.125vw;
    }
}
.p-section:not(:first-of-type)
{
    margin-top: 82px;
}

@media (max-width: 767.98px)
{
    .p-section:not(:first-of-type)
    {
        margin-top: 11.25vw;
    }
}
.p-section__inner
{
    width: 946px;
    margin: auto;
}

@media (max-width: 767.98px)
{
    .p-section__inner
    {
        width: 75vw;
    }
}
.p-section__title
{
    font-size: 5.625vw;
    font-weight: 400;
    line-height: 1.556;

    position: relative;

    margin-bottom: 9.0625vw;
    padding-left: 3.75vw;

    text-align: left;
    letter-spacing: .5625vw;

    color: #4b4b4b;
}

@media (min-width: 768px)
{
    .p-section__title
    {
        font-size: 20px;
        font-weight: bold;
        line-height: 24px;

        margin-bottom: 30px;
        padding-left: 12px;

        letter-spacing: .15em;
    }
}
.p-section__title::before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 1.5625vw;
    height: 100%;

    content: '';

    border-radius: .78125vw;
    background-color: #094;
}

@media (min-width: 768px)
{
    .p-section__title::before
    {
        width: 6px;
        height: 24px;

        border-radius: 3px;
    }
}
@media (min-width: 768px)
{
    .p-section__title.p-section__title--bottom-narrow
    {
        margin-bottom: 22px;
    }
}
.p-section__title.p-section__title--bg-whtie
{
    padding: 18px 40px;

    border-top: solid 3px #f29b00;
    border-radius: 3px;
    background-color: #fff;
}

@media (max-width: 767.98px)
{
    .p-section__title.p-section__title--bg-whtie
    {
        font-size: 5vw;

        padding: 4.6875vw 5vw 4.6875vw 11.25vw;

        letter-spacing: .15em;
    }
}
.p-section__title.p-section__title--bg-whtie::before
{
    top: 0;
    bottom: 0;
    left: 15px;

    width: 16px;
    height: 16px;
    margin: auto;

    border-radius: 50%;
    background-color: #f29b00;
}

@media (max-width: 767.98px)
{
    .p-section__title.p-section__title--bg-whtie::before
    {
        left: 4.0625vw;

        width: 3.75vw;
        height: 3.75vw;
    }
}
.p-section__title > span
{
    font-size: .8em;
    line-height: 1.75;
}

@media (max-width: 767.98px)
{
    .p-section__title > span
    {
        font-size: 3.125vw;
    }
}
.p-section__img
{
    width: 100%;

    text-align: center;
}

.p-section__img img
{
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

.p-section__img.p-section__img--left
{
    text-align: left;
}

.p-section__img.p-section__img--right
{
    text-align: right;
}

.p-section__img.p-section__img--radius img
{
    border-radius: 22px;
}

@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--radius img
    {
        border-radius: 1.875vw;
    }
}
.p-section__img.p-section__img--radius12 img
{
    border-radius: 12px;
}

@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--radius24-sm img
    {
        border-radius: 3.75vw;
    }
}
.p-section__img.p-section__img--w160
{
    width: 160px;
}

@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--w160
    {
        width: 50vw;
        margin: auto;
    }
}
.p-section__img.p-section__img--w237
{
    width: 237px;

    flex-shrink: 0;
}

@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--w237
    {
        width: 37.03125vw;
        margin: auto;
    }
}
.p-section__img.p-section__img--w240
{
    width: 240px;

    flex-shrink: 0;
}

.p-section__img.p-section__img--w450
{
    width: 450px;

    flex-shrink: 0;
}

@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--w355-sm
    {
        width: 55.46875vw;
        margin: auto;
    }
}
@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--w398-sm
    {
        width: 62.1875vw;
        margin: auto;

        border-radius: 3.125vw;
    }
}
@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--w400-sm
    {
        width: 62.5vw;
        margin: auto;

        border-radius: 3.125vw;
    }
}
@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--w100-sm
    {
        width: 100%;
    }
}
.p-section__img.p-section__img--mitsuboshi
{
    width: 245px;
    margin: auto;
}

@media (max-width: 767.98px)
{
    .p-section__img.p-section__img--mitsuboshi
    {
        width: 62.5vw;
    }
}
.p-section__img.p-section__img--scroll
{
    overflow-x: auto;
}

.p-section__img.p-section__img--scroll img
{
    min-width: 701px;
}

.p-section__body
{
    margin-top: 24px;
}

.p-section__flex
{
    display: flex;

    justify-content: space-between;
}

@media (max-width: 767.98px)
{
    .p-section__flex
    {
        flex-direction: column;
    }
}
.p-section__flex.p-section__flex--center
{
    justify-content: center;
}

@media (max-width: 767.98px)
{
    .p-section__flex.p-section__flex-sm
    {
        flex-direction: row;
    }
}
@media (max-width: 767.98px)
{
    .p-section__flex.p-section__flex--reverse-sm
    {
        flex-direction: column-reverse;
    }
}
.p-section__img-wrapper
{
    display: flex;

    justify-content: space-between;
}

.p-section__banner
{
    width: 581px;
    margin: auto;
    padding-top: 40px;
}

@media (max-width: 767.98px)
{
    .p-section__banner
    {
        width: 68.90625vw;
        margin-left: 0;
        padding-top: 9.375vw;
    }
}
.p-section__banner a:hover img
{
    animation: pyonAction .52s cubic-bezier(.165, .84, .44, 1) forwards;
}

@media (max-width: 767.98px)
{
    .p-section__banner.p-section__banner--out-of
    {
        margin-left: 6.875vw;
    }
}
.p-section__banner.p-section__banner--pt0
{
    padding-top: 0;
}

.p-section__banner.p-section__banner--pt80
{
    padding-top: 80px;
}

@media (max-width: 767.98px)
{
    .p-section__banner.p-section__banner--pt80
    {
        padding-top: 15.625vw;
    }
}
.p-section__figure + .p-section__figure
{
    margin-left: 22px;
}

@media (max-width: 767.98px)
{
    .p-section__figure + .p-section__figure
    {
        margin-left: 3.125vw;
    }
}
.p-section__figure.p-section__figure--w268
{
    width: 268px;
}

@media (max-width: 767.98px)
{
    .p-section__figure.p-section__figure--w268
    {
        width: 35.9375vw;
    }
}
.p-section__figure > img
{
    border-radius: 22px;
}

@media (max-width: 767.98px)
{
    .p-section__figure > img
    {
        border-radius: 2.96875vw;
    }
}
@media (max-width: 767.98px)
{
    .p-section__figure.p-section__figure--radius12
    {
        display: flex;
        flex-direction: column;

        width: 32.03125vw;

        justify-content: center;
        align-items: center;
    }
}
.p-section__figure.p-section__figure--radius12 > img
{
    width: 205px;

    border-radius: 12px;
}

@media (max-width: 767.98px)
{
    .p-section__figure.p-section__figure--radius12 > img
    {
        width: 32.03125vw;

        border-radius: 1.875vw;
    }
}
@media (max-width: 767.98px)
{
    .p-section__table
    {
        overflow: scroll;
    }
}
.p-section__subtitle
{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;

    display: block;

    margin-bottom: 10px;

    letter-spacing: .1em;

    color: #008135;
}

@media (max-width: 767.98px)
{
    .p-section__subtitle
    {
        font-size: 4.6875vw;

        margin-bottom: 1.875vw;
    }
}
.p-section__chip-wrapper .p-section__subtitle
{
    margin-bottom: 0;
}

.p-section__subtitle.p-section__subtitle-indent
{
    padding-left: 1em;

    text-indent: -1em;
}

.p-section__chip
{
    font-size: 12px;
    line-height: 1;

    display: inline-flex;

    width: 90px;
    height: 24px;
    margin-left: 10px;
    padding-top: 2px;

    letter-spacing: .1em;

    color: #fff;
    border-radius: 12px;
    background-color: #f29b00;

    justify-content: center;
    align-items: center;
}

@media (max-width: 767.98px)
{
    .p-section__chip
    {
        font-size: 3.125vw;

        width: 23.4375vw;
        height: 6.25vw;
        margin-left: 1.5625vw;
        padding-top: 0;

        border-radius: 3.125vw;
    }
}
.p-section__chip-wrapper
{
    display: flex;

    margin-bottom: 10px;

    align-items: center;
}

@media (max-width: 767.98px)
{
    .p-section__chip-wrapper
    {
        margin-bottom: 1.875vw;
    }
}
.p-section__sub-body + .p-section__sub-body
{
    margin-top: 30px;
}

@media (max-width: 767.98px)
{
    .p-section__sub-body + .p-section__sub-body
    {
        margin-top: 7.5vw;
    }
}
.p-stack-section
{
    overflow: hidden;

    border-radius: 22px;
}

@media (max-width: 767.98px)
{
    .p-stack-section
    {
        border-radius: 3.4375vw;
    }
}
.p-stack-section__title
{
    font-size: 16px;

    padding: 10px 0;

    text-align: center;
    letter-spacing: .1em;

    color: #fff;
    background-color: #094;
}

@media (max-width: 767.98px)
{
    .p-stack-section__title
    {
        font-size: 3.75vw;
        line-height: 1;

        padding: 3.75vw 0;
    }
}
.p-stack-section__body
{
    padding: 24px 60px 36px;

    background-color: #fff;
}

@media (max-width: 767.98px)
{
    .p-stack-section__body
    {
        padding: 9.375vw 6.25vw 11.875vw;
    }
}
.p-stack-section__body.p-stack-section__body--flex
{
    display: flex;

    justify-content: space-between;
}

@media (max-width: 767.98px)
{
    .p-stack-section__body.p-stack-section__body--flex
    {
        flex-direction: column;
    }
}
.p-stack-section__image.p-stack-section__image--w200
{
    width: 200px;

    flex-shrink: 0;
}

@media (max-width: 767.98px)
{
    .p-stack-section__image.p-stack-section__image--w200
    {
        width: 100%;
    }
}
.p-stack-section__subtitle
{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.556;

    display: block;

    letter-spacing: .05em;

    color: #094;
}

@media (max-width: 767.98px)
{
    .p-stack-section__subtitle
    {
        font-size: 3.75vw;

        text-align: center;
    }
}
.p-stack-section__bordered
{
    display: flex;

    padding: 18px 30px 18px 92px;

    border: solid 2px #094;

    justify-content: center;
}

@media (max-width: 767.98px)
{
    .p-stack-section__bordered
    {
        flex-direction: column;

        padding: 7.8125vw 5.3125vw 6.5625vw;

        border-width: .625vw;
    }
}
@media (min-width: 768px)
{
    .p-stack-section__bordered > *:nth-child(2)
    {
        margin-left: 38px;

        flex: 1;
    }
}
.p-sub-section:not(:first-of-type)
{
    margin-top: 80px;
}

@media (max-width: 767.98px)
{
    .p-sub-section:not(:first-of-type)
    {
        margin-top: 12.5vw;
    }
}
@media (max-width: 767.98px)
{
    .p-sub-section__table
    {
        overflow: scroll;
    }
}
.p-tab-sections
{
    padding-top: 160px;
}

@media (max-width: 767.98px)
{
    .p-tab-sections
    {
        padding-top: 18.4375vw;
    }
}
.p-tab-sections.p-tab-sections--pt0
{
    padding-top: 0;
}

.p-tab-sections__item
{
    display: none;

    opacity: 0;
}

.p-tab-sections__item.is-active
{
    display: block;

    animation-name: displayAnimation;
    animation-duration: .3s;

    animation-fill-mode: forwards;
}

@keyframes displayAnimation
{
    from
    {
        opacity: 0;
    }
    to
    {
        opacity: 1;
    }
}
@media (max-width: 767.98px)
{
    .p-tablist-wrapper
    {
        width: 62.5vw;
        margin: 0 auto 12.5vw;
    }
}
@media (max-width: 767.98px)
{
    .p-tablist-wrapper.p-tablist-wrapper--w100
    {
        width: 100%;
    }
}
.p-tablist-wrapper__button
{
    position: relative;

    width: 62.5vw;
    height: 12.5vw;
    margin: auto;

    cursor: pointer;

    border: solid 2px #008135;
    border-radius: 6.25vw;
}

.p-tablist-wrapper__button > span
{
    font-size: 4.0625vw;
    line-height: 1.15;

    display: block;

    width: 100%;

    text-align: center;
    letter-spacing: .40625vw;

    color: #094;
    border-radius: 6.25vw;
}

.p-tablist-wrapper__button:focus
{
    outline: none;
}

@media (min-width: 768px)
{
    .p-tablist-wrapper__button
    {
        display: none;
    }
}
.p-tablist-wrapper__button::after
{
    position: absolute;
    top: 5vw;
    right: 4.6875vw;

    content: '';
    transition: transform .2s cubic-bezier(.215, .61, .355, 1);
    pointer-events: none;

    border-width: 2.65625vw 2.1875vw 0 2.1875vw;
    border-style: solid;
    border-color: #094 transparent transparent;
}

.p-tablist-wrapper__button.p-tablist-wrapper__button--w100
{
    width: 100%;
    height: 15.9375vw;

    border-radius: 7.96875vw;
}

.p-tablist-wrapper__button.p-tablist-wrapper__button--w100::after
{
    top: 6.25vw;
}

.p-tablist-wrapper__button.is-active::after
{
    transform: rotate(-180deg);
}

.productDetail__sortTab ul
{
    position: relative;
    z-index: 1;

    display: flex;
    overflow: hidden;

    width: 100%;

    border-radius: 28px;
    box-shadow: 0 0 0 1px #008135 inset;

    justify-content: center;
    align-items: center;
}

@media (max-width: 767.98px)
{
    .productDetail__sortTab ul
    {
        display: none;
        flex-direction: column;

        margin-top: 3.125vw;

        border-width: 2px;
        border-radius: 7.8125vw;
    }
}
.productDetail__sortTab ul li
{
    flex: 1 1 250px;
}

@media (max-width: 767.98px)
{
    .productDetail__sortTab ul li
    {
        width: 100%;

        flex: 1 1 12.5vw;
    }
}
.productDetail__sortTab ul li + li
{
    border-left: 1px solid #008135;
}

@media (max-width: 767.98px)
{
    .productDetail__sortTab ul li + li
    {
        border-top: 1px solid #008135;
        border-left: none;
    }
}
.productDetail__sortTab ul li button
{
    line-height: 1;

    width: 100%;
    padding: 20px 0;

    transition: color .15s cubic-bezier(.25, .25, .75, .75), background-color .15s cubic-bezier(.25, .25, .75, .75);

    color: #008135;
}

.no-touchevents .productDetail__sortTab ul li button:hover,
.touchevents .productDetail__sortTab ul li button.is-touched
{
    color: #fff;
    background-color: #008135;
}

@media (max-width: 767.98px)
{
    .productDetail__sortTab ul li button
    {
        font-size: 4.0625vw;

        padding: 4.6875vw 0;

        letter-spacing: .40625vw;
    }
}
.productDetail__sortTab ul li button[aria-expanded=true]
{
    color: #fff;
    background-color: #008135;
}

.p-tablist
{
    display: flex;
    overflow: hidden;

    width: 946px;
    height: 60px;
    margin: 0 auto 80px;

    border: solid 2px #094;
    border-radius: 30px;
}

@media (max-width: 767.98px)
{
    .p-tablist
    {
        display: none;
        flex-direction: column;

        width: 100%;
        height: auto;
        margin: 3.125vw auto 0;

        border-width: 2px;
        border-radius: 7.8125vw;
    }
}
.p-tablist.p-tablist--w752
{
    width: 752px;
}

@media (max-width: 767.98px)
{
    .p-tablist.p-tablist--w752
    {
        width: 100%;
    }
}
.p-tablist__item
{
    width: 100%;

    text-align: center;
}

@media (max-width: 767.98px)
{
    .p-tablist__item
    {
        width: 100%;

        flex: 1 1 12.5vw;
    }
}
.p-tablist__item + .p-tablist__item
{
    border-left: 1px solid rgba(0, 153, 69, .5);
}

@media (max-width: 767.98px)
{
    .p-tablist__item + .p-tablist__item
    {
        border-top: 1px solid #008135;
        border-left: none;
    }
}
.p-tablist__button
{
    font-weight: bold;

    width: 100%;
    height: 100%;

    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: background-color, color;
    letter-spacing: .1em;

    color: #094;
}

@media (max-width: 767.98px)
{
    .p-tablist__button
    {
        font-size: 4.0625vw;

        padding: 4.6875vw 0;

        letter-spacing: .40625vw;
    }
}
.p-tablist__button.is-active
{
    color: #fff;
    background: #094;
}

.p-tablist__button:hover
{
    color: #fff;
    background-color: #094;
}

.p-tablist__button:active
{
    opacity: .9;
}

.p-unique-table
{
    margin-top: 30px;

    border: solid 1px #ccc;
}

@media (max-width: 767.98px)
{
    .p-unique-table
    {
        width: 946px;
    }
}
.p-unique-table__header
{
    border-bottom: solid 1px #ccc;
}

.p-unique-table__header-item
{
    font-weight: bold;

    width: 50%;
    padding: 12px 18px;

    text-align: center;

    color: #fff;
    border-right: solid 1px #fff;
    background-color: #a6b8ad;
}

.p-unique-table__header-item.p-unique-table__header-item--w50
{
    width: 50%;
}

.p-unique-table__header-item.p-unique-table__header-item--w25
{
    width: 25%;
}

.p-unique-table__header-item.p-unique-table__header-item--w62
{
    width: 62px;
}

.p-unique-table__header-item.p-unique-table__header-item--w85
{
    width: 85px;
}

.p-unique-table__header-item:last-of-type
{
    border-right: none;
}

.p-unique-table__row
{
    display: flex;

    border-bottom: solid 1px #ccc;
}

.p-unique-table__row:last-of-type
{
    border-bottom: none;
}

.p-unique-table__row-item
{
    display: block;

    width: 50%;
    padding: 12px 18px;

    color: #000;
    border-right: solid 1px #ccc;
    background-color: #fff;
}

.p-unique-table__row-item:last-of-type
{
    border-right: none;
}

.p-unique-table__row-item.p-unique-table__row-item--align-center
{
    display: flex;

    align-items: center;
}

.p-unique-table__row-item.p-unique-table__row-item--w100
{
    width: 100%;
}

.p-unique-table__row-item.p-unique-table__row-item--w62
{
    width: 62px;
}

.p-unique-table__row-item.p-unique-table__row-item--w85
{
    width: 85px;

    text-align: center;
}

@media (min-width: 768px)
{
    .u-margin-t4
    {
        margin-top: 4px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t12
    {
        margin-top: 12px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t15
    {
        margin-top: 15px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t20
    {
        margin-top: 20px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t24
    {
        margin-top: 24px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t28
    {
        margin-top: 28px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t30
    {
        margin-top: 30px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t40
    {
        margin-top: 40px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t54
    {
        margin-top: 54px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t60
    {
        margin-top: 60px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t70
    {
        margin-top: 70px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-t80
    {
        margin-top: 80px !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t4-sm
    {
        margin-top: .625vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t10-sm
    {
        margin-top: 1.5625vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t15-sm
    {
        margin-top: 2.34375vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t16-sm
    {
        margin-top: 2.5vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t20-sm
    {
        margin-top: 3.125vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t28-sm
    {
        margin-top: 4.375vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t38-sm
    {
        margin-top: 5.9375vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t40-sm
    {
        margin-top: 6.25vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t44-sm
    {
        margin-top: 6.875vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t50-sm
    {
        margin-top: 7.8125vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t56-sm
    {
        margin-top: 8.75vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t60-sm
    {
        margin-top: 9.375vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t66-sm
    {
        margin-top: 10.3125vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t70-sm
    {
        margin-top: 10.9375vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-t80-sm
    {
        margin-top: 12.5vw !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-r25
    {
        margin-right: 25px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-r30
    {
        margin-right: 30px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-r40
    {
        margin-right: 40px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-r44
    {
        margin-right: 44px !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-r0-sm
    {
        margin-right: 0vw !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-b30
    {
        margin-bottom: 30px !important;
    }
}
@media (min-width: 768px)
{
    .u-margin-b80
    {
        margin-bottom: 80px !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-b40-sm
    {
        margin-bottom: 6.25vw !important;
    }
}
@media (max-width: 767.98px)
{
    .u-margin-b70-sm
    {
        margin-bottom: 10.9375vw !important;
    }
}
/* --------------------------------
   product_detail
-------------------------------- */
button,
html input[type=button],
input[type=reset],
input[type=submit]
{
    cursor: pointer;

    border-style: none;
    background-color: transparent;

    -webkit-appearance: button;
}

/* keyVisual ---------------- */
.m-mv
{
    background: url(/img/product/common/mv_sm.jpg) center no-repeat;
    background-size: cover;
}
@media (min-width: 768px)
{
    .m-mv
    {
        background-image: url(/img/product/common/mv_lg.jpg);
    }
}

.m-mv_title .jp
{
    line-height: 1.27;

    letter-spacing: 6.6px;
}

.m-card
{
    padding-right: 6.25vw;
    padding-left: 6.25vw;

    background-color: #f8f2e7;
}
@media (min-width: 768px)
{
    .m-card
    {
        padding: 0;

        background-color: #fcfced;
    }
}

.m-card-contitle::before
{
    display: none;
}

.l-content
{
    margin-bottom: 0;
}

.p-contSection
{
    padding-bottom: 0 !important;
}
@media (min-width: 768px)
{
    .p-contSection
    {
        padding-top: 64px !important;
    }
}

.p-keyVisual
{
    height: 200px;
    padding: 70px 0 0;

    background: url(/img/product/detail/product_detail_kv.jpg) top center no-repeat;
    background-size: cover;
}
@media (max-width: 1139.98px)
{
    .p-keyVisual
    {
        height: 17.5438596491vw;
        padding: 6.1403508772vw 0 0;
    }
}
@media (max-width: 767.98px)
{
    .p-keyVisual
    {
        height: 26.5625vw;
        padding: 4.6875vw 0 0;

        background: url(/img/product/detail/product_detail_kv_sm.jpg) top center no-repeat;
        background-size: 87.5vw 31.09375vw;
    }
}
.p-keyVisual::after
{
    position: absolute;
    bottom: -25px;
    left: 50%;

    width: 8px;
    height: 42px;
    margin: auto;

    content: '';
    transform: translate3d(-50%, 0, 0);

    background-image: radial-gradient(circle farthest-side, #e87d44 20%, transparent 20%, transparent 100%);
    background-repeat: repeat-y;
    background-position: 50% 0;
    background-size: 26px 14px;
}
@media (max-width: 1139.98px)
{
    .p-keyVisual::after
    {
        bottom: -2.1929824561vw;
    }
}
@media screen and (max-width: 900px)
{
    .p-keyVisual::after
    {
        bottom: -3.1578947368vw;
    }
}
@media (max-width: 767.98px)
{
    .p-keyVisual::after
    {
        bottom: -5vw;

        width: 1.25vw;
        height: 7.8125vw;

        background-size: 5.46875vw 2.8125vw;
    }
}

.p-keyVisual__title
{
    font-size: 32px;

    text-align: center;
}
@media (min-width: 768px)
{
    .p-keyVisual__title
    {
        margin: 0 0 10px;
    }
}
@media (max-width: 767.98px)
{
    .p-keyVisual__title
    {
        font-size: 5.625vw;
    }
}

.p-keyVisual__titleEn
{
    width: 147px;
    margin: 0 auto;

    opacity: .25;
}
@media (max-width: 767.98px)
{
    .p-keyVisual__titleEn
    {
        width: 25.46875vw;
        margin: -.78125vw auto 0;
    }
}

/* product_detail ---------------- */
.productDetail__top
{
    display: flex;

    padding: 0 110px 30px;

    background-color: #fff;

    align-items: center;
}
@media (max-width: 767.98px)
{
    .productDetail__top
    {
        display: block;

        padding: 0 6.25vw 15.625vw;
    }
}
@media (min-width: 768px)
{
    .productDetail__top
    {
        padding: 0 9.649122807vw 30px;
    }
}
@media (min-width: 1140px)
{
    .productDetail__top
    {
        padding: 0 110px 30px;
    }
}

.productDetail__thumb
{
    width: 400px;
    height: 400px;
    margin-right: 40px;

    flex: 1 1 440px;
}
@media (max-width: 767.98px)
{
    .productDetail__thumb
    {
        width: 68.75vw;
        height: 68.75vw;
        margin: auto;
    }
}
.productDetail__thumb img
{
    width: 100%;
    height: 100%;

    -o-object-fit: contain;

       object-fit: contain;
    -o-object-position: center;
       object-position: center;
}

.productDetail__detail
{
    flex: 1 1 440px;
}

.productDetail__category
{
    font-weight: bold;
    line-height: 1;

    display: inline-block;

    padding: 3px 18px;

    text-align: center;
    letter-spacing: .12em;

    color: #fff;
    border-radius: 6px;
    background-color: #a6b8ad;
}
@media (max-width: 767.98px)
{
    .productDetail__category
    {
        font-size: 4.0625vw;

        margin-bottom: 3.125vw;
        padding: 1.09375vw 4.0625vw;

        border-radius: 1.875vw;
    }
}

.productDetail__name
{
    font-size: 32px;
    font-weight: bold;
    line-height: 1.5;

    margin-top: 15px;

    letter-spacing: .05em;

    color: #094;
}
@media (max-width: 767.98px)
{
    .productDetail__name
    {
        font-size: 5.3125vw;

        margin-top: 0;
    }
}

.productDetail__data
{
    margin-top: 50px;

    color: #000;
    border-top: 1px solid #ccc;
}
@media (max-width: 1139.98px)
{
    .productDetail__data
    {
        margin-top: 4.3859649123vw;
    }
}
@media (max-width: 767.98px)
{
    .productDetail__data
    {
        margin-top: 5vw;
    }
}
.productDetail__data dl
{
    display: flex;

    padding: 12px 0;

    border-bottom: 1px solid #ccc;
}
@media (max-width: 767.98px)
{
    .productDetail__data dl
    {
        padding: 2.65625vw 0;
    }
}
.productDetail__data dt,
.productDetail__data dd
{
    letter-spacing: .05em;
}
@media (max-width: 767.98px)
{
    .productDetail__data dt,
    .productDetail__data dd
    {
        font-size: 4.0625vw;

        letter-spacing: 1.38;
    }
}
.productDetail__data dt
{
    font-weight: bold;

    width: 24%;
    min-width: 100px;
}
@media (max-width: 767.98px)
{
    .productDetail__data dt
    {
        width: 30%;
        min-width: initial;
    }
}
.productDetail__data dd
{
    width: 76%;
}
@media (max-width: 767.98px)
{
    .productDetail__data dd
    {
        width: 70%;
    }
}

.productDetail__note
{
    font-size: .8rem;

    margin-top: 10px;

    color: #000;
}
@media (max-width: 767.98px)
{
    .productDetail__note
    {
        margin-top: 3.125vw;
    }
}

/* secret ---------------- */
.secret
{
    position: relative;

    background-color: #e9f0d5;
}
.secret::before
{
    position: absolute;
    top: 0;
    left: 50%;

    display: block;

    width: 0;
    height: 0;

    content: '';
    transform: translate3d(-50%, 0, 0);

    border-width: 42px 41px 0;
    border-style: solid;
    border-color: #fff transparent transparent;
}
@media (max-width: 767.98px)
{
    .secret::before
    {
        border-width: 6.5625vw 6.40625vw 0 6.40625vw;
    }
}

.secret__inner
{
    padding: 100px 97px;

    text-align: center;
}
@media (max-width: 767.98px)
{
    .secret__inner
    {
        padding: 18.75vw 6.25vw 12.5vw;
    }
}

.secret__title
{
    font-size: 32px;

    position: relative;
    z-index: 10;

    display: inline-block;

    text-align: center;
    letter-spacing: .05em;

    color: #094;
}
@media (max-width: 767.98px)
{
    .secret__title
    {
        font-size: 5.625vw;
    }
}
.secret__title::before,
.secret__title::after
{
    position: absolute;
    top: 5px;

    display: block;

    width: 44px;
    height: 66px;

    content: '';
}
@media (max-width: 767.98px)
{
    .secret__title::before,
    .secret__title::after
    {
        top: 3.59375vw;

        width: 9.53125vw;
        height: 14.0625vw;
    }
}
.secret__title::before
{
    left: -74px;

    background: url(/img/product/detail/secret_decoration_left.png) no-repeat;
    background-size: 44px 66px;
}
@media (max-width: 767.98px)
{
    .secret__title::before
    {
        left: -13.125vw;

        background-size: 9.53125vw 14.0625vw;
    }
}
.secret__title::after
{
    right: -74px;

    background: url(/img/product/detail/secret_decoration_right.png) no-repeat;
    background-size: 44px 66px;
}
@media (max-width: 767.98px)
{
    .secret__title::after
    {
        right: -13.125vw;

        background-size: 9.53125vw 14.0625vw;
    }
}
.secret__title .secret__titleInner
{
    position: relative;
}
.secret__title .secret__titleInner::before
{
    position: absolute;
    top: -30px;
    left: 50%;

    display: block;

    width: 58px;
    height: 11px;

    content: '';
    transform: translate3d(-50%, 0, 0);

    background: url(/img/product/detail/secrets_img.svg) no-repeat;
    background-size: 58px 11px;
}
@media (max-width: 767.98px)
{
    .secret__title .secret__titleInner::before
    {
        top: -7.8125vw;
        left: 11.40625vw;

        width: 18.4375vw;
        height: 3.75vw;

        transform: translate3d(0, 0, 0);

        background-size: 18.4375vw 3.75vw;
    }
}
.secret__title .secret__titleInner span
{
    position: relative;
}
.secret__title .secret__titleInner span::after
{
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 3px;
    left: 0;

    display: block;

    width: 100%;
    height: 6px;

    content: '';

    background-color: #c0e255;
}
.secret__title .secret__titleInner strong
{
    font-size: 50px;
    font-weight: 500;
    line-height: 1;
}
@media (max-width: 767.98px)
{
    .secret__title .secret__titleInner strong
    {
        font-size: 9.375vw;
    }
}

.secret__pointWrap
{
    display: flex;

    padding-top: 80px;

    text-align: left;

    justify-content: space-between;
}
@media (max-width: 767.98px)
{
    .secret__pointWrap
    {
        display: block;

        padding-top: 0;
    }
}
.secret__pointWrap.secret__pointWrap_2items
{
    justify-content: center;
}

.secret-point
{
    position: relative;

    width: 31.1839323467%;
    padding: 30px 30px 70px;

    border-radius: 22px;
    background-color: #fff;
}
@media (min-width: 768px)
{
    .secret__pointWrap_2items .secret-point
    {
        width: 298px;
        margin-right: 27px;
    }
    .secret__pointWrap_2items .secret-point:last-of-type
    {
        margin-right: 0;
    }
}
@media (max-width: 767.98px)
{
    .secret-point .m-btn
    {
        margin: 0;
    }
}
@media (max-width: 767.98px)
{
    .secret-point .m-btn a::after
    {
        right: 3.125vw;
    }
}
@media (max-width: 767.98px)
{
    .secret-point
    {
        width: 100%;
        margin-top: 11.875vw;
        padding: 6.25vw 9.375vw 9.375vw;

        border-radius: 3.4375vw;
    }
}
.secret-point::after
{
    position: absolute;
    top: -19px;
    left: 50%;

    width: 8px;
    height: 42px;
    margin: auto;

    content: '';
    transform: translate3d(-50%, 0, 0);

    background-image: radial-gradient(circle farthest-side, #094 20%, transparent 20%, transparent 100%);
    background-repeat: repeat-y;
    background-position: 50% 0;
    background-size: 26px 14px;
}
@media (max-width: 767.98px)
{
    .secret-point::after
    {
        top: -4.21875vw;

        width: 1.25vw;
        height: 7.8125vw;

        background-size: 5.46875vw 2.8125vw;
    }
}

.secret-point-title
{
    display: flex;

    margin-bottom: 40px;
    padding-top: 17px;

    align-items: center;
}
@media (max-width: 767.98px)
{
    .secret-point-title
    {
        padding-top: 3.90625vw;
    }
}

.secret-point-title__num
{
    position: relative;

    margin-right: 20px;

    flex: 0 1 27%;
    align-self: flex-start;
}
@media (max-width: 767.98px)
{
    .secret-point-title__num
    {
        margin-right: 4.21875vw;

        flex: 0 0 27.7%;
    }
}
.secret-point-title__num::before
{
    position: absolute;
    top: -17px;
    left: 50%;

    display: block;

    width: 50px;
    height: 13px;

    content: '';
    transform: translate3d(-50%, 0, 0);

    background: url(/img/product/detail/secret_orange.svg) no-repeat;
    background-size: contain;
}
@media (max-width: 767.98px)
{
    .secret-point-title__num::before
    {
        top: -3.90625vw;

        width: 14.375vw;
        height: 3.90625vw;
    }
}

.secret_point-title__text
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1.36;

    letter-spacing: .1em;

    color: #094;

    flex: 1 1 64%;
}
@media (max-width: 767.98px)
{
    .secret_point-title__text
    {
        font-size: 5.3125vw;

        flex: 0 0 66.6%;
    }
}

.secret-point__image
{
    margin-bottom: 25px;

    border-radius: 22px;
}
.secret-point__subtitle
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1.36;

    display: block;

    margin: 0 0 12px;

    letter-spacing: .05em;

    color: #f29b00;
}
@media (max-width: 767.98px)
{
    .secret-point__subtitle
    {
        font-size: 5.3125vw;
    }
}

.secret-point__text
{
    line-height: 1.75;

    letter-spacing: .05em;

    color: #000;
}
@media (max-width: 767.98px)
{
    .secret-point__text
    {
        font-size: 4.0625vw;
    }
}
.secret-point__text a
{
    text-decoration: underline;

    color: #008135;
}

.productDetail__moreinfo
{
    padding: 15.625vw 6.25vw;

    background-color: #e9f0d5;
}
@media (min-width: 768px)
{
    .productDetail__moreinfo
    {
        padding: 80px 97px;
    }
}
.secret + .productDetail__moreinfo
{
    padding-top: 0;
}

.productDetail__accordion
{
    display: none;

    margin-bottom: 80px;
}

.feature,
.process,
.producer
{
    margin-bottom: 12.5vw;
}
@media (min-width: 768px)
{
    .feature,
    .process,
    .producer
    {
        margin-bottom: 80px;
    }
}

.productDetail__morebtnWrapper
{
    position: relative;

    width: 946px;
    margin: auto;

    text-align: center;
}
.productDetail__morebtnWrapper::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 100%;
    height: .78125vw;
    margin: auto;

    content: '';

    background-color: #094;
}
@media (min-width: 768px)
{
    .productDetail__morebtnWrapper::before
    {
        height: 3px;
    }
}

.productDetail__morebtn
{
    font-size: 4.0625vw;

    position: relative;

    display: block;

    width: 53.125vw;
    height: 12.5vw;
    margin: auto;

    transition: background-color .3s cubic-bezier(.39, .575, .565, 1);
    text-align: center;

    color: #fff;
    border-radius: 6.25vw;
    background-color: #094;
}
@media (min-width: 768px)
{
    .productDetail__morebtn
    {
        font-size: 16px;

        width: 364px;
        height: 50px;
        margin: auto;

        letter-spacing: 1.6px;

        border-radius: 25px;
    }
}
.productDetail__morebtn::after
{
    position: absolute;
    top: 4.21875vw;
    right: 3.90625vw;

    width: 2.8125vw;
    height: 2.8125vw;

    content: '';
    transition: transform .3s cubic-bezier(.215, .61, .355, 1);
    transform: rotate(-45deg);

    border: 1px solid;
    border-color: transparent transparent #fff #fff;
    border-radius: 2px;
}
@media (min-width: 768px)
{
    .productDetail__morebtn::after
    {
        top: 16px;
        right: 20px;

        width: 12px;
        height: 12px;

        border-width: 2px;
    }
}
.productDetail__morebtn.is_active::after
{
    transform: rotate(135deg) translate(4px, -4px);
}
.productDetail__morebtn:hover
{
    background-color: #09b025;
}

.sect_ttl
{
    font-size: 5.625vw;
    line-height: 5.625vw;

    position: relative;

    margin-bottom: 6.5625vw;
    padding-left: 3.75vw;

    text-align: left;
    letter-spacing: .5625vw;

    color: #4b4b4b;
}
@media (min-width: 768px)
{
    .sect_ttl
    {
        font-size: 20px;
        line-height: 24px;

        margin-bottom: 30px;
        padding-left: 12px;

        letter-spacing: 3px;
    }
}
.sect_ttl::before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 1.5625vw;
    height: 5.625vw;

    content: '';

    border-radius: .78125vw;
    background-color: #094;
}
@media (min-width: 768px)
{
    .sect_ttl::before
    {
        width: 6px;
        height: 24px;

        border-radius: 3px;
    }
}

@media (max-width: 767.98px)
{
    .feature__table
    {
        display: block;
        overflow-x: auto;

        white-space: nowrap;
    }
}
.feature__table th,
.feature__table td
{
    font-size: 4.0625vw;

    padding: 0 4px;

    border: 1px solid;
    background-color: #fff;
}
@media (min-width: 768px)
{
    .feature__table th,
    .feature__table td
    {
        font-size: 15px;

        width: 43%;
    }
}
.feature__table td:nth-of-type(1)
{
    width: 25vw;

    text-align: center;

    background-color: #fcc;
}
@media (min-width: 768px)
{
    .feature__table td:nth-of-type(1)
    {
        width: 14%;
    }
}

.producer__table
{
    width: auto;
}
@media (max-width: 767.98px)
{
    .producer__table
    {
        display: block;
        overflow-x: auto;

        white-space: nowrap;
    }
}
.producer__table th,
.producer__table td
{
    font-size: 4.0625vw;

    width: auto;
    padding: 0 8px;

    text-align: center;

    border: 1px solid;
    background-color: #fff;
}
@media (min-width: 768px)
{
    .producer__table th,
    .producer__table td
    {
        font-size: 15px;
    }
}
.producer__table th
{
    text-align: center;

    background-color: #cfc;
}
.producer__table td:nth-of-type(1)
{
    text-align: center;
}

.producer_img
{
    margin-bottom: 6.25vw;
}
@media (min-width: 768px)
{
    .producer_img
    {
        margin-bottom: 30px;
    }
}

.producer_note
{
    font-size: 3.75vw;

    margin-top: 2.5vw;
}
@media (min-width: 768px)
{
    .producer_note
    {
        font-size: 12px;

        margin-top: 8px;
    }
}

/* productDetail__recommend ---------------- */
.productDetail__recommend
{
    overflow: hidden;

    padding: 100px 110px;

    background-color: #fcfced;
}
@media (max-width: 767.98px)
{
    .productDetail__recommend
    {
        padding: 15.625vw 3.125vw 20.3125vw;
    }
}

.productDetail__recommendTitle
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1;

    margin-bottom: 36px;

    text-align: center;
    letter-spacing: 4.8px;

    color: #4b4b4b;
}
@media (max-width: 767.98px)
{
    .productDetail__recommendTitle
    {
        font-size: 4.6875vw;

        margin-bottom: 3.125vw;
        padding: 0 6.25vw;

        letter-spacing: .46875vw;
    }
}
.productDetail__recommendTitle > span
{
    font-family: 'Prompt m';
    font-size: 2.8125vw;
    line-height: 1;

    display: block;

    margin: 0 auto 2.5vw;

    text-align: center;
    letter-spacing: .5625vw;
}
@media (min-width: 768px)
{
    .productDetail__recommendTitle > span
    {
        font-size: 12px;

        margin-bottom: 8px;

        letter-spacing: 2.4px;
    }
}

.productDetail__sortTab
{
    margin-top: 80px;
}
@media (max-width: 767.98px)
{
    .productDetail__sortTab
    {
        width: 62.5vw;
        margin: 12.5vw auto 0;
        padding: 0;
    }
}
.productDetail__sortTab ul
{
    position: relative;
    z-index: 1;

    display: flex;
    overflow: hidden;

    width: 100%;

    border-radius: 28px;
    box-shadow: 0 0 0 1px #094 inset;

    justify-content: center;
    align-items: center;
}
@media (max-width: 767.98px)
{
    .productDetail__sortTab ul
    {
        display: none;
        flex-direction: column;

        margin-top: 3.125vw;

        border-width: 2px;
        border-radius: 7.8125vw;
    }
}
.productDetail__sortTab ul li
{
    flex: 1 1 250px;
}
@media (max-width: 767.98px)
{
    .productDetail__sortTab ul li
    {
        width: 100%;

        flex: 1 1 12.5vw;
    }
}
.productDetail__sortTab ul li + li
{
    border-left: 1px solid #094;
}
@media (max-width: 767.98px)
{
    .productDetail__sortTab ul li + li
    {
        border-top: 1px solid #094;
        border-left: none;
    }
}
.productDetail__sortTab ul li button
{
    line-height: 1;

    width: 100%;
    padding: 20px 0;

    transition: color .15s cubic-bezier(.25, .25, .75, .75), background-color .15s cubic-bezier(.25, .25, .75, .75);

    color: #094;
}
.no-touchevents .productDetail__sortTab ul li button:hover,
.touchevents .productDetail__sortTab ul li button.is-touched
{
    color: #fff;
    background-color: #094;
}
@media (max-width: 767.98px)
{
    .productDetail__sortTab ul li button
    {
        font-size: 4.0625vw;

        padding: 4.6875vw 0;

        letter-spacing: .40625vw;
    }
}
.productDetail__sortTab ul li button[aria-expanded=true]
{
    color: #fff;
    background-color: #094;
}

.productDetail__dropdown
{
    position: relative;

    width: 62.5vw;
    height: 12.5vw;
    margin: auto;

    cursor: pointer;
}
.productDetail__dropdown > span
{
    font-size: 4.0625vw;
    line-height: 11.875vw;

    display: block;

    width: 100%;
    height: 100%;

    text-align: center;
    letter-spacing: .40625vw;

    color: #094;
    border: solid 2px #008135;
    border-radius: 6.25vw;
}
.productDetail__dropdown:focus
{
    outline: none;
}
@media (min-width: 768px)
{
    .productDetail__dropdown
    {
        display: none;
    }
}
.productDetail__dropdown::after
{
    position: absolute;
    top: 5vw;
    right: 4.6875vw;

    content: '';
    transition: transform .2s cubic-bezier(.215, .61, .355, 1);
    pointer-events: none;

    border-width: 2.65625vw 2.1875vw 0 2.1875vw;
    border-style: solid;
    border-color: #094 transparent transparent;
}
.productDetail__dropdown.active::after
{
    transform: rotate(-180deg);
}

/* slider product__item ---------------- */
.productDetail__tabs
{
    position: relative;
}

.productDetail__tab
{
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1);

    opacity: 0;
}
.productDetail__tab[aria-hidden=true]
{
    display: none;
}
.productDetail__tab[aria-hidden=true] .swiper-container
{
    display: none;
}
.productDetail__tab.is-current-panel
{
    opacity: 1;
}

.product__item
{
    position: relative;
}
@media (max-width: 767.98px)
{
    .product__item
    {
        width: 100%;
    }
}
.product__item a
{
    display: block;

    padding: 30px;

    transition: background-color .15s cubic-bezier(.25, .25, .75, .75);
    text-decoration: none;

    color: #333;
    border-radius: 22px;
}
@media (max-width: 1139.98px)
{
    .product__item a
    {
        padding: 2.6315789474vw 2.6315789474vw;

        border-radius: 1.9298245614vw;
    }
}
@media (max-width: 767.98px)
{
    .product__item a
    {
        padding: 4.6875vw 9.375vw 6.25vw;

        border-radius: 3.4375vw;
    }
}
.no-touchevents .product__item a:hover,
.touchevents .product__item a.is-touched
{
    background-color: #e9f0d5;
}
.no-touchevents .product__item a:hover .c-button,
.touchevents .product__item a.is-touched .c-button
{
    color: #fff;
    background-color: #09b025;
}
.no-touchevents .product__item a:hover .c-button .icon-arw1_next::before,
.touchevents .product__item a.is-touched .c-button .icon-arw1_next::before
{
    animation: arrow_move_to_right .35s .05s cubic-bezier(.25, .46, .45, .94) forwards;
}

.product__thumb
{
    overflow: hidden;

    width: 220px;
    height: 220px;
    margin: 0 3.3% -12px;

    border-radius: 50%;
}
.product__thumb img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;

       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
@media (max-width: 767.98px)
{
    .product__thumb
    {
        width: 50vw;
        height: 50vw;
        margin: 0 auto -3.125vw;

        text-align: center;
    }
    .product__thumb img
    {
        border-radius: 50%;
    }
}

.product__category
{
    font-weight: bold;
    line-height: 1;

    position: relative;
    z-index: 1;

    display: inline-block;

    margin-bottom: 15px;
    padding: 3px 10px;

    text-align: center;
    letter-spacing: .12em;

    color: #fff;
    border-radius: 6px;
    background-color: #a6b8ad;
}
@media (max-width: 767.98px)
{
    .product__category
    {
        font-size: 4.0625vw;

        margin-bottom: 3.125vw;
        padding: 1.09375vw 4.0625vw;

        border-radius: 1.875vw;
    }
}

.product__name
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1.5454545455;

    margin-bottom: 10px;

    letter-spacing: .1em;

    color: #094;
}
@media (max-width: 767.98px)
{
    .product__name
    {
        font-size: 5.3125vw;

        margin-bottom: 2.34375vw;
    }
}

.product__description
{
    display: -webkit-box;
    overflow: hidden;

    height: 5em;
    margin-bottom: 37px;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
@media (max-width: 767.98px)
{
    .product__description
    {
        font-size: 4.0625vw;
        line-height: 1.38;

        height: 16.40625vw;
        margin-bottom: 5.46875vw;

        letter-spacing: .05em;
    }
}

.product__data
{
    margin-bottom: 30px;

    border-top: 1px solid #ccc;
}
@media (max-width: 767.98px)
{
    .product__data
    {
        margin-bottom: 7.8125vw;
    }
}
.product__data dl
{
    display: flex;

    padding: 12px 0;

    border-bottom: 1px solid #ccc;
}
@media (max-width: 767.98px)
{
    .product__data dl
    {
        padding: 2.65625vw 0;
    }
}
.product__data dt,
.product__data dd
{
    letter-spacing: .05em;
}
@media (max-width: 767.98px)
{
    .product__data dt,
    .product__data dd
    {
        font-size: 4.0625vw;

        letter-spacing: 1.38;
    }
}
.product__data dt
{
    font-weight: bold;

    width: 40%;
}
@media (max-width: 767.98px)
{
    .product__data dt
    {
        width: 30%;
    }
}
.product__data dd
{
    width: 60%;
}
@media (max-width: 767.98px)
{
    .product__data dd
    {
        width: 70%;
    }
}

.product__button
{
    line-height: 50px;

    position: relative;

    max-width: 100%;
    height: 50px;

    text-align: center;

    color: #fff;
    border-radius: 25px;
    background-color: #094;
}
@media (max-width: 767.98px)
{
    .product__button
    {
        width: 65.625vw;
        margin: 0 auto;
    }
}
.product__button::after
{
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;

    display: block;

    width: 8px;
    height: 8px;
    margin: auto;

    content: '';
    transform: rotate(45deg);

    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

/* slider options ---------------- */
.products__controller
{
    display: flex;

    max-width: 920px;
    margin: 20px auto 80px;

    justify-content: center;
    align-items: flex-end;
}
@media (max-width: 1139.98px)
{
    .products__controller
    {
        max-width: 80.701754386vw;
        margin: 1.7543859649vw auto 7.0175438596vw;
    }
}
@media (max-width: 767.98px)
{
    .products__controller
    {
        margin: 6.25vw auto 0;
    }
}

.products__counter
{
    font-family: 'Ubuntu', sans-serif;
    font-size: 22px;
    font-weight: 500;
    font-style: italic;
    line-height: 1;

    color: #888;
}
@media (max-width: 767.98px)
{
    .products__counter
    {
        font-size: 5.46875vw;
    }
}
.products__counter strong
{
    position: relative;

    margin-right: 13px;

    color: #333;
}
@media (max-width: 767.98px)
{
    .products__counter strong
    {
        margin-right: 4.0625vw;
    }
}
.products__counter strong::after
{
    position: absolute;
    top: 3px;
    right: -9px;

    display: block;

    width: 1px;
    height: 20px;

    content: '';
    transform: rotate(30deg);

    background-color: #888;
}
@media (max-width: 767.98px)
{
    .products__counter strong::after
    {
        top: .46875vw;
        right: -4.375vw;

        height: 5vw;
        margin-right: 2.03125vw;
    }
}
.products__counter span
{
    font-size: 16px;
}
@media (max-width: 767.98px)
{
    .products__counter span
    {
        font-size: 4.0625vw;
    }
}

.products__button
{
    position: absolute;
    z-index: 10;
    top: 250px;

    display: flex;

    width: 58px;
    height: 58px;
    margin: auto;

    transition: background-color .3s cubic-bezier(.39, .575, .565, 1);

    border: 1px solid #094;
    border-radius: 100%;
    outline: none;
    background-color: #094;

    justify-content: center;
    align-items: center;
}
@media (max-width: 1139.98px)
{
    .products__button
    {
        top: 21.9298245614vw;

        width: 6.5789473684vw;
        height: 6.5789473684vw;
    }
}
@media (max-width: 767.98px)
{
    .products__button
    {
        top: 26.5625vw;

        width: 10.9375vw;
        height: 10.9375vw;
    }
}
.no-touchevents .products__button:hover,
.touchevents .products__button.is-touched
{
    background-color: #09b025;
}
.products__button.-prev
{
    left: -84px;
}
@media (max-width: 1139.98px)
{
    .products__button.-prev
    {
        left: -7.3684210526vw;
    }
}
@media (max-width: 767.98px)
{
    .products__button.-prev
    {
        left: 0;
    }
}
.products__button.-next
{
    right: -84px;
}
@media (max-width: 1139.98px)
{
    .products__button.-next
    {
        right: -7.3684210526vw;
    }
}
@media (max-width: 767.98px)
{
    .products__button.-next
    {
        right: 0;
    }
}
.products__button i
{
    font-size: 30px;

    transition: color .3s cubic-bezier(.39, .575, .565, 1);

    color: #fff;
}
@media (max-width: 1139.98px)
{
    .products__button i
    {
        font-size: 2.6315789474vw;
    }
}
@media (max-width: 767.98px)
{
    .products__button i
    {
        font-size: 4.6875vw;
    }
}

/* campaign__banner ---------------- */
.campaign__banner
{
    margin-top: -30px;
    padding: 0 110px 100px;

    background-color: #fff;
}
@media (max-width: 1139.98px)
{
    .campaign__banner
    {
        margin-top: -2.6315789474vw;
        padding: 0 9.649122807vw 100px;
    }
}
@media (max-width: 767.98px)
{
    .campaign__banner
    {
        margin-top: -4.6875vw;
        padding: 0 4.6875vw 20.3125vw;
    }
}

.campaign__title
{
    margin-bottom: 70px;
}
@media (max-width: 767.98px)
{
    .campaign__title
    {
        margin-bottom: 17.1875vw;
    }
}

.campaign__bannerLink
{
    position: relative;

    display: block;

    transition: opacity .2s cubic-bezier(.39, .575, .565, 1);
}
.no-touchevents .campaign__bannerLink:hover,
.touchevents .campaign__bannerLink.is-touched
{
    opacity: .7;
}
.campaign__bannerLink .campaign__bannerTheme
{
    position: absolute;
    top: 12px;
    left: 103px;

    width: 148px;
}
@media (max-width: 1139.98px)
{
    .campaign__bannerLink .campaign__bannerTheme
    {
        top: 1.0526315789vw;
        left: 6.8421052632vw;

        width: 12.9824561404vw;
    }
}
@media (max-width: 767.98px)
{
    .campaign__bannerLink .campaign__bannerTheme
    {
        top: -10.625vw;
        left: 0;

        width: 26.875vw;
    }
}

@media (max-width: 767.98px)
{
    .m-btn__productDetail
    {
        width: 62.5vw;
        margin: 0 auto 5vw;
    }
}
@media (min-width: 768px)
{
    .m-btn__productDetail
    {
        margin-bottom: 52px;
    }
}

.product-history
{
    margin-bottom: 18.75vw;
}
@media (min-width: 768px)
{
    .product-history
    {
        margin-bottom: 110px;
    }
}

.product-history__ttl
{
    font-size: 4.6875vw;
    line-height: 1.4;

    margin-bottom: 6.5625vw;

    text-align: left;
    letter-spacing: .5625vw;

    color: #4b4b4b;
}
@media (min-width: 768px)
{
    .product-history__ttl
    {
        font-size: 18px;

        margin-bottom: 16px;

        text-align: center;
        letter-spacing: 3px;
    }
}

.product-history__txt
{
    margin-bottom: 5.3125vw;
}
@media (min-width: 768px)
{
    .product-history__txt
    {
        margin-bottom: 24px;

        text-align: center;
    }
}

.flex-column__ttl
{
    display: flex;
    flex-direction: column;
}

.text-bg-white
{
    padding: 6.25vw 9.375vw;

    border-radius: 20px;
    background-color: #fff;
}
@media (min-width: 768px)
{
    .text-bg-white
    {
        padding: 30px;
    }
}

.p-section__scroll
{
    width: 946px;
}

.p-section__title--bg-whtie_second
{
    padding: 18px 40px;

    border-top: solid 3px #f29b00;
    border-radius: 3px;
    background-color: #fff;
}
@media (max-width: 767.98px)
{
    .p-section__title--bg-whtie_second
    {
        font-size: 5vw;

        padding: 4.6875vw 1.5625vw 4.6875vw 11.25vw;

        letter-spacing: .15em;
    }
}
.p-section__title--bg-whtie_second::before
{
    top: 0;
    bottom: 0;
    left: 15px;

    width: 16px;
    height: 16px;
    margin: auto;

    border-radius: 50%;
    background-color: #f29b00;
}
@media (max-width: 767.98px)
{
    .p-section__title--bg-whtie_second::before
    {
        left: 4.0625vw;

        width: 3.75vw;
        height: 3.75vw;
    }
}
