/* CSS Document */

.clear {
    clear: both;
}

.font_red {
    color: #ff2a00;
}

.font_ul {
    text-decoration: underline;
}

.font_ulb {
    font-weight: bold;
    text-decoration: underline;
}

.font_20 {
    font-size: 20px;
}

.padding20 {
    margin: 0 auto;
    padding: 0 0 20px 0;
}

.center {
    text-align: center !important;
}

.member-point {
    color: #009e96;
}

ol.terms_main_description_inner {
    list-style: decimal;
}

ol.terms_main_description_inner li {
    list-style: decimal;
    margin: 0px auto 0px 1em;
    list-style-position: outside;
}

ul.terms_main_description_inner {
    list-style: disc;
}

ul.terms_main_description_inner li {
    list-style: disc;
    margin: 0px auto 0px 1em;
    list-style-position: outside;
}

ol.ol01 {
    list-style: decimal;
}

ol.ol01 li {
    list-style: decimal;
    margin: 0px auto 18px 1em;
    padding: 18px 0 0 0;
    list-style-position: outside;
}

section.index-news {
    margin: 0 auto 50px;
    text-align: right;
}

.img_white {

    padding: 5px;
    background: #fff;
}

.new-item {
    margin: 0 auto;
    max-width: 1130px;
}

.btn02 {
    padding: 15px 60px;
    background: #009e96;
    margin-bottom: 5px;
    color: #fff;
    align-items: center;
    font-size: 18px;
    border-radius: 4px;
    text-decoration: none !important;
}

section.new-item h2 {
    max-width: 1100px;
    margin: 0 auto 24px;
    text-align: center;
}

/* 前への矢印 */
.swiper-button-prev {
    left: 0px !important;
    padding: 7px;
    background: rgba(0, 0, 0, 0.5);
}

/* 次への矢印 */
.swiper-button-next {
    right: 0px !important;
    padding: 7px;
    background: rgba(0, 0, 0, 0.5);
}

.swiper-wrapper {
    /*
    margin-left: 15px !important;
    */
}

.main-visual .bx-wrapper {
    margin-bottom: 0px;
    background: #f8f4ee;
}

.loop-shop-banner img {
    width: 100%;
}

section.banner {
    max-width: 1100px;
    width: 95%;
    margin: 50px auto 0;
    text-align: center;
}

.top-wrap section.banner {
    width: 100%;
    margin: 0px auto 60px;
    text-align: center;
}

.iframe_wrap {
    margin: 0 auto 30px auto;
}

/*
iframe {
width: 100%;
height: 450px;
}
*/
.fs-l-product .margin5 {
    margin: 0 auto 5px auto;
}

.header-news-wrap {
    display: none;
}

ul.global_main .ul_login {
    text-align: right;
}

ul.global_main .ul_login li {
    width: auto;
    margin: 0 auto;
    text-align: right;
    padding: 5px 10px 0 0;
    line-height: 130%;
}

.box02 {
    width: 800px;
    margin: 0 auto 60px;
    padding: 0;
    text-align: left;
}

.box02 p {
    margin: 0 auto 18px;
    padding: 0;
}

.section h4 {
    margin: 0 auto 30px auto;
    padding: 10px 0 0 0;
    font-size: 22px;
    text-align: center;
    font-weight: 600;
}

.section .center {
    text-align: center;
}

.container {
    position: relative;
}

.container img {

    display: block;
    width: 100%;
}

.container p {
    width: 100%;
    position: absolute;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.7);
    font-size: 18px;
    color: #fff;
    padding: 12px 12px;
    margin: 0 auto;
    text-align: right;
    line-height: 100%;
}

.item-list-special_display {
    display: none;
}

.category-image {
    display: none;
}


/****  footer  ****/
.footer01 {
    margin: 30px auto 0;
    padding: 18px 0;
    line-height: 100%;
    background: #f2f2f2;
    color: #000000;
    font-weight: bold;
}

.footer02 {
    margin: 0 auto;
    padding: 30px 0 0px;
    background: #1b1b1b;
    color: #fff;
    font-size: 12px;
}

.inner-block {
    max-width: 1300px;
    width: 100%;
    margin: 0 auto;
    padding: 0px 0 0 0;
    text-align: center;
}

.footer02 .cont {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 10px 0 0 0;
}

.footer02 .cont-item {
    display: block;
    width: calc(100% / 4);
}

.footer02 .nav a {
    display: block;
    color: #fff;
}

.footer02 .nav .ttl {
    display: block;
    margin: 0;
    font-size: 14px;
    font-weight: bold;
    text-align: left;
}

.footer02 .nav .ttl:first-child {
    margin-top: 0;
}

.footer02 .nav .ttl + .ttl {
    margin-top: 10px;
}

.footer02 .nav ul {
    display: block;
    line-height: 1.83333;
}

.footer02 .nav li {
    display: block;
    text-align: left;
    line-height: 1.83333;
}

.footer02 .nav li:first-child {
    margin-top: 0;
}

.footer02 .nav li ul {
    margin: 0 0 0 2em;
}

.footer02 .nav li li {
    position: relative;
}

.footer02 .nav li li:before {
    position: absolute;
    top: 50%;
    left: -10px;
    content: "";
    display: block;
    width: 4px;
    height: 1px;
    background-color: #fff;
}


/****  商品詳細 *****/

.fs-l-product img {
    width: 100%;
}

.fs-l-product p {
    margin: 0 auto 25px auto;
    padding: 0;
    text-align: left;
}

.fs-l-product h2 {
    margin: 0 auto 30px;
    padding: 10px 0 0 0;
    text-align: left;
    font-size: 170%;
    font-weight: 600;
    line-height: 1.9;
}

.fs-l-product h3 {
    margin: 0 auto 20px auto;
    padding: 20px 0 0 0;
    font-size: 130%;
    text-align: left;
    font-weight: 400;
    line-height: 190%;
}

.fs-l-product h6 {
    margin: 0 auto 25px auto;
    padding: 0px 0 0 0;
    font-size: 12px;
}

.fs-l-product .normal_image {
    width: 240px;
}

.fs-l-product .trim_image {
    margin: 0 auto 10px;
    text-align: left;
}


.fs-l-product .trim_image img {
    width: 330px;

    height: 330px;
    object-fit: cover;
}

/*
.trim_image {
width: 100%;
margin: 0 auto 18px;
max-width: 330px;
text-align: left;
}


.trim_image img {
height: 330px;
object-fit: cover;
}
*/
/*
.trim_image {
width: 100%;
margin: 0 auto 18px;
max-width: 330px;
position: relative;
}

.trim_image::before {
content: "";
display: block;
padding-top: 100%;
}

.trim_image img {
width: 100%;
height: 100%;
position: absolute;
top: 0;
object-fit: cover;
}
*/
.table_size {
    width: 100%;
    margin: 10px auto 20px;
    table-layout: fixed;
    text-align: center;
}

.table_size th {
    padding: 12px 0;
    background: #f2f2f2;
    border-bottom: 1px solid #f2f2f2;
}


.table_size td {
    padding: 12px 0;
    border-bottom: 1px solid #f2f2f2;
}

.item-contact {
    text-align: center;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.item-contact:before {
    font-family: 'Material Icons Outlined';
    content: "\e158";
    justify-content: center;
    font-size: 20px;
}

.fs-l-product .cart-btn {
    width: 100%;
    padding: 5px 0;
    background: #009e96;
    margin-bottom: 5px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 17px;
}

.fs-l-product .cart-btn:before {
    font-family: 'Material Icons Outlined';
    content: "\e8cc";
    color: #fff;
    font-size: 21px;
}

.item-contact a {
    text-decoration: none;
}







nav.global-nav-sp {
    display: none;
}

.hamburger {
    display: none;
}


.pc_only {
    display: block !important;
}

.sp_only {
    display: none !important;
}

.pc_only_head {
    display: block;
}

.sp_only_head {
    display: none;
}

#page_top_detail,
#page_top {
    position: fixed;

    right: 15px;
    bottom: 70px;
    cursor: pointer;
}

#page_top_detail a,
#page_top a {
    position: relative;
    display: block;
    /*
    text-decoration: none;
    */
}

/*
.page_top_btn {
position: fixed;
bottom: 10px;
right: 10px;
font-weight: bold;
padding: 0.7em;
text-align: center;
background: #848484;
color: #fff;
transition: 0.3s0;
}


.page_top_btn:hover {
background: rgb(132, 132, 132, 0.8);
color: #fff;
}
*/
#page_top {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    background: #848484;
    opacity: 0.6;
    border-radius: 50%;
}

/* Font Awesome */
#page_top::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f106';
    font-size: 40px;
    color: #ffffff;
    position: absolute;
    width: 30px;
    height: 60px;
    line-height: 165%;
    /*
    top: -7px;
    */
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}

.global_main {
    color: #1c1c1b;
    vertical-align: middle;
}

.global_main .icon {
    font-size: 35px;
    color: #fff;
}

#drop2 {
    padding: 0 35px 0 12px;
    font-size: 1rem;
    cursor: pointer;
    position: relative;
}

#drop2:after {
    position: absolute;
    top: 5px;
    font-family: 'Material Icons';
    content: "\e313";
    padding-left: 5px;
}

.dropdwn_menu {
    width: 190px;
    display: none;
    position: absolute;
    margin: 12px auto;
    padding: 8px 15px 7px;
    background: #fff;
    z-index: 10;
    font-weight: normal;
}

.dropdwn {
    color: #7e6b5a;
}

.dropdwn_menu li {
    width: 100%;
}

.dropdwn_menu li a {
    padding: 5px 0;
    margin: 0;
    display: block;
    color: #7e6b5a;
}







.banner01 {
    width: 100%;
    margin: 0 auto 40px;
    padding: 20px 0px 10px;
    background: #ffffff;
    text-align: center;
}

.lineup-item {
    max-width: 1300px;
    width: 94%;
    margin: 0 auto;
    text-align: center;
}

.margin_bottom10 {
    margin-bottom: 10px !important;
}

.header_banner {
    padding: 12px 0;

}

.fixed .header_banner {
    /*
    background: rgba(247, 244, 238, 0.8);
    */
}





/*===================================
アコーディオンのためのcss
===================================*/

/*アコーディオン全体*/
.accordion-area {
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin: 0 auto;
    font-size: 14px;
}

.accordion-area li {
    margin: 10px 0;
}

.accordion-area section {
    padding-bottom: 1px;
    /*
    background: #fff;
    */
}

/*アコーディオンタイトル*/
.title {
    position: relative;
    /*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    display: flex;
    font-weight: normal;
    padding: 12px 50px 12px 0px;
    transition: all .5s ease;
    text-align: left;
}

.title p {
    padding-top: 12px;
}

.subtitle {
    margin: 0 auto 15px;
    padding: 10px 0 0 0;
    font-size: 18px;
    font-weight: 600;
}

.qa {
    display: inline-block;
    font-size: 30px;
    padding-right: 10px;
}

.qa p {
    display: inline-block;
}

/*アイコンの＋と×*/
.title::before,
.title::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #000000;

}

.title::before {
    top: 48%;
    right: 15px;
    transform: rotate(0deg);

}

.title::after {
    top: 48%;
    right: 15px;
    transform: rotate(90deg);

}

/*　closeというクラスがついたら形状変化　*/
.title.close::before {
    transform: rotate(45deg);
}

.title.close::after {
    transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.box {
    display: none;
    /*はじめは非表示*/
    background: #f2f2f2;
    margin: 0 0 15px 0;
    padding: 18px 25px;
    text-align: left;
    color: #000000;
}

/*===================================
スマホメニュー
===================================*/
/* ハンバーガーメニューの大きさ指定 */
#global-nav-icon {
    position: relative;
    width: 18px;
    height: 12px;
    cursor: pointer;
}

#global-nav-icon > span {
    width: 100%;
    height: 1px;
    left: 0;
    display: block;
    background: #000;
    position: absolute;
    transition: transform .6s ease-in-out;
}

#global-nav-icon > span:nth-child(1) {
    top: 0;
}

#global-nav-icon > span:nth-child(2) {
    top: 50%;
    transform: translatey(-50%);
}

#global-nav-icon > span:nth-child(3) {
    bottom: 0;
}

/* ハンバーガーメニュークリックで、「×」マークにアニメーション */
.is-open #global-nav-icon > span {
    background: #fff;
}

.is-open #global-nav-icon > span:nth-child(1) {
    top: 50%;
    transform: rotate(45deg) translatey(-50%);
}

.is-open #global-nav-icon > span:nth-child(2) {
    width: 0;
}

.is-open #global-nav-icon > span:nth-child(3) {
    top: 50%;
    transform: rotate(-45deg) translatey(-50%);
}

.is-open #global-nav-icon {
    z-index: 1000;
    /*
    transform: translateX(210px);
    */
}

/* 重なり順指定 
#global-nav-icon {
z-index: 1000;
}
*/
#main {
    position: relative;
    z-index: 990;
}

