@charset "utf-8";
/**
* base
*/

/* 縦書き */

.v_write {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

/* テキストカット */

.text_cut {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.line-through {
    text-decoration: line-through;
}


/* 変更項目~ */

/**
* common
*/

/* wrap */

.inner_container {
    padding-left: 4.6875vw;
    padding-right: 6.25vw;
    margin-bottom: 7.8125vw;
    line-height: 1.8;
    font-size: 14px;
}

/* border */

.img_border {
    border: 1px solid #000;
}

/* heading */

.heading {
    padding-bottom: 30px;
    text-align: center;
}

.heading_text {
    font-size: 24px;
}

.heading2 {
    margin-bottom: 15px;
    padding: 5px;
    background: #f3f3f5;
}

.heading2_text {
    font-size: 20px;
}

.heading3 {
    margin-bottom: 25px;
    font-size: 2rem;
    text-align: center;
}


/* breadcrumbs */

.breadcrumb {
    background: #f3f3f5;
}

.breadcrumb_font,
.breadcrumb_font:hover {
    color: #333;
}

/**
* header
*/

.header_bottom {
    background: #fff;
}

.logo {
    width: 150px;
}

/* header_category */

/**
* footer
*/

.footer {
    background: #f3f3f5;
}

.footer_link,
.footer_link:hover,
.copyright {
    color: #333;
}

.footer_nav_border {
    border-right: 1px solid #fff;
}

.footer_guide_block {
    background: #f3f3f5;
}

.guide_list {
    background: #fff;
}

/* カレンダー */

.calendar .holiday {
    background: #f38788;
    color: #fff;
}

.calendar .holiday_red {
    background: #f00;
    color: #fff;
}

.calendar tr {
    border-bottom: 1px dotted #ccc;
}

.calendar td {
    background: #fff;
    color: #554130;
}

.calendar th#saturday {
    color: #36c;
}

.calendar th#sunday {
    color: #f30;
}



/**
* トップ
*/

/* メインイメージ */

.main_visual {
    background: none;
}

/**
* 商品一覧
*/

.product_link {
    background: #666;
    color: #fff;
}

/**
* 商品詳細
*/

.product_tag_list {
    margin-right: 5px;
    padding: 4px 7px;
    background: #000;
    border-radius: 5px;
    color: #fff;
}

.freearea_bg {
    background: none;
}

/* 関連商品 */

.related_product_block {
    margin-bottom: 40px;
    padding-top: 20px;
    padding-bottom: 20px;
    background: #f3f3f5;
}

/* レビュー */

.product_review_block {
    color: #3f3f3f;
    letter-spacing: .16em;
    padding: 10%;
    font-size: 10px;
    border: 1px solid #3f3f3f;
    margin-top: 30px;
}

.product_review_block .accordion {
    line-height: 2.3;

}

/**
* マイページ
*/

/* メニュー */

