@charset 'UTF-8';
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Oswald:wght@200..700&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
:root
{
    --color-primary: #e7402b;
}

body
{
    font-family: 'Noto Sans JP', serif;
}
body a
{
    transition: opacity .2s ease;
}
body a:hover
{
    opacity: .5;
}

@media screen and (max-width: 767px)
{
    .l-container-wrap__head .l-container
    {
        padding-right: 5.6074766355vw;
        padding-left: 5.6074766355vw;
    }
}

.head_add_wrap
{
    position: fixed;
    z-index: 1000;
    top: 0;
    right: 0;
    left: 0;

    background: #fff;
}
.head_add_wrap .head_news_area
{
    display: flex;

    height: auto;
    min-height: 40px;

    border-bottom: 1px solid #ddd;

    align-items: center;
    justify-content: center;
}
.head_add_wrap .head_news_area .head_news_area_inner
{
    position: relative;

    display: inline-block;

    padding: 8px 24px;
}
.head_add_wrap .head_news_area .head_news_area_inner::after
{
    position: absolute;
    z-index: 1;
    top: 16px;
    right: 4px;

    width: 13px;
    height: 8px;

    content: '';

    background-image: url('../../assets/img/add_img/cmn/head_news_arrow.svg');
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .head_news_area .head_news_area_inner::after
    {
        top: 40%;
        right: .9345794393vw;

        width: 3.0373831776vw;
        height: 1.8691588785vw;
    }
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .head_news_area .head_news_area_inner
    {
        padding: 1.8691588785vw 5.6074766355vw;
    }
}

.s-header
{
    height: auto;
}

.s-header.is_headAddReady
{
    height: var(--head-add-h, 0px);
}

.sp_only_disp
{
    display: none;
}
@media screen and (max-width: 767px)
{
    .sp_only_disp
    {
        display: block;
    }
}

.pc_only_disp
{
    display: block;
}
@media screen and (max-width: 767px)
{
    .pc_only_disp
    {
        display: none;
    }
}

:root
{
    --color_fe_text: #31261d;
}

/*パンくず*/
.m-breadcrumb
{
    margin-top: 24px;
    margin-bottom: 24px;
}
@media screen and (max-width: 767px)
{
    .m-breadcrumb
    {
        margin-top: 3.738317757vw;
        margin-bottom: 3.738317757vw;
    }
}
.m-breadcrumb .c-breadcrumb-list
{
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: normal;

    color: #333;
}

/* =========================
   Header fixed wrapper
========================= */
.head_add_wrap
{
    position: fixed;
    z-index: 1000;
    top: 0;
    right: 0;
    left: 0;

    background: #fff;
}
.head_add_wrap .s-header-navBlok__nav
{
    top: var(--head-add-h, 6rem);
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .s-header-navBlok__nav
    {
        height: calc(100vh - var(--head-add-h, 6rem));
        padding: 0 5.6074766355vw;
    }
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .s-header-contentsNav__head
    {
        display: none;
    }
}
.head_add_wrap .s-header-contentsNav
{
    border-top: 1px solid #333;
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .s-header-userNav
    {
        display: none;
    }
}
.head_add_wrap .s-header-wrap__nav
{
    left: 5.6074766355vw;
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .s-header-wrap__utility
    {
        right: 2.8037383178vw;

        width: 28.0373831776vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px)
{
    .head_add_wrap .s-header-wrap__utility
    {
        right: 2.8037383178vw;

        width: 28.0373831776vw;
    }
}
.head_add_wrap .s-header__cartCnt
{
    font-family: Inter;
    font-size: 10px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    top: 7px;
    right: 2px;

    width: 16px;
    height: 16px;

    color: #fff;
    background: #bb1b13;
}
.head_add_wrap .s-header-utilityList
{
    gap: 0 16px;
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .s-header-utilityList
    {
        gap: 0;
    }
}
.head_add_wrap .s-header-wrap
{
    padding-top: 24px;
    padding-bottom: 24px;

    border-bottom: unset;
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .1);
}
@media screen and (max-width: 767px)
{
    .head_add_wrap .s-header-wrap
    {
        padding: 5.6074766355vw;

        border-bottom: unset;
    }
}
@media screen and (min-width: 992px)
{
    .head_add_wrap .s-header .s-header-wrap
    {
        border-bottom: unset;
    }
}
.head_add_wrap .u-hidden-lg-down
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    color: #333;
}
.head_add_wrap .s-header-categoryNav__head::after
{
    margin-left: 4px;
}

/* 既存のfixedを外して、中身レイアウトに専念 */
.s-header .s-header-wrap
{
    position: relative;
    top: auto;
    right: auto;
    left: auto;

    width: 100%;
}

@media screen and (min-width: 992px)
{
    .s-header .s-header-wrap
    {
        box-sizing: border-box;
        margin-right: auto;
        margin-left: auto;
        padding-right: 24px;
        padding-left: 24px;
    }
}
@media screen and (min-width: 992px)
{
    .s-header-wrap__logo
    {
        width: 176px;

        flex-shrink: 0;
    }
}
@media screen and (max-width: 767px)
{
    .s-header-wrap__logo
    {
        width: 35.7476635514vw;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px)
{
    .s-header-wrap__logo
    {
        width: 176px;
    }
}
@media screen and (min-width: 992px)
{
    .s-header-utilityList__icon
    {
        display: flex;
        flex-direction: column;

        text-decoration: none;

        align-items: center;
    }

    .s-header-utilityList__label
    {
        font-family: 'Noto Sans JP';
        font-size: 14px;
        font-weight: 700;
        font-style: normal;
        line-height: normal;

        text-align: center;
        white-space: nowrap;

        color: #555;
    }
}
@media screen and (max-width: 991px)
{
    .s-header-utilityList__label
    {
        display: none !important;
    }
}
.s-header-utilityList__icon img
{
    width: 40px;
}

.s-header-utilityList__item
{
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.slick_mv
{
    position: relative;

    padding-bottom: 0;
}
.slick_mv .slick-slide
{
    height: auto;
}

.slick_mv .slick-list
{
    margin-bottom: 8px;
}

.slick_mv .slide-dots
{
    display: flex;

    margin: 0;
    padding: 0;

    list-style: none;

    justify-content: center;
    align-items: center;
    gap: 8px;
}

.slick_mv .slide-dots li
{
    line-height: 0;

    margin: 0;
    padding: 0;
}

.slick_mv .slide-dots li button
{
    font-size: 0;
    line-height: 0;

    width: 8px;
    height: 8px;
    padding: 0;

    cursor: pointer;

    border: 0;
    border-radius: 50%;
    background: #d9d9d9;
}

.slick_mv .slide-dots li.slick-active button
{
    background: #333;
}

.slider_all_wrap_top
{
    width: 1140px;
    margin-top: 24px;
    margin-right: auto;
    margin-left: auto;
}
@media screen and (max-width: 767px)
{
    .slider_all_wrap_top
    {
        width: 100%;
        margin-top: unset;
    }
}

.slick_mv img
{
    width: 600px;
    min-width: 600px;
    height: 500px;
    min-height: 500px;
}
@media screen and (max-width: 767px)
{
    .slick_mv img
    {
        display: block;

        width: 100vw;
        min-width: 100vw;
        height: 83.33411215vw;
        min-height: 0;
    }
}

.slick_mv .slick-slide
{
    display: flex;

    width: 610px !important;
    height: auto;

    justify-content: center;
}
@media screen and (max-width: 767px)
{
    .slick_mv .slick-slide
    {
        display: block;

        width: 100vw !important;
    }
}

.slick_mv .slick-list
{
    overflow: visible;

    height: 500px !important;
}
@media screen and (max-width: 767px)
{
    .slick_mv .slick-list
    {
        overflow: hidden;

        height: 83.33411215vw !important;
    }
}

.p-page-home
{
    overflow: hidden;
}

.p_homeProducts
{
    padding: 88px 0 112px;

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts
    {
        padding: 11.214953271vw 5.6074766355vw 0;
    }
}

.p_homeProducts .p_h_container
{
    width: 1140px;
    margin: 0 auto;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts .p_h_container
    {
        width: 100%;
    }
}

.p_homeProducts_head
{
    margin-bottom: 24px;

    text-align: center;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_head
    {
        margin-bottom: 5.6074766355vw;
    }
}

.p_homeProducts_title
{
    font-family: 'Noto Sans JP';
    font-size: 32px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    position: relative;

    display: inline-block;

    margin: 0;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_title
    {
        font-family: 'Noto Sans JP';
        font-size: 5.6074766355vw;
        font-weight: 700;
        font-style: normal;
        line-height: normal;
    }
}
.p_homeProducts_title::after
{
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: -16px;

    width: 100%;
    height: 1px;

    content: '';

    background-color: #bb1b13;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_title::after
    {
        bottom: -1.8691588785vw;
    }
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_title
    {
        font-size: 5.1vw;
    }
}

.p_homeProducts_subtitle
{
    font-family: Inter;
    font-size: 32px;
    font-weight: 100;
    font-style: normal;
    line-height: normal;

    margin-top: 32px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_subtitle
    {
        font-size: 5.6074766355vw;

        margin-top: 3.738317757vw;
    }
}

.p_homeProducts_lead
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;

    margin: 20px 0 0;

    text-align: center;
    /* 32px */
    letter-spacing: 1.6px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_lead
    {
        font-size: 3.738317757vw;
        font-weight: 400;
        font-style: normal;
        line-height: 180%;

        margin-top: 5.6074766355vw;

        text-align: left;
        /* 28.8px */
        letter-spacing: .3738317757vw;
    }
}

.p_homeProducts_list
{
    display: grid;

    margin: 0;
    padding: 0;

    list-style: none;

    font-feature-settings: 'palt';
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px 32px;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_list
    {
        grid-template-columns: 1fr;
        gap: 4.2056074766vw;
    }
}

.p_homeProducts_item
{
    overflow: hidden;

    min-width: 0;

    border: 1px solid #ccc;
    border-radius: 8px;
    background: #fff;
}

.p_homeProducts_link
{
    display: block;

    height: 100%;

    text-decoration: none;

    color: inherit;
}

.p_homeProducts_image
{
    display: block;

    width: 100%;
}

.p_homeProducts_body
{
    min-height: 150px;
    padding: 24px 16px 24px;

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_body
    {
        min-height: auto;
        padding: 1.8691588785vw;
    }
}

.p_homeProducts_name
{
    font-family: 'Noto Sans JP';
    font-size: 18px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;

    margin: 0 0 16px;

    color: #bb1b13;
    /* 30.6px */
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_name
    {
        font-size: 4.2056074766vw;

        margin-bottom: 1.8691588785vw;
    }
}

.p_homeProducts_text
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    margin: 0;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_text
    {
        font-size: 3.2710280374vw;
    }
}