/* 中身メニュー、初期は非表示 */
#nav-content {
    z-index: 900;
    overflow: auto;
    width: 100%;
    height: 100%;
    background: #000;
    color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    text-align: center;
    opacity: 0;
    /*
    transition: opacity .6s ease, visibility .6s ease;
    */
    transition: all 0.6s;
}

#nav-content ul {
    list-style: none;
}

#nav-content a {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 8px 0;
    transition: opacity .6s ease;
    pointer-events: none;
    border-right: 1px solid #000;
}

#nav-content a:hover {
    opacity: 0.6;
}

/* 初期表示では左画面外にスライドさせておく */
#nav-content {
    transform: translateX(-100%);
    top: 0;
    left: 0;
}

/* is-openクラスが追加されたら、スライドを戻す */
.is-open #nav-content {
    transform: translateX(0);
}

/* is-openクラスが追加されると、メニューが表示される */
.is-open {
    overflow: hidden;
}

.is-open #nav-content {
    z-index: 999;
    visibility: visible;
    opacity: 1;
    padding: 50px 35px;
}

.is-open #nav-content a {
    pointer-events: auto;
}



#nav-content {
    width: 100%;
}

/* 透過指定 
.overlay {
background: rgba(0, 0, 0, 0.5);
height: 100vh;
}
*/
.overlay {
    content: "";
    display: block;
    width: 0;
    height: 0;
    background-color: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    opacity: 0;
    transition: opacity .5s;
}

.overlay.open {
    width: 100%;
    height: 100%;
    opacity: 1;
}







.float_left {
    margin: 0 20px 0 auto;
    padding: 0;
    float: left;
}

.float_right {
    margin: 0 auto;
    padding: 0;
    float: right;
}

.ul_gallery {
    margin: 12px auto 10px;
    text-align: center;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 15px;
    grid-template-rows: 1fr;
}

.ul_gallery li {
    list-style: none;
    text-align: center;
    /*
    display: table-cell;
    */
}

#main-image1,
#main-image2,
#main-image3,
#main-image4,
#main-image5,
#main-image6,
#main-image7,
#main-image8 {
    /*
    width: 353px;
    */
    width: 100%;
}

.gallery {
    width: 100%;
    line-height: 1;
}

.thumbnail1,
.thumbnail3,
.thumbnail4,
.thumbnail5,
.thumbnail6,
.thumbnail7,
.thumbnail8 {
    width: 100%;
    /*
    width: 95%;
    height: 90px;
    */
}

.thumbnail2 {
    max-height: 98.11px;
}

.table_gallery {
    table-layout: fixed;
}

.table_gallery tr {
    display: flex;
}

.table_gallery td {
    width: 30%;
}

.paddingright {
    padding-right: 8px;
}

.box01 {
    margin: 0 auto 40px;
    padding: 0;
    text-align: left;
}

.margin18 p {
    margin: 0 auto 18px;
}

.gallery_box {
    display: flex;
    margin-right: -40px;
}

.gallery_item {
    width: 34%;
    padding-right: 40px;
    box-sizing: border-box;
}

/* -----------------------------------------------------------------
reset
----------------------------------------------------------------- */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
address,
em,
img,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
    margin: 0;
    padding: 0;
    border: 0;

    font-size: 100%;
    font: inherit;

    vertical-align: baseline;
    box-sizing: border-box;
}

h1 {
    margin: 0 auto 10px;
    text-align: center;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
    border: 0;
    outline: none;
    padding: 0;
    background: transparent;
}

body {
    line-height: 1;
    font-family: ITC Berkeley Old Style, serif;
    /*
    font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    */
    /*
    font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    */
}

