@charset "UTF-8";
/*! destyle.css v3.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
:root {
  --z-index-header: 999999;
  --z-index-modal: calc(var(--z-index-header) + 1);
}

*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
}

main {
  display: block;
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

dt {
  font-weight: 700;
}

dd {
  margin-left: 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

pre {
  font-family: monospace, monospace;
  font-size: inherit;
}

address {
  font-style: inherit;
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img,
embed,
object,
iframe {
  vertical-align: bottom;
}

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
}

[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
       appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
       appearance: radio;
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

option {
  padding: 0;
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

label[for] {
  cursor: pointer;
}

details {
  display: block;
}

summary {
  display: list-item;
}

[contenteditable]:focus {
  outline: auto;
}

table {
  border-color: inherit;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: 700;
}

/*! purgecss start ignore */
/* fonts */
@font-face {
  font-display: swap;
  font-family: SoDoSans;
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/a04d3c474ae54100589fa362d8f6db2a.woff?a04d3c474ae54100589fa362d8f6db2a);
}
@font-face {
  font-display: swap;
  font-family: SoDoSans;
  font-style: normal;
  font-weight: 600;
  src: url(/fonts/9072643e9f07efac73cc4b79a2b55d7c.woff?9072643e9f07efac73cc4b79a2b55d7c);
}
@font-face {
  font-display: swap;
  font-family: SoDoSans;
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/891bac4bf2cf726a4a3ccf8560d7c300.woff?891bac4bf2cf726a4a3ccf8560d7c300);
}
/* animation */
@keyframes option-label-marker-expansion {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
/* ------------------------
1rem = 10px
--------------------------- */
/* default */
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  color: rgba(0, 0, 0, 0.87);
  line-height: 2.4rem;
  overflow-x: hidden;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

/* english */
.english {
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif !important;
  font-size: 1.6rem;
}

/* font weight */
.text-normal {
  font-weight: 400 !important;
}

.text-medium {
  font-weight: 500 !important;
}

.text-semibold {
  font-weight: 600 !important;
}

.text-bold {
  font-weight: 700 !important;
}

/* vertical align */
.valign-baseline {
  vertical-align: baseline !important;
}

.valign-top {
  vertical-align: top !important;
}

.valign-middle {
  vertical-align: middle !important;
}

.valign-bottom {
  vertical-align: bottom !important;
}

/* text align */
.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

/* box sizing */
.borderBox {
  box-sizing: border-box;
}

.contentBox {
  box-sizing: content-box;
}

/* cursor */
.cursor-pointer {
  cursor: pointer;
}

/* display */
.hidden {
  display: none !important;
}

.block {
  display: block !important;
}

.inline {
  display: inline !important;
}

.inline-block {
  display: inline-block !important;
}

.table {
  display: table !important;
}

.table-cell {
  display: table-cell !important;
}

/* overflow */
.overflow-hidden {
  overflow: hidden !important;
}

.overflow-x-hidden {
  overflow-x: hidden !important;
}

.overflow-auto {
  overflow: auto !important;
  -webkit-overflow-scrolling: touch;
}

/* flex */
.flex {
  display: flex !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.items-start {
  align-items: flex-start !important;
}

.items-end {
  align-items: flex-end !important;
}

.items-center {
  align-items: center !important;
}

.items-baseline {
  align-items: baseline !important;
}

.items-stretch {
  align-items: stretch !important;
}

.self-start {
  align-self: flex-start !important;
}

.self-end {
  align-self: flex-end !important;
}

.self-center {
  align-self: center !important;
}

.self-baseline {
  align-self: baseline !important;
}

.self-stretch {
  align-self: stretch !important;
}

.justify-start {
  justify-content: flex-start !important;
}

.justify-end {
  justify-content: flex-end !important;
}

.justify-center {
  justify-content: center !important;
}

.justify-between {
  justify-content: space-between !important;
}

.justify-around {
  justify-content: space-around !important;
}

.content-start {
  align-content: flex-start !important;
}

.content-end {
  align-content: flex-end !important;
}

.content-center {
  align-content: center !important;
}

.content-between {
  align-content: space-between !important;
}

.content-around {
  align-content: space-around !important;
}

.content-stretch {
  align-content: stretch !important;
}

.flex-auto {
  flex: 1 1 auto !important;
}

.flex-none {
  flex: none !important;
}

.flex-shrink {
  flex-shrink: 1 !important;
}

.flex-shrink-none {
  flex-shrink: 0 !important;
}

.flex-grow {
  flex-grow: 1 !important;
}

.flex-grow-none {
  flex-grow: 0 !important;
}

.flex-basis-none {
  flex-basis: 0% !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-last {
  order: 99999 !important;
}

.order-first {
  order: -1 !important;
}

.gap-1 {
  gap: 4px !important;
}

.gap-2 {
  gap: 8px !important;
}

.gap-3 {
  gap: 12px !important;
}

.gap-4 {
  gap: 16px !important;
}

.gap-5 {
  gap: 20px !important;
}

.gap-6 {
  gap: 24px !important;
}

.gap-7 {
  gap: 28px !important;
}

.gap-8 {
  gap: 32px !important;
}

.gap-9 {
  gap: 36px !important;
}

.gap-10 {
  gap: 40px !important;
}

/* position */
.relative {
  position: relative !important;
}

.absoluteCenter {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.absoluteCenter-x {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.absoluteCenter-y {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

/* button */
.button {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  border-radius: 50px;
  padding: 16px 24px;
  transition: all 0.2s ease;
}

[class*=button--primary] {
  color: #fff;
}

[class*=button--primary]:disabled {
  background: #ccc;
  pointer-events: none;
}

.product-information [class*=button--tertiary]:disabled {
  color: #fff;
  background: #ccc;
  pointer-events: none;
}

[class*=button--secondary] {
  color: #00754a;
  background: #fff;
  border: solid 1px #00754a;
}

[class*=button--secondary]:disabled {
  color: #ccc;
  border: solid 1px #ccc;
  pointer-events: none;
}

/* selectbox */
.selectbox-wrap {
  position: relative;
}

.selectbox-wrap svg {
  position: absolute;
  display: block;
  width: 14px;
  height: 8px;
  top: 50%;
  right: 16px;
  transform: translate3d(0, -50%, 0);
  pointer-events: none;
}

.selectbox-wrap svg path {
  fill: rgba(0, 0, 0, 0.87);
}

.selectbox-wrap .selectbox {
  width: 100%;
  padding: 7px 30px 7px 14.5px;
  font-size: 1.3rem;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.87);
  background: #fff;
  border: solid 1px #b2b2b2;
  border-radius: 8px;
  cursor: pointer;
  outline: 1px solid transparent;
}
.selectbox-wrap .selectbox:focus {
  border: 2px solid #00754a;
}

.select--giftbox .selectbox {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 100%;
}

.select--wrapping .selectbox {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 268px;
}

/* icon */
.service-icon {
  display: inline-block;
  width: 80px;
  height: 80px;
}

.os-service-icon {
  display: inline-block;
  width: 136px;
  height: 136px;
}

/* ------------------------
Space scale

m = margin
p = padding

t = top
r = right
b = bottom
l = left

x = x-axis
y = y-axis

n = negative (margin only)

0 = zero
1 = 4px
2 = 8px
3 = 16px
4 = 24px
5 = 32px
6 = 40px
7 = 48px
8 = 56px
9 = 64px
10 = 72px
11 = 96px
12 = 128px

-auto = (mr, ml, and mx only)
--------------------------- */
/* margin */
.m0 {
  margin: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mr0 {
  margin-right: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.ml0 {
  margin-left: 0 !important;
}

.mx0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.my0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m1 {
  margin: 0.4rem !important;
}

.mt1 {
  margin-top: 0.4rem !important;
}

.mr1 {
  margin-right: 0.4rem !important;
}

.mb1 {
  margin-bottom: 0.4rem !important;
}

.ml1 {
  margin-left: 0.4rem !important;
}

.mx1 {
  margin-left: 0.4rem !important;
  margin-right: 0.4rem !important;
}

.my1 {
  margin-top: 0.4rem !important;
  margin-bottom: 0.4rem !important;
}

.mxn1 {
  margin-left: -0.4rem !important;
  margin-right: -0.4rem !important;
}

.m2 {
  margin: 0.8rem !important;
}

.mt2 {
  margin-top: 0.8rem !important;
}

.mr2 {
  margin-right: 0.8rem !important;
}

.mb2 {
  margin-bottom: 0.8rem !important;
}

.ml2 {
  margin-left: 0.8rem !important;
}

.mx2 {
  margin-left: 0.8rem !important;
  margin-right: 0.8rem !important;
}

.my2 {
  margin-top: 0.8rem !important;
  margin-bottom: 0.8rem !important;
}

.mxn2 {
  margin-left: -0.8rem !important;
  margin-right: -0.8rem !important;
}

.m3 {
  margin: 1.6rem !important;
}

.mt3 {
  margin-top: 1.6rem !important;
}

.mr3 {
  margin-right: 1.6rem !important;
}

.mb3 {
  margin-bottom: 1.6rem !important;
}

.ml3 {
  margin-left: 1.6rem !important;
}

.mx3 {
  margin-left: 1.6rem !important;
  margin-right: 1.6rem !important;
}

.my3 {
  margin-top: 1.6rem !important;
  margin-bottom: 1.6rem !important;
}

.mxn3 {
  margin-left: -1.6rem !important;
  margin-right: -1.6rem !important;
}

.m4 {
  margin: 2.4rem !important;
}

.mt4 {
  margin-top: 2.4rem !important;
}

.mr4 {
  margin-right: 2.4rem !important;
}

.mb4 {
  margin-bottom: 2.4rem !important;
}

.ml4 {
  margin-left: 2.4rem !important;
}

.mx4 {
  margin-left: 2.4rem !important;
  margin-right: 2.4rem !important;
}

.my4 {
  margin-top: 2.4rem !important;
  margin-bottom: 2.4rem !important;
}

.mxn4 {
  margin-left: -2.4rem !important;
  margin-right: -2.4rem !important;
}

.m5 {
  margin: 3.2rem !important;
}

.mt5 {
  margin-top: 3.2rem !important;
}

.mr5 {
  margin-right: 3.2rem !important;
}

.mb5 {
  margin-bottom: 3.2rem !important;
}

.ml5 {
  margin-left: 3.2rem !important;
}

.mx5 {
  margin-left: 3.2rem !important;
  margin-right: 3.2rem !important;
}

.my5 {
  margin-top: 3.2rem !important;
  margin-bottom: 3.2rem !important;
}

.mxn5 {
  margin-left: -3.2rem !important;
  margin-right: -3.2rem !important;
}

.m6 {
  margin: 4rem !important;
}

.mt6 {
  margin-top: 4rem !important;
}

.mr6 {
  margin-right: 4rem !important;
}

.mb6 {
  margin-bottom: 4rem !important;
}

.ml6 {
  margin-left: 4rem !important;
}

.mx6 {
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}

.my6 {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}

.mxn6 {
  margin-left: -4rem !important;
  margin-right: -4rem !important;
}

.m7 {
  margin: 4.8rem !important;
}

.mt7 {
  margin-top: 4.8rem !important;
}

.mr7 {
  margin-right: 4.8rem !important;
}

.mb7 {
  margin-bottom: 4.8rem !important;
}

.ml7 {
  margin-left: 4.8rem !important;
}

.mx7 {
  margin-left: 4.8rem !important;
  margin-right: 4.8rem !important;
}

.my7 {
  margin-top: 4.8rem !important;
  margin-bottom: 4.8rem !important;
}

.mxn7 {
  margin-left: -4.8rem !important;
  margin-right: -4.8rem !important;
}

.m8 {
  margin: 5.6rem !important;
}

.mt8 {
  margin-top: 5.6rem !important;
}

.mr8 {
  margin-right: 5.6rem !important;
}

.mb8 {
  margin-bottom: 5.6rem !important;
}

.ml8 {
  margin-left: 5.6rem !important;
}

.mx8 {
  margin-left: 5.6rem !important;
  margin-right: 5.6rem !important;
}

.my8 {
  margin-top: 5.6rem !important;
  margin-bottom: 5.6rem !important;
}

.mxn8 {
  margin-left: -5.6rem !important;
  margin-right: -5.6rem !important;
}

.m9 {
  margin: 6.4rem !important;
}

.mt9 {
  margin-top: 6.4rem !important;
}

.mr9 {
  margin-right: 6.4rem !important;
}

.mb9 {
  margin-bottom: 6.4rem !important;
}

.ml9 {
  margin-left: 6.4rem !important;
}

.mx9 {
  margin-left: 6.4rem !important;
  margin-right: 6.4rem !important;
}

.my9 {
  margin-top: 6.4rem !important;
  margin-bottom: 6.4rem !important;
}

.mxn9 {
  margin-left: -6.4rem !important;
  margin-right: -6.4rem !important;
}

.m10 {
  margin: 7.2rem !important;
}

.mt10 {
  margin-top: 7.2rem !important;
}

.mr10 {
  margin-right: 7.2rem !important;
}

.mb10 {
  margin-bottom: 7.2rem !important;
}

.ml10 {
  margin-left: 7.2rem !important;
}

.mx10 {
  margin-left: 7.2rem !important;
  margin-right: 7.2rem !important;
}

.my10 {
  margin-top: 7.2rem !important;
  margin-bottom: 7.2rem !important;
}

.mxn10 {
  margin-left: -7.2rem !important;
  margin-right: -7.2rem !important;
}

.m11 {
  margin: 9.6rem !important;
}

.mt11 {
  margin-top: 9.6rem !important;
}

.mr11 {
  margin-right: 9.6rem !important;
}

.mb11 {
  margin-bottom: 9.6rem !important;
}

.ml11 {
  margin-left: 9.6rem !important;
}

.mx11 {
  margin-left: 9.6rem !important;
  margin-right: 9.6rem !important;
}

.my11 {
  margin-top: 9.6rem !important;
  margin-bottom: 9.6rem !important;
}

.mxn11 {
  margin-left: -9.6rem !important;
  margin-right: -9.6rem !important;
}

.m12 {
  margin: 12.8rem !important;
}

.mt12 {
  margin-top: 12.8rem !important;
}

.mr12 {
  margin-right: 12.8rem !important;
}

.mb12 {
  margin-bottom: 12.8rem !important;
}

.ml12 {
  margin-left: 12.8rem !important;
}

.mx12 {
  margin-left: 12.8rem !important;
  margin-right: 12.8rem !important;
}

.my12 {
  margin-top: 12.8rem !important;
  margin-bottom: 12.8rem !important;
}

.mxn12 {
  margin-left: -12.8rem !important;
  margin-right: -12.8rem !important;
}

.ml-auto {
  margin-left: auto !important;
}

.mr-auto {
  margin-right: auto !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* padding */
.p0 {
  padding: 0 !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pr0 {
  padding-right: 0 !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pl0 {
  padding-left: 0 !important;
}

.px0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.py0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p1 {
  padding: 0.4rem !important;
}

.pt1 {
  padding-top: 0.4rem !important;
}

.pr1 {
  padding-right: 0.4rem !important;
}

.pb1 {
  padding-bottom: 0.4rem !important;
}

.pl1 {
  padding-left: 0.4rem !important;
}

.px1 {
  padding-left: 0.4rem !important;
  padding-right: 0.4rem !important;
}

.py1 {
  padding-top: 0.4rem !important;
  padding-bottom: 0.4rem !important;
}

.p2 {
  padding: 0.8rem !important;
}

.pt2 {
  padding-top: 0.8rem !important;
}

.pr2 {
  padding-right: 0.8rem !important;
}

.pb2 {
  padding-bottom: 0.8rem !important;
}

.pl2 {
  padding-left: 0.8rem !important;
}

.px2 {
  padding-left: 0.8rem !important;
  padding-right: 0.8rem !important;
}

.py2 {
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important;
}

.p3 {
  padding: 1.6rem !important;
}

.pt3 {
  padding-top: 1.6rem !important;
}

.pr3 {
  padding-right: 1.6rem !important;
}

.pb3 {
  padding-bottom: 1.6rem !important;
}

.pl3 {
  padding-left: 1.6rem !important;
}

.px3 {
  padding-left: 1.6rem !important;
  padding-right: 1.6rem !important;
}

.py3 {
  padding-top: 1.6rem !important;
  padding-bottom: 1.6rem !important;
}

.p4 {
  padding: 2.4rem !important;
}

.pt4 {
  padding-top: 2.4rem !important;
}

.pr4 {
  padding-right: 2.4rem !important;
}

.pb4 {
  padding-bottom: 2.4rem !important;
}

.pl4 {
  padding-left: 2.4rem !important;
}

.px4 {
  padding-left: 2.4rem !important;
  padding-right: 2.4rem !important;
}

.py4 {
  padding-top: 2.4rem !important;
  padding-bottom: 2.4rem !important;
}

.p5 {
  padding: 3.2rem !important;
}

.pt5 {
  padding-top: 3.2rem !important;
}

.pr5 {
  padding-right: 3.2rem !important;
}

.pb5 {
  padding-bottom: 3.2rem !important;
}

.pl5 {
  padding-left: 3.2rem !important;
}

.px5 {
  padding-left: 3.2rem !important;
  padding-right: 3.2rem !important;
}

.py5 {
  padding-top: 3.2rem !important;
  padding-bottom: 3.2rem !important;
}

.p6 {
  padding: 4rem !important;
}

.pt6 {
  padding-top: 4rem !important;
}

.pr6 {
  padding-right: 4rem !important;
}

.pb6 {
  padding-bottom: 4rem !important;
}

.pl6 {
  padding-left: 4rem !important;
}

.px6 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.py6 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.p7 {
  padding: 4.8rem !important;
}

.pt7 {
  padding-top: 4.8rem !important;
}

.pr7 {
  padding-right: 4.8rem !important;
}

.pb7 {
  padding-bottom: 4.8rem !important;
}

.pl7 {
  padding-left: 4.8rem !important;
}

.px7 {
  padding-left: 4.8rem !important;
  padding-right: 4.8rem !important;
}

.py7 {
  padding-top: 4.8rem !important;
  padding-bottom: 4.8rem !important;
}

.p8 {
  padding: 5.6rem !important;
}

.pt8 {
  padding-top: 5.6rem !important;
}

.pr8 {
  padding-right: 5.6rem !important;
}

.pb8 {
  padding-bottom: 5.6rem !important;
}

.pl8 {
  padding-left: 5.6rem !important;
}

.px8 {
  padding-left: 5.6rem !important;
  padding-right: 5.6rem !important;
}

.py8 {
  padding-top: 5.6rem !important;
  padding-bottom: 5.6rem !important;
}

.p9 {
  padding: 6.4rem !important;
}

.pt9 {
  padding-top: 6.4rem !important;
}

.pr9 {
  padding-right: 6.4rem !important;
}

.pb9 {
  padding-bottom: 6.4rem !important;
}

.pl9 {
  padding-left: 6.4rem !important;
}

.px9 {
  padding-left: 6.4rem !important;
  padding-right: 6.4rem !important;
}

.py9 {
  padding-top: 6.4rem !important;
  padding-bottom: 6.4rem !important;
}

.p10 {
  padding: 7.2rem !important;
}

.pt10 {
  padding-top: 7.2rem !important;
}

.pr10 {
  padding-right: 7.2rem !important;
}

.pb10 {
  padding-bottom: 7.2rem !important;
}

.pl10 {
  padding-left: 7.2rem !important;
}

.px10 {
  padding-left: 7.2rem !important;
  padding-right: 7.2rem !important;
}

.py10 {
  padding-top: 7.2rem !important;
  padding-bottom: 7.2rem !important;
}

.p11 {
  padding: 9.6rem !important;
}

.pt11 {
  padding-top: 9.6rem !important;
}

.pr11 {
  padding-right: 9.6rem !important;
}

.pb11 {
  padding-bottom: 9.6rem !important;
}

.pl11 {
  padding-left: 9.6rem !important;
}

.px11 {
  padding-left: 9.6rem !important;
  padding-right: 9.6rem !important;
}

.py11 {
  padding-top: 9.6rem !important;
  padding-bottom: 9.6rem !important;
}

.p12 {
  padding: 12.8rem !important;
}

.pt12 {
  padding-top: 12.8rem !important;
}

.pr12 {
  padding-right: 12.8rem !important;
}

.pb12 {
  padding-bottom: 12.8rem !important;
}

.pl12 {
  padding-left: 12.8rem !important;
}

.px12 {
  padding-left: 12.8rem !important;
  padding-right: 12.8rem !important;
}

.py12 {
  padding-top: 12.8rem !important;
  padding-bottom: 12.8rem !important;
}

@media screen and (min-width: 1024px) {
  /* default */
  label {
    cursor: pointer;
  }
  /* selectbox */
  .custom-select__option:hover {
    background: rgba(0, 0, 0, 0.06);
  }
  /* icon */
  .service-icon {
    width: 124px;
    height: 124px;
  }
  .os-service-icon {
    width: 168px;
    height: 168px;
  }
}
/*! purgecss end ignore */
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.38);
  z-index: var(--z-index-modal);
  overflow: hidden;
}

.line-gray {
  color: rgba(0, 0, 0, 0.1);
}

.web_view_none {
  display: none !important;
}

@media screen and (max-width: 600px) {
  .pc-only {
    display: none;
  }
}
@media screen and (min-width: 601px) {
  .sp-only {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .product-info .hidden-sp,
  .cart-float-multi-options .hidden-sp {
    display: none !important;
  }
}
.search-bar .search-form {
  width: 100%;
  display: flex;
  padding-bottom: 16px;
}

@media screen and (max-width: 1039px) {
  .search-form {
    max-width: unset;
  }
}
.input {
  width: 32rem;
  padding: 0 10px;
}

.badge {
  padding: 5px 8px;
  padding: 0.3125rem 0.5rem;
  border-radius: 12px;
  border-radius: 0.75rem;
  font-size: 12px;
  font-size: 0.75rem;
  background-color: #00a862;
  font-weight: bold;
  color: #ffffff;
}

/*! purgecss start ignore */
/*
ColorBox Core Style:
The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxDyfOverlay, #cboxDyfWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
}

#cboxDyfOverlay, #cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxDyfMiddleLeft, #cboxDyfBottomLeft {
  clear: left;
}

#cboxDyfContent {
  position: relative;
}

#cboxDyfLoadedContent {
  overflow: auto;
}

#cboxDyfTitle {
  margin: 0;
}

#cboxDyfLoadingOverlay, #cboxDyfLoadingGraphic {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
}

/*#cboxDyfPrevious, #cboxDyfNext, */
#cboxDyfClose, #cboxClose, #cboxDyfSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

/*
User Style:
Change the following styles to modify the appearance of ColorBox.  They are
ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxDyfOverlay, #cboxOverlay {
  background: #2C2A29;
}

/*
#cboxDyfTopLeft{width:24px; height:24px; background:url(/customize/js/colorbox/images/border1.png) no-repeat 0 0;}
#cboxDyfTopCenter{height:24px; background:url(/customize/js/colorbox/images/border1.png) repeat-x 0 -94px;}
#cboxDyfTopRight{width:24px; height:24px; background:url(/customize/js/colorbox/images/border1.png) no-repeat -72px 0;}
#cboxDyfBottomLeft{width:24px; height:24px; background:url(/customize/js/colorbox/images/border1.png) no-repeat 0 -70px;}
#cboxDyfBottomCenter{height:24px; background:url(/customize/js/colorbox/images/border1.png) repeat-x 0 -169px;}
#cboxDyfBottomRight{width:24px; height:24px; background:url(/customize/js/colorbox/images/border1.png) no-repeat -72px -70px;}
#cboxDyfMiddleLeft{width:24px; background:url(/customize/js/colorbox/images/border2.png) repeat-y 2px 0;}
#cboxDyfMiddleRight{width:24px; background:url(/customize/js/colorbox/images/border2.png) repeat-y -74px 0;}
*/
#cboxDyfContent, #colorbox {
  background: #fff;
  display: inline-block;
}

.cboxIframe {
  background: #fff;
}

#cboxDyfError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxDyfTitle {
  position: absolute;
  bottom: 0px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #999;
}

#cboxDyfCurrent {
  position: absolute;
  bottom: 0px;
  left: 100px;
  color: #999;
}

#cboxDyfSlideshow {
  position: absolute;
  bottom: 0px;
  right: 0;
  color: #444;
}

/*        #cboxDyfPrevious{width:40px; height:40px; position:absolute; top:50%; left:-51px; color:#444; background:url(/customize/js/colorbox/images/prev.png) no-repeat top center; font-size: 0.1em; text-indent: -9999px;}
    #cboxDyfNext{width:40px; height:40px; position:absolute; top:50%; right:-51px; color:#444; background:url(/customize/js/colorbox/images/next.png) no-repeat top center; font-size: 0.1em; text-indent: -9999px;}*/
#cboxDyfLoadingOverlay {
  background: url(/customize/js/colorbox/images/loading.gif) no-repeat 5px 5px;
  background: none\9 ;
}

/* #cboxDyfClose{position:absolute; top:0; right:0; display:block; width:27px; height:27px; background:url(/customize/js/colorbox/images/close.png) no-repeat top left; font-size: 0.1em; text-indent: -9999px;} */
#cboxDyfClose, #cboxClose {
  background: var(--img-btn-modal-close) no-repeat scroll left top rgba(0, 0, 0, 0);
  display: block;
  font-size: 0.1em;
  height: 14px;
  position: absolute;
  right: 20px;
  text-indent: -9999px;
  top: 20px;
  width: 14px;
}

/*
The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxDyfTopLeft,
.cboxIE #cboxDyfTopCenter,
.cboxIE #cboxDyfTopRight,
.cboxIE #cboxDyfBottomLeft,
.cboxIE #cboxDyfBottomCenter,
.cboxIE #cboxDyfBottomRight,
.cboxIE #cboxDyfMiddleLeft,
.cboxIE #cboxDyfMiddleRight {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

/*! purgecss end ignore */
/* font */
.newContents {
  color: #333333;
}

.newContents a,
.newContents a:visited,
.newContents a:link {
  color: #888888;
}

.newContents a:hover {
  color: #333333;
}

/* searchMenu */
.newContents .searchMenu {
  overflow: hidden;
  margin-bottom: 36px;
}

.newContents ul.searchMenuL {
  display: inline;
  margin: 0;
  float: left;
}

.newContents ul.searchMenuL li {
  display: inline;
  padding: 0 22px 0 0;
  margin-bottom: 0;
  float: left;
}

.newContents ul.searchMenuR {
  display: inline;
  margin: 0;
  float: right;
}

.newContents ul.searchMenuR li {
  display: inline;
  padding: 0 0 0 20px;
  margin-bottom: 0;
  float: left;
}

/* listInlineBorder */
.newContents ul.listInlineBorder {
  margin-bottom: 13px;
}

.newContents ul.listInlineBorder li {
  background: none;
  padding-right: 23px;
  font-size: 10px;
}

.newContents .arrowAnchor a {
  background-image: url(/common/images/arrow-anchor.gif);
  color: #333333;
}

.newContents .arrowAnchor a:hover {
  background-image: url(/common/images/arrow-anchor.gif);
  color: #888888;
  text-decoration: underline;
}

/*** index ***/
#index #contents .contentsIn h1 {
  margin-bottom: 35px;
}

#index #contents .contentsIn .lead {
  margin-bottom: 37px;
}

#index #contents .contentsIn .question a {
  background: url(/customize/images/icon-customize-question.gif) no-repeat left 0.5em;
  padding-left: 18px;
  text-decoration: none;
  line-height: 1;
  padding-top: 5px;
  padding-bottom: 5px;
  color: #888888;
}

#index #contents .contentsIn .question a:hover {
  color: #333333;
}

#index .newContents .favorites {
  margin-bottom: 35px;
  overflow: hidden;
}

#index .newContents .favorites .carouselHr2 {
  margin-bottom: 0;
}

#index .newContents .favorites .favoritesBoxL {
  display: inline;
  width: 345px;
  float: left;
}

#index .newContents .favorites .favoritesBoxR {
  display: inline;
  float: right;
}

#index .newContents .col2 dl dt {
  line-height: 1;
}

#index .newContents .col2 dl dt img {
  vertical-align: top;
}

#index .newContents .col2 dl dd {
  line-height: 1.4;
}

/* carousel */
#index .newContents .carouselHr2 .carouselContentsWrapper {
  width: 480px;
}

#index .newContents .carouselHr2 .carouselMain {
  background-color: transparent;
}

/* popupArea */
#index #popupArea {
  display: none;
}

#index .popup {
  color: #5b5b5b;
}

#index .popupElement {
  color: #333333;
  text-decoration: none;
}

#index .popupElement a {
  font-size: 120%;
}

#index .popupElement a:link {
  color: #5b5b5b;
  text-decoration: none;
}

#index .popupElement a:visited {
  color: #5b5b5b;
  text-decoration: none;
}

#index .popupElement a:hover {
  color: #5b5b5b;
  text-decoration: none;
}

#index .popupElement a:active {
  color: #5b5b5b;
  text-decoration: none;
}

/* popupElement */
#index .popupElement {
  width: 700px;
  clear: both;
  overflow: hidden;
  font-size: 1.2em;
}

#index .popupElement p {
  margin: 0;
}

/** link **/
#index .popupElement .linkIcon {
  padding-left: 12px;
  background: url(/products/images/icon_arrow_02.gif) no-repeat left 0.4em;
}

/** item **/
#index .popupElement .item {
  width: 680px;
  clear: both;
  overflow: hidden;
  position: relative;
}

#index .popupElement .item .btns {
  position: absolute;
  right: -20px;
  bottom: 0;
}

#index .popupElement .item .btns ul {
  list-style: none;
  clear: both;
  margin: 0;
  padding: 0;
  text-align: right;
}

#index *:first-child + html .btns ul li {
  float: left;
  display: inline;
}

#index .popupElement .item .btns ul li {
  display: inline;
}

#index .popupElement .item .btns ul li.mixiBtn {
  margin-left: 10px;
}

#index .popupElement .item .btns ul li.facebookBtn {
  margin-left: 10px;
}

#index .popupElement .productImg {
  width: 333px;
  float: left;
  display: table-cell;
  margin-bottom: 1px;
  vertical-align: middle;
}

#index .popupElement .productInfo {
  width: 347px;
  float: left;
  margin-top: 22px;
}

#index .popupElement .productInfo h3 {
  margin: 0 0 45px 42px;
}

/** withImgCol **/
#index .popupElement .productInfo .withImgCol {
  _zoom: 1;
  overflow: hidden;
  margin-bottom: 1em;
  width: 100%;
}

#index .popupElement .productInfo .withImgCol p,
#index .popupElement .productInfo .withImgCol ul,
#index .popupElement .productInfo .withImgCol ol {
  margin-top: 0;
}

#index .popupElement .productInfo .withImgCol .imgL {
  float: left;
  margin: 0 20px 0 0;
}

#index .popupElement .productInfo .withImgCol .txtR,
#index .popupElement .productInfo .withImgCol .txtL {
  overflow: hidden;
  _zoom: 1;
}

#index .popupElement .productInfo .withImgCol .imgL {
  margin-right: 8px;
}

#index .popupElement .productInfo .withImgCol .txtR {
  width: 270px;
  color: #000000;
}

#index .popupElement .productInfo .withImgCol .txtR p {
  margin-bottom: 0;
}

#index .popupElement .productInfo .withImgCol .txtR ol {
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
}

#index .popupElement .productInfo .withImgCol .txtR ol li {
  padding-left: 14px;
  text-indent: 0;
  list-style: none;
  line-height: 1.5;
}

#index .popupElement .productInfo .withImgCol .txtR ul {
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
}

#index .popupElement .productInfo .withImgCol .txtR ul li {
  display: inline;
  margin-right: 5px;
}

#index .popupElement .productInfo .withImgCol .txtR ol li.num1 {
  background: url(/coffee/images/img-12summer2-or-howto-num1.gif) no-repeat left 0.25em;
}

#index .popupElement .productInfo .withImgCol .txtR ol li.num2 {
  background: url(/coffee/images/img-12summer2-or-howto-num2.gif) no-repeat left 0.25em;
}

#index .popupElement .productInfo .withImgCol .txtR ol li.num3 {
  background: url(/coffee/images/img-12summer2-or-howto-num3.gif) no-repeat left 0.25em;
}

#index .popupElement .productInfo .withImgCol .txtR ol li.num4 {
  background: url(/coffee/images/img-12summer2-or-howto-num4.gif) no-repeat left 0.25em;
}

#index .popupElement .productInfo .withImgCol .txtR ol li.num5 {
  background: url(/coffee/images/img-12summer2-or-howto-num5.gif) no-repeat left 0.25em;
}

#index .popupElement .productInfo .withImgCol {
  margin-bottom: 15px;
}

#index .popupElement .productInfo .withImgCol.coffee .imgL {
  padding-top: 12px;
}

#index .popupElement .productInfo .withImgCol.coffee .txtR {
  padding-top: 12px;
  background: url(/common/images/border-bg.gif) repeat-x left top;
}

/*** customize ***/
#customize #contents .contentsIn #contentsWrapper {
  margin-top: 6px;
}

/* productdetail */
#customize #contents .contentsIn .h1Block {
  border-bottom: none;
}

#customize #contents .contentsIn .h1Block h1 {
  margin-bottom: 39px;
}

#customize .newContents .productdetail h1 {
  font-size: 18px;
  margin-bottom: 25px;
  font-weight: bold;
}

#customize .newContents .searchMenu {
  margin-bottom: 30px;
}

#customize .newContents .productdetail a.arrow {
  background: url(/customize/images/t-arrow-right-off.png) no-repeat left 0.5em transparent;
  padding-left: 12px;
}

#customize .newContents .productdetail a.arrow:hover {
  background: url(/customize/images/t-arrow-right-on.png) no-repeat left 0.5em transparent;
}

#customize .newContents .productdetail .productImg {
  margin: 0 30px 0 0;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain #contentsFooter {
  margin-top: 15px;
}

#customize .newContents .productdetail .productImg ul {
  width: 330px;
}

#customize .newContents .productdetail .productImg ul li {
  text-align: right;
  margin-bottom: 9px;
}

#customize .newContents .productdetail .productImg ul li.customizeLink {
  font-size: 14px;
  font-weight: bold;
}

div.favArea {
  border: 1px solid #ffffff;
  margin-bottom: 20px;
  min-height: 55px;
}

div.favArea p {
  margin: 0;
}

div.favArea div.txtAC {
  margin-top: -5px;
  margin-bottom: 10px;
  position: relative;
  height: 30px;
  width: 330px;
}

div.favArea div.txtAC p.txtAC {
  margin-bottom: 0;
}

div.favArea #favoriteComp,
div.favArea #favoriteCompDetail {
  position: absolute;
  top: -140px;
  left: 75px;
  height: 20px;
  line-height: 20px;
  background-color: #ffffff;
  padding: 5px 15px;
  font-size: 10px;
  color: #6bba39;
  opacity: 0.9;
}

div.favArea .toList {
  position: absolute;
  left: 0;
  top: 32px;
  width: 100%;
  font-size: 11px;
}

div.favArea .toList a.arrow {
  padding-left: 12px;
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  color: #888888;
}

div.favArea .toList a.arrow:hover {
  background: url(/customize/images/arrow-txtLink-ovon.gif) no-repeat left 0.4em;
  color: #333333;
}

div.favArea #chgFavoriteDetail {
  position: absolute;
  left: 0;
  width: 100%;
  top: 0;
}

div.favArea.small {
  position: relative;
}