.p_homeProducts_btn
{
    display: flex;

    margin-top: 24px;

    justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_btn
    {
        margin-top: 5.6074766355vw;
    }
}

.p_homeProducts_btn_link
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    display: inline-flex;

    min-width: 180px;
    padding: 10px 20px;

    transition: opacity .2s ease;
    text-decoration: none;

    color: #333;
    color: #333;
    border: 1px solid #d8d8d8;
    border-radius: 6px;
    background: #fff;

    align-items: center;
    justify-content: center;
    /* 27.2px */
}
@media screen and (max-width: 767px)
{
    .p_homeProducts_btn_link
    {
        font-size: 3.738317757vw;

        width: 100%;
        min-width: 0;
        padding: 3.5046728972vw 3.5046728972vw;
    }
}

.p_homeProducts_btn_link:hover
{
    opacity: .75;
}

.p_homeFlow
{
    padding: 80px 0;

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow
    {
        padding: 11.214953271vw 5.6074766355vw 0;
    }
}

.p_homeFlow_inner
{
    box-sizing: border-box;
    width: 1140px;
    margin: 0 auto;
    padding: 64px 130px 32px;

    border-radius: 40px;
    background: #f9f9f9;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_inner
    {
        width: 100%;
        padding: 7.476635514vw 5.6074766355vw;

        border-radius: 6.4vw;
    }
}

.p_homeFlow_head
{
    text-align: center;
}
.p_homeFlow_title
{
    font-family: 'Noto Sans JP';
    font-size: 32px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    position: relative;

    display: inline-block;

    margin: 0;

    color: #333;
}
.p_homeFlow_title::after
{
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: -16px;

    width: 100%;
    height: 1px;

    content: '';

    background-color: #bb1b13;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_title::after
    {
        bottom: -1.8691588785vw;
    }
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_title
    {
        font-size: 5.6074766355vw;
    }
}

.p_homeFlow_subtitle
{
    font-family: Inter;
    font-size: 32px;
    font-weight: 100;
    font-style: normal;
    line-height: normal;

    margin-top: 32px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_subtitle
    {
        font-size: 5.6074766355vw;

        margin-top: 3.738317757vw;
    }
}

.p_homeFlow_lead
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;

    margin: 24px 0 0;

    text-align: center;
    /* 32px */
    letter-spacing: 1.6px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_lead
    {
        font-size: 3.738317757vw;
        font-weight: 400;
        font-style: normal;
        line-height: 180%;

        margin-top: 5.6074766355vw;

        text-align: left;
        /* 28.8px */
        letter-spacing: .3738317757vw;
    }
}

.p_homeFlow_list
{
    margin: 0;
    padding: 0;

    list-style: none;
}

.p_homeFlow_item
{
    display: grid;

    padding: 32px 0;

    border-top: 1px dotted #c8c8c8;

    grid-template-columns: 112px 1fr 320px;
    gap: 32px;
    align-items: center;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_item
    {
        display: block;

        padding: 5.6074766355vw 0;
    }
}

.p_homeFlow_item:first-child
{
    border-top: 0;
}

.p_homeFlow_step
{
    display: flex;

    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_step
    {
        margin-bottom: 3.738317757vw;
    }
}

.p_homeFlow_step_icon
{
    display: block;

    width: 112px;
    height: auto;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_step_icon
    {
        width: 16vw;
    }
}

.p_homeFlow_text
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_text
    {
        font-size: 3.2710280374vw;

        margin-bottom: 3.738317757vw;

        text-align: left;
    }
}

.p_homeFlow_image_wrap
{
    width: 100%;
}

.p_homeFlow_image
{
    display: block;

    width: 100%;

    border-radius: 8px;
}
@media screen and (max-width: 767px)
{
    .p_homeFlow_image
    {
        border-radius: 1.6vw;
    }
}

.p_homeQa
{
    padding: 80px 0;

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .p_homeQa
    {
        padding: 11.214953271vw 5.6074766355vw 0;
    }
}

.p_homeQa_inner
{
    width: 1140px;
    margin: 0 auto;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_inner
    {
        width: 100%;
    }
}

.p_homeQa_body
{
    display: flex;

    justify-content: flex-start;
    align-items: flex-start;
    gap: 100px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_body
    {
        display: block;
    }
}

.p_homeQa_left
{
    display: flex;

    width: 250px;

    flex-shrink: 0;
    justify-content: flex-start;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_left
    {
        display: block;

        width: 100%;
    }
}

.p_homeQa_head,
.p_homeNews_head
{
    text-align: center;
}

.p_homeQa_title,
.p_homeNews_title
{
    font-family: 'Noto Sans JP';
    font-size: 32px;
    font-weight: 700;
    line-height: normal;

    position: relative;

    display: inline-block;

    margin: 0;
    padding-bottom: 16px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_title,
    .p_homeNews_title
    {
        font-size: 5.6074766355vw;

        padding-bottom: 1.8691588785vw;
    }
}

.p_homeNews_title::after,
.p_homeQa_title::after
{
    position: absolute;
    bottom: 0;
    left: 50%;

    width: 100%;
    height: 1px;

    content: '';
    transform: translateX(-50%);

    background-color: #d61f1f;
}

.p_homeQa_subtitle,
.p_homeNews_subtitle
{
    font-family: Inter;
    font-size: 32px;
    font-weight: 100;
    font-style: normal;
    line-height: normal;

    margin-top: 16px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_subtitle,
    .p_homeNews_subtitle
    {
        font-size: 5.6074766355vw;

        margin-top: 1.8691588785vw;
    }
}

.p_homeQa_left_title
{
    font-family: 'Noto Sans JP';
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;

    margin-top: 56px;

    text-align: left;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_left_title
    {
        font-size: 4.3vw;

        margin-top: 5.3vw;
    }
}

.p_homeQa_right
{
    min-width: 0;

    flex: 1;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_right
    {
        width: 100%;
    }
}

.p_homeQa_group_title
{
    font-family: 'Noto Sans JP';
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    margin: 48px 0 24px;

    color: #333;
}
.p_homeQa_group_title:first-child
{
    margin: 0 0 24px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_group_title:first-child
    {
        margin-top: 5.6074766355vw;
        margin-bottom: 3.738317757vw;
    }
}
@media screen and (max-width: 767px)
{
    .p_homeQa_group_title
    {
        font-size: 4.6728971963vw;

        margin-top: 5.6074766355vw;
        margin-bottom: 3.738317757vw;
    }
}

.p_homeQa_item
{
    overflow: hidden;

    border: 1px solid #d9d9d9;
    border-radius: 8px;
    background: #fff;
}

.p_homeQa_item + .p_homeQa_item
{
    margin-top: 20px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_item + .p_homeQa_item
    {
        margin-top: 4.3vw;
    }
}

.p_homeQa_question
{
    display: flex;

    padding: 18px 24px;

    cursor: pointer;

    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_question
    {
        padding: 4vw;

        gap: 2.7vw;
    }
}

.p_homeQa_question_icon
{
    padding-top: 2px;

    flex-shrink: 0;
}

.p_homeQa_question_main
{
    min-width: 0;

    flex: 1;
}

.p_homeQa_question_head
{
    display: flex;

    margin-bottom: 4px;

    align-items: center;
    gap: 8px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_question_head
    {
        margin-bottom: 1.8691588785vw;

        gap: 2vw;
    }
}

.p_homeQa_q_icon
{
    font-family: Roboto;
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    display: inline-flex;

    width: 32px;
    height: 32px;

    color: #fff;
    border-radius: 50%;
    background: #333;

    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_q_icon
    {
        font-size: 5.6074766355vw;

        width: 7.476635514vw;
        height: 7.476635514vw;
    }
}

