@charset "UTF-8";
/*リセット
--------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
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,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

/*メディアクエリー
/*変数
---------------------------------------------*/
/* common
---------------------------------------------*/
html {
  font-size: 2.67vw;
  scroll-behavior: smooth;
}
@media screen and (min-width: 769px) {
  html {
    font-size: 12px;
  }
}

body {
  width: 100%;
  background: #F5F4F3;
  font-family: dnp-shuei-gothic-kin-std, sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  font-style: normal;
  width: 100%;
  line-height: 1.6;
  font-feature-settings: "palt";
  background: #F5F4F3;
  font-size: 1.4rem;
  color: #4F4641;
  scroll-behavior: smooth;
}

img {
  width: 100%;
  display: block;
}

*,
*::after,
*::before {
  box-sizing: border-box;
}

.wf-loading {
  opacity: 0;
}

@media screen and (min-width: 769px) {
  .pcNone {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .pcNone {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  .spNone {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .spNone {
    display: none;
  }
}

a.viewAll {
  width: 30rem;
  margin: 0 auto;
  display: block;
  background: #8D8B85;
  text-align: center;
  color: #fff;
  text-decoration: none;
  font-size: 1.4rem;
  height: 4rem;
  line-height: 4rem;
  letter-spacing: 0.05em;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.date {
  display: none;
}

.pagetop {
  margin: 0 auto;
  position: fixed;
  bottom: 5%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 99;
  display: block;
}
@media screen and (min-width: 769px) {
  .pagetop {
    left: auto;
    right: 5%;
    transform: none;
  }
}
.pagetop ul {
  display: flex;
}
.pagetop ul li {
  margin: 0 0.5rem;
  width: 15rem;
  border-radius: 100vh;
}
.pagetop ul li a {
  display: block;
  padding: 1rem;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  font-size: 1.4rem;
  line-height: 1;
}
.pagetop ul li a:before {
  content: "▲";
  font-size: 1rem;
  margin-right: 0.5rem;
}
.pagetop ul .btn_1 {
  border: solid 1px #8D8B85;
  background: #fff;
}
.pagetop ul .btn_1 a {
  color: #8D8B85;
}
.pagetop ul .btn_2 {
  background: #8D8B85;
}
.pagetop ul .btn_2 a {
  color: #fff;
}

@media screen and (max-width: 768px) {
  div#wrap {
    width: 100%;
  }
}

section.mainArea {
  width: 100%;
  background: #E6F4F6;
}
section.mainArea .main {
  margin: 0 auto;
  max-width: 1600px;
}
section.mainArea .main figure .pc {
  display: none;
}
@media screen and (min-width: 769px) {
  section.mainArea .main figure .pc {
    display: inline;
  }
}
@media screen and (min-width: 769px) {
  section.mainArea .main figure .sp {
    display: none;
  }
}
section.itemArea {
  position: relative;
  overflow: hidden;
}
section.itemArea p.desc {
  width: 90%;
  margin: 0 auto;
  padding: 8rem 0;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 2.25;
  text-align: center;
  letter-spacing: 0.1em;
}
section.itemArea div.loop div:first-child {
  animation: loop 400s -200s linear infinite;
}
section.itemArea div.loop div:last-child {
  animation: loop2 400s linear infinite;
}
section.itemArea h2 {
  width: 89.3%;
  margin: 0 auto 3rem;
  color: #4F4641;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 769px) {
  section.itemArea h2 {
    width: 1060px;
  }
}
section.itemArea h2 span {
  display: block;
}
section.itemArea h2 span.en {
  display: inline-block;
  position: relative;
  z-index: 3;
  padding: 0 1.8rem;
  margin-bottom: 1rem;
  font-family: "inter-variable", sans-serif;
  font-size: 2.8rem;
  font-weight: 300;
}
section.itemArea h2 span.jp {
  line-height: 1.6;
  font-size: 3.2rem;
}
section.itemArea div.categoryBox {
  position: relative;
  z-index: 3;
  padding-bottom: 8rem;
}
@media screen and (min-width: 769px) {
  section.itemArea div.categoryBox div.salecontent {
    position: relative;
    width: 1060px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  section.itemArea .scrollable {
    padding: 0 3rem;
    margin-bottom: 3rem;
    overflow-x: auto;
    white-space: nowrap;
    font-size: 0;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
@media screen and (min-width: 769px) {
  section.itemArea div.itemlist {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  section.itemArea ul.itemlist {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist {
    width: 1060px;
    margin: 0 auto 5rem;
    border-radius: 5px;
    overflow-x: auto;
    white-space: nowrap;
    font-size: 0;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
@media screen and (max-width: 768px) {
  section.itemArea .itemlist {
    display: inline-grid;
    grid-template-rows: repeat(1, auto);
    grid-auto-flow: column;
    border-radius: 5px;
  }
}
section.itemArea .itemlist li,
section.itemArea .itemlist > div {
  display: inline-block;
  font-size: 1.2rem;
  font-size: 1.2rem;
  font-weight: normal;
  white-space: normal;
  vertical-align: top;
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist li,
  section.itemArea .itemlist > div {
    width: 190px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    box-sizing: content-box;
  }
}
@media screen and (max-width: 768px) {
  section.itemArea .itemlist li,
  section.itemArea .itemlist > div {
    width: 150px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    box-sizing: content-box;
  }
}
section.itemArea .itemlist li a,
section.itemArea .itemlist > div a {
  font-size: 1rem;
  text-decoration: none;
  color: #4F4641;
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist li a,
  section.itemArea .itemlist > div a {
    font-size: 1.2rem;
  }
}
section.itemArea .itemlist li p,
section.itemArea .itemlist > div p {
  padding: 0 0.5rem;
  box-sizing: border-box;
}
section.itemArea .itemlist li p.photo,
section.itemArea .itemlist > div p.photo {
  padding: 0;
  position: relative;
}
section.itemArea .itemlist li p.photo span,
section.itemArea .itemlist > div p.photo span {
  display: block;
  position: absolute;
  bottom: 0px;
  left: 0;
  padding: 0.3rem 0.8rem;
  background: #219bd9;
  font-size: 1rem;
  font-weight: normal;
  color: #fff;
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist li p:first-child,
  section.itemArea .itemlist > div p:first-child {
    padding: 0;
    position: relative;
  }
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist li p:first-child span,
  section.itemArea .itemlist > div p:first-child span {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: 0 1rem;
    background: #219bd9;
    font-size: 1.2rem;
    color: #fff;
  }
}
section.itemArea .itemlist li p:nth-child(3),
section.itemArea .itemlist > div p:nth-child(3) {
  display: none;
}
section.itemArea .itemlist li p.ico_box,
section.itemArea .itemlist > div p.ico_box {
  display: none !important;
}
section.itemArea .itemlist li div.textOverflow p,
section.itemArea .itemlist > div div.textOverflow p {
  padding: 0 0.5rem;
  overflow: hidden;
  display: -webkit-box;
  width: 100%;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
section.itemArea .itemlist li p.label,
section.itemArea .itemlist > div p.label {
  width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
}
section.itemArea .itemlist li img,
section.itemArea .itemlist > div img {
  margin-bottom: 1rem;
}
section.itemArea .itemlist li p.price,
section.itemArea .itemlist > div p.price {
  display: inline-block;
  font-size: 1.3rem;
  color: #D53858;
  color: #D53858;
}
@media screen and (max-width: 768px) {
  section.itemArea .itemlist li p.price.salecolor,
  section.itemArea .itemlist > div p.price.salecolor {
    padding: 0 0.5rem;
  }
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist li p.price.salecolor,
  section.itemArea .itemlist > div p.price.salecolor {
    padding: 0 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  section.itemArea .itemlist li p.price + p.price,
  section.itemArea .itemlist > div p.price + p.price {
    padding: 0 0.5rem;
  }
}
@media screen and (min-width: 769px) {
  section.itemArea .itemlist li p.price + p.price,
  section.itemArea .itemlist > div p.price + p.price {
    padding: 0 0.5rem;
  }
}
section .categoryArea {
  margin-top: 8rem;
  background: #F5F4F3;
}
@media screen and (min-width: 769px) {
  section .categoryArea {
    padding: 0 0 5rem;
  }
}
section .categoryArea .pagenavi {
  padding: 4.8rem 0;
  margin-bottom: 8rem;
  background: #AAA4A1;
}
section .categoryArea .pagenavi h2 {
  width: 100%;
  display: inline-block;
  font-family: "inter-variable", sans-serif;
  font-size: 2.8rem;
  font-weight: 300;
  line-height: 1;
  color: #fff;
}
section .categoryArea .pagenavi ul {
  width: 90%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1100px;
}
section .categoryArea .pagenavi ul li {
  width: 22%;
  margin-bottom: 1.5rem;
  font-family: "inter-variable", sans-serif;
  font-size: 1.1rem;
  line-height: 1.18em;
  margin-bottom: 1.5rem;
  text-align: center;
}
@media screen and (min-width: 769px) {
  section .categoryArea .pagenavi ul li {
    width: 7.5%;
  }
}
section .categoryArea .pagenavi ul li figure {
  width: 100%;
  margin-bottom: 1rem;
  padding: 10%;
  background: #fff;
  border-radius: 100vh;
}
section .categoryArea .pagenavi ul li figure.no_space {
  padding: 0;
}
section .categoryArea .pagenavi ul li figure img {
  width: 100%;
  border-radius: 100vh;
}
section .categoryArea .pagenavi ul li a {
  color: #4F4641;
  text-decoration: none;
}
section .categoryArea .categoryBox h2 {
  text-align: center;
  line-height: 1;
}
section .categoryArea .categoryBox h2 span {
  display: block;
}
section .categoryArea .categoryBox h2 span.jp {
  margin-bottom: 1rem;
  color: #4F4641;
  font-size: 2.2rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #4F4641;
}
section .categoryArea .categoryBox h2 span.en {
  display: inline-block;
  position: relative;
  z-index: 3;
  color: #4F4641;
  font-family: "inter-variable", sans-serif;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1;
  color: #4F4641;
}
@media screen and (min-width: 769px) {
  section .topics ul.itemlist {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  section .topics ul.itemlist {
    display: inline-grid;
  }
}
section .topics ul.itemlist li,
section .topics ul.itemlist > div {
  width: 15.8rem;
}
@media screen and (min-width: 769px) {
  section .topics ul.itemlist li,
  section .topics ul.itemlist > div {
    width: 30%;
  }
}
section .topics ul.itemlist:nth-child(2) {
  display: none;
}
section .topics div.itemlist {
  display: none;
}
section .ranking .itemlist {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 3rem;
}
@media screen and (min-width: 769px) {
  section .ranking .itemlist {
    padding: 0;
    overflow-x: visible;
    white-space: nowrap;
  }
}
section .ranking .itemlist li,
section .ranking .itemlist > div {
  position: relative;
  z-index: 1;
  height: auto;
  margin-bottom: 3rem;
  padding: 0;
  counter-increment: mycounter;
}
@media screen and (max-width: 768px) {
  section .ranking .itemlist li,
  section .ranking .itemlist > div {
    width: 50%;
    display: block;
  }
  section .ranking .itemlist li:nth-child(n+5),
  section .ranking .itemlist > div:nth-child(n+5) {
    width: 33.3%;
  }
}
@media screen and (min-width: 769px) {
  section .ranking .itemlist li,
  section .ranking .itemlist > div {
    width: 25%;
    display: block;
  }
  section .ranking .itemlist li:nth-child(n+5),
  section .ranking .itemlist > div:nth-child(n+5) {
    width: 16.66%;
  }
}
section .ranking .itemlist li:before,
section .ranking .itemlist > div:before {
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 99;
  width: 2.5rem;
  height: 2.5rem;
  content: counter(mycounter);
  border-radius: 50%;
  background: #4F4641;
  content: counter(mycounter);
  line-height: 2.5rem;
  color: #fff;
  text-align: center;
}

/*-----------------------------
 footer
------------------------------------ */
footer {
  width: 100%;
  padding: 10rem 1.6rem;
  text-align: center;
  padding: 10rem 1.6rem;
  color: #4F4641;
}
footer .f_logo {
  width: 12rem;
  margin: 0 auto;
}
footer .f_logo a {
  margin: 0 auto;
  padding: 0;
  display: block;
}
footer .f_logo a svg path {
  fill: #4F4641;
}
footer .f_icon {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin: 3rem auto;
  padding: 0;
  text-align: center;
}
footer .f_icon li {
  margin: 0 1.5rem;
  padding: 0;
}
footer .f_icon li i {
  margin: 0;
  font-size: 2.4rem;
  color: #4F4641;
}
footer small {
  font-size: 1rem;
  text-align: center;
  font-size: 1rem;
}

/*-----------------------------
 横スクロール
------------------------------------ */
a.scroll-left,
a.scroll-right {
  display: block;
  position: absolute;
  top: 110px;
  width: 3rem;
  height: 3rem;
  border: 1px solid #dadada;
  background: #fff;
  box-sizing: border-box;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  a.scroll-left,
  a.scroll-right {
    display: none;
  }
}

a.scroll-left {
  left: 0.5rem;
  transform: translateX(-70%);
}

a.scroll-right {
  right: 0.5rem;
  transform: translateX(70%);
}

a.scroll-left::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-top: 1px solid #575757;
  border-left: 1px solid #575757;
  content: "";
  transform: rotate(-45deg) translate(1px, -3px);
}

a.scroll-right::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-top: 1px solid #575757;
  border-right: 1px solid #575757;
  content: "";
  transform: rotate(45deg) translate(-5px, 0px);
}

.scrollable::-webkit-scrollbar,
ul.sort::-webkit-scrollbar,
.grid-scroll::-webkit-scrollbar,
.itemlist::-webkit-scrollbar,
.couponlist::-webkit-scrollbar {
  display: none;
}

a.scrolltop {
  opacity: 0;
  transition: 1s;
}
@media screen and (max-width: 768px) {
  a.scrolltop {
    display: block;
    position: fixed;
    right: 2.66%;
    bottom: 1.5rem;
    z-index: 99;
    width: 18.6666666667%;
  }
}
@media screen and (min-width: 769px) {
  a.scrolltop {
    position: fixed;
    bottom: 1rem;
    left: 50%;
    z-index: 99;
    width: 106px;
    margin-left: 550px;
    transform: translateX(-50%);
  }
}
a.scrolltop.fadeIn {
  opacity: 1;
}

/* content
---------------------------------------------*/
/* scss読み込み
---------------------------------------------*/
/* アニメーション
/* 回転アニメーション *//*# sourceMappingURL=style.css.map */