@charset "UTF-8";

*,
*::before,
*::after {
    box-sizing: border-box;
}

:root {
    --re: #C31919;
    --gry: #F4F5F4;
    --be: #FAFAF7;
    --gn: #0B3810;
}

html {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

html,
body {
    margin: 0;
    padding: 0;
}

body {
    font-family: YakuHanJP, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #000;
    line-height: 1.68;
    letter-spacing: .05em;
    background: #fff;
    -moz-osx-font-smoothing: grayscale;
    overflow-wrap: break-word;
}

article,
aside,
footer,
header,
nav,
section,
main {
    display: block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.2;
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
ol,
ul,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
}

a {
    color: inherit;
    outline: none;
    text-decoration: none;
    position: relative;
    display: inline-block;
    transition: 0.4s;
}

a:hover {
    color: inherit;
    text-decoration: none;
}

a:visited {
    color: inherit;
}

img {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: top;
}

video {
    max-width: 100%;
    height: auto;
}

code,
kbd,
pre,
samp {
    font-family: monospace, sans-serif;
    font-size: inherit;
}

ul,
ol {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

table a:hover{
    color: #3790e8;
  text-decoration: underline;
}

table a:visited{
	color: #cd92cf;
}

table a{
    color: #3181d0;
  text-decoration: none;
}

th,
td {
    text-align: left;
    vertical-align: top;
}


blockquote,
q {
    quotes: none;
}

blockquote::after,
blockquote::before,
q::after,
q::before {
    content: "";
    content: none;
}

address {
    font-style: normal;
}

input,
textarea,
select {
    max-width: 100%;
}

.sp {
    display: none !important;
}

/*-----------------------
/*font
---------------------------------*/
.min,
.main_nav_list__ttl a,
.ranking_box_wrap .item_box,
.recommend_box_wrap .item_box,
.btn02,
.category_title {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.bold {
    font-weight: 700;
}

.txt_80 {
    font-size: .8em;
}

.txt_120 {
    font-size: 1.2em;
}

.tar {
    text-align: right;
}

.tac {
    text-align: center;
}

/*-----------------------
/*layout
---------------------------------*/
.l-row {
    display: flex;
    flex-wrap: wrap;
}

.fs-clientInfo.l-row {
    display: flex;
    flex-wrap: wrap;
}

.l-row.nowrap {
    flex-wrap: nowrap;
}

.l-row__between {
    justify-content: space-between;
}

.l-row__center {
    justify-content: center;
}

.l-row__middle {
    align-items: center;
}

.l-row.l-row__2 > * {
    width: calc(100% / 2 - 1.6em);
}

.l-row.l-row__3 > * {
    width: calc(100% / 3 - 1.6em);
}

.l-row.l-row__4 > * {
    width: calc(100% / 4 - 1.6em);
}

.l-row.l-row__5 > * {
    width: calc(100% / 5 - 1.6em);
}

.l-inner_l {
    max-width: 1420px;
}

.l-inner_m {
    max-width: 1280px
}

.l-inner_l,
.l-inner_m {
    width: 99%;
    margin: 0 auto;
}

.mr10 {
    margin-right: 10px;
}

.mb15 {
    margin-bottom: 15px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb90 {
    margin-bottom: 90px;
}

.mt40 {
    margin-top: 40px
}

/*-----------------------
/*component
---------------------------------*/
/*タブ*/
.c-tab__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.c-tab__item display: block;
}

.c-tab__item.is-checked {
    background: #757575;
    color: #fff;
}

.c-tab__content {
    display: none;
}

.c-tab__content.is-checked {
    display: block;
}

/*アコーディオン*/
.c-accordion__title {
    cursor: pointer;
    padding: .4em .8em
}

.c-accordion__content {
    display: none;
    padding: .4em .8em
}

.c-accordion__title--arrow {
    padding-right: 2.4em;
    position: relative
}



.c-accordion__title--arrow::before,
.c-accordion__title--arrow:after {
    display: block;
    content: '';
    background-color: #adac9b;
    border-radius: 2px;
    position: absolute;
    width: 18px;
    height: 3px;
    top: calc(50% - 3px);
    right: 7px;
}

.c-accordion__title--arrow:before {
    width: 3px;
    height: 18px;
    top: calc(50% - 11px);
    right: 14px;
}

.is-checked .c-accordion__title--arrow:before {
    -webkit-transform: translateY(-50%) rotateX(180deg);
    transform: translateY(-50%) rotateX(180deg)
}

/* Dots */
.slick-dots {
    position: absolute;
    bottom: 16px;
    right: 3%;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: right;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    margin: 0 .5em;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    content: '';
    text-align: center;
    color: black;
    border: 2px solid #fff;
    border-radius: 50%;
}

.slick-dots li.slick-active button:before {
    background: #fff
}

.top_mainslider .slick-slide {
    margin: 0 5px;
}

.slick-slide img {
    display: inline;
}

/*-----------------------
ALL
-----------------------*/
@media (min-width: 1101px){
.fs-l-page{
	padding-top: 0px !important;
}
	}
.season-item_list a:hover,
.top_mainslider .slick-slide a:hover,
.item_box a:hover,
#p_top_future .future_list li a:hover,
.column__box__list li a:hover {
    opacity: .8;
}

.season-item_list a:hover p,
.item_box a:hover .item_title,
#p_top_future .future_list li a:hover > *,
.column__box__list li a:hover > * {
    text-decoration: underline;
}

.container {
    padding: 95px 0;
}

.item_thumbnail {
    margin-bottom: .8em;
}

.item_title {
    margin-bottom: .3em;
    line-height: 1.2;
}

.title01,
.title02 {
    text-align: center;
    line-height: 1;
}

.title01 {
    font-size: 32px;
    margin-bottom: 2em;
}

.title01 img {
    vertical-align: middle;
    margin-left: 16px
}

.title02 {
    font-size: 24px;
    margin-bottom: 1em;
    position: relative;
}

.title03 {
    padding-left: 1em;
    text-align: left;
}

.title03:before {
    position: relative;
    content: '';
    width: 0.6em;
    height: 1px;
    top: -7px;
    left: -7px;
    background: #000;
    display: inline-block;
}

.title04 {
    font-size: 20px;
    line-height: 1;
    padding: 2px .5em;
    border-left: 7px solid var(--gn);
    margin-bottom: 1.5em;
}

.title05 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 1em;
    letter-spacing: .1em;
}

.btn {
    display: block;
    position: relative;
}

.btn01 {
    color: #fff !important;
    background: #ADAC9B;
    font-size: 14px;
    text-align: center;
    padding: 1em;
    margin: 0 .2em;
    line-height: 1;
    display: flex;
    align-items: center;
    height: 34px;
}

.nav_right .btn01 {
    padding: 1.5em .5em;
}

.btn01 img {
    margin-right: 3px
}

.btn01:hover {
    background: var(--gn);
}

.btn03 {
    background: none;
    border: 1px solid var(--gn);
    color: var(--gn) !important;
}

.btn03:hover {
    background: var(--be);
}

.btn02 {
    color: #fff !important;
    background: var(--gn);
    font-size: 24px;
    text-align: center;
    padding: 1.6em 2.3em;
    margin: 0 auto;
    line-height: 1;
    max-width: 960px;
    border-radius: 3px;
    border: #fff 1px solid;
}

.btn02:hover {
    color: var(--gn) !important;
    background: #fff;
    border: 1px solid var(--gn);
}


.arrow-right {
    position: relative;
    display: flex;
    justify-content: center;
}

.arrow-right:before {
    content: '';
    position: absolute;
    right: 1em;
    top: 50%;
    margin-top: -5px;
    width: 30px;
    height: 13px;
    border-bottom: solid 2px;
    border-right: solid 3px;
    transform: skew(45deg);
    transition: 0.4s;
}

.btn02:hover.arrow-right:before {
    right: -1em;
    width: 60px;
}

/*---------------------------------------
p_header_topinfo / [header]インフォメーション
---------------------------------------*/
#p_header_topinfo {
    background: #0B3810;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    padding: .75em;
    text-align: center;
}

/*---------------------------------------
p_header_nav_top / [header]タイトルとサブナビゲーション
---------------------------------------*/
#p_header_nav_top {
    width: 94%;
    margin: 0 auto;
    padding: 8px;
    height: 105px
}