.p_homeQa_tag
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: normal;
    font-style: normal;
    line-height: normal;

    display: inline-flex;

    height: 18px;
    padding: 2px 6px 2px 7px;

    color: #fff;
    border-radius: 4px;
    background: #333;

    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_tag
    {
        font-size: 3.2710280374vw;

        min-width: unset;
        height: unset;
        padding: 0 1.4018691589vw;
    }
}

.p_homeQa_q_text
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: normal;

    min-width: 0;
    margin-top: 6px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_q_text
    {
        font-size: 3.5046728972vw;
        line-height: 170%;
        /* 25.5px */

        margin-top: .9345794393vw;
    }
}

.p_homeQa_openclose
{
    position: relative;

    width: 24px;
    height: 24px;

    flex-shrink: 0;
    align-self: center;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_openclose
    {
        width: 5vw;
        height: 5vw;
    }
}

.p_homeQa_openclose::before,
.p_homeQa_openclose::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    content: '';
    transform: translate(-50%, -50%);

    background: #333;
}

.p_homeQa_openclose::before
{
    width: 18px;
    height: 2px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_openclose::before
    {
        width: 3.9719626168vw;
        height: .4672897196vw;
    }
}

.p_homeQa_openclose::after
{
    width: 2px;
    height: 18px;

    transition: opacity .2s ease;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_openclose::after
    {
        width: .4672897196vw;
        height: 3.9719626168vw;
    }
}

.p_homeQa_openclose.active::after
{
    opacity: 0;
}

.p_homeQa_answer
{
    position: relative;

    display: flex;

    padding: 24px;

    gap: 14px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_answer
    {
        padding: 3.2vw 4vw 4vw;

        gap: 2.7vw;
    }
}

.p_homeQa_answer::before
{
    position: absolute;
    top: 0;
    right: 24px;
    left: 24px;

    height: 1px;

    content: '';
    pointer-events: none;

    border-top: 1px dotted #cfcfcf;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_answer::before
    {
        right: 4vw;
        left: 4vw;
    }
}

.p_homeQa_answer_left
{
    flex-shrink: 0;
}

.p_homeQa_a_icon
{
    font-family: Roboto;
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;
    line-height: 1;

    display: inline-flex;

    width: 32px;
    height: 32px;

    color: #333;
    border: 1px solid #333;
    border-radius: 50%;

    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_a_icon
    {
        font-size: 5.6074766355vw;

        width: 7.476635514vw;
        height: 7.476635514vw;
    }
}

.p_homeQa_answer_right
{
    width: 100%;
    min-width: 0;
}

.p_homeQa_answer_text
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    margin: 0;
    /* 27.2px */
    margin-top: 2px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_answer_text
    {
        font-size: 3.5046728972vw;

        margin-top: .4672897196vw;
    }
}

.p_homeQa_answer_images
{
    display: flex;

    margin-top: 24px;

    gap: 16px;
    flex-wrap: wrap;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_answer_images
    {
        margin-top: 4vw;

        gap: 3.2vw;
    }
}

.p_homeQa_answer_image
{
    display: block;

    width: 196px;

    border-radius: 8px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_answer_image
    {
        width: calc(50% - 1.6vw);

        border-radius: 2vw;
    }
}

.p_homeQa_btn_wrap
{
    margin-top: 24px;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_btn_wrap
    {
        margin-top: 5.3vw;
    }
}

.p_homeQa_btn
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    display: flex;

    width: 358px;
    height: 59px;

    transition: opacity .2s ease;
    /* 27.2px */
    text-decoration: none;

    color: #333;
    border: 1px solid #d9d9d9;
    border-radius: 8px;

    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p_homeQa_btn
    {
        font-size: 3.738317757vw;

        width: 100%;
        height: 13.785046729vw;
    }
}

.p_homeQa_btn:hover
{
    opacity: .6;
}

.p_homeMesse
{
    padding: 64px 0;
}
@media screen and (max-width: 767px)
{
    .p_homeMesse
    {
        padding: 11.214953271vw 0 0vw;
    }
}
.p_homeMesse .p_homeMesse_inner
{
    width: 1140px;
    margin: 0 auto;
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner
    {
        width: 100%;
        padding: 0 5.6074766355vw;
    }
}
.p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap
{
    display: flex;

    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap
    {
        display: block;
    }
}
.p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_txt_area
{
    width: 550px;
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_txt_area
    {
        width: 100%;
    }
}
.p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_txt_area .lead_area1
{
    font-family: 'Noto Sans JP';
    font-size: 38px;
    font-weight: 700;
    font-style: normal;
    line-height: 200%;

    color: #333;
    /* 76px */
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_txt_area .lead_area1
    {
        font-size: 6.0747663551vw;
        line-height: 140%;

        text-align: center;
        /* 36.4px */
    }
}
.p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_txt_area .lead_area2
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;

    margin-top: 24px;

    color: #333;
    /* 32px */
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_txt_area .lead_area2
    {
        font-size: 3.738317757vw;
        line-height: 180%;
        /* 28.8px */
    }
}
.p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_img_area
{
    width: 620px;
    margin-right: -70px;
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_img_area
    {
        width: 100%;
        margin-top: 5.6074766355vw;
        margin-right: unset;
    }
}
@media screen and (max-width: 767px)
{
    .p_homeMesse .p_homeMesse_inner .p_homeMesse_inner_wrap .p_homeMesse_img_area img
    {
        width: 100%;
    }
}

.p_homenews
{
    padding: 64px 0 0;
}
@media screen and (max-width: 767px)
{
    .p_homenews
    {
        padding: 11.214953271vw 5.6074766355vw 0;
    }
}
.p_homenews .p_homenews_inner
{
    width: 1140px;
    margin: 0 auto;
}
@media screen and (max-width: 767px)
{
    .p_homenews .p_homenews_inner
    {
        width: 100%;
    }
}
.p_homenews .p_homenews_inner .p_homenews_body
{
    display: flex;

    gap: 100px;
}
@media screen and (max-width: 767px)
{
    .p_homenews .p_homenews_inner .p_homenews_body
    {
        display: block;
    }
}
.p_homenews .p_homenews_inner .p_homenews_body .p_homenews_left
{
    display: flex;

    width: 250px;

    flex-shrink: 0;
    justify-content: flex-start;
}
@media screen and (max-width: 767px)
{
    .p_homenews .p_homenews_inner .p_homenews_body .p_homenews_left
    {
        display: block;

        width: 100%;
        margin-bottom: 1.8691588785vw;
    }
}
.p_homenews .p_homenews_inner .p_homenews_body .p_homenews_right
{
    flex: 1;
}
.p_homenews .p_homenews_inner .p_homenews_body .p_homenews_right .p_homenews_main
{
    padding: unset;
}
@media screen and (max-width: 767px)
{
    .p_homenews .p_homenews_inner .p_homenews_body .p_homenews_right .p_homenews_main
    {
        padding: unset;
    }
}

.p_homenews .p-homeNewsList
{
    border-top: unset;
}
.p_homenews .p-homeNewsList-body
{
    padding: 16px 0;

    border-bottom: 1px dotted #ccc;

    align-items: flex-start;
}
@media screen and (max-width: 767px)
{
    .p_homenews .p-homeNewsList-body
    {
        display: flex;

        padding: 3.738317757vw 0;
    }
}
.p_homenews .p-homeNewsList-body__time
{
    font-family: Roboto;
    font-size: 13px;
    font-weight: 500;
    font-style: normal;
    line-height: normal;

    width: 80px;
    margin-top: 8px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_homenews .p-homeNewsList-body__time
    {
        font-size: 3.0373831776vw;

        width: 18.691588785vw;
        margin-top: unset;
        margin-bottom: unset;
    }
}
.p_homenews .p-homeNewsList-body__title
{
    /* テキスト標準 */
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 27.2px */
}
@media screen and (max-width: 767px)
{
    .p_homenews .p-homeNewsList-body__title
    {
        font-size: 3.738317757vw;

        margin-top: -1.6355140187vw;

        flex: 1;
    }
}

.s-footer
{
    display: block;

    padding: 64px 0 24px;

    border-top: unset;
    background: #f8f8f8;
}
@media screen and (max-width: 767px)
{
    .s-footer
    {
        padding: 5.6074766355vw 5.6074766355vw;
    }
}

.s-footer__inner
{
    width: 1140px;
    margin: 0 auto;
}
@media screen and (max-width: 767px)
{
    .s-footer__inner
    {
        width: 100%;
    }
}

.s-footer__top
{
    display: flex;

    min-height: 210px;

    justify-content: space-between;
    align-items: flex-start;
}
@media screen and (max-width: 767px)
{
    .s-footer__top
    {
        display: block;

        min-height: auto;
    }
}

.s-footer__logo
{
    width: 178px;
    margin: 0;

    flex-shrink: 0;
}
@media screen and (max-width: 767px)
{
    .s-footer__logo
    {
        width: 48vw;
    }
}

.s-footer__logo a
{
    display: block;
}

.s-footer__logo img
{
    display: block;

    width: 100%;
    height: auto;
}

.s-footer__links
{
    display: flex;

    padding-top: 10px;

    justify-content: flex-end;
    gap: 0 40px;
    align-items: flex-start;
}
@media screen and (max-width: 767px)
{
    .s-footer__links
    {
        display: none;
    }
}