.mypage_nav_border1 {
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

.mypage_nav_border2 {
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.mypage_nav_color {
    color: #333;
}

.mypage_nav_list .active,
.mypage_nav_list:hover .active {
    color: #de5d50;
}

.maypage_history_bg {
    background: #f3f3f5;
}

.maypage_login_bg {
    background: #f3f3f5;
}

/**
* カート
*/

.cart_head_bg {
    background: #f3f3f5;
}

/* お届け先の複数指定 */

.shipping_multiple_bg {
    background: #f4f4f4;
}

@media screen and (max-width:768px) {
    /**
    * common
    */
    body {
        font-size: 15px;
    }

    .inner_container {
        padding-right: 7.03125vw;
        padding-left: 7.03125vw;
        margin-bottom: 15.625vw;
        font-size: 3.4375vw;
    }

    .s_inner {
        padding-right: 0;
        padding-left: 0;
    }

    /* heading */
    .heading {
        padding-bottom: 20px;
    }

    /**
    * header
    */
    .logo {
        width: 125px;
    }

    /* drawer */
    .drawer {
        background: #f6f6f6;
    }

    .searchform {
        background: #ebebeb;
    }

    .search_input {
        border-bottom: 1px solid #ccc;
    }

    /**
    * footer
    */
    .footer_nav_border {
        border: 1px solid #fff;
    }

    .footer_nav_border:last-child {
        border-right: 1px solid #fff;
    }
    .product_review_block {
        padding: 5.9375vw;
        padding-bottom: 0;
        font-size: 3.125vw;
        border: .15625vw solid #3f3f3f;
        margin-top: 10.9375vw;
    }

}

/* ~変更項目 */

/**
* base
*/

/**
* text color
*/

.text_default {
    color: #525263;
}

.text_primary {
    color: #de5d50
}

.text_success {
    color: #18a689;
}

.text_info {
    color: #31708f;
}

.text_warning {
    color: #9a947e;
}

.text_danger {
    color: #de5d50;
}

.text_link {
    color: #0092c4;
}

/**
* bg color
*/

.bg_default {
    color: #fff;
    background-color: #525263;
}

.bg_primary {
    color: #fff;
    background-color: #de5d50;
}

.bg_primary-border {
    color: #de5d50;
    border: 2px solid #de5d50;
    background: #fff;
}

.bg_success {
    background-color: #dff0d8;
}

.bg_success-border {
    color: #296348;
    border: 2px solid #296348;
    background: #fff;
}

.bg_info {
    background-color: #d9edf7;
}

.bg_warning {
    background-color: #fcf8e3;
}

.bg_danger {
    color: #fff;
    background-color: #f99;
}

/**
* button
*/

.btn {
    display: inline-block;
    width: 200px;
    padding: 10px 16px;
    border: 1px solid transparent;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    box-sizing: border-box;
}

.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn,
.btn.disabled:hover,
.btn[disabled]:hover,
fieldset[disabled] .btn:hover,
.btn.disabled:focus,
.btn[disabled]:focus,
fieldset[disabled] .btn:focus,
.btn.disabled:active,
.btn[disabled]:active,
fieldset[disabled] .btn:active,
.btn.disabled.active,
.btn[disabled].active,
fieldset[disabled] .btn.active {
    opacity: 0.5;
}

.btn_default,
.btn_common {
    color: #525263;
    background-color: #f5f7f8;
    border-color: #d7dadd;
}

.btn_primary,
.btn_add {
    color: #fff;
    background-color: #de5d50;
    border-color: #de5d50;
}

.btn_success {
    color: #fff;
    background-color: #296348;
    border-color: #296348;
}

.btn_info,
.btn_review {
    color: #fff;
    background-color: #525263;
    border-color: #525263;
}

.btn_warning {
    color: #fff;
    background-color: #f0ad4e;
    border-color: #f0ad4e;
}

.btn_danger,
.btn_soldout {
    color: #fff;
    background-color: #d9534f;
    border-color: #d9534f;
}

.btn_link {
    font-weight: normal;
    color: #de5d50;
    cursor: pointer;
    border-radius: 0;
}

.btn_search {
    color: #fff;
    background: #666;
}

.btn_circle {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25px;
    height: 25px;
    background: #b8bec4;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
}

.btn_other {
    width: auto;
    padding: 10px;
    color: #525263;
    background-color: #f5f7f8;
    border-color: #d7dadd;
    font-size: 1.4rem;
    font-weight: normal;
}
#order-button {
    width: 100%;
}
/**
* form
*/

label {
    font-weight: normal;
}

input:focus,
select:focus {
    outline: none;
}

input[type="number"] {
    text-align: center;
}

.form-group .errormsg {
    margin-top: 3px;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
}

dd.form-group .errormsg {
    margin-bottom: 0;
}

.form-control {
    background: #fff;
    border: 1px solid #C4CCCE;
    border-radius: 3px;
    box-shadow: none;
    font-size: 1rem;
    height: 40px;
    padding: 6px 12px;
    width: auto;
    line-height: 1.5;
    box-sizing: border-box;
}

select.form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../img/ico_form_select.png) center right 20px no-repeat;
    background-size: 10px 6px;
    padding: 6px 50px 6px 12px;
}
select::-ms-expand {
    display: none;
}
input[type="radio"] {
    position: relative;
    -webkit-appearance: button;
    appearance: button;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    content: "";
    background-color: #FFFFFF;
    border: 1px solid #999999;
    -webkit-border-radius: 20px;
    border-radius: 20px;
    vertical-align: middle;
    cursor: pointer;
}


input[type="radio"]:checked:after {
    display: block;
    position: absolute;
    top: 3px;
    left: 3px;
    content: "";
    width: 12px;
    height: 12px;
    background: #de5d50;
    -webkit-border-radius: 12px;
    border-radius: 12px;
}

.form-control:focus {
    border-color: #3c8dbc !important;
    box-shadow: none
}

.has-success .form-control:focus,
.has-warning .form-control:focus,
.has-error .form-control:focus {
    box-shadow: none;
    background: none;
}