div.favArea.small #favoriteCompSmall {
  top: 5px;
  left: 0;
  font-size: 11px;
  color: #6bba39;
  width: 100%;
  text-align: center;
}

div.favArea.small .toList {
  top: 60px;
  font-size: 11px;
}

#customize .newContents .productdetail .withImgCol {
  position: relative;
}

#customize .newContents .productdetail .withImgCol ul {
  list-style-type: none;
  padding-left: 0;
}

#customize .newContents .productdetail .withImgCol h4 {
  text-align: left;
  border-bottom: #e2e2e2 solid 3px;
  margin: 0px;
  padding-bottom: 3px;
  padding-top: 6px;
  font-weight: bold;
}

#customize .newContents .productdetail .withImgCol .fontS {
  color: #cbcbcb;
}

#customize .newContents .productdetail .withImgCol p.commentLink {
  position: absolute;
  right: 0;
  top: 0;
}

#customize .newContents .productdetail .withImgCol .commentArea {
  overflow-y: scroll;
  overflow: auto;
  width: 540px;
  height: 190px;
  padding-top: 5px;
}

#customize .newContents .productdetail .withImgCol .commentArea ul {
  margin-left: 0;
}

#customize .newContents .productdetail .withImgCol .commentArea ul li {
  background: url(/common/images/border-bg.gif) repeat-x scroll left bottom transparent;
  padding: 12px 0px;
  margin-right: 30px;
  font-size: 10px;
}

#customize .newContents .productdetail .withImgCol .commentArea ul li span {
  font-weight: bold;
}

#customize .newContents .productdetail .productInfo .imgS {
  margin-bottom: 11px;
}

#customize .newContents .productdetail .productInfo dl {
  margin-top: 5px;
  margin-bottom: 31px;
}

#customize .newContents .productdetail .productInfo dl dt {
  margin-bottom: 11px;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.2;
}

#customize .newContents .productdetail .productInfo dl dt span {
  font-size: 12px;
  margin-right: 12px;
  line-height: 2.5;
}

#customize .newContents .productdetail .productInfo dl dt span .nomal {
  font-weight: normal;
  margin: 0;
}

#customize .newContents .productdetail .productInfo dl dd {
  margin: 0;
}

#customize .newContents .productdetail dl.otherProduct {
  border-top: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
  padding-top: 21px;
}

#customize .newContents .productdetail dl.otherProduct dt img {
  background-color: #ffffff;
  border: 1px solid #e2e2e2;
  padding: 2px;
}

#customize .newContents .productdetail dl.otherProduct ul {
  margin-top: -4px;
  margin-bottom: 6px;
}

#customize .newContents .productdetail dl.otherProduct ul li {
  font-size: 10px;
  color: #333333;
  padding-bottom: 10px;
}

#customize .newContents .productdetail dl.otherProduct ul li.price {
  font-weight: normal;
  color: #cbcbcb;
}

#customize .newContents .productdetail dl.otherProduct ul li a {
  font-size: 12px;
}

/* sns */
#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns {
  overflow: hidden;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns {
  float: left;
  display: inline;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns ul {
  margin: 0;
  padding: 0;
  width: auto;
  overflow: hidden;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns ul li {
  float: left;
  margin-right: 5px;
  vertical-align: middle;
  line-height: 0;
  list-style: none;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns ul li.facebookBtn02 iframe {
  width: 900px !important;
  height: 80px;
}

#customize #contents .contentsIn .typeWithSideA #contentsMain .customizeSns .btns ul li.facebookBtn02 {
  width: 690px;
  height: 80px;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns ul li.mixiBtn {
  width: 70px;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns ul li img {
  vertical-align: top;
}

*:first-child + html #customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns iframe.twitter-share-button {
  width: 60px !important;
}

* html #customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns iframe.twitter-share-button {
  width: 60px !important;
}

/*** favorite ***/
#favorite #contents .contentsIn #contentsWrapper {
  margin-top: 6px;
}

#favorite #contents .contentsIn .h1Block {
  border-bottom: none;
}

#favorite #contents .contentsIn .h1Block h1 {
  margin-bottom: 39px;
}

#favorite #contents .contentsIn .newContents .searchMenu {
  margin-bottom: 63px;
}

#favorite .newContents .coffee5Col {
  margin-bottom: 8px;
  margin-left: -2px;
}

#favorite .newContents .coffee5Col .callingImg img,
#favorite .newContents .coffee5Col .coffeeImg img {
  border: 1px solid #e2e2e2;
}

#favorite .newContents .coffee5Col .callingImg a:hover img,
#favorite .newContents .coffee5Col .coffeeImg a:hover img {
  border: 1px solid #a2a2a2;
}

#favorite .newContents .coffee5Col .txtLink a {
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  color: #888888;
}

#favorite .newContents .coffee5Col .txtLink a:hover {
  background: url(/customize/images/arrow-txtLink-ovon.gif) no-repeat left 0.4em;
  color: #333333;
}

#favorite .newContents .coffee5Col .txtLinkNo {
  display: block;
  margin-top: 3px;
  margin-bottom: 10px;
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  padding-left: 12px;
  font-weight: bold;
  font-size: 0.8em;
  color: #888888;
}

#favorite .newContents table.layoutTable {
  border-collapse: collapse;
}

#favorite .newContents table.layoutTable th,
#favorite .newContents table.layoutTable td {
  padding: 0;
  zoom: 1;
}

#favorite .newContents table.layoutTable td .callingImg,
#favorite .newContents table.layoutTable td .coffeeImg {
  position: relative;
}

#favorite .newContents table.layoutTable td .favoriteAction {
  position: relative;
}

#favorite .newContents table.layoutTable td .callingImg span img,
#favorite .newContents table.layoutTable td .callingImg span a:hover img,
#favorite .newContents table.layoutTable td .coffeeImg span img,
#favorite .newContents table.layoutTable td .coffeeImg span a:hover img {
  background-color: transparent;
  padding: 0;
  border: none;
}

#favorite .newContents table.layoutTable td .callingImg span.soldout,
#favorite .newContents table.layoutTable td .coffeeImg span.soldout {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 10;
}

#favorite .newContents table.layoutTable td .favoriteAction span.comment {
  position: absolute;
  top: 1px;
  left: 1px;
  z-index: 10;
}

#favorite .newContents table.layoutTable td .favoriteAction span.delete {
  position: absolute;
  top: 1px;
  right: 1px;
  z-index: 10;
}

/*** menu ***/
#menu #contents .contentsIn #contentsWrapper {
  margin-top: 6px;
}

#menu #contents .contentsIn .h1Block {
  border-bottom: none;
}

#menu #contents .contentsIn .h1Block h1 {
  margin-bottom: 39px;
}

#menu .newContents .category {
  border-top: 1px solid #e2e2e2;
  padding-top: 35px;
  padding-bottom: 10px;
}

#menu .newContents .category h2 {
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 14px;
}

#menu .newContents .category.borderTwice {
  border-top: 2px solid #e2e2e2;
}

#menu .newContents .category .coffee5Col {
  margin-bottom: 8px;
  margin-left: -2px;
}

#menu .newContents .category .coffee5Col .callingImg img,
#menu .newContents .category .coffee5Col .coffeeImg img {
  border: 1px solid #e2e2e2;
}

#menu .newContents .category .coffee5Col .callingImg a:hover img,
#menu .newContents .category .coffee5Col .coffeeImg a:hover img {
  border: 1px solid #a2a2a2;
}

#menu .newContents .category .coffee5Col .txtLink a {
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  color: #888888;
}

#menu .newContents .category .coffee5Col .txtLink a:hover {
  background: url(/customize/images/arrow-txtLink-ovon.gif) no-repeat left 0.4em;
  color: #333333;
}

#menu .newContents .category .coffee5Col .txtLinkNo {
  display: block;
  margin-top: 3px;
  margin-bottom: 10px;
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  padding-left: 12px;
  font-weight: bold;
  font-size: 0.8em;
  color: #888888;
}

#menu .newContents table.layoutTable {
  border-collapse: collapse;
}

#menu .newContents table.layoutTable th,
.newContents table.layoutTable td {
  padding: 0;
  zoom: 1;
}

#menu .newContents .category table.layoutTable td .callingImg,
#menu .newContents .category table.layoutTable td .coffeeImg {
  position: relative;
}

/*** recommend ***/
#recommend #contents .contentsIn #contentsWrapper {
  margin-top: 6px;
}

#recommend #contents .contentsIn .h1Block {
  border-bottom: none;
}

#recommend #contents .contentsIn .h1Block h1 {
  margin-bottom: 39px;
}

#recommend #contents .contentsIn .newContents .searchMenu {
  margin-bottom: 35px;
}

#recommend #contents .contentsIn h2 {
  font-size: 16px;
  margin-bottom: 37px;
  border-bottom: 2px solid #e2e2e2;
  padding-bottom: 6px;
}

#recommend .newContents .withImgCol .imgL {
  margin: 0;
  padding: 0;
  font-size: 11px;
}

#recommend .newContents .withImgCol .imgL dl {
  width: 132px;
}

#recommend .newContents .withImgCol .imgL dl dt span {
  display: block;
  margin-top: 8px;
  margin-bottom: 9px;
}

#recommend .newContents .withImgCol .imgL dl dd table {
  margin-bottom: 10px;
  line-height: 1.5;
  color: #cbcbcb;
}

#recommend .newContents .withImgCol .imgL dl dd table th {
  font-weight: normal;
  text-align: left;
}

#recommend .newContents .withImgCol .imgL dl dt table {
  margin-bottom: 10px;
  color: #cbcbcb;
}

#recommend .newContents .withImgCol .txtR {
  padding: 0;
}

#recommend .newContents .withImgCol .txtR ul.boxLink {
  background: url(/customize/images/img-recommend-plus.gif) no-repeat 20px 54px;
  padding: 0 0 0 49px;
  margin: 0 0 24px 0;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li {
  position: relative;
  background: url(/customize/images/icon-recommend-arealink-off.gif) no-repeat right bottom #ffffff;
  border: 1px solid #e2e2e2;
  padding: 18px;
  margin: 0;
  overflow: hidden;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li .arrow {
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.5em;
  padding-left: 12px;
  color: #888888;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li:hover {
  background: url(/customize/images/icon-recommend-arealink-on.gif) no-repeat right bottom #ffffff;
  border: 1px solid #a2a2a2;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li:hover .arrow {
  background: url(/customize/images/arrow-txtLink-ovon.gif) no-repeat left 0.5em;
  padding-left: 12px;
  color: #333333;
}

html > #recommend .newContents .withImgCol .txtR ul.boxLink li a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  text-align: left;
  text-indent: -999px;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li dl {
  position: relative;
  margin-bottom: 21px;
  padding: 0 0 14px 0;
  border-bottom: 1px solid #f6f6f6;
  display: table;
  display: block;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li dl dt {
  width: 80px;
  display: table-cell;
  vertical-align: middle;
  padding-right: 4px;
}

* html #recommend .newContents .withImgCol .txtR ul.boxLink li dl dt {
  display: inline;
  zoom: 1;
}

*:first-child + html #recommend .newContents .withImgCol .txtR ul.boxLink li dl dt {
  display: inline;
  zoom: 1;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li dl dd {
  width: 76px;
  display: table-cell;
  vertical-align: middle;
  padding-right: 10px;
  font-size: 10px;
  font-weight: bold;
}

* html #recommend .newContents .withImgCol .txtR ul.boxLink li dl dd {
  display: inline;
  zoom: 1;
}

*:first-child + html #recommend .newContents .withImgCol .txtR ul.boxLink li dl dd {
  display: inline;
  zoom: 1;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li dd.etc {
  position: absolute;
  bottom: 7px;
  right: 4px;
  width: auto;
  padding: 0;
}

#recommend .newContents .withImgCol .txtR ul.boxLink li dl dd span {
  display: block;
  font-weight: normal;
}

#recommend .newContents .withImgCol .txtR ul.boxLink p {
  margin-bottom: 7px;
}

#recommend .newContents .withImgCol .txtR ul.boxLink p.arrow {
  font-weight: bold;
}

#recommend .newContents .withImgCol .txtR ul.boxLink span.arealinkArrow {
  position: absolute;
  bottom: 1px;
  right: 1px;
}

#recommend #contents .newContents a.arrow {
  font-weight: bold;
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.5em;
}

#recommend #contents .newContents a.arrow:hover {
  background: url(/customize/images/arrow-txtLink-ovon.gif) no-repeat left 0.5em;
}

/*** feeling/flavor ***/
#discovercategory #contents .contentsIn #contentsWrapper {
  margin-top: 6px;
}

#discovercategory #contents .contentsIn .h1Block {
  border-bottom: none;
}

#discovercategory #contents .contentsIn .h1Block h1 {
  margin-bottom: 39px;
}

#discovercategory .newContents .category {
  width: 900px;
  border-top: 1px solid #e2e2e2;
  padding-top: 46px;
  padding-bottom: 10px;
  overflow: hidden;
}

#discovercategory .newContents .category.borderTwice {
  border-top: 2px solid #e2e2e2;
}

#discovercategory .newContents .category h2 {
  display: inline;
  margin-right: 46px;
  float: left;
}

#discovercategory .newContents .categoryProduct {
  display: inline;
  float: left;
}

#discovercategory .newContents .categoryProduct .coffee5Col {
  margin-bottom: 8px;
}

#discovercategory .newContents .categoryProduct .coffee5Col .callingImg img,
#discovercategory .newContents .categoryProduct .coffee5Col .coffeeImg img {
  border: 1px solid #e2e2e2;
}

#discovercategory .newContents .categoryProduct .coffee5Col .callingImg a:hover img,
#discovercategory .newContents .categoryProduct .coffee5Col .coffeeImg a:hover img {
  border: 1px solid #a2a2a2;
}

#discovercategory .newContents .categoryProduct .coffee5Col .txtLink a {
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  color: #888888;
}

#discovercategory .newContents .categoryProduct .coffee5Col .txtLink a:hover {
  background: url(/customize/images/arrow-txtLink-ovon.gif) no-repeat left 0.4em;
  color: #333333;
}

#discovercategory .newContents .categoryProduct .coffee5Col .txtLinkNo {
  display: block;
  margin-top: 3px;
  margin-bottom: 10px;
  background: url(/customize/images/arrow-txtLink-ovoff.gif) no-repeat left 0.4em;
  padding-left: 12px;
  font-weight: bold;
  font-size: 0.8em;
  color: #888888;
}

#discovercategory .newContents table.layoutTable {
  border-collapse: collapse;
}

#discovercategory .newContents table.layoutTable th,
#discovercategory .newContents table.layoutTable td {
  padding: 0;
  zoom: 1;
}

#discovercategory .newContents table.layoutTable td .callingImg,
#discovercategory .newContents table.layoutTable td .coffeeImg {
  position: relative;
}

#discovercategory .newContents table.layoutTable td .callingImg span img,
#discovercategory .newContents table.layoutTable td .coffeeImg span a:hover img,
#discovercategory .newContents table.layoutTable td .callingImg span img,
#discovercategory .newContents table.layoutTable td .coffeeImg span a:hover img {
  padding: 0;
  border: none;
}

#discovercategory .newContents table.layoutTable td .callingImg span.soldout,
#discovercategory .newContents table.layoutTable td .coffeeImg span.soldout {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 10;
}

#discovercategory .newContents table.layoutTable td .callingImg span.comment,
#discovercategory .newContents table.layoutTable td .coffeeImg span.comment {
  position: absolute;
  top: 1px;
  left: 1px;
  z-index: 10;
}

#discovercategory .newContents table.layoutTable td .callingImg span.delete,
#discovercategory .newContents table.layoutTable td .coffeeImg span.delete {
  position: absolute;
  top: 1px;
  right: 1px;
  z-index: 10;
}

/* popupArea */
#popupArea {
  display: none;
}

.popup {
  color: #5b5b5b;
}

.popupElement {
  color: #5b5b5b;
  text-decoration: none;
  margin: 0;
}

.popupElement a {
  font-size: 10px;
  color: #a5a5a5;
}

.popupElement a:link { /*color:#5b5b5b;*/
  text-decoration: none;
}

.popupElement a:visited {
  color: #5b5b5b;
  text-decoration: none;
}

.popupElement a:hover {
  color: #5b5b5b;
  text-decoration: none;
}

.popupElement a:active {
  color: #5b5b5b;
  text-decoration: none;
}

/* popupElement */
.popupElement {
  width: 960px;
  clear: both;
  overflow: hidden;
  font-size: 1.2em;
}

.popupElement p {
  margin: 0;
}

p.recommendP {
  position: absolute;
  top: 45px;
  right: 15px;
  z-index: 10;
}

/** link **/
.popupElement .linkIcon {
  padding-left: 12px;
  background: url(/products/images/icon_arrow_02.gif) no-repeat left 0.4em;
}

.popupElement .productInfo a.arrow {
  background: url(/customize/images/t-arrow-right-off.png) no-repeat left 0.4em transparent;
  padding-left: 12px;
  font-size: 10px;
  color: #888888;
}

.popupElement .productInfo a.arrow:hover {
  background: url(/customize/images/t-arrow-right-on.png) no-repeat left 0.4em transparent;
  color: #333333;
}

/** item **/
.popupElement .item {
  clear: both;
  overflow: hidden;
  position: relative;
}

.popupElement .item .btns ul {
  list-style: none;
  margin: 0;
  padding: 5px 0px 12px 33px;
  text-align: left;
}

*:first-child + html .btns ul li {
  float: left;
  display: inline;
}

.popupElement .item .btns ul li {
  display: inline;
  margin-right: 1px;
}

.popupElement .item .btns ul li.mixiBtn {
  margin-left: 10px;
}

.popupElement .item .btns ul li.facebookBtn {
  margin-left: 10px;
}

.popupElement .productImg {
  width: 330px;
  float: left;
  padding-right: 30px;
  height: auto;
}

.popupElement .productImg {
  display: table-cell;
  margin-bottom: 1px;
  vertical-align: middle;
}

.productImg .productInner {
  position: relative;
  height: 330px;
  width: 330px;
}

#addCustomCoffee,
#addCustomEspresso,
#addCustomMilk,
#addCustomOthers,
#addCustomCharacter,
#baseItemImg {
  position: absolute;
  top: 0;
  left: 0;
}

.popupElement .productInfo {
  margin: 0;
  width: 540px;
  float: left;
}

.popupElement .productInfo h3 {
  margin: 0 0 25px 0;
  color: #333333;
  font-size: 18px;
}

.popupElement .productInfo textarea {
  width: 367px;
  height: 63px;
}

/** withImgCol **/
.popupElement .productInfo .withImgCol {
  _zoom: 1;
  overflow: hidden;
  margin-bottom: 1em;
  width: 100%;
}

.popupElement .productInfo .withImgCol p,
.popupElement .productInfo .withImgCol ul,
.popupElement .productInfo .withImgCol ol {
  margin-top: 0;
}

.popupElement .productInfo .withImgCol .imgL {
  float: left;
  margin: 0 20px 0 0;
}

.popupElement .productInfo .withImgCol .txtR,
.popupElement .productInfo .withImgCol .txtL {
  overflow: hidden;
  _zoom: 1;
}

.popupElement .productInfo .withImgCol .imgL {
  margin-right: 8px;
}

.popupElement .productInfo .withImgCol .txtR {
  width: 270px;
  color: #000000;
}

.popupElement .productInfo .withImgCol .txtR p {
  margin-bottom: 0;
}

.popupElement .productInfo .withImgCol .txtR ol {
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
}

.popupElement .productInfo .withImgCol .txtR ol li {
  padding-left: 14px;
  text-indent: 0;
  list-style: none;
  line-height: 1.5;
}

.popupElement .productInfo .withImgCol .txtR ul {
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
}

.popupElement .productInfo .withImgCol .txtR ul li {
  display: inline;
  margin-right: 5px;
}

.popupElement .productInfo .withImgCol {
  margin-top: 30px;
}

.popupElement .productInfo .withImgCol.coffee .imgL {
  padding-top: 12px;
}

.popupElement .productInfo .withImgCol.coffee .txtR {
  padding-top: 12px;
  background: url(/common/images/border-bg.gif) repeat-x left top;
}

/** popupElement info **/
.popupElement div.info {
  border-right: 1px solid #FFF;
  border-left: 1px solid #FFF;
}

/** popupElwmwntCustom **/
.popupElement .withImgCol ul {
  list-style-type: none;
  padding-left: 0;
}

.popupElement .item {
  width: auto;
  padding: 30px 30px 40px 30px;
}

.popupElement p.fontS {
  color: #a5a5a5;
  font-size: 10px;
}

.popupElement a.arrow#moveRecomend {
  background: url(/customize/images/t-arrow-right-off.png) no-repeat scroll left 0.4em transparent;
  display: inline-block;
  padding-left: 12px;
  color: #888888;
}

.popupElement a.arrow#moveRecomend:hover {
  background: url(/customize/images/t-arrow-right-on.png) no-repeat scroll left 0.4em transparent;
  color: #333333;
}

.popupElement .withImgCol ul li {
  background: url(/common/images/border-bg.gif) repeat-x scroll left bottom transparent;
  padding: 20px 0px 15px 0;
  margin-right: 24px;
}

.popupElement div.top {
  background-color: #e8e8e8;
  overflow: hidden;
  padding: 10px 15px;
  position: relative;
  border: 1px solid #ffffff;
}

.popupElement div.top h3 {
  margin: 11px 0 9px 0;
}

.popupElement div.top a.arrow {
  background: url(/customize/images/t-arrow-right-off.png) no-repeat scroll right center transparent;
  display: inline-block;
  padding-right: 12px;
  position: static;
}

.popupElement div.top a.arrow:hover {
  background: url(/customize/images/t-arrow-right-on.png) no-repeat scroll right center transparent;
}

.popupElement h4.products {
  font-weight: normal;
  font-size: 10px;
  margin-top: 27px;
  margin-bottom: 0;
  line-height: 12px;
}

.popupElement div.ImgL {
  width: 83px;
  float: left;
}

.popupElement div.ImgL .productsImg {
  left: 100px;
  position: absolute;
  top: 90px;
}

.popupElement div.ImgL p.change {
  position: absolute;
  bottom: 10px;
  left: 15px;
}

.popupElement div.ImgL p.change a {
  display: block;
  width: 40px;
  height: 19px;
  background: url(/customize/images/t-customize-change-off.png) no-repeat left top;
}

.popupElement div.ImgL p.change a:hover {
  background: url(/customize/images/t-customize-change-on.png) no-repeat left top;
}

.popupElement div.ImgR {
  width: 849px;
  padding: 13px 0 0;
  line-height: 1;
  float: left;
  position: absolute;
  right: 5px;
}

.popupElement div.ImgR .col {
  padding: 0 7px 0 0;
  margin: 0;
  float: left;
}

.popupElement div.ImgR .col dd,
.popupElement div.ImgR .col dd img {
  margin: 0;
  padding: 0;
}

.popupElement div.ImgR .col dd img {
  background-color: #FFFFFF;
}

.popupElement div.ImgR .col.last {
  padding-right: 0px;
}

.popupElement div.ImgR .col ul {
  padding-left: 0;
  margin: 6px 0 0 0;
}

.popupElement div.ImgR .col ul li {
  display: inline;
  display: table-cell;
  list-style: none outside none;
  padding-right: 1px;
  float: left;
}

.popupElement div.ImgR .col.last {
  padding-right: 0px;
}

.popupElement div.ImgR .col ul {
  padding-left: 0;
  margin: 6px 0 0 0;
}

.popupElement .item .fav {
  text-align: center;
}

.popupElement div.ImgR .section01 {
  overflow: hidden;
}

.section01 {
  height: 105px;
}

.popupElement .withImgCol {
  position: relative;
}

.popupElement .commentArea {
  overflow-y: scroll;
  width: 540px;
  height: 200px;
  padding-top: 5px;
}

.popupElement .commentArea ul {
  margin-left: 0;
}

.popupElement .commentArea ul li {
  background: url(/common/images/border-bg.gif) repeat-x scroll left bottom transparent;
  padding: 12px 0px;
  margin-right: 30px;
  font-size: 10px;
  cursor: default;
  float: none;
  border: none;
}

.popupElement .commentArea ul li span {
  font-weight: bold;
}

.popupElement .withImgCol h4 {
  text-align: left;
  border-bottom: #e2e2e2 solid 3px;
  margin: 0px;
  padding-bottom: 3px;
}

.popupElement .withImgCol p.commentLink {
  position: absolute;
  right: 0;
  top: 0px;
}

.popupElement .productInfo dl {
  margin-top: 5px;
}

.popupElement .productInfo dl dt {
  margin-bottom: 18px;
  font-weight: bold;
  font-size: 14px;
}

.popupElement .productInfo dl dt #viewBaseItemName2 {
  font-size: 100%;
  display: block;
  line-height: 1.5;
}

.popupElement .productInfo dl dt span.howToOrder {
  font-size: 12px;
  margin-right: 12px;
  line-height: 2.5;
}

.popupElement .productInfo dl dt span .nomal {
  font-weight: normal;
  margin: 0;
}

.popupElement .productInfo dl dd {
  margin: 0;
}

/* beverageChoice */
.popupElement.beverageChoice {
  width: 450px;
}

.popupElement.beverageChoice .itemName {
  background-color: #fbfbfb;
  padding: 30px 28px 26px 28px;
}

.popupElement.beverageChoice .itemName h3 {
  font-size: 16px;
  padding: 0;
  margin: 0;
}

.popupElement.beverageChoice .item {
  padding: 28px;
}

.popupElement.beverageChoice .item ul {
  overflow: visible;
  list-style: none;
  padding: 0;
  margin: 8px 0 8px 6px;
}

.popupElement.beverageChoice .item li {
  display: inline;
  float: left;
}

.popupElement.beverageChoice .item #hotImg,
.popupElement.beverageChoice .item #iceImg {
  border: 1px solid #e2e2e2;
}

.popupElement.beverageChoice .item #hotImg:hover,
.popupElement.beverageChoice .item #iceImg:hover {
  border: 1px solid #a2a2a2;
}

.popupElement.beverageChoice .item li.hot {
  background: var(--beverage-choice-or) no-repeat right center;
  padding-right: 59px;
  margin-right: 29px;
}

.popupElement.beverageChoice .productImg {
  width: 116px;
  margin: 23px 33px 0 0;
  padding: 0 0 23px 28px;
}

.popupElement.beverageChoice .productInfo {
  width: 213px;
  float: left;
  margin: 23px 0;
}

.popupElement.beverageChoice .item ul.customizeChoice {
  overflow: visible;
  margin: 0;
  padding: 0;
}

.popupElement.beverageChoice .item ul.customizeChoice .choice01 {
  margin: 0 0 18px 0;
}

/* commentOverlay */
.popupElement.commentOverlay {
  width: 650px;
}

.popupElement.commentOverlay .item {
  background-color: #fbfbfb;
  width: 650px;
  padding: 0;
}

.popupElement.commentOverlay .productImg {
  width: 167px;
  padding: 28px;
}

.popupElement.commentOverlay .productImg.noBack {
  width: 167px;
  padding: 28px;
}

.popupElement.commentOverlay .productImg img {
  background-color: #ffffff;
  padding: 9px;
  margin-bottom: 9px;
}

.popupElement.commentOverlay .productImg .callingName {
  display: block;
  width: 167px;
  font-size: 10px;
  color: #333333;
}

.popupElement.commentOverlay .productInfo {
  background-color: #ffffff;
  width: 376px;
  min-height: 284px;
  padding: 28px 28px 28px 23px;
  float: left;
}

.popupElement.commentOverlay .productInfo.noBack {
  background-color: #ffffff;
  width: 376px;
  min-height: 200px;
  padding: 28px 28px 28px 23px;
  float: left;
}

.popupElement.commentOverlay .productInfo .commentTtl {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 5px;
}

.popupElement.commentOverlay .productInfo .commentTtl img {
  margin: 28px 0 15px 0;
}

.popupElement.commentOverlay .productInfo table {
  margin: 22px 0 18px 0;
}

.popupElement.commentOverlay .productInfo table th {
  text-align: left;
  padding-bottom: 12px;
}

.popupElement.commentOverlay .productInfo table td.left {
  width: 200px;
}

.popupElement.commentOverlay .productInfo table td label.inactive {
  color: #adadad;
}

.popupElement.commentOverlay .productInfo .fontS {
  color: #cbcbcb;
  font-size: 9px;
  text-indent: -1em;
  padding-left: 1em;
}

.popupElement.commentOverlay .productInfo .post {
  text-align: center;
  margin: 17px 0 0 0;
  padding-bottom: 3px;
}

.popupElement.commentOverlay .productInfo .favoriteBtn {
  margin-top: 25px;
  text-align: center;
}

.popupElement.commentOverlay .productImg .back {
  position: relative;
}

.popupElement.commentOverlay .productImg .back {
  position: absolute;
  bottom: 28px;
}

.popupElement.commentOverlay .productImg .back a {
  background: url(/customize/images/arrow-left.gif) no-repeat left center;
  color: #888888;
  font-size: 12px;
  padding-left: 13px;
}

/* commentOverlay2 */
.popupElement.commentOverlay2 {
  width: 650px;
}

.popupElement.commentOverlay2 .item {
  width: 650px;
  padding: 0;
}

#productsOverlay08 .productImg {
  min-height: 280px;
}

.popupElement.commentOverlay2 .productImg {
  background-color: #fbfbfb;
  width: 167px;
  min-height: 200px;
  padding: 28px;
}

.popupElement.commentOverlay2 .productImg.noBack {
  width: 167px;
  min-height: 200px;
  padding: 28px;
}

.popupElement.commentOverlay2 .productImg img {
  background-color: #ffffff;
  padding: 9px;
  margin-bottom: 9px;
}

.popupElement.commentOverlay2 .productImg p {
  width: 167px;
  font-size: 10px;
  color: #333333;
}

.popupElement.commentOverlay2 .productInfo {
  width: 376px;
  padding: 28px 28px 28px 23px;
  float: left;
}

.popupElement.commentOverlay2 .productInfo.noBack {
  background-color: #ffffff;
  width: 376px;
  min-height: 200px;
  padding: 28px 28px 28px 23px;
  float: left;
}

.popupElement.commentOverlay2 .productInfo .commentTtl {
  font-size: 19px;
  font-weight: bold;
}

.popupElement.commentOverlay2 .productInfo .commentTtl img {
  margin: 28px 0 15px 0;
}

.popupElement.commentOverlay2 .productInfo .favoriteDelete {
  margin: 30px 0 36px 0;
  font-size: 12px;
  color: #333333;
}

.popupElement.commentOverlay2 .productInfo .deleteBtn {
  position: relative;
  text-align: center;
}

.popupElement.commentOverlay2 .productInfo .deleteBtn .cancel {
  position: absolute;
  top: 0.5em;
  left: 0;
}

.popupElement.commentOverlay2 .productInfo table {
  margin: 22px 0 18px 0;
}

.popupElement.commentOverlay2 .productInfo table th {
  text-align: left;
  padding-bottom: 12px;
}

.popupElement.commentOverlay2 .productInfo table td.left {
  width: 200px;
}

.popupElement.commentOverlay2 .productInfo table td label.inactive {
  color: #adadad;
}

.popupElement.commentOverlay2 .productInfo .fontS {
  color: #cbcbcb;
  font-size: 9px;
  text-indent: -1em;
  padding-left: 1em;
}

.popupElement.commentOverlay2 .productInfo .post {
  text-align: center;
  margin: 17px 0 0 0;
  padding-bottom: 3px;
}

.popupElement.commentOverlay2 .productInfo .favoriteBtn {
  margin-top: 40px;
  text-align: center;
}

.popupElement.commentOverlay2 .productImg .back {
  position: relative;
}

.popupElement.commentOverlay2 .productImg .back {
  position: absolute;
  bottom: 28px;
}

.popupElement.commentOverlay2 .productInfo .cancel a,
.popupElement.commentOverlay2 .productInfo .back a {
  background: url(/customize/images/arrow-left.gif) no-repeat left center;
  color: #888888;
  font-size: 12px;
  padding-left: 13px;
}

.popupElement .item .btns {
  position: relative;
  right: 0;
}

.borderTop {
  border-top: 1px solid #e2e2e2;
}

.bold {
  font-weight: bold;
  padding-top: 22px;
}

/* text-align */
.txtAC {
  text-align: center;
}

/* magin */
.mT10 {
  margin-top: 10px !important;
}

.mT15 {
  margin-top: 15px !important;
}

.mT12 {
  margin-top: 12px !important;
}

.mT20 {
  margin-top: 20px !important;
}

.mT30 {
  margin-top: 30px !important;
}

.mB35 {
  margin-bottom: 35px !important;
}

.mB80 {
  margin-bottom: 80px !important;
}

/* #powertTip */
body #powerTipList,
body #powerTipList div.inner {
  max-width: 201px;
}

body #powerTip,
body #powerTip div.inner {
  max-width: 220px;
}

body #powerTipList,
body #powerTip {
  padding: 0 0 9px 0;
  background-image: url("/customize/images/arrow-toaltip.png");
  background-position: center bottom;
  background-repeat: no-repeat;
  background-color: transparent;
  overflow: hidden;
  border-radius: 3px;
  white-space: normal;
}

body #powerTipList div.inner,
body #powerTip div.inner {
  padding: 10px;
  background-color: #858585;
  border-radius: 3px;
}

/* favorite */
#favoriteComp {
  position: absolute;
  left: 30px;
  top: 340px;
}

#favoriteCompSmall {
  position: absolute;
  left: 383px;
  top: 148px;
}

#favoriteCompDetail {
  position: absolute;
  left: 109px;
  top: 528px;
}

.newContents .coffee5Col .callingImg img {
  background-color: #fff;
  padding: 8px;
}

body.callingtip #powerTip p {
  white-space: normal;
}

/*エラー文言*/
p.error {
  margin-top: 3px;
  color: #BE0006;
  font-size: 10px;
  position: absolute;
}

p.error img {
  vertical-align: top;
  margin-top: 3px;
  margin-right: 5px;
}

/*カルーセル*/
.favoritesBoxR .carouselHr2 .carouselContents ul li a {
  border: 1px solid #e2e2e2;
}

.favoritesBoxR .carouselHr2 .carouselContents ul li a:hover {
  border: 1px solid #a2a2a2;
}

.favoritesBoxR .carouselHr2 .carouselMain {
  padding: 0 10px;
}

.carouselHr2 .carouselContents ul li.carouselItem {
  position: relative;
}

.carouselHr2 .carouselContents li.carouselItem span.soldout {
  position: absolute;
  top: 3px;
  right: 3px;
}

/* SNSarea */
.addSnsArea {
  background-color: #f7f7f7;
  padding: 20px;
  margin-top: 10px;
  margin-bottom: 15px;
}

.popupElement.commentOverlay .productInfo .addSnsArea .fontS {
  padding-left: 0;
}

.popupElement .thankyouTxt {
  margin-bottom: 15px;
}

.popupElement.commentOverlay .back a {
  background: url(/customize/images/arrow-left.gif) no-repeat left center;
  color: #888888;
  font-size: 12px;
  padding-left: 13px;
}

.newContents .withImgCol ul.mainImg li {
  float: left;
}

/* 20130424 */
.popupElement .ImgR .carouselPrev {
  width: 13px;
  float: left;
  position: absolute;
  left: 0;
  bottom: 14px;
  z-index: 10;
}

.popupElement .ImgR .carouselNext {
  width: 13px;
  float: left;
  position: absolute;
  right: 0;
  bottom: 14px;
  z-index: 10;
}

