@media screen and (max-width:767px) {
    .pc {
        display: none !important
    }
}

@media screen and (min-width:768px) {
    .sp {
        display: none !important
    }
}

.product_detail_inner {
    min-width: auto
}

@media screen and (max-width:767px) {
    .pc {
        display: none
    }
}

@media screen and (min-width:768px) {
    .sp {
        display: none
    }
}

.align_center {
    text-align: center
}

.d-flex {
    display: -ms-flexbox;
    display: flex
}

.color_red {
    color: #bf0000
}

.fw_bold {
    font-weight: 700
}

.features_box {
    width: 100%;
    color: #333
}

.features_box img {
    display: block;
    width: 100%
}

@media screen and (min-width:768px) {
    .features_box_flex {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 19px 40px
    }

    .features_box_flex:not(:last-child) {
        margin-bottom: 50px
    }
}

.features_box_flex--second {
    margin-bottom: 18px
}

@media screen and (min-width:768px) {
    .features_box_item {
        width: calc(50% - 20px)
    }
}

.features_box_item--second {
    margin-bottom: -20px
}

.features_box_item--three {
    margin-bottom: 29px
}

.features_box_item--four {
    margin-bottom: 17px
}

@media screen and (min-width:768px) {
    .features_box_item--four {
        width: 100%;
        margin-bottom: 0
    }
}

.features_box_item--five {
    margin-bottom: 13px
}

.features_box_item--six {
    margin-bottom: 40px
}

.features_box_item--seven {
    margin-bottom: 15px
}

@media screen and (min-width:768px) {
    .features_box_item--seven {
        margin-bottom: 0
    }
}

.features_box_item--eight {
    margin-bottom: 13px
}

@media screen and (min-width:768px) {
    .features_box_item--eight {
        margin-bottom: 0
    }
}

.features_box_item--nine {
    margin-bottom: -28px
}

@media screen and (min-width:768px) {
    .features_box_item--nine {
        margin-bottom: 0
    }
}

@media screen and (min-width:768px) {
    .features_box_item--center {
        margin: 0 auto
    }
}

@media screen and (min-width:768px) {
    .features_box_item--full {
        width: 100%
    }
}

.features_box_img img {
    display: block;
    width: 100%
}

.features_box_img+.features_list {
    margin-bottom: -16px
}

.features_box_ct {
    width: 92vw;
    margin: 0 auto;
    padding: 10px 0 27px
}

@media screen and (min-width:768px) {
    .features_box_ct {
        width: 100%;
        padding-bottom: 11px
    }
}

.features_box_ct--second {
    padding: 2px 0 15px
}

.features_box_ct .features_box_img {
    margin: 7px -3px 5px -2px
}

.features_box_ct+.features_box_img {
    margin: -15px 0 0
}

@media screen and (min-width:768px) {
    .features_box_ct+.features_box_img {
        margin: 0
    }
}

.features_box_ct+.features_box_img--second {
    margin: 30px 0 0
}

.features_box_desc {
    font-size: 14px;
    line-height: 1.7142857143;
    font-weight: 500
}

.features_box_desc:not(:last-child) {
    margin-bottom: 12px
}

@media screen and (min-width:768px) {
    .features_box_desc:not(:last-child) {
        margin-bottom: 0
    }
}

.features_box_desc small {
    font-size: 10px;
    line-height: 1.6
}

.features_box_notes {
    font-size: 12px;
    line-height: 1.8;
    font-weight: 500
}

.features_box_notes:not(:last-child) {
    margin-bottom: 40px
}

.features_box_ttl {
    font-size: 18px;
    line-height: 1.5555555556;
    font-weight: 500;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    text-align: center;
    padding: 8px
}

@media screen and (min-width:768px) {
    .features_box_ttl {
        padding: 12px;
        letter-spacing: .1em
    }
}

.features_box_ttl:not(:last-child) {
    margin-bottom: 12px
}

@media screen and (min-width:768px) {
    .features_box_ttl:not(:last-child) {
        margin-bottom: 24px
    }
}