ol,
ul,
li {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

p,
div {
    word-break: break-all;
}

pre {
    text-align: left;
    white-space: pre;
    white-space: pre-wrap;
    white-space: pre-line;
}

img[width="0"],
img[width="1"] {
    display: none;
}

/*
h2.section-title {
font-weight: bold;
text-align: center;
color: #000000;
}

h2.section-title {
display: flex;
align-items: center;
}

h2.section-title:before,
h2.section-title:after {
content: "";
height: 1px;
flex-grow: 1;
background-color: #f0e7d8;
}

.lineup-item h2.section-title:before,
.lineup-item h2.section-title:after {
height: 0px;
background: none;
}

.news-head h2.section-title:before,
.news-head h2.section-title:after {
height: 0px;
background: none;
}


h2.section-title:before {
margin-right: 1rem;
}

h2.section-title:after {
margin-left: 1rem;
}
*/
.bx-wrapper {
    box-shadow: none !important;
}

ul.global_main li {
    padding: 0;
    width: 33%;
    text-align: center;
    display: inline-block;
}

ul.global_main .logo img {
    /*
    width: 33%;
    */
}

@media screen and (max-width:768px) {

    .sale-rate {
        margin-top: 8px;
        display: inline-block;
        margin: 0;
    }

    .before-price {
        display: inline-block;

    }

    a {
        text-decoration: none;
    }

    .font_20 {
        font-size: 17px;
    }

    /*
    .slick-dotted.slick-slider {
    margin-bottom: 45px !important;
    padding-top: 30px;
}
    */
    .slick-dots {
        bottom: 0px !important;
    }

    .lineup-item {
        width: 90%;

    }

    #page_top {
        width: 40px;
        height: 40px;
        right: 10px;
        bottom: 65px;
    }

    /* Font Awesome */
    #page_top::before {
        font-size: 30px;
        width: 20px;
        height: 50px;
        top: 0px;
    }

    section.banner {
        width: 90%;
        margin: 10px auto 50px;
    }

    .top-wrap section.banner {
        margin: 0px auto 40px;

    }

    .section h4 {
        margin: 0 auto 20px auto;
        padding: 10px 0 0 0;
        font-size: 18px;

    }

    .section h4 img {
        width: 35%;
    }

    .iframe_wrap {
        position: relative;
        width: 100%;
        padding: calc(360 / 640 * 100%) 0 0;
    }

    iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    ul.global_main .logo img {
        /*
        width: 33%;
        */
        max-height: 28px;

    }

    /*アコーディオン全体*/
    .accordion-area {

        width: 100%;

    }

    .wrap .swiper-button-next,
    .wrap .swiper-button-prev {
        height: 20px;
        margin-top: -65px;
        display: none;
    }

    .box01 {
        font-size: 14px;
    }

    #page_top {
        right: 5px;
        bottom: 70px;
    }

    /*
    .detail_page #page_top {
    right: 5px;
    bottom: 125px;
}
    */
    #page_top_detail {
        right: 5px;
        bottom: 125px;
    }

    #page_top_detail img {
        width: 70%;
    }

    .title {
        padding: 7px 40px 7px 0px;
    }

    .title p {
        padding-top: 8px;
    }

    /*アコーディオンで現れるエリア*/
    .box {
        font-size: 14px;
    }

    .lineup-item h2.section-title {
        width: 90%;
        margin: 0 auto 20px;
        text-align: center;
    }

    .footer01 {
        margin: 30px auto 0;
        padding: 15px 0;
        line-height: 100%;
        font-size: 14px;
    }

    .footer02 .nav .ttl {
        font-size: 13px;
    }

    .banner01 {
        margin: 0 auto 30px;
        padding: 0px 0px;
    }

    .banner01 section {
        margin-bottom: 0;
    }

    .box02 {
        width: 100%;
        margin: 0 auto 50px;
        padding: 0;
        text-align: left;
    }

    .box02 p {
        margin: 0 auto 10px;

    }

    /****  footer *****/
    .inner-block {
        width: 80%;
        margin: 0 auto 20px;
    }

    .footer02 .nav a {
        text-decoration: none;
    }

    .footer02 .cont {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 100%;
        justify-content: space-between;
    }

    .footer02 .cont-item {
        display: block;
        width: 100%;
    }

    .footer02 .cont-item:nth-child(n+3) {
        margin-top: 10px;
    }

    .footer02 .nav ul {
        margin: 0;
        /*
        font-size: 10px;
        */
    }

    .footer02 .nav ul + .ttl {
        margin-top: 14px;
    }

    .footer02 .nav li {
        /*
        font-size: 10px;
        */
    }

    .footer02 img {
        width: 28%;
    }

    /****  商品詳細 *****/

    .fs-l-product img {
        width: 100%;
    }

    .fs-l-product p {
        margin: 0 auto 25px auto;
        padding: 0;
        text-align: left;
    }


    .fs-l-product h2 {
        font-size: 19px;
        margin: 0 auto 20px;
        padding: 10px 0 0 0;
    }

    .fs-l-product h3 {
        margin: 0 auto 10px auto;
        padding: 20px 0 0 0;
        font-size: 16px;
        text-align: left;
        font-weight: 400;
    }

    .fs-l-product .normal_image {
        width: auto;
        max-width: 240px;
    }

    .fs-l-product .trim_image {
        margin: 0 auto 10px;
        text-align: left;
    }


    .fs-l-product .trim_image img {
        width: 330px;

        height: 330px;
        object-fit: cover;
    }


    .table_size {
        width: 100%;
        table-layout: fixed;
        text-align: center;
    }



    .content {
        /*
        margin-top: 70px;
        */
        padding-top: 30px;
    }

    .top-wrap .content {
        /*
        margin-top: 20px;
        */
        padding-top: 20px;
    }

    .ul_gallery {
        margin: 10px auto 10px;
    }

    .gallery_box {
        display: block;
        margin: 0 auto;
    }

    .gallery_item {
        width: 100%;
        margin: 0;
        padding: 0 0 10px 0;
    }

    .ul_gallery li {
        padding-top: 5px;
        margin: 0;
    }


    .paddingright {
        padding-right: 5px;
    }


    .subtitle {
        margin: 0 auto 15px;
        padding: 10px 0 0 0;
        font-size: 16px;
    }

    .container p {
        padding: 7px 3px;
        font-size: 12px;
    }

    img {
        max-width: 100%;
        width: auto;
        height: auto;
        vertical-align: bottom;
    }

    #drop {
        margin: 0 auto;
        padding: 1em 0;
        font-size: 0.9rem;
        cursor: pointer;
        color: #000;
        text-align: left;
        background: none;
    }

    /*
    .category-list {
    width: 27vw;
    position: relative;
    padding-bottom: 20px;
}
    */
    #drop:after {
        position: initial;
        top: 5px;
        font-family: 'Material Icons';
        content: "\e5cc";
        padding-left: 5px;
    }

    ul.dropdwn_menu {
        position: initial;
        margin: 5px auto;
        padding: 5px 10px;
        width: 95% !important;
        border-top: 1px solid #fff;
    }

    ul.dropdwn_menu li {
        width: 95%;
    }

    .drawer-dropdown-menu {
        display: none;
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 0;
        background-color: #fff;
    }


    .main-visual .swiper-container {
        padding-top: 55px;
        margin-bottom: 5px;
    }

    .header-cart-count {
        position: absolute;
        left: 15px;
        top: -20px;
        width: 15px;
        height: 15px;
        line-height: 15px;
        right: 0px;
        background: #1c1c1b;
        color: #fff;
        border-radius: 50%;
        text-align: center;
        font-size: 10px;
        padding-top: 0px;
    }

    .global_main .icon {
        color: #fff;
        font-size: 25px;
    }

    .global_main li,
    ul.global_main li {
        /*
        width: 20%;
        */
    }

    .global_main .logo {
        /*
        width: 100%;
        */
        padding-top: 5px;
    }

    .account-nav {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        list-style: none;
    }

    .global_main .account-nav li,
    ul.global_main .account-nav li {
        width: auto;
        /* width: 28%; */
    }

    .logo {
        margin: 0 auto;
        padding: 0px;
        text-align: left;
    }

    .logo img {
        width: auto;
        /*
        padding: 5px 10px 0px 10px;
        */
    }


    .pc_only {
        display: none !important;
    }


    .sp_only {
        display: block !important;
    }

    ul.global_main .ul_login li.pc_only_head {
        display: none;
    }

    .sp_only_head {
        display: block;
    }

    .header_banner {
        display: none;
    }

    /*　ハンバーガーボタン　*/
    .hamburger {
        display: block;
        position: relative;

        width: 42px;
        height: 42px;
        cursor: pointer;
        text-align: center;
    }

    .hamburger span {
        display: block;
        position: absolute;
        width: 30px;
        height: 2px;
        left: 6px;
        background: #555;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    .hamburger span:nth-child(1) {
        top: 10px;
    }

    .hamburger span:nth-child(2) {
        top: 20px;
    }

    .hamburger span:nth-child(3) {
        top: 30px;
    }

    /* ナビ開いてる時のボタン */
    .hamburger.active span:nth-child(1) {
        top: 16px;
        left: 6px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .hamburger.active span:nth-child(2),
    .hamburger.active span:nth-child(3) {
        top: 16px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    nav.globalMenuSp {

        position: fixed;
        z-index: 2;
        left: 0;
        color: #000;
        background: #fff;
        text-align: center;
        transform: translateY(-100%);
        transition: all 0.6s;
        width: 100%;
    }

    nav.globalMenuSp ul {
        background: #ccc;
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }

    nav.globalMenuSp ul li {
        list-style-type: none;
        padding: 0;
        width: 95%;
        border-bottom: 1px solid #fff;
    }

    nav.globalMenuSp ul li:last-child {
        padding-bottom: 0;
        border-bottom: none;
    }

    nav.globalMenuSp ul li:hover {
        background: #ddd;
    }

    nav.globalMenuSp ul li a {
        display: block;
        color: #000;
        padding: 1em 0;
        text-decoration: none;
    }

    /* このクラスを、jQueryで付与・削除する */
    nav.globalMenuSp.active {
        transform: translateY(0%);
        display: block;
    }

    /* -----------------------------------------------------------------
    module
    ----------------------------------------------------------------- */
    body {
        background: #f8f4ee;
        /*
        background: #F8F4EE;

        font-size: 14px;
        */
        line-height: 1.6;
        color: #000;
        height: 100%;
        text-align: center;
        position: relative;
        width: 100%;
    }

    a {
        color: #000;
        /*
        text-decoration: underline;
        transition: .2s;
        */
    }

    a:hover {
        opacity: 0.6;
        text-decoration: none;
    }

    a[class$="btn"],
    a.header-incart-switch {
        text-decoration: none !important;
    }

    input[type="text"],
    select {
        /*
        border: 1px solid #fff;
        */
        border-radius: 3px;
        padding: 5px;
        font-size: 16px;
        box-sizing: border-box;
        background: #fff;
    }

    .select-wrap-for-yaji {
        position: relative;
    }

    .select-wrap-for-yaji::after {
        content: "\f107";
        display: inline-block;
        position: absolute;
        right: 8px;
        top: 16px;
        color: #222;
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
        line-height: 1em;
    }

    select {
        width: 100%;
        font-size: 14px;
        padding: 5px;
        border: solid 1px #ccc;
        /*
        margin-bottom: 8px;
        border: solid 1px #222;
        */
    }

    .pre-wrap {
        word-break: break-all;
    }

    header {
        width: 100%;
        margin: 0 auto;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
        padding: 0;
        transition: 0.3s;
        background: rgba(255, 255, 255, 0.4);
    }

    .fixed {
        background: rgba(255, 255, 255, 0.8);
    }

    .header-inner-wrap {
        /*
        display: grid;

        grid-template-columns: 40% 1fr auto;
        grid-template-rows: 1fr;
        */
        width: 100%;
        margin: 0 auto;
        height: 55px;
    }

    .shop-name {
        grid-column: 1;
        grid-row: 1;
        padding: 12px;
        align-self: center;
        text-align: left;
    }

    .shop-name a img {
        vertical-align: middle;
        width: 100%;
        max-width: 128px;
        max-height: 34px;
    }

    a.link-btn {
        color: #000000;
        text-decoration: none;
        font-size: 12px;
    }

    .header-section {
        background: #f0efe9;
        padding: 16px 0 32px;
        margin-bottom: 32px;
    }

    .header-section-category {
        display: none;
    }

    .header-category-item {
        /*        display: inline-block; */
    }

    .header-category-item a {
        text-align: left;
        padding: 12px;
        font-size: 1rem;
        display: block;
        text-decoration: none;
        color: #000;
    }

    .header-category-child-list a:hover {
        background: #f0efe9;
    }

    .header-category-child-list li {
        display: inline-block;
    }

    .header-category-switch.hover {
        background: #fff;
    }

    .header-category-child-list li::after {
        background-color: #f0efe9;
    }

    .global-nav {
        /*
        grid-column: 3;
        grid-row: 1;
        text-align: right;
        display: grid;
        */
        align-items: center;
        font-size: 12px;
        padding-right: 0;
        height: 55px;

    }

    .global-nav ul li {
        vertical-align: middle;
        /*
        display: inline-block;
        */
    }

    .global-nav ul li a {
        text-decoration: none;
        /*
        color: #fff;
        */
    }

    .global_main {
        display: flex;
        padding: 10px 0 5px 0;
        box-sizing: border-box;
    }

    .global_main li {
        width: 30%;
        display: inline;
    }

    .global_main .right {
        text-align: right;
    }

    .account-nav {
        text-align: right;
        font-size: 14px;
        margin: 10px auto 0;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        list-style: none;
    }

    ul.account-nav li {
        width: auto;
        text-align: left;
        padding-left: 10px;
    }

    .account-nav li a {
        color: #fff;
        text-decoration: none;
    }

    .account-nav li a span {
        display: block;
        font-size: 10px;
    }

    .account-nav p {
        display: inline-block;
    }



    .member-name em {
        /*
        margin-right: 4px;
        */
    }

    .member-status {
        margin-left: 8px;
    }

    .header-cart {}

    .header-cart .header-incart-switch {

        border-radius: 6px;
        position: relative;
        color: #222;
    }

    .header-cart .header-incart-switch2 {

        border-radius: 6px;
        position: relative;
    }



    .header-cart-btn {
        grid-column: 3;
        grid-row: 1;
        color: #222;
        display: grid;
        align-items: center;
        padding: 12px;
        font-size: 22px;
        position: relative;
    }

    .header-drawer-btn {
        grid-column: 4;
        grid-row: 1;
        color: #222;
        display: grid;
        align-items: center;
        padding: 12px;
        font-size: 22px;
    }

    #drawer-btn {
        display: inherit;
    }

    #drawer-btn i {
        vertical-align: top;
    }

    /* モジュール ヘッダー用ニュース */
    .news-swiper-container {
        height: 2.4em;
        overflow: hidden;
    }

    /* -----------------------------------------------------------------
    main
    ----------------------------------------------------------------- */
    .wrap {
        margin-top: 40px !important;
    }

    .main-visual {
        width: 100%;
        margin-top: 0;
    }

    .main-visual img {
        max-width: 100%;
    }

    .bx-wrapper .bx-controls-direction a {
        transition: none;
    }

    .wrap {
        width: 90%;
        margin: 8px auto;
        align-items: flex-start;
    }

    .top-wrap {

        margin-top: 0px !important;

    }

    .bx-wrapper {
        width: 100%;
        margin: 0 auto;
        box-shadow: none;
        border: none;
    }

    .bx-wrapper {
        overflow: hidden;
    }

    .bx-viewport {
        overflow: visible !important;
        width: 100%;
        margin: 0 auto;
    }

    #wrap .bx-prev {
        left: 50% !important;
        margin-left: -516px;
    }

    #wrap .bx-next {
        right: 50% !important;
        margin-right: -516px;
    }

    .bx-wrapper .bx-caption {
        margin-bottom: -100px;
        transition: 0.4s;
        width: 100%;
        left: 0;
        text-align: center;
        pointer-events: none;
        width: 94%;
        margin: 0 3% -100px;
        padding: 4%;
        border-radius: 8px;
        box-sizing: border-box;
    }

    .bx-wrapper .bx-caption span {
        font-size: 18px;
        font-weight: bold;
    }

    .drawer-display {
        left: 0 !important;
    }

    .side {
        width: 100%;
        max-width: auto;
        float: none;
        position: static;

    }

    /*
    .side {
    position: fixed;
    top: 0;
    left: -80%;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.9);
    width: 80%;
    transition: .1s;
    padding: 8px;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    color: #fff;
}
    */
    #background-drawer-btn {
        width: 100%;
        background: rgba(0, 0, 0, 0.5);
        position: fixed;
        top: 0;
        left: -100%;
        height: 100vh;
        z-index: 100;
        transition: .1s;
    }

    .background-drawer-btn-none {
        left: 0 !important;
    }

    .side section a img {
        width: 100%;
    }

    .side-section {
        padding: 32px 0;
        margin-bottom: 32px;
    }

    .login-wrap {
        margin-bottom: 18px;
    }

    .login-box {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 12px;
        padding: 12px 0;
    }

    .login-box a {
        display: inline-block;
        width: 100%;
        border-radius: 4px;
        padding: 8px 0;
        text-decoration: none;
        font-size: 14px;
        background: #fff;
        color: #222;
    }

    .drawer-contact-box a {
        display: inline-block;
        color: #fff;
        text-decoration: none;
        border: solid 1px #fff;
        border-radius: 4px;
        width: 100%;
        padding: 4px;
    }

    .side-category-list {
        margin-bottom: 24px;
    }

    .side-category-item {
        position: relative;
    }

    .side-category-item a {
        text-align: left;
        padding: 12px;
        font-size: 0.9rem;
        display: block;
        color: #fff;
        text-decoration: none;
    }

    .side-category-item a:hover {
        background: #000000;
        opacity: 1.0;
    }

    .side-category-item::after {
        content: "";
        display: block;
        width: 90%;
        height: 1px;
        background-color: #fff;
        position: absolute;
        bottom: -1px;
        left: 0;
        right: 0;
        margin: 0 auto;
    }

    .side-category-item:hover .side-category-child-list {
        opacity: 1;
        visibility: visible;
    }

    .side-category-child-list {
        position: absolute;
        right: -160px;
        top: -4px;
        width: 160px;
        z-index: 10;
        background: #fff;
        border: 4px solid #f0efe9;
        border-left: none;
        opacity: 0;
        visibility: hidden;
        display: none;
    }

    .side-category-child-list a:hover {
        background: #f0efe9;
    }

    .side-category-switch.hover {
        background: #fff;
    }

    .side-category-child-list li::after {
        background-color: #f0efe9;
    }

    .side-search li {
        text-align: left;
        font-size: 0.9rem;
        padding: 4px 16px;
    }

    .side-search li span {
        margin: 0 4px;
    }

    .side-search label {
        display: block;
        margin-bottom: 4px;
    }

    .side-search input {
        width: 100%;
    }

    .side-search input.side-search-price {
        width: 40%;
    }

    .side-search .side-search-price {
        width: 25%;
    }

    .side-search-btn {
        display: block;
        padding: 4px 12px;
        color: #222 !important;
        border-radius: 4px;
        margin: 16px auto 0;
        width: 60%;
        background: #fff !important;
    }

    .side-section-others {
        padding: 0;
    }

    .side-section-btn-wrap {
        margin-bottom: 12px;
    }

    .mailmagazine-btn {
        width: 100%;
        display: block;
        padding: 16px 0;
        font-size: 0.9rem;
        background: #fff;
        color: #222;
        border-radius: 4px;
    }

    .mailmagazine-btn:before {
        padding-right: 8px;
        content: "\f0e0";
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
    }

    .catalog-btn {
        width: 100%;
        display: block;
        padding: 16px 0;
        font-size: 0.9rem;
        background: #fff;
        color: #222;
        border-radius: 4px;
    }

    .catalog-btn:before {
        padding-right: 8px;
        content: "\f518";
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
    }

    /* カレンダーのサイズ設定 */
    .section-side-calendar {
        font-size: 12px;
    }

    .makeshop-calendar1,
    .makeshop-calendar2 {
        width: 100%;
        margin: 0 auto 16px;
        box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
        background: #fff;
    }

    /* テキスト位置・罫線設定 */
    .makeshop-calendar1 th,
    .makeshop-calendar1 td,
    .makeshop-calendar2 th,
    .makeshop-calendar2 td {
        box-sizing: border-box;
        text-align: center;
        border: 1px solid #e6e6e6;
    }

    /* 【曜日】テキストの太さ・背景設定 */
    .makeshop-calendar1 th,
    .makeshop-calendar2 th {
        background: #cccccc;
        font-weight: bold;
        padding: 10px 0;
    }

    /* 【日付】テキストの太さ・背景設定 */
    .makeshop-calendar1 td,
    .makeshop-calendar2 td {
        background: #fff;
        font-weight: bold;
        padding: 4px 0;
    }

    /* 【今日】テキストの太さ・背景設定 */
    .makeshop-calendar1 td.today,
    .makeshop-calendar2 td.today {
        background-color: #222;
        color: #fff;
    }

    /* 【日曜日】の設定 */
    .makeshop-calendar1 th.sunday,
    .makeshop-calendar2 th.sunday {
        color: #000;
        background: #f08080;
    }

    /* 【日曜日】日付の設定 */
    .makeshop-calendar1 tbody td.sunday,
    .makeshop-calendar2 tbody td.sunday {
        background: #f0808073;
        color: #000;
    }

    /* 【土曜日】の設定 */
    .makeshop-calendar1 th.saturday,
    .makeshop-calendar2 th.saturday {
        color: #000;
        background: #6495ed;
    }

    /* 【土曜日】日付の設定 */
    .makeshop-calendar1 tbody td.saturday,
    .makeshop-calendar2 tbody td.saturday {
        background: #6495ed36;
        color: #000;
    }

    /* 【月曜日】の設定 */
    .monday {
        color: black;
    }

    /* 【火曜日】の設定 */
    .tuesday {
        color: black;
    }

    /* 【水曜日】の設定 */
    .wednesday {
        color: black;
    }

    /* 【木曜日】の設定 */
    .thursday {
        color: black;
    }

    /* 【金曜日】の設定 */
    .friday {
        color: black;
    }

    .section {
        margin-bottom: 20px;
    }

    .section-title {
        font-size: 18px;
        margin-bottom: 20px;
        text-align: left;
    }

    .h2_top {
        padding-top: 10px;
        margin-bottom: 10px;
    }

    .banner-item section a img {
        width: 100%;
        vertical-align: top;
        margin-bottom: 4px;
    }

    /*
    .item-list-wrap {
    display: flex;
    margin-bottom: 24px;
    padding: 0px;
    flex-wrap: wrap;
    justify-content: space-between;
}

    .lineup-item.item-list-wrap {
    display: flex;
    margin-bottom: 24px;
    padding: 0px;
    flex-wrap: wrap;
    justify-content: space-between;
}
    */



    .item-list {
        width: 42vw;
        /*
        width: 48%;
        */
        position: relative;
        margin-bottom: 15px;
    }

    .recommend-item-list {
        width: 42vw;
        /*
        width: 48%;
        */
        position: relative;
    }

    .new-item-list-wrap .item-list {
        width: calc(100% / 2);
    }

    .item-list img {
        max-width: 100%;
    }

    .item-list-image,
    .item-list-image2 {
        position: relative;
    }

    .item-list-image a img {
        /*
        vertical-align:top;
        max-width: 100%;
        */
        width: 42vw;
        height: 42vw;
        object-fit: cover;
    }

    .item-list-image2 a img {

        vertical-align: top;
        max-width: 100%;

    }

    .item-badge {
        position: absolute;
        right: -14px;
        top: -14px;
        width: 60px;
        height: 60px;
        background: #ef3c62;
        color: #fff;
        border-radius: 50%;
        line-height: 60px;
        z-index: 1;
    }

    .item-sale-badge {
        font-size: 0.8rem;
        background: #ef3c62;
        color: #fff;
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 2px 8px;
        top: unset;
        border-radius: unset;
        line-height: unset;
        height: unset;
        width: fit-content;
    }

    .item-soldout-badge {
        background: rgba(0, 0, 0, 0.6);
        width: 100%;
        border-radius: 0;
        top: 0;
        left: 0;
        height: 2em;
        line-height: 2em;
        padding: 0;
    }

    .item-list-info {
        text-align: left;
        font-size: 0.8rem;
        margin-top: 8px;
    }

    .item-list-category-name {
        /*
        margin-bottom: 6px;
        */
    }

    .item-list-category-name a {

        color: #000000;

        text-decoration: none;
        font-size: 10px;
    }

    .recommend-info {
        text-align: left;
        font-size: 0.8rem;
        background: #222;
        padding: 12px;
        position: relative;
        margin: 0;
    }

    .recommend-info-arrow {
        position: absolute;
        top: -22px;
        right: 0;
        width: 0;
        height: 0;
        border: solid 12px #222;
        border-top: solid 12px transparent;
        border-left: solid 12px transparent;
    }

    .recommend-item-name {
        color: #fff;
    }

    .item-list-category-name a i {
        margin: 0 0 0 1em;
        display: none;
    }

    .item-list-name {
        font-size: 13px;
        line-height: 1.4;
        margin-bottom: 0px;
    }

    .item-list-name a {
        text-decoration: none;
        color: #000;
        font-weight: bold;
    }

    .recommend-description {
        color: #fff !important;
    }

    .sale-price-wrap {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .sale-price-wrap .original-price {
        font-size: 12px;
        text-decoration: line-through;
        display: grid;
        align-items: center;
        padding-right: 8px;
    }

    .item-list-price {
        font-size: 14px;
        color: #000000;
        margin-bottom: 5px;
    }

    .item-list-icon-and-point-wrap {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .item-list-point {
        display: none;
        text-align: right;
        font-size: 10px;
    }

    .item-list-point i {
        margin: 0;
    }

    .item-list-original-price {
        font-weight: normal;
        font-size: 0.8rem;
        color: #848484;
        margin-top: 8px;
    }

    .item-list-sale-price {
        color: #ef3c62;
    }

    .item-list-sale-discount-price {
        font-size: 0.8rem;
    }

    .item-list-system-code {
        text-decoration: none;
    }

    .item-list-sale-discount-rate {
        font-size: 0.8rem;
        background: #ef3c62;
        color: #fff;
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 2px 8px;
    }

    .item-list-stock {
        font-weight: bold;
        margin-bottom: 4px;
    }

    .item-stock {
        margin-left: 4px;
    }

    .item-list-description {
        font-size: 0.8rem;
        color: #888;
        margin-top: 4px;
    }

    .item-list-description ::after {
        content: "…";
    }

    .index-title {
        text-align: center;
    }

    .item-list-review {
        display: flex;
        align-items: center;
    }

    .item-list-review .reviewRateStar::before {
        font-size: 1rem;
    }

    .item-list-review-rate {
        margin: 0 8px;
        font-weight: bold;
        font-size: 1rem;
    }

    .item-list-rank {
        position: absolute;
        display: flex;
        width: 45px;
        height: 45px;
        background: #000;
        color: #fff;
        z-index: 999;
        align-items: center;
        justify-content: center;
    }

    .rank-1 {
        background: #D9AE61;
    }

    .rank-2 {
        background: #848484;
    }

    .rank-3 {
        background: #573D1C;
    }

    /******************************** REVIEW */
    .index-review-list .review-list-unit {
        display: flex;
    }

    .index-review-list .review-list-info {
        width: 180px;
        text-align: left;
        font-size: 0.8rem;
        margin-right: 16px;
    }

    .index-review-list .review-list-info img {
        margin: 0 auto;
        max-width: 100%;
        height: auto;
        vertical-align: top;
    }

    .index-review-list .review-list-content-wrap {
        flex: 1;
    }

    .index-review-list .review-list-name,
    .index-review-list .review-score-wrap {
        display: inline-block;
    }

    .index-review-list .reviewRateStar::before {
        font-size: 0.9rem;
    }

    /******************************** NEWS */


    .news-list.index-news-list {
        margin-bottom: 24px;
        width: 100%;
        margin: 0 auto 24px;
    }

    .news-list li {
        padding: 5px 6px;
        text-align: left;
        font-size: 14px;
    }

    .news-list-unit * img {
        width: 100%;
    }

    .news-list-date {
        margin-bottom: 8px;
        font-size: 0.9rem;
        color: #fff;
        background: #1c1c1b;
        padding: 0 1em;
        display: inline-block;
        height: 100%;
    }

    .news-list-detail {
        text-align: left;
        flex: 1;
        align-self: center;
        font-size: 14px;
    }

    .news-list-content {
        margin-top: 8px;
        font-size: 0.8rem;
    }

    .news-list-content a {
        color: #888;
    }

    .news-list-content::after {
        content: "…";
    }

    .news-more {
        text-align: right;
        margin-top: 16px;
        width: 96%;
    }

    .header-news-wrap {
        background: #f1f1f1;
    }

    .header-news-list {
        margin: 58px 0 0 0 !important;
        border: none;
    }

    .header-news-list li {
        display: grid;
        grid-template-columns: auto 1fr;
        padding: 4px;
        border: none;
    }

    .header-news-list li .news-list-date {
        margin-bottom: 0;
    }

    .header-news-list-icon {
        background: #1c1c1b;
        color: #fff;
        width: 2em;
        text-align: center;
        line-height: 2em !important;
        border-radius: 2em;
        margin-right: 0.4em;
        font-size: 14px;
    }

    /* -----------------------------------------------------------------
    category
    ----------------------------------------------------------------- */
    .breadcrumb-wrap {
        margin-bottom: 16px;
    }

    .breadcrumb {
        text-align: left;
        font-size: 0.6rem;
        width: 96%;
        margin: 0px auto;
    }

    .breadcrumb-item {}

    .breadcrumb-item a {
        color: #a0a0a0;
        text-decoration: none;
    }

    .breadcrumb-item::after {
        content: '\f054';
        font-family: 'Font Awesome 5 Free';
        padding: 0 6px 0 12px;
        font-weight: 800;
        color: #a0a0a0;
    }

    .breadcrumb-item:last-child::after {
        display: none;
    }

    .category-head,
    .search-head {
        margin-top: 15px;
    }

    .search-title {
        font-size: 1.5rem;
    }

    .category-recomend-title {
        font-size: 1.4rem;
        text-align: center;
    }

    .category-code {
        font-size: 0.8rem;
        margin-left: 8px;
    }

    .category-image {
        max-width: 100%;
    }

    .child-category-list {
        text-align: left;
        width: 98%;
        margin: 24px auto;
    }

    .child-category-item {
        width: calc(100% / 2 - 4px);
        display: inline-block;
        text-align: center;
        background: #f0efe9;
        margin-bottom: 4px;
        padding: 4px;
        font-size: 0.6rem;
    }

    .child-category-name a {
        text-decoration: none;
        display: block;
    }

    .list-head {
        margin: 24px 0;
        font-size: 0.9rem;
    }

    .list-head p {
        margin-bottom: 15px;

    }

    .list-head-sort {
        display: flex;
        font-size: 0.7rem;
        place-content: center;
    }

    .list-head-sort dd {
        margin-right: 8px;
    }

    .empty {
        margin-top: 120px;
        color: #666;
    }

    .list-head-type {
        display: flex;
        font-size: 0.8rem;
    }

    .list-head-type li .list-head-type-btn,
    .list-head-type li a {
        display: inline-block;
        background: #f0efe9;
        padding: 3px 8px;
    }

    .list-head-type li a {
        background: #000;
        color: #fff;
        text-decoration: none;
    }

    /****************************** pager */
    .pager {
        text-align: center;
    }

    .pager li {
        display: inline-block;
    }

    .pager li .current,
    .pager li a {
        display: inline-block;
        padding: 7px 10px;
        line-height: 1;
        border: 1px solid #ccc;
        margin: 0 2px;
        text-decoration: none;
    }

    .pager li .current,
    .pager li .current a {
        background: #555;
        border-color: #555;
        color: #fff;
    }

    /* -----------------------------------------------------------------
    detail
    ----------------------------------------------------------------- */
    .item-breadcrumb {
        display: flex;
    }

    .item-image-wrap {
        width: 100%;
        margin: 0 auto 30px;
        float: none;
    }

    .item-image {
        max-width: 100%;
    }

    .item-thumbnail-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
    }

    .item-thumbnail-list li {
        width: calc(100% / 9);
        padding: 4px;
    }

    .item-thumbnail-list li img {
        max-width: 100%;
    }

    .cart_sp .item-category-name {
        font-size: 14px;
        margin-bottom: 5px !important;
    }

    .item-category-name a {
        color: #7e6b5a;
        text-decoration: none;
    }

    .item-icon-list li {
        display: inline-block;
        margin: 0 4px;
    }

    .item-name {
        line-height: 1.4;
        font-size: 19px;
        margin-bottom: 15px;
        text-align: left;
        font-weight: 600;
    }

    .item-wrap {
        text-align: left;
        flex: 1;
    }

    .item-inner-wrap {
        padding: 10px 0;
    }

    .sale-badge {
        display: inline-block;
        padding: 0 12px;
        background: #ef3c62;
        color: #fff;
        font-size: 12px;
        border-radius: 2em;
        line-height: 1.6em;
        margin-right: 8px;
    }

    .sale-discount {
        color: #cc0000;
    }

    .item-price-wrap {
        padding: 0;
    }

    .item-reserve {
        margin-bottom: 16px;
        background: #f0efe9;
        padding: 16px;
    }

    .before-price {
        text-decoration: line-through;
    }

    .fixed-price {
        grid-column: 1 / 3;
        grid-row: 1;
    }

    .fs-l-product .item-price {
        margin: 0 auto 5px;
        font-size: 25px;
        font-weight: bold;
        line-height: 1;
        color: #ff2f56;
    }

    .tax {
        color: #777;
        font-weight: normal;
        font-size: 10px;
        vertical-align: middle;
    }

    .fs-l-product .item-point {
        margin: 0 auto 15px;
        font-size: 12px;
        line-height: 1.2em;
        color: #009e96;
    }

    .item-option {
        padding: 0;
    }

    .item-description-wrap {
        font-size: 14px;
        margin: 15px auto 40px;
        width: 100%;
        text-align: left;
    }

    .item-description {
        text-align: left;
    }

    .item-adddescription-wrap {
        font-size: 0.9rem;
        margin-bottom: 32px;
    }

    .item-info {
        /*
        border-bottom: 1px dotted #000;
        padding-bottom: 32px;
        margin: 0;
        */
    }

    .item-info-list {
        padding: 4px;
        font-size: 0.8rem;
        color: #1c1c1b;
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 32px;
    }

    .item-info-list dt {
        font-weight: bold;
        width: 40%;
        padding: 4px 0;
    }

    .item-info-list dd {
        width: 60%;
        padding: 4px 0;
        text-decoration: none;
    }

    .item-stock-count {
        margin-left: 16px;
    }

    .cart-btn-wrap {
        text-align: center;
        margin: 24px 0;
    }

    .btn {
        background: #009e96;
        border-radius: 4px;
        color: #fff;
        display: block;
        margin: 16px auto;
        padding: 10px 0;
        /*
        width: 60%;
        */
        text-align: center;
        font-size: 0.9rem;
        text-decoration: none !important;
    }

    .disabled {
        opacity: 0.2;
        background: #555 !important;
        pointer-events: none;
    }

    .fs-l-product .cart-btn {
        width: 100%;
        padding: 6px 0;
        font-size: 18px;
    }

    .restock-btn {
        background: #1c678c;
        width: 260px;
        padding: 10px 0;
        font-size: 1.1rem;
    }

    .soldout {
        margin: 32px auto;
        color: #cc0000;
        text-align: center;
        background: #ffeeee;
        padding: 18px 0;
    }

    select.makeshop-option-select {
        width: 40%;
        margin: 4px auto;
        text-align: center;
    }

    label.makeshop-option-select-wrap {
        position: relative;
    }

    label.makeshop-option-select-wrap::after {
        content: "\f107";
        display: inline-block;
        position: absolute;
        right: 8px;
        top: 50%;
        color: #222;
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
        line-height: 1em;
        transform: translateY(-50%);
    }

    .makeshop-option-wrap {
        margin-bottom: 10px;
    }

    .add-image {
        display: flex;
    }

    .add-image-list {
        padding: 8px;
        width: calc(100% / 3);
    }

    .add-image-list img {
        max-width: 100%;
    }

    .add-description {
        text-align: left;
        font-size: 0.8rem;
    }

    .sale-info {
        display: flex;
        margin-bottom: 4px;
    }

    .fs-l-product .item-contact {
        margin: 0 auto;
        text-align: center;
    }

    .item-share {

        margin: 0px auto 22px;
    }

    .item-share li {
        margin: 0 5px;
        display: inline-block;
        vertical-align: top;
    }

    .footer02 .item-share li img {
        width: 16px;
    }

    /******************************** REVIEW STAR */
    .reviewRateStar {
        display: inline-block;
        font-size: 0;
        color: #F8D803;
    }

    .reviewRateStar::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f005";
        font-size: 1.5rem;
        font-weight: 900;
    }

    .starOff::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f005";
        font-weight: 400;
    }

    .starHalf::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f5c0";
    }

    /******************************** ITEM REVIEW */
    .item-review {
        text-align: left;
        display: flex;
        align-items: center;
        padding-top: 16px;
    }

    .item-review-average {
        font-size: 1.3rem;
        margin: 0 4px 0 12px;
    }

    /******************************** ITEM REVIEW LIST */
    .item-review-detail {
        text-align: left;
        margin-top: 48px;
    }


    .item-review-title {
        position: relative;
        margin-bottom: 16px;
    }

    .btn-review-post-wrap {
        position: absolute;
        right: 0;
        top: 0;
    }

    .item-review-detail .btn-review-post {
        margin: 0;
        padding: 4px 8px;
        width: auto;
        display: inline-block;
        font-size: 0.7rem;
        background: #848484;
    }

    .review-list-unit {
        padding: 16px 0;
        font-size: 0.9rem;
        border-bottom: 1px dotted #ccc;
    }

    .review-list-head {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 8px;
    }

    .review-star,
    .review-score {
        display: inline-block;
    }

    .review-list-score-wrap .reviewRateStar::before {
        font-size: 1.1rem;
    }

    .review-score {
        margin-left: 4px;
        font-weight: bold;
        font-size: 1.0rem;
    }

    .review-list-content {
        font-size: 0.8rem;
        text-align: left;
    }

    .review-list-date {
        font-size: 0.7rem;
        margin-top: 8px;
        color: #848484;
    }

    .review-list-text {
        text-align: center;
        color: #848484;
        margin-top: 64px;
    }

    /******************************** SUBSCRIPTION */
    .subscription-discount-list td {
        border: 1px solid #000;
        padding: 8px;
    }

    .subscription-discount-point {
        font-size: 0.9rem;
    }

    .subscription-gift-list {
        margin: 32px auto;
    }

    .subscription-gift {
        background: #f0efe9;
        padding: 24px;
        margin: 16px auto;
    }

    .subscription-gift-img {
        max-width: 100px;
        height: auto;
    }

    .subscription-gift-times {
        border-bottom: 1px dotted #000;
        padding-bottom: 6px;
        margin-bottom: 8px;
    }

    .subscription-gift-item {
        margin-bottom: 4px;
    }

    .subscription-gift-info {
        font-size: 0.8rem;
    }

    .item-subscription {
        margin-top: 48px;
        border: 2px solid #FB6107;
        padding: 24px;
        background: #FFF2EA;
        border-radius: 4px;
    }

    /* -----------------------------------------------------------------
    review
    ----------------------------------------------------------------- */
    .index-review-list {
        text-align: left;
    }

    .index-review-list .review-list-unit {
        display: inline-flex;
        width: 100%;
        background: #f2f2f2;
        padding: 12px;
        margin-bottom: 4px;
        border: none;
    }

    .review-list-info {
        width: 128px !important;
    }

    .review-title {
        font-size: 22px;
        margin-top: 24px;
        margin-bottom: 24px;
        text-align: left;
    }

    .review-title em {
        font-weight: bold;
    }

    .review-item-wrap {
        display: flex;
        padding: 16px;
        border: 1px solid #ddd;
        border-radius: 6px;
        background: #f0f0f0;
        width: 96%;
        margin: 0 auto;
    }

    .review-item-image {
        width: 100px;
    }

    .review-item-image img {
        max-width: 100%;
    }

    .review-item-info {
        flex: 1;
        text-align: left;
        margin-left: 16px;
        font-size: 0.9rem;
    }

    .total-review {
        margin-top: 8px;
    }

    .total-review .reviewRateStar::before {
        font-size: 1.1rem;
    }

    .review-average,
    .review-count {
        display: inline-block;
    }

    .review-average {
        font-weight: bold;
        margin-left: 8px;
        font-size: 1.2rem;
    }

    .review-item-btn {
        text-align: right;
    }

    .btn-review-post {
        width: auto;
        display: inline-block;
        padding: 8px 24px;
    }

    .all-review {
        margin-bottom: 48px;
    }

    .all-review .review-head-wrap {
        width: 70%;
        text-align: left;
    }

    .all-review .review-list-content {
        text-align: left;
    }

    .all-review .review-name,
    .all-review .review-list-score-wrap {
        display: inline-block;
    }

    .review-form-wrap {
        width: 96%;
        margin: 12px auto 32px;
    }

    .review-form {
        text-align: left;
        padding: 16px 0;
    }

    .review-form-title {
        width: 200px;
        margin-bottom: 6px;
    }

    .review-form-content {
        flex: 1;
    }

    .review-form-content input,
    .review-form-content textarea {
        width: 100%;
        box-sizing: border-box;
        border: solid 1px #ddd;
    }

    .review-list-category {
        display: inline-block;
    }

    .review-post-btn {
        width: 80%;
    }

    .fa-angle-right {
        padding: 0 4px;
        margin: 0;
    }

    /* -----------------------------------------------------------------
    guide
    ----------------------------------------------------------------- */
    .contents-section {
        padding: 0 12px;
    }

    .guide-title {
        margin-bottom: 48px;
    }

    .guide-section {
        margin-bottom: 64px;
        text-align: left;
        font-size: 0.9rem;
    }

    .guide-section-title {
        margin-bottom: 16px;
        font-weight: bold;
        font-size: 1.1rem;
    }

    /* -----------------------------------------------------------------
    news
    ----------------------------------------------------------------- */
    .news-list {
        margin-bottom: 30px;
    }

    .news-wrap {
        margin-top: 32px;
    }

    .news-head {
        margin-bottom: 24px;
    }

    .news-content-wrap {
        padding: 24px 48px 48px;
        text-align: left;
        margin-bottom: 24px;
    }

    .news-pager {
        display: flex;
        justify-content: center;
    }

    .news-pager li {
        padding: 0 20px;
    }

    .news-date {
        font-size: 0.9rem;
        color: #848484;
        margin-bottom: 8px;
        text-align: left;
    }

    .news-empty {
        color: #ccc;
    }

    /* -----------------------------------------------------------------
    company
    ----------------------------------------------------------------- */
    .company-image img {
        margin: 0 auto 48px;
    }

    /* -----------------------------------------------------------------
    order-contract
    ----------------------------------------------------------------- */
    .order-contract-title {
        margin-bottom: 64px;
    }

    .contract-item {
        margin: 24px;
        display: flex;
        text-align: left;
    }

    .contract-title {
        width: 200px;
    }

    .contract-content {
        flex: 1;
        padding-left: 24px;
    }

    /* -----------------------------------------------------------------
    catalog
    ----------------------------------------------------------------- */
    .catalog-list {
        width: 100%;
        margin-bottom: 48px;
    }

    .catalog-list th {
        background: #f0efe9;
    }

    .catalog-list th,
    .catalog-list td {
        border: 1px solid #c7c3ac;
        padding: 6px 8px;
    }

    .catalog-input-num {
        width: 10rem;
    }

    .catalog-input-quantity {
        width: 3rem;
    }

    .catalog-info-wrap {
        text-align: left;
        font-size: 0.9rem;
        width: 400px;
    }

    .catalog-search-btn {
        width: 60px;
    }

    .catalog-cart-btn {
        width: 25%;
    }

    /* -----------------------------------------------------------------
    footer
    ----------------------------------------------------------------- */
    footer {
        margin: 28px auto 0px auto;
        padding: 0 0 65px;
    }

    /*
    .detail_page footer {
    margin: 28px auto 0px auto;
    padding: 0 0 125px;
}
    */
    .footer_detail {
        padding: 0 0 120px;
    }

    .footer-nav {
        margin-bottom: 12px;
    }

    footer a {
        color: #000000;
    }

    .footer-nav li {
        text-align: left;
        border-bottom: solid 1px #444;
        padding: 8px 0;
    }

    .footer-nav li a {
        text-decoration: none;
        font-size: 14px;
        color: #fff;
        display: block;
        width: 100%;
    }

    .shop-info > p {
        display: inline;
        font-size: 0.8rem;
        margin: 0 8px;
    }

    .copyright {
        margin: 0 auto;
        padding: 14px 0;
        display: block;
        color: #fff;
        font-size: 10px;
        /*
        background: #bcae98;
        */
        background: #eae5d3;
        color: #000000;
    }
}