.popupElement .ImgR .customizeAreaWrap {
  width: 815px;
  float: left;
  margin-right: 4px;
  margin-left: 17px;
}

.popupElement .ImgR .customizeAreaIn {
  position: relative;
  width: 800px;
  height: 95px;
  overflow: hidden;
  padding-left: 10px;
  padding-right: 5px;
}

.popupElement .ImgR .customizeAreaContents {
  /*  position: absolute;
      left: 7px;*/
  width: 9999px;
}

.popupElement div.ImgR .col dt {
  font-size: 5px;
}

/* 130604add */
#index #contents .contentsIn h1 {
  margin-bottom: 30px;
}

#index #contents .contentsIn .lead {
  margin-bottom: 65px;
}

#index .newContents .withImgCol .imgR {
  margin-top: 16px;
}

#index .newContents .favorites .col {
  margin-bottom: 0;
}

#index .newContents .noEntry {
  margin-bottom: 20px;
}

#index .newContents .noEntry p {
  margin-bottom: 0;
}

#index .newContents .noFavorites dl {
  float: left;
  width: 366px;
}

#index .newContents .noFavorites p {
  float: left;
  margin-bottom: 0;
}

#index .newContents .col2.col445 {
  width: 445px;
  font-size: 0.8em;
}

#index .newContents .col2.col425 {
  width: 425px;
  font-size: 0.8em;
}

/* margin */
.mB75 {
  margin-bottom: 75px !important;
}

/* 2014.03.12 add */
#customize .newContents .productdetail .productInfo dl dt span.taxText,
.popupElement .productInfo dl dt span.taxText {
  color: #CBCBCB;
  font-size: 10px;
  font-weight: normal;
  line-height: 1.8;
  display: block;
}

/* 2014.07.04 add */
.newContents ul.searchMenuR {
  padding-right: 1px;
}

.newContents ul.searchMenuR li {
  padding-left: 15px;
}

/* index */
#index #contents .contentsIn h1 {
  margin-bottom: 29px;
}

#index #contents .contentsIn .lead {
  margin-bottom: 49px;
}

#index .newContents .memberNotes a {
  color: #aca39c;
}

#index .newContents .memberNotes li {
  color: #aca39c;
  float: left;
  font-size: 0.8em;
  margin-right: 24px;
}

#index .newContents .favorites.noEntry {
  margin-bottom: 31px;
}

#index .newContents .favorites.noEntry dl {
  margin-bottom: 18px;
}

#index .newContents .favorites.noEntry dl dt {
  padding-bottom: 16px;
}

#index .newContents .favorites.noEntry dl .withImgCol .imgL {
  margin-right: 9px;
}

#index .newContents .memberNotes {
  margin-top: 15px;
  margin-bottom: 0;
  zoom: 1;
}

#index .newContents .memberNotes:after {
  content: "";
  display: block;
  clear: both;
}

#index .newContents .col2 dl dd {
  font-size: 1.2em;
}

#index .newContents .arrow a {
  background-image: url(/customize/images/bg-customize-index-arrow-ovoff.png);
}

#index .newContents .arrow a:hover {
  background-image: url(/customize/images/bg-customize-index-arrow-ovon.png);
  color: #6cb33f;
}

#index .newContents .favorites {
  margin-bottom: 43px;
}

#index .newContents .favorites .loginFavorite dt {
  margin-bottom: 10px;
}

#index .newContents .favorites .favoritesBoxL .withImgCol,
#index .newContents .favorites .favoritesBoxL .withImgCol p {
  margin-bottom: 0;
}

#index .newContents .favorites .favoritesBoxL .withImgCol .imgL {
  margin-top: 6px;
  margin-right: 9px;
}

#index .newContents .favorites .favoritesBoxL .withImgCol .txtR p {
  line-height: 1.6;
}

#index .newContents .favorites .favoritesBoxR {
  margin-top: 35px;
}

/* favorite */
#favorite #contents .contentsIn .newContents .searchMenu.loginNofavorite {
  margin-bottom: 31px;
}

#favorite .newContents .withImgCol.loginNofavorite {
  margin-left: -3px;
  margin-bottom: 25px;
}

#favorite .newContents .withImgCol.loginNofavorite .imgL {
  margin-right: 16px;
}

#favorite .newContents .withImgCol.loginNofavorite .txtR {
  font-size: 1.2em;
  margin-top: 34px;
  margin-bottom: 0;
}

#favorite #contents .contentsIn {
  min-height: 400px;
}

#favorite #contents .contentsIn #contentsWrapper #contentsMain #contentsFooter {
  margin-top: 88px;
}

/* customize */
div.favArea {
  margin-bottom: 27px;
}

#customize .newContents .productdetail .productInfo dl {
  margin-bottom: 25px;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns {
  margin-bottom: 24px;
}

#customize .newContents .productdetail .productImg ul li {
  margin-bottom: 13px;
  text-align: left;
}

#customize .newContents .productdetail .productInfo .imgS {
  margin-bottom: 6px;
}

#customize .newContents .productdetail .productInfo dl {
  margin-bottom: 22px;
  margin-top: 0;
}

#customize .newContents .productdetail .productInfo dl dt {
  line-height: 1.8;
}

#customize .newContents .productdetail .productInfo dl dt span {
  line-height: 1.8;
}

#customize .newContents .productdetail .productInfo dl dt span.taxText,
.popupElement .productInfo dl dt span.taxText {
  margin-top: 3px;
}

#customize .newContents .productdetail .withImgCol .commentArea {
  height: 181px;
}

#customize .newContents .productdetail .withImgCol .commentArea ul {
  margin-bottom: 0;
}

#customize .newContents .productdetail .withImgCol p.commentLink {
  margin-bottom: 0;
  right: 2px;
}

#customize .newContents .productdetail .withImgCol .annotation {
  margin-bottom: 21px;
  text-align: right;
}

#customize .newContents .productdetail .withImgCol .annotation li {
  color: #cbcbcb;
  display: inline;
  font-size: 10px;
  margin-left: 6px;
  zoom: 1;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain #contentsFooter {
  margin-top: 35px;
}

/* popupElement */
/*.popupElement.detail .productInfo{
	float:none;
	margin-left:360px;
}*/
.popupElement .item .btns ul {
  padding-top: 0;
  padding-left: 0;
}

.popupElement .productInfo .withImgCol {
  margin-top: 24px;
  margin-bottom: 5px;
}

.popupElement .withImgCol h4 {
  padding-top: 6px;
}

.popupElement ul.annotation {
  padding: 0 0 10px 0;
  margin: 0;
  text-align: right;
}

.popupElement ul.annotation li {
  color: #cbcbcb;
  display: inline;
  font-size: 10px;
  list-style: none;
  margin: 0 0 0 6px;
  padding: 0;
  zoom: 1;
}

.popupElement.commentOverlay .dyfChoice {
  margin-top: 20px;
}

.popupElement.commentOverlay .snsChoiceTtl {
  color: #5b5b5b;
  font-size: 12px;
  font-weight: bold;
  margin-top: 16px;
}

.popupElement.commentOverlay .snsChoice {
  margin: 15px 0 0 0;
  padding: 0;
  zoom: 1;
}

.popupElement.commentOverlay .snsChoice:after {
  content: "";
  display: block;
  clear: both;
}

.popupElement.commentOverlay .snsChoice li {
  float: left;
  list-style: none;
  margin: 0 53px 0 0;
  padding: 0;
}

.popupElement.commentOverlay .snsNotes {
  color: #aca39c;
  font-size: 10px;
  line-height: 1.7;
  margin-top: 11px;
}

.popupElement.commentOverlay .productInfo .post {
  margin-top: 16px;
}

/* 140709 add */
.newContents ul.searchMenuR.searchMenuFoot {
  display: block;
  float: none;
  zoom: 1;
}

.newContents ul.searchMenuR.searchMenuFoot:after {
  content: "";
  display: block;
  clear: both;
}

.newContents ul.searchMenuR.searchMenuFoot li {
  float: right;
}

#contents .contentsIn #contentsWrapper #contentsMain #contentsFooter,
#favorite #contents .contentsIn #contentsWrapper #contentsMain #contentsFooter {
  margin-top: 50px;
}

#customize #contents .contentsIn #contentsWrapper #contentsMain .customizeSns .btns {
  margin-left: 57px;
}

.popupElement .item .btns ul {
  margin-left: 47px;
  width: 260px;
}

.popupElement .commentArea {
  height: auto;
  min-height: 135px;
  max-height: 200px;
}

/* favorite 140724 add */
#favorite .newContents .withImgCol.noEntery {
  margin-bottom: 34px;
  padding-top: 32px;
}

#favorite .newContents .withImgCol.noEntery p {
  margin-bottom: 0;
}

#favorite .newContents .withImgCol.noEntery p.imgL {
  margin-right: 9px;
}

#favorite .newContents .withImgCol.noEntery .memberNotes {
  margin-top: 12px;
  margin-bottom: 0;
  zoom: 1;
}

#favorite .newContents .withImgCol.noEntery .memberNotes:after {
  content: "";
  display: block;
  clear: both;
}

#favorite .newContents .withImgCol.noEntery .memberNotes .noEntry p {
  margin-bottom: 0;
}

#favorite .newContents .withImgCol.noEntery .memberNotes a {
  color: #aca39c;
}

#favorite .newContents .withImgCol.noEntery .memberNotes li {
  color: #aca39c;
  float: left;
  margin-right: 24px;
}

#favorite .newContents .withImgCol.noEntery .memberNotes .arrow a {
  background-image: url(/customize/images/bg-customize-index-arrow-ovoff.png);
  background-position: left 0.4em;
}

#favorite .newContents .withImgCol.noEntery .memberNotes .arrow a:hover {
  background-image: url(/customize/images/bg-customize-index-arrow-ovon.png);
  color: #6cb33f;
}

/* commentOverlay 140724 add */
.popupElement.commentOverlay .productInfo {
  padding-top: 30px;
}

.popupElement.commentOverlay .productInfo .commentLead {
  padding-top: 12px;
}

.popupElement.commentOverlay .productInfo .commentNotes {
  padding-top: 31px;
  color: #7d7065;
  font-size: 10px;
}

.popupElement.commentOverlay .productInfo .commentBtn {
  margin: 12px 0 0;
  padding: 0;
  zoom: 1;
}

.popupElement.commentOverlay .productInfo .commentBtn:after {
  content: "";
  display: block;
  clear: both;
}

.popupElement.commentOverlay .productInfo .commentBtn li {
  float: left;
  list-style: none;
}

.popupElement.commentOverlay .productInfo .commentBtn li:first-child {
  margin-right: 20px;
}

/* 140920 リニューアル用上書き */
#customize #contents .contentsIn,
#menu #contents .contentsIn,
#favorite #contents .contentsIn,
#recommend #contents .contentsIn,
#discovercategory #contents .contentsIn {
  padding: 0;
  margin: 0;
}

/*
#customize .newContents {
margin: 0;
}
*/
#recommend article .newContents p {
  font-size: 12px;
}

#recommend .newContents .withImgCol .imgL dt {
  font-size: 100%;
}

/* #customize #colorbox,
#menu #colorbox,
#favorite #colorbox,
#recommend #colorbox,
#discovercategory #colorbox {
box-shadow: none;
} */
@media all and (max-width: 1230px) {
  body#index div.mainContents.notExNav article,
  body#customize.dyfResult div.mainContents.notExNav article,
  body#favorite div.mainContents.notExNav article,
  body#discovercategory div.mainContents.notExNav article,
  body#menu div.mainContents.notExNav article,
  body#recommend div.mainContents.notExNav article {
    width: auto;
  }
  body#index div.mainContents.notExNav,
  body#customize.dyfResult div.mainContents.notExNav,
  body#favorite div.mainContents.notExNav,
  body#discovercategory div.mainContents.notExNav,
  body#menu div.mainContents.notExNav,
  body#recommend div.mainContents.notExNav {
    margin-right: 0;
  }
}
/* 2015.03.25 ツールチップ不具合対応 */
#index article {
  overflow: visible;
}

/* 2015.05.20 オーバーレイ シャドウ対応 */
.popupElement {
  width: 960px;
}

/* 2015.08.26 FB/Tw仕様変更対応 */
#cboxDyfWrapper .popupElement ul.sns {
  bottom: 20px;
  font-size: 10px;
  position: absolute;
  right: 20px;
}

#cboxDyfWrapper .popupElement ul.sns li {
  display: table-cell;
  padding: 10px 0 0 10px;
  vertical-align: middle;
}

#cboxDyfWrapper .popupElement ul.sns li a {
  display: block;
  margin: 0 auto;
  text-align: center;
  width: 33px;
}

#cboxDyfWrapper .popupElement ul.sns li a:hover {
  opacity: 0.8;
}

#cboxDyfWrapper .popupElement ul.sns li.forSp {
  display: none;
}

#cboxDyfWrapper .popupElement .productInfo ul.sns {
  top: 24px;
}

#cboxDyfWrapper .popupElement .productInfo .callingName {
  margin-right: 90px;
}

#customize.dyfResult .productdetail .productInfo ul.sns {
  font-size: 10px;
  position: absolute;
  right: 0;
  top: 120px;
}

#customize.dyfResult .productdetail .productInfo ul.sns li {
  display: table-cell;
  padding: 10px 0 0 10px;
  vertical-align: middle;
}

#customize.dyfResult .productdetail .productInfo ul.sns li a {
  display: block;
  margin: 0 auto;
  text-align: center;
  width: 33px;
}

#customize.dyfResult .productdetail .productInfo ul.sns li a:hover {
  opacity: 0.8;
}

#customize.dyfResult .productdetail .productInfo ul.sns li.forSp {
  display: none;
}

#customize.dyfResult .productdetail .productInfo h1 {
  margin-right: 60px;
}

@media all and (max-width: 1230px) {
  #customize.dyfResult div.mainContents.notExNav.migration article {
    width: 930px;
  }
}
/* 2015.09.04 DYFコンポーネント改修 */
@media all and (max-width: 599px) {
  #cboxDyfOverlay + #colorbox {
    width: 320px !important;
  }
  #customizeOverlay01.popupElement.beverageChoice {
    width: 320px;
  }
  #customizeOverlay01.popupElement.beverageChoice .itemName,
  #customizeOverlay01.popupElement.beverageChoice .item {
    width: 100%;
  }
  #customizeOverlay01.popupElement.beverageChoice .item ul {
    margin: 0;
    overflow: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    background: var(--beverage-choice-or) no-repeat center center;
  }
  #customizeOverlay01.popupElement.beverageChoice li {
    width: 110px;
  }
  #customizeOverlay01.popupElement.beverageChoice li img {
    width: 100%;
    height: auto;
  }
  #customizeOverlay01.popupElement.beverageChoice .item li.hot {
    margin-right: 0;
    padding-right: 0;
    background: none;
  }
}
/* 2015.09.11 SNSボタン追加 */
#contents .contentsIn .h1Block {
  position: relative;
  overflow: visible;
}

#contents .contentsIn .h1Block ul.sns {
  font-size: 10px;
  position: absolute;
  right: -15px;
  top: 4px;
}

#contents .contentsIn .h1Block ul.sns li {
  display: table-cell;
  padding: 10px 0 0 10px;
  vertical-align: middle;
}

#contents .contentsIn .h1Block ul.sns li.forSp {
  display: none;
}

#contents .contentsIn .h1Block ul.sns li a {
  display: block;
  margin: 0 auto;
  text-align: center;
  width: 33px;
}

#contents .contentsIn .h1Block ul.sns li a:hover {
  opacity: 0.8;
}

/* 2015.10.15 Cartボタン修正 */
#index nav.utility {
  margin: 0;
  padding: 53px 20px 0 0;
  position: fixed;
  right: 0;
  text-align: right;
  top: 0;
  width: 100px;
}

#index nav.utility ul {
  margin: 0;
}

#index nav.utility li {
  font-size: 110%;
  margin-bottom: 22px;
  list-style: none;
}

#index nav.utility li a {
  color: #222222;
}

#index nav.utility li a span.indention {
  display: block;
}

#index nav.utility li.cart {
  margin-bottom: 35px;
}

#index nav.utility li.cart a:hover {
  opacity: 0.7;
}

#index nav.utility li.cart div.icon {
  display: inline-block;
  height: 32px;
  margin-right: 6px;
  position: relative;
  width: 27px;
}

#index nav.utility li.cart span.individual {
  bottom: 0;
  color: #ffffff;
  display: block;
  font-size: 10px;
  height: 19px;
  line-height: 19px;
  overflow: hidden;
  position: absolute;
  right: 0;
  text-align: center;
  width: 19px;
}

#index nav.utility li.cart span.price {
  color: #56b42e;
  display: block;
  font-size: 110%;
  margin-right: 2px;
}

#index nav.utility li.onlineStore {
  font-size: 130%;
}

#index nav.utility li.onlineStore a {
  color: #000000;
}

/* 2016.01.28 Cartボタン マージン修正 */
#index nav.utility {
  padding: 0 20px 0 0;
  margin-top: 50px;
}

/* 2017.10.30 */
.newContents ul.annotation li {
  text-align: right;
  color: #cbcbcb;
  font-size: 10px;
  padding: 15px 0;
}

/* 2017.12.07 #Colorbox */
@media all and (max-width: 599px) {
  body #cboxDyfOverlay + #colorbox.msb-popup {
    width: calc(100% - 40px) !important;
    min-width: unset !important;
  }
}
/* 2019.10.23 */
.item .productImg .favArea .txtAC .txtAC.toList .arrow {
  position: relative;
}

/* #Colorbox End */
.container {
  padding-left: 40px;
  padding-right: 40px;
  margin: 0 auto;
  width: 100%;
  max-width: 1264px;
  position: relative;
}
@media (max-width: 519px) {
  .container {
    padding: 0 1.6rem;
  }
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -40px;
  margin-right: -40px;
}
.row > [class*=col-] {
  padding-left: 40px;
  padding-right: 40px;
}

.row-no-gutters {
  margin-left: 0;
  margin-right: 0;
}
.row-no-gutters > [class*=col-] {
  padding-left: 0;
  padding-right: 0;
}

/* Grid for all screen
 * Ex: col-1, col-2 */
.col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

/* Ex :Grid for screen min-width: $small
* col-sm-1, col-sm-2 */
@media (max-width: 519px) {
  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row {
    margin-left: -8px;
    margin-right: -8px;
  }
  .row > [class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
  }
}
.navigation {
  display: flex;
  justify-content: center;
}

.button-show-sidebar {
  display: flex;
  align-items: center;
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  color: #000000;
  background: #ffffff;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
}
.button-show-sidebar span {
  padding-right: 6px;
}

@media screen and (min-width: 1040px) {
  .button-show-sidebar {
    display: none;
  }
  .sidebar {
    margin-right: 40px;
  }
  .sidebar .list-categories .item-category .radio__label-icon {
    display: none;
  }
  .sidebar .list-categories .item-category .radio__label-text {
    margin-left: 0;
  }
  .sidebar .checkbox-group:last-child {
    margin-bottom: 0;
  }
}
.sidebar {
  flex-basis: 224px;
  flex-shrink: 0;
}
.sidebar .title-filter {
  margin-bottom: 2.4rem;
  padding: 8px;
  line-height: 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  font-weight: bold;
  font-size: 13px;
  color: rgba(0, 0, 0, 0.3);
  background-color: #f9f9f9;
}
.sidebar .list-categories {
  margin-bottom: 32px;
  padding: 0 8px;
}
.sidebar .list-categories .item-category {
  margin-bottom: 16px;
}
.sidebar .list-categories .item-category.medium {
  padding-left: 10px;
}
.sidebar .list-categories .item-category.small {
  padding-left: 18px;
}
.sidebar .line-gray {
  margin: 43px 0;
}
.sidebar .toggle {
  margin-bottom: 43px;
}
.sidebar .checkbox-group {
  padding: 0 8px;
  margin-bottom: 32px;
}
.sidebar .radio-item + .radio-item {
  margin-top: 16px;
}
.sidebar .radio__label-text,
.sidebar .checkbox__label-text {
  margin-top: 2px;
  font-size: 1.3rem;
  line-height: 1.6rem;
  color: rgba(0, 0, 0, 0.7);
}

@media screen and (max-width: 1039px) {
  .sidebar {
    position: relative;
    padding: 6.4rem 0;
    white-space: nowrap;
  }
  .sidebar .close-button {
    position: absolute;
    top: 1.6rem;
    right: 1.6rem;
  }
  .sidebar .title-filter,
  .sidebar .list-categories,
  .sidebar .checkbox-group {
    padding-left: 24px;
    padding-right: 24px;
  }
  .sidebar .button-submit {
    position: fixed;
    bottom: 1.6rem;
    transition: 0.5s;
  }
  .sidebar.sp {
    position: fixed;
    width: 302px;
    height: 100%;
    top: 0;
    background-color: white;
    z-index: var(--z-index-modal);
    overflow: auto;
    transition: 0.5s;
  }
  .sidebar.hide {
    right: -302px;
  }
  .sidebar.hide .button-submit {
    right: -302px;
  }
  .sidebar.show {
    right: 0;
  }
  .sidebar.show .button-submit {
    right: 1.6rem;
  }
}
.pd-0 {
  padding: 0px;
  padding: 0rem;
}

.px-0 {
  padding: 0px 0px;
  padding: 0rem 0rem;
}

.py-0 {
  padding: 0px 0px;
  padding: 0rem 0rem;
}

.pl-0 {
  padding-left: 0px;
  padding-left: 0rem;
}

.pr-0 {
  padding-right: 0px;
  padding-right: 0rem;
}

.pt-0 {
  padding-top: 0px;
  padding-top: 0rem;
}

.pb-0 {
  padding-bottom: 0px;
  padding-bottom: 0rem;
}

.mg-0 {
  margin: 0px;
  margin: 0rem;
}

.mx-0 {
  margin: 0px 0px;
  margin: 0rem 0rem;
}

.my-0 {
  margin: 0px 0px;
  margin: 0rem 0rem;
}

.mt-0 {
  margin-top: 0px;
  margin-top: 0rem;
}

.ml-0 {
  margin-left: 0px;
  margin-left: 0rem;
}

.mb-0 {
  margin-bottom: 0px;
  margin-bottom: 0rem;
}

.mr-0 {
  margin-right: 0px;
  margin-right: 0rem;
}

.mr-0-i {
  margin-right: 0px;
  margin-right: 0rem;
}

.pd-1 {
  padding: 5px;
  padding: 0.3125rem;
}

.px-1 {
  padding: 0px 5px;
  padding: 0rem 0.3125rem;
}

.py-1 {
  padding: 5px 0px;
  padding: 0.3125rem 0rem;
}

.pl-1 {
  padding-left: 5px;
  padding-left: 0.3125rem;
}

.pr-1 {
  padding-right: 5px;
  padding-right: 0.3125rem;
}

.pt-1 {
  padding-top: 5px;
  padding-top: 0.3125rem;
}

.pb-1 {
  padding-bottom: 5px;
  padding-bottom: 0.3125rem;
}

.mg-1 {
  margin: 5px;
  margin: 0.3125rem;
}

.mx-1 {
  margin: 0px 5px;
  margin: 0rem 0.3125rem;
}

.my-1 {
  margin: 5px 0px;
  margin: 0.3125rem 0rem;
}

.mt-1 {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.ml-1 {
  margin-left: 5px;
  margin-left: 0.3125rem;
}

.mb-1 {
  margin-bottom: 5px;
  margin-bottom: 0.3125rem;
}

.mr-1 {
  margin-right: 5px;
  margin-right: 0.3125rem;
}

.mr-1-i {
  margin-right: 5px;
  margin-right: 0.3125rem;
}

.pd-2 {
  padding: 10px;
  padding: 0.625rem;
}

.px-2 {
  padding: 0px 10px;
  padding: 0rem 0.625rem;
}

.py-2 {
  padding: 10px 0px;
  padding: 0.625rem 0rem;
}

.pl-2 {
  padding-left: 10px;
  padding-left: 0.625rem;
}

.pr-2 {
  padding-right: 10px;
  padding-right: 0.625rem;
}

.pt-2 {
  padding-top: 10px;
  padding-top: 0.625rem;
}

.pb-2 {
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}

.mg-2 {
  margin: 10px;
  margin: 0.625rem;
}

.mx-2 {
  margin: 0px 10px;
  margin: 0rem 0.625rem;
}

.my-2 {
  margin: 10px 0px;
  margin: 0.625rem 0rem;
}

.mt-2 {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.ml-2 {
  margin-left: 10px;
  margin-left: 0.625rem;
}

.mb-2 {
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
}

.mr-2 {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.mr-2-i {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.pd-3 {
  padding: 15px;
  padding: 0.9375rem;
}

.px-3 {
  padding: 0px 15px;
  padding: 0rem 0.9375rem;
}

.py-3 {
  padding: 15px 0px;
  padding: 0.9375rem 0rem;
}

.pl-3 {
  padding-left: 15px;
  padding-left: 0.9375rem;
}

.pr-3 {
  padding-right: 15px;
  padding-right: 0.9375rem;
}

.pt-3 {
  padding-top: 15px;
  padding-top: 0.9375rem;
}

.pb-3 {
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
}

.mg-3 {
  margin: 15px;
  margin: 0.9375rem;
}

.mx-3 {
  margin: 0px 15px;
  margin: 0rem 0.9375rem;
}

.my-3 {
  margin: 15px 0px;
  margin: 0.9375rem 0rem;
}

.mt-3 {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.ml-3 {
  margin-left: 15px;
  margin-left: 0.9375rem;
}

.mb-3 {
  margin-bottom: 15px;
  margin-bottom: 0.9375rem;
}

.mr-3 {
  margin-right: 15px;
  margin-right: 0.9375rem;
}

.mr-3-i {
  margin-right: 15px;
  margin-right: 0.9375rem;
}

.pd-4 {
  padding: 20px;
  padding: 1.25rem;
}

.px-4 {
  padding: 0px 20px;
  padding: 0rem 1.25rem;
}

.py-4 {
  padding: 20px 0px;
  padding: 1.25rem 0rem;
}

.pl-4 {
  padding-left: 20px;
  padding-left: 1.25rem;
}

.pr-4 {
  padding-right: 20px;
  padding-right: 1.25rem;
}

.pt-4 {
  padding-top: 20px;
  padding-top: 1.25rem;
}

.pb-4 {
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

.mg-4 {
  margin: 20px;
  margin: 1.25rem;
}

.mx-4 {
  margin: 0px 20px;
  margin: 0rem 1.25rem;
}

.my-4 {
  margin: 20px 0px;
  margin: 1.25rem 0rem;
}

.mt-4 {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.ml-4 {
  margin-left: 20px;
  margin-left: 1.25rem;
}

.mb-4 {
  margin-bottom: 20px;
  margin-bottom: 1.25rem;
}

.mr-4 {
  margin-right: 20px;
  margin-right: 1.25rem;
}

.mr-4-i {
  margin-right: 20px;
  margin-right: 1.25rem;
}

.pd-5 {
  padding: 25px;
  padding: 1.5625rem;
}

.px-5 {
  padding: 0px 25px;
  padding: 0rem 1.5625rem;
}

.py-5 {
  padding: 25px 0px;
  padding: 1.5625rem 0rem;
}

.pl-5 {
  padding-left: 25px;
  padding-left: 1.5625rem;
}

.pr-5 {
  padding-right: 25px;
  padding-right: 1.5625rem;
}

.pt-5 {
  padding-top: 25px;
  padding-top: 1.5625rem;
}

.pb-5 {
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
}

.mg-5 {
  margin: 25px;
  margin: 1.5625rem;
}

.mx-5 {
  margin: 0px 25px;
  margin: 0rem 1.5625rem;
}

.my-5 {
  margin: 25px 0px;
  margin: 1.5625rem 0rem;
}

.mt-5 {
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.ml-5 {
  margin-left: 25px;
  margin-left: 1.5625rem;
}

.mb-5 {
  margin-bottom: 25px;
  margin-bottom: 1.5625rem;
}

.mr-5 {
  margin-right: 25px;
  margin-right: 1.5625rem;
}

.mr-5-i {
  margin-right: 25px;
  margin-right: 1.5625rem;
}

.pd-6 {
  padding: 30px;
  padding: 1.875rem;
}

.px-6 {
  padding: 0px 30px;
  padding: 0rem 1.875rem;
}

.py-6 {
  padding: 30px 0px;
  padding: 1.875rem 0rem;
}

.pl-6 {
  padding-left: 30px;
  padding-left: 1.875rem;
}

.pr-6 {
  padding-right: 30px;
  padding-right: 1.875rem;
}

.pt-6 {
  padding-top: 30px;
  padding-top: 1.875rem;
}

.pb-6 {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
}

.mg-6 {
  margin: 30px;
  margin: 1.875rem;
}

.mx-6 {
  margin: 0px 30px;
  margin: 0rem 1.875rem;
}

.my-6 {
  margin: 30px 0px;
  margin: 1.875rem 0rem;
}

.mt-6 {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.ml-6 {
  margin-left: 30px;
  margin-left: 1.875rem;
}

.mb-6 {
  margin-bottom: 30px;
  margin-bottom: 1.875rem;
}

.mr-6 {
  margin-right: 30px;
  margin-right: 1.875rem;
}

.mr-6-i {
  margin-right: 30px;
  margin-right: 1.875rem;
}

.pd-7 {
  padding: 35px;
  padding: 2.1875rem;
}

.px-7 {
  padding: 0px 35px;
  padding: 0rem 2.1875rem;
}

.py-7 {
  padding: 35px 0px;
  padding: 2.1875rem 0rem;
}

.pl-7 {
  padding-left: 35px;
  padding-left: 2.1875rem;
}

.pr-7 {
  padding-right: 35px;
  padding-right: 2.1875rem;
}

.pt-7 {
  padding-top: 35px;
  padding-top: 2.1875rem;
}

.pb-7 {
  padding-bottom: 35px;
  padding-bottom: 2.1875rem;
}

.mg-7 {
  margin: 35px;
  margin: 2.1875rem;
}

.mx-7 {
  margin: 0px 35px;
  margin: 0rem 2.1875rem;
}

.my-7 {
  margin: 35px 0px;
  margin: 2.1875rem 0rem;
}

.mt-7 {
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.ml-7 {
  margin-left: 35px;
  margin-left: 2.1875rem;
}

.mb-7 {
  margin-bottom: 35px;
  margin-bottom: 2.1875rem;
}

.mr-7 {
  margin-right: 35px;
  margin-right: 2.1875rem;
}

.mr-7-i {
  margin-right: 35px;
  margin-right: 2.1875rem;
}

.pd-8 {
  padding: 40px;
  padding: 2.5rem;
}

.px-8 {
  padding: 0px 40px;
  padding: 0rem 2.5rem;
}

.py-8 {
  padding: 40px 0px;
  padding: 2.5rem 0rem;
}

.pl-8 {
  padding-left: 40px;
  padding-left: 2.5rem;
}

.pr-8 {
  padding-right: 40px;
  padding-right: 2.5rem;
}

.pt-8 {
  padding-top: 40px;
  padding-top: 2.5rem;
}

.pb-8 {
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
}

.mg-8 {
  margin: 40px;
  margin: 2.5rem;
}

.mx-8 {
  margin: 0px 40px;
  margin: 0rem 2.5rem;
}

.my-8 {
  margin: 40px 0px;
  margin: 2.5rem 0rem;
}

.mt-8 {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.ml-8 {
  margin-left: 40px;
  margin-left: 2.5rem;
}

.mb-8 {
  margin-bottom: 40px;
  margin-bottom: 2.5rem;
}

.mr-8 {
  margin-right: 40px;
  margin-right: 2.5rem;
}

.mr-8-i {
  margin-right: 40px;
  margin-right: 2.5rem;
}

.pd-9 {
  padding: 45px;
  padding: 2.8125rem;
}

.px-9 {
  padding: 0px 45px;
  padding: 0rem 2.8125rem;
}

.py-9 {
  padding: 45px 0px;
  padding: 2.8125rem 0rem;
}

.pl-9 {
  padding-left: 45px;
  padding-left: 2.8125rem;
}

.pr-9 {
  padding-right: 45px;
  padding-right: 2.8125rem;
}

.pt-9 {
  padding-top: 45px;
  padding-top: 2.8125rem;
}

.pb-9 {
  padding-bottom: 45px;
  padding-bottom: 2.8125rem;
}

.mg-9 {
  margin: 45px;
  margin: 2.8125rem;
}

.mx-9 {
  margin: 0px 45px;
  margin: 0rem 2.8125rem;
}

.my-9 {
  margin: 45px 0px;
  margin: 2.8125rem 0rem;
}

.mt-9 {
  margin-top: 45px;
  margin-top: 2.8125rem;
}

.ml-9 {
  margin-left: 45px;
  margin-left: 2.8125rem;
}

.mb-9 {
  margin-bottom: 45px;
  margin-bottom: 2.8125rem;
}

.mr-9 {
  margin-right: 45px;
  margin-right: 2.8125rem;
}

.mr-9-i {
  margin-right: 45px;
  margin-right: 2.8125rem;
}

.pd-10 {
  padding: 50px;
  padding: 3.125rem;
}

.px-10 {
  padding: 0px 50px;
  padding: 0rem 3.125rem;
}

.py-10 {
  padding: 50px 0px;
  padding: 3.125rem 0rem;
}

.pl-10 {
  padding-left: 50px;
  padding-left: 3.125rem;
}

.pr-10 {
  padding-right: 50px;
  padding-right: 3.125rem;
}

.pt-10 {
  padding-top: 50px;
  padding-top: 3.125rem;
}

.pb-10 {
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
}

.mg-10 {
  margin: 50px;
  margin: 3.125rem;
}

.mx-10 {
  margin: 0px 50px;
  margin: 0rem 3.125rem;
}

.my-10 {
  margin: 50px 0px;
  margin: 3.125rem 0rem;
}

.mt-10 {
  margin-top: 50px;
  margin-top: 3.125rem;
}

.ml-10 {
  margin-left: 50px;
  margin-left: 3.125rem;
}

.mb-10 {
  margin-bottom: 50px;
  margin-bottom: 3.125rem;
}

.mr-10 {
  margin-right: 50px;
  margin-right: 3.125rem;
}

.mr-10-i {
  margin-right: 50px;
  margin-right: 3.125rem;
}

/* margin */
.m0 {
  margin: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mr0 {
  margin-right: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.ml0 {
  margin-left: 0 !important;
}

.mx0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.my0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m1 {
  margin: 0.4rem !important;
}

.mt1 {
  margin-top: 0.4rem !important;
}

.mr1 {
  margin-right: 0.4rem !important;
}

.mb1 {
  margin-bottom: 0.4rem !important;
}

.ml1 {
  margin-left: 0.4rem !important;
}

.mx1 {
  margin-left: 0.4rem !important;
  margin-right: 0.4rem !important;
}

.my1 {
  margin-top: 0.4rem !important;
  margin-bottom: 0.4rem !important;
}

.mxn1 {
  margin-left: -0.4rem !important;
  margin-right: -0.4rem !important;
}

.m2 {
  margin: 0.8rem !important;
}

.mt2 {
  margin-top: 0.8rem !important;
}

.mr2 {
  margin-right: 0.8rem !important;
}

.mb2 {
  margin-bottom: 0.8rem !important;
}

.ml2 {
  margin-left: 0.8rem !important;
}

.mx2 {
  margin-left: 0.8rem !important;
  margin-right: 0.8rem !important;
}

.my2 {
  margin-top: 0.8rem !important;
  margin-bottom: 0.8rem !important;
}

.mxn2 {
  margin-left: -0.8rem !important;
  margin-right: -0.8rem !important;
}

.m3 {
  margin: 1.6rem !important;
}

.mt3 {
  margin-top: 1.6rem !important;
}

.mr3 {
  margin-right: 1.6rem !important;
}

.mb3 {
  margin-bottom: em !important;
}

.ml3 {
  margin-left: 1.6rem !important;
}

.mx3 {
  margin-left: 1.6rem !important;
  margin-right: 1.6rem !important;
}

.my3 {
  margin-top: 1.6rem !important;
  margin-bottom: 1.6rem !important;
}

.mxn3 {
  margin-left: -1.6rem !important;
  margin-right: -1.6rem !important;
}

.m4 {
  margin: 2.4rem !important;
}

.mt4 {
  margin-top: 2.4rem !important;
}

.mr4 {
  margin-right: 2.4rem !important;
}

.mb4 {
  margin-bottom: 2.4rem !important;
}

.ml4 {
  margin-left: 2.4rem !important;
}

.mx4 {
  margin-left: 2.4rem !important;
  margin-right: 2.4rem !important;
}

.my4 {
  margin-top: 2.4rem !important;
  margin-bottom: 2.4rem !important;
}

.mxn4 {
  margin-left: -2.4rem !important;
  margin-right: -2.4rem !important;
}

.m5 {
  margin: 3.2rem !important;
}

.mt5 {
  margin-top: 3.2rem !important;
}

.mr5 {
  margin-right: 3.2rem !important;
}

.mb5 {
  margin-bottom: 3.2rem !important;
}

.ml5 {
  margin-left: 3.2rem !important;
}

.mx5 {
  margin-left: 3.2rem !important;
  margin-right: 3.2rem !important;
}

.my5 {
  margin-top: 3.2rem !important;
  margin-bottom: 3.2rem !important;
}

.mxn5 {
  margin-left: -3.2rem !important;
  margin-right: -3.2rem !important;
}

.m6 {
  margin: 4rem !important;
}

.mt6 {
  margin-top: 4rem !important;
}

.mr6 {
  margin-right: 4rem !important;
}

.mb6 {
  margin-bottom: 4rem !important;
}

.ml6 {
  margin-left: 4rem !important;
}

.mx6 {
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}

.my6 {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}

.mxn6 {
  margin-left: -4rem !important;
  margin-right: -4rem !important;
}

.m7 {
  margin: 4.8rem !important;
}

.mt7 {
  margin-top: 4.8rem !important;
}

.mr7 {
  margin-right: 4.8rem !important;
}

.mb7 {
  margin-bottom: 4.8rem !important;
}

.ml7 {
  margin-left: 4.8rem !important;
}

.mx7 {
  margin-left: 4.8rem !important;
  margin-right: 4.8rem !important;
}

.my7 {
  margin-top: 4.8rem !important;
  margin-bottom: 4.8rem !important;
}

.mxn7 {
  margin-left: -4.8rem !important;
  margin-right: -4.8rem !important;
}

.m8 {
  margin: 5.6rem !important;
}

.mt8 {
  margin-top: 5.6rem !important;
}

.mr8 {
  margin-right: 5.6rem !important;
}

.mb8 {
  margin-bottom: 5.6rem !important;
}

.ml8 {
  margin-left: 5.6rem !important;
}

.mx8 {
  margin-left: 5.6rem !important;
  margin-right: 5.6rem !important;
}

.my8 {
  margin-top: 5.6rem !important;
  margin-bottom: 5.6rem !important;
}

.mxn8 {
  margin-left: -5.6rem !important;
  margin-right: -5.6rem !important;
}

.m9 {
  margin: 6.4rem !important;
}

.mt9 {
  margin-top: 6.4rem !important;
}

.mr9 {
  margin-right: 6.4rem !important;
}

.mb9 {
  margin-bottom: 6.4rem !important;
}

.ml9 {
  margin-left: 6.4rem !important;
}

.mx9 {
  margin-left: 6.4rem !important;
  margin-right: 6.4rem !important;
}

.my9 {
  margin-top: 6.4rem !important;
  margin-bottom: 6.4rem !important;
}

.mxn9 {
  margin-left: -6.4rem !important;
  margin-right: -6.4rem !important;
}

.m10 {
  margin: 7.2rem !important;
}

.mt10 {
  margin-top: 7.2rem !important;
}

.mr10 {
  margin-right: 7.2rem !important;
}

.mb10 {
  margin-bottom: 7.2rem !important;
}

.ml10 {
  margin-left: 7.2rem !important;
}

.mx10 {
  margin-left: 7.2rem !important;
  margin-right: 7.2rem !important;
}

.my10 {
  margin-top: 7.2rem !important;
  margin-bottom: 7.2rem !important;
}

.mxn10 {
  margin-left: -7.2rem !important;
  margin-right: -7.2rem !important;
}

.m11 {
  margin: 9.6rem !important;
}

.mt11 {
  margin-top: 9.6rem !important;
}

.mr11 {
  margin-right: 9.6rem !important;
}

.mb11 {
  margin-bottom: 9.6rem !important;
}

.ml11 {
  margin-left: 9.6rem !important;
}

.mx11 {
  margin-left: 9.6rem !important;
  margin-right: 9.6rem !important;
}

.my11 {
  margin-top: 9.6rem !important;
  margin-bottom: 9.6rem !important;
}

.mxn11 {
  margin-left: -9.6rem !important;
  margin-right: -9.6rem !important;
}

.m12 {
  margin: 12.8rem !important;
}

.mt12 {
  margin-top: 12.8rem !important;
}

.mr12 {
  margin-right: 12.8rem !important;
}

.mb12 {
  margin-bottom: 12.8rem !important;
}

.ml12 {
  margin-left: 12.8rem !important;
}

.mx12 {
  margin-left: 12.8rem !important;
  margin-right: 12.8rem !important;
}

.my12 {
  margin-top: 12.8rem !important;
  margin-bottom: 12.8rem !important;
}

.mxn12 {
  margin-left: -12.8rem !important;
  margin-right: -12.8rem !important;
}

.ml-auto {
  margin-left: auto !important;
}

.mr-auto {
  margin-right: auto !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* padding */
.p0 {
  padding: 0 !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pr0 {
  padding-right: 0 !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pl0 {
  padding-left: 0 !important;
}

.px0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.py0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p1 {
  padding: 0.4rem !important;
}

.pt1 {
  padding-top: 0.4rem !important;
}

.pr1 {
  padding-right: 0.4rem !important;
}

.pb1 {
  padding-bottom: 0.4rem !important;
}

.pl1 {
  padding-left: 0.4rem !important;
}

.px1 {
  padding-left: 0.4rem !important;
  padding-right: 0.4rem !important;
}

.py1 {
  padding-top: 0.4rem !important;
  padding-bottom: 0.4rem !important;
}

.p2 {
  padding: 0.8rem !important;
}

.pt2 {
  padding-top: 0.8rem !important;
}

.pr2 {
  padding-right: 0.8rem !important;
}

.pb2 {
  padding-bottom: 0.8rem !important;
}

.pl2 {
  padding-left: 0.8rem !important;
}

.px2 {
  padding-left: 0.8rem !important;
  padding-right: 0.8rem !important;
}

.py2 {
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important;
}

.p3 {
  padding: 1.6rem !important;
}

.pt3 {
  padding-top: 1.6rem !important;
}

.pr3 {
  padding-right: 1.6rem !important;
}

.pb3 {
  padding-bottom: 1.6rem !important;
}

.pl3 {
  padding-left: 1.6rem !important;
}

.px3 {
  padding-left: 1.6rem !important;
  padding-right: 1.6rem !important;
}

.py3 {
  padding-top: 1.6rem !important;
  padding-bottom: 1.6rem !important;
}

.p4 {
  padding: 2.4rem !important;
}

.pt4 {
  padding-top: 2.4rem !important;
}

.pr4 {
  padding-right: 2.4rem !important;
}

.pb4 {
  padding-bottom: 2.4rem !important;
}

.pl4 {
  padding-left: 2.4rem !important;
}

.px4 {
  padding-left: 2.4rem !important;
  padding-right: 2.4rem !important;
}

.py4 {
  padding-top: 2.4rem !important;
  padding-bottom: 2.4rem !important;
}

.p5 {
  padding: 3.2rem !important;
}

.pt5 {
  padding-top: 3.2rem !important;
}

.pr5 {
  padding-right: 3.2rem !important;
}

.pb5 {
  padding-bottom: 3.2rem !important;
}

.pl5 {
  padding-left: 3.2rem !important;
}

.px5 {
  padding-left: 3.2rem !important;
  padding-right: 3.2rem !important;
}

.py5 {
  padding-top: 3.2rem !important;
  padding-bottom: 3.2rem !important;
}

.p6 {
  padding: 4rem !important;
}

.pt6 {
  padding-top: 4rem !important;
}

.pr6 {
  padding-right: 4rem !important;
}

.pb6 {
  padding-bottom: 4rem !important;
}

.pl6 {
  padding-left: 4rem !important;
}

.px6 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.py6 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.p7 {
  padding: 4.8rem !important;
}

.pt7 {
  padding-top: 4.8rem !important;
}

.pr7 {
  padding-right: 4.8rem !important;
}

.pb7 {
  padding-bottom: 4.8rem !important;
}

.pl7 {
  padding-left: 4.8rem !important;
}

.px7 {
  padding-left: 4.8rem !important;
  padding-right: 4.8rem !important;
}

.py7 {
  padding-top: 4.8rem !important;
  padding-bottom: 4.8rem !important;
}

.p8 {
  padding: 5.6rem !important;
}

.pt8 {
  padding-top: 5.6rem !important;
}

.pr8 {
  padding-right: 5.6rem !important;
}

.pb8 {
  padding-bottom: 5.6rem !important;
}

.pl8 {
  padding-left: 5.6rem !important;
}

.px8 {
  padding-left: 5.6rem !important;
  padding-right: 5.6rem !important;
}

.py8 {
  padding-top: 5.6rem !important;
  padding-bottom: 5.6rem !important;
}

.p9 {
  padding: 6.4rem !important;
}

.pt9 {
  padding-top: 6.4rem !important;
}

.pr9 {
  padding-right: 6.4rem !important;
}

.pb9 {
  padding-bottom: 6.4rem !important;
}

.pl9 {
  padding-left: 6.4rem !important;
}

.px9 {
  padding-left: 6.4rem !important;
  padding-right: 6.4rem !important;
}

.py9 {
  padding-top: 6.4rem !important;
  padding-bottom: 6.4rem !important;
}

.p10 {
  padding: 7.2rem !important;
}

.pt10 {
  padding-top: 7.2rem !important;
}

.pr10 {
  padding-right: 7.2rem !important;
}

.pb10 {
  padding-bottom: 7.2rem !important;
}

.pl10 {
  padding-left: 7.2rem !important;
}

.px10 {
  padding-left: 7.2rem !important;
  padding-right: 7.2rem !important;
}

.py10 {
  padding-top: 7.2rem !important;
  padding-bottom: 7.2rem !important;
}

.p11 {
  padding: 9.6rem !important;
}

.pt11 {
  padding-top: 9.6rem !important;
}

.pr11 {
  padding-right: 9.6rem !important;
}

.pb11 {
  padding-bottom: 9.6rem !important;
}

.pl11 {
  padding-left: 9.6rem !important;
}

.px11 {
  padding-left: 9.6rem !important;
  padding-right: 9.6rem !important;
}

.py11 {
  padding-top: 9.6rem !important;
  padding-bottom: 9.6rem !important;
}

.p12 {
  padding: 12.8rem !important;
}

.pt12 {
  padding-top: 12.8rem !important;
}

.pr12 {
  padding-right: 12.8rem !important;
}

.pb12 {
  padding-bottom: 12.8rem !important;
}

.pl12 {
  padding-left: 12.8rem !important;
}

.px12 {
  padding-left: 12.8rem !important;
  padding-right: 12.8rem !important;
}

.py12 {
  padding-top: 12.8rem !important;
  padding-bottom: 12.8rem !important;
}

.txt-prewarp {
  white-space: pre-wrap;
}

.txt-left {
  text-align: left;
}

.txt-right {
  text-align: right;
}

.txt-center {
  text-align: center;
}

.no-wrap {
  white-space: nowrap;
}

.txt-bold {
  font-weight: 700;
}

.txt-demi {
  font-weight: 600;
}

.txt-uppercase {
  text-transform: uppercase;
}

.txt-capitalize {
  text-transform: capitalize;
}

.collapsed {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: pre-wrap;
  -webkit-line-clamp: var(--line-clamp, 5);
}

.expanded {
  display: block;
  overflow: visible;
  white-space: pre-wrap;
}

/*! purgecss start ignore */
.heading-01 {
  font-size: 4.4rem;
  line-height: 7.5rem;
}

.heading-02 {
  font-size: 2.4rem;
  line-height: 4.1rem;
}

@media screen and (min-width: 1024px) {
  .heading-02 {
    font-size: 3.2rem;
    line-height: 5.4rem;
  }
}
.heading-03 {
  font-size: 1.8rem;
  line-height: 2.8rem;
}

.caption-01 {
  font-size: 1.3rem;
  line-height: 2.2rem;
}

@media screen and (min-width: 1024px) {
  .heading-03 {
    font-size: 2.4rem;
    line-height: 3.8rem;
  }
  .caption-01 {
    font-size: 1.5rem;
    line-height: 2.4rem;
  }
}
.heading-04 {
  font-size: 2rem;
  line-height: 3.4rem;
}

.heading-05 {
  font-size: 1.6rem;
  line-height: 2.7rem;
}

.caption-02 {
  font-size: 1rem;
  line-height: 1.7rem;
}

.heading-01.english {
  font-size: 5rem;
  line-height: 6rem;
}

.heading-02.english {
  font-size: 3.6rem;
  line-height: 4.6rem;
}

.heading-03.english {
  font-size: 2.4rem;
  line-height: 3.6rem;
}

@media screen and (min-width: 1024px) {
  .heading-03.english {
    font-size: 2.8rem;
    line-height: 3.9rem;
  }
}
.heading-04.english {
  font-size: 2.4rem;
  line-height: 3.6rem;
}

.heading-05.english {
  font-size: 1.6rem;
  line-height: 2.4rem;
}

@media screen and (min-width: 1024px) {
  .heading-05.english {
    font-size: 1.9rem;
    line-height: 2.9rem;
  }
}
.caption-01.english {
  font-size: 1.4rem;
  line-height: 2.1rem;
}

.caption-02.english {
  font-size: 1.2rem;
  line-height: 1.8rem;
}

.search-box {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 400px;
  border-bottom: 1px solid #000;
  padding: 3px 4px 3px 8px;
}

.search-box__input {
  flex: 1;
  width: 100%;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 8px;
}

.search-box__input:focus {
  outline: none;
}

.search-box__input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.58);
}

.search-box__input::placeholder {
  color: rgba(0, 0, 0, 0.58);
}

.search-box .search-icon,
.search-box .search-reset {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 520px) {
  .search-icon:hover {
    fill: rgba(0, 0, 0, 0.87);
  }
}
/* ------------------------
breadcrumb
--------------------------- */
.breadcrumb-wrap {
  background: #edebe9;
}

.breadcrumb {
  font-size: 0;
  width: 100%;
  color: rgba(0, 0, 0, 0.5);
  line-height: 1rem;
  padding: 8px 16px;
  overflow-x: auto;
  white-space: nowrap;
}

.breadcrumb li {
  display: inline;
  font-size: 1.1rem;
  line-height: 1.8;
}

.breadcrumb li::after {
  content: "/";
  color: rgba(0, 0, 0, 0.1);
  margin: 0 0.5em;
}

.breadcrumb li:last-child:after {
  display: none;
}

.breadcrumb .current {
  font-weight: 500;
  color: #000;
}

@media screen and (min-width: 520px) and (max-width: 1023.9px) {
  .breadcrumb-wrap {
    min-height: auto;
  }
}
@media screen and (min-width: 1024px) {
  .breadcrumb {
    max-width: 1264px;
    padding: 16px 40px 44px;
    margin: 0 auto;
    overflow-x: auto;
    white-space: normal;
  }
  .breadcrumb-custom {
    padding: 16px 40px;
  }
}
@media screen and (min-width: 1040px) {
  .breadcrumb {
    max-width: none;
    padding-left: 128px;
  }
}
.card--more {
  width: 152px;
}

.card__inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.card__inner__img {
  position: relative;
  margin-bottom: 12px;
}

.card__inner__img img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 12px;
}

.card--more .card__inner {
  flex-grow: 0;
  height: auto;
}

.card--more .card__inner__img {
  margin-bottom: 0;
}

.card--more .card__inner__img::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #111;
  opacity: 0.45;
  top: 0;
  left: 0;
  border-radius: 12px;
}

.card--more .card__inner__img::after {
  content: "すべて見る";
  display: block;
  position: absolute;
  width: 100px;
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
  border: solid 1px #fff;
  border-radius: 32px;
  padding: 3px 0;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
}

@media screen and (min-width: 520px) {
  .card--more {
    width: auto;
  }
}
.relevant-content-wrap {
  width: 176px;
}

.relevant-content {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.relevant-content__img {
  width: 112px;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 12px;
}

.relevant-content__img img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.relevant-content__text {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  line-height: 1.8rem;
}

.relevant-content__text__description,
.relevant-content__text__category {
  display: block;
}

.relevant-content__text__description {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-size: 1.1rem;
  flex-grow: 1;
  margin-bottom: 6px;
}

.relevant-content__text__category {
  font-size: 1.2rem;
  color: #00a862;
  word-break: break-work;
}

@media screen and (min-width: 520px) {
  .relevant-content__text__description,
  .relevant-content__text__category {
    font-size: 1.3rem;
  }
  .relevant-content__text__description {
    margin-bottom: 9px;
  }
}
.card__inner__img .products-tag-01 {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  background: #1e3932;
  border-radius: 50%;
  padding: 8px 0;
  line-height: 1.1rem;
  position: absolute;
  right: 8px;
  bottom: 8px;
}

.card__inner__text {
  flex-grow: 1;
}

.card__inner__text > span {
  display: block;
  line-height: 1.6rem;
}

.card__inner__text > span + span {
  margin-top: 12px;
}

.card__inner__text > .text-limit {
  display: -webkit-box;
  margin-top: 2px;
  overflow: hidden;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  font-size: 1.2rem;
}

.card__inner__text > .english {
  font-size: 1.4rem;
  font-weight: 600;
}

.card__inner__text .products-tag-02 {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 700;
  color: #aa8875;
}

@media screen and (min-width: 1024px) {
  .card {
    min-width: 224px;
  }
  .card__inner__text > span {
    line-height: 1.8rem;
  }
  .card__inner__text > .text-limit {
    font-size: 1.3rem;
  }
  .card__inner__text > .english {
    font-size: 1.6rem;
  }
  .card__inner__text .products-tag-02 {
    font-size: 1.1rem;
  }
}
.card--XS-button {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 152px;
}

.card--XS-button .card__inner {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  width: 100%;
  height: 100%;
}

.card--XS-button .card__inner__text > .text-limit {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.card--XS-button .button--secondary-small {
  font-size: 1.4rem;
  padding: 4px 16px;
  margin-top: 13px;
}

@media screen and (min-width: 520px) {
  .card--XS-button {
    width: 170px;
  }
}
/* ------------------------
button
--------------------------- */
.button--primary-L {
  width: 100%;
  background: #00754a;
}

.button--primary-S {
  background: #00a862;
}

@media screen and (min-width: 1024px) {
  .button--primary-S:hover {
    opacity: 0.9;
  }
}
.button--primary-small {
  font-size: 1.4rem;
  background: #00754a;
  padding: 4px 16px;
}

@media screen and (min-width: 1024px) {
  .button--primary-small:hover {
    background: #18825b;
  }
}
.button--primary-L-icon {
  width: 100%;
  background: #00754a;
  padding: 15px 24px;
}

.button--primary-L-icon svg {
  width: 24px;
  height: 24px;
  vertical-align: -5px;
  margin-right: 5px;
}

.button--primary-L-icon path {
  fill: #fff;
}

.button--primary-S-icon {
  background: #00754a;
  padding: 15px 24px;
}

.button--primary-S-icon svg {
  width: 24px;
  height: 24px;
  vertical-align: -5px;
  margin-right: 5px;
}

.button--primary-S-icon path {
  fill: #fff;
}

.button--primary-S-floating {
  background: #00a862;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
}

@media screen and (min-width: 1024px) {
  .button--primary-S-floating:hover {
    opacity: 0.9;
  }
}
.button--primary-L-frap {
  width: 100%;
  background: #00a862;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
}

.button--primary-S-frap-black {
  background: #000;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
}

@media screen and (min-width: 1024px) {
  .button--primary-S-frap-black:hover {
    opacity: 1;
  }
}
.button--primary-S-frap-icon-black {
  background: #000;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
  padding: 0;
}

.button--primary-S-frap-icon-black span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
}

.button--primary-S-frap-icon-black svg {
  width: 24px;
  height: 17px;
}

.button--primary-S-frap-icon-black path {
  fill: #fff;
}

@media screen and (min-width: 1024px) {
  .button--primary-S-frap-icon-black:hover {
    opacity: 1;
  }
}
/* ------------------------
button
--------------------------- */
.button--secondary-L {
  width: 100%;
}

.button--secondary-small {
  font-size: 1.4rem;
  padding: 4px 16px;
}

@media screen and (min-width: 1024px) {
  .button--secondary-small:hover {
    background: rgba(0, 117, 74, 0.08);
  }
}
.favorite-check__checkbox {
  display: none;
}

.favorite-check__label {
  transition: all 0.2s ease;
}

.favorite-check__label .filled-icon {
  display: none;
}

.favorite-check__checkbox:checked + .favorite-check__label .default-icon {
  display: none;
}

.favorite-check__checkbox:checked + .favorite-check__label .filled-icon {
  display: block;
}

@media screen and (min-width: 1024px) {
  .favorite-check__label:hover {
    opacity: 0.9;
  }
}
.button--secondary-S-icon {
  padding: 15px 24px;
}

.button--secondary-S-icon svg {
  width: 26px;
  height: 24px;
  vertical-align: -5px;
  margin-right: 5px;
}

.button--secondary-S-icon path {
  fill: #00754a;
}

.button--secondary-S-icon.filled path {
  fill: #00a862;
}

.button--secondary-S-icon:disabled path {
  fill: #ccc;
}

.button--secondary-text-only,
.button--secondary-text-only:disabled {
  border: none;
}

.button--tertiary {
  color: rgba(0, 0, 0, 0.87);
  background-color: #fff;
}

.close-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  z-index: 1;
}

.close-button svg {
  width: 14px;
  height: 14px;
}

.close-button path {
  fill: rgba(0, 0, 0, 0.87);
}

.close-button::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #000;
  border-radius: 50%;
  opacity: 0;
  top: 0;
  left: 0;
  transform: scale(0.4);
  transition: all ease-out 0.2s;
}

@media screen and (min-width: 520px) {
  .close-button:hover::before {
    opacity: 0.06;
    transform: scale(1);
  }
}
.sns-button-list {
  display: flex;
  gap: 8px;
}

.sns-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  z-index: 1;
}

.sns-button svg {
  width: 32px;
  height: 32px;
}

.sns-button path {
  fill: rgba(0, 0, 0, 0.87);
}

.sns-button::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #000;
  border-radius: 50%;
  opacity: 0;
  top: 0;
  left: 0;
  transform: scale(0.4);
  transition: all ease-out 0.2s;
}

@media screen and (min-width: 520px) {
  .sns-button:hover::before {
    opacity: 0.06;
    transform: scale(1);
  }
}
.text-link-black {
  font-size: 1.6rem;
}

@media screen and (min-width: 520px) {
  .text-link-black:hover {
    text-decoration: underline;
  }
}
.text-link-black {
  font-size: 1.6rem;
}

@media screen and (min-width: 520px) {
  .text-link-black:hover {
    text-decoration: underline;
  }
}
.MOP-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  fill: rgba(0, 0, 0, 0.87);
  vertical-align: middle;
  margin-right: 16px;
}

.text-link-black-icon.english {
  font-size: 1.4rem;
}

@media screen and (min-width: 520px) {
  .text-link-black-icon:hover {
    color: #00754a;
  }
  .text-link-black-icon:hover .MOP-icon {
    fill: #00754a;
  }
}
.text-link-gray {
  font-size: 1.6rem;
  color: rgba(0, 0, 0, 0.58);
}

@media screen and (min-width: 520px) {
  .text-link-gray:hover {
    color: rgba(0, 0, 0, 0.87);
  }
}
.text-link-green {
  font-size: 1.4rem;
  color: #00754a;
}

.text-link-green .icon {
  display: inline-block;
  width: 12px;
  height: 12px;
  fill: #00754a;
  margin-left: 7px;
}

.arrow-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
}

.arrow-button svg {
  width: 8px;
  height: 14px;
  fill: rgba(0, 0, 0, 0.6);
}

.arrow-button.arrow-button--small {
  width: 32px;
  height: 32px;
}

.arrow-button.arrow-button--small svg {
  width: 6px;
  height: 11px;
  fill: rgba(0, 0, 0, 0.6);
}

.arrow-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
}

.arrow-button svg {
  width: 8px;
  height: 14px;
  fill: rgba(0, 0, 0, 0.6);
}

.arrow-button.arrow-button--small {
  width: 32px;
  height: 32px;
}

.arrow-button.arrow-button--small svg {
  width: 6px;
  height: 11px;
  fill: rgba(0, 0, 0, 0.6);
}

.search-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  fill: rgba(0, 0, 0, 0.87);
}

@media screen and (min-width: 520px) {
  .search-icon:hover {
    fill: #00754a;
  }
}
.pin-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  fill: rgba(0, 0, 0, 0.87);
}

@media screen and (min-width: 520px) {
  .pin-icon:hover {
    fill: #00754a;
  }
}
.user-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  fill: rgba(0, 0, 0, 0.87);
}

@media screen and (min-width: 520px) {
  .user-icon:hover {
    fill: #00754a;
  }
}
.cart-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
}

.cart-icon .fill {
  fill: #212121;
}

.cart-icon .stroke {
  stroke: #212121;
}

@media screen and (min-width: 520px) {
  .cart-icon:hover .fill {
    fill: #00754a;
  }
  .cart-icon:hover .stroke {
    stroke: #00754a;
  }
}
.MOP-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  fill: rgba(0, 0, 0, 0.87);
}

@media screen and (min-width: 520px) {
  .MOP-icon:hover {
    fill: #00754a;
  }
}
.OS-icon {
  display: inline-block;
  width: 24px;
  height: 25px;
}

.OS-icon .fill {
  fill: #212121;
}

.OS-icon .stroke {
  stroke: #212121;
}

@media screen and (min-width: 520px) {
  .OS-icon:hover .fill {
    fill: #00754a;
  }
  .OS-icon:hover .stroke {
    stroke: #00754a;
  }
}
.gift-icon {
  display: inline-block;
  width: 14px;
  height: 15px;
  fill: rgba(0, 0, 0, 0.58);
}

.arrow-icon {
  display: inline-block;
  width: 8px;
  height: 14px;
  fill: rgba(0, 0, 0, 0.87);
}

.arrow-icon {
  display: inline-block;
  width: 8px;
  height: 14px;
  fill: rgba(0, 0, 0, 0.87);
}

.video-play-icon {
  display: inline-block;
  position: relative;
  width: 32px;
  height: 32px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.14);
  fill: #00754a;
}

.video-play-icon svg {
  width: 14px;
  height: 18px;
  position: absolute;
  top: 7px;
  left: 11px;
}

.stories-logo {
  display: inline-block;
  width: 94px;
  fill: #000;
}

.reseave-logo {
  display: inline-block;
  width: 39px;
}

.siren-logo {
  display: inline-block;
  width: 48px;
}

/* ------------------------
checkbox
--------------------------- */
.checkbox {
  display: inline-block;
}

.checkbox > input {
  display: none;
}

.checkbox__label-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: solid 1px #00754a;
  border-radius: 4px;
  color: transparent;
}

.checkbox__label-icon path {
  fill: transparent;
  stroke: transparent;
  stroke-width: 1;
}

input:checked + .checkbox__label .checkbox__label-icon {
  background-color: #00754a;
  color: rgb(255, 255, 255);
}

.checkbox__label-icon svg {
  width: 20px;
  height: 20px;
  overflow: visible;
  fill: currentcolor;
}

input:checked + .checkbox__label .checkbox__label-icon svg {
  animation: 0.3s option-label-marker-expansion cubic-bezier(0.32, 2.32, 0.61, 0.27) forwards;
}

input:checked + .checkbox__label .checkbox__label-icon path {
  fill: #fff;
  stroke: #fff;
}

input:disabled + .checkbox__label .checkbox__label-icon {
  border-color: #ccc;
}

/* ------------------------
checkbox with text
--------------------------- */
.checkbox {
  display: inline-block;
}

.checkbox > input {
  display: none;
}

.checkbox__label-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: solid 1px #00754a;
  border-radius: 4px;
  color: transparent;
}

.checkbox__label-icon path {
  fill: transparent;
  stroke: transparent;
  stroke-width: 1;
}

input:checked + .checkbox__label .checkbox__label-icon {
  background-color: #00754a;
  color: rgb(255, 255, 255);
}

.checkbox__label-icon svg {
  width: 20px;
  height: 20px;
  overflow: visible;
  fill: currentcolor;
}

input:checked + .checkbox__label .checkbox__label-icon svg {
  animation: 0.3s option-label-marker-expansion cubic-bezier(0.32, 2.32, 0.61, 0.27) forwards;
}

input:checked + .checkbox__label .checkbox__label-icon path {
  fill: #fff;
  stroke: #fff;
}

.checkbox__label-text {
  display: inline-block;
  color: rgba(0, 0, 0, 0.58);
  margin: -3px 0 0 8px;
}

input:checked + .checkbox__label .checkbox__label-text {
  font-weight: 500;
  color: rgba(0, 0, 0, 0.87);
}

input:disabled + .checkbox__label .checkbox__label-icon {
  border-color: #ccc;
}

input:disabled + .checkbox__label .checkbox__label-text {
  color: #ccc;
}

/* ------------------------
radio
--------------------------- */
.radio {
  display: inline-block;
}

.radio > input {
  display: none;
}

.radio__label-icon {
  display: inline-block;
  position: relative;
  width: 20px;
  height: 20px;
  border: solid 1px #00754a;
  border-radius: 50%;
}

input:checked + .radio__label .radio__label-icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 12px;
  background: #00754a;
  border-radius: 50%;
  top: 3px;
  left: 3px;
  animation: 0.3s option-label-marker-expansion cubic-bezier(0.32, 2.32, 0.61, 0.27) forwards;
}

input:disabled + .radio__label .radio__label-icon {
  border-color: #ccc;
}

/* ------------------------
radio with text
--------------------------- */
.radio {
  display: inline-block;
}

.radio > input {
  display: none;
}

.radio__label-icon {
  display: inline-block;
  position: relative;
  width: 20px;
  height: 20px;
  border: solid 1px #00754a;
  border-radius: 50%;
}

input:checked + .radio__label .radio__label-icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 12px;
  background: #00754a;
  border-radius: 50%;
  top: 3px;
  left: 3px;
  animation: 0.3s option-label-marker-expansion cubic-bezier(0.32, 2.32, 0.61, 0.27) forwards;
}

.radio__label-text {
  display: inline-block;
  color: rgba(0, 0, 0, 0.58);
  margin: -3px 0 0 8px;
}

input:checked + .radio__label .radio__label-text {
  font-weight: 500;
  color: rgba(0, 0, 0, 0.87);
}

input:disabled + .radio__label .radio__label-icon {
  border-color: #ccc;
}

input:disabled + .radio__label .radio__label-text {
  color: #ccc;
}

/* ------------------------
toggle
--------------------------- */
.toggle {
  display: inline-block;
}

.toggle > input {
  display: none;
}

.toggle__label-icon {
  display: inline-block;
  position: relative;
  width: 39px;
  height: 24px;
  background: rgba(0, 0, 0, 0.58);
  border-radius: 12px;
  transition: 0.4s ease-out background-color;
}

.toggle__label-icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 22px;
  height: 22px;
  background: #fff;
  border-radius: 50%;
  top: 1px;
  left: 1px;
  transition: 0.4s ease-out transform;
}

input:checked + .toggle__label .toggle__label-icon {
  background-color: #00a862;
}

input:checked + .toggle__label .toggle__label-icon::before {
  transform: translateX(15px);
}

input:disabled + .toggle__label .toggle__label-icon {
  background: #ccc;
}

/* ------------------------
toggle with text
--------------------------- */
.toggle {
  display: inline-block;
}

.toggle > input {
  display: none;
}

.toggle__label-icon {
  display: inline-block;
  position: relative;
  width: 39px;
  height: 24px;
  background: rgba(0, 0, 0, 0.58);
  border-radius: 12px;
  transition: 0.4s ease-out background-color;
}

.toggle__label-icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 22px;
  height: 22px;
  background: #fff;
  border-radius: 50%;
  top: 1px;
  left: 1px;
  transition: 0.4s ease-out transform;
}

input:checked + .toggle__label .toggle__label-icon {
  background-color: #00a862;
}

input:checked + .toggle__label .toggle__label-icon::before {
  transform: translateX(15px);
}

.toggle__label-text {
  display: inline-block;
  color: rgba(0, 0, 0, 0.58);
  margin-right: 8px;
}

input:checked + .toggle__label .toggle__label-text {
  font-weight: 700;
  color: rgba(0, 0, 0, 0.87);
}

input:disabled + .toggle__label .toggle__label-icon {
  background: #ccc;
}

input:disabled + .toggle__label .toggle__label-text {
  color: #ccc;
}

/* ------------------------
products tag
--------------------------- */
.products-tag-01 {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  background: rgba(30, 57, 50, 0.9);
  border: solid 1px rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  padding: 8px 0;
  line-height: 1.2rem;
}

.products-tag-01--white {
  color: #1e3932;
  background: rgba(255, 255, 255, 0.9);
  border: solid 1px rgba(30, 57, 50, 0.6);
}

.products-tag-01.products-tag--large {
  width: 6rem;
  height: 6rem;
  font-size: 1.3rem;
  padding: 13px 0;
  line-height: 1.6rem;
}

.products-tag-01.products-tag--large > * {
  font-size: 1.3rem;
}

.products-tag-02 {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 700;
  color: #aa8875;
}

/* ------------------------
tag carousel / search tag
--------------------------- */
.tag-carousel {
  position: relative;
  margin-top: 0;
  margin-bottom: 0;
}

.tag-carousel__inner {
  display: flex;
  overflow-x: scroll;
  scrollbar-width: none;
  margin-bottom: 0;
}

.tag-carousel__inner::-webkit-scrollbar {
  display: none;
}

.tag-carousel__inner > * {
  flex-shrink: 0;
}

.tag-carousel__inner > *:last-child {
  display: flex;
}

.tag-carousel__inner > *:last-child::after {
  content: "";
  display: block;
  width: 16px;
  opacity: 0;
}

.tag-carousel-groupe {
  display: flex;
  align-items: center;
  margin-right: 20px;
}

.tag-carousel-groupe__label {
  font-size: 1.1rem;
  margin-right: 7px;
}

.tag-carousel-groupe__list {
  display: flex;
}

.search-tag {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  height: 32px;
  font-size: 1.3rem;
  font-weight: 500;
  color: #000;
  background: #fff;
  border-radius: 16px;
  border: solid 1px rgba(0, 0, 0, 0.1);
  padding: 0 5px 0 13px;
  margin-right: 4px;
}