.s-footer__linkCol
{
    display: grid;

    margin: 0;
    padding: 0;

    list-style: none;
}
@media screen and (max-width: 767px)
{
    .s-footer__linkCol
    {
        gap: 3.2vw;
    }
}

@media screen and (max-width: 767px)
{
    .s-footer__linkCol + .s-footer__linkCol
    {
        margin-top: 3.2vw;
    }
}

.s-footer__linkItem
{
    margin: 0;
    padding: 0;
}

.s-footer__linkItem a
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 700;
    font-style: normal;
    line-height: 40px;

    display: inline-block;
    /* 285.714% */

    text-decoration: none;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .s-footer__linkItem a
    {
        font-size: 3.6vw;
    }
}

.s-footer__linkItem a:hover
{
    opacity: .6;
}

.s-footer__line
{
    margin-top: 24px;

    border-top: 1px solid #ddd;
}
@media screen and (max-width: 767px)
{
    .s-footer__line
    {
        margin-top: 5.6074766355vw;
    }
}

.s-footer__bottom
{
    display: flex;

    padding-top: 18px;

    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width: 767px)
{
    .s-footer__bottom
    {
        display: block;

        padding-top: 5.6074766355vw;
    }
}

.s-footer__youtube
{
    font-family: Roboto;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    display: inline-flex;

    text-decoration: none;
    word-break: keep-all;

    color: #333;

    align-items: center;
    gap: 12px;
}
@media screen and (max-width: 767px)
{
    .s-footer__youtube
    {
        display: none;
    }
}

.s-footer__youtube:hover
{
    opacity: .6;
}

.s-footer__youtubeIcon
{
    position: relative;

    display: inline-block;

    width: 30px;
    height: 20px;

    border-radius: 5px;
    background: #333;

    flex-shrink: 0;
}
@media screen and (max-width: 767px)
{
    .s-footer__youtubeIcon
    {
        width: 6.4vw;
        height: 4.3vw;

        border-radius: 1vw;
    }
}

.s-footer__copy
{
    font-family: Inter;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: normal;

    margin: 0;

    text-align: right;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .s-footer__copy
    {
        font-size: 3.2vw;

        text-align: left;
    }
}

@media screen and (max-width: 767px)
{
    .sp_menu_type_title_seihin
    {
        position: relative;
    }
    .sp_menu_type_title_seihin::before
    {
        position: absolute;
        z-index: 1;
        top: -1.4018691589vw;
        left: -11.214953271vw;

        width: 9.3457943925vw;
        height: 9.3457943925vw;

        content: '';

        background-image: url('../../assets/img/add_img/cmn/sp_m_01.svg');
        background-repeat: no-repeat;
        background-size: contain;
    }

    .sp_menu_type_title_toi
    {
        position: relative;
    }
    .sp_menu_type_title_toi::before
    {
        position: absolute;
        z-index: 1;
        top: -2.3364485981vw;
        left: -11.214953271vw;

        width: 9.3457943925vw;
        height: 9.3457943925vw;

        content: '';

        background-image: url('../../assets/img/add_img/cmn/sp_m_02.svg');
        background-repeat: no-repeat;
        background-size: contain;
    }

    .sp_menu_type_title_guide
    {
        position: relative;
    }
    .sp_menu_type_title_guide::before
    {
        position: absolute;
        z-index: 1;
        top: -2.3364485981vw;
        left: -11.214953271vw;

        width: 9.3457943925vw;
        height: 9.3457943925vw;

        content: '';

        background-image: url('../../assets/img/add_img/cmn/sp_m_03.svg');
        background-repeat: no-repeat;
        background-size: contain;
    }

    .s-header-categoryNav__navLink > a,
    .s-header-contentsNav__navLink > a
    {
        padding: unset;
    }

    .s-header-categoryNav__navLink
    {
        padding: 3.738317757vw 0 3.738317757vw 11.214953271vw;

        border-top: 1px dotted #ccc;
        border-bottom: unset;
    }

    .s-header-contentsNav__navLink
    {
        padding: 3.738317757vw 0;

        border-bottom: 1px dotted #ccc;
    }

    .s-header-contentsNav__navLink:nth-child(-n+2)
    {
        border-bottom: 1px solid #333;
    }

    .s-header-categoryNav__navLink:nth-last-of-type(1),
    .s-header-contentsNav__navLink:nth-last-of-type(1)
    {
        border-bottom: 1px dotted #ccc;
    }

    .sp_head_menu_title
    {
        font-family: 'Noto Sans JP';
        font-size: 16px;
        font-weight: 500;
        font-style: normal;
        line-height: normal;

        padding: 6.0747663551vw 0 6.0747663551vw 11.214953271vw;

        color: #333;
    }

    .s-header-categoryNav__navlist
    {
        font-family: 'Noto Sans JP';
        font-size: 16px;
        font-weight: 400;
        font-style: normal;
        line-height: normal;

        color: #333;
    }

    .s-header-contentsNav__navlist
    {
        font-family: 'Noto Sans JP';
        font-size: 16px;
        font-weight: 400;
        font-style: normal;
        line-height: normal;

        color: #333;
    }

    .s-header-categoryNav__head
    {
        position: relative;

        padding-right: 20px;

        cursor: pointer;

        background: unset;
    }

    .s-header-categoryNav__head::after
    {
        position: absolute;
        top: 50%;
        right: 0;

        width: 7px;
        height: 7px;

        content: '';
        transition: transform .2s ease;
        transform: translateY(-60%) rotate(45deg);

        border-right: 1px solid #333;
        border-bottom: 1px solid #333;
    }

    .s-header-categoryNav__body
    {
        display: none;
    }

    .s-header-categoryNav.active .s-header-categoryNav__head::after
    {
        transform: translateY(-40%) rotate(-135deg);
    }
}
.p_productCategoryNav
{
    padding: 48px 0 40px;

    background: #fff;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav
    {
        padding: 9.3457943925vw 0 5.6074766355vw;
    }
}

.p_productCategoryNav_inner
{
    position: relative;

    width: 1140px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_inner
    {
        width: auto;
        max-width: none;
        padding: 0 5.6074766355vw;
    }
}

.p_productCategoryNav_head
{
    display: flex;

    margin-bottom: 40px;

    align-items: center;
    gap: 16px;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_head
    {
        margin-bottom: 6vw;

        gap: 3.738317757vw;
    }
}

.p_productCategoryNav_title
{
    font-family: 'Noto Sans JP';
    font-size: 32px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    margin: 0;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_title
    {
        font-size: 5.6074766355vw;
    }
}

.p_productCategoryNav_subtitle
{
    font-family: Inter;
    font-size: 32px;
    font-weight: 100;
    font-style: normal;
    line-height: normal;

    margin: 0;
    padding-left: 16px;

    color: #333;
    border-left: 1px solid #bb1b13;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_subtitle
    {
        font-size: 5.6074766355vw;

        padding-left: 3.738317757vw;
    }
}