.has-success .form-control {
    border-color: #0d8969;
    background: #e7f6f3;
}

.has-warning .form-control {
    border-color: #e99133;
    background: #fdf7ed;
}

.has-error .form-control {
    border-color: #cf3f34;
    background: #fdf1f0;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline {
    color: inherit;
    background: #fdf1f0;
}

.form-control::-moz-placeholder {
    color: #bbb;
    opacity: 1
}

.form-control:-ms-input-placeholder {
    color: #bbb
}

.form-control::-webkit-input-placeholder {
    color: #bbb
}

.form-control:not(select) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.form-group .form-control {
    width: 100%;
}

.form-inline .form-control {
    width: auto;
}

.form-group.lange input[type="text"],
.form-group.lange label {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 1%;
    margin-right: 1%;
    vertical-align: middle;
}

.form-group.lange input[type="text"] {
    width: 28%;
}

.input_tel input {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 1px;
    margin-right: 1px;
    max-width: 5em;
    vertical-align: middle;
    width: 30%;
}

.form-group.input_tel input:first-child {
    margin-left: 0;
}

.form-group.input_name input {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 2%;
    vertical-align: middle;
    width: 48%;
}

.form-group.input_name input:first-child {
    margin-left: 0;
}

.form-group.input_zip input {
    display: inline-block;
    margin-left: 1%;
    margin-right: 1%;
    max-width: 5em;
    vertical-align: middle;
    width: 30%;
}

.form-group.input_zip .question-circle {
    font-size: 11px;
    display: inline-block;
    width: 15px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    vertical-align: middle;
    background: #525263;
    border-radius: 50%;
}

.form-group.input_zip .question-circle .cb-question {
    fill: #fff;
}

.form-group .item_price input,
.form-group .item_quantity input {
    margin: 0 1%;
    text-align: right;
    width: 50%;
}

.form-inline label {
    margin: 0 10px 0 0;
}

.form-inline label:first-child + select,
.form-inline label:first-child + input {
    margin-right: 10px;
}

.form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: top;
}

.checkbox-inline,
.radio-inline {
    cursor: pointer;
    margin-left: 20px;
}

.checkbox-inline:first-child,
.radio-inline:first-child {
    margin-left: 0;
}
label.control-label {
    padding-right: 0.6em;
}
span.required {
    color: #DE5D50;
    display: inline-block;
    font-weight: normal !important;
    font-size: 8px;
    font-size: .8rem;
}

#entry_birth select {
    margin: 0 8px;
}

#entry_birth select:first-child {
    margin-left: 0;
}

#entry_sex .radio {
    display: inline-block;
    margin-right: 10px;
}

#entry_sex .radio input[type="radio"] {
    margin-right: 10px;
}

.form_wrap .form-group:not(:first-child) {
    padding-top: 16px;
}

.form_wrap .zip-search {
    margin: 16px 0;
}

/* メルマガ */

#entry_mailmaga_flg .radio {
    display: inline-block;
    margin-right: 10px;
}

/**
* list
*/

.list_wrap {
    -webkit-display: flex;
    -ms-display: flex;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}

.list2 {
    width: 48%;
    margin-right: 4%;
    box-sizing: border-box;
}

.list2:nth-child(2n) {
    margin-right: 0;
}

.list3 {
    width: 31%;
    margin-right: 3.5%;
    box-sizing: border-box;
}

.list3:nth-child(3n) {
    margin-right: 0;
}

.list4 {
    width: 22%;
    margin-right: 4%;
    box-sizing: border-box;
}

.list4:nth-child(4n) {
    margin-right: 0;
}

.list5 {
    width: 16.8%;
    margin-right: 4%;
    box-sizing: border-box;
}

.list5:nth-child(5n) {
    margin-right: 0;
}

.list6 {
    width: 13.75%;
    margin-right: 3.5%;
    box-sizing: border-box;
}

.list6:nth-child(6n) {
    margin-right: 0;
}

/**
* pagination
*/

.pagination {
    width: 95%;
    margin: 16px auto;
    position: relative;
    clear: both;
}

.pagination ul {
    list-style-type: none;
    margin: 0 auto;
    padding: 1em 0;
    text-align: center;
}

.pagination ul li {
    display: inline-block;
    min-width: 29px;
    padding: 0 3px 0 2px;
    text-align: center;
    position: relative;
}

.pagination ul li a {
    color: #525263;
    display: block;
    line-height: 1.8;
    padding: 5px 1em;
    text-decoration: none;
}