.search-tag__text {
  display: inline-block;
}

.search-tag__delete-button {
  display: inline-block;
  position: relative;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  transition: all 0.2s ease;
}

.search-tag__delete-button::before,
.search-tag__delete-button::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 1px;
  background: rgba(0, 0, 0, 0.87);
  border-radius: 1px;
  top: 50%;
  left: 50%;
}

.search-tag__delete-button::before {
  transform: translate3d(-50%, -50%, 0) rotate(45deg);
}

.search-tag__delete-button::after {
  transform: translate3d(-50%, -50%, 0) rotate(-45deg);
}

@media screen and (min-width: 520px) {
  .tag-carousel::before,
  .tag-carousel::after {
    display: none;
  }
  .tag-carousel__inner {
    flex-wrap: wrap;
    margin-bottom: 24px;
  }
  .tag-carousel__inner > *:last-child::after {
    display: none;
  }
  .tag-carousel {
    margin-top: 8px;
    margin-bottom: 24px;
  }
  .tag-carousel-groupe {
    margin-bottom: 8px;
  }
  .search-tag {
    margin-bottom: 4px;
  }
}
.line-gray {
  color: rgba(0, 0, 0, 0.1);
}

.line-black {
  color: #707070;
}

.selectbox--L {
  width: 100%;
}

.selectbox--S {
  display: inline-block;
  min-width: 88px;
}
.selectbox--S.disabled {
  margin-top: 15px;
}

.selectbox--S .selectbox {
  min-width: 96px;
  padding: 7px 30px 7px 17px;
}

.selectbox--S svg {
  right: 12px;
}

.selectbox--S--dark .selectbox {
  color: #fff;
  background: none;
  border-color: #fff;
}

.selectbox--S--dark .selectbox option {
  color: rgba(0, 0, 0, 0.87);
}

.selectbox--S--dark svg path {
  fill: #fff;
}

.selectbox--text-only {
  display: inline-block;
  min-width: 100px;
}

.selectbox--text-only .selectbox {
  border: none;
}

.selectbox--has-label {
  position: relative;
  width: 100%;
}

.selectbox__label {
  position: absolute;
  max-width: calc(100% - 16px);
  font-size: 1.2rem;
  color: rgba(0, 0, 0, 0.58);
  background: #fff;
  padding: 0 8px;
  bottom: calc(100% - 12px);
  left: 8px;
  z-index: 1;
}

.selectbox--has-label .selectbox__trigger {
  padding: 15px 46px 15px 16px;
}

.card--XS-button .card__inner__text > .text-limit {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

/* ------------------------
carousel
--------------------------- */
.carousel-wrap {
  position: relative;
  display: flex;
  flex: 1;
  width: 100%;
  overflow-x: hidden;
}

.carousel-wrap .arrow-button {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.24), 0 8px 12px rgba(0, 0, 0, 0.14);
  top: 50%;
  transform: translateY(-50%) scale(0);
  transition: all 0.2s;
  opacity: 0;
  pointer-events: none;
}

.carousel-wrap .arrow-button.show {
  transform: translateY(-50%) scale(1);
  opacity: 1;
  pointer-events: all;
}

.carousel-wrap .arrow-button--prev {
  left: 16px;
}

.carousel-wrap .arrow-button--next {
  right: 16px;
}

.carousel-wrap .arrow-button svg {
  width: 8px;
  height: 14px;
  fill: rgba(0, 0, 0, 0.6);
}

.carousel {
  display: flex;
  position: relative;
  padding-left: 16px;
  transition: all 0.4s;
}

.carousel > * {
  margin-right: 16px;
}

.carousel > *:last-child {
  margin-right: 0;
}

.carousel__item:not(.active) {
  opacity: 0.65;
  pointer-events: none;
}

@media screen and (min-width: 1024px) {
  .card--XS-button {
    width: 170px;
  }
  .carousel > * {
    margin-right: 32px;
  }
  .carousel-wrap .arrow-button--prev {
    left: 40px;
  }
  .carousel-wrap .arrow-button--next {
    right: 40px;
  }
  .carousel {
    padding-left: 128px;
  }
}
/* ------------------------
image carousel
--------------------------- */
.image-carousel-wrap {
  width: 100%;
}

.image-carousel {
  width: 100%;
  max-width: 100vw;
  padding: 8px;
  text-align: center;
  white-space: nowrap;
  overflow-x: auto;
}

.image-carousel .image-carousel__item {
  display: inline-block;
  position: relative;
  width: 40px;
  margin: 0 4px 2px 0;
}

.image-carousel .image-carousel__item.active::before,
.image-carousel .image-carousel__item:hover::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border: solid 1px #fff;
  border-radius: 12px;
  top: 0;
  left: 0;
}

.image-carousel .image-carousel__item.active::after,
.image-carousel .image-carousel__item:hover::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border: solid 2px #00a862;
  border-radius: 14px;
  top: -2px;
  left: -2px;
}

.image-carousel .image-carousel__item .image-carousel__item__image {
  height: 40px;
  border-radius: 12px;
  overflow: hidden;
}

.image-carousel .image-carousel__item__text {
  display: none;
}

.image-carousel-wrap .focus-item {
  margin-bottom: 0;
  position: relative;
}

.image-carousel-wrap .focus-item .image-carousel__item__image {
  height: auto;
}

.image-carousel-wrap .focus-item .image-carousel__item__text {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 16px 16px 4px 16px;
  font-size: 1.1rem;
  background-color: transparent;
  background-image: linear-gradient(rgba(0, 0, 0, 0.01), #ffffff);
  color: rgba(0, 0, 0, 0.87);
  text-align: center;
  line-height: 1.4;
}

@media screen and (min-width: 1024px) {
  .image-carousel-wrap {
    max-width: 560px;
  }
  .image-carousel {
    width: auto;
    padding: 0;
    text-align: unset;
    overflow-x: unset;
    white-space: unset;
  }
  .image-carousel .image-carousel__item {
    width: 40px;
    cursor: pointer;
  }
  .image-carousel-wrap .focus-item {
    margin-bottom: 14px;
  }
  .image-carousel-wrap .focus-item .image-carousel__item__image {
    height: 560px;
  }
  .image-carousel-wrap .focus-item .image-carousel__item__text {
    padding: 20px 32px;
    font-size: 1.4rem;
  }
  .image-carousel-wrap .focus-item .image-carousel__item__image {
    cursor: pointer;
  }
}
.shape-circle {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

.shape-square {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.shape-rectangle {
  width: 100%;
  aspect-ratio: 112/69;
  -o-object-fit: cover;
     object-fit: cover;
}

.shape-square {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.shape-rectangle {
  width: 100%;
  aspect-ratio: 112/69;
  -o-object-fit: cover;
     object-fit: cover;
}

.shape-rounded-corners {
  position: relative;
}

.shape-rounded-corners img {
  border-radius: 12px;
}

.shape-rounded-corners span::before,
.shape-rounded-corners span::after {
  content: "";
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  background: #00a862;
  border-radius: 50%;
}

.shape-rounded-corners span:first-of-type::before {
  top: 0;
  left: 0;
}

.shape-rounded-corners span:first-of-type::after {
  top: 0;
  right: 0;
}

.shape-rounded-corners span:last-of-type::before {
  left: 0;
  bottom: 0;
}

.shape-rounded-corners span:last-of-type::after {
  right: 0;
  bottom: 0;
}

/*! purgecss end ignore */
.login-btn {
  display: flex;
  justify-content: center;
  margin-left: 1.5rem;
}
.login-btn .button {
  white-space: nowrap;
}

@media screen and (max-width: 600px) {
  .login-btn .button {
    padding: 12px 14px;
  }
}
.radio__label-icon {
  flex: 0 0 auto;
}

.radio__label-text {
  white-space: break-spaces;
}

.checkbox__label-text {
  white-space: break-spaces;
}

.checkbox-item + .checkbox-item {
  margin-top: 16px;
}

.pager {
  display: flex;
  gap: 8px;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.pager__button {
  display: block;
  width: 24px;
  text-align: center;
}

.pager__button.disabled {
  fill: #ccc;
  pointer-events: none;
}

.selectbox--pager {
  display: inline-block;
  min-width: 120px;
}

.selectbox--pager svg {
  right: 9px;
}

.selectbox--pager .selectbox {
  font-size: 1.4rem;
  font-weight: normal;
  border: solid 1px rgba(0, 0, 0, 0.3);
  padding: 3px 36px 3px 16px;
}

@media screen and (min-width: 520px) {
  .pager {
    gap: 36px;
  }
}
.tabs {
  height: 63px;
  display: flex;
  box-shadow: 0 3px 5px -3px rgba(0, 0, 0, 0.1);
  align-items: flex-end;
  position: relative;
  margin-bottom: 5px;
  z-index: 2;
}
.tabs-item {
  float: left;
  display: block;
  position: relative;
  text-align: center;
  padding: 13px 0;
  text-decoration: none;
  font-size: 13px;
  line-height: 1.9rem;
  color: rgba(0, 0, 0, 0.7);
  cursor: pointer;
}
.tabs-item:hover {
  text-decoration: none;
  color: #000;
}
.tabs-item:hover::before {
  width: 100%;
  transform: scaleX(1);
  visibility: visible;
}
.tabs-item::before {
  content: "";
  position: absolute;
  width: 0%;
  height: 4px;
  left: 0;
  bottom: 0;
  visibility: hidden;
  background-color: #00754a;
  transition: all 0.3s ease-in-out;
  transform: scaleX(0);
  transition: transform 0.3s ease;
}
.tabs-item__text {
  font-size: 1.2rem;
  border: 1px solid transparent;
}
.tabs-item.active-tab {
  position: relative;
  color: #000;
}
.tabs-item.active-tab::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 4px;
  left: 0;
  bottom: 0;
  background-color: #00754a;
  transform: scaleX(1);
  transition: transform 0.3s ease;
}
.tabs :not(:first-child) {
  margin-left: 41px;
}

@media screen and (min-width: 1024px) {
  .tabs :not(:first-child) {
    margin-left: 29px;
  }
}
.card__inner__img .products-tag-01--white {
  color: #1e3932;
  background: rgba(255, 255, 255, 0.9);
  border: solid 1px rgba(30, 57, 50, 0.6);
}
.card__inner__img .products-tag-01--white .english {
  font-weight: 600;
  letter-spacing: -1px;
}
.card__inner__img .products-tag-01--custom-bottle-and-personalize,
.card__inner__img .products-tag-01--custom-bottle,
.card__inner__img .products-tag-01--personalize {
  font-weight: 500;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #00a762;
}
.card__inner__img .products-tag-01--custom-bottle-and-personalize p,
.card__inner__img .products-tag-01--custom-bottle p,
.card__inner__img .products-tag-01--personalize p {
  font-size: 8px;
}
.card__inner__img .products-tag-01--custom-bottle-and-personalize p {
  font-size: 7.5px;
  line-height: 7.5px;
}
.card__inner__img .products-tag-01--custom-bottle-and-personalize p.individual-characters {
  font-size: 8px;
  font-weight: normal;
}

.products-tag-01--white.products-tag-01.products-tag-01--online-store {
  padding-top: 10.33px;
  padding-bottom: 6.67px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.products-tag-01--white.products-tag-01.products-tag-01--online-store .tag-content--text-top {
  font-size: 7px;
  letter-spacing: -0.7px;
  line-height: 10px;
}
.products-tag-01--white.products-tag-01.products-tag-01--online-store .tag-content--text-bottom {
  font-size: 8px;
  line-height: 12px;
  display: inline-block;
  transform: translateY(-1px);
}

.list-tag {
  position: absolute;
  display: flex;
  top: 8px;
  left: 8px;
}
.list-tag .products-tag-01 {
  position: static;
}
.list-tag .products-tag-01 + .products-tag-01 {
  margin-left: 10px;
  margin-left: 0.625rem;
}

.drink-ticket {
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 40px;
  height: 23px;
}
.drink-ticket img {
  border-radius: 0;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: initial;
}

.forgift .forgift__inner {
  padding-bottom: 40px;
  padding-top: 28px;
}

.forgift .forgift-explanation__texts {
  font-weight: 400;
  /* margin-top: 20px; */
}

.forgift .forgift-explanation__texts p {
  font-size: 1.3rem;
  line-height: 1.69;
}

.forgift h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  line-height: 1.23;
  margin-bottom: 24px;
}

.forgift .text-limit {
  font-size: 1.8rem;
  line-height: 1.55;
}

.forgift .forgift-text p:not(:last-child) {
  margin-bottom: 13px;
}

.forgift .forgift-text .text-bg {
  background: linear-gradient(transparent 0.01%, #d4e9e2 0);
  display: inline;
}

.forgift .forgift-text {
  font-weight: 400;
  margin-top: 23px;
}

.forgift .forgift-texts a {
  color: #00754a;
}

.forgift .list-notes > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
  padding-left: 12px;
  position: relative;
}

.forgift .list-notes > li:before {
  content: "※";
  display: block;
  font-size: 1.1rem;
  left: 0;
  line-height: 1.63;
  position: absolute;
  top: 0;
}

.forgift .list-notes > li a {
  text-decoration: underline;
}

.list-links {
  margin-top: 4px;
}

.forgift .forgift-content .forgift-img {
  display: block;
  margin: 0 auto;
}

.select--S .custom-select {
  font-family: SoDoSans;
}

@media screen and (max-width: 1023.9px) {
  .forgift-text p ~ :not(.text-limit, .forgift-explanation__texts, .list-links) {
    margin-top: 16px;
  }
  .image-carousel-wrap .image-carousel {
    height: 58px;
  }
  .product-info .product-information .product-information__gift svg {
    width: 11px;
    height: 11px;
    transform: translateY(1px);
  }
}
@media screen and (min-width: 1024px) {
  .forgift-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 64px;
    align-items: flex-start;
    justify-content: space-between;
  }
  .forgift p a:hover {
    text-decoration: underline;
  }
  .forgift .list-notes > li a:hover {
    text-decoration: none;
  }
  .forgift .forgift__inner {
    padding-bottom: 74px;
    padding-top: 60px;
  }
  .forgift h2 {
    margin-bottom: 44px;
  }
  .forgift .forgift-explanation__texts p {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .forgift .forgift-text {
    margin-top: 0px;
  }
  .forgift .text-limit {
    font-size: 2.4rem;
    line-height: 1.58;
  }
  .forgift .forgift-text p:not(:last-child) {
    margin-bottom: 20px;
  }
  .list-links {
    margin-top: 7px;
  }
  .forgift .forgift__texts p {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .forgift .forgift__texts p:not(:last-child) {
    margin-bottom: 27px;
  }
  .forgift .list-notes {
    margin-top: 11px;
  }
  .forgift .list-notes > li, .forgift .list-notes > li:before {
    line-height: 1.81;
  }
  .forgift .forgift-content .forgift-img__giftbox {
    padding-left: 26px;
  }
}
.text-link-green {
  letter-spacing: -0.1rem;
}

/* kv 追加css */
.select--S {
  min-width: 88px;
  margin-left: auto;
}

/* wrapping giftbox プルダウン幅、省略表示追加css */
.select--wrapping,
.select--giftbox {
  margin-bottom: 8px;
}
.select--wrapping .custom-select__trigger,
.select--giftbox .custom-select__trigger {
  padding-left: 14.5px;
}

.select--wrapping .custom-select__trigger span {
  font-size: 1.5rem;
  font-weight: 700;
  font-family: Noto Sans JP, sans-serif;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 221.5px;
}

.select--giftbox .custom-select__trigger span {
  font-size: 1.5rem;
  font-weight: 700;
  font-family: Noto Sans JP, sans-serif;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 90px;
}

/* wrapping giftbox プルダウン幅、省略表示追加css */
/* kv 追加css */
.product-information__gift .flex-grow,
.product-information__stock p {
  font-size: 11px;
}

.product-information__gift:not(:first-child) {
  padding-top: 5px;
}

.product-information__gift p {
  line-height: 1.75;
}

.product-information__stock p {
  line-height: 1;
}

@media screen and (max-width: 375px) {
  .select--giftbox {
    max-width: 180px;
  }
  .selectbox-wrap svg {
    right: 12px;
  }
  .custom-select-wrap.select--giftbox {
    max-width: 175px;
  }
  .cart-float-multi-options .float-product-selection__list__item .selectbox-wrap .selectbox.select--wrapping {
    font-size: 1.4rem !important;
  }
}
@media screen and (min-width: 1024px) {
  .product-information__gift .flex-grow,
  .product-information__stock p {
    font-size: 13px;
  }
}
.product-information__price {
  line-height: 24px;
}

@media screen and (max-width: 1023.9px) {
  .select--S {
    min-width: 72px;
    margin-left: auto;
  }
  .cartset-position {
    flex-direction: column;
  }
  .cartset-position.flex-gap-2 {
    gap: 8px !important;
  }
  .cartset-position.flex-gap-4 {
    gap: 16px !important;
  }
}
.favorite-button {
  display: flex;
  justify-content: flex-end;
  width: 44px;
  height: 44px;
  padding: 13px 12px;
}
.favorite-button svg {
  display: block;
  stroke: #fbfbfb;
  fill: transparent;
}
.favorite-button.active {
  color: #00a862;
}
.favorite-button.active svg {
  fill: #00a862;
  stroke: #00a862;
}

.mt-30px {
  margin-top: 30px;
}

.mb-18px {
  margin-bottom: 18px !important;
}

.mt-90px {
  margin-top: 90px;
}

.mt-100px {
  margin-top: 100px;
}

.latte-modal-wrapper {
  position: fixed;
  inset: 0;
  z-index: var(--z-index-modal);
}
.latte-modal-wrapper .gray-background.show {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.38);
  display: flex;
  justify-content: center;
  align-items: center;
}
.latte-modal-wrapper .latte-modal-content {
  width: 95%;
  max-width: 390px;
  aspect-ratio: 39/58;
  background-color: transparent;
  position: relative;
}
.latte-modal-wrapper .latte-modal-content .close-button {
  position: absolute;
  top: 10px;
  right: 10px;
}
.latte-modal-wrapper .latte-modal-content .close-button path {
  fill: #fff;
}
.latte-modal-wrapper .latte-modal-content_image {
  width: 100%;
  height: 100%;
  position: relative;
}
.latte-modal-wrapper .latte-modal-content_image-btn {
  position: absolute;
  bottom: 4.35%;
  padding: 0 14.7%;
}
.latte-modal-wrapper .latte-modal-content_image-btn img {
  display: block;
  width: 100%;
  height: auto;
}
.latte-modal-wrapper .latte-modal-content_iframe {
  width: 100%;
  height: 100%;
  border: none;
  overflow: hidden;
}

.confirm-modal {
  display: none;
  position: fixed;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  top: 0;
  left: 0;
  z-index: 1000000;
}
.confirm-modal.show {
  display: flex;
}
.confirm-modal__background {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #000;
  top: 0;
  left: 0;
  opacity: 0.38;
}
.confirm-modal__main {
  width: 100%;
  max-width: 343px;
  background: #fff;
  border-radius: 12px;
  padding: 32px;
  margin: 0 16px;
  z-index: 1;
}
.confirm-modal__main button {
  font-family: "Noto Sans JP", sans-serif;
}
.confirm-modal__main--complete .confirm-modal__button-area, .confirm-modal__main--failed .confirm-modal__button-area {
  margin-top: 31px;
  line-height: 1.15;
}
@media (max-width: 1023px) {
  .confirm-modal__main {
    box-sizing: content-box;
  }
}
.confirm-modal__text {
  font-size: 1.4rem;
  margin: 0;
  line-height: 1.75;
}
.confirm-modal__button-area {
  text-align: right;
  margin-top: 25px;
}
.confirm-modal__cancel-button {
  font-size: 1.3rem;
  color: #00754A;
  vertical-align: initial;
}
@media screen and (min-width: 1024px) {
  .confirm-modal__cancel-button:hover {
    cursor: pointer;
  }
}
.confirm-modal__yes-button {
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  background: #00754A;
  padding: 5px 16px 7px;
  border-radius: 60px;
  margin-left: 16px;
  vertical-align: initial;
}
.confirm-modal__yes-button--notification {
  font-size: 1.3rem;
  background: none;
  color: #00754A;
  padding: 0;
  font-weight: normal;
}

@media screen and (min-width: 1024px) {
  .confirm-modal__main {
    box-sizing: border-box;
  }
  .confirm-modal__main--complete, .confirm-modal__main--failed {
    padding: 30px 32px;
  }
  .confirm-modal__main--complete .confirm-modal__button-area, .confirm-modal__main--failed .confirm-modal__button-area {
    margin-top: 34px;
    line-height: 1.15;
  }
  .confirm-modal__text {
    font-size: 1.4rem;
  }
  .confirm-modal__yes-button {
    transition: all 0.2s ease;
  }
  .confirm-modal__yes-button:hover {
    cursor: pointer;
    opacity: 0.8;
  }
  .confirm-modal__cancel-button:hover {
    cursor: pointer;
  }
}
.section-recommend.section-wrap {
  padding: 40px 0 80px;
  background-color: #fff;
}
.section-recommend.section-wrap .section-heading-02 {
  font-size: 1.3rem;
  line-height: 19px;
  margin-bottom: 38px;
}
.section-recommend.section-wrap .carousel-wrap .arrow-button--prev {
  left: 16px;
}
.section-recommend.section-wrap .carousel-wrap .arrow-button--next {
  right: 16px;
}
.section-recommend.section-wrap .carousel {
  display: flex;
  padding-left: 0;
}
.section-recommend.section-wrap .carousel li:first-child {
  margin-left: 2px;
}
.section-recommend.section-wrap .carousel-recommend {
  margin-left: -2px;
}
.section-recommend.section-wrap .recommend-item {
  width: 152px;
  display: flex;
  flex-shrink: 0;
  margin: 2px 8px 4px 0;
  cursor: pointer;
}
.section-recommend.section-wrap .recommend-item .recommend-item-wrap {
  display: flex;
  flex-direction: column;
}
.section-recommend.section-wrap .recommend-item .horizontal-card__text {
  word-break: break-all;
}
.section-recommend.section-wrap .recommend-item .horizontal-card__text > span {
  line-height: 1.6rem;
}
.section-recommend.section-wrap .recommend-item .horizontal-card__text .horizontal-card__text__detail {
  margin-bottom: 5px;
  min-height: 48px;
}
.section-recommend.section-wrap .recommend-item .horizontal-card__text .horizontal-card__text__price {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-height: 17px;
}
.section-recommend.section-wrap.section-wrap-sheets {
  padding: 40px 0 271.5px 0;
}
.section-recommend.section-wrap.section-wrap-sheets .title .section-heading-02 {
  margin-bottom: 24px;
}
.section-recommend.section-wrap.section-wrap-sheets .content-width--pc {
  padding: 0 64px;
}
.section-recommend.section-wrap.section-wrap-sheets .recommend-item {
  width: 112px;
  margin: 0 4px 4px 0;
}
.section-recommend.section-wrap.section-wrap-sheets .recommend-item .recommend-item__image > img {
  border-radius: 12px;
  margin-bottom: 9px;
  display: block;
  overflow: hidden;
}
.section-recommend.section-wrap.section-wrap-sheets .recommend-item .horizontal-card__text {
  padding: 0 5px;
}
.section-recommend.section-wrap.section-wrap-sheets .recommend-item .horizontal-card__text__detail {
  margin-bottom: 11px;
}
@media screen and (max-width: 1023.9px) {
  .section-recommend.section-wrap {
    padding: 40px 0 36px;
  }
  .section-recommend.section-wrap .section-heading-02 {
    margin-bottom: 22px;
  }
  .section-recommend.section-wrap .carousel-recommend {
    padding-left: 40px;
  }
  .section-recommend.section-wrap.section-wrap-sheets {
    padding: 32px 0 88px 0 !important;
  }
  .section-recommend.section-wrap.section-wrap-sheets .title {
    margin-left: 16px;
  }
  .section-recommend.section-wrap.section-wrap-sheets .content-width--pc {
    padding: 0 !important;
  }
  .section-recommend.section-wrap.section-wrap-sheets .carousel-recommend {
    padding-left: 16px;
  }
}
@media screen and (max-width: 520px) {
  .section-recommend.section-wrap .carousel-recommend {
    padding-left: 16px;
  }
  .section-recommend.section-wrap .recommend-item {
    margin: 2px 4px 4px 0;
  }
}

/* common */
.sp-only {
  display: block;
}

.pc-only {
  display: none;
}

.content-width--sp {
  margin: 0 16px;
}

.section-wrap {
  border-top: solid 8px #edebe9;
  padding: 24px 0 32px;
}

.section-heading-02 {
  font-size: 1.4rem;
  color: rgba(0, 0, 0, 0.3);
  font-weight: bold;
  line-height: 1;
  margin-bottom: 27px;
}

.section-heading-03 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2.8rem;
  margin-bottom: 19px;
}

.card-item {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.16);
  margin: 4px 4px 4px 0;
  overflow: hidden;
}

.card-item > a {
  display: block;
  width: 100%;
  height: 100%;
}

.vertical-card {
  width: 152px;
}

.vertical-card a {
  display: flex;
  flex-direction: column;
}

.vertical-card__image img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.horizontal-card__text {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 13px 12px;
}

.horizontal-card__text__detail {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-size: 1.1rem;
  flex-grow: 1;
  margin-bottom: 4px;
}

.horizontal-card__text__price {
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
}

.horizontal-card__text__label {
  display: block;
  font-size: 1.2rem;
  font-weight: 500;
  color: #00754a;
}

.products-tag-01 {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  background: rgba(30, 57, 50, 0.9);
  border: solid 1px rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  padding: 8px 0;
  line-height: 1.2rem;
  pointer-events: none;
}

.products-tag-01--white {
  color: #1e3932;
  background: rgba(255, 255, 255, 0.9);
  border: solid 1px rgba(30, 57, 50, 0.6);
}

.products-tag-01 > * {
  font-size: 1rem;
}

.products-tag-01.products-tag--large.products-tag-01--custom-bottle-and-personalize, .products-tag-01.products-tag--large.products-tag-01--personalize, .products-tag-01.products-tag--large.products-tag-01--custom-bottle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #00a762;
  font-weight: 500;
}
.products-tag-01.products-tag--large.products-tag-01--custom-bottle-and-personalize p, .products-tag-01.products-tag--large.products-tag-01--personalize p, .products-tag-01.products-tag--large.products-tag-01--custom-bottle p {
  display: inline-block;
  font-size: 14px;
}
.products-tag-01.products-tag--large.products-tag-01--personalize p {
  font-size: 12px;
}
.products-tag-01.products-tag--large.products-tag-01--custom-bottle-and-personalize p {
  font-size: 11px;
  line-height: 11px;
}
.products-tag-01.products-tag--large.products-tag-01--custom-bottle-and-personalize p.individual-characters {
  font-size: 12px;
  font-weight: normal;
}

.products-tag-01.products-tag--large {
  width: 6rem;
  height: 6rem;
  font-size: 1.3rem;
  padding: 13px 0;
  line-height: 1.6rem;
}

.products-tag-01.products-tag--large > * {
  font-size: 1.3rem;
}

.products-tag-01.products-tag-01--white.products-tag--large.products-tag-01--online-store {
  padding-top: 17px;
  padding-bottom: 11px;
}
.products-tag-01.products-tag-01--white.products-tag--large.products-tag-01--online-store .tag-content--text-top {
  font-size: 10.5px;
  line-height: 15px;
  letter-spacing: -1.05px;
}
.products-tag-01.products-tag-01--white.products-tag--large.products-tag-01--online-store .tag-content--text-bottom {
  font-size: 11px;
  line-height: 17px;
  transform: translateY(-2px);
}

.detail-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  border-bottom: solid 1px rgba(0, 0, 0, 0.2);
  line-height: 1.8rem;
  padding: 12px 0;
}

.detail-list__title {
  font-size: 1.1rem;
  font-weight: 400;
}

.detail-list__detail {
  font-size: 1.2rem;
  font-weight: 500;
  text-align: right;
}

.detail-list__annotation {
  width: 100%;
  font-size: 1.1rem;
  color: rgba(0, 0, 0, 0.7);
  line-height: 1.8rem;
  margin-top: 10px;
}

.detail-list__annotation__list li {
  text-indent: -1em;
  line-height: 1.8rem;
  padding-left: 1em;
}

.detail-list__annotation__list li::before {
  content: "※";
}

/* product-info */
.product-info {
  background: #1e3932;
  padding: 0;
}

/* image-carousel */
.product-image {
  position: relative;
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
}

.product-image .products-tag-01 {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;
}

.product-image .products-tag--drink-ticket {
  position: absolute;
  bottom: 44px;
  right: 16px;
  width: 85px;
  height: 48px;
  z-index: 2;
  pointer-events: none;
}
.product-image .products-tag--drink-ticket img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-image .products-tag--drink-ticket--noimage {
  bottom: 85px !important;
  right: 0 !important;
}

.image-carousel-wrap {
  /* 仮 */
  background: #fff;
}

.image-carousel-wrap .zoom-area {
  display: none;
}

.image-carousel__item__image img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

/* PTR */
.ptr-attention {
  background: #fff;
  padding: 2px;
}

.ptr-attention p {
  font-size: 1.1rem;
  color: #d62b1f;
  border: solid 2px #d62b1f;
  line-height: 1.6rem;
  padding: 8px 12px;
}

/*  DISCOVER YOUR FAVORITES */
.discover-your-favorites .contents__inner + .contents__inner {
  margin-top: 16px;
}

.discover-your-favorites .carousel-wrap {
  margin-top: 13px;
}

.discover-your-favorites .horizontal-card {
  width: 256px;
}

.discover-your-favorites .horizontal-card a {
  padding: 18px;
}

.discover-your-favorites .horizontal-card__image div {
  width: 80px;
}

.discover-your-favorites .horizontal-card__image img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.discover-your-favorites .horizontal-card__text {
  font-size: 1.2rem;
  line-height: 18px;
  padding: 0;
}

.discover-your-favorites .contents + .sp-only {
  margin-top: 32px;
}

/* 味わいの特徴 */
.taste-characteristics .section-heading-02 {
  margin-bottom: 24px;
  font-size: 13px;
}

.taste-characteristics .section-heading-03 {
  margin-bottom: 0;
}

.taste-characteristics .section-heading-03:nth-of-type(n + 2),
.taste-characteristics .contents__inner + .contents__inner {
  margin-top: 24px;
}

.taste-characteristics .roast-level {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 20px;
}

.taste-characteristics .roast-level.roast-level--01 {
  color: #bf9433;
}

.taste-characteristics .roast-level.roast-level--02 {
  color: #94571f;
}

.taste-characteristics .roast-level.roast-level--03 {
  color: #64273f;
}

.taste-characteristics .roast-level.roast-level--04 {
  color: #74a333;
}

.taste-characteristics .roast-level.roast-level--05 {
  color: #000;
}

.taste-characteristics .roast-level-wrap .text-link {
  display: block;
  margin-top: 8px;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00754a;
}

.taste-characteristics .graph {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 8px;
  margin: 15px 0 5px;
}

.taste-characteristics .graph::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 4px;
  background: #1d1d1d;
  border-radius: 4px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.taste-characteristics .graph > span {
  display: block;
  width: 8px;
  height: 8px;
  background: #1d1d1d;
  border-radius: 50%;
  z-index: 1;
}

.taste-characteristics .graph.graph--level-01 > span:nth-child(1),
.taste-characteristics .graph.graph--level-02 > span:nth-child(2),
.taste-characteristics .graph.graph--level-03 > span:nth-child(3),
.taste-characteristics .graph.graph--level-04 > span:nth-child(4),
.taste-characteristics .graph.graph--level-05 > span:nth-child(5),
.taste-characteristics .graph.graph--level-06 > span:nth-child(6) {
  width: 14px;
  height: 14px;
  background: #fff;
  border: solid 3px #1d1d1d;
}

.taste-characteristics .graph + .text {
  display: flex;
  justify-content: space-between;
  line-height: 2.1rem;
  margin: 0 7px;
}

.taste-characteristics .graph + .text > span {
  display: block;
  font-size: 1.3rem;
}

.taste-characteristics .detail-list-wrap {
  padding-top: 4px;
}

.taste-characteristics .detail-list__title,
.taste-characteristics .detail-list__detail {
  font-size: 1.3rem;
}

.taste-characteristics .detail-list__detail {
  flex: 1;
}

/* 商品仕様 */
.product-specification .section-heading-02 {
  margin-bottom: 6px;
}

/* 関連コンテンツ */
.relevant-contents .card-item-wrap {
  position: relative;
  overflow-x: hidden;
}

.relevant-contents .card-item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  transition: all 0.4s;
  margin: 4px 16px;
}

.relevant-contents .relevant-content-wrap {
  width: 184px;
  padding: 24px 0 24px 24px;
}

.relevant-contents .relevant-content-wrap.upper-row {
  border-bottom: solid 1px #e5e3e1;
}

.relevant-contents .relevant-content-wrap.upper-row-last {
  width: 208px;
  padding-right: 24px;
}

.relevant-content__text__category {
  color: #00754a;
}

.relevant-contents .arrow-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) scale(0);
  transition: all 0.2s;
  opacity: 0;
  pointer-events: none;
}

.relevant-contents .arrow-button.show {
  transform: translateY(-50%) scale(1);
  opacity: 1;
  pointer-events: all;
}

.relevant-contents .arrow-button--prev {
  left: 16px;
}

.relevant-contents .arrow-button--next {
  left: calc(100vw - 60px);
}

/* cart float multi options */
.button.button--primary-S-floating.fixed {
  position: fixed;
  right: 16px;
  bottom: 16px;
  pointer-events: none;
  opacity: 0;
  transition: all 0.3s;
  z-index: 998;
}

.button.button--primary-S-floating.fixed.show {
  pointer-events: all;
  opacity: 1;
}

.cart-float-multi-options .gray-background {
  display: none;
}

.cart-float-multi-options .gray-background.show {
  display: block;
  position: fixed;
  width: 100%;
  height: 100vh;
  background: #000;
  opacity: 0.38;
  top: 0;
  left: 0;
  z-index: 998;
}

.cart-float-multi-options .float-product-selection,
.cart-float-multi-options .float-cart,
.cart-float-multi-options .favorite-dialog {
  position: fixed;
  width: 100%;
  max-height: calc(100vh - 12px);
  max-height: calc(100dvh - 12px);
  min-height: 507px;
  background: #fff;
  transition: transform 0.3s;
  transform: translateY(100%);
  bottom: 0;
  right: 0;
  overflow-y: scroll;
  z-index: 999;
}
.cart-float-multi-options .favorite-dialog {
  min-height: 300px;
}

.cart-float-multi-options .float-product-selection.show,
.cart-float-multi-options .float-cart.show,
.cart-float-multi-options .favorite-dialog.show {
  transform: translateY(0);
}
.cart-float-multi-options .float-cart .close-button {
  will-change: transform;
}

.float-product-selection .close-button,
.float-cart .close-button,
.favorite-dialog .close-button {
  position: absolute;
  top: 16px;
  right: 16px;
}

.cart-float-multi-options .float-product-selection__heading,
.cart-float-multi-options .float-cart__heading {
  position: sticky;
  background: #f9f9f9;
  padding: 24px 16px;
  top: 0;
  z-index: 1;
}

.cart-float-multi-options .float-product-selection__heading__title,
.cart-float-multi-options .float-cart__heading__title {
  font-size: 1.3rem;
  font-weight: bold;
  color: #000;
  opacity: 0.3;
  margin-bottom: 30px;
}