/*------------------------------以下、PC------------------------------*/

@media screen and (min-width:769px) {

    .cart_sp,
    .cart_sp_btm {
        display: none;
    }

    .bottom-menu {
        display: none;
    }

    /* -----------------------------------------------------------------
    module
    ----------------------------------------------------------------- */
    body {
        background: #f8f4ee;
        /*
        background: #fff;
        font-family: ITC Berkeley Old Style, serif;
        /*
        font-family: 'Noto Sans JP', sans-serif;
        */
        line-height: 1.6;
        color: #000;
        height: 100%;
        text-align: center;
        position: relative;
        width: 100%;
    }

    a {
        text-decoration: none;
        color: #000000;
        /*
        text-decoration: underline;
        transition: .2s;
        */
    }

    a:hover {
        opacity: 0.6;
        text-decoration: none;
    }

    a[class$="btn"],
    a.header-incart-switch {
        text-decoration: none !important;
    }

    input[type="text"],
    select {
        border: 1px solid #cccccc;
        border-radius: 3px;
        padding: 6px;
        /*
        font-size: inheirt;
        */
        box-sizing: border-box;
        background: #fff;

    }

    .select-wrap-for-yaji {
        position: relative;
    }

    .select-wrap-for-yaji::after {
        content: "\f107";
        display: inline-block;
        position: absolute;
        right: 8px;
        top: 50%;
        color: #222;
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
        line-height: 1em;
        transform: translateY(-50%);
    }

    select {
        width: 100%;
    }

    .pre-wrap {
        word-break: break-all;
    }

    header {
        width: 100%;
        margin: 0 auto 40px;
        position: sticky;
        top: 0;
        left: 0;
        z-index: 10;
        background: rgba(255, 255, 255, 0.2);
        /*
        padding-top: 12px;
        */
        transition: 0.3s;
    }

    .fixed {
        background: rgba(255, 255, 255, 0.8);
        z-index: 1000;
    }

    .header-inner-wrap {
        /*
        grid-template-columns: 20% 1fr auto 10%;
        grid-template-rows: 1fr;
        */
        width: 90%;
        margin: 0 auto;
        max-width: 1300px;
        align-items: center;
    }

    .shop-name {
        grid-column: 1;
        grid-row: 1;
        align-self: center;
        text-align: left;
    }

    .shop-name a img {
        vertical-align: top;
        max-width: 128px;
    }

    .header-category-wrap {
        align-self: center;
    }


    a.link-btn {
        color: #000000;
        text-decoration: none;
        font-size: 14px;
    }

    .header-section {
        background: #f0efe9;
        padding: 16px 0 32px;
        margin-bottom: 32px;
    }

    .header-title {
        margin: 0 auto 24px;
        padding: 8px 0;
        position: relative;
        width: 86%;
        background: #fff;
    }

    .header-category-list {
        position: relative;
        /*
        text-align: left;
        */
    }

    .header-category-item {
        display: inline-block;
    }

    .header-category-item a {
        text-align: left;
        padding: 0 12px;
        font-size: 1rem;
        display: block;
        text-decoration: none;
        color: #000000;
    }

    .header-category-item:hover .header-category-child-list {
        opacity: 1;
        visibility: visible;
    }

    .header-category-child-list {
        position: absolute;
        top: 46px;
        left: 0;
        width: 100%;
        z-index: 10;
        background: #fff;
        border: 4px solid #f0efe9;
        opacity: 0;
        visibility: hidden;
    }

    .header-category-child-list a:hover {
        background: #f0efe9;
    }

    .header-category-child-list li {
        display: inline-block;
    }

    .header-category-switch.hover {
        background: #fff;
    }

    .header-category-child-list li::after {
        background-color: #f0efe9;
    }

    .global-nav {
        grid-column: 3;
        grid-row: 1;
        text-align: right;
        display: grid;
        align-items: center;
        font-size: 12px;
        padding: 11px 0 7px;
        background: #fff;
    }

    .global-nav ul li {
        vertical-align: middle;
        display: inline-block;
    }

    .global-nav ul li a {
        color: #fff;
    }

    .logo {
        margin: 0 auto;
        text-align: center;
    }

    .account-nav {
        text-align: right;
        font-size: 14px;
        margin: 0 auto;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        list-style: none;
    }

    ul.account-nav li {
        text-align: left;
        width: auto;
        padding-left: 10px;
    }

    .account-nav li a {
        color: #fff;
        text-decoration: none;
    }

    .account-nav p {
        display: inline-block;
    }



    .member-name em {
        /*
        margin-right: 4px;
        */
    }

    .member-status {
        margin-left: 8px;
    }

    .header-cart {
        text-align: right;
    }

    .header-cart .header-incart-switch {

        border-radius: 6px;
        position: relative;
    }

    .header-cart-count {
        position: absolute;
        right: 0;
        top: -25px;
        background: #1c1c1b;
        color: #fff;
        width: 17px;
        height: 17px;
        border-radius: 50%;
        line-height: 17px;
        text-align: center;
    }

    /*
    .header-cart-count_in {
    font-size: 10px;
}
    */
    .header-drawer-btn,
    .header-cart-btn {
        display: none;
    }

    /* モジュール ヘッダー用ニュース */
    .news-swiper-container {
        height: 2.4em;
        overflow: hidden;
    }

    /* -----------------------------------------------------------------
    main
    ----------------------------------------------------------------- */
    .wrap {
        margin-top: 50px !important;
    }

    .main-visual {
        width: 100%;
    }

    .main-visual img {
        max-width: 100%;
        width: 100%;
        vertical-align: top;
    }

    .bx-wrapper .bx-controls-direction a {
        transition: none;
    }

    .wrap {
        width: 100%;
        max-width: 1400px;
        margin: 24px auto;
        /*
        display:grid;
        grid-template-columns:auto 1fr;
        */
    }

    .bx-wrapper {
        width: 100%;
        margin: 0 auto;
        box-shadow: none;
        border: none;
    }

    .bx-wrapper {
        overflow: hidden;
    }

    .bx-viewport {
        overflow: visible !important;
        width: calc(100% / 3) !important;
        margin: 0 auto;
    }

    #wrap .bx-prev {
        left: 50% !important;
        margin-left: -516px;
    }

    #wrap .bx-next {
        right: 50% !important;
        margin-right: -516px;
    }

    .bx-wrapper .bx-caption {
        margin-bottom: -100px;
        transition: 0.4s;
        width: 100%;
        left: 0;
        text-align: center;
        pointer-events: none;
        width: 94%;
        margin: 0 3% -100px;
        padding: 4%;
        border-radius: 8px;
        box-sizing: border-box;
    }

    .bx-wrapper .bx-caption span {
        font-size: 18px;
        font-weight: bold;
        font-family: 'Raleway', Arial, sans-serif;
    }

    .side {
        width: 26%;
        /*
        max-width: 260px;
        */
        float: right;
        position: -webkit-sticky;
        position: sticky;
        top: 150px;
    }

    .side section a img {
        width: 100%;
        vertical-align: top;
        margin-bottom: 4px;
    }

    .side-section {
        background: #222;
        padding: 16px 0;
        margin-bottom: 32px;
        color: #fff;
    }

    .login-wrap {
        display: none;
    }

    .side-category-list {
        margin-bottom: 24px;
    }

    .side-category-item {
        position: relative;
    }

    .side-category-item a {
        text-align: left;
        padding: 12px;
        font-size: 0.9rem;
        display: block;
        color: #fff;
        text-decoration: none;
    }

    .side-category-item a:hover {
        background: #000000;
        opacity: 1.0;
    }

    .side-category-item::after {
        content: "";
        display: block;
        width: 90%;
        height: 1px;
        background-color: #fff;
        position: absolute;
        bottom: -1px;
        left: 0;
        right: 0;
        margin: 0 auto;
    }

    .side-category-item:hover .side-category-child-list {
        opacity: 1;
        visibility: visible;
    }

    .side-category-child-list {
        position: absolute;
        right: -160px;
        top: 0;
        width: 160px;
        z-index: 10;
        background: #000000;
        border-left: none;
        opacity: 0;
        visibility: hidden;
    }

    .side-category-child-list a:hover {
        background: #444;
    }

    .side-category-switch.hover {
        background: #fff;
    }

    .side-category-child-list li::after {
        background-color: #f0efe9;
    }

    .side-search li {
        text-align: left;
        font-size: 0.9rem;
        padding: 4px 16px;
    }

    .side-search li span {
        margin: 0 4px;
        font-size: 12px;
    }

    .side-search label {
        display: block;
        margin-bottom: 4px;
    }

    .side-search input {
        width: 100%;
    }

    .side-search input.side-search-price {
        width: 38%;
    }

    .side-search .side-search-price {
        width: 25%;
    }

    .side-search-btn {
        display: block;
        padding: 4px 12px;
        color: #222 !important;
        border-radius: 4px;
        margin: 16px auto 0;
        width: 60%;
        background: #fff !important;
    }

    .side-section-others {
        background: #fff;
        padding: 0;
    }

    .side-section-btn-wrap {
        margin-bottom: 12px;
    }

    #background-drawer-btn {
        display: none;
    }

    .mailmagazine-btn {
        width: 100%;
        display: block;
        padding: 16px 0;
        font-size: 0.9rem;
        background: #222;
        color: #fff;
        border-radius: 4px;
    }

    .mailmagazine-btn:before {
        padding-right: 8px;
        content: "\f0e0";
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
    }

    .catalog-btn {
        width: 100%;
        display: block;
        padding: 16px 0;
        font-size: 0.9rem;
        background: #222;
        color: #fff;
        border-radius: 4px;
    }

    .catalog-btn:before {
        padding-right: 8px;
        content: "\f518";
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
    }

    /* カレンダーのサイズ設定 */
    .side-section-calendar {
        font-size: 12px;
    }

    .makeshop-calendar1,
    .makeshop-calendar2 {
        width: 100%;
        margin: 0 auto 16px;
        box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    }

    /* テキスト位置・罫線設定 */
    .makeshop-calendar1 th,
    .makeshop-calendar1 td,
    .makeshop-calendar2 th,
    .makeshop-calendar2 td {
        box-sizing: border-box;
        text-align: center;
        border: 1px solid #e6e6e6;
    }

    /* 【曜日】テキストの太さ・背景設定 */
    .makeshop-calendar1 th,
    .makeshop-calendar2 th {
        background: #cccccc;
        font-weight: bold;
        padding: 10px 0;
    }

    /* 【日付】テキストの太さ・背景設定 */
    .makeshop-calendar1 td,
    .makeshop-calendar2 td {
        background: #fff;
        font-weight: bold;
        padding: 4px 0;
    }

    /* 【今日】テキストの太さ・背景設定 */
    .makeshop-calendar1 td.today,
    .makeshop-calendar2 td.today {
        background-color: #222;
        color: #fff;
    }

    /* 【日曜日】の設定 */
    .makeshop-calendar1 th.sunday,
    .makeshop-calendar2 th.sunday {
        color: #fff;
        background: #f04444;
    }

    /* 【日曜日】日付の設定 */
    .makeshop-calendar1 tbody td.sunday,
    .makeshop-calendar2 tbody td.sunday {
        background: #f0444473;
    }

    /* 【土曜日】の設定 */
    .makeshop-calendar1 th.saturday,
    .makeshop-calendar2 th.saturday {
        color: #fff;
        background: #4682b4;
    }

    /* 【土曜日】日付の設定 */
    .makeshop-calendar1 tbody td.saturday,
    .makeshop-calendar2 tbody td.saturday {
        background: #4682b436;
    }

    /* 【月曜日】の設定 */
    .monday {
        color: black;
    }

    /* 【火曜日】の設定 */
    .tuesday {
        color: black;
    }

    /* 【水曜日】の設定 */
    .wednesday {
        color: black;
    }

    /* 【木曜日】の設定 */
    .thursday {
        color: black;
    }

    /* 【金曜日】の設定 */
    .friday {
        color: black;
    }

    .content {

        flex: 1;
        max-width: 856px;
        max-width: 1300px;
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }

    .section {
        margin-bottom: 50px;
    }

    .banner-item section {
        /*
        display:grid;
        grid-template-columns:1fr 1fr;
        grid-gap: 4px;
        */
    }

    .banner-item section a img {
        width: 100%;
        vertical-align: top;
    }

    .special-item,
    .new-item,
    .index-news,
    .index-review {
        position: relative;
    }

    .section-title {
        font-size: 24px;
        margin-bottom: 24px;
        text-align: left;
    }


    /*
    .item-list-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 0;
    margin-right: -15px;
}
    */


    .item-list-wrap:before {
        content: "";
        display: block;
        width: calc(100% / 4);

        height: 0;
        order: 1;

    }



    .item-list {

        width: calc(100% / 4);
        padding-bottom: 15px;
        padding-right: 25px;
        /*
        padding: 8px;
        */
        position: relative;
    }

    /*
    .new-item .item-list {

    padding: 0px 5px;

}
    */
    .new-item-swiper-box {
        width: auto;
    }

    /*
    .lineup-item .new-item-list {
    margin-right: -37px;
}

    .category-list {
    width: calc(100% / 5);
    padding: 0 0px 25px 0;
    position: relative;
}
    */
    .recommend-item-list {
        width: calc(100% / 4);
        padding-right: 15px;
        /*
        padding: 8px;
        */
        position: relative;
    }

    .item-list:nth-child(n+16) {
        display: none;
    }

    .new-item-list-wrap .item-list {
        width: calc(100% / 4);
    }



    .item-list-image2 a img {
        vertical-align: top;
        max-width: 100%;
    }


    .item-list-image {
        width: 100%;
        max-width: 260px;
        position: relative;
    }

    .item-list-image::before {
        content: "";
        display: block;
        padding-top: 100%;
    }

    .item-list-image img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        object-fit: cover;
    }











    .item-badge {
        position: absolute;
        background: #ef3c62;
        color: #fff;
        z-index: 1;
    }

    .item-sale-badge {
        font-size: 0.8rem;
        background: #ef3c62;
        color: #fff;
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 2px 8px;
    }

    .item-soldout-badge {
        background: rgba(0, 0, 0, 0.6);
        width: 100%;
        border-radius: 0;
        top: 0;
        left: 0;
        height: 2em;
        line-height: 2em;
        padding: 0;
    }

    .item-list-info {
        text-align: left;
        font-size: 0.8rem;
        margin-top: 8px;
    }

    .recommend-info {
        text-align: left;
        font-size: 0.8rem;
        background: #222;
        padding: 12px;
        position: relative;
        margin: 0;
    }

    .recommend-info .item-list-name {
        line-height: 1.4em;
        height: 3.2em;
        display: grid;
        place-content: center;
    }

    .recommend-info-arrow {
        position: absolute;
        top: -30px;
        right: 0;
        width: 0;
        height: 0;
        border: solid 18px #222;
        border-top: solid 18px transparent;
        border-left: solid 18px transparent;
    }

    .item-list-category-name {
        /*
        margin-bottom: 6px;
        */
    }

    .item-list-category-name a {
        text-decoration: none;
    }

    .item-list-category-name a i {
        margin: 0 0 0 1em;
        display: none;
    }

    .item-list-name {
        font-size: 16px;
        line-height: 1.4em;
        margin-bottom: 8px;
    }

    .recommend-item-name {
        color: #fff !important;
    }

    .item-list-name a {
        text-decoration: none;
        color: #000;
        font-weight: 600;
    }

    .recommend-description {
        color: #fff !important;
    }

    .sale-price-wrap {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .sale-price-wrap .original-price {
        font-size: 16px;
        text-decoration: line-through;
        display: grid;
        align-items: center;
        padding-right: 8px;
    }

    .item-list-price {
        font-size: 1.2rem;
        color: #000000;
    }

    .item-list-icon-and-point-wrap {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .item-list-point {
        display: none;
        text-align: right;
    }

    .item-list-point i {
        margin: 0;
    }

    .item-list-original-price {
        font-weight: normal;
        font-size: 0.8rem;
        color: #848484;
        margin-top: 8px;
    }

    .item-list-sale-price {
        color: #ef3c62;
    }

    .item-list-sale-discount-price {
        font-size: 0.8rem;
    }

    .item-list-sale-discount-rate {
        font-size: 0.8rem;
        background: #ef3c62;
        color: #fff;
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 2px 8px;
    }

    .item-list-stock {
        font-weight: bold;
        margin-bottom: 4px;
    }

    .item-stock {
        margin-left: 4px;
    }

    .item-list-description {
        font-size: 0.8rem;
        color: #222;
        margin-top: 4px;
    }

    .item-list-description ::after {
        content: "…";
    }

    .index-title {
        text-align: center;
    }

    .item-list-review {
        display: flex;
        align-items: center;
    }

    .item-list-review .reviewRateStar:before {
        font-size: 1rem;
    }

    .item-list-review-rate {
        margin: 0 8px;
        font-weight: bold;
        font-size: 1rem;
    }

    .item-list-rank {
        position: absolute;
        display: flex;
        width: 45px;
        height: 45px;
        background: #000;
        color: #fff;
        z-index: 999;
        align-items: center;
        justify-content: center;
    }

    .rank-1 {
        background: #D9AE61;
    }

    .rank-2 {
        background: #848484;
    }

    .rank-3 {
        background: #573D1C;
    }

    /******************************** REVIEW */
    .index-review-list .review-list-unit {
        display: flex;
    }

    .index-review-list .review-list-info {
        width: 180px;
        text-align: left;
        font-size: 0.8rem;
        margin-right: 16px;
    }

    .index-review-list .review-list-info img {
        margin: 0 auto;
        max-width: 100%;
        height: auto;
        width: 100%;
    }

    .index-review-list .review-list-content-wrap {
        flex: 1;
    }

    .index-review-list .review-list-name,
    .index-review-list .review-score-wrap {
        display: inline-block;
    }

    .index-review-list .reviewRateStar::before {
        font-size: 0.9rem;
    }

    .review-list-category {
        display: inline-block;
    }

    .fa-angle-right {
        padding: 0 4px;
        margin: 0;
    }

    label.makeshop-option-select-wrap {
        position: relative;
    }

    label.makeshop-option-select-wrap::after {
        content: "\f107";
        display: inline-block;
        position: absolute;
        right: 8px;
        top: 50%;
        color: #222;
        font-weight: 900;
        font-family: 'Font Awesome 5 Free';
        line-height: 1em;
        transform: translateY(-50%);
    }

    /******************************** NEWS */


    .news-list.index-news-list {
        margin-bottom: 24px;
    }

    .news-list li {
        display: flex;
        padding: 0 0 14px;
        text-align: left;
    }

    .news-list-unit * img {
        width: 100%;
    }

    .news-list-date {
        margin-right: 16px;
        font-size: 0.9rem;
        color: #fff;
        background: #222;
        padding: 0 1em;
        display: inline-block;
        height: 100%;
    }

    .news-list-detail {
        text-align: left;
        flex: 1;
        align-self: center;
    }

    .news-list-content {
        margin-top: 8px;
        font-size: 0.8rem;
    }

    .news-list-content a {
        color: #888;
    }

    .news-list-content::after {
        content: "…";
    }

    .news-more {
        text-align: right;
        margin-top: 16px;
    }

    .header-news-wrap {
        display: none;
        background: #f1f1f1;
        height: 2.2em;
    }

    .header-news-list {
        margin: 0 auto !important;
        border: none;
        max-width: 1400px;
        font-size: 14px;
    }

    .header-news-list li {
        display: grid;
        grid-template-columns: auto 1fr 1fr 1fr;
        padding: 4px;
        border: none;
    }

    .header-news-list li .news-list-date {
        margin-bottom: 0;
    }

    .header-news-list-icon {
        background: #222;
        color: #fff;
        width: 2em;
        text-align: center;
        line-height: 2em !important;
        border-radius: 2em;
        margin-right: 0.4em;
    }

    /* -----------------------------------------------------------------
    category
    ----------------------------------------------------------------- */
    .breadcrumb-wrap {
        margin-bottom: 16px;
    }

    .breadcrumb {
        text-align: left;
        font-size: 12px;
    }

    .breadcrumb-item {}

    .breadcrumb-item a {
        color: #a0a0a0;
        text-decoration: none;
    }

    .breadcrumb-item::after {
        content: '\f054';
        font-family: 'Font Awesome 5 Free';
        padding: 0 6px 0 12px;
        font-weight: 800;
        color: #a0a0a0;
    }

    .breadcrumb-item:last-child::after {
        display: none;
    }

    .category-head,
    .search-head {
        margin-top: 24px;
    }

    .search-title {
        font-size: 1.5rem;
    }

    .category-recomend-title {
        font-size: 1.4rem;
        text-align: center;
    }

    .category-code {
        font-size: 0.8rem;
        margin-left: 8px;
    }

    .category-image {
        max-width: 100%;
    }

    .child-category-list {
        text-align: left;
    }

    .child-category-item {
        width: calc(100% / 4 - 4px);
        display: inline-block;
        text-align: center;
        background: #f0efe9;
        margin-bottom: 4px;
        padding: 4px;
    }

    .child-category-name a {
        text-decoration: none;
        display: block;
        color: #222;
    }

    .list-head {
        margin: 64px 0 24px;
        display: flex;
        justify-content: space-between;
        font-size: 0.9rem;
    }

    .list-head-sort {
        display: flex;
        font-size: 0.8rem;
    }

    .list-head-sort dd {
        margin-right: 8px;
    }

    .empty {
        margin-top: 120px;
        color: #666;
    }

    .list-head-type {
        display: flex;
        font-size: 0.8rem;
    }

    .list-head-type li .list-head-type-btn,
    .list-head-type li a {
        display: inline-block;
        background: #f0efe9;
        padding: 3px 8px;
    }

    .list-head-type li a {
        background: #000;
        color: #fff;
        text-decoration: none;
    }

    /****************************** pager */
    .pager {
        text-align: center;
    }

    .pager li {
        display: inline-block;
    }

    .pager li .current,
    .pager li a {
        display: inline-block;
        padding: 7px 10px;
        line-height: 1;
        border: 1px solid #ccc;
        margin: 0 2px;
        text-decoration: none;
    }

    .pager li .current,
    .pager li .current a {
        background: #555;
        border-color: #555;
        color: #fff;
    }

    /* -----------------------------------------------------------------
    detail
    ----------------------------------------------------------------- */
    .item-breadcrumb {
        display: flex;
    }

    .item {
        display: flex;
        /*
        display: flex;
        display: grid;
        grid-template-columns: 50% 50%;
        */
    }

    .item-image-wrap {
        /*
        max-width: 800px;
        */
        margin: 0 auto 40px;
        width: 100%;
    }

    .item-image {
        max-width: 100%;
    }

    .item-thumbnail-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
    }

    .item-thumbnail-list li {
        width: calc(100% / 9);
        padding: 4px;
    }

    .item-thumbnail-list li img {
        max-width: 100%;
    }

    .fs-l-product .item-category-name {
        font-size: 0.9rem;
        margin-bottom: 8px;
    }

    .item-category-name a {
        color: #7e6b5a;
        text-decoration: none;
    }

    .item-icon-list li {
        display: inline-block;
        margin: 0 4px;
    }

    .item-name {
        font-size: 18px;
        line-height: 1.4;
        margin-bottom: 10px;
        text-align: left;
    }

    .item-wrap {
        text-align: left;
        /*
        flex: 1;
        grid-column: 2;
        grid-row: 1 / 3;
        */
        position: sticky;
        top: 130px;
        /*
        padding: 0 0 0 20px;
        */
    }

    .sale-rate {
        margin-top: 8px;
        display: inline-block;
        margin: 0;
    }

    .sale-badge {
        display: inline-block;
        padding: 2px 12px;
        background: #ef3c62;
        color: #fff;
        font-size: 12px;
        border-radius: 2em;
        vertical-align: top;
    }

    .sale-discount {
        color: #cc0000;
    }

    .item-reserve {
        margin-bottom: 16px;
        background: #f0efe9;
        padding: 16px;
    }

    .fs-l-product .item-price {
        margin: 0 auto;
        font-size: 30px;
        font-weight: bold;
        color: #ff2f56;
    }

    .item-price span.subscription-price-title {
        color: #222;
        font-size: 20px;
        font-weight: normal;
        margin-right: 8px;
    }

    .before-price {
        display: inline-block;
        margin: 0;
        vertical-align: top;
        text-decoration: line-through;
    }

    .tax {
        color: #777;
        font-weight: normal;
        font-size: 10px;
        vertical-align: middle;
    }

    .item-point {
        font-size: 14px;
        color: #009e96;
    }

    .item-option {
        padding: 8px 0;
        /*
        display: grid;
        grid-template-columns: 50% 50%;
        grid-template-rows: 1fr;
        grid-gap: 12px;
        */
    }

    .item-description-wrap {

        margin: 35px auto 0;
        text-align: left;
    }

    .item-adddescription-wrap {
        font-size: 0.9rem;
        margin-bottom: 32px;
    }

    .item-info {
        margin: 0 auto 10px;
        /*
        margin-top: 64px;
        border-top: 1px dotted #000;
        padding-top: 32px;
        */
    }

    .item-info-list {
        padding: 0 8px;
        font-size: 0.8rem;
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 32px;
    }

    .item-info-list dt {
        font-weight: bold;
        width: 40%;
        padding: 4px 0;
    }

    .item-info-list dd {
        width: 60%;
        padding: 4px 0;
    }

    .item-stock-count {
        margin-left: 16px;
    }

    .cart-btn-wrap {
        text-align: center;
        margin-top: 24px;
    }

    .btn {
        border-radius: 4px;
        color: #fff;
        display: block;
        margin: 16px auto;
        padding: 10px 0;
        width: 60%;
        text-align: center;
        font-size: 0.9rem;
        text-decoration: none !important;
        background: #222;
    }

    .disabled {
        opacity: 0.2;
        background: #555 !important;
        pointer-events: none;
    }



    .restock-btn {
        background: #1c678c;
        width: 330px;
        padding: 10px 0;
        font-size: 1.1rem;
        color: #fff;
    }

    .soldout {
        margin: 32px auto;
        color: #cc0000;
        text-align: center;
        background: #ffeeee;
        padding: 18px 0;
    }

    select.makeshop-option-select {
        width: 50%;

        margin: 4px auto;
        text-align: center;
    }

    i {
        margin-right: 8px;
    }

    .makeshop-option-wrap {
        margin-bottom: 8px;
    }

    .add-image {
        display: flex;
    }

    .add-image-list {
        padding: 8px;
        width: calc(100% / 3);
    }

    .add-image-list img {
        max-width: 100%;
    }

    .add-description {
        text-align: left;
        font-size: 0.8rem;
    }

    .sale-info {
        margin: 16px auto 0;
    }



    .item-share {
        margin-top: 24px;
        margin-bottom: 24px;
    }

    .item-share li {
        display: inline-block;
        vertical-align: top;
    }

    .item-share li img {
        width: 20px;
        margin: 0 5px;
    }

    /******************************** REVIEW STAR */
    .reviewRateStar {
        display: inline-block;
        font-size: 0;
        color: #F8D803;
    }

    .reviewRateStar::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f005";
        font-size: 12px;
        font-weight: 900;
    }

    .starOff::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f005";
        font-weight: 400;
    }

    .starHalf::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f5c0";
    }

    /******************************** ITEM REVIEW */
    .item-review {
        text-align: left;
        display: flex;
        align-items: center;
        padding-top: 16px;
        font-size: 12px;
    }

    .item-review-average {
        font-size: 12px;
        margin: 0 4px 0 12px;
    }

    /******************************** ITEM REVIEW LIST */
    .item-review-detail {
        text-align: left;
        margin-top: 48px;
    }

    .item-review-title {
        position: relative;
        margin-bottom: 16px;
    }

    .btn-review-post-wrap {
        position: absolute;
        right: 0;
        top: 0;
    }

    .item-review-detail .btn-review-post {
        margin: 0;
        padding: 4px 8px;
        width: auto;
        display: inline-block;
        font-size: 0.7rem;
        background: #848484;
    }

    .review-list-unit {
        padding: 16px 0;
        font-size: 0.9rem;
        border-bottom: 1px dotted #ccc;
    }

    .review-list-head {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 8px;
    }

    .review-star,
    .review-score {
        display: inline-block;
    }

    .review-list-score-wrap .reviewRateStar::before {
        font-size: 1.1rem;
    }

    .review-score {
        margin-left: 4px;
        font-weight: bold;
        font-size: 1.0rem;
    }

    .review-list-content {
        font-size: 0.8rem;
        text-align: left;
        padding: 0 8px 8px;
    }

    .review-list-date {
        font-size: 0.7rem;
        padding: 8px;
    }

    .review-list-text {
        text-align: center;
        color: #848484;
        margin-top: 64px;
    }

    /******************************** SUBSCRIPTION */
    .subscription-discount-list td {
        border: 1px solid #000;
        padding: 8px;
    }

    .subscription-discount-point {
        font-size: 0.9rem;
    }

    .subscription-gift-list {
        margin: 32px auto;
    }

    .subscription-gift {
        background: #f0efe9;
        padding: 24px;
        margin: 16px auto;
    }

    .subscription-gift-img {
        max-width: 100px;
        height: auto;
    }

    .subscription-gift-times {
        border-bottom: 1px dotted #000;
        padding-bottom: 6px;
        margin-bottom: 8px;
    }

    .subscription-gift-item {
        margin-bottom: 4px;
    }

    .subscription-gift-info {
        font-size: 0.8rem;
    }

    .item-subscription {
        margin-top: 48px;
        border: 2px solid #FB6107;
        padding: 24px;
        background: #FFF2EA;
        border-radius: 4px;
    }

    /* -----------------------------------------------------------------
    review
    ----------------------------------------------------------------- */
    .index-review-list {
        text-align: left;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        grid-gap: 12px;
    }

    .index-review-list .review-list-unit {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr auto auto;
        width: 100%;
        background: #f2f2f2;
        padding: 0 0 12px;
        margin-bottom: 4px;
        border: none;

    }

    .review-list-info {
        width: 100% !important;
    }

    .review-title {
        font-size: 1.5rem;
        margin-top: 24px;
        margin-bottom: 48px;
        text-align: center;
    }

    .review-title em {
        font-weight: bold;
    }

    .review-item-wrap {
        display: flex;
        padding: 16px;
        border: 1px solid #ddd;
        border-radius: 6px;
        background: #f0f0f0;
    }

    .review-item-image {
        width: 100px;
    }

    .review-item-image img {
        max-width: 100%;
    }

    .review-item-info {
        flex: 1;
        text-align: left;
        margin-left: 16px;
        font-size: 0.9rem;
    }

    .total-review {
        margin-top: 8px;
    }

    .total-review .reviewRateStar::before {
        font-size: 1.1rem;
    }

    .review-average,
    .review-count {
        display: inline-block;
    }

    .review-average {
        font-weight: bold;
        margin-left: 8px;
        font-size: 1.2rem;
    }

    .review-item-btn {
        text-align: right;
    }

    .btn-review-post {
        width: auto;
        display: inline-block;
        padding: 8px 24px;
    }

    .all-review {
        margin-bottom: 48px;
    }

    .all-review .review-head-wrap {
        width: 70%;
        text-align: left;
    }

    .all-review .review-list-content {
        text-align: left;
    }

    .all-review .review-name,
    .all-review .review-list-score-wrap {
        display: inline-block;
    }

    .review-form-wrap {
        width: 600px;
        margin: 48px auto 32px;
    }

    .review-form {
        display: flex;
        text-align: left;
        padding: 16px 0;
    }

    .review-form-title {
        width: 200px;
    }

    .review-form-content {
        flex: 1;
    }

    .review-form-content input,
    .review-form-content textarea {
        width: 100%;
    }

    .review-bread-link-wrap {
        padding: 8px;
        font-size: 12px;
    }

    /* -----------------------------------------------------------------
    guide
    ----------------------------------------------------------------- */
    .guide-title {
        margin-bottom: 48px;
    }

    .guide-section {
        margin-bottom: 64px;
        text-align: left;
        font-size: 0.9rem;
    }

    .guide-section-title {
        margin-bottom: 16px;
        font-weight: bold;
        font-size: 1.1rem;
    }

    /* -----------------------------------------------------------------
    news
    ----------------------------------------------------------------- */
    .news-list {
        margin-bottom: 64px;
    }

    .news-wrap {
        margin-top: 32px;
    }

    .news-head {
        margin-bottom: 24px;
    }

    .news-content-wrap {
        padding: 24px 48px 48px;
        text-align: left;
        margin-bottom: 24px;
    }

    .news-pager {
        display: flex;
        justify-content: center;
    }

    .news-pager li {
        padding: 0 20px;
    }

    .news-date {
        font-size: 0.9rem;
        color: #848484;
        margin-bottom: 8px;
        text-align: left;
    }

    .news-empty {
        color: #ccc;
    }

    /* -----------------------------------------------------------------
    company
    ----------------------------------------------------------------- */
    .company-image img {
        margin: 0 auto 48px;
    }

    /* -----------------------------------------------------------------
    order-contract
    ----------------------------------------------------------------- */
    .order-contract-title {
        margin-bottom: 64px;
    }

    .contract-item {
        margin: 24px;
        display: flex;
        text-align: left;
    }

    .contract-title {
        width: 200px;
    }

    .contract-content {
        flex: 1;
        padding-left: 24px;
    }

    /* -----------------------------------------------------------------
    catalog
    ----------------------------------------------------------------- */
    .catalog-list {
        width: 100%;
        margin-bottom: 48px;
    }

    .catalog-list th {
        background: #f0efe9;
    }

    .catalog-list th,
    .catalog-list td {
        border: 1px solid #c7c3ac;
        padding: 6px 8px;
    }

    .catalog-input-num {
        width: 10rem;
    }

    .catalog-input-quantity {
        width: 3rem;
    }

    .catalog-info-wrap {
        text-align: left;
        font-size: 0.9rem;
        width: 400px;
    }

    .catalog-search-btn {
        width: 60px;
    }

    .catalog-cart-btn {

        width: 25%;
    }

    /* -----------------------------------------------------------------
    footer
    ----------------------------------------------------------------- */
    footer {
        margin: 128px auto 0;

    }


    .footer-nav li {
        display: inline-block;
        padding: 0 16px;
        margin-bottom: 24px;
    }

    .shop-info > p {
        display: inline;
        font-size: 0.8rem;
        margin: 0 8px;
    }

    .copyright {
        margin: 0 auto;
        padding: 20px 0;
        display: block;
        font-size: 14px;
        color: #fff;
        /*
        background: #bcae98;
        */
        background: #eae5d3;
        color: #000000;
    }
}