.pagination ul li a:hover,
.pagination ul li a:focus {
    background: #f1f1f1;
}

.pagination ul li.active a {
    background: #F3F3F3;
    text-decoration: none;
}

.pagination ul li.active a:hover,
.pagination ul li.active a:focus {
    background: #F3F3F3;
}

.pagination ul li.disabled a {
    color: #9797A0;
    text-decoration: none;
}

.pagination ul li.disabled a:hover,
.pagination ul li.disabled a:focus {
    color: #9797A0;
}

/**
* common
*/

#svgicon {
    display: block;
    width: 0;
    height: 0;
    overflow: hidden;
}

.textarea textarea {
    width: 100%;
    height: 6em;
    margin-bottom: 1rem;
}

/**
* header
*/

.search_area {
    top: 0;
    right: 0;
    background: #ccc;
    transition: all .3s;
}

.search_area.open {
    opacity: 1;
    visibility: visible;
}

/* header_category */

#header .header_cate_nav .header_cate {
    position: absolute;
    top: 100%;
    right: 0;
    overflow: hidden;
    opacity: 0;
    width: 100%;
    height: 0;
    transition: all .2s;
}

#header .header_cate_nav:hover .header_cate {
    overflow: visible;
    opacity: 1;
    height: 50px;
}

#header .category_nav_wrap::before {
    content: "";
    width: 100%;
    height: 60px;
    position: absolute;
    top: -60px;
    left: 0;
}

#header .category_nav a {
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 10px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
    box-sizing: border-box;
}

#header .category_nav {
    display: flex;
    justify-content: center;
    align-items: center;
}

#header .category_nav > li {
    margin: 0;
}

#header .category_nav li ul {
    display: block;
}

#header .category_nav li {
    position: relative;
}

#header .category_nav > li > a {
    padding: 0 1em;
    border-bottom: none;
}

#header .category_nav li a {
    display: block;
}

#header .category_nav li ul {
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;
    width: 200px;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}

#header .category_nav li ul li {
    float: left;
    overflow: hidden;
    width: 100%;
    height: 0;
    transition: .2s;
}

#header .category_nav li ul li a {
    text-align: left;
}

#header .category_nav > li:hover li:hover > a {
    background: rgba(204, 204, 204, 0.1)
}

#header .category_nav > li:hover > ul > li {
    overflow: visible;
    height: 50px;
}

#header .category_nav li ul li ul {
    top: 0;
    left: 100%;
}

#header .category_nav li:last-child ul li ul {
    left: 100%;
    width: 100%;
}

#header .category_nav li ul li ul:before {
    position: absolute;
    content: ">";
    top: 13px;
    left: -15px;
    width: 0;
    height: 0;
}

#header .category_nav li:last-child ul li ul:before {
    position: absolute;
    content: ">";
    top: 13px;
    left: -15px;
    width: 0;
    height: 0;
}

#header .category_nav li ul li:hover > ul > li {
    overflow: visible;
    height: 50px;
}

#header .category_nav li:hover ul li ul li a:hover {
    background: rgba(204, 204, 204, 0.1)
}

#header .category_nav ul > li > a,
#header .category_nav ul > li > ul > li > a,
#header .category_nav ul > li > ul > li > ul > li a {
    padding-left: 10px;
}

/* drawer */

.drawer {
    position: static;
    height: auto;
    width: auto;
    margin: 0 auto;
    overflow: visible;
    background: transparent;
    text-align: center;
}

/**
* footer
*/

.footer_nav_border:last-child {
    border-right: none;
}

.footer_sns_block {
    top: -11px;
    right: 0;
}

.guide_link_wrap {
    top: 10px;
    right: 0;
}

/* カレンダー */

/* #calendar {
    margin-bottom: 20px;
    margin-top: 50px;
} */

.calendar {
    margin-bottom: 20px;
    margin-top: 20px;
}

.calendar_title {
    font-weight: bold;
    padding-left: 10px;
}

/* #calendar table {
    margin-top: 10px;
    padding: 0;
    border-collapse: collapse;
    width: 100%;
} */

.calendar table {
    width: 100%;
}

.calendar tr {
    text-align: center;
}

.calendar td {
    padding: 5px 0;
}

/**
* ブロック
*/

/* お知らせ */

.newslist {
    line-height: 1.7;
}

.news_more {
    top: 11px;
    right: 16px;
}

.news_more_icon {
    transition: all .3s;
}

