@charset "UTF-8";
/* common css
======================================================================================== */
/* System add style
========================================================================================
======================================================================================== */
/* img Aspect - js
============================================ */
.js-imgAspect.u-imgAspect,
.js-imgAspect > .u-imgAspect {
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 100%;
}

/* 特集コンテンツ
============================================ */
@media screen and (max-width: 1080px) {
  .p-productwrap__block.-large > .l-block[data-value=MOD_JP_00082] .c-specialblock__imagebanner {
    width: calc(100% + 60px);
    margin-left: -30px;
  }
}
@media screen and (max-width: 768px) {
  .p-productwrap__block.-large > .l-block[data-value=MOD_JP_00082] .c-specialblock__imagebanner {
    width: calc(100% + 20px);
    margin-left: -10px;
  }
}

/* l-inner
============================================ */
.p-productwrap__block.-large > .l-block .l-inner {
  display: block;
}

/* sto img
============================================ */
img[src*="/sto/image/product/product_image_main/"]:not(.u-imgAspect),
img[src*="/sto/image/product/product_image_sub/"]:not(.u-imgAspect) {
  display: inline-block;
  aspect-ratio: 1/1;
}

/* modal
============================================ */
.js-modal-open[data-modal]:hover {
  cursor: pointer;
}
.js-modal-open[data-modal]:hover * {
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .js-modal-open[data-modal]:hover {
    opacity: 0.5;
  }
}

/* nav
============================================ */
.c-nav__linkwrap {
  background-color: #EBC5CA;
}
.c-nav__linkwrap[data-arrow].mc-fc__main > span::after {
  border-color: #EBC5CA;
}
.c-nav__linkwrap[data-arrow].mc-fc__sub > span::after {
  border-color: #EC929E;
}
.c-nav__linkwrap[data-arrow].mc-fc__black > span::after {
  border-color: #313131;
}
.c-nav__linkwrap[data-arrow].mc-fc__white > span::after {
  border-color: #fff;
}
.c-nav__linkwrap[data-arrow].mc-fc__gray > span::after {
  border-color: #d5d5d5;
}
.c-nav__linkwrap:hover {
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .c-nav__linkwrap:hover {
    opacity: 0.5;
  }
}

/* hotword
============================================ */
.c-hotkeyword {
  background-color: transparent !important;
}

/* accordion
============================================ */
.c-accordion + .c-accordion {
  margin-top: 1px;
}

/* category
============================================ */
.c-categoryNormalbox__body[data-view~=underlayer] > .c-categoryNormalbox__name,
.c-categoryNormalbox__body[data-view~=underlayer] > .c-categoryNormalbox__image {
  grid-area: 1/1;
}
.c-categoryNormalbox__body[data-view~=underlayer] > .c-categoryNormalbox__image {
  text-align: center;
}

/* Utility
========================================================================================
======================================================================================== */
/* Font Color
============================================ */
.mc-fc__main {
  color: #EBC5CA !important;
}
.mc-fc__sub {
  color: #EC929E !important;
}
.mc-fc__base {
  color: #FFEDF0 !important;
}
.mc-fc__black {
  color: #313131 !important;
}
.mc-fc__white {
  color: #fff !important;
}
.mc-fc__gray {
  color: #d5d5d5 !important;
}

/* Background color
============================================ */
.mc-bgc__main {
  background-color: #EBC5CA !important;
}
.mc-bgc__sub {
  background-color: #EC929E !important;
}
.mc-bgc__base {
  background-color: #FFEDF0 !important;
}
.mc-bgc__black {
  background-color: #313131 !important;
}
.mc-bgc__white {
  background-color: #fff !important;
}
.mc-bgc__gray {
  background-color: #d5d5d5 !important;
}
.mc-bgc__none {
  background-color: transparent !important;
}

.l-block:not(.mc-bgc__base) + .l-block.mc-bgc__base,
.l-block.mc-bgc__base + .l-block:not(.mc-bgc__base),
.l-block:not(.mc-bgc__induction) + .l-block.mc-bgc__induction,
.l-block.mc-bgc__induction + .l-block:not(.mc-bgc__induction) {
  padding-top: 30px;
}

.l-block.u-bgc__base + .l-block.mc-bgc__base,
.l-block.mc-bgc__base + .l-block.u-bgc__base,
.l-block.u-bgc__lightgreen + .l-block.mc-bgc__base,
.l-block.mc-bgc__base + .l-block.u-bgc__lightgreen {
  padding-top: 0;
}