/* アコーディオンメニュー */
@media screen and (max-width: 768px) {

    /* グローバルメニュー */
    /*
    #nav-content {
    margin: 0;
    position: relative;
}

    #nav-content .nav-list {
    display: flex;
    justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 0;
}

    .global-nav-sp .nav-list .nav-item {
    flex: 1;
}
    */

    * {
        box-sizing: border-box;
    }

    .header-cart-count_in {
        /*
        font-size: 9px;
        */
    }

    .nav-item a {
        border-right: 1px solid #ccc;
        color: #000000;
        display: block;
        padding: 0.6em 0.4em;
        text-align: left;
        text-decoration: none;
    }

    #nav-content .inner a {
        text-align: left;
        padding: 5px 0;
    }

    .nav-item:last-child a {
        border-right: none;
    }
}

/* サブナビゲーション */
@media screen and (min-width: 768px) {

    .nav-list {
        position: relative;
    }

    .footer_detail ul.cart_sp_btm,
    .bottom-menu {
        display: none;
    }

    .nav-item_sub {
        background: #ccc;
        left: 0;
        margin: 0 calc(50% - 50vw);
        opacity: 0;
        position: absolute;
        top: 40px;
        transition: all 0.2s ease;
        visibility: hidden;
        width: 100vw;
    }

    .nav-item_sub .inner {
        display: flex;
        margin: 0 auto;
        width: 1200px;
    }

    .nav-item_sub .inner ul {
        margin: 20px 20px 20px;
    }

    .global-nav-sp .nav-list .nav-item_sub a {
        text-align: left;
    }

    .nav-item:hover .nav-item_sub {
        opacity: 1;
        visibility: visible;
    }
}