.features_box_list {
    font-weight: 500;
    display: grid;
    gap: 2px
}

@media screen and (min-width:768px) {
    .features_box_list {
        padding: 1px 0 0;
        gap: 27px;
        width: calc(50% - 20px)
    }
}

.features_box_list:not(:last-child) {
    margin-bottom: 11px
}

@media screen and (min-width:768px) {
    .features_box_list:not(:last-child) {
        margin-bottom: 0
    }
}

.features_box_list_ttl {
    font-size: 16px;
    line-height: 1.625;
    color: #f29e9e;
    margin-bottom: 2px
}

.features_box_list_desc {
    font-size: 14px;
    line-height: 1.45
}

.features_box .btn_common {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 18px;
    line-height: 1.2222222222;
    font-weight: 700;
    text-align: center;
    padding: 10px 50px;
    min-height: 60px;
    border-radius: 30px;
    color: #fff;
    background-color: #e60013;
    box-shadow: 5px 0 10px rgba(0, 0, 0, .2);
    position: relative;
    max-width: 400px;
    margin: 0 auto
}

.features_box .btn_common:after {
    position: absolute;
    content: "";
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: url(/supplement/capsi_ex/img/icon_arrow.png) 50%/cover no-repeat;
    right: 20px;
    top: calc(50% - 9px)
}

.features_list {
    display: grid;
    gap: 13px
}

.features_list:not(:last-child) {
    margin-bottom: 20px
}

.features_list--second {
    margin-bottom: 0 !important
}

.features_list+.features_list {
    margin-top: 35px
}

.features_list_ttl {
    font-size: 16px;
    line-height: 1.85;
    font-weight: 700;
    margin-bottom: -2px
}

.features_list_ttl small {
    font-size: 10px
}

.features_list_ttl span {
    color: #d0101b
}

.features_list_ttl+.features_list_desc {
    margin-bottom: -4px
}

.features_list_desc {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: -.05em;
    font-weight: 500
}

@media screen and (min-width:768px) {
    .features_list_desc {
        font-size: 16px
    }
}

.features_list_desc+.features_box_notes {
    margin: 9px 0 32px
}

.features_list_desc .line_full {
    background-image: linear-gradient(90deg, #ffef5d 50%, transparent 0);
    background-size: 200% 18px;
    background-repeat: no-repeat;
    background-position: left 0 bottom 1px
}

.features_list_desc small {
    font-size: 14px;
    line-height: 1.6428571429
}

.features_list_desc .sm {
    font-size: 6px
}

@media screen and (min-width:768px) {
    .features_list_desc .sm {
        font-size: 12px
    }
}

.features_list_desc--second {
    line-height: 1.75
}

.features_list_note {
    font-size: 7px;
    line-height: 1.7142857143
}

@media screen and (min-width:768px) {
    .features_list_note {
        font-size: 12px
    }
}

.block_inner {
    margin: 0 auto;
    width: 92%
}

.block_inner--second {
    width: 93%
}

.block_inner.align_center {
    margin-bottom: 10px
}

.block_lbl {
    font-size: 14px;
    line-height: 1.3928571429;
    font-weight: 500;
    padding: 6px 0 7px
}

.block_ttl {
    font-size: 17px;
    line-height: 1.4705882353;
    font-weight: 700;
    letter-spacing: -.08em;
    margin-bottom: 13px
}

@media screen and (min-width:768px) {

    .block_lbl {
        font-size: 20px;
    }

    .block_ttl {
        font-size: 36px;
        margin-bottom: 30px
    }
}

.block_ttl .line {
    background-image: linear-gradient(90deg, #ffef5d 50%, transparent 0);
    background-size: 200% 10px;
    background-repeat: no-repeat;
    background-position: left 0 bottom 2px
}

.img18 {
    margin-top: 40px;
    margin-bottom: 17.5px;
}

@media screen and (min-width:768px) {
    .img18 {
        margin-top: 60px;
        margin-bottom: 32px;
    }

    .block_ttl .line {
        background-size: 200% 16px;
    }
}

/*# sourceMappingURL=map/style.css.map */