.cart-float-multi-options .float-product-selection__heading__product .product__name {
  flex: 1;
  font-size: 1.3rem;
  margin-left: 16px;
}

.cart-float-multi-options .float-product-selection__heading__product .product__image,
.cart-float-multi-options .float-cart .product__image,
.cart-float-multi-options .favorite-dialog .product__image {
  width: 64px;
  border-radius: 12px;
  overflow: hidden;
}

.cart-float-multi-options .float-product-selection__heading__product .product__image img,
.cart-float-multi-options .float-cart .product__image img,
.cart-float-multi-options .favorite-dialog .product__image img {
  width: 100%;
  aspect-ratio: 1/1;
}

.cart-float-multi-options .float-product-selection__list-wrap {
  padding: 0 16px;
}

.cart-float-multi-options .float-product-selection__list__item {
  border-bottom: solid 2px rgba(0, 0, 0, 0.2);
  padding: 16px 0;
}

.cart-float-multi-options .float-product-selection__list__item:first-of-type {
  padding-top: 24px;
}

.cart-float-multi-options .float-product-selection__list__item .product-type {
  font-size: 1.3rem;
  padding-bottom: 11px;
}

.cart-float-multi-options .float-product-selection__list__item .product-price {
  font-size: 2.8rem;
  line-height: 2.4rem;
  padding-bottom: 11px;
}

.cart-float-multi-options .float-product-selection__list__item .product-stock {
  font-size: 1.1rem;
}

.cart-float-multi-options .float-product-selection__list__item .selectbox-wrap {
  margin-bottom: 8px;
}

.cart-float-multi-options .float-product-selection__list__item .selectbox-wrap.disabled {
  visibility: hidden;
  pointer-events: none;
}

.cart-float-multi-options .float-product-selection__list__item .selectbox-wrap .selectbox {
  font-size: 1.6rem;
}

.cart-float-multi-options .float-product-selection__list__item .selectbox-wrap + .button {
  font-weight: 500;
  padding: 6px 16px;
}

.cart-float-multi-options .float-product-selection__list-wrap .annotation-list {
  font-size: 1.1rem;
  color: rgba(0, 0, 0, 0.7);
  margin: 8px 0 16px;
}

.cart-float-multi-options .float-product-selection__list-wrap .annotation-list li {
  text-indent: -1em;
  margin-left: 1em;
}

.cart-float-multi-options .float-product-selection__list-wrap .annotation-list li::before {
  content: "・";
}

.cart-float-multi-options .float-cart {
  max-height: 507px;
  min-height: 507px;
}
.cart-float-multi-options .favorite-dialog {
  height: 300px;
}

.cart-float-multi-options .float-cart .float-cart__heading__title,
.cart-float-multi-options .favorite-dialog .float-cart__heading__title {
  opacity: 1;
}

.cart-float-multi-options .float-cart .product-name,
.cart-float-multi-options .favorite-dialog .product-name {
  font-size: 1.3rem;
}

.cart-float-multi-options .float-cart .product__detail,
.cart-float-multi-options .favorite-dialog .product__detail {
  flex: 1;
  margin-left: 16px;
  line-height: 1.8;
}

.cart-float-multi-options .float-cart .product-type,
.cart-float-multi-options .favorite-dialog .product-type,
.float-cart .product-quantity,
.favorite-dialog .product-quantity {
  font-size: 1.1rem;
}

.cart-float-multi-options .float-cart .product-quantity .num,
.cart-float-multi-options .favorite-dialog .product-quantity .num {
  margin-left: 2em;
}

.cart-float-multi-options .float-cart .float-cart__list,
.cart-float-multi-options .favorite-dialog .float-cart__list {
  padding: 0 16px;
}

.cart-float-multi-options .float-cart .float-cart__list .float-cart__list__item,
.cart-float-multi-options .favorite-dialog .float-cart__list .float-cart__list__item {
  align-items: center;
  padding: 10px 0;
}

.cart-float-multi-options .float-cart .float-cart__list .float-cart__list__item:first-of-type,
.cart-float-multi-options .favorite-dialog .float-cart__list .float-cart__list__item:first-of-type {
  padding-top: 24px;
}

.cart-float-multi-options .float-cart + .button.button--primary-S-floating,
.cart-float-multi-options .favorite-dialog + .button.button--primary-S-floating {
  position: fixed;
  right: 16px;
  bottom: 16px;
  opacity: 0;
  transition: all 0.3s;
  pointer-events: none;
  z-index: var(--z-index-modal);
}

.cart-float-multi-options .float-cart.show + .button.button--primary-S-floating,
.cart-float-multi-options .favorite-dialog.show + .button.button--primary-S-floating {
  pointer-events: all;
  opacity: 1;
  pointer-events: all;
}

.cart-float-multi-options .float-cart {
  display: flex;
  flex-direction: column;
}
.cart-float-multi-options .float-cart .float-cart-wrap {
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
}
.cart-float-multi-options .float-cart .float-cart__heading {
  position: relative;
}
.cart-float-multi-options .float-cart .float-cart__heading .float-cart__heading__title {
  line-height: 19px;
  margin-bottom: 32px;
}
.cart-float-multi-options .float-cart .float-cart__heading .product-name {
  line-height: 19px;
}
.cart-float-multi-options .float-cart .float-cart__heading .product-type {
  line-height: 16px;
  margin-top: 4px;
}
.cart-float-multi-options .float-cart .float-cart__heading .product-quantity {
  line-height: 16px;
  margin-top: 8px;
}
.cart-float-multi-options .float-cart .close-button {
  background-color: #f9f9f9;
}
.cart-float-multi-options .float-cart.float-cart__recommend {
  min-height: unset;
}

.cart-float-multi-options .cart-error {
  display: none;
  position: fixed;
  background: #fff;
  width: min(343px, 100% - 32px);
  border-radius: 12px;
  padding: 32px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 999;
}

.cart-float-multi-options .cart-error.show {
  display: block;
}

.cart-float-multi-options .cart-error .close-button {
  position: absolute;
  top: 16px;
  right: 16px;
}

.cart-float-multi-options .cart-error .cart-error__heading {
  font-size: 1.6rem;
  font-weight: bold;
  max-width: calc(100% - 20px);
  margin-bottom: 20px;
}

.cart-float-multi-options .cart-error .cart-error__detail {
  font-size: 1.3rem;
}

.cart-float-multi-options .cart-error .cart-error__code {
  font-optical-sizing: 1.3rem;
  margin-top: 8px;
}

.cart-float-multi-options .cart-error .cart-error__code > span {
  margin-left: 1em;
}

/* Food pairing */
.food-paring .section-heading-02 {
  margin-bottom: 22px;
}

.food-paring .section-heading-03 {
  margin-bottom: 20px;
}

@media screen and (max-width: 1023.9px) {
  /* image-carousel */
  .image-carousel-wrap .zoom-area.sp-active {
    display: block;
    position: fixed;
    width: 100vh;
    height: 100vh;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999;
    overflow: hidden;
  }
  .image-carousel-wrap .zoom-area.sp-active::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: #fff;
    top: 0;
    left: 0;
  }
  .image-carousel-wrap .zoom-image {
    width: 100%;
  }
  .image-carousel-wrap .zoom-area .arrow-button {
    position: absolute;
    background: rgba(255, 255, 255, 0.4);
    box-shadow: none;
    top: 50%;
    transform: translateY(-50%);
    z-index: 999;
  }
  .image-carousel-wrap .zoom-area .arrow-button--prev {
    left: calc(50% - 50vw + 16px);
  }
  .image-carousel-wrap .zoom-area .arrow-button--next {
    right: calc(50% - 50vw + 16px);
  }
  .image-carousel-wrap .zoom-area .zoom-close-button {
    position: absolute;
    width: 32px;
    height: 32px;
    top: 16px;
    right: calc(50% - 50vw + 16px);
    z-index: 999;
  }
  .image-carousel-wrap .zoom-area .image-location {
    position: absolute;
    font-size: 1.1rem;
    color: #fff;
    background: rgba(0, 0, 0, 0.3);
    padding: 2px 5px;
    line-height: 1;
    left: 50%;
    top: calc(100vh - 24px);
    top: calc(100dvh - 24px);
    transform: translate3d(-50%, -100%, 0);
    z-index: 999;
  }
  .image-carousel-wrap .zoom-area .image-location .current::after {
    content: " / ";
  }
}
/* Related content (4 or less) */
.relevant-contents .less-than-4 .card-item {
  width: calc(100% - 32px) !important;
  padding: 12px;
}

.relevant-contents .less-than-4 .card-item .relevant-content-wrap {
  width: 50%;
  padding: 12px;
}

.relevant-contents .less-than-4 .card-item .relevant-content-wrap.upper-row {
  border-bottom: none;
}

.relevant-contents .less-than-4 .arrow-button {
  display: none !important;
}

#allergen_component #nutrition-calculator h3 {
  margin-bottom: 15px !important;
  margin-top: 15px !important;
}

@media screen and (min-width: 520px) and (max-width: 1023.9px) {
  .content-width--sp {
    margin-left: 40px;
    margin-right: 40px;
  }
  .section-heading-02 {
    margin-bottom: 40px;
  }
  .carousel {
    padding-left: 40px;
  }
  /* Related content */
  .relevant-contents .card-item {
    margin: 4px 40px;
  }
  /* Related content (4 or less) */
  .relevant-contents .less-than-4 .card-item {
    width: calc(100% - 80px) !important;
  }
}
@media screen and (min-width: 520px) and (max-width: 1039px) {
  #allergen_component #nutrition-calculator .alle-p-detail-toggle__head,
  #allergen_component #nutrition-calculator .alle-p-tab__body > div,
  #allergen_component #nutrition-calculator .alle-p-tab__head,
  #allergen_component #nutrition-calculator .alle-p-detail__inner {
    max-width: calc(100% - 80px);
  }
}
@media screen and (min-width: 1024px) {
  /* common */
  .sp-only {
    display: none;
  }
  .pc-only {
    display: block;
  }
  .content-width--sp {
    margin: 0;
  }
  .content-width--pc {
    max-width: 1264px;
    padding: 0 40px;
    margin: 0 auto;
  }
  .section-wrap {
    padding: 52px 0 80px;
  }
  .section-heading-02 {
    margin-bottom: 40px;
  }
  .card-item {
    margin: 8px 8px 8px 0;
  }
  .detail-list {
    line-height: 2.4rem;
    padding: 17px 0;
  }
  .detail-list__title {
    font-size: 1.4rem;
  }
  .detail-list__detail {
    font-size: 1.5rem;
  }
  .detail-list__annotation {
    margin-top: 18px;
    line-height: 2rem;
  }
  .detail-list__annotation li {
    line-height: 2rem;
  }
  /*  DISCOVER YOUR FAVORITES */
  .discover-your-favorites .content-width--pc {
    display: flex;
    justify-content: space-between;
  }
  .discover-your-favorites .title {
    width: 220px;
    flex-shrink: 0;
    margin-right: 32px;
  }
  .discover-your-favorites .title .button {
    margin-top: 28px;
  }
  .discover-your-favorites .contents {
    flex: 1;
    width: calc(100% - 220px);
    max-width: 870px;
  }
  .discover-your-favorites .contents__inner {
    display: flex;
    justify-content: flex-end;
    gap: 36px;
  }
  .discover-your-favorites .carousel-wrap {
    flex: 1;
    max-width: 792px;
    padding: 0 4px;
    margin-top: 0;
  }
  .discover-your-favorites .carousel {
    padding-left: 0;
  }
  .discover-your-favorites .carousel-wrap .arrow-button--next {
    right: 16px;
  }
  .discover-your-favorites .carousel-wrap .arrow-button--prev {
    left: 16px;
  }
  /* FOOD PAIRING */
  .food-paring .carousel {
    padding-left: 0;
  }
  /* 味わいの特徴 */
  .taste-characteristics .detail-list {
    padding: 12px 0;
    line-height: 1.8rem;
  }
  /* 商品仕様 */
  .product-specification .section-heading-02 {
    margin-bottom: 32px;
  }
  .product-specification .detail-list-wrap::after {
    content: "";
    display: block;
    clear: both;
  }
  .product-specification .detail-list {
    width: calc((100% - 63px) / 2);
  }
  .product-specification .detail-list:nth-child(odd) {
    float: left;
  }
  .product-specification .detail-list:nth-child(even) {
    float: right;
  }
  .product-specification .detail-list:nth-child(-n+2) {
    border-top: solid 1px rgba(0, 0, 0, 0.2);
  }
  .product-specification .detail-list {
    width: calc((100% - 63px) / 2);
  }
  /* cart float multi options */
  .button.button--primary-S-floating.fixed {
    right: max(40px, 50% - 632px + 40px);
  }
  .cart-float-multi-options .float-product-selection,
  .cart-float-multi-options .float-cart,
  .cart-float-multi-options .favorite-dialog {
    width: 752px;
    height: 100vh;
    max-height: 100vh;
    top: 0;
    bottom: auto;
    transform: translateX(100%);
    scrollbar-width: none;
  }
  .cart-float-multi-options .float-product-selection::-webkit-scrollbar,
  .cart-float-multi-options .float-cart::-webkit-scrollbar,
  .cart-float-multi-options .favorite-dialog::-webkit-scrollbar {
    display: none;
  }
  .cart-float-multi-options .float-product-selection.show,
  .cart-float-multi-options .float-cart.show,
  .cart-float-multi-options .favorite-dialog.show {
    transform: translateX(0);
  }
  .cart-float-multi-options .float-product-selection .close-button,
  .cart-float-multi-options .float-cart .close-button,
  .cart-float-multi-options .favorite-dialog .close-button {
    top: 24px;
    right: 24px;
  }
  .cart-float-multi-options .float-product-selection__heading,
  .cart-float-multi-options .float-cart__heading {
    padding: 84px max(64px, 100% - 624px) 40px 64px;
  }
  .cart-float-multi-options .float-product-selection__list-wrap {
    height: calc(100% - 366px);
    padding: 0 max(64px, 100% - 624px) 0 64px;
    overflow-y: scroll;
    margin-top: 40px;
    scrollbar-width: none;
  }
  .cart-float-multi-options .float-product-selection__list-wrap::-webkit-scrollbar {
    display: none;
  }
  .cart-float-multi-options .float-product-selection__list__item:first-of-type {
    padding-top: 0;
  }
  .cart-float-multi-options .float-cart .product__image,
  .cart-float-multi-options .favorite-dialog .product__image {
    width: 96px;
  }
  .cart-float-multi-options .float-cart .float-cart__heading__product .product__image,
  .cart-float-multi-options .favorite-dialog .float-cart__heading__product .product__image {
    width: 152px;
  }
  .cart-float-multi-options .float-cart .product-name,
  .cart-float-multi-options .favorite-dialog .product-name {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
  .cart-float-multi-options .float-cart .product-type,
  .cart-float-multi-options .favorite-dialog .product-type {
    margin-bottom: 20px;
  }
  .cart-float-multi-options .float-cart .float-cart__list,
  .cart-float-multi-options .favorite-dialog .float-cart__list {
    height: calc(100% - 454px);
    padding: 0 max(64px, 100% - 624px) 0 64px;
    overflow-y: scroll;
    margin-top: 40px;
    scrollbar-width: none;
  }
  .cart-float-multi-options .float-cart .float-cart__list .float-cart__list__item,
  .cart-float-multi-options .favorite-dialog .float-cart__list .float-cart__list__item {
    align-items: flex-start;
    padding: 12px 0;
  }
  .cart-float-multi-options .float-cart .float-cart__list .float-cart__list__item:first-of-type,
  .cart-float-multi-options .favorite-dialog .float-cart__list .float-cart__list__item:first-of-type {
    padding-top: 0;
  }
  .cart-float-multi-options .float-cart .float-cart__list::-webkit-scrollbar,
  .cart-float-multi-options .favorite-dialog .float-cart__list::-webkit-scrollbar {
    display: none;
  }
  .cart-float-multi-options .float-cart + .button.button--primary-S-floating,
  .cart-float-multi-options .favorite-dialog + .button.button--primary-S-floating {
    right: 128px;
    bottom: 84px;
  }
  .cart-float-multi-options .float-cart .float-cart__heading {
    padding-top: 85px;
  }
  .cart-float-multi-options .float-cart .float-cart__heading .product-name {
    margin-bottom: 0px;
  }
  .cart-float-multi-options .float-cart .float-cart__heading .product-type {
    margin-bottom: 0px;
    margin-top: 16px;
  }
  .cart-float-multi-options .float-cart .float-cart__heading .product-quantity {
    margin-top: 24px;
  }
  #allergen_component #nutrition-calculator h3 {
    margin-bottom: 32px !important;
    margin-top: 32px !important;
  }
  /* C04 - Related content */
  .relevant-contents .carousel-wrap {
    overflow-y: hidden;
  }
  .relevant-contents .card-item {
    flex-wrap: nowrap;
    box-shadow: none;
    margin: 0;
    overflow: visible;
  }
  .relevant-contents .relevant-content-wrap {
    width: 176px;
    padding: 0;
    margin-right: 24px;
  }
  .relevant-contents .relevant-content-wrap a {
    width: 176px;
  }
  .relevant-contents .carousel {
    padding-left: 40px;
  }
  .relevant-contents .arrow-button {
    top: 66px;
  }
  .relevant-contents .arrow-button--next {
    left: auto;
    right: 40px;
  }
  .relevant-contents .arrow-button--prev {
    left: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 1023.9px) {
  .product-info .product-info__inner.content-width--pc {
    max-width: none;
    padding: unset;
    margin: unset;
  }
}
@media screen and (min-width: 1024px) {
  .product-image {
    width: 50%;
    flex-shrink: 0;
    padding-right: 16px;
  }
  /* product-info */
  .product-info {
    padding: 80px 0 47px;
  }
  .product-info .product-info__inner {
    display: flex;
    justify-content: space-between;
  }
  .product-title {
    width: 50%;
    max-width: 560px;
    padding-bottom: 30px;
    padding-left: 16px;
  }
  .product-title-beverage {
    padding-bottom: 50px;
  }
  /* image-carousel */
  .product-image .products-tag-01 {
    top: -76px;
    left: 24px;
  }
  .product-image .products-tag--drink-ticket {
    bottom: 64px;
    right: 23.5px;
  }
  .image-carousel-wrap {
    background: none;
    margin-top: -103px;
  }
  .image-carousel-wrap .focus-item .image-carousel__item__image {
    position: relative;
  }
  .focus-item .image-carousel__item__image .loupe {
    position: absolute;
    display: none;
    justify-content: center;
    align-items: center;
    top: 0px;
    left: 0px;
    z-index: 1;
    height: 158px;
    width: 158px;
    border: solid 1px #1e1e1e;
    background: rgba(255, 255, 255, 0.3);
  }
  .focus-item .image-carousel__item__image .loupe::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
  }
  .focus-item .image-carousel__item__image:hover .loupe {
    display: flex;
  }
  .image-carousel-wrap {
    position: relative;
  }
  .image-carousel-wrap .zoom-area {
    display: none;
    position: absolute;
    width: 560px;
    height: 560px;
    overflow: hidden;
    top: 0;
    left: 624px;
  }
  .image-carousel-wrap .zoom-area.active {
    display: block;
  }
  .image-carousel-wrap .zoom-area img {
    width: 2000px;
    max-width: none;
  }
  .image-carousel-wrap .zoom-area .arrow-button {
    display: none;
  }
  /* PTR */
  .ptr-attention {
    margin-top: -44px;
    margin-bottom: 33px;
  }
  .taste-characteristics .graph.graph--level-01 > span:nth-child(1),
  .taste-characteristics .graph.graph--level-02 > span:nth-child(2),
  .taste-characteristics .graph.graph--level-03 > span:nth-child(3),
  .taste-characteristics .graph.graph--level-04 > span:nth-child(4),
  .taste-characteristics .graph.graph--level-05 > span:nth-child(5),
  .taste-characteristics .graph.graph--level-06 > span:nth-child(6) {
    width: 16px;
    height: 16px;
  }
}
@media screen and (min-width: 1024px) {
  /* FOOD PAIRING */
  .food-paring {
    padding-top: 52px;
  }
  .food-paring .section-heading-02 {
    margin-bottom: 44px;
  }
  .food-paring .section-heading-03 {
    margin-right: 50px;
    font-size: 2.4rem;
    line-height: 3.8rem;
  }
  .food-paring .content-width--pc {
    display: flex;
    justify-content: space-between;
  }
  .food-paring .carousel-wrap {
    max-width: 640px;
    padding: 0 4px;
  }
  .food-paring .carousel-wrap .arrow-button--next {
    right: 16px;
  }
  .food-paring .carousel-wrap .arrow-button--prev {
    left: 16px;
  }
  .food-paring .horizontal-card__text {
    padding: 12px 10px 14px 8px;
  }
  .food-paring .card-item {
    margin: 0 8px 8px 0;
  }
  /* 味わいの特徴 */
  .taste-characteristics .section-heading-02 {
    margin-bottom: 44px;
  }
  .taste-characteristics .section-heading-03 {
    font-size: 2.4rem;
    line-height: 3.8rem;
  }
  .taste-characteristics .contents {
    display: flex;
    justify-content: space-between;
  }
  .taste-characteristics .contents__inner {
    width: calc((100% - 64px) / 2);
  }
  .taste-characteristics .section-heading-03:nth-of-type(n + 2) {
    margin-top: 45px;
  }
  .taste-characteristics .contents__inner + .contents__inner {
    margin-top: 0;
  }
  .taste-characteristics .roast-level-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 32px;
  }
  .taste-characteristics .roast-level {
    font-size: 2.4rem;
    margin-top: 0;
  }
  .taste-characteristics .roast-level-wrap .text-link {
    margin-top: 0;
    font-size: 1.5rem;
    font-weight: 400;
  }
  .taste-characteristics .graph {
    margin-top: 24px;
  }
  .taste-characteristics .detail-list-wrap {
    padding-top: 8px;
  }
  .taste-characteristics .detail-list {
    padding: 16px 0;
    line-height: 2.4rem;
  }
  .taste-characteristics .detail-list__title {
    font-size: 1.4rem;
  }
  .taste-characteristics .detail-list__detail {
    font-size: 1.4rem;
  }
  .taste-characteristics .detail-list:last-child {
    border-bottom: none;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1039px) {
  .food-paring .title {
    width: calc((100% - 32px) / 2);
  }
  .food-paring .contens {
    width: calc((100% - 32px) / 2);
  }
  .taste-characteristics .contents__inner {
    width: calc((100% - 32px) / 2);
  }
  .discover-your-favorites .title {
    width: calc((100% - 32px) / 2);
  }
  .discover-your-favorites .contents {
    width: calc((100% + 32px) / 2);
  }
}
@media screen and (min-width: 1265px) {
  .relevant-contents .arrow-button--next {
    right: calc(50% - 632px);
  }
  .relevant-contents .arrow-button--prev {
    left: calc(50% - 632px);
  }
}
.discover-your-favorites .button {
  font-weight: 500;
}
.discover-your-favorites .contents__inner > .text-bold {
  font-size: 13px;
}

#allergen_component #nutrition-calculator {
  display: block;
  border-top: 4px solid #e9e9e9;
}
#allergen_component .alle-c-tab {
  border-bottom: 0;
  padding-bottom: 6px;
}
#allergen_component .alle-c-tab::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: -50vw;
  right: -50vw;
  display: block;
  height: 6px;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.05), white);
}
#allergen_component ._modal-box-wap .alle-c-form-label {
  position: absolute;
  top: 0;
  left: 16px;
}
#allergen_component ._modal-box-wap .alle-c-form-select.is-M .select-customize {
  padding: 13px 0 9px 0;
}

/* banner freeship */
.os-delivery-fee-container {
  background-color: #d4e9e2;
  display: flex;
  height: 56px;
  justify-content: center;
  align-items: center;
  position: relative;
}

.os-delivery-fee-container a {
  color: #1e3932;
  font-size: 15px;
  line-height: 1.4;
}

@media screen and (max-width: 1023px) {
  .os-delivery-fee-container {
    height: 31px;
  }
  .os-delivery-fee-container a {
    font-size: 11px;
  }
}
/*! purgecss start ignore */
/* 文字の太さを通常にする */
.product-information .text-regular {
  font-weight: 400 !important;
}

/* 商品情報のBOX */
.product-information {
  background: #1e3932;
  color: #fff;
  min-height: 158px;
}

.product-information .product-information__inner {
  padding: 29px 16px 16px;
}

/* 商品情報のBOX内上部 */
.product-information .product-information__heading {
  margin-bottom: 8px;
}

/* ブランド名 */
.product-information .product-information__brand {
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.2rem;
  line-height: 1.4;
  margin-bottom: 8px;
  display: block;
}

/* ギフトラッピング対象 */
.product-information .product-information__gift {
  font-size: 1.1rem;
  margin-top: -5px;
}

.product-information .product-information__gift svg {
  fill: #fff;
  height: 12px;
  margin-right: 2px;
  width: 12px;
}

/* お気に入りボタン */
.product-information .product-information__favorite {
  cursor: pointer;
  height: 18px;
  margin: 5px 0 0 15px;
  width: 20px;
}

.product-information .product-information__favorite svg {
  fill: transparent;
  height: auto;
  width: 100%;
}

.product-information .product-information__favorite svg path:first-child {
  stroke: #f9f9f9;
}

.product-information .product-information__favorite.is-active svg {
  fill: #00a862;
  stroke: none;
}

.product-information .product-information__favorite.is-active svg path {
  stroke: none;
}

/* 商品名 */
.product-information .text-limit {
  font-size: 1.8rem;
  line-height: 1.55;
}

/* XXg（箱入り） */
.product-information .product-information__volume {
  font-size: 1.3rem;
  line-height: 22px;
  margin-bottom: 10px;
}
.product-information .product-information__volume + .product-information__price {
  margin-top: 0;
}
.product-information .product-information__volume:empty {
  display: none;
}

.product-information .product-information__volume .english {
  font-size: 1.3rem;
}

.product-information .product-information__volumeset div + div {
  margin-top: 25px;
}

.product-information .product-information__volumeset {
  margin-top: 25px;
}

/* 値段 */
.product-information .product-information__price {
  font-size: 2.8rem;
  word-break: break-all;
  margin-top: 30px;
}

.product-information .product-information__price--no-option {
  margin-top: 33px;
}

.product-information .product-information__price--no-favorite {
  margin-top: 25px;
}

/* 値段と同列に表示される選択サイズ */
.product-information .product-information__size {
  padding-right: 14px;
}

/* オンラインストア在庫 */
.product-information .product-information__stock {
  font-size: 1.1rem;
  line-height: 1;
  margin-top: 7px;
}

/* 個数選択 */
.product-information .selectbox-wrap {
  display: inline-block;
  min-width: 72px;
  min-height: 32px;
}

.product-information .selectbox-wrap svg {
  right: 12px;
}

.product-information .selectbox-wrap svg path {
  fill: rgba(255, 255, 255, 0.87);
}

.product-information .selectbox-wrap select {
  min-width: 96px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.7);
  color: #fff;
  font-size: 1.6rem;
  padding: 7px 30px 7px 17px;
}

/* ボタン類 */
.product-information .button {
  display: block;
  padding: 16px 26px;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}

.product-information .button + .button {
  margin-top: 24px;
}

/* お取り扱い店舗ボタン */
.product-information [class*=button--tertiary] {
  color: #00a862;
}

.product-information .button--tertiary-S {
  background: #fff;
}

.product-information .product-information__free + [class*=button--tertiary] {
  margin-bottom: 24px;
  margin-top: 22px;
}

.product-information .button-restock-notice {
  color: rgba(0, 0, 0, 0.87);
}

/* 再入荷お知らせボタン */
.product-information [class*=button--quaternary] {
  border: 1px solid #fff;
  color: #fff;
}

.product-information .button--quaternary-S {
  background: transparent;
}

.product-information .product-information__stock + .button {
  margin-top: 13px;
}

/* ホット, アイス */
.product-information .product-information__type {
  font-size: 1.3rem;
  line-height: 1.4;
  margin-top: 6.5px;
}

/* Short, Grande, Ventiなどの種類 */
.product-information .product-information__kind {
  font-size: 1.4rem;
  margin-top: 7.7px;
}

.product-information .product-information__kind > li:not(:first-child) {
  padding-left: 14px;
}

/*価格は税込価格です補足文。前に存在する要素によって余白を変える */
.product-information .product-information__supplement {
  color: rgba(212, 233, 226, 0.5);
  font-size: 1.1rem;
  line-height: 1;
  margin-top: 25px;
  clear: both;
}
.product-information .product-information__supplement--notice {
  line-height: 20px;
}

.product-information .product-information__kind + .product-information__supplement {
  margin-top: 25px;
}

.product-information .product-information__price + .product-information__supplement {
  margin-top: 25px;
}

.product-information .product-information__volumeset + .product-information__supplement {
  margin-top: 25px;
}

/* フリーフォーマット */
.product-information .product-information__free + .product-information__free {
  margin-top: 33px;
}

.product-information .product-information__free > li:not(:last-child) {
  margin-bottom: 9px;
}

.product-information .product-information__free > li {
  font-size: 1.3rem;
  line-height: 1.2;
}

.product-information .product-information__free > li p {
  font-size: 1.3rem;
}

.product-information .product-information__free > li p:last-child {
  padding-left: 14px;
}

.product-information .product-information__free {
  margin-top: 30px;
}

/* 値段, ボタンなどのセットが続く場合 */
:not(.product-information__cartset ~ .product-information__cartset).product-information__cartset {
  margin-top: 25px;
}

.product-information .product-information__cartset ~ .product-information__cartset {
  border-top: 2px solid rgba(0, 0, 0, 0.2);
  margin-top: 24px;
  padding-top: 24px;
}

.product-information .border-bottom {
  border-bottom: 2px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 24px;
  padding-bottom: 24px;
}
.product-information .border-bottom .product-information__cartset .button.button--tertiary-S.mb4,
.product-information .border-bottom .product-information__cartset .button.button--primary-S.mb4 {
  margin-bottom: 0 !important;
}

.error-msg {
  color: #d62b1f;
}

@media screen and (min-width: 520px) {
  .product-information .product-information__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (min-width: 1024px) {
  .product-information .product-information__price,
  .product-information .product-information__volumeset {
    margin-top: 70px;
  }
  .product-information .product-information__price--no-option {
    margin-top: 53px;
  }
  .product-information .product-information__price--no-favorite {
    margin-top: 45px;
  }
  .product-information .product-information__free {
    margin-top: 65px;
  }
  .product-information .product-information__volumeset .product-information__price {
    margin-top: 0;
  }
  :not(.product-information__cartset ~ .product-information__cartset).product-information__cartset {
    margin-top: 45px;
  }
  .product-information {
    min-height: 290px;
  }
  .product-information .product-information__heading {
    margin-bottom: 17px;
  }
  .product-information .product-information__inner {
    padding: 0;
    max-width: 624px;
  }
  .product-information .product-information__brand {
    font-size: 1.3rem;
  }
  .product-information .text-limit {
    font-size: 2.4rem;
    line-height: 1.7;
  }
  .product-information .product-information__favorite {
    margin: 13px 0 0 40px;
    transition: all 0.2s ease;
  }
  .product-information .product-information__favorite:hover {
    opacity: 0.9;
  }
  .product-information .product-information__gift {
    font-size: 1.3rem;
  }
  .product-information .product-information__gift svg {
    height: 16px;
    margin-right: 7px;
    width: 16px;
  }
  .product-information .product-information__volume {
    font-size: 1.4rem;
  }
  .product-information .product-information__volume + .product-information__price {
    margin-top: 0;
  }
  .product-information .product-information__volume .english {
    font-size: 1.4rem;
  }
  .product-information .product-information__stock {
    font-size: 1.3rem;
  }
  .product-information .product-information__type {
    font-size: 1.4rem;
    margin-top: 16px;
  }
  .product-information .product-information__kind {
    font-size: 1.6rem;
    margin-top: 21px;
  }
  .product-information .product-information__kind > li:not(:first-child) {
    padding-left: 16px;
  }
  .product-information .product-information__volumeset {
    display: flex;
  }
  .product-information .product-information__volumeset > * {
    margin-top: 0;
  }
  .product-information .product-information__volumeset div + div {
    margin-top: 0;
  }
  .product-information .product-information__volumeset > *:not(:first-child) {
    margin-left: 42px;
  }
  .product-information .product-information__free + .product-information__free {
    margin-top: 40px;
  }
  .product-information .product-information__free > li {
    font-size: 1.6rem;
  }
  .product-information .product-information__free > li:not(:last-child) {
    margin-bottom: 8px;
  }
  .product-information .product-information__free > li p:last-child {
    font-size: 1.6rem;
  }
  .product-information .product-information__free + [class*=button--tertiary] {
    margin-bottom: 31px;
    margin-top: 32px;
  }
  .product-information .selectbox-wrap {
    min-width: 88px;
  }
  .product-information .button--tertiary-S:hover {
    opacity: 0.9;
  }
  .product-information .button--quaternary-S:hover {
    opacity: 0.9;
  }
  .product-information .border-bottom {
    margin-bottom: 28px;
    padding-bottom: 28px;
  }
  .product-information .product-information__supplement {
    font-size: 1.2rem;
  }
  .product-information .product-information__price + .product-information__supplement,
  .product-information .product-information__kind + .product-information__supplement,
  .product-information .product-information__volumeset + .product-information__supplement,
  .product-information .product-information__supplement {
    left: 16px;
    bottom: 0;
    margin: 0;
    position: absolute;
  }
}
/*
 *
 * 商品説明
 *
 */
.product-explanation .product-explanation__inner {
  padding-top: 28px;
  padding-bottom: 40px;
}

.product-explanation h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  line-height: 1.23;
  margin-bottom: 24px;
}

.product-explanation .text-limit {
  font-size: 1.8rem;
  line-height: 1.55;
}

.product-explanation .product-explanation__texts p {
  font-size: 1.3rem;
  line-height: 1.69;
}

.product-explanation .product-explanation__texts p:not(:last-child) {
  margin-bottom: 20px;
}