/* SP時：ハンバーガーメニューボタン */
#global-nav-icon {
    display: none;
}

body {
    position: relative;
}

@media screen and (max-width: 768px) {
    .container {}

    /*
    .side {
    display: none;
}
    */
}

@media screen and (max-width: 768px) {
    .global_main .global-nav-header {
        padding: 11px 0 0 20px;
        text-align: left;
    }

    .global-nav-sp .nav-list {
        background: rgba(0, 0, 0, 0.8);
        display: none;
        left: 50%;
        padding: 10px;
        position: absolute;
        transform: translate(-50%, 0%);
        width: 100%;
    }

    .global-nav-sp .nav-list .nav-item a {
        border-bottom: 1px solid #ccc;
        border-right: none;
        color: #fff;
        padding: 1rem 1rem;
        text-align: left;
    }

    .global-nav-sp .nav-list .nav-item:last-child a {
        border-bottom: none;
    }

    #global-nav-icon {
        color: #848484;
        cursor: pointer;
        display: inline-block;
        font-size: 28px;

    }
}

@media screen and (max-width: 768px) {
    .fa-bars:before {
        color: #535353;
    }

    .fa-times:before {
        color: #fff;
    }

    .arrow:before {
        margin-left: 10px;
        font-family: "Font Awesome 5 Free";
        content: "\f105";
        color: #fff;
        font-weight: 900;
    }

    .nav-item_sub {
        display: none;
    }

    .global-nav-sp {
        height: 100%;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
    }

    .nav-list {
        margin: 0 auto 20px;
        overflow: auto;
        padding-bottom: 15px;
    }

    .ul_login_sp {
        overflow: auto;
        text-align: left;
    }

    .inner ul {
        padding-inline-start: 10px;
    }

    .point_sp {
        padding-left: 15px;
    }
}