.p_header_nav_top_left {
    width: 30%;
}

.p_header_nav_top_right {
    width: 70%;
    justify-content: end;
}

.p_header_nav_top_left .ico-wrap {
    width: calc(100% - 180px);
    align-items: center;
}

.site_logo {
    width: 160px;
    margin-right: 20px
}

.ico-free-shipping {
    max-width: 100px;
    width: 40%;
    margin-right: 5px
}

.ico-open-daily {
    max-width: 160px;
    width: calc(60% - 5px);
}

.nav_left {
    margin: 0 2.4em 0 0;
}

.nav_left li a {
    font-size: 16px;
    line-height: 1;
    padding: 0 1em;
    border-right: 1px solid #000;
}
.nav_left li:last-child a{
	border-right: none;
}
.nav_left li a:hover {
    color: #165518;
    text-decoration: underline;
}

.member-status {
    font-size: 14px;
    text-align: right;
    line-height: 1.2;
    margin-right: 10px;
    max-width: 350px;
    margin-top: 3px;
}

@media screen and (max-width: 1500px) {
    .member-status {
        font-size: 13px;
    }

    .member-status a {
        text-decoration: underline;
    }
}

/*---------------------------------------
p_header_nav_under /[header]メインナビゲーション
---------------------------------------*/
#p_header_nav_under {
    background: var(--gry);
}