.p-productwrap .-large .l-block.mc-bgc__base {
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (max-width: 1080px) {
  .p-productwrap .-large .l-block.mc-bgc__base {
    width: calc(100% + 60px);
    padding-right: 30px;
    padding-left: 30px;
    margin-left: -30px;
  }
}
@media screen and (max-width: 768px) {
  .p-productwrap .-large .l-block.mc-bgc__base {
    width: calc(100% + 20px);
    padding-right: 10px;
    padding-left: 10px;
    margin-left: -10px;
  }
}

.c-accordion__title * {
  cursor: pointer;
}
.c-accordion__title[class*=mc-fc__main] > .c-accordion__icon::before, .c-accordion__title[class*=mc-fc__main] > .c-accordion__icon::after {
  background-color: #EBC5CA !important;
}
.c-accordion__title[class*=mc-fc__sub] > .c-accordion__icon::before, .c-accordion__title[class*=mc-fc__sub] > .c-accordion__icon::after {
  background-color: #EC929E !important;
}
.c-accordion__title[class*=mc-fc__white] > .c-accordion__icon::before, .c-accordion__title[class*=mc-fc__white] > .c-accordion__icon::after {
  background-color: #fff !important;
}
.c-accordion__title[class*=mc-fc__gray] > .c-accordion__icon::before, .c-accordion__title[class*=mc-fc__gray] > .c-accordion__icon::after {
  background-color: #d5d5d5 !important;
}

/* Border
============================================ */
.mc-border__main {
  border: 1px solid #EBC5CA;
}
.mc-border__sub {
  border: 1px solid #EC929E;
}
.mc-border__black {
  border: 1px solid #313131;
}
.mc-border__white {
  border: 1px solid #fff;
}
.mc-border__none {
  border: none !important;
}

.mc-berc__main {
  border-color: #EBC5CA !important;
}
.mc-berc__sub {
  border-color: #EC929E !important;
}
.mc-berc__black {
  border-color: #313131 !important;
}
.mc-berc__white {
  border-color: #fff !important;
}

.mc-berr__none {
  border-radius: 0 !important;
}
.mc-berr__corner {
  overflow: hidden;
  border-radius: 6px;
}
.mc-berr__full {
  overflow: hidden;
  border-radius: 50%;
}

.mc-berw__1 {
  border-width: 1px !important;
}
.mc-berw__2 {
  border-width: 2px !important;
}
.mc-berw__3 {
  border-width: 3px !important;
}

.mc-designbtn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 470px;
  padding: 25px 16px;
  margin: 0 auto;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  color: #313131;
  background-color: #EBC5CA;
  border: 2px solid #EBC5CA;
  border-radius: 6px;
  -webkit-transition: 0.175s;
  transition: 0.175s;
}
.mc-designbtn > span {
  max-width: 100%;
  /* ((12px + 2px) * 1.4142) / 2 */
  padding: 0 9.8994px;
}
.mc-designbtn::after {
  position: absolute;
  top: 50%;
  /* right: calc(16px + 2px); */
  right: 18px;
  display: block;
  width: 12px;
  height: 12px;
  content: "";
  border-top: 2px solid #313131;
  border-right: 2px solid #313131;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.mc-designbtn.-sub {
  color: #fff;
  background-color: #EC929E;
  border-color: #EC929E;
}
.mc-designbtn.-sub::after {
  border-color: #fff;
}
.mc-designbtn.-gray {
  color: #fff;
  background-color: #d5d5d5;
  border-color: #d5d5d5;
}
.mc-designbtn.-gray::after {
  border-color: #fff;
}
.mc-designbtn.-reverse {
  color: #313131;
  background-color: #fff;
}
.mc-designbtn.-reverse::after {
  border-color: #313131;
}
.mc-designbtn.-small {
  padding: 14px;
  font-size: 16px;
}
.mc-designbtn.-small::after {
  /* right: calc(14px + 2px); */
  right: 16px;
}
.mc-designbtn.-noArrow > span {
  padding: 0;
}
.mc-designbtn.-noArrow::after {
  display: none;
}

@media screen and (max-width: 768px) {
  .mc-designbtn {
    padding: 14px;
    font-size: 16px;
  }
  .mc-designbtn::after {
    /* right: calc(16px + 2px); */
    right: 16px;
  }
}
/* nav manners */
.p-nav__itemwrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .p-nav__itemwrap {
    margin-bottom: 10px;
  }
}
.p-nav__item {
  width: calc((100% + 24px) * 2 / 4 - 24px);
}
@media screen and (max-width: 768px) {
  .p-nav__item {
    width: 100%;
    max-width: unset;
  }
}
.p-nav__linkwrap {
  display: block;
  width: 100%;
  background-color: #F2EBEB;
  text-align: center;
  padding: 10px;
}
.p-nav__linktext {
  text-decoration: underline;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .p-nav__linktext {
    font-size: 14px;
  }
}
.p-nav__linktext::before {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 10px 0 0;
  content: "";
  border-top: 2px solid #313131;
  border-right: 2px solid #313131;
  -webkit-transform: rotate(135deg) translateY(25%);
          transform: rotate(135deg) translateY(25%);
}

/* special buyers recommend */
.p-buyers-flag:has(+ .l-block[data-value=MOD_JP_00016]) {
  padding-bottom: 0px;
}

.p-buyers-flag:not(:has(+ .l-block[data-value=MOD_JP_00016])) {
  padding-bottom: 30px;
}

/* overwrite */
.p-buyers-flag + .u-bgc__base.l-block[data-value=MOD_JP_00016] {
  background-color: unset !important;
}

.p-buyers-flag + .l-block[data-value=MOD_JP_00016] h2 {
  display: block;
  width: 100%;
  padding: 7px 0;
  /* margin-bottom: 30px; */
  margin-bottom: 16px;
  font-size: 0;
  line-height: 0;
  text-align: center;
}

.p-buyers-flag + .l-block[data-value=MOD_JP_00016] .c-title__global.-underline {
  border-bottom: unset;
}

.p-buyers-flag + .l-block[data-value=MOD_JP_00016] h2 .-main {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3em;
}

@media screen and (max-width: 768px) {
  .p-buyers-flag + .l-block[data-value=MOD_JP_00016] h2 .-main {
    font-size: 17px;
  }
}