/*========================
smartphone　bottom menu
========================*/


.mini-text {
    font-size: 10px;
}

/*文字大きさ*/

ul.bottom-menu {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 65px;
    margin: 0;
    padding: 0;
    background-color: #fff;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
    /*
    border-top: 1px solid #535353;
    border-bottom: 1px solid #535353;
    */
    z-index: 30;
}

ul.bottom-menu li {
    float: left;
    width: 25%;
    background-color: #fff;
    /*背景色*/
    list-style-type: none;
    text-align: center;
    font-size: 25px;
    /*アイコンのサイズ*/
}

.bottom-menu li a {
    display: block;
    color: #535353;
    /*アイコン＆文字の色*/
    padding-top: 10px;
    padding-bottom: 5px;
    line-height: 10px;
    text-decoration: none;
}

.bottom-menu li a:hover {
    color: #535353;
    /*マウスオーバー時の色*/
}

/* === 展開メニュー === */

.bottom-menu li a .header-cart-count_in {
    display: block;
    font-size: 10px;
}

.header-cart-count2 {
    position: absolute;
    right: 30px;
    top: 4px;
    background: #1c1c1b;
    color: #fff;
    width: 1.6em;
    line-height: 1.6em;
    border-radius: 50%;
    text-align: center;
    font-size: 10px;
}

ul.cart_sp_btm {
    position: fixed;
    left: 0;
    bottom: 65px;
    width: 100%;
    height: 55px;
    margin: 0;
    padding: 5px 0;
    background-color: #fff;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
    z-index: 30;
    display: flex;
}

ul.cart_sp_btm li {
    width: 33%;
    background-color: #fff;
    /*背景色*/
    list-style-type: none;
    text-align: center;
    font-size: 18px;
    /*アイコンのサイズ*/
}

.item_image_btm img {
    height: 100%;
    width: auto;
}

.item_price_btm {
    font-size: 18px;
    line-height: 50px;
}

.btn_btm {
    padding: 7px 0;
}

.btn_btm .btn {
    width: 90%;
    margin: 0 auto;
    padding: 10px 0;
    font-size: 13px;
    line-height: 100%;
}

@media screen and (max-width: 359px) {
    .child-category-item {
        width: calc(100% - 4px);
        display: inline-block;
        text-align: left;
        background: #f0efe9;
        margin-bottom: 4px;
        padding: 4px 8px;
        font-size: 0.6rem;
    }

}