.main_nav_list {
    border-left: 1px solid #DCE1DC;
}

.main_nav_list__ttl {
    border-right: 1px solid #DCE1DC;
}

.main_nav_list__ttl > a {
    color: var(--gn);
    padding: 1em 2.4em;
    font-size: 18px;
    position: relative;
}

.main_nav_list__ttl > a:hover {
    background: var(--be);
}

.main_nav_list .title02 {
    font-size: 14px;
    margin-bottom: 0;
}

.arrow_bottom > a {
    position: relative;
    padding: 1em 3.2em 1em 2.4em;
}

.arrow_bottom > a:after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0;
    border-bottom: solid 2px #333;
    border-right: solid 2px #333;
    position: absolute;
    top: 50%;
    right: 2em;
    margin-top: -6px;
    transform: rotate(45deg);
}

.p_search-box {
    margin-left: 1em;
}

.search_container {

    box-sizing: border-box;
    position: relative;
    background: #fff;
    padding: 3px 10px;
    border-radius: 20px;
    height: 2.3em;
    width: 260px;
    overflow: hidden;
}

.search_container input[type="text"] {
    border: none;
    height: 1em;
}

.search_container input[type="text"]:focus {
    outline: 0;
}

.search_container input[type="submit"] {
    cursor: pointer;
    border: none;
    background: url(./img/ico-search.svg) no-repeat center center / auto 100%;
    position: absolute;
    width: 1.3em;
    height: 1.3em;
    right: 1.3em;
    top: 50%;
    margin-top: -.7em;
    outline: none;

}

.h_fixed_pc.fixed {
    position: fixed;
    left: 0;
    width: 100%;
    z-index: 9999;
}

/*メガメニュー*/
.arrow_bottom .is-active::after {
    transform: rotate(225deg);
    top: 57%;
}

.megaMenu__link.is-active {

    background: var(--be);
}

.megaMenu__link.is-active + .megaMenu__content {
    opacity: 1;
    visibility: visible;
}

.megaMenu__content {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 168px;
    left: 0;
    width: 100%;
    background-color: var(--be);
    -webkit-transition: opacity 0.3s, visibility 0.3s;
    transition: opacity 0.3s, visibility 0.3s;
    z-index: 100;
    padding: 60px 0;
}

.megaMenu__content_inner {
    max-width: 1000px;
    width: 94%;
    margin: 0 auto;
}

.main_nav__pickup {
    width: 35%;
}

.main_nav__category {
    width: 63%
}

.main_nav__category .category_list .category_box a {
    padding: 20px 0
}

.main_nav__category .category_list .category_title {
    font-size: 17px;
}

.main_nav__category .category_list.l-row.l-row__4 > * {
    width: calc(100% / 4 - 1em);
}

.main_nav__category .category_list .category_box {
    margin: 0 8px 16px;
}

/*---------------------------------------
p_top_season-item /  [TOP]季節のおすすめ商品
---------------------------------------*/
#p_top_season-item {
    background: var(--be);
}

.season-item_list {
    margin-top: 70px;
    margin-bottom: 70px;
}

.season-item_list li {
    position: relative;
    max-width: 510px;
}

.season-item_list li:before {
    position: absolute;
    content: '';
    background: url(./img/ico-future-mark.png);
    background-size: cover;
    top: -80px;
    left: -24px;
    width: 124px;
    height: 124px;
    z-index: 1
}

.season-item_img {
    margin-bottom: 1.6em
}

/*---------------------------------------
p_top_ranking / [TOP]ランキング
---------------------------------------*/

.ranking_box_wrap .item_box,
.recommend_box_wrap .item_box {
    position: relative;
    overflow: hidden;
    counter-increment: cnt;
}

.ranking_genre_list {
    margin-bottom: 50px
}