.p_productCategoryNav_list
{
    display: grid;

    margin: 0;
    padding: 0;

    list-style: none;

    grid-template-columns: repeat(6, 1fr);
    align-items: stretch;
    gap: 24px;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_list
    {
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;

        margin-right: -5.6074766355vw;
        margin-left: -5.6074766355vw;
        padding-right: 5.6074766355vw;
        padding-left: 5.6074766355vw;

        align-items: stretch;
        gap: 4vw;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
}

@media screen and (max-width: 767px)
{
    .p_productCategoryNav_list::-webkit-scrollbar
    {
        display: none;
    }
}

.p_productCategoryNav_item
{
    display: flex;

    margin: 0;
    padding: 0;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_item
    {
        flex: 0 0 39.7196261682vw;
        scroll-snap-align: start;
    }
}

.p_productCategoryNav_link
{
    display: flex;
    flex-direction: column;

    width: 100%;
    min-height: 48px;
    padding: 0 0 16px;

    text-decoration: none;

    color: #333;
    border-bottom: 4px solid #d8d8d8;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_link
    {
        min-height: 3.2710280374vw;
        padding-bottom: 2.667vw;

        border-bottom: .9345794393vw solid #d8d8d8;
    }
}

.p_productCategoryNav_name
{
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 20px;
    font-weight: 500;
    font-style: normal;
    line-height: 100%;

    display: block;

    color: #333;
    /* 20px */
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_name
    {
        font-size: 4.6728971963vw;
    }
}

.p_productCategoryNav_subname
{
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 12px;
    font-weight: 500;
    font-style: normal;
    line-height: 100%;

    display: block;

    margin-top: 8px;
    /* 12px */

    letter-spacing: -.1px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_productCategoryNav_subname
    {
        font-size: 2.8037383178vw;

        margin-top: 1.8691588785vw;
    }
}

@media screen and (max-width: 767px)
{
    .l-container-wrap
    {
        flex-direction: unset;
    }
}

.pro_list_all_wrap .l-container-fluid-md.l-container
{
    width: 1140px;
    max-width: unset;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    padding-right: 0;
    padding-left: 0;
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .l-container-fluid-md.l-container
    {
        width: 100%;
        max-width: unset;
    }
}
.pro_list_all_wrap .p-productListHeading-head
{
    border-bottom: unset;
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .p-productListHeading-head
    {
        margin-bottom: 5.6074766355vw;
    }
}
.pro_list_all_wrap .p-productListHeading-body
{
    display: none;
}
@media screen and (min-width: 992px)
{
    .pro_list_all_wrap .m-productLine
    {
        gap: 24px;
    }
    .pro_list_all_wrap .m-productLine__item
    {
        width: 267px;
    }
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .m-productLine__item
    {
        width: 42.523364486vw;
    }
}
.pro_list_all_wrap .p-page-productList .c-product-head__link
{
    display: block;
}
.pro_list_all_wrap .p-page-productList .c-product-head__picture
{
    position: relative;

    overflow: hidden;

    width: 100%;

    border: 1px solid #ccc;

    aspect-ratio: 1/1;
}
.pro_list_all_wrap .p-page-productList .c-product-head__picture::before
{
    display: none;
}
.pro_list_all_wrap .p-page-productList .c-product-head__image
{
    width: 100%;
    height: 100%;

    -o-object-fit: contain;

       object-fit: contain;
}
.pro_list_all_wrap .c-product-body__title-name
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;

    color: #bb1b13;
    /* 27.2px */
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .c-product-body__title-name
    {
        font-size: 3.738317757vw;
    }
}
.pro_list_all_wrap .c-product-body__price.c-product-body__price--bold
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 27.2px */
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .c-product-body__price.c-product-body__price--bold
    {
        font-size: 3.738317757vw;
    }
}
.pro_list_all_wrap .c-product-body__price-tax
{
    font-family: 'Noto Sans JP';
    font-size: 12px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .c-product-body__price-tax
    {
        font-size: 2.8037383178vw;
    }
}
.pro_list_all_wrap .c-product-sIcon
{
    gap: 4px;
}
.pro_list_all_wrap .c-product-body
{
    margin-top: 16px;
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .c-product-body
    {
        margin-top: 3.738317757vw;
    }
}
.pro_list_all_wrap .c-product-body__title
{
    margin-bottom: 8px;
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .c-product-body__title
    {
        margin-bottom: 1.8691588785vw;
    }
}
.pro_list_all_wrap .c-product-body .c-product-head__status
{
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;

    margin-top: 16px;
}
@media screen and (max-width: 767px)
{
    .pro_list_all_wrap .c-product-body .c-product-head__status
    {
        margin-top: 1.8691588785vw;
    }
}
@media screen and (min-width: 768px)
{
    .pro_list_all_wrap .p-productListHeading-head__nav .p-productListHeadPager__prev,
    .pro_list_all_wrap .p-productListHeading-head__nav .p-productListHeadPager__next
    {
        width: 8px;
    }
}
.pro_list_all_wrap .c-pager__prev,
.pro_list_all_wrap .c-pager__next
{
    width: 8px;
}

.p-productList-foot
{
    border-top: unset;
}

.pro_list_all_wrap .l-container-wrap__body
{
    padding-top: 0;
}

@media screen and (min-width: 768px)
{
    .p-productListHeading-head__nav
    {
        font-family: 'Noto Sans JP';
        font-size: 14px;
        font-weight: 400;
        font-style: normal;
        line-height: normal;

        width: auto;

        color: #333;
    }

    .p-productListHeading-head
    {
        margin-bottom: 40px;
        padding-bottom: 0;
    }
}
.p-productListHeading
{
    border-bottom: unset;
}
@media screen and (max-width: 767px)
{
    .p-productListHeading
    {
        padding: 0 5.6074766355vw;
    }
}

@media screen and (max-width: 767px)
{
    .p-productListBody
    {
        padding: 0 5.6074766355vw;
    }
}

@media screen and (max-width: 767px)
{
    .m-productLine
    {
        gap: 5.6074766355vw 3.738317757vw;
    }
}

.p_categoryContent
{
    margin-bottom: 40px;

    font-feature-settings: 'palt';
}
@media screen and (max-width: 767px)
{
    .p_categoryContent
    {
        margin-bottom: 5.6074766355vw;
    }
}
.p_categoryContent .p_cat_add_wrap
{
    display: flex;

    width: 1140px;
    margin: 0 auto;

    gap: 40px;
    align-items: center;
}
@media screen and (max-width: 767px)
{
    .p_categoryContent .p_cat_add_wrap
    {
        display: block;

        width: 100%;
        max-width: unset;
    }
}
.p_categoryContent .p_cat_add_wrap .p_cat_left_block
{
    width: 550px;
}
@media screen and (max-width: 767px)
{
    .p_categoryContent .p_cat_add_wrap .p_cat_left_block
    {
        width: 100%;
    }
}
.p_categoryContent .p_cat_add_wrap .p_cat_left_block .p_cat_add_img
{
    width: 100%;
}
.p_categoryContent .p_cat_add_wrap .p_cat_right_block
{
    flex: 1;
}
@media screen and (max-width: 767px)
{
    .p_categoryContent .p_cat_add_wrap .p_cat_right_block
    {
        margin-top: 3.738317757vw;
    }
}
.p_categoryContent .p_cat_add_wrap .p_cat_right_block .p_categoryContent_title
{
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 30px;
    font-weight: 700;
    font-style: normal;
    line-height: 100%;

    color: #333;
    /* 30px */
}
@media screen and (max-width: 767px)
{
    .p_categoryContent .p_cat_add_wrap .p_cat_right_block .p_categoryContent_title
    {
        font-size: 7.0093457944vw;
    }
}
.p_categoryContent .p_cat_add_wrap .p_cat_right_block .p_categoryContent_sub_title
{
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 24px;
    font-weight: 500;
    font-style: normal;
    line-height: 100%;

    margin-top: 8px;

    color: #333;
    /* 24px */
}
@media screen and (max-width: 767px)
{
    .p_categoryContent .p_cat_add_wrap .p_cat_right_block .p_categoryContent_sub_title
    {
        font-size: 5.6074766355vw;

        margin-top: 1.8691588785vw;
    }
}
.p_categoryContent .p_cat_add_wrap .p_cat_right_block .p_categoryContent_text
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;

    margin-top: 16px;

    color: #333;
    /* 32px */
}
@media screen and (max-width: 767px)
{
    .p_categoryContent .p_cat_add_wrap .p_cat_right_block .p_categoryContent_text
    {
        font-size: 3.738317757vw;

        margin-top: 3.738317757vw;
    }
}

.p_productDetailReview .p-productDetaiMain-guideTabBox-item
{
    display: block;
}
.p_productDetailReview .p-productDetaiMain-guideTabBox-item__head
{
    position: static;

    width: auto;
    height: auto;
}
.p_productDetailReview .p-productDetaiMain-guideTabBox-item__body
{
    display: block;
}

.p-page-productDetail .p-productDetaiMain-head.p-productDetaiMain-title
{
    margin-top: unset;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-head.p-productDetaiMain-title
    {
        padding: 0;
    }
}
.p-page-productDetail .p-productDetaiMain-head__status
{
    margin-bottom: 16px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-head__status
    {
        margin-bottom: 3.738317757vw;
    }
}
.p-page-productDetail .p-productDetaiMain-head__title
{
    margin-bottom: 16px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-head__title
    {
        margin-bottom: 3.738317757vw;
    }
}
.p-page-productDetail .p-productDetaiMain-head__title-name
{
    font-family: 'Noto Sans JP';
    font-size: 30px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-head__title-name
    {
        font-size: 7.0093457944vw;
    }
}
.p-page-productDetail .p-productDetaiMain-head__cooperationId
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: normal;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-head__cooperationId
    {
        font-size: 3.2710280374vw;
    }
}
.p-page-productDetail .p-productDetaiMain-guideTabBox-detailText__title
{
    font-family: 'Noto Sans JP';
    font-size: 18px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;
    /* 30.6px */

    margin-top: 32px;
    margin-bottom: 16px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-guideTabBox-detailText__title
    {
        font-size: 4.2056074766vw;

        margin-top: 7.476635514vw;
        margin-bottom: 3.738317757vw;
    }
}
.p-page-productDetail .p-productDetaiMain_outline
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain_outline
    {
        font-size: 3.2710280374vw;
    }
}
.p-page-productDetail .p-productDetaiMain-guideTabBox-reviewList__addReviewBtn
{
    max-width: 358px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-guideTabBox-reviewList__addReviewBtn
    {
        width: 100%;
        max-width: unset;
    }
}
.p-page-productDetail .p-productDetaiMain-head
{
    margin-top: 24px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-head
    {
        margin-top: 8.4112149533vw;
        padding: 0;
    }
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain
    {
        padding: 9.3457943925vw 0 0vw;
    }
}
.p-page-productDetail .p-productDetailWrap
{
    display: flex;

    gap: 40px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetailWrap
    {
        display: block;
    }
}
.p-page-productDetail .p-productDetailWrap__imgBlock
{
    width: 550px;

    grid-column: unset;
    grid-row: unset;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetailWrap__imgBlock
    {
        width: 100%;
    }
}
.p-page-productDetail .p-productDetailWrap__detailBlock
{
    grid-column: unset;
    grid-row: unset;
}
.p-page-productDetail .p-productDetaiMain-body
{
    padding: 0;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-body
    {
        margin-top: 3.738317757vw;
        padding: 0;
    }
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .p-productDetaiMain-guideTabBox-reviewList
    {
        padding: 0;
    }
}
.p-page-productDetail .c-btn-fluid-bold
{
    font-family: 'Noto Sans JP';

    border: 1px #e7402b solid;
    background-color: #e7402b;
}
.p-page-productDetail .c-btn-favorit
{
    border: 1px solid #ccc;
}
.p-page-productDetail .c-btn.c-btn--addReview
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;
    /* 27.2px */

    min-width: 358px;

    color: #333 !important;
    border: 1px solid #ccc;
    border-radius: 8px;
    background-color: unset;
}
.p-page-productDetail .l-container
{
    width: 1180px;
    padding-right: 20px;
    padding-left: 20px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .l-container
    {
        width: 100%;
        padding-right: 5.6074766355vw;
        padding-left: 5.6074766355vw;
    }
}
.p-page-productDetail .l-container .m-productDetailImg
{
    padding-left: unset;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .l-container .m-productDetailImg
    {
        border-bottom: unset;
    }
}
.p-page-productDetail .m-productDetailImg__main
{
    margin-bottom: 24px;
}
@media screen and (max-width: 767px)
{
    .p-page-productDetail .m-productDetailImg__main
    {
        margin-bottom: 3.738317757vw;
    }
}
.p-page-productDetail .m-productDetailImg-container
{
    aspect-ratio: 1/1;
}
.p-page-productDetail .m-productDetailImg-slider
{
    height: 100%;
}
.p-page-productDetail .m-productDetailImg-slider__item
{
    height: 100%;
}
.p-page-productDetail .m-productDetailImg-slider__picture
{
    display: block;
    overflow: hidden;

    width: 100%;
    height: 100%;

    border: 1px solid #ccc;

    aspect-ratio: 1/1;
}
.p-page-productDetail .m-productDetailImg-slider__image
{
    width: 100%;
    height: 100%;

    -o-object-fit: contain;

       object-fit: contain;
}