.newslist .active .news_more_icon {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

/* ランキング */

.rank_num {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    font-size: 18px;
}

/**
* TOP
*/

/* slider */

.main_slider .slick-loading .slick-list {
    background: #fff url('ajax-loader.gif') center center no-repeat;
}

.main_slider .slick-slide img {
    width: 95%;
    height: auto;
    margin: auto;
}

/* Arrow */

.slick-prev,
.slick-next {
    position: absolute;
    top: -160px;
    width: 40px;
    height: 40px;
    font-size: 0;
    line-height: 40px;
}

.slick-prev {
    left: 18%;
}

.slick-next {
    right: 18%;
}

/* Dotted */

.slick-dots {
    position: absolute;
    bottom: -30px;
    display: block;
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    content: " ";
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    text-align: center;
    opacity: .25;
    background-color: black;
    border-radius: 50%;

}

.slick-dots li.slick-active button:before {
    opacity: .75;
    background-color: black;
}

.slick-dots li button.thumbnail img {
    width: 0;
    height: 0;
}

/**
* 商品一覧
*/

.product_item {
    position: relative;
    padding-bottom: 45px;
}

.product_img {
    text-align: center;
    margin-bottom: 10px;
}

.product_comment {
    margin-bottom: 10px;
}

.product_name {
    margin-bottom: 10px;
    font-size: 18px;
}

.product_price {
    margin-bottom: 10px;
    text-align: right;
}

.product_link {
    position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 10px 0;
    background: #666;
    text-align: center;
}

.product_link,
.product_link:hover {
    color: #fff;
}

/**
* 商品詳細
*/

.product_detail .slick-slide img {
    display: block;
    margin: auto;
}

.product_detail .slick-initialized .slick-slide {
    height: auto;
}

.detail_img .slick-dots {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: 20px;
}

.detail_img .slick-dots li {
    width: 18%;
    margin-right: 2.5%;
    box-sizing: border-box;
}

.detail_img .slick-dots li:nth-child(5n) {
    margin-right: 0;
}

.product_detail .form-control {
    width: 100%;
}

.prduct_detail_description {
    line-height: 1.5;
}

/* 関連商品 */

/* レビュー */

.review_more {
    top: 17px;
    right: 20px;
}

.review_icon {
    transition: all .3s;
}

.active .review_icon {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.product_review_page textarea {
    vertical-align: top;
}

.product_review_page #product_review_sex .radio {
    display: inline-block;
    margin-right: 10px;
}

.product_review_page #product_review_sex .radio input[type="radio"] {
    margin-right: 10px;
}

/**
* マイページ
*/

.mypage_delivery .address,
.mypage_history .adoress,
.mypage_history .history {
    line-height: 1.2;
}

/* 会員登録内容変更 */

.mypage_formarea dl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border-bottom: 1px dotted #ccc;
}

/* お届け先編集 */

.mypage_delivery .btn_common {
    padding: 10px;
}

/* お気に入り一覧 */

.favorite_delete {
    top: 10px;
    right: 10px;
}

/* ご注文履歴詳細 */

.mypage_history .product_img {
    max-width: 80px;
    max-height: 96px;
}

/* 退会手続き */

.withdraw_text {
    line-height: 1.7;
}

/**
* 新規会員登録
*/

.entry_formarea dl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border-bottom: 1px dotted #ccc;
}

/**
* カート
*/

/* 購入フロー */

.flowline {
    position: relative;
    margin: 0;
    padding: 8px 0 16px;
}

.flowline ul {
    display: flex;
    position: relative;
    margin: 0 auto;
}

.flowline ul::before {
    content: "";
    height: 4px;
    background: #525263;
    position: absolute;
    top: 20px;
    margin: 0;
    border-radius: 2px;
    z-index: 0;
}

.flowline.step3 ul {
    max-width: 450px;
}

.flowline.step3 ul::before {
    width: 66.66666666%;
    left: 16.6666666%;
}

.flowline.step4 ul {
    max-width: 550px;
}

.flowline.step4 ul::before {
    width: 75%;
    left: 12.5%;
}

.flowline ul li {
    position: relative;
    text-align: center;
    white-space: nowrap;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
    z-index: 1;
}

.flowline.step3 ul li {
    width: 33.33333333333333%;
}

.flowline.step4 ul li {
    width: 25%;
}

.flowline li .flow_number {
    line-height: 2;
    width: 42px;
    height: 42px;
    margin-bottom: 5px;
    font-size: 20px;
    background: #525263;
    color: #fff;
    top: 0;
    left: 18px;
    display: inline-block;
    margin-bottom: 5px;
    text-align: center;
    vertical-align: middle;
    border-radius: 50%;
}