.ranking_genre_ttl {
    font-size: 24px;
    font-weight: 700;
    padding: 0 2em 0 1em;
    position: relative;
}

.ranking_genre_ttl::before {
    background: var(--gn);
    content: '';
    width: 100%;
    height: 3px;
    position: absolute;
    left: 0;
    bottom: 0;
    margin: auto;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
}

.ranking_genre_ttl:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
}

.ranking_genre_ttl.is-checked::before {
    background: var(--gn);
    content: '';
    width: 100%;
    height: 3px;
    position: absolute;
    left: 0;
    bottom: 0;
    margin: auto;
    transform-origin: right top;
    transform: scale(1, 1);
}

.ranking_box_wrap .item_box a:before {
    content: counter(cnt);
    width: 75px;
    height: 75px;
    background: var(--gn);
    font-size: 1.4rem;
    line-height: 1.2;
    color: #fff;
    position: absolute;
    left: -40px;
    top: -40px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.ranking_box_wrap .item_box:first-child a:before {
    background: #B79507;
}

.ranking_box_wrap .item_box:nth-child(2) a:before {
    background: #8D8D8D;
}

.ranking_box_wrap .item_box:nth-child(3) a:before {
    background: #AD651C;
}

/*---------------------------------------
p_top_future / [TOP]特集
---------------------------------------*/
#p_top_future .future_list li {
    max-width: 510px;
    width: 25%;
    margin: 0 20px;
}

.future_img {
    margin-bottom: 1.6em
}

/*---------------------------------------
p_top_category / [TOP]商品一覧(カテゴリー)
---------------------------------------*/
#p_top_category {
    background: var(--be);
}

.category_list {
    margin: 0 auto;
}

#p_top_category .category_list {
    margin: 50px auto 0;
}

.category_box {
    background: #fff;
    margin: 0 12px 16px;
    border-radius: 1em;
    -webkit-filter: drop-shadow(0px 3px 5px rgba(126, 82, 31, 0.1));
    filter: drop-shadow(0px 0px 5px rgba(126, 82, 31, 0.1));
}


.category_box a {
    max-width: 300px;
    min-width: calc(20% - 24px);
    padding: 40px 0;
    text-align: center;
}

.category_img {
    max-width: 40%;
    margin: 0 auto 10px
}

.category_title {
    font-size: 22px;
}

/*---------------------------------------
p_top_about / [TOP]店舗情報
---------------------------------------*/
#p_top_about {
    background: url(./img/bg_top_about.jpg)no-repeat;
    background-size: cover;
    padding: 140px 0;
    background-position: center;
}

#p_top_about .txt_box {
    text-align: center;
    color: #fff;
    font-size: 18px;
    line-height: 2.3
}

#p_top_about .txt_box p {
    margin-bottom: 2em;
}

.about_link {
    background: rgba(0, 0, 0, 0.78);
    max-width: 980px;
    margin: 0 auto;
    padding: 30px;
    width: 90%;
}

.about_link_txt {
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center;
    justify-content: center
}

.about_link_txt_ttl {
    font-size: 32px;
    text-align: center;
    line-height: 1.4;
    margin-bottom: 40px
}

.about_link_txt p {
    margin-bottom: 40px
}

.link01 {
    text-align: right;
}

.link01 a {
    position: relative;
    padding-right: .8em;
    padding: 3px 30px 3px 10px;
}

.link01 a:before {
    content: '';
    width: 7px;
    height: 7px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    transform: rotate(45deg);
    position: absolute;
    right: 10px;
    top: 50%;

}

.link01 a:after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
    /*背景の形状*/
    width: 0;
    height: 1px;
    background: #fff;
    opacity: 0;
    /*はじめは透過を0に*/
}

/*現在地とhoverの設定*/
.link01 a:hover:after {
    /*背景の形状*/
    width: 100%;
    opacity: 1;
    /*アニメーションの指定*/
    animation: bgappear 0.5s forwards;
}

/*アニメーションで線を伸ばして背景をつける*/
@keyframes bgappear {
    0% {
        width: 0%;
        height: 1px;
    }

    50% {
        width: 100%;
        height: 1px;
    }

    100% {
        width: 100%;
        height: 100%;
        background: #fff;
    }
}


.link01 a:hover {
    color: #333;
    /*テキストを最前面へ*/
    z-index: 1;
}

.link01 a:hover:before {
    border-top: solid 2px #000;
    border-right: solid 2px #000;

}

/*---------------------------------------
p_top_column / [TOP]コラム一覧
---------------------------------------*/
.column_category_list {
    max-width: 800px;
    margin: 0 auto 3em;
    width: 100%;
}