.m-productDetailImg-thumsList
{
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;

    gap: 16px;
}
@media screen and (max-width: 767px)
{
    .m-productDetailImg-thumsList
    {
        display: flex;

        transform: none !important;

        flex-wrap: wrap;
        gap: 3.738317757vw 3.738317757vw;
    }
}

.m-productDetailImg-thumsList__item
{
    width: 78px;
    height: 78px;

    border: 1px solid #ccc;
}
@media screen and (max-width: 767px)
{
    .m-productDetailImg-thumsList__item
    {
        width: 14.7196261682vw !important;
        height: 14.7196261682vw !important;
        margin-right: unset !important;
    }
}

@media screen and (max-width: 767px)
{
    .m-productDetailImg-thumsListWrap
    {
        padding-right: unset;
        padding-left: unset;
    }
}

.p_productDetailAccordion
{
    width: 880px;
    margin: 64px auto 0;

    border-top: 1px solid #d6d6d6;
}
@media screen and (max-width: 767px)
{
    .p_productDetailAccordion
    {
        width: 100%;
        margin: 11.214953271vw 0 0;
    }
}

.p_productDetailAccordion:not(:has(.p_productDetailAccordion_item))
{
    width: unset;
    margin: unset;

    border-top: unset;
}
@media screen and (max-width: 767px)
{
    .p_productDetailAccordion:not(:has(.p_productDetailAccordion_item))
    {
        width: unset;
        margin: unset;
    }
}

.p_productDetailAccordion_item
{
    margin: 0;

    border-bottom: 1px solid #d6d6d6;
}

.p_productDetailAccordion_head
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    position: relative;

    margin: 0;
    padding: 20px 44px 20px 0;

    cursor: pointer;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_productDetailAccordion_head
    {
        font-size: 3.738317757vw;

        padding: 4.2056074766vw 8.4112149533vw 4.2056074766vw 0;
    }
}

.p_productDetailAccordion_head::before,
.p_productDetailAccordion_head::after
{
    position: absolute;
    top: 50%;
    right: 2px;

    content: '';
    transition: transform .2s ease;
}

.p_productDetailAccordion_head::before
{
    width: 12px;
    height: 12px;

    transform: translateY(-65%) rotate(45deg);

    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
}
@media screen and (max-width: 767px)
{
    .p_productDetailAccordion_head::before
    {
        width: 2.3364485981vw;
        height: 2.3364485981vw;
    }
}

.p_productDetailAccordion_head::after
{
    display: none;
}

.p_productDetailAccordion_item.is_open .p_productDetailAccordion_head::before
{
    transform: translateY(-35%) rotate(-135deg);
}

.p_productDetailAccordion_body
{
    font-family: 'Noto Sans JP';
    font-size: 15px;
    line-height: 1.8;

    display: none;

    margin: 0;
    padding: 0 0 24px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_productDetailAccordion_body
    {
        font-size: 3.2710280374vw;

        padding: 0 0 4.6728971963vw;
    }
}

.p_productFeatureGrid
{
    display: grid;

    padding: 8px 0 10px;

    grid-template-columns: repeat(3, 1fr);
    gap: 24px 16px;
}
@media screen and (max-width: 767px)
{
    .p_productFeatureGrid
    {
        padding: 1.8691588785vw 0 2.3364485981vw;

        grid-template-columns: 1fr;
        gap: 6.5420560748vw;
    }
}

.p_productFeatureGrid_item
{
    min-width: 0;
}

.p_productFeatureGrid_img
{
    border: 1px solid #ccc;
}

.p_productFeatureGrid_img img
{
    display: block;

    width: 100%;

    aspect-ratio: 280/168;
    -o-object-fit: cover;
       object-fit: cover;
}

.p_productFeatureGrid_title
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;

    margin: 8px 0 8px;

    color: #bb1b13;
    /* 27.2px */
}
@media screen and (max-width: 767px)
{
    .p_productFeatureGrid_title
    {
        font-size: 3.738317757vw;

        margin: 2.8037383178vw 0 1.8691588785vw;
    }
}

.p_productFeatureGrid_text
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    margin: 0;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .p_productFeatureGrid_text
    {
        font-size: 3.2710280374vw;
        line-height: 1.8;
    }
}

.p_productMovie
{
    margin-top: 42px;
}
@media screen and (max-width: 767px)
{
    .p_productMovie
    {
        margin-top: 7.476635514vw;
    }
}

.p_productMovie iframe
{
    display: block;

    width: 100%;
    height: 495px;

    border: 0;

    aspect-ratio: 16/9;
}
@media screen and (max-width: 767px)
{
    .p_productMovie iframe
    {
        height: 56.0747663551vw;
    }
}

.p_productFeature_other_txt1
{
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 23.8px */
}

.p_productDetailReview
{
    width: 880px;
    margin: 64px auto;
}
@media screen and (max-width: 767px)
{
    .p_productDetailReview
    {
        width: 100%;
    }
}

.p_productDetailReview_head
{
    /* h3 */
    font-family: 'Noto Sans JP';
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    color: #333;
}

.p-page-productDetail .m-productDetailImg-thumsList__picture
{
    transition: outline-color .2s ease;

    outline: 2px solid transparent;
    outline-offset: -2px;

    aspect-ratio: 1/1;
}
.p-page-productDetail .m-productDetailImg-thumsList__picture .m-productDetailImg-thumsList__image
{
    width: 100%;
    height: 100%;

    -o-object-fit: contain;
       object-fit: contain;
}
.p-page-productDetail .m-productDetailImg-thumsList__item.swiper-slide-thumb-active
{
    border: 2px solid #d31212;
}
.p-productDetaiMain-head-utilities__item a
{
    text-decoration: underline;

    color: #333;
}

.m-productSkuDropdown-buyStep + .m-productSkuDropdown-buyStep
{
    margin-top: unset;
}

.c-product-head__status
{
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;

    margin-top: 16px;
}
@media screen and (max-width: 767px)
{
    .c-product-head__status
    {
        margin-top: 1.8691588785vw;
    }
}

.c-product-head__link
{
    display: block;
}

.c-product-head__picture
{
    position: relative;

    overflow: hidden;

    width: 100%;

    border: 1px solid #ccc;

    aspect-ratio: 1/1;
}

.c-product-head__picture::before
{
    display: none;
}

.c-product-head__image
{
    width: 100%;
    height: 100%;

    -o-object-fit: contain;

       object-fit: contain;
}

.p-productDetailWrap__recommendBlock-item .m-productLine-col2-md4-scroll
{
    gap: 24px;
}

.p-productDetailWrap__recommendBlock-item .m-productLine-col2-md4-scroll__item
{
    width: 208px;
}
@media screen and (max-width: 767px)
{
    .p-productDetailWrap__recommendBlock-item .m-productLine-col2-md4-scroll__item
    {
        width: 48.5981308411vw;
    }
}

.m-productLine-col3-md6
{
    gap: 24px;
}
@media screen and (max-width: 767px)
{
    .m-productLine-col3-md6
    {
        flex-wrap: nowrap;
    }
}

.m-productLine-col3-md6__item
{
    width: 208px;
}
@media screen and (max-width: 767px)
{
    .m-productLine-col3-md6__item
    {
        width: 48.5981308411vw;
    }
}

.p-productDetail-foot
{
    border-top: unset;
}
@media screen and (max-width: 767px)
{
    .p-productDetail-foot
    {
        padding-top: 0vw;
        padding-bottom: 9.3457943925vw;
    }
}

.c-product-body__title-name
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;

    color: #bb1b13;
    /* 27.2px */
}