.flowline li.active {
    color: #296348;
}

.flowline li.active .flow_number {
    background: #296348;
}

.cart_item .product_img {
    max-width: 80px;
    margin: 0;
}

.cart_item .product_price {
    text-align: left;
    font-weight: bold;
}

/* お客様情報 */

.shopping_form .btn_edit {
    position: absolute;
    top: 0;
    right: 0;
}

.customer_detail input {
    border: 1px solid #ddd;
    margin: 3px;
    padding: 5px;
}

/* お届け先の複数指定 */

.shipping_multiple_item .product_img {
    max-width: 200px;
}

/**
* アバウト
*/

.about {
    line-height: 1.7;
}

.info_archive_list {
    border-bottom: 1px #dcdcdc solid;
    padding: 40px 60px 60px;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
}
h2.info_date {
    color: #2f763c;
    font-size: 18px;
    width: 15%;
}
p.info_text {
  font-size: 14px;
  color: rgb(63, 63, 63);
  line-height: 2;
    max-width: 85%;
}


@media screen and (max-width:768px) {
.info_archive_list {
    display: block;
    padding: 12.5vw 0;
}
h2.info_date {
    font-size: 4.0625vw;
    margin-bottom: 7.5vw;
    width: 100%;
}
p.info_text {
    font-size: 3.4375vw;
    max-width: none;
    width: 100%;
}


    /**
    * list
    */
    .list_wrap .list2,
    .list_wrap .list3,
    .list_wrap .list4,
    .list_wrap .list5,
    .list_wrap .list6 {
        margin-right: auto;
    }

    .s_list1 {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 15px;
    }

    .s_list1:last-child {
        margin-bottom: 0;
    }

    .s_list2 {
        width: 48%;
        margin-left: 4%;
        box-sizing: border-box;
    }

    .s_list2:nth-child(2n + 1) {
        margin-left: 0;
    }

    .s_list3 {
        width: 31%;
        margin-left: 3.5%;
        box-sizing: border-box;
    }

    .s_list3:nth-child(3n + 1) {
        margin-left: 0;
    }

    .s_list4 {
        width: 22%;
        margin-left: 4%;
        box-sizing: border-box;
    }

    .s_list4:nth-child(4n + 1) {
        margin-left: 0;
    }

    .s_list5 {
        width: 16.8%;
        margin-left: 4%;
        box-sizing: border-box;
    }

    .s_list5:nth-child(5n + 1) {
        margin-left: 0;
    }

    .s_list6 {
        width: 13.75%;
        margin-left: 3.5%;
        box-sizing: border-box;
    }

    .s_list6:nth-child(6n + 1) {
        margin-left: 0;
    }

    /**
    * btn
    */
    .btn_search {
        color: #333;
        background: none;
    }

    /**
    * header
    */
    .sp_header_btn {
        top: 50%;
        right: 20px;
    }

    .item_num {
        top: -5px;
        right: 5px;
        left: auto;
    }

    /* drawer */
    .drawer {
        position: fixed;
        top: 0;
        right: 0;
        height: 0;
        width: 260px;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        z-index: 1;
        visibility: hidden;
        transition: visibility 0s 0.3s;
    }

    .drawer_open .drawer {
        height: 100%;
        visibility: visible;
        transition: visibility 0s 0s;
    }

    #contents,
    #header,
    #footer,
    .pagetop {
        transition: transform 0.3s;
    }

    .drawer_open #contents,
    .drawer_open #header,
    .drawer_open #footer,
    .drawer_open .pagetop {
        transform: translateX(-260px);
    }

    /* Overlay */
    .overlay {
        position: fixed;
        z-index: 2;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        cursor: pointer;
        background-color: rgba(0, 0, 0, 0.5);
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.3s 0s, visibility 0s 0.3s, transform 0.3s 0s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

    .overlay.is_visible {
        opacity: 1;
        visibility: visible;
        transform: translateX(-260px);
        transition: opacity 0.3s 0s, visibility 0s 0s, transform 0.3s 0s;
    }

    /* nav_icon */
    .nav_icon {
        display: block;
        position: relative;
        width: 32px;
        height: 5px;
        background: #333;
        border-radius: 3px;
        transition: all .3s;
    }

    .nav_icon::before,
    .nav_icon::after {
        content: "";
        display: block;
        position: absolute;
        width: 32px;
        height: 5px;
        background: #333;
        border-radius: 3px;
        transition: all .3s;
    }

    .nav_icon::before {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    .nav_icon::after {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    .drawer_open .nav_icon {
        background: none;
    }

    .drawer_open .nav_icon::before {
        -webkit-transform: translateY(0) rotate(45deg);
        transform: translateY(0) rotate(45deg);
    }

    .drawer_open .nav_icon::after {
        -webkit-transform: translateY(0) rotate(-45deg);
        transform: translateY(0) rotate(-45deg);
    }

    /* 検索 */
    .searchform select {
        width: 100%;
    }

    .searchform input[type="search"] {
        height: 50px;
        width: 100%;
        font-size: 16px;
        font-size: 1.6rem;
        border: 0 none;
        padding: 0.5em 0;
        box-shadow: none;
        background: none;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .drawer li {
        padding: 10px 20px;
        border-bottom: 1px solid #e8e8e8;
    }

    /**
    * footer
    */
    .footer_nav_border {
        border-left: none;
    }

    .footer_nav_border:nth-child(even) {
        border-right: none;
    }

    .footer_nav_border:nth-child(n + 3) {
        border-top: none;
    }

    /**
    * ブロック
    */
    /* お知らせ */
    .news_more {
        right: 0;
    }

    /* ランキング */
    .ranking_block .product_list:nth-child(n + 4) {
        display: none;
    }

    /* 最近チェックした商品 */
    .checked_block .product_list:nth-child(n + 4) {
        display: none;
    }

    /**
    * TOP
    */
    /* slider */
    .main_slider .slick-slide img {
        width: 100%;
    }

    /**
    * 商品一覧
    */
    .product_item {
        line-height: 1.2;
    }

    .product_name {
        font-size: 16px;
    }

    /**
    * 商品詳細
    */
    .detail_img .slick-dots {
        justify-content: center;
    }

    .detail_img .slick-dots li {
        width: auto;
        margin-right: 0;
    }
    .review_more {
    top: 23px;
    right: 0;
}

    /* カート */
    #cart_item__info.message {
        line-height: 2;
    }

    .customer_detail .btn[disabled] {
        display: none;
    }
    .flowline ul li {
        font-size: .8rem;
    }
    /**
    * マイページ
    */
    /* 会員登録内容変更 */
    .mypage_formarea dl {
        flex-wrap: wrap;
    }

    /**
    * 新規会員登録
    */
    .entry_formarea dl {
        flex-wrap: wrap;
    }

}

/*font-family*/

.ff_gothic {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
}

.ff_mincho {
    font-family: Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}

/* font-awesome */

.fa_size_10::before {
    font-size: 1rem;
}

.fa_size_11::before {
    font-size: 1.1rem;
}

.fa_size_12::before {
    font-size: 1.2rem;
}

.fa_size_13::before {
    font-size: 1.3rem;
}

.fa_size_14::before {
    font-size: 1.4rem;
}

.fa_size_15::before {
    font-size: 1.5rem;
}

.fa_size_16::before {
    font-size: 1.6rem;
}

.fa_size_17::before {
    font-size: 1.7rem;
}

.fa_size_18::before {
    font-size: 1.8rem;
}

.fa_size_19::before {
    font-size: 1.9rem;
}

.fa_size_40::before {
    font-size: 2rem;
}

.fa_size_21::before {
    font-size: 2.1rem;
}

.fa_size_22::before {
    font-size: 2.2rem;
}

.fa_size_23::before {
    font-size: 2.3rem;
}

.fa_size_24::before {
    font-size: 2.4rem;
}

.fa_size_25::before {
    font-size: 2.5rem;
}

.fa_size_26::before {
    font-size: 2.6rem;
}

.fa_size_27::before {
    font-size: 2.7rem;
}

.fa_size_28::before {
    font-size: 2.8rem;
}

.fa_size_29::before {
    font-size: 2.9rem;
}

.fa_size_30::before {
    font-size: 3rem;
}

.fa_size_31::before {
    font-size: 3.1rem;
}

.fa_size_32::before {
    font-size: 3.2rem;
}

.fa_size_33::before {
    font-size: 3.3rem;
}

.fa_size_34::before {
    font-size: 3.4rem;
}

.fa_size_35::before {
    font-size: 3.5rem;
}

.fa_size_36::before {
    font-size: 3.6rem;
}

.fa_size_37::before {
    font-size: 3.7rem;
}

.fa_size_38::before {
    font-size: 3.8rem;
}

.fa_size_39::before {
    font-size: 3.9rem;
}

.fa_size_40::before {
    font-size: 4rem;
}

.fa_size_41::before {
    font-size: 4.1rem;
}

.fa_size_42::before {
    font-size: 4.2rem;
}

.fa_size_43::before {
    font-size: 4.3rem;
}

.fa_size_44::before {
    font-size: 4.4rem;
}

.fa_size_45::before {
    font-size: 4.5rem;
}

.fa_size_46::before {
    font-size: 4.6rem;
}

.fa_size_47::before {
    font-size: 4.7rem;
}

.fa_size_48::before {
    font-size: 4.8rem;
}

.fa_size_49::before {
    font-size: 4.9rem;
}

.fa_size_50::before {
    font-size: 5rem;
}

@media screen and (max-width:768px) {
    /* font-awesome */
    .s_fa_size_10::before {
        font-size: 10px;
    }
    .s_fa_size_11::before {
        font-size: 11px;
    }
    .s_fa_size_12::before {
        font-size: 12px;
    }
    .s_fa_size_13::before {
        font-size: 13px;
    }
    .s_fa_size_14::before {
        font-size: 14px;
    }
    .s_fa_size_15::before {
        font-size: 15px;
    }
    .s_fa_size_16::before {
        font-size: 16px;
    }
    .s_fa_size_17::before {
        font-size: 17px;
    }
    .s_fa_size_18::before {
        font-size: 18px;
    }
    .s_fa_size_19::before {
        font-size: 19px;
    }
    .s_fa_size_40::before {
        font-size: 20px;
    }
    .s_fa_size_21::before {
        font-size: 21px;
    }
    .s_fa_size_22::before {
        font-size: 22px;
    }
    .s_fa_size_23::before {
        font-size: 23px;
    }
    .s_fa_size_24::before {
        font-size: 24px;
    }
    .s_fa_size_25::before {
        font-size: 25px;
    }
    .s_fa_size_26::before {
        font-size: 26px;
    }
    .s_fa_size_27::before {
        font-size: 27px;
    }
    .s_fa_size_28::before {
        font-size: 28px;
    }
    .s_fa_size_29::before {
        font-size: 29px;
    }
    .s_fa_size_30::before {
        font-size: 30px;
    }
    .s_fa_size_31::before {
        font-size: 31px;
    }
    .s_fa_size_32::before {
        font-size: 32px;
    }
    .s_fa_size_33::before {
        font-size: 33px;
    }
    .s_fa_size_34::before {
        font-size: 34px;
    }
    .s_fa_size_35::before {
        font-size: 35px;
    }
    .s_fa_size_36::before {
        font-size: 36px;
    }
    .s_fa_size_37::before {
        font-size: 37px;
    }
    .s_fa_size_38::before {
        font-size: 38px;
    }
    .s_fa_size_39::before {
        font-size: 39px;
    }
    .s_fa_size_40::before {
        font-size: 40px;
    }
    .s_fa_size_41::before {
        font-size: 41px;
    }
    .s_fa_size_42::before {
        font-size: 42px;
    }
    .s_fa_size_43::before {
        font-size: 43px;
    }
    .s_fa_size_44::before {
        font-size: 44px;
    }
    .s_fa_size_45::before {
        font-size: 45px;
    }
    .s_fa_size_46::before {
        font-size: 46px;
    }
    .s_fa_size_47::before {
        font-size: 47px;
    }
    .s_fa_size_48::before {
        font-size: 48px;
    }
    .s_fa_size_49::before {
        font-size: 49px;
    }
    .s_fa_size_50::before {
        font-size: 50px;
    }
}

.trade_table_tr:nth-child(even) {
    background: #f9f9f9;
}

.trade_table_ttl,
.trade_table_txt {
    padding: 12px 16px;
    line-height: 1.4;
	font-weight: 600;
    color: #000;
}

.trade_table_ttl {
    text-align: left;
    border-right: 1px #ddd solid;
}

@media screen and (max-width:768px) {
    .delivery_table tr .trade_table_ttl,
    .delivery_table tr .trade_table_txt,
    .trade_return tr .trade_table_ttl,
    .trade_return tr .trade_table_txt {
        border: none;
        display: block;
        width: 100%;
    }
    .delivery_table tr .trade_table_ttl,
    .trade_return tr .trade_table_ttl {
        padding-bottom: 6px;
    }
    .delivery_table tr .trade_table_txt,
    .trade_return tr .trade_table_txt {
        padding-top: 6px;
    }
    .fs_16 {
        font-size: 1rem;
    }
}
