@charset "UTF-8";

:root {
  --font-yu-mincho: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif;
  --font-mplus: mplus, sans-serif;
  overscroll-behavior: none;
}

@font-face {
  font-family: "mplus";
  src: url("/product/pickup/outdoor/font/mplus/mplus-1p-thin.woff") format("woff"), url("/product/pickup/outdoor/font/mplus/mplus-1p-thin.ttf") format("truetype");
  font-weight: 200;
}
@font-face {
  font-family: "mplus";
  src: url("/product/pickup/outdoor/font/mplus/mplus-1p-light.woff") format("woff"), url("/product/pickup/outdoor/font/mplus/mplus-1p-light.ttf") format("truetype");
  font-weight: 300;
}
@font-face {
  font-family: "mplus";
  src: url("/product/pickup/outdoor/font/mplus/mplus-1p-regular.woff") format("woff"), url("/product/pickup/outdoor/font/mplus/mplus-1p-regular.ttf") format("truetype");
  font-weight: 400;
}
@font-face {
  font-family: "mplus";
  src: url("/product/pickup/outdoor/font/mplus/mplus-1p-medium.woff") format("woff"), url("/product/pickup/outdoor/font/mplus/mplus-1p-medium.ttf") format("truetype");
  font-weight: 500;
}
@font-face {
  font-family: "mplus";
  src: url("/product/pickup/outdoor/font/mplus/mplus-1p-bold.woff") format("woff"), url("/product/pickup/outdoor/font/mplus/mplus-1p-bold.ttf") format("truetype");
  font-weight: 700;
}

main {
  overflow: hidden;
}

picture {
  display: block;
}

img {
  max-width: 100%;
  height: auto;
}

.pc {
  display: block;
}
@media (max-width: 800px) {
  .pc {
    display: none;
  }
}

.tb {
  display: none;
}
@media (max-width: 1024px) {
  .tb {
    display: block;
  }
}

.sp {
  display: none;
}
@media (max-width: 800px) {
  .sp {
    display: block;
  }
}

section {
  position: relative;
  background-color: #fff;
}

/* ▼ 先方スタイル相殺 */
#outdoor .prod-detail-ecLinks .mod-button {
  width: 100% !important;
}

#outdoor .mod-button + .mod-button {
  margin-top: 1.2rem;
}

#closeup .prod-detail-ecLinks {
  display: flex;
  gap: 2%;
  margin-top: 1rem;
  max-width: 1300px;
  margin-inline: auto;
  padding-inline: 1rem;
}
@media (max-width: 800px) {
  #closeup .prod-detail-ecLinks {
    flex-direction: column;
    gap: 1rem;
    max-width: 90%;
    padding-inline: initial;
  }
}

#closeup .prod-detail-ecLinks .mod-button {
  max-width: 800px;
}

.idx-banners {
  margin-top: initial !important;
  padding-top: 100px;
  background-color: #fff !important;
}
@media (max-width: 64em) {
  .idx-banners {
    padding-top: 60px;
  }
}
/* ▲ 先方スタイル相殺 */

.common-heading {
  display: grid;
  place-content: center;
  font-family: var(--font-mplus);
  font-weight: 700;
  line-height: 1.2;
}

h1.common-heading {
  min-height: min(7.807vw, 12rem);
  background-color: #fff;
  font-size: min(3.253vw, 3rem);
}
@media (max-width: 800px) {
  h1.common-heading {
    min-height: 7.187vw;
    font-size: 2.738vw;
  }
}

h2.common-heading {
  text-align: center;
  min-height: min(5.465vw, 8.4rem);
  background-color: #9fa0a0;
  color: #fff;
  font-size: min(2.928vw, 3.6rem);
  font-weight: 700;
}
#closeup h2.common-heading {
  min-height: min(8.653vw, 13.3rem);
  font-size: min(2.342vw, 3.6rem);
}
@media (max-width: 800px) {
  h2.common-heading {
    min-height: 11.125vw;
    font-size: 3.872vw;
  }

  #closeup h2.common-heading {
    min-height: 13.125vw;
    font-size: 3.594vw;
  }
}

.common-icon-list {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}
.common-icon-list li:not(.others):not(.pfo) {
  display: grid;
  place-items: center;
  height: 3.4rem;
  padding-inline: 1rem;
  color: #fff;
  white-space: nowrap;
  font-size: 1.4rem;
  line-height: 1;
}
.common-icon-list li img {
  width: 100%;
}
.common-icon-list li.new {
  background-color: #e60012;
}
.common-icon-list li.limited {
  background-color: #000;
}
.common-icon-list li.cold {
  background-color: #00a0e9;
}
.common-icon-list li.end {
  background-color: #aaa;
}
.common-icon-list li.pfo {
  width: 9.375vw;
}
.common-icon-list li.others {
  width: 7.5rem;
}

@media (max-width: 1024px) {
  .common-icon-list {
    justify-content: center;
  }
  .common-icon-list li:not(.others):not(.pfo) {
    height: 5vw;
    padding-inline: 2vw;
    font-size: 3vw;
  }
  .common-icon-list li.pfo {
    width: 17.5vw;
  }
  .common-icon-list li.others {
    width: 10.5vw;
  }
}