.product-explanation .product-explanation__texts .text-bg {
  background: linear-gradient(transparent 0.01%, #d4e9e2 0.01%);
  display: inline;
}

.product-explanation .product-explanation__texts a {
  color: #00754a;
}

.product-explanation .list-notes > li {
  font-size: 1.1rem;
  line-height: 1.63;
  color: rgba(0, 0, 0, 0.7);
  position: relative;
}

.product-explanation .list-notes > li a {
  text-decoration: underline;
}

@media screen and (max-width: 1023.9px) {
  .product-explanation h2 ~ *:not(.text-limit) {
    margin-top: 16px;
  }
}
@media screen and (min-width: 1024px) {
  .product-explanation p a:hover {
    text-decoration: underline;
  }
  .product-explanation .list-notes > li a:hover {
    text-decoration: none;
  }
  .product-explanation .product-explanation__inner {
    padding-top: 60px;
    padding-bottom: 74px;
  }
  .product-explanation h2 {
    margin-bottom: 32px;
  }
  .product-explanation .text-limit {
    font-size: 2.4rem;
    line-height: 1.58;
  }
  .product-explanation .product-explanation__texts {
    font-weight: 400;
    margin-top: 24px;
  }
  .product-explanation .product-explanation__texts p {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .product-explanation .product-explanation__texts p:not(:last-child) {
    margin-bottom: 27px;
  }
  .product-explanation .list-notes {
    margin-top: 17px;
  }
  .product-explanation .list-notes > li {
    line-height: 1.81;
  }
  .product-explanation .list-notes > li::before {
    line-height: 1.81;
  }
}
/*
 *
 * OS利用ガイド
 *
 */
.osguide-wrap {
  background: #fff;
  border-bottom: 2px solid rgba(0, 0, 0, 0.87);
}

.osguide-wrap .osguide-wrap__inner {
  padding-top: 32px;
  padding-bottom: 40px;
}

.osguide-wrap h3 {
  font-size: 1.3rem;
  line-height: 34px;
  margin-bottom: 24px;
}

.osguide-wrap .osguide-wrap__lists li {
  font-size: 1.3rem;
  letter-spacing: 0.14px;
  line-height: 22px;
  margin-bottom: 16px;
}

.osguide-wrap .osguide-wrap__singlepage {
  font-weight: 500;
  margin-top: 18px;
}

.osguide-wrap .osguide-wrap__singlepage > li:last-child {
  margin-bottom: 0;
}

.osguide-wrap .osguide-wrap__lists ul:last-child > li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
  .osguide-wrap {
    border-bottom: 4px solid rgba(0, 0, 0, 0.87);
  }
  .osguide-wrap .osguide-wrap__inner {
    padding-top: 60px;
    padding-bottom: 76px;
  }
  .osguide-wrap h3 {
    font-size: 2rem;
    margin-bottom: 36px;
    color: #212121;
  }
  .osguide-wrap .osguide-wrap__lists {
    display: flex;
    font-weight: 500;
  }
  .osguide-wrap .osguide-wrap__lists > ul + ul {
    margin-left: 5.425%;
  }
  .osguide-wrap .osguide-wrap__lists li {
    font-size: 1.4rem;
    color: #212121;
  }
  .osguide-wrap .osguide-wrap__lists li:last-child {
    margin-bottom: 0;
  }
  .osguide-wrap .osguide-wrap__lists > ul.osguide-wrap__singlepage {
    font-weight: 600;
    margin-left: 12.84%;
    margin-top: 0;
  }
}
/*
 *
 * 注釈エリア
 *
 */
.page-notes {
  background: rgb(237, 235, 233);
}

.page-notes .page-notes__inner {
  background: rgba(0, 0, 0, 0.05);
  padding-top: 29px;
  padding-bottom: 29px;
}

.page-notes .page-notes__list > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
  padding-left: 11px;
  position: relative;
}

.page-notes .page-notes__list > li::before {
  color: rgba(0, 0, 0, 0.7);
  content: "※";
  display: block;
  font-size: 1.1rem;
  left: 0;
  line-height: 1.63;
  position: absolute;
  top: 0;
}

@media screen and (min-width: 1024px) {
  .page-notes .page-notes__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }
  .page-notes .page-notes__list > li {
    line-height: 1.81;
    padding-left: 12px;
  }
  .page-notes .page-notes__list > li::before {
    font-size: 1.2rem;
    line-height: 1.7;
  }
}
/*
 *
 * MORE INFOMATION
 *
 */
.more-information {
  border-top: 8px solid #edebe9;
}

.more-information .more-information__inner {
  padding: 30px 16px 34px;
}

.more-information h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.4rem;
  line-height: 1.14;
  margin-bottom: 28px;
}

.more-information .more-information__section + .more-information__section {
  margin-top: 20px;
}

.more-information .more-information__section.is-hidden {
  display: none;
}

.more-information .more-information__section .js-more-desc.is-hidden {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}

.more-information .more-information__section p {
  font-size: 1.3rem;
  line-height: 1.69;
}

.more-information .more-information__image {
  padding-bottom: 26px;
}

.more-information .more-information__image img {
  width: 100%;
}

.more-information .more-information__section .more-information__subtitle {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.55;
  margin-bottom: 10px;
}

.more-information .list-midpoint > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
  padding-left: 11px;
  position: relative;
}

.more-information .list-midpoint > li::before {
  color: rgba(0, 0, 0, 0.7);
  content: "・";
  display: block;
  font-size: 1.1rem;
  left: 0;
  line-height: 1.63;
  position: absolute;
  top: 0;
}

.more-information .clear-both::after {
  content: "";
  display: table;
  clear: both;
}

.more-information .button--more {
  color: #00754a;
  cursor: pointer;
  display: block;
  font-size: 1.3rem;
  margin: 10px 0 0 auto;
}

@media screen and (min-width: 1024px) {
  .more-information .more-information__inner {
    padding-top: 63px;
    padding-bottom: 81px;
  }
  .more-information h2 {
    font-size: 1.3rem;
    margin-bottom: 44px;
  }
  .more-information .more-information__section + .more-information__section {
    margin-top: 53px;
  }
  .more-information .more-information__section .js-more-desc.is-hidden {
    -webkit-line-clamp: 8;
  }
  .more-information .more-information__section p {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .more-information .more-information__image {
    float: left;
    padding-right: 5.228%;
    width: 52.446%;
  }
  .more-information .more-information__section .more-information__subtitle {
    font-size: 2.4rem;
    line-height: 1.6;
    margin-bottom: 26px;
  }
  .more-information .more-information__texts {
    margin-left: auto;
    width: 73.6945%;
  }
  .more-information .list-midpoint > li {
    display: flex;
    font-size: 1.5rem;
    line-height: 1.6;
    padding-left: 15px;
  }
  .more-information .list-midpoint > li::before {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .more-information .button--more {
    font-size: 1.5rem;
    margin: 10px 0 0 auto;
    transition: all 0.2s ease;
  }
  .more-information .button--more:hover {
    opacity: 0.9;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1039px) {
  .more-information .more-information__image {
    width: calc((100% + 32px) / 2);
    padding-right: 32px;
  }
}
/*
 *
 * FROM BARISTA
 *
 */
.from-barista {
  border-top: 8px solid #edebe9;
  background: #d4e9e2;
}

.from-barista .from-barista__inner {
  padding: 31px 16px 37px;
}

.from-barista .from-barista__date {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.42;
  margin-bottom: 27px;
}

.from-barista .from-barista__heading {
  margin-bottom: 24px;
}

.from-barista .from-barista__heading svg {
  height: auto;
  width: 100%;
}

.from-barista .from-barista__logo01 {
  width: 24.32%;
}

.from-barista .from-barista__logo02 {
  width: 39.98%;
}

.from-barista .from-barista__picture {
  margin-left: 19px;
  margin-right: 13px;
  width: 69px;
}

.from-barista .from-barista__nameset {
  color: #1e3932;
  font-size: 9px;
  left: 0;
  line-height: 1;
  position: absolute;
  transform: scale(0.9);
  transform-origin: top left;
  top: 11.8vw;
}

.from-barista .from-barista__name {
  padding-left: 5px;
}

.from-barista .from-barista__title {
  color: #1e3932;
  font-size: 1.8rem;
  line-height: 1.55;
  margin-bottom: 16px;
}

.from-barista .from-barista__text {
  color: #1e3932;
  font-size: 1.3rem;
  line-height: 1.69;
}
.from-barista .from-barista__text a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}

@media screen and (min-width: 1024px) {
  .from-barista .from-barista__inner {
    padding-top: 52px;
    padding-bottom: 87px;
  }
  .from-barista .from-barista__date {
    color: rgba(0, 0, 0, 0.58);
    font-size: 1.2rem;
    font-weight: normal;
    line-height: 1.66;
    margin-bottom: 8px;
  }
  .from-barista .from-barista__heading {
    margin-bottom: 40px;
  }
  .from-barista .from-barista__logo01 {
    width: 111.99px;
  }
  .from-barista .from-barista__logo02 {
    width: 185.11px;
  }
  .from-barista .from-barista__picture {
    margin-left: 24px;
    margin-right: 22px;
    width: 91.65px;
  }
  .from-barista .from-barista__nameset {
    font-size: 1.4rem;
    transform: scale(1);
    top: 55px;
  }
  .from-barista .from-barista__name {
    font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 1.3rem;
    font-weight: bold;
    padding-left: 8px;
  }
  .from-barista .from-barista__title {
    font-size: 2.3rem;
    line-height: 1.65;
    margin-bottom: 24px;
    padding: 0 16.102%;
  }
  .from-barista .from-barista__text {
    font-size: 1.5rem;
    line-height: 1.6;
    padding: 0 16.102%;
  }
  .from-barista .from-barista__text a {
    display: inline;
    width: auto;
    margin-left: unset;
  }
}
@media screen and (max-width: 1023.9px) and (min-width: 520px) {
  .from-barista .from-barista__nameset {
    top: 8.8vw;
  }
}
@media screen and (max-width: 519px) and (min-width: 376px) {
  .from-barista .from-barista__nameset {
    top: 10vw;
  }
}
/*
 *
 * download
 *
 */
.download {
  border-top: 8px solid #edebe9;
}

.download .download__inner {
  padding: 32px 16px 40px;
}

.download .download__inner h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.4rem;
  margin-bottom: 29px;
}

.download [class*=button--pdf] {
  background: #fff;
  border: 1px solid #00754a;
  border-radius: 18px;
  color: #00754a;
}

.download .button--pdf-small {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 28px;
  padding: 6px 16px;
}

.download .button--pdf-small svg {
  margin-left: 9px;
}

.download .download__lead {
  font-size: 1.3rem;
  line-height: 1.69;
  margin-bottom: 21px;
}

.download .banner--acrobat {
  display: block;
  width: 158px;
}

@media screen and (min-width: 1024px) {
  .download .download__inner {
    padding-top: 55px;
    padding-bottom: 80px;
  }
  .download .download__inner h2 {
    font-size: 1.4rem;
    margin-bottom: 32px;
  }
  .download .button--pdf-small {
    margin-bottom: 20px;
  }
  .download .button--pdf-small:hover {
    opacity: 0.9;
  }
  .download .download__lead {
    font-size: 1.4rem;
    line-height: 1.71;
    margin-bottom: 20px;
  }
  .download .banner--acrobat {
    transition: all 0.2s ease;
  }
  .download .banner--acrobat:hover {
    opacity: 0.9;
  }
}
/*
 *
 * 抽出方法
 *
 */
.brew-method {
  border-top: 8px solid #edebe9;
}

.brew-method .brew-method__inner {
  padding: 28px 16px 36px;
}

.brew-method .brew-method__inner h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  margin-bottom: 23px;
}

.brew-method .brew-method__list > li + li {
  margin-top: 23px;
}

.brew-method .brew-method__subtitle {
  font-size: 1.8rem;
  line-height: 1.55;
  margin-bottom: 16px;
}

.brew-method .brew-method__lead {
  font-size: 1.3rem;
  line-height: 1.69;
}

.brew-method .list-notes {
  margin-top: 9px;
}

.brew-method .list-notes > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.8;
  padding-left: 11px;
  position: relative;
}

.brew-method .list-notes > li::before {
  color: rgba(0, 0, 0, 0.7);
  content: "※";
  display: block;
  font-size: 1.1rem;
  left: 0;
  line-height: 1.8;
  position: absolute;
  top: 0;
}

@media screen and (min-width: 1024px) {
  .brew-method .brew-method__inner {
    padding-top: 32px;
    padding-bottom: 92px;
  }
  .brew-method .brew-method__inner h2 {
    font-size: 1.3rem;
    margin-bottom: 32px;
  }
  .brew-method .brew-method__list {
    display: flex;
    flex-wrap: wrap;
    margin: -32px -16px 0;
  }
  .brew-method .brew-method__list > li {
    padding: 32px 16px 0;
    width: 50%;
  }
  .brew-method .brew-method__list > li + li {
    margin-top: 0;
  }
  .brew-method .brew-method__subtitle {
    font-size: 2.4rem;
    margin-bottom: 24px;
  }
  .brew-method .brew-method__lead {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .brew-method .list-notes {
    margin-top: 17px;
  }
  .brew-method .list-notes > li {
    color: rgba(0, 0, 0, 0.5);
    font-weight: normal;
  }
  .brew-method .list-notes > li::before {
    color: rgba(0, 0, 0, 0.5);
    font-size: 1.2rem;
    font-weight: normal;
  }
}
/*
 *
 * MEMBERSHIP SERVICE
 *
 */
.membership-service {
  border-top: 8px solid #edebe9;
  background: #d4e9e2;
}

.membership-service .membership-service__inner {
  padding: 28px 16px 32px;
}

.membership-service .membership-service__inner h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  margin-bottom: 67px;
}

.membership-service .membership-service__thumb {
  margin: 0 auto 58px;
  width: 236px;
}

.membership-service .membership-service__subtitle {
  color: #1d3831;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.55;
  margin-bottom: 24px;
}

.membership-service .membership-service__subtitle span {
  font-size: 1.8rem;
}

.membership-service .membership-service__lead {
  color: #1d3831;
  font-size: 1.3rem;
  line-height: 1.69;
}

.membership-service .list-notes {
  margin-top: 8px;
}

.membership-service .list-notes > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
  padding-left: 12px;
  position: relative;
}

.membership-service .list-notes > li::before {
  color: rgba(0, 0, 0, 0.7);
  content: "※";
  display: block;
  font-size: 1.1rem;
  font-weight: bold;
  left: 0;
  line-height: 1.8;
  position: absolute;
  top: 0;
}

.membership-service .list-links {
  margin-top: 24px;
}

.membership-service .list-links > li {
  text-align: right;
}

.membership-service .list-links > li:first-child {
  margin-bottom: 24px;
}

.membership-service .list-links > li:nth-child(2) {
  margin-bottom: 16px;
}

.membership-service .text-link-green {
  font-size: 1.3rem;
  font-weight: 500;
}

.membership-service .button--regist {
  border: 1px solid #00754a;
  color: #00754a;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  padding: 5px 16px;
}

.membership-service .button--card {
  background: #00754a;
  color: #fff;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 6px 16px;
}

@media screen and (min-width: 1024px) {
  .membership-service .membership-service__inner {
    padding-top: 55px;
    padding-bottom: 80px;
  }
  .membership-service .membership-service__inner h2 {
    margin-bottom: 44px;
  }
  .membership-service .membership-service__desc {
    display: flex;
    justify-content: space-between;
    padding-left: 2.867%;
  }
  .membership-service .membership-service__thumb {
    margin: 0;
    padding-top: 90px;
    width: 38.89%;
  }
  .membership-service .membership-service__texts {
    width: 48.612%;
  }
  .membership-service .membership-service__subtitle {
    font-size: 2.4rem;
    margin-bottom: 24px;
  }
  .membership-service .membership-service__subtitle span {
    font-size: 2.4rem;
  }
  .membership-service .membership-service__lead {
    color: #1d3831;
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .membership-service .list-notes {
    margin-top: 17px;
  }
  .membership-service .list-notes > li::before {
    font-weight: normal;
    line-height: 1.63;
  }
  .membership-service .list-links {
    margin-top: 40px;
  }
  .membership-service .list-links > li {
    display: inline-block;
    margin-top: 18px;
    text-align: left;
  }
  .membership-service .list-links > li:first-child {
    display: block;
    margin-bottom: 0;
  }
  .membership-service .list-links > li:nth-child(2) {
    margin-bottom: 0;
    margin-right: 24px;
  }
  .membership-service .button--regist:hover {
    opacity: 0.9;
  }
  .membership-service .button--card:hover {
    opacity: 0.9;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1039px) {
  .membership-service .membership-service__texts {
    width: 50%;
  }
}
/*
 *
 * HOW TO
 *
 */
.howto {
  border-top: 8px solid #edebe9;
}

.howto .howto__inner {
  padding: 32px 16px 33px;
}

.howto .howto__inner h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.4rem;
  margin-bottom: 29px;
}

.howto .howto__movie {
  border-radius: 12px;
  height: 0;
  padding-top: 56.2682215743%;
  margin-bottom: 25px;
  overflow: hidden;
  width: 100%;
}

.howto .howto__movie iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.howto .howto__subtitle {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.55;
  margin-bottom: 16px;
}

.howto .howto__lead {
  font-size: 1.3rem;
  line-height: 1.69;
}

@media screen and (min-width: 1024px) {
  .howto .howto__inner {
    padding-top: 55px;
    padding-bottom: 80px;
  }
  .howto .howto__inner h2 {
    font-size: 1.3rem;
    margin-bottom: 44px;
  }
  .howto .howto__desc {
    display: flex;
    justify-content: space-between;
  }
  .howto .howto__movie {
    padding-top: 26.560575%;
    margin-bottom: 0;
    width: 47.2188%;
  }
  .howto .howto__texts {
    width: 47.2188%;
  }
  .howto .howto__subtitle {
    font-size: 2.4rem;
    line-height: 1.58;
    margin-bottom: 24px;
  }
  .howto .howto__lead {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1039px) {
  .howto .howto__movie {
    width: calc((100% - 32px) / 2);
  }
  .howto .howto__texts {
    width: calc((100% - 32px) / 2);
  }
}
/*
 *
 * バリスタおすすめポイント
 *
 */
.recommend-point {
  border-top: 8px solid #edebe9;
  background: #d4e9e2;
}

.recommend-point .recommend-point__inner {
  padding: 30px 16px 37px;
}

.recommend-point .recommend-point__inner h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  margin-bottom: 30px;
}

.recommend-point .recommend-point__list > li + li {
  margin-top: 24px;
}

.recommend-point .recommend-point__image {
  width: 25.657%;
}
.recommend-point .recommend-point__image img {
  border-radius: 50%;
}

.recommend-point .recommend-point__texts {
  flex: 1;
  padding-left: 16px;
}

.recommend-point .recommend-point__texts p {
  color: #1e3932;
  font-size: 1.3rem;
  line-height: 1.69;
}

.recommend-point .recommend-point__texts p.recommend-point__subtitle {
  font-size: 1.4rem;
  line-height: 1.57;
  margin-bottom: 16px;
}

@media screen and (min-width: 1024px) {
  .recommend-point .recommend-point__inner {
    padding-top: 52px;
    padding-bottom: 80px;
  }
  .recommend-point .recommend-point__inner h2 {
    margin-bottom: 44px;
  }
  .recommend-point .recommend-point__list {
    display: flex;
    flex-wrap: wrap;
    margin: -62px -31px 0;
  }
  .recommend-point .recommend-point__list > li {
    padding: 62px 31px 0;
    width: 33.3333333333%;
  }
  .recommend-point .recommend-point__list > li + li {
    margin-top: 0;
  }
  .recommend-point .recommend-point__image {
    width: 24.86%;
  }
  .recommend-point .recommend-point__texts p {
    font-size: 1.4rem;
    line-height: 1.7;
  }
  .recommend-point .recommend-point__texts p.recommend-point__subtitle {
    font-size: 1.5rem;
    line-height: 1.57;
    margin-bottom: 16px;
  }
}
/*
 *
 * 商品仕様
 *
 */
.ingredients {
  border-top: 8px solid #edebe9;
}

.ingredients .ingredients__inner {
  padding-top: 32px;
  padding-bottom: 32px;
}

.ingredients .ingredients__inner h2 {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  margin-bottom: 6px;
}

.ingredients .ingredients__list > li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  line-height: 1.5;
  margin-bottom: 14px;
  padding-bottom: 14px;
}

.ingredients .ingredients__list > li:first-child {
  margin-top: 14px;
}

.ingredients .ingredients__list > li:last-child {
  margin-bottom: 0;
}

.ingredients .ingredients__list > li dt {
  font-size: 1.1rem;
  font-weight: normal;
}

.ingredients .ingredients__list > li dd {
  flex: 1;
  font-size: 1.1rem;
  font-weight: 500;
  padding-left: 20px;
}

.ingredients .list-notes {
  margin-top: 11px;
}

.ingredients .list-notes > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
}

.ingredients .list-notes > li::before {
  color: rgba(0, 0, 0, 0.7);
  content: "※";
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.63;
}

@media screen and (max-width: 1023px) {
  .ingredients .hidden-sp {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .ingredients .hidden-pc {
    display: none !important;
  }
  .ingredients .ingredients__inner {
    padding-top: 32px;
    padding-bottom: 80px;
  }
  .ingredients .ingredients__inner h2 {
    margin-bottom: 32px;
  }
  .ingredients .ingredients__inner .flex.hidden-sp {
    margin: 0 -31px;
  }
  .ingredients .ingredients__list {
    padding: 0 31px;
    width: 50%;
  }
  .ingredients .ingredients__list > li {
    border-bottom: none;
    line-height: 1.71;
    margin: 0;
    padding: 0;
  }
  .ingredients .ingredients__list > li:first-child {
    margin-top: 0;
  }
  .ingredients .ingredients__list > li:first-child .ingredients__item {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
  }
  .ingredients .ingredients__item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    padding: 16px 0;
  }
  .ingredients .ingredients__list > li dt {
    font-size: 1.4rem;
  }
  .ingredients .ingredients__list > li dd {
    font-size: 1.4rem;
    padding-left: 20px;
  }
  .ingredients .list-notes {
    margin-top: 18px;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1039px) {
  .ingredients .ingredients__inner .flex.hidden-sp {
    margin: 0 -16px;
  }
  .ingredients .ingredients__list {
    padding: 0 16px;
  }
}
/*! screen >= 520px */
@media screen and (min-width: 520px) {
  .container-pc, .more-information .more-information__inner,
  .from-barista .from-barista__inner,
  .download .download__inner,
  .brew-method .brew-method__inner,
  .membership-service .membership-service__inner,
  .howto .howto__inner,
  .recommend-point .recommend-point__inner {
    max-width: 1264px;
    padding-left: 40px;
    padding-right: 40px;
    margin: 0 auto;
  }
}
/*! purgecss end ignore */
.product-image .products-tag-01 + .products-tag-01 {
  left: 85px;
}

.card-item.food-pairing-item {
  display: flex;
  flex-shrink: 1;
}

.origin-select {
  display: none;
}

.custom-select {
  position: relative;
}
.custom-select.opened .custom-select__trigger {
  border-color: #00754a;
  outline-color: #00754a;
}
.custom-select.opened .custom-select__trigger svg {
  transform: rotate(180deg) translate3d(0, 50%, 0);
}
.custom-select.opened .custom-select__option-list {
  padding: 4px 0;
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  z-index: 2;
}

.custom-select__trigger {
  display: block;
  position: relative;
  padding: 3px 30px 3px 23.5px;
  font-size: 1.6rem;
  font-weight: 600;
  color: #ffffff;
  background: transparent;
  border: 1px solid hsla(0, 0%, 100%, 0.7);
  outline: 1px solid transparent;
  border-radius: 8px;
  cursor: pointer;
}
.custom-select__trigger svg {
  position: absolute;
  display: block;
  width: 14px;
  height: 8px;
  top: 50%;
  right: 16px;
  transform: translate3d(0, -50%, 0);
}
.custom-select__trigger svg path {
  fill: rgba(0, 0, 0, 0.87);
}

.custom-select__option-list {
  max-height: 202px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  min-width: 100%;
  margin-top: 8px;
  border-radius: 4px;
  box-sizing: border-box;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
  background: #fff;
  transition: all 0.2s ease;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  overflow-y: auto;
}

.custom-select__option {
  display: block;
  padding: 6px 16px;
  font-size: 1.6rem;
  font-weight: 400;
  background: #fff;
  color: #000000;
  cursor: pointer;
  word-break: break-all;
  transition: all 0.2s ease;
}
.custom-select__option.active {
  background-color: rgba(0, 0, 0, 0.06);
}
.custom-select__option.disabled {
  pointer-events: none;
  background: #ccc;
}

a.disabled {
  pointer-events: none;
  background: #ccc;
}

@media (min-width: 520px) {
  .custom-select__option:hover {
    background: rgba(0, 0, 0, 0.06);
  }
}
.image-carousel-wrap .zoom-area {
  z-index: 999;
}
.image-carousel-wrap .zoom-area.sp-active {
  z-index: var(--z-index-modal);
}

.product-title {
  flex-grow: 1;
  position: relative;
}

.relevant-content {
  height: auto;
}

.card-item > a {
  height: auto;
}

.button--primary-S-floating.button--secondary {
  background: #fff;
}

.cart-float-multi-options .gray-background.show {
  z-index: var(--z-index-modal);
}
.cart-float-multi-options .float-product-selection,
.cart-float-multi-options .float-cart,
.cart-float-multi-options .cart-error,
.cart-float-multi-options .favorite-dialog {
  z-index: var(--z-index-modal);
}

.webview-group {
  display: inline-block;
  width: 100%;
}

.products-tag-01.products-tag-01--white.products-tag--large .english {
  font-weight: 600;
}

@media screen and (min-width: 520px) {
  .image-carousel-wrap .focus-item .image-carousel__item__image {
    height: auto;
  }
}
@media screen and (min-width: 1024px) {
  .product-image .products-tag-01 + .products-tag-01 {
    left: 95px;
  }
}
.search-result-page {
  padding-bottom: 80px;
}
.search-result-page h2 {
  margin-top: 45px;
  font-weight: bold;
}
.search-result-page .page-content {
  display: flex;
  margin-top: 32px;
}
.search-result-page .page-content .list-item {
  flex-grow: 1;
}
.search-result-page .top-list {
  display: flex;
  margin-bottom: 32px;
  justify-content: space-between;
  align-items: center;
}
.search-result-page .local-wrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 40px 4px;
}
.search-result-page .local-wrap + .line-gray {
  margin: 40px 0 32px;
  color: rgba(0, 0, 0, 0.3);
}
.search-result-page .empty-value {
  text-align: center;
}
.search-result-page .empty-value .not-found {
  font-size: 1.3rem;
  margin-top: 26px;
  margin-bottom: 16px;
  color: rgba(0, 0, 0, 0.7);
  opacity: 0.3;
}
.search-result-page .selectbox-wrap.selectbox--pager {
  min-width: 120px;
}
@media screen and (min-width: 520px) {
  .search-result-page .local-wrap {
    grid-gap: 40px 8px;
  }
  .search-result-page .top-list {
    margin-bottom: 52px;
  }
  .search-result-page .empty-value .not-found {
    margin-top: 52px;
    margin-bottom: 30px;
  }
  .search-result-page .page-content {
    margin-top: 52px;
  }
}
@media screen and (min-width: 812px) {
  .search-result-page .local-wrap {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (min-width: 1024px) {
  .search-result-page .local-wrap {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media screen and (min-width: 1040px) {
  .search-result-page .local-wrap {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (min-width: 1264px) {
  .search-result-page .local-wrap {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.search-result-page .custom-select {
  text-align: right;
}
.search-result-page .custom-select .custom-select__trigger {
  text-align: left;
  min-width: 15rem;
  background-color: #f9f9f9;
}
.search-result-page .custom-select .custom-select__option-list {
  text-align: left;
}
@media screen and (max-width: 1039px) {
  .search-result-page .page-content .sidebar {
    display: none;
  }
}

.search-bar {
  padding-top: 48px;
  padding-bottom: 24px;
  background-color: #f9f9f9;
}

.tag-bar .filter-tag {
  align-items: center;
}
.tag-bar .title {
  flex: 0 0 auto;
}

@media screen and (max-width: 600px) {
  .search-bar {
    padding-top: 40px;
    padding-bottom: 24px;
  }
  .search-bar .flex-grow {
    width: 100%;
  }
  .tag-bar {
    display: flex;
    overflow-x: scroll;
  }
  .tag-bar .other-tags {
    height: 32px;
    display: flex;
  }
  .tag-bar .filter-tag {
    height: 32px;
    flex: 0 0 auto;
  }
}
.search-page {
  margin: 0 auto;
}
.search-page .page-title {
  text-align: center;
  font-weight: bold;
  text-transform: uppercase;
}

.page-thankyou {
  line-height: 1.42857143;
  letter-spacing: 0.26px;
}
.page-thankyou .text-link-green {
  font-weight: 500;
}
.page-thankyou .text-link-green:hover {
  opacity: 0.7;
}
.page-thankyou .container-cart {
  color: #212121;
  min-width: 280px;
  padding: 0 15px;
  width: auto;
}
.page-thankyou .breadcrumb-cart {
  border-bottom: 1px solid #e5e5e5;
}
.page-thankyou .breadcrumb-cart-list {
  display: flex;
  flex-wrap: wrap;
  padding: 18px 0;
  color: #4c4c4c;
}
.page-thankyou .breadcrumb-cart-item.current {
  color: #212121;
  font-weight: 700;
}
.page-thankyou .breadcrumb-cart-item {
  display: flex;
  align-items: center;
  font-size: 13px;
  margin-left: 16px;
  -moz-column-gap: 16px;
       column-gap: 16px;
}
.page-thankyou .breadcrumb-cart-item:first-child {
  margin-left: 0;
}
.page-thankyou .breadcrumb-cart-item:not(:last-child)::after {
  content: "";
  display: block;
  background: var(--breadcrumb-arrow) no-repeat;
  width: 1em;
  height: 1em;
}
.page-thankyou .page-title {
  height: 144px;
  display: inline-flex;
  align-items: center;
  font-weight: bold;
  font-size: 2.4rem;
}
.page-thankyou .thanks-image {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  padding-bottom: 32px;
}
.page-thankyou .thanks-image .img-wrap {
  display: block;
  width: 295px;
  height: 180px;
  margin: 0 auto;
}
.page-thankyou .order-info {
  width: -moz-fit-content;
  width: fit-content;
  overflow: hidden;
  border: 2px solid rgba(0, 0, 0, 0.8705882353);
  padding: 18px 48px;
  margin: 0 auto;
}
.page-thankyou .order-info .order-id {
  font-size: 15px;
  font-weight: 700;
  font-family: "Sodosans", sans-serif;
  line-height: 21px;
}
.page-thankyou .order-info .label {
  font-weight: 500;
  font-size: 14px;
  padding-right: 40px;
}
.page-thankyou .order-confirm {
  margin: 0 auto;
  text-align: center;
}
.page-thankyou .order-confirm .thanks-message {
  margin: 32px 0 24px 0;
  line-height: 1.42857143;
}
.page-thankyou .order-confirm p {
  line-height: 1.5;
}
.page-thankyou .button-confirm {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  padding: 64px 0;
}
.page-thankyou .page-notes {
  margin-top: 16px;
}
.page-thankyou .page-notes .page-notes__inner {
  font-size: 11px;
  line-height: 1.42857143;
  color: rgba(0, 0, 0, 0.7);
  padding: 28px 0;
}
.page-thankyou .page-notes__list .title {
  font-weight: bold;
}
.page-thankyou .page-notes__list a {
  text-decoration: underline;
  color: #3d3935;
}
.page-thankyou .page-notes__list a:hover {
  text-decoration: none;
}

@media (max-width: 1023px) {
  .page-thankyou .page-title {
    font-size: 18px;
    height: 104px;
  }
  .page-thankyou .order-confirm {
    text-align: left;
    padding-bottom: 16px;
  }
  .page-thankyou .order-info {
    padding: 18px 48px;
  }
  .page-thankyou .order-info .order-id {
    line-height: 21px;
  }
  .page-thankyou .order-info .label {
    line-height: 21px;
  }
  .page-thankyou .thanks-image {
    padding-bottom: 16px;
  }
  .page-thankyou .order-confirm {
    font-size: 13px;
  }
  .page-thankyou .order-confirm .thanks-message {
    margin: 31px 0 24px 0;
    line-height: 1.42857143;
  }
  .page-thankyou .order-confirm .text-link-green {
    font-size: 13px;
  }
  .page-thankyou .button-confirm {
    padding-top: 24px;
  }
  .page-thankyou .page-notes .page-notes__inner {
    padding: 32px 0;
  }
}
@media (min-width: 1024px) {
  .page-thankyou .container-cart {
    padding: 0 128px;
  }
}
@media (min-width: 1040px) {
  .page-thankyou .container-cart {
    max-width: 1696px;
    margin: 0 auto;
  }
  .page-thankyou .order-info .order-id {
    line-height: 20px;
  }
}
@media (max-width: 1039px) {
  .page-thankyou .breadcrumb-cart-list {
    padding: 8px 0;
  }
  .page-thankyou .breadcrumb-cart-item {
    -moz-column-gap: 8px;
         column-gap: 8px;
    margin-left: 8px;
    font-size: 12px;
  }
  .page-thankyou .breadcrumb-cart-item:first-child {
    margin-left: 0;
  }
  .page-thankyou .breadcrumb-cart-item:not(:last-child)::after {
    width: 12px;
    height: 12px;
    background-size: 100%;
  }
}
@media (max-width: 519px) {
  .page-thankyou .order-info {
    padding: 18px 20px;
  }
  .page-thankyou .order-info .order-id {
    font-size: 14px;
    line-height: 18px;
  }
  .page-thankyou .order-info .label {
    font-size: 13px;
    padding-right: 20px;
    vertical-align: top;
    line-height: 18px;
  }
}
@media (max-width: 340px) {
  .page-thankyou .page-title {
    font-size: 1.8rem;
  }
  .page-thankyou .order-confirm {
    text-align: left;
    padding-bottom: 16px;
  }
  .page-thankyou .breadcrumb-cart-item {
    -moz-column-gap: 8px;
         column-gap: 8px;
    margin-left: 8px;
    font-size: 12px;
  }
  .page-thankyou .breadcrumb-cart-item:first-child {
    margin-left: 0;
  }
  .page-thankyou .breadcrumb-cart-item:not(:last-child)::after {
    width: 8px;
    height: 8px;
    background-size: 100%;
  }
  .page-thankyou .order-info {
    padding: 18px 20px;
  }
  .page-thankyou .order-confirm {
    padding-bottom: 0;
  }
  .page-thankyou .button-confirm {
    padding-top: 40px;
  }
}
#e-ticket {
  min-width: 320px;
}
#e-ticket .search-tag {
  font-weight: 400;
  margin-right: 0;
}
#e-ticket .tag-carousel {
  margin-bottom: 25px;
  position: relative;
}
#e-ticket .tag-carousel-groupe__label {
  font-size: 1.1rem;
  margin-right: 0;
}
#e-ticket .tag-carousel-groupe__list > li {
  margin-left: 7px;
}
#e-ticket .tag-carousel__inner {
  display: flex;
  margin-bottom: 0;
  overflow-x: scroll;
  scrollbar-width: none;
}
#e-ticket .heading-03 {
  font-size: 1.8rem;
  line-height: 2.8rem;
  padding-bottom: 29px;
  font-weight: bold;
  gap: 5px;
}
#e-ticket .heading-sub__desc {
  font-size: 11px;
  line-height: 1.6;
  color: rgba(0, 0, 0, 0.7019607843);
}
#e-ticket .heading-sub {
  font-size: 12px;
  font-weight: bold;
  line-height: 1.75;
}
#e-ticket .heading-04.english {
  font-size: 2.4rem;
  line-height: 3.6rem;
}
#e-ticket .top-list {
  margin-bottom: 24px;
}
#e-ticket .heading-05.english {
  font-size: 1.6rem;
  line-height: 2.4rem;
}
#e-ticket .page-notes .page-notes__list > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
  padding-left: 11px;
  position: relative;
}
#e-ticket .page-notes .page-notes__inner {
  padding-bottom: 29px;
  padding-top: 29px;
  background: rgba(0, 0, 0, 0.05);
}
#e-ticket .caption-01 {
  font-size: 1.3rem;
  line-height: 2.2rem;
}
#e-ticket .empty-value h3 {
  line-height: 1.75;
}
#e-ticket .list-item {
  width: 100%;
}
#e-ticket .list-item .card__inner__text {
  flex-grow: 1;
  padding: 0 4px;
}
#e-ticket .list-item .card__inner__text > .text-limit {
  margin-top: 0px;
}
#e-ticket .list-item .card__inner__text > span + span {
  margin-top: 13px;
  font-size: 14px;
}
#e-ticket .sidebar {
  flex-basis: 224px;
  flex-shrink: 0;
}
#e-ticket .sidebar .title-filter {
  background-color: #f9f9f9;
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  color: rgba(0, 0, 0, 0.3);
  font-size: 13px;
  font-weight: 700;
  line-height: 2.3846153846;
  margin-bottom: 19px;
  padding: 0 8px;
}
#e-ticket .sidebar .list-categories {
  padding: 0 8px;
}
#e-ticket .sidebar .list-categories .item-category {
  margin-top: 16px;
}
#e-ticket .sidebar .line-gray {
  margin: 43px 0;
}
#e-ticket .sidebar .toggle {
  margin-bottom: 43px;
}
#e-ticket .sidebar.pc-only .checkbox-group,
#e-ticket .sidebar.pc-only .list-categories {
  margin-bottom: 32px;
  padding: 0 0 0 8px;
}
#e-ticket .checkbox-group .checkbox-item {
  line-height: 0;
}
#e-ticket .checkbox-group .checkbox-item + .checkbox-item {
  margin-top: 16px;
}
#e-ticket .sidebar .radio-item {
  line-height: 0;
}
#e-ticket .sidebar .radio-item + .radio-item {
  margin-top: 16px;
}
#e-ticket .sidebar .checkbox__label-text,
#e-ticket .sidebar .radio__label-text {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.3rem;
  line-height: 1.6rem;
  margin-top: 2px;
}
#e-ticket .radio-item-sub {
  padding: 6px 0 0 30px;
}
#e-ticket .radio__label-icon {
  border: 1px solid #00754a;
  border-radius: 50%;
  display: inline-block;
  height: 20px;
  position: relative;
  width: 20px;
}
#e-ticket .list-categories .item-category.medium {
  margin-left: 26px;
  padding-left: 0;
}
#e-ticket .list-categories .item-category.small {
  padding-left: 52px;
}
#e-ticket input:checked + .radio__label .radio__label-icon:before {
  animation: option-label-marker-expansion 0.3s cubic-bezier(0.32, 2.32, 0.61, 0.27) forwards;
  background: #00754a;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 12px;
  left: 3px;
  position: absolute;
  top: 3px;
  width: 12px;
}
#e-ticket .radio__label-text {
  color: rgba(0, 0, 0, 0.58);
  display: inline-block;
  margin: -3px 0 0 8px;
}
#e-ticket input:checked + .radio__label .radio__label-text,
#e-ticket input:checked + .checkbox__label .checkbox__label-text {
  color: rgba(0, 0, 0, 0.87);
  font-weight: 700;
}
#e-ticket input:disabled + .radio__label .radio__label-icon,
#e-ticket input:disabled + .checkbox__label .checkbox__label-icon {
  border-color: #ccc;
}
#e-ticket input:disabled + .radio__label .radio__label-text,
#e-ticket input:disabled + .checkbox__label .checkbox__label-text {
  color: #ccc;
}