.column_category_list li {
    margin: 0 .3em .3em;
}

.column_category_list li a {
    font-size: 18px;
    line-height: 1;
    padding: .6em 1em;
    border: 1px solid #333;
}

.column_category_list li a:hover {
    background: var(--gn);
    color: #fff;
}

.column__box__title,
.column__box__link {
    width: 10%;
}

.column__box__list {
    width: 80%;
}

.column__box__title {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: flex;
    align-items: center;
    font-size: 24px;
    letter-spacing: 10px;
}

.column__box__title_ico {
    margin-bottom: 16px
}

.post_thumbnail {
    position: relative;
    margin-bottom: 8px
}

.post_cate {
    font-size: 12px;
    line-height: 1;
    background: #333;
    padding: .3em 1em .5em;
    color: #fff;
    position: absolute;
    left: 0;
    top: 10px;
}

.post_date {
    font-size: 12px;
    line-height: 1;
    margin-bottom: 1.6em;
}

.post_title {
    font-size: 18px;
    line-height: 1.3;
    margin-bottom: .8em;
}

.post_txt p {
    font-size: 14px;
    line-height: 1.75;
}

/*---------------------------------------
p_top_voice / [TOP]お客様の声
---------------------------------------*/
#p_top_voice {
    background: var(--be);
}

.voice_area {
    background: #fff;
    height: 575px;
    overflow-y: scroll;
}

/*---------------------------------------
p_check-item / [TOP]チェックアイテム
---------------------------------------*/
/*---------------------------------------
p_footer_guide / [footer]お買い物ガイド
---------------------------------------*/
#p_footer_guide {
    background: var(--be);
}

.guide_box__inner {
    padding-left: 40px
}

.pay_list {
    margin: 10px auto;
    border-top: 1px solid #ADAC9B;
    border-bottom: 1px solid #ADAC9B;
    padding: 2em 0 1em;
}

.pay_list .credit {
    width: 100% !important;
}

.pay_list li {
    position: relative;
    padding-left: 1em;
    margin-bottom: 1em;
}

.pay_list li:before {
    position: absolute;
    content: '';
    width: 2px;
    height: 2px;
    background: #000;
    left: 0;
    top: 50%;
}

.ico-guide {
    background: var(--re);
    color: #fff;
    text-align: center;
    padding: .5em 1em;
    font-size: 27px;
    line-height: 1;
    margin-right: 5px;
}

/*---------------------------------------
p_footer_contact / [footer]お問合せ
---------------------------------------*/
#p_footer_contact {
    background: url(./img/bg_top_contact.jpg)no-repeat;
    background-size: cover;
    padding: 140px 0;
    color: #fff;
}

#p_footer_contact .txt_box {
    font-size: 18px;
    line-height: 2.3;
    margin-bottom: 40px;
}

#p_footer_contact .contact_box {
    max-width: 790px;
    margin: 0 auto;
}

#p_footer_contact .contact_box a {
    border: 2px solid #fff;
    padding: 30px 30px 20px;
    display: block;
    text-align: center;
    border-radius: 3px;
}

#p_footer_contact .contact_box a:hover {
    background: var(--gn);
}

#p_footer_contact .contact_box .tel-no {
    font-size: 60px;
    margin-bottom: 5px;
    line-height: 1
}

/*---------------------------------------
p_footer_nav / [footer]ナビゲーション
---------------------------------------*/
#p_footer_nav {
    padding: 60px 0 40px;
    position: relative;
}

.page_top {
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.page_top a {
    width: 100px;
    height: 100px;
    background: #fff;
    border-radius: 50%;
    display: block;
    position: relative;
}

.page_top:before {
    content: '';
    top: 24px;
    left: 34%;
    position: absolute;
    display: inline-block;
    width: 12px;
    height: 12px;
    z-index: 1;
    margin: 0 10px;
    border-top: 2px solid #305d04;
    border-left: 2px solid #305d04;
    transform: rotate(45deg);
}

#p_footer_nav .site_title {
    max-width: 283px;
    width: 70%;
    margin: 0 auto 20px 0;
}

#p_footer_nav .ico-free-shipping {
    max-width: 130px
}

#p_footer_nav .ico-open-daily {
    max-width: 183px
}

.p_footer_nav_left .txt_box {
    font-size: 13px;
    line-height: 1.75;
}

.p_footer_nav_left .txt_box a {
    text-decoration: underline;
}