.c-product-body__price.c-product-body__price--bold
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;
    /* 27.2px */

    margin-top: 8px;

    color: #333;
}
.c-product-body__price.c-product-body__price--bold .tax_txt_area
{
    font-family: 'Noto Sans JP';
    font-size: 12px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;
}

.c-product-body__price--discount
{
    color: #bb1b13 !important;
}

.c-product-body
{
    margin-top: 16px;
}

.m-productRecommend-wrap
{
    padding-top: 64px;

    border-top: 1px solid #ccc;
}
@media screen and (max-width: 767px)
{
    .m-productRecommend-wrap
    {
        padding-top: 9.3457943925vw;
    }
}

@media screen and (max-width: 767px)
{
    .m-productRecommend-scrollWrap
    {
        margin-right: -5.6074766355vw;
        margin-left: -5.6074766355vw;
        padding-right: 5.6074766355vw;
        padding-left: 5.6074766355vw;
    }
}

@media screen and (max-width: 767px)
{
    .m-productRecommend-scroll
    {
        padding-right: 0;
        padding-left: 0;
    }
}

.p_productRelatedTitle
{
    display: flex;

    margin-bottom: 32px;

    align-items: center;
    gap: 16px;
}
@media screen and (max-width: 767px)
{
    .p_productRelatedTitle
    {
        margin-bottom: 3.738317757vw;

        gap: 2.8037383178vw;
    }
}

.p_productRelatedTitle_main
{
    font-family: 'Noto Sans JP';
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    margin: 0;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_productRelatedTitle_main
    {
        font-size: 5.6074766355vw;
    }
}

.p_productRelatedTitle_sub
{
    font-family: Inter;
    font-size: 24px;
    font-weight: 100;
    font-style: normal;
    line-height: normal;

    display: flex;

    color: #333;

    align-items: center;
}
@media screen and (max-width: 767px)
{
    .p_productRelatedTitle_sub
    {
        font-size: 5.1401869159vw;
    }
}

.p_productRelatedTitle_sub::before
{
    display: block;

    width: 1px;
    height: 28px;
    margin-right: 16px;

    content: '';

    background: #bb1b13;
}
@media screen and (max-width: 767px)
{
    .p_productRelatedTitle_sub::before
    {
        height: 5.6074766355vw;
        margin-right: 2.8037383178vw;
    }
}

.p-productDetail-foot__item:nth-child(n+2)
{
    margin-top: 64px;
}
@media screen and (max-width: 767px)
{
    .p-productDetail-foot__item:nth-child(n+2)
    {
        margin-top: 9.3457943925vw;
    }
}

.p-productDetailWrap__recommendBlock-item:nth-child(n+2)
{
    margin-top: 64px;
}
@media screen and (max-width: 767px)
{
    .p-productDetailWrap__recommendBlock-item:nth-child(n+2)
    {
        margin-top: 9.3457943925vw;
    }
}

.p_proTermsModal_inner_wrap
{
    padding: 32px;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_inner_wrap
    {
        padding: 6.5420560748vw 5.1401869159vw;
    }
}

.p_pro_goriyoukiyaku_txt
{
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    margin-top: 16px;

    cursor: pointer;
    text-decoration: underline;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .p_pro_goriyoukiyaku_txt
    {
        font-size: 3.2710280374vw;

        margin-top: 3.738317757vw;
    }
}

.p_proTermsModal
{
    position: fixed;
    z-index: 10000;

    display: flex;

    inset: 0;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal
    {
        padding: 0 4.6728971963vw;
    }
}

.p_proTermsModal[hidden]
{
    display: none;
}

.p_proTermsModal_bg
{
    position: absolute;

    background: rgba(255, 255, 255, .86);

    inset: 0;
}

.p_proTermsModal_panel
{
    position: relative;
    z-index: 1;

    width: 575px;
    max-width: calc(100vw - 40px);
    max-height: 465px;

    background: #fff;
    box-shadow: 0 4px 16px rgba(0, 0, 0, .18);
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_panel
    {
        width: 100%;
        max-width: none;
        max-height: 121.4953271028vw;
    }
}

.p_proTermsModal_inner
{
    overflow-y: auto;

    max-height: 401px;
    padding-right: 12px;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_inner
    {
        max-height: 108.4112149533vw;
        padding-right: 2.3364485981vw;
    }
}

.p_proTermsModal_title
{
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;

    margin: 0 0 24px;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_title
    {
        font-size: 5.1401869159vw;

        margin: 0 0 4.6728971963vw;
    }
}

.p_proTermsModal_body
{
    font-size: 15px;
    line-height: 1.9;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_body
    {
        font-size: 3.2710280374vw;
        line-height: 1.8;
    }
}

.p_proTermsModal_body p
{
    margin: 0 0 12px;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_body p
    {
        margin: 0 0 2.8037383178vw;
    }
}

.p_proTermsModal_close
{
    position: absolute;
    z-index: 2;
    top: -32px;
    right: 4px;

    width: 28px;
    height: 28px;
    padding: 0;

    cursor: pointer;

    border: 0;
    background: transparent;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_close
    {
        top: -7.9439252336vw;
        right: 0;

        width: 6.5420560748vw;
        height: 6.5420560748vw;
    }
}

.p_proTermsModal_close::before,
.p_proTermsModal_close::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 32px;
    height: 4px;

    content: '';

    background: #333;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_close::before,
    .p_proTermsModal_close::after
    {
        width: 7.0093457944vw;
        height: .7009345794vw;
    }
}

.p_proTermsModal_close::before
{
    transform: translate(-50%, -50%) rotate(45deg);
}

.p_proTermsModal_close::after
{
    transform: translate(-50%, -50%) rotate(-45deg);
}

.p_proTermsModal_inner::-webkit-scrollbar
{
    width: 8px;
}
@media screen and (max-width: 767px)
{
    .p_proTermsModal_inner::-webkit-scrollbar
    {
        width: .9345794393vw;
    }
}

.p_proTermsModal_inner::-webkit-scrollbar-track
{
    background: #ccc;
}

.p_proTermsModal_inner::-webkit-scrollbar-thumb
{
    border-radius: 0;
    background: #333;
}

body.is_proTermsModal_open
{
    overflow: hidden;
}

.p_homenews .p-homeNewsList > article.p-homeNewsList__item:nth-of-type(n+4)
{
    display: none;
}

.c-productReview__star
{
    background: url(../../assets/img/product/icon_review_star_n.svg) center center no-repeat;
}

.c-productReview__star--active
{
    background: url('../../assets/img/product/icon_review_star_active_n.svg') center center no-repeat;
}

.m-productDetailImg-slideController
{
    display: none;
}

@media screen and (max-width: 767px)
{
    .p-page-productDetail .c-btn.c-btn--addReview
    {
        min-width: unset;
    }
}

.p_pro_add_custum_review .p-productDetaiMain-guideTabBox-reviewList__item
{
    margin-top: 32px !important;

    border-bottom: dotted 1px #c8c8c8;
}
.p_pro_add_custum_review .p-productDetaiMain-guideTabBox-reviewList__addReviewBtn
{
    margin-top: unset;
}
.p_pro_add_custum_review .p-productDetaiMain-guideTabBox-item__head
{
    /* h3 */
    font-family: 'Noto Sans JP';
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    padding-bottom: 24px;

    color: #333;
    border: unset;
    border-bottom: dotted 1px #c8c8c8;
    background: unset;

    justify-content: flex-start;
}
@media screen and (max-width: 767px)
{
    .p_pro_add_custum_review .p-productDetaiMain-guideTabBox-item__head
    {
        font-size: 5.6074766355vw;
    }
}

.c-productUser-body__status
{
    margin-top: .4rem;
}

.c-productUser-body__status .c-productUser-sIcon
{
    justify-content: flex-start;
}

.c-productUser-head__picture
{
    position: relative;

    overflow: hidden;

    width: 100%;

    border: 1px solid #ccc;

    aspect-ratio: 1/1;
}

.c-productUser-head__picture::before
{
    display: none;
}

.c-productUser-head__image
{
    width: 100%;
    height: 100%;

    -o-object-fit: contain;

       object-fit: contain;
}

.p-page-home .news_txt
{
    display: none;
}

.p-newsList-content__article
{
    position: relative;
}
.p-newsList-content__article .new_ank_postion
{
    position: absolute;
    top: calc(var(--head-add-h, 0px) * -1);
    left: 0;
}

.c_pro_rev_yoko
{
    display: flex;

    gap: 16px;
}
@media screen and (max-width: 767px)
{
    .c_pro_rev_yoko
    {
        gap: 3.738317757vw;
    }
}

.c-productReview__meta
{
    display: flex;

    gap: 8px 16px;
}
@media screen and (max-width: 767px)
{
    .c-productReview__meta
    {
        gap: 1.8691588785vw 3.738317757vw;
    }
}

.c-productReview__name
{
    /* テキスト14 */
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    margin-bottom: unset;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .c-productReview__name
    {
        font-size: 3.2710280374vw;
    }
}

.c-productReview__starList
{
    gap: 0 1px;
}
@media screen and (max-width: 767px)
{
    .c-productReview__starList
    {
        gap: 0 .2336448598vw;
    }
}

.c-productReview__star
{
    width: 13px;
    height: 13px;
}
@media screen and (max-width: 767px)
{
    .c-productReview__star
    {
        width: 3.0373831776vw;
        height: 3.0373831776vw;
    }
}