@media screen and (min-width: 520px) {
  #e-ticket .tag-carousel:after,
  #e-ticket .tag-carousel:before {
    display: none;
  }
  #e-ticket .tag-carousel__inner {
    flex-wrap: wrap;
  }
  #e-ticket .tag-carousel__inner > :last-child:after {
    content: “”;
    display: block;
    opacity: 0;
    width: 16px;
  }
  #e-ticket .tag-carousel {
    margin-top: 0px;
    margin-bottom: 24px;
  }
  #e-ticket .tag-carousel-groupe {
    align-items: center;
    display: flex;
    margin-right: 20px;
    margin-bottom: 0;
  }
  #e-ticket .search-tag {
    margin-bottom: 0;
    margin-right: 0;
  }
  #e-ticket .search-result-page .page-content {
    margin-top: 57px;
  }
  #e-ticket .search-result-page .top-list {
    margin-bottom: 26px;
  }
}
@media screen and (min-width: 1024px) {
  #e-ticket .search-result-page .top-list {
    margin-bottom: 21px;
  }
  #e-ticket .sidebar .title-filter {
    margin-bottom: 24px;
  }
  #e-ticket .heading-03 {
    font-size: 2.4rem;
    line-height: 3.4rem;
    padding-bottom: 38px;
    gap: 8px;
  }
  #e-ticket .heading-03.english {
    font-size: 2.8rem;
    line-height: 3.9rem;
  }
  #e-ticket .heading-sub {
    font-size: 13px;
  }
  #e-ticket .caption-01 {
    font-size: 1.5rem;
    line-height: 2.4rem;
  }
  #e-ticket .page-notes .page-notes__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }
  #e-ticket .page-notes .page-notes__list > li {
    line-height: 1.81;
    padding-left: 12px;
  }
  #e-ticket .page-notes .page-notes__list > li::before {
    font-size: 1.2rem;
    line-height: 1.7;
  }
  #e-ticket .card .card__inner__text > span.english {
    margin-top: 9px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1023.9px) {
  #e-ticket .search-result-page .empty-value .empty-value-img {
    width: 22.9333333333vw;
    max-width: 108px;
    min-width: 86px;
    margin: auto;
  }
}
@media screen and (max-width: 1039px) {
  #e-ticket .sidebar .title-filter,
  #e-ticket .sidebar .list-categories {
    padding-left: 24px;
    padding-right: 24px;
  }
  #e-ticket .sidebar .checkbox-group,
  #e-ticket .sidebar .list-categories {
    margin-bottom: 36px;
  }
  #e-ticket .sidebar .checkbox-group .item-category.small,
  #e-ticket .sidebar .list-categories .item-category.small {
    margin-top: -5px;
  }
}
/* ------------------------
商品詳細レビュー レビュー投稿済み
--------------------------- */
.review-section button {
  font-family: "Noto Sans JP", sans-serif;
  color: inherit;
}

.english {
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif !important;
}

.review-section.review-section--no-review {
  padding: 24px 0 40px;
}

.review-section--no-review .review-section__content .review-button-post,
.review-list-page .review-section__content .review-button-post {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #00754a;
  border: 1px solid #00754a;
  border-radius: 32px;
  padding: 4px 16px 5px;
  line-height: 1.45;
}

.review-section {
  padding: 36px 0 40px;
  border-top: solid 8px #edebe9;
}

.review-section__content--sp {
  margin: 0 16px;
}

.review-section__label {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.23;
  margin: 0 0 21px;
}

.review-heading {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
}

.review-section--no-review .review-heading {
  margin-bottom: 11px;
}

.review-section--no-review .review-heading__title {
  line-height: 1.75;
}

.review-heading__title {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0;
}

.review-heading__number {
  font-family: SoDoSans, "Noto Sans JP", Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 1.8rem;
  text-decoration: underline;
  margin-left: 0.5em;
  margin-top: 3px;
}

.review-heading__no-review-text {
  font-size: 1.3rem;
  margin: 11px 0 14px;
}

.review-list-page .review-heading__no-review-text {
  font-size: 1.5rem;
  margin: 0 0 15px 0;
  white-space: nowrap;
}

.review-section--no-review .review-evaluation {
  margin: 0;
}

.review-evaluation {
  display: flex;
  align-items: center;
  margin-bottom: 23px;
}

.review-evaluation__stars > span {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 5px;
}

.review-evaluation__points {
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif !important;
  font-size: 1.8rem;
  margin-left: 4px;
  margin-top: 3px;
}

.review-evaluation__link {
  font-size: 16px;
  line-height: 1.75;
  margin-left: 32px;
  text-decoration: underline;
}

.review-section__heading .review-button-post {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #00754a;
  border: 1px solid #00754a;
  border-radius: 32px;
  padding: 4px 16px 5px;
  margin-bottom: 32px;
}

.review-section__desc > li {
  color: rgba(0, 0, 0, 0.7);
  font-size: 1.1rem;
  line-height: 1.63;
  padding-left: 11px;
  position: relative;
}
.review-section__desc > li::before {
  color: rgba(0, 0, 0, 0.7);
  content: "※";
  display: block;
  font-size: 1.1rem;
  left: 0;
  line-height: 1.63;
  position: absolute;
  top: 0;
}

.review-section__review-list {
  margin-bottom: 27px;
}

.review-item {
  border-bottom: 1px solid #e5e3e1;
  padding: 32px 0;
}

.review-item:first-child {
  border-top: 1px solid #e5e3e1;
}

.review-item__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.review-item__stars > span {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 3px;
}

.review-item__date {
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 1.3rem;
  color: rgba(0, 0, 0, 0.3);
}

.review-item__title {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.47;
  margin: 10px 0 13px;
}

.review-item__text {
  font-size: 1.3rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-height: 1.7;
  margin: 0;
  white-space: pre-wrap;
  word-break: break-all;
}

.review-item__text > br {
  display: none;
}

.review-item .review-button-more {
  display: block;
  font-size: 1.3rem;
  color: #00754a;
  margin: 3px 0 0 auto;
  line-height: 1.5;
}

.review-item__user {
  font-size: 1.1rem;
  margin: 6px 0;
}

.review-item__action {
  text-align: right;
}

.review-button-helpful {
  font-size: 1.2rem;
  border: 1px solid rgba(0, 0, 0, 0.7);
  border-radius: 28px;
  padding: 4px 12px;
  margin-left: 12px;
  line-height: 1.25;
}

.review-button-helpful.active {
  color: #fff;
  background: #00a862;
  border-color: #00a862;
}

.prevent-click {
  pointer-events: none;
}

.review-button-helpful__number {
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif !important;
  font-size: 1.3rem;
  margin-left: 0.2em;
}

.review-section__show-all {
  text-align: right;
}

.review-section__show-all > a {
  font-size: 1.3rem;
  color: #00754a;
  font-weight: 500;
}

/*! purgecss start ignore */
.review-button-report {
  font-size: 1.1rem;
  text-decoration: underline;
}

.review-button-report.done {
  color: rgba(0, 0, 0, 0.7);
  text-decoration: none;
}

.review-stars > span::before,
.review-stars.review-stars--0 > span::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background: var(--star-none) center center/contain no-repeat;
}

.review-stars.review-stars--1 > span:first-child::before,
.review-stars.review-stars--1-5 > span:first-child::before,
.review-stars.review-stars--2 > span:nth-child(-n+2)::before,
.review-stars.review-stars--2-5 > span:nth-child(-n+2)::before,
.review-stars.review-stars--3 > span:nth-child(-n+3)::before,
.review-stars.review-stars--3-5 > span:nth-child(-n+3)::before,
.review-stars.review-stars--4 > span:nth-child(-n+4)::before,
.review-stars.review-stars--4-5 > span:nth-child(-n+4)::before,
.review-stars.review-stars--5 > span:nth-child(-n+5)::before {
  background-image: var(--star-full);
}

.review-stars.review-stars--1-5 > span:nth-child(2)::before,
.review-stars.review-stars--2-5 > span:nth-child(3)::before,
.review-stars.review-stars--3-5 > span:nth-child(4)::before,
.review-stars.review-stars--4-5 > span:nth-child(5)::before {
  background-image: var(--star-half);
}

/* modal */
.review-report-modal {
  display: none;
  position: fixed;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  top: 0;
  left: 0;
  z-index: 99999;
}

.review-report-modal.show {
  display: flex;
}

.review-report-modal__background {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #000;
  top: 0;
  left: 0;
  opacity: 0.38;
}

.review-report-modal__main {
  width: 100%;
  max-width: 343px;
  background: #fff;
  border-radius: 12px;
  padding: 32px;
  margin: 0 16px;
  z-index: 1;
}

.review-report-modal__text {
  font-size: 1.3rem;
  margin: 0;
}

.review-report-modal__button-area {
  text-align: right;
  margin-top: 25px;
}

.review-report-modal__cancel-button {
  font-size: 1.3rem;
  color: #00754a;
}

.review-report-modal__yes-button {
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  background: #00754a;
  padding: 7px 16px 5px;
  border-radius: 60px;
  margin-left: 14px;
}

/*! purgecss end ignore */
/* Review list page */
.review-list-page button {
  font-family: "Noto Sans JP", sans-serif;
  color: inherit;
}

.review-list-page p {
  margin: 0;
}

.review-list-page {
  padding: 27px 0 75px;
}

.review-list-page__content--sp {
  margin: 0 16px;
}

.review-list-page__label {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.23;
  margin: 0 0 21px;
}

.review-list-page__heading {
  display: flex;
  flex-direction: column;
  align-items: baseline;
  margin-bottom: 29px;
}

.review-list-title {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.75;
}

.review-list-number {
  display: block;
  font-size: 1.1rem;
  margin-top: 3px;
  line-height: 1.15;
}

.review-list-page__pc-flexbox {
  display: flex;
  flex-direction: column;
}

.review-product {
  display: flex;
  margin-bottom: 24px;
}

.review-product__image {
  flex-shrink: 0;
  width: 64px;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
  margin-right: 16px;
}

.review-product__evaluation {
  flex-grow: 1;
}

.review-product__link {
  font-size: 1.3rem;
  color: #02764b;
}

.review-list-page .review-evaluation {
  margin: 10px 0 0 0;
}

.review-list-page .review-evaluation {
  margin: 10px 0 0 0;
}

.review-list-page__product .review-button-post {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #00754a;
  border: 1px solid #00754a;
  border-radius: 32px;
  padding: 4px 16px 5px;
  margin-bottom: 32px;
}

.review-list-page__list {
  border-top: 8px solid #edebe9;
}

.review-list-select {
  position: relative;
  text-align: right;
  margin-top: 29px;
  margin-bottom: 32px;
}

.review-list-select svg {
  display: block;
  height: 8px;
  pointer-events: none;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  width: 14px;
}

.review-list-select .select-item {
  width: auto;
  background: #fff;
  border: 1px solid #b2b2b2;
  border-radius: 8px;
  color: rgba(0, 0, 0, 0.87);
  cursor: pointer;
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  text-align: left;
  line-height: 1.4;
  outline: 1px solid transparent;
  padding: 9px 37px 8px 16px;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}

.review-item__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.review-list-page .review-item {
  padding: 32px 0 22px;
}

.review-list-page .review-item__date {
  font-size: 1.2rem;
  margin: -6px 8px 0 0;
}

.review-list-page .review-item__user {
  font-size: 1.1rem;
  margin: 6px 0;
  line-height: 1.75;
}

.review-list-page .review-item__title {
  margin: 10px 0 15px;
}

.review-list-pager {
  align-items: center;
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 28px 0 0;
}

.review-list-pager__selectbox {
  position: relative;
  display: inline-block;
  min-width: 100px;
  margin: 0 36px;
}

.review-list-pager-selectbox {
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif;
  background: #fff;
  border-radius: 8px;
  color: rgba(0, 0, 0, 0.87);
  font-size: 1.6rem;
  font-weight: 500;
  outline: 1px solid transparent;
  padding: 7px 46px 7px 16px;
  width: 100%;
  border: 1px solid rgba(0, 0, 0, 0.3);
  padding: 6px 36px 6px 16px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.review-list-pager__selectbox > svg {
  display: block;
  height: 8px;
  pointer-events: none;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  width: 14px;
  right: 13px;
}

.review-list-pager__button {
  display: block;
  text-align: center;
  width: 24px;
}

.review-list-pager__button.disabled {
  fill: #ccc;
  pointer-events: none;
}

/* Confirm page */
.review-post-page {
  padding-bottom: 80px;
}

.review-post-page p {
  margin: 0;
}

.review-post-page button {
  font-family: "Noto Sans JP", sans-serif;
  color: inherit;
}

.review-post-page__content--sp {
  margin: 0 16px;
}

.review-post-title {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 36px 0;
  line-height: 1.75;
}

.review-confirm-page .review-post-title {
  margin: 37px 0 52px;
}

.review-post-product {
  display: flex;
  align-items: center;
  margin-bottom: 38px;
}

.review-post-product__image {
  flex-shrink: 0;
  width: 64px;
  height: 100%;
  overflow: hidden;
  margin-right: 16px;
}

.review-post-product__name {
  font-size: 1.3rem;
}

.review-post-item {
  margin-top: 33px;
}

.review-post-item:first-child {
  margin-top: 0;
}

.review-post-item__label {
  cursor: default;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.review-post-item__label > span {
  display: block;
}

.review-post-item__title {
  font-size: 1.5rem;
  font-weight: 500;
  margin-right: 16px;
  line-height: 1.75;
}

.review-post-item__notes {
  font-size: 1.1rem;
  color: rgba(0, 0, 0, 0.7);
}

.review-post-item__stars > span {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 6px;
  margin-bottom: 5px;
}

.review-post-item input[type=text],
.review-post-item textarea {
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  width: 100%;
  font-size: 1.4rem;
  color: rgba(0, 0, 0, 0.87);
  line-height: 1.7;
  border: 1px solid #b2b2b2;
  border-radius: 8px;
  padding: 13px 16px;
  box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: 1px solid transparent;
}
.review-post-item input[type=text]::-webkit-scrollbar,
.review-post-item textarea::-webkit-scrollbar {
  display: none;
}

.review-post-item input[type=text]::-moz-placeholder, .review-post-item textarea::-moz-placeholder {
  font-size: 1.4rem;
  color: #ccc;
}

.review-post-item input[type=text]::placeholder,
.review-post-item textarea::placeholder {
  font-size: 1.4rem;
  color: #ccc;
}

.review-post-item textarea {
  resize: vertical;
  min-height: 148px;
}

.review-post-item textarea[name=review-post-title] {
  resize: vertical;
  min-height: 52px;
}

.review-post-item textarea[name=review-post-text] {
  resize: vertical;
  min-height: 148px;
}

.review-post-item.error input[type=text],
.review-post-item.error textarea {
  border-color: #d62b1f;
}

.review-post-item .word-count {
  display: block;
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 1.1rem;
  text-align: right;
}

.review-post-item.error-word textarea,
.review-post-item.error-emoji textarea {
  border-color: #d62b1f;
}

.review-post-item.error-word .word-count {
  color: #d62b1f;
}

.review-post-item__validation {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "error-text word-count";
  margin: 3px 4px 0 8px;
  line-height: 1.75;
}

.review-post-item--text .review-post-item__validation {
  margin-left: 4px;
}

.review-post-item__validation .error-text {
  display: none;
  font-size: 1.1rem;
  color: #d62b1f;
  grid-area: error-text;
}

.review-post-item.error-emoji .error-text {
  display: block;
}

.review-post-item--name .review-post-item__title {
  font-size: 1.3rem;
  font-weight: bold;
}

.review-post-change-name {
  text-decoration: underline;
}

.review-post-item--name .review-post-item__detail {
  font-size: 1.3rem;
}

.review-post-item--no-name .review-post-item__title {
  font-size: 1.3rem;
  font-weight: bold;
}

.review-post-item--no-name .review-post-item__label {
  margin-bottom: 4px;
}

.review-post-item--no-name .review-post-item__detail {
  font-size: 1.3rem;
}

.review-post-item--no-name .review-post-item__detail span {
  display: block;
}

.review-post-button {
  text-align: center;
}

.review-post-button__item {
  display: inline-block;
  margin-top: 4px;
}

.review-post-button__item .review-post-button-return {
  font-size: 1.3rem;
  font-weight: 500;
  color: #00754a;
  margin-right: 20px;
}

.review-post-button__item .review-post-button-submit {
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  background: #00a862;
  border-radius: 56px;
  padding: 16px 24px;
}

.review-post-button__item .review-post-button-submit:disabled {
  background: #ccc;
}

.review-post-item--no-name .name-register-button {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #00754a;
  border: 1px solid #00754a;
  border-radius: 32px;
  padding: 4px 16px 5px;
  margin: 15px 0 37px;
}

.review-post-item__confirm-text {
  white-space: pre-wrap;
  word-wrap: break-word;
  word-break: break-all;
  font-size: 1.4rem;
}

.review-post-comfirm-notes {
  background: #e1dfdd;
  padding: 16px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 38px;
}

.review-post-comfirm-notes__item {
  font-size: 1.1rem;
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.8;
}

.review-post-comfirm-notes__item::before {
  content: "※";
}

/* Complete review page */
.review-post-complete-page {
  padding-bottom: 45px;
}

.review-post-complete-page p {
  margin: 0;
}

.review-post-complete-page__content--sp {
  margin: 0 16px;
}

.review-post-complete-title {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 37px 0 34px;
}

.review-post-complete-page__text > p {
  font-size: 1.3rem;
}

.review-post-complete-notes {
  margin: 10px 0 50px;
}

.review-post-complete-notes__item {
  font-size: 1.1rem;
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.8;
}

.review-post-complete-notes__item::before {
  content: "※";
}

.review-post-complete-page__image {
  width: 295px;
  margin: 0 auto 34px;
}

.review-post-complete-page__button {
  text-align: center;
}

.myreview-link {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  background: #00a862;
  border-radius: 56px;
  padding: 19px 24px;
  margin-left: 16px;
}

@media screen and (min-width: 520px) and (max-width: 1023px) {
  .review-section__content--sp {
    margin: 0 40px;
  }
  .review-post-page__content--sp {
    margin: 0 40px;
  }
  .review-post-comfirm-notes {
    padding-left: 40px;
    padding-right: 40px;
  }
  .review-post-complete-page__content--sp {
    margin: 0 40px;
  }
  .review-list-page__content--sp {
    margin: 0 40px 29px;
  }
}
@media screen and (min-width: 1024px) {
  .review-section {
    padding: 53px 0 82px;
  }
  .review-section button:hover {
    cursor: pointer;
  }
  .review-section__content--sp {
    margin: 0;
  }
  .review-section__content--pc {
    margin: 0 auto;
    max-width: 1264px;
    padding: 0 40px;
  }
  .review-section.review-section--no-review {
    padding: 53px 0 82px;
  }
  .review-section--no-review .review-section__content .review-button-post,
  .review-list-page .review-section__content .review-button-post {
    margin: 0 0 0 24px;
    transition: all 0.2s ease;
  }
  .review-section__label {
    font-size: 1.3rem;
    margin-bottom: 41px;
  }
  .review-section__heading {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
  }
  .review-section--no-review .review-section__heading {
    margin: 0;
  }
  .review-section__content {
    display: flex;
    flex-direction: row;
    margin-top: 25px;
    align-items: center;
  }
  .review-list-page .review-section__content {
    margin-top: 154px;
  }
  .review-heading {
    margin: 0;
  }
  .review-section--no-review .review-heading {
    margin: 0;
  }
  .review-heading__title {
    font-size: 2.4rem;
  }
  .review-heading__number {
    font-size: 1.8rem;
  }
  .review-heading__no-review-text,
  .review-list-page .review-heading__no-review-text {
    font-size: 1.5rem;
    margin: 0;
  }
  .review-evaluation {
    margin: 0 0 0 29px;
  }
  .review-section--no-review .review-evaluation {
    margin: 0 0 0 48px;
  }
  .review-button-post {
    margin: 0 0 0 40px;
    transition: all 0.2s ease;
  }
  .review-button-post:hover {
    background: rgba(0, 117, 74, 0.08);
  }
  .review-section__review-list {
    display: flex;
    align-items: flex-start;
    margin-bottom: 40px;
  }
  .review-item {
    width: calc((100% - 66px) / 3);
    padding: 0 0 39px;
    margin-right: 33px;
  }
  .review-item:last-child {
    margin-right: 0;
  }
  .review-section__review-list .review-item:first-child {
    border-top: none;
  }
  .review-item__title {
    font-size: 1.6rem;
    margin: 20px 0 15px;
  }
  .review-item__text {
    line-height: 1.4;
    margin: 0 0 4px;
  }
  .review-item__user {
    margin: 16px 0 13px;
  }
  .review-button-report.done:hover {
    cursor: auto;
  }
  .review-section__show-all > a {
    font-size: 1.5rem;
  }
  .review-section__heading .review-button-post {
    margin-bottom: 0;
  }
  .review-post-item__validation {
    margin: 0 8px 0 4px;
  }
  .review-post-item--text .review-post-item__validation {
    margin-right: 12px;
  }
  /* modal */
  .review-report-modal__main {
    box-sizing: border-box;
  }
  .review-report-modal__text {
    font-size: 1.4rem;
  }
  .review-report-modal__yes-button {
    transition: all 0.2s ease;
  }
  .review-report-modal__cancel-button:hover {
    cursor: pointer;
  }
  .review-report-modal__yes-button:hover {
    cursor: pointer;
    opacity: 0.8;
  }
  /* Review list page */
  .review-list-page {
    padding: 56px 0 74px;
  }
  .review-list-page button:hover {
    cursor: pointer;
  }
  .review-list-page__content--sp {
    margin: 0;
  }
  .review-list-page__content--pc {
    margin: 0 auto;
    max-width: 1260px;
    padding: 0 40px;
  }
  .review-list-page__heading {
    flex-direction: row;
    margin: 0 0 51px;
  }
  .review-list-title {
    font-size: 2.4rem;
  }
  .review-list-number {
    font-size: 1.6rem;
    margin-left: 32px;
  }
  .review-list-page__pc-flexbox {
    flex-direction: row;
  }
  .review-list-page__product {
    flex-shrink: 0;
    width: 275px;
    margin-right: 45px;
  }
  .review-list-page--no-review .review-list-page__product {
    margin-right: 230px;
  }
  .review-product {
    flex-direction: column;
    margin-bottom: 0;
  }
  .review-product__image {
    width: 100%;
  }
  .review-product__evaluation {
    margin: 17px 0 32px;
  }
  .review-list-page .review-evaluation {
    margin: 13px 0 0 0;
  }
  .review-list-page .review-button-post {
    margin: 0;
  }
  .review-list-page__list {
    flex-grow: 1;
    border-top: none;
  }
  .review-list-select {
    margin: 0 0 18px;
  }
  .review-list-page .review-item {
    width: 100%;
  }
  .review-list-page .review-item__date {
    margin-right: 2px;
  }
  .review-list-page .review-item__title {
    font-size: 1.5rem;
    margin: 9px 0 8px;
  }
  .review-list-page .review-item__text {
    font-size: 1.4rem;
  }
  .review-list-page .review-item .review-button-more {
    margin-top: -4px;
  }
  .review-item__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 22px;
  }
  .review-list-pager {
    margin-top: 46px;
    margin-left: 25px;
  }
  .review-list-pager-selectbox {
    cursor: pointer;
    padding: 9px 62px 10px 16px;
  }
  .review-list-pager__selectbox > svg {
    right: 17px;
  }
  .review-list-pager__button {
    cursor: pointer;
  }
  /* Confirm page */
  .review-post-page {
    padding-bottom: 78px;
  }
  .review-post-page button:hover {
    cursor: pointer;
  }
  .review-post-page__content--sp {
    margin: 0;
  }
  .review-post-page__content--pc {
    margin: 0 auto;
    max-width: 1260px;
    padding: 0 40px;
  }
  .review-post-title,
  .review-confirm-page .review-post-title {
    font-size: 2.4rem;
    margin: 52px 0;
  }
  .review-post-page__pc-flexbox {
    display: flex;
    align-items: flex-start;
  }
  .review-post-product {
    flex-direction: column;
    align-items: flex-start;
    flex-shrink: 0;
    width: 275px;
    margin-right: 45px;
  }
  .review-post-product__image {
    width: 100%;
    margin: 0 0 14px 0;
  }
  .review-post-form {
    flex-grow: 1;
    margin-top: -10px;
  }
  .review-post-form-confirm {
    flex-grow: 1;
    margin-top: 25px;
  }
  .review-post-item__title {
    margin-right: 28px;
  }
  .review-post-item textarea {
    min-height: 100px;
  }
  .review-post-item textarea[name=review-post-text] {
    min-height: 100px;
  }
  .review-post-item--name .review-post-item__title {
    font-size: 1.5rem;
    font-weight: 500;
    margin-bottom: 0;
  }
  .review-post-item--name .review-post-item__detail {
    font-size: 1.4rem;
  }
  .review-post-item--no-name .review-post-item__title {
    font-size: 1.5rem;
    font-weight: 500;
    margin-bottom: 0;
  }
  .review-post-item--no-name .review-post-item__label {
    margin-bottom: 10px;
  }
  .review-post-item--no-name .name-register-button {
    margin-bottom: -10px;
  }
  .review-post-button__item {
    margin-top: 20px;
  }
  .review-post-button__item .review-post-button-return {
    margin-right: 27px;
  }
  .review-post-button__item .review-post-button-submit {
    transition: all 0.2s ease;
  }
  .review-post-button__item .review-post-button-submit:disabled {
    cursor: auto;
  }
  .review-post-button__item .review-post-button-submit:not(:disabled):hover {
    opacity: 0.8;
  }
  .review-post-comfirm-notes {
    margin: 38px auto 0;
  }
  /* Complete review page */
  .review-post-complete-page {
    padding-bottom: 70px;
  }
  .review-post-complete-page__content--sp {
    margin: 0;
  }
  .review-post-complete-page__content--pc {
    margin: 0 auto;
    max-width: 1180px;
  }
  .review-post-complete-title {
    font-size: 2.4rem;
    margin: 52px 0;
  }
  .review-post-complete-page__text > p {
    font-size: 1.5rem;
  }
  .review-post-complete-notes {
    margin-bottom: 60px;
  }
  .review-post-complete-page__image {
    margin-bottom: 40px;
  }
  .review-post-complete-page__button .myreview-link {
    transition: all 0.2s ease;
  }
  .review-post-complete-page__button .myreview-link:hover {
    opacity: 0.8;
  }
}
.myreview-page {
  padding: 36px 0 64px;
}
.myreview-page .myreview-title {
  line-height: 1.75;
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0;
}
.myreview-page .myreview-number {
  display: block;
  font-size: 1.8rem;
  margin-left: 16px;
}
.myreview-page__tab-area {
  margin-bottom: 5px;
}
.myreview-page.no-review {
  padding: 36px 0 75px;
}
.myreview-page p {
  margin: 0;
}
.myreview-page button {
  line-height: revert;
  font-family: "Noto Sans JP", sans-serif;
}
.myreview-page__content--sp {
  padding: 0 16px;
}
@media (min-width: 520px) and (max-width: 1023px) {
  .myreview-page__content--sp {
    padding: 0 40px;
  }
}
.myreview-page__content--pc {
  box-sizing: content-box;
}
.myreview-page__heading {
  display: flex;
  align-items: baseline;
}
.myreview-page__heading.no_review {
  margin-bottom: 50px;
}
.myreview-page__no-review p {
  font-size: 1.3rem;
}
.myreview-page__no-review p + p {
  margin-top: 1.6em;
}
.myreview-page__button-area {
  text-align: center;
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  flex-direction: column;
}
.myreview-page__button-area .myreview-page__search-coffee {
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  background: #00a862;
  border-radius: 56px;
  padding: 16px 24px;
  margin: 8px;
}
.myreview-page__selectbox svg {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translate3d(0, -50%, 0);
}
.myreview-page__selectbox select {
  font-size: 1.6rem !important;
  font-weight: 500 !important;
  padding: 9px 36px 10px 16px !important;
  line-height: 1.2;
}

.myreview-page.no_review .myreview-page__heading {
  margin-bottom: 51px;
}
.myreview-page.no_review .myreview-page__heading .myreview-number {
  margin-left: 28px;
}
.myreview-page.no_review .myreview-page__no-review {
  line-height: 1.75;
}

.myreview-list__item {
  border-bottom: 1px solid #e5e3e1;
  padding: 22px 0 32px;
}
.myreview-list__item:last-child {
  border-bottom: none;
}

.myreview-item {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
}
.myreview-item__date {
  font-size: 1.3rem;
  font-family: SoDoSans, Helvetica Neue, Helvetica, Arial, sans-serif;
  line-height: 1.75;
}
.myreview-item__product {
  display: flex;
  align-items: center;
  margin: 21px 0 16px;
}
.myreview-item__image {
  display: block;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 12px;
  overflow: hidden;
  margin-right: 16px;
}
.myreview-item__name {
  flex-grow: 1;
  font-size: 1.3rem;
  width: 100%;
  line-height: 1.75;
}
.myreview-item__name-link {
  color: rgba(0, 0, 0, 0.8705882353);
}
.myreview-item__name-link--primary {
  color: #02764b;
}
.myreview-item__stars {
  line-height: 1.75;
  font-size: 1.2rem;
  margin-bottom: 9px;
}
.myreview-item__stars span {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 3.7px;
}
.myreview-item__title {
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 3px;
  line-height: 1.75;
}
.myreview-item__text {
  font-size: 1.3rem;
  line-height: 1.7;
  overflow-wrap: break-word;
}
.myreview-item__text br {
  display: block;
}
.myreview-item__review {
  min-width: 0;
}
.myreview-item__button {
  text-align: right;
  margin-top: 30px;
}
.myreview-item__button--delete, .myreview-item__button--helpful {
  font-size: 1.4rem;
  font-weight: 500;
  color: #00754a;
}
.myreview-item__button--helpful {
  border: solid 1px #00754a;
  border-radius: 32px;
  padding: 5px 15px;
  margin-left: 12px;
}
.myreview-item__button--more {
  display: block;
  font-size: 1.3rem;
  color: #00754a;
  margin: 3px 0 0 auto;
}

@media screen and (min-width: 1024px) {
  .myreview-page {
    padding: 52px 0 50px;
  }
  .myreview-page.no_review {
    padding: 52px 0 100px;
  }
  .myreview-page .myreview-title {
    font-size: 2.4rem;
  }
  .myreview-page .myreview-number {
    font-size: 2.4rem;
    margin-left: 10px;
  }
  .myreview-page__tab-area {
    margin-bottom: 32px;
  }
  .myreview-page .myreview-tabs {
    padding: 0;
    margin-bottom: 32px;
  }
  .myreview-page .myreview-tabs :nth-child(2) {
    margin-left: 29px;
  }
  .myreview-page button:hover {
    cursor: pointer;
  }
  .myreview-page__content--sp {
    padding: 0;
  }
  .myreview-page__content--pc {
    margin: 0 auto;
    max-width: 1180px;
    padding: 0 40px;
  }
  .myreview-page__heading {
    margin: 0 0 23px;
  }
  .myreview-page__heading.no_review {
    margin: 0 0 51px;
  }
  .myreview-page__no-review p {
    font-size: 1.5rem;
  }
  .myreview-page__no-review p + p {
    margin-top: 1.4em;
  }
  .myreview-page__button-area {
    margin-top: 58px;
    display: block;
  }
  .myreview-page__button-area .myreview-page__search-coffee {
    transition: all 0.2s ease;
  }
  .myreview-page__button-area .myreview-page__search-coffee:hover {
    opacity: 0.8;
  }
  .myreview-list__item {
    padding: 32px 0 36px;
  }
  .myreview-item {
    flex-direction: row;
  }
  .myreview-item__date {
    display: flex;
    align-items: center;
    flex: 0 0 125px;
    margin-top: -22px;
  }
  .myreview-item__date__text {
    max-height: 21px;
  }
  .myreview-item__product {
    flex-direction: column;
    flex-shrink: 0;
    width: 150px;
    margin: 0 45px 0 0;
  }
  .myreview-item__image {
    width: 100%;
    height: auto;
    margin: 0;
  }
  .myreview-item__name {
    font-size: 1.1rem;
    margin: 11px 0 0 -7px;
  }
  .myreview-item__stars {
    margin-bottom: 4px;
  }
  .myreview-item__title {
    font-size: 1.6rem;
    margin-bottom: 7px;
  }
  .myreview-item__text {
    line-height: 1.4;
  }
  .myreview-item__review {
    flex-grow: 1;
  }
  .myreview-item__button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    width: 60px;
    margin: -24px 0 0 103px;
  }
  .myreview-item__button > button {
    display: block;
    margin: 0 auto;
  }
  .myreview-item__button > .myreview-item__button--helpful {
    margin: 15px 0 0;
  }
}
.error-outline {
  text-align: center;
  margin-top: 5%;
}