.p_footer_nav_left .contact_box {
    max-width: 320px;
    width: 90%;
    border: 1px solid #000;
    padding: 24px 10px;
    text-align: center;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 700;
}

.p_footer_nav_left .freedial-no,
.p_footer_nav_left .tel-no {
    font-size: 23px;
    letter-spacing: -0.01em;
}

.p_footer_nav_right {
    width: calc(100% - 400px);
    border-left: 1px solid var(--gry);
    padding: 0 0 0 60px;
}

.footer_navlist > li {
    margin-bottom: 20px;
}

.footer_navlist_category,
.footer_navlist_category_c {
    padding-left: 1em;
}

.footer_navlist_category li {
    margin-right: 16px;
	margin-bottom: 10px
}

.footer_navlist_category_c a {
    position: relative;
    font-size: 14px;
    display: block;
}

.footer_navlist_category_c a:before {
    position: relative;
    content: '';
    width: 0.6em;
    height: 1px;
    top: -7px;
    left: -7px;
    background: #000;
    display: inline-block;
}

.footer_navlist_category_c a:hover {
    text-decoration: underline;
}

.l-row.l-row__2 .footer_navlist__other {
    width: 50%;
}

.popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: .6s;
}

.popup.is-show {
    opacity: 1;
    visibility: visible;
}

.popup-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    max-width: 600px;
    z-index: 2;
}

.popup-inner img {
    width: 100%;
}

.close-btn {
    position: absolute;
    right: -11px;
    top: -11px;
    width: 25px;
    height: 25px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
    z-index: 3;
    background: #fff;
    border-radius: 50%;
}

.close-btn::before,
.close-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    height: 11px;
    background: #333;
}

.close-btn::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.close-btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}


.black-background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .4);
    z-index: 1;
    cursor: pointer;
}

.popup_btn {
    position: fixed;
    bottom: 10px;
    right: 0;
    width: 93px;
}

.checkhistory_fixed {
    position: fixed;
    right: 0;
    bottom: 115px;
    width: 93px;
}

.popup_btn img {
    border-radius: 3px;
}


#category-comment1,
#category-comment2 {
    max-width: 700px;
}

/*hover*/
.category_box,
.popup_btn img {
    transition: 0.2s;
}

.popup_btn img:hover,
.category_box:hover,
.checkhistory_fixed:hover {
    transform: translateY(-5px);
}

/* サイドメニュー用css*/
#p-side .title05 {
    font-size: 16px;
    margin: 1em auto;
    padding: 0 0 0.5em;
    border-bottom: 1px solid #eee;
}

#p-side .sidebox {
    margin-bottom: 30px;
}

#p-side .p_search-box {
    margin: 1em auto;
}

#p-side .search_container {
    width: 100%;
    background: #f0f0f0;
}

#p-side .search_container input[type="text"] {
    background: #f0f0f0;
}

.p_category_list_side .parent .title {
    font-weight: 900;
    background: #fafaf7;
    padding: 1em;
}

.p_category_list_side .child {
    padding-left: 3em;
}

.p_category_list_side .child a {
    padding: .3em 0;
    border-bottom: 1px solid #eee;
    display: block;
    font-size: 14px;
    position: relative;
}

.p_category_list_side .child a:before {
    position: absolute;
    content: '';
    width: 0.5em;
    height: 2px;
    background: #68922c;
    left: -1.3em;
    top: 1em;
}

.c-accordion__title--arrow:before {
    transition: all 0.2s;
}

.is-checked .c-accordion__title--arrow:before {
    -webkit-transform: rotateX(90deg);
    transform: rotateX(-90deg);
}

#p-side {
    width: 300px;
}

section.right {
    width: calc(100% - 300px);
}

#p-side .ranking_box_wrap .item_box a:before {
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
    left: -20px;
    top: -20px;
}

#p-side .item_title,
#p-side .item_price {
    font-size: 12px;
}

#p-side .l-row.l-row__2 > * {
    width: 48%;
    margin-bottom: 20px
}

/*textcenterを解除*/
footer,
.fs-c-productNameHeading,
.fs-c-breadcrumb{
	text-align: left;
}


/*キャッチコピー非表示*/
.fs-c-productNameHeading__copy{
	display: none;
}

.pointbnr_slider{
	margin-bottom: 30px
}




/******************
20240618追加
*******************/
@media screen and (min-width: 960px) {
.review_container,#item-comment3{
	grid-column: 1 / span 2;
}
}


.productRating.ratingcount-10{
 display: flex;
}
.fs-c-rating {
    display: flex;
 align-items: center;
}
.fs-c-rating__value {
    color: #C78D2F;
    margin-left: 2px;
    margin-right: 4px;
}
.fs-c-rating__value-number a {
    text-decoration: underline;
}
.review_box {
    position: relative;
    font-size: 1.1rem;
    background: #c78d2f;
    color: #fff;
    padding: 5px;
    line-height: 1;
    border-radius: 3px;
 display: flex;
    align-items: center;
	margin-left: 7px
}
.review_box::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -10px;
    margin-top: -4px;
    border: 4px solid transparent;
    border-right: 7px solid #c78d2f;
}
.fs-l-product2 #p-side+.fs-l-pageMain .fs-c-heading, #p-side+.fs-l-pageMain .fs-c-subgroup{
 background: none;
    margin: 0 auto .65em;
    padding: 0;
}
.fs-c-productNumber {
    border: none;
    padding: 0;
}
.fs-c-productNumber__number{
 font-weight: normal
}
.fs-c-productActionButton .fs-c-button--primary {
    background: #e84f4f;
    border: 1px solid #DE374F;
    border-radius: 8px;
    color: #ffffff;
    cursor: pointer;
    display: inline-block;
    font-size: 24px;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    padding: 8%;
    box-shadow: none;
    min-width: 240px;
}
.fs-c-returnedSpecialContract,.fs-c-inquiryAboutProduct.fs-c-buttonContainer.fs-c-buttonContainer--inquiryAboutProduct{
 padding: 0
}
.fs-c-returnedSpecialContract__link{
	text-align: left
}
.fs-c-returnedSpecialContract__link a {
    font-size: 14px;
    text-decoration: underline;
}
.fs-c-inquiryAboutProduct.fs-c-buttonContainer.fs-c-buttonContainer--inquiryAboutProduct{
	margin-bottom: 2em
}
.fs-c-inquiryAboutProduct.fs-c-buttonContainer.fs-c-buttonContainer--inquiryAboutProduct .fs-c-button--plain{
     border-radius: 2px;
    color: #000;
    padding: 0;
    font-size: 14px;
    text-align: center;
    border: none;
    transition: .2s;
    text-decoration: underline;
}
.fs-c-button--particular.fs-c-button--addToWishList--detail{
 padding: 0.6em 1.6em;
 background: none;
     border: 1px solid #de374f;
    color: #de374f;
    width: 100%;
}

#fs_ProductDetails .fs-c-productQuantityAndWishlist__quantity{
	position: relative;
    margin-left: 40px;
}
#fs_ProductDetails .fs-c-productQuantityAndWishlist__quantity::before {
    content: "個数";
    position: absolute;
    bottom: 0;
    left: -40px;
}
#p_header_topinfo p{
	text-align: center;
}
/*商品ページ*/
.fs-c-productThumbnail__image {
    margin: 0 2% 2% 0;
    flex-basis: 31%;
    min-width: 56px;
}
.fs-l-product2 .fs-l-productLayout > * > *{
	margin-bottom: 0;
}
.fs-c-productNameHeading.fs-c-heading {
    font-size: 2.4rem;
    line-height: 3.5rem;
    margin-bottom: 20px;
}
.url_copy button {
    width: 100%;
    padding: 10px;
    background: #557e1b;
    color: #fff;
    font-weight: bold;
    border-radius: 6px;
    margin-top: 20px;
    border: none;
}
.url_copy button span {
    background: url(https://sugamo.itembox.design/item/renewal/img/ico-bx-copy.svg) no-repeat left center / 18px 18px;
    padding: 5px 0 5px 28px;
}
.fs-c-productQuantityAndWishlist{
	    grid-template-columns: 1fr 220px;
}
.fs-c-productQuantityAndWishlist__wishlist{
	width: 100%
}
.fs-c-button--particular.fs-c-button--addToWishList--detail{
	font-size: 14px
}
.item_meyasu {
       background: #fff5e3;
    padding: 10px;
    border: 2px solid #c78d2f;
    border-radius: 0;
    font-weight: bold;
    font-size: 1.5rem;
    margin: 8px 0 8px !important;
}
.fs-c-productPointDisplay {
    background: none;
    color: #e84d4d;
    padding: 0;
}
.fs-l-productLayout__item .Home_delivery{
    background: #ac6060;
    display: inline-block;
    font-size: 12px;
    padding: 4px;
    color: #fff;
    line-height: 1;
}
.review_container{
	margin: 5rem auto;
	background: #fafaf7;
	width: 100%
}
.fs-c-productReview {
    padding: 0 5% 5%;
}
.review_container .pro__tp--tit{
	 padding: 15px 0% 15px 5%;
    font-size: 2.4rem;
    line-height: 3.5rem;
    font-weight: bold;
        background: #c78d2f;
    color: #fff;
    margin-bottom: 30px;
}
.fs-c-reviewBody{
	background: #fff;
    border-radius: 10px;
}
.fs-c-aggregateRating{
	    justify-content: flex-start;
}
.fs-c-aggregateRating__count{
	text-align: left;
	position: relative;
	padding: 0 2em 0 1em;
	display: inline-block;
    flex-grow: inherit;
}
.fs-c-aggregateRating__count:before{
	content: '(';
	position: absolute;
	left: 0;
}
.fs-c-aggregateRating__count:after{
	content: '件)';
	position: absolute;
	right: 0;
}
.fs-c-aggregateRating__rating::before{
	    font-size: 14px;
    margin-bottom: .6em;
	font-weight: 700;
	color: #C78D2F;
	text-align: left;
}
.fs-c-aggregateRating{
	padding-bottom: 8px;
}
.fs-c-reviewList{
	margin: 10px auto 30px;
}
#item-comment4 table,#category-comment2 table{
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin-bottom: 40px
}
#item-comment4 table td,#category-comment2 table td {
    padding: 10px;
	border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
	font-size: 14px;
}
#item-comment4 table td:first-child,#category-comment2 table td:first-child {
    background: #e5ead0 ;
    text-align: center;
    min-width: 200px;
	vertical-align: middle;
}
div#item-comment4,#category-comment2{
	grid-column: 1 / 3;
}
.fs-l-productLayout__item .Mail_service {
    background: #81b2d2;
}
.fs-l-product2 .fs-c-productMainImage{
	position: relative;
	margin-bottom: 20px
}
.fs-c-productMainImage__expandButton{
	position: absolute;
	bottom: 0;
	right: 0
}