.c-productReview__time
{
    /* テキスト14 */
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    margin-left: unset;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .c-productReview__time
    {
        font-size: 3.2710280374vw;
    }
}

.c-productReview__review.c-productReview__title
{
    font-family: 'Noto Sans JP';
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 27.2px */
}
@media screen and (max-width: 767px)
{
    .c-productReview__review.c-productReview__title
    {
        font-size: 3.738317757vw;
    }
}

.c-productReview__review.c-productReview__comment
{
    /* テキスト14 */
    font-family: 'Noto Sans JP';
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 170%;

    color: #333;
    /* 23.8px */
}
@media screen and (max-width: 767px)
{
    .c-productReview__review.c-productReview__comment
    {
        font-size: 3.2710280374vw;
    }
}

#rootTemplate:has(.slider_all_wrap_top)
{
    overflow: hidden;
}

.kaiin_rank_area_custom
{
    display: none;
}

.p_proTermsModal_inner .p-terms-content__lead
{
    margin: 3rem 0 1.9rem;
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__lead
    {
        margin: 3.95rem 0 2.5rem;
    }
}
.p_proTermsModal_inner .p-terms-content__toc
{
    display: flex;
    flex-direction: column;

    counter-reset: tocCounter 0;

    border-top: 1px solid var(--color-gray);
    border-bottom: 1px solid var(--color-gray);
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__toc
    {
        padding: 2.75rem 0 2.8rem;

        gap: 1.5rem;
    }
}
.p_proTermsModal_inner .p-terms-content__toc-list:not(:first-of-type)
{
    border-top: 1px solid var(--color-gray);
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__toc-list:not(:first-of-type)
    {
        border-top: none;
    }
}
.p_proTermsModal_inner .p-terms-content__toc-anchor
{
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.2;

    display: flex;

    padding: 1.55rem .95rem 1.15rem 1.05rem;

    justify-content: space-between;
    align-items: flex-start;
}
.p_proTermsModal_inner .p-terms-content__toc-anchor::after
{
    display: block;

    width: 1.1312rem;
    margin-top: .2rem;

    content: '';

    background: url(../../img/common/icon/icon-arrow-select.svg) center/100% no-repeat;

    flex-shrink: 0;
    aspect-ratio: 1/1;
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__toc-anchor
    {
        font-size: 1.6rem;
        line-height: 1.1;

        flex-direction: row-reverse;

        height: -webkit-max-content;

        height: -moz-max-content;

        height: max-content;
        padding: 0;

        justify-content: flex-end;
        gap: 2.07rem;
    }
}
.p_proTermsModal_inner .p-terms-content__toc-anchor-inner
{
    display: flex;

    align-items: flex-start;
}
.p_proTermsModal_inner .p-terms-content__toc-anchor-inner::before
{
    display: block;

    margin-right: .5rem;

    content: '第' counter(tocCounter) '条';
    counter-increment: tocCounter 1;

    flex-shrink: 0;
}
.p_proTermsModal_inner .p-terms-content__main
{
    margin-top: 1.6rem;

    counter-reset: termsItem 0;
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__main
    {
        margin-top: 3rem;
    }
}
.p_proTermsModal_inner .p-terms-content__item
{
    padding: 2.4rem 0;
}
.p_proTermsModal_inner .p-terms-content__item:not(:first-of-type)
{
    border-top: 1px solid var(--color-gray);
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__item
    {
        padding: 3rem 0;
    }
}
.p_proTermsModal_inner .p-terms-content__item-title
{
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.3;
}
.p_proTermsModal_inner .p-terms-content__item-title::before
{
    content: '第' counter(termsItem) '条 ';
    counter-increment: termsItem 1;
}
.p_proTermsModal_inner .p-terms-content__item-text-wrapper
{
    margin-top: 2rem;
}
.p_proTermsModal_inner .p-terms-content__item-text
{
    font-size: 1.4rem;
    line-height: 1.4;
}
@media screen and (min-width: 768px)
{
    .p_proTermsModal_inner .p-terms-content__item-text
    {
        line-height: 1.6;
    }
}

.txt_sub_area
{
    font-size: 14px;

    letter-spacing: -1px;
}
@media screen and (max-width: 767px)
{
    .txt_sub_area
    {
        font-size: 3.2710280374vw;

        letter-spacing: -.2336448598vw;
    }
}

.p-page-orderConfirm .m-orderSectCol-addInfo__select
{
    display: none;
}

.add_txt_detail_area
{
    margin-top: 1.4rem;
}

.sp_list_swipeicn
{
    position: absolute;
    bottom: 0;
    left: 50%;

    display: none;

    transform: translateX(-50%);
    pointer-events: none;
}
@media screen and (max-width: 767px)
{
    .sp_list_swipeicn
    {
        display: block;
    }
}
@media screen and (max-width: 767px)
{
    .sp_list_swipeicn img
    {
        width: 31.308411215vw;
    }
}

.target_add_erase
{
    -webkit-animation: fadeOut .4s ease 3s forwards;
            animation: fadeOut .4s ease 3s forwards;
}

@-webkit-keyframes fadeOut
{
    to
    {
        visibility: hidden;

        pointer-events: none;

        opacity: 0;
    }
}

@keyframes fadeOut
{
    to
    {
        visibility: hidden;

        pointer-events: none;

        opacity: 0;
    }
}
.kome_txt
{
    padding-left: 1em;

    text-indent: -1em;
}

.m-subscNextOrderInfo-wrap .m-subscNextOrderInfo__item:nth-child(n+2)
{
    display: none;
}

.m-subscNextOrderInfo-wrap .m-subscNextOrderTotalPrice
{
    display: none;
}

.cho_kun5
{
    letter-spacing: -.5px;
}

.cho_kun6
{
    letter-spacing: -.6px;
}

.cho_kun7
{
    letter-spacing: -.7px;
}

.cho_kun8
{
    letter-spacing: -.8px;
}

.cho_kun9
{
    letter-spacing: -.9px;
}

.add_custum_cart1 .m-subscNextOrderInfo
{
    grid-template-columns: unset;
}

.pop_txt_custom1
{
    text-align: left;

    font-feature-settings: 'palt';
}

.add_mitumori_btn
{
    position: relative;

    color: #fff;
    border-color: #1ca15a;
    background-color: #1ca15a;
}

.add_mitumori_btn::after
{
    display: inline-block;

    width: 24px;
    height: 24px;
    margin-left: 8px;

    content: '';
    vertical-align: middle;

    background: url('../img/add_img/cmn/mitumori_download.svg') no-repeat center/contain;
}

.add_cancell_txt_teiki
{
    padding-bottom: 16px;
    padding-left: 1em;

    text-indent: -1em;

    font-feature-settings: 'palt';
}
@media screen and (max-width: 767px)
{
    .add_cancell_txt_teiki
    {
        font-size: 3.738317757vw;

        padding-left: 3.738317757vw;

        text-indent: -3.738317757vw;
    }
}

.add_txt_change_pop
{
    padding-left: 1em;

    text-indent: -1em;

    font-feature-settings: 'palt';
}
@media screen and (max-width: 767px)
{
    .add_txt_change_pop
    {
        font-size: 2.8037383178vw;

        padding-left: 2.8037383178vw;

        text-indent: -2.8037383178vw;
    }
}

@media screen and (max-width: 767px)
{
    .add_txt_cancel_red
    {
        font-size: 3.2710280374vw;
    }
}

@media screen and (max-width: 767px)
{
    .add_cancel_txt_comp
    {
        font-size: 3.2710280374vw;

        letter-spacing: -.023364486vw;
    }
}

.p-productHistory
{
    position: relative;
}
.p-productHistory .m-productLine-col2-md4-scroll
{
    gap: 24px;
}
.p-productHistory .m-productLine-col2-md4-scroll__item
{
    width: 208px;
}
@media screen and (max-width: 767px)
{
    .p-productHistory .m-productLine-col2-md4-scroll__item
    {
        width: 48.5981308411vw;
    }
}

.p-productHistoryWrap
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .p-productHistoryWrap .sp_list_swipeicn
    {
        position: absolute;
        z-index: 5;
        top: 57vw;

        display: block;

        transform: translateX(-50%);
    }

    .p-productHistoryWrap .sp_list_swipeicn img
    {
        width: 31.308411215vw;
    }
}
.js-swipeGuideBlock
{
    position: relative;
}

.js-swipeGuideBlock .js-swipeGuideIcon
{
    visibility: hidden;

    opacity: 0;
}

.js-swipeGuideBlock .js-swipeGuideIcon.is-show
{
    visibility: visible;

    -webkit-animation: fadeOut .4s ease 5s forwards;

            animation: fadeOut .4s ease 5s forwards;

    opacity: 1;
}

.add_txt_sub_tokuteiarea
{
    margin-top: 16px !important;
}
@media screen and (max-width: 767px)
{
    .add_txt_sub_tokuteiarea
    {
        margin-top: 3.738317757vw;
    }
}

@media screen and (max-width: 767px)
{
    .castum_padd_top.m-modalBoxHeding
    {
        padding: 9.3457943925vw 5.6074766355vw;
    }
}

.castum_padd_top .m-modalBoxHeding__closeBtn
{
    height: 9.3457943925vw;
}