.fs-c-button--plain.fs-c-button--viewExtendedImage::before{
	font-size: 3.2rem;
	color: #fff;
}
.fs-c-productMainImage__expandButton .fs-c-button--viewExtendedImage.fs-c-button--plain{
	display: flex;
	justify-content: center;
	align-items: center;
	background: rgba(0, 0, 0, 0.3);
	border: 1px solid #fff;
}
.fs-c-productReview__addReview .fs-c-button--plain,
.fs-c-productReview__allReviews.fs-c-buttonContainer.fs-c-buttonContainer--viewAllReviews a{
	background: #fff;
	 background: -webkit-gradient(linear, left top, left bottom, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(top, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
  -webkit-box-shadow: inset 1px 1px 1px #fff;
  box-shadow: inset 1px 1px 1px #fff;
	padding: 1em 2em;
    border-radius: 4px;
    margin: 0 auto;
	font-size: 16px;
	min-width: 300px
}
.fs-c-productReview__allReviews.fs-c-buttonContainer.fs-c-buttonContainer--viewAllReviews a:hover{
	background: var(--gn)
}
.fs-c-reviewList__item{
	padding: 30px 0;
	border-bottom: 1px solid rgba(193, 191, 183, 0.36)
}
.fs-c-reviewList__item:first-child{
	border-top: 2px solid #c78d2f;
}
.fs-c-productQuantityAndWishlist__quantity .fs-c-quantity__select {
padding: 0.53em 1em;
}
.fs-c-reviewList__item .fs-c-reviewBody{
	text-align: left;
}
.fs-c-reviewerStatus{
	display: block;
}
.fs-l-productLayout__item.fs-l-productLayout__item--2{
	text-align: left;
}
#fs_ProductDetails .fs-l-product2 .fs-l-productLayout > * > *{
	margin-bottom: 8px
}
#fs_ProductDetails .fs-c-productReview{
	margin-top: 30px;
	padding: 0;
}

@media screen and (min-width: 960px) {
	.fs-l-product2 .fs-l-productLayout{
		padding-left: 60px;
		        grid-template-columns: calc(54% - 40px / 2) calc(46% - 40px / 2);
	}
	
}
@media screen and (max-width: 960px) {
.fs-l-productLayout__item.fs-l-productLayout__item--2{
	padding: 0 4%;
}
}

/*footer banner*/
.footersnslist a {
    width: min(300px, 30%);
}

.footersnslist {
    column-gap: 20px;
}
@media screen and (max-width: 768px) {
	.footersnslist a {
    width: 90%;
    margin: 0 auto 8px;
}
}