@charset "UTF-8";
/* ====================================================
	カラー
==================================================== */
@import url("https://fonts.googleapis.com/css2?family=Marcellus&family=Noto+Sans+JP:wght@300;400&family=Shippori+Mincho+B1:wght@400;500;600;700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://use.typekit.net/zrj8kpu.css");
:root {
  --white: #fff;
  --black_35: #35494e;
  --black_56: #565656;
  --gray_ab: #ababab;
  --gray_d8: #d8d8d8;
  --pink_f4: #f488ae;
  --pink_e7: #e7b3ba;
  --pink_db: #dbc3c6;
  --blue_17: #177b94;
  --blue_8a: #8ab9c5;
  --light_blue_43: #43a3bb;
  --light_blue_e5: #e5f7fb;
  --pale_yellow_a0: #fffef7;
  --blue_76: #76a8b5;
  --blue_de: #defefe;
  --defaultRed: #da4453;
  --pink_ff: #ffebf6;
  --orange_ff: #ff9903;
}

/* ====================================================
	フォント
==================================================== */
/* ----------------------------------------------------
	ブレイクポイント
---------------------------------------------------- */
html,
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: 16.2px;
  color: var(--black_35);
  margin: 0;
}
@media screen and (max-width: 570px) {
  html,
  body {
    font-size: 2.986vw;
  }
}

body {
  background-color: var(--white);
  line-height: 1;
}

body *,
a,
a:visited {
  color: var(--black_35);
}

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

a,
span {
  display: inline-block;
}

a:hover {
  color: initial;
  text-decoration: none;
}

figure,
img {
  vertical-align: bottom;
  margin: 0;
}

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

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}

p, div {
  word-break: break-all;
}

/* ----------------------------------------------------
	animated
---------------------------------------------------- */
.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

/* ----------------------------------------------------
	fadeInUpShort
---------------------------------------------------- */
@keyframes fadeInUpShort {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpShort {
  opacity: 0;
  transform: translateY(20px);
}

.fadeInUpShort.go {
  animation-name: fadeInUpShort;
}

.fs-l-page {
  position: relative;
  max-width: 550px;
  margin: 0 auto;
  background-color: var(--white);
  border-top: none;
  border-bottom: none;
}
@media screen and (max-width: 570px) {
  .fs-l-page {
    max-width: 100%;
  }
}

.scroll-bar-min::-webkit-scrollbar {
  width: 0.6rem;
}

.scroll-bar-min::-webkit-scrollbar-thumb {
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 0.3rem;
}

/* ----------------------------------------------------
	ローディング
---------------------------------------------------- */
@keyframes orig_rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.load {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  pointer-events: none;
}

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

.load__logoBox {
  position: relative;
  max-width: 353px;
  width: 40vw;
  z-index: 1;
  -webkit-mask-image: url(/img/common/load_logo_lineMask.png);
  mask-image: url(/img/common/load_logo_lineMask.png);
  -webkit-mask-size: 100%;
  overflow: hidden;
}

.load__logo {
  position: relative;
  width: 100%;
  z-index: 1;
}

.load__cover {
  position: absolute;
  top: -16%;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  z-index: 2;
}

.load__cover.active {
  animation: anime_loadLogoColor 2s ease-in-out infinite;
}

@keyframes anime_loadLogoColor {
  0% {
    top: -16%;
  }
  70% {
    top: 104%;
  }
  100% {
    top: 104%;
  }
}
/* ----------------------------------------------------
	店舗メンテナンス中
---------------------------------------------------- */
#fs_StoreClosed {
  background-color: var(--blue_8a);
}
#fs_StoreClosed .fs-l-page {
  background-color: var(--blue_8a);
}
#fs_StoreClosed .load__cover {
  animation: anime_loadLogoColor 2s ease-in-out infinite;
}
#fs_StoreClosed .fs-p-closed__heading {
  position: absolute;
  bottom: -4.3rem;
  left: 0;
  right: 0;
  margin: auto;
  font-family: "classico-urw", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  font-size: 1.5rem;
  letter-spacing: 0.08rem;
  color: var(--white);
}
@media screen and (max-width: 1000px) {
  #fs_StoreClosed .fs-p-closed__heading {
    bottom: -6.9vw;
    font-size: 2.6vw;
  }
}

/* ----------------------------------------------------
	共通
---------------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
  .fs-c-variationMatrix__row:hover,
  .header__navBtn:hover,
  .hNav__mainItem.is-parent .hNav__mainTitle:hover,
  a:hover,
  .shoplist__headItem:hover,
  .shoplist__headArrow:hover,
  .shoplist__subAreaTitle:hover {
    opacity: 0.6 !important;
  }
  button:hover,
  .commonBtn:hover,
  .topProducts__itemLink:hover,
  .fs-c-variationMatrix__row:hover,
  .btn__variation:hover {
    opacity: 0.8 !important;
  }
}
@media screen and (max-width: 570px) {
  .sp_none {
    display: none;
  }
}

.sp_br {
  display: none;
}
@media screen and (max-width: 570px) {
  .sp_br {
    display: block;
  }
}

.pc_br {
  display: block;
}
@media screen and (max-width: 570px) {
  .pc_br {
    display: none;
  }
}

a,
button,
.header__navBtn,
.fs-c-button--particular,
.fs-c-variationMatrix__row,
.shoplist__headItem,
.shoplist__headArrow,
.shoplist__subAreaTitle,
.btn__variation {
  transition: opacity 0.4s;
}

.hNav__mainItem.is-parent .hNav__mainTitle {
  transition: 0.4s;
}

.header__navBtn,
.hNav__mainItem.is-parent .hNav__mainTitle {
  cursor: pointer;
}

footer {
  margin: 5rem 2.4rem 5.9rem;
}

.fs-l-main {
  margin: 5.1rem 0 7.3rem;
  padding: initial;
}

#fs_Top footer {
  margin: initial;
  padding: 8.2rem 2.4rem 5.9rem;
}
#fs_Top .fs-l-main {
  margin: initial !important;
  padding: initial;
}

.commonWidthMaxInner {
  position: relative;
  max-width: 550px;
  margin: auto;
}

.fv {
  max-height: 1000px;
  max-width: 550px;
  margin: auto;
}

#orig_topContainer {
  width: 100%;
}

#orig_topContainer,
#orig_topInner {
  position: relative;
  max-width: 550px;
  margin: auto;
  overflow: hidden;
}

.commonBackground {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  margin: auto;
}
@media screen and (max-width: 570px) {
  .commonBackground {
    display: none;
  }
}

.commonBackground__main {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.commonBackground__main::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: url(/img/common/wrap6.png) repeat;
}

.commonBackground__main video,
.commonBackground__main img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.commonBackground__main img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.commonBackground__main video {
  position: relative;
}

/* ----------------------------------------------------
	header
---------------------------------------------------- */
header,
.hNav {
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 550px;
  width: 100%;
}

header {
  position: absolute;
  pointer-events: none;
  overflow: hidden;
  height: 100svh;
  z-index: 999;
}

.hNav {
  position: fixed;
  z-index: 997;
}

.hNav .js-hNav_flg {
  position: absolute;
  top: 0.7rem;
  right: 0;
  width: 5.3rem;
  height: 4.1rem;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
}

header.active .hNav .js-hNav_flg {
  opacity: 1;
  pointer-events: auto;
}

.header__LogoLeft {
  position: absolute;
  top: 0;
  left: 1.7rem;
  width: 10rem;
  height: 4.1rem;
  display: flex;
  align-items: flex-end;
}

.js-header__LogoUtility {
  transition: margin-top 0.6s;
}

.header__LogoUtility {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.header__LogoLeft a {
  pointer-events: auto;
}

.header__LogoLeft svg {
  width: 9.6rem;
}

.header__navBtn_box {
  position: absolute;
  top: 0;
  right: 0;
  width: 5.3rem;
  height: 5rem;
  padding: 0.7rem 0 0.3rem;
  z-index: 1;
}

.header__navBtn_background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  border-radius: 0 0 0 1.5rem;
  height: 5.6rem;
}

.header__navBtn {
  position: relative;
  width: 100%;
  height: 4rem;
  pointer-events: auto;
}

.header__navBtn figure {
  position: absolute;
  left: 1rem;
  width: 60%;
  height: 2px;
}
@media screen and (max-width: 570px) {
  .header__navBtn figure {
    height: 1px;
  }
}

.header__navBtn figure:nth-of-type(1) {
  top: 0.9rem;
}

.header__navBtn figure:nth-of-type(2) {
  top: 1.8rem;
}

.header__navBtn figure:nth-of-type(3) {
  top: 2.7rem;
}

.header__Logo svg {
  width: 2.5rem;
  margin-left: 0.4rem;
}

.headerRow .header__inner {
  position: relative;
}
.headerRow .header__LogoUtility.is-background {
  position: absolute;
  top: 0;
  right: 0;
  left: initial;
  width: 5.9rem;
  height: 5.2rem;
  border-radius: 0 0 0 1.5rem;
}
.headerRow .header__LogoUtility.is-row {
  position: absolute;
  top: 0;
  right: 0;
  left: initial;
  height: auto;
  width: initial;
  border-radius: 0 0 0 1.5rem;
}

.headerColumn {
  position: absolute;
  top: 0;
  right: 0;
  width: 5rem;
  height: 33rem;
}
.headerColumn .header__Logo {
  position: relative;
  margin-top: 7.6rem;
  text-align: center;
  pointer-events: auto;
}
.headerColumn .header__LogoUtility.is-background {
  position: absolute;
  top: 0;
  right: 0;
  left: initial;
  width: 100%;
  height: 100%;
  border-radius: 0 0 0 1.5rem;
}

.header__LogoUtility.is-background,
.header__navBtn_background {
  transition: background-color 0.4s;
}

.header__navBtn figure,
.header__LogoLeft svg {
  transition: all 0.4s;
}

header .header__Logo svg {
  fill: var(--white);
}
header .header__LogoLeft svg {
  fill: var(--pink_db);
}
header .header__navBtn_background,
header .header__LogoUtility.is-background {
  background-color: var(--pink_db);
}
header .header__navBtn figure {
  background-color: var(--white);
}

.headerRow {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  max-width: 550px;
  margin: auto;
  width: 100%;
  pointer-events: auto;
}

.headerRow {
  display: block;
}

.headerColumn {
  display: none;
}

#fs_Top .header__navBtn_box.is-column .header__navBtn figure {
  background-color: var(--blue_8a);
}
#fs_Top .headerColumn .header__Logo svg {
  fill: var(--blue_8a);
}
#fs_Top .headerColumn .header__LogoUtility.is-background {
  background-color: var(--white);
}

#fs_Top .headerRow {
  display: none;
}
#fs_Top .headerColumn {
  display: block;
}
#fs_Top header .header__navBtn_box.is-row .header__navBtn figure {
  background-color: var(--white);
}
#fs_Top header.topNews_top .header__navBtn_box.is-row .header__navBtn figure {
  background-color: var(--white);
}
#fs_Top header.topProducts_top .header__navBtn_box.is-row .header__navBtn figure {
  background-color: var(--blue_8a);
}
#fs_Top header.topAbout_top .header__navBtn_box.is-row .header__navBtn figure {
  background-color: var(--blue_8a);
}
#fs_Top header.topLook_top .header__navBtn_box.is-row .header__navBtn figure {
  background-color: var(--white);
}
#fs_Top header .headerRow .header__Logo svg {
  fill: var(--white);
}
#fs_Top header .headerRow .header__LogoLeft svg {
  fill: var(--pink_db);
}
#fs_Top header .headerRow .header__navBtn_background,
#fs_Top header .headerRow .header__LogoUtility.is-background {
  background-color: var(--pink_db);
}
#fs_Top header.topNews_top .headerRow .header__Logo svg {
  fill: var(--white);
}
#fs_Top header.topNews_top .headerRow .header__LogoLeft svg {
  fill: var(--pink_db);
}
#fs_Top header.topNews_top .headerRow .header__navBtn_background,
#fs_Top header.topNews_top .headerRow .header__LogoUtility.is-background {
  background-color: var(--pink_db);
}
#fs_Top header.topProducts_top .headerRow .header__Logo svg {
  fill: var(--blue_8a);
}
#fs_Top header.topProducts_top .headerRow .header__LogoLeft svg {
  fill: var(--white);
}
#fs_Top header.topProducts_top .headerRow .header__navBtn_background,
#fs_Top header.topProducts_top .headerRow .header__LogoUtility.is-background {
  background-color: var(--white);
}
#fs_Top header.topAbout_top .headerRow .header__Logo svg {
  fill: var(--blue_8a);
}
#fs_Top header.topAbout_top .headerRow .header__LogoLeft svg {
  fill: var(--blue_8a);
}
#fs_Top header.topAbout_top .headerRow .header__navBtn_background,
#fs_Top header.topAbout_top .headerRow .header__LogoUtility.is-background {
  background-color: var(--white);
}
#fs_Top header.topLook_top .headerRow .header__Logo svg {
  fill: var(--white);
}
#fs_Top header.topLook_top .headerRow .header__LogoLeft svg {
  fill: var(--pink_db);
}
#fs_Top header.topLook_top .headerRow .header__navBtn_background,
#fs_Top header.topLook_top .headerRow .header__LogoUtility.is-background {
  background-color: var(--pink_db);
}

header.lowerPage .header__Logo svg {
  fill: var(--white);
}
header.lowerPage .header__LogoLeft svg {
  fill: var(--pink_db);
}
header.lowerPage .header__navBtn_background,
header.lowerPage .header__LogoUtility.is-background {
  background-color: var(--pink_db);
}
header.lowerPage .header__navBtn figure {
  background-color: var(--white);
}

/* ----------------------------------------------------
	nav
---------------------------------------------------- */
.hNav__background.is-back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}

.hNav__inner {
  position: relative;
  width: 29.3rem;
  height: 100svh;
  padding: 5.9rem 2.5rem;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  .hNav__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 820px;
  }
}
@media screen and (max-width: 570px) {
  .hNav__inner {
    max-height: initial;
  }
}

.hNav__background.is-front {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  background-color: var(--blue_8a);
  opacity: 0.85;
}

.hNav {
  font-family: "classico-urw", sans-serif;
  font-weight: 400;
}

.hNav span,
.hNav a {
  color: var(--white);
  display: inline-block;
}

.hNav__box {
  position: relative;
  height: 73svh;
  overflow-y: auto;
  padding: 1.8rem 1rem 2.6rem;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .hNav__box {
    padding: 0 0 1.3rem;
    height: initial;
  }
}

.hNav__mainTitle {
  position: relative;
  width: 100%;
  font-size: 2.4rem;
  padding: 1.3rem 0;
  letter-spacing: 0.2rem;
}

.hNav__mainName {
  position: relative;
  padding: 0 2.3rem;
}

.hNav__nowPage {
  margin-top: 0.2rem;
  position: absolute;
  top: 50%;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}

.hNav__nowPage svg {
  width: 1.9rem;
  fill: var(--blue_de);
}

.hNav__mainArrow {
  margin-top: 0.4rem;
  position: absolute;
  top: 50%;
  right: 3.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}

.hNav__mainArrow svg {
  width: 1.7rem;
  fill: var(--white);
  transition: all 0.4s;
  transform: rotate(0deg);
}

.hNav__mainListChild {
  display: none;
  position: relative;
  margin-top: -0.7rem;
}

.hNav__mainTitleChild {
  font-size: 1.9rem;
  padding: 0.7rem 0;
  width: 100%;
  letter-spacing: 0.4rem;
}

.hNav__mainItemChild:nth-of-type(odd) .hNav__mainTitleChild {
  background: linear-gradient(90deg, rgba(2, 0, 36, 0) 0%, rgb(118, 168, 181) 50%, rgba(0, 0, 0, 0) 100%);
}

.hNav__mainItemChild:nth-of-type(even) .hNav__mainTitleChild {
  background: linear-gradient(90deg, rgba(2, 0, 36, 0) 0%, rgb(138, 185, 197) 50%, rgba(0, 0, 0, 0) 100%);
}

.hNav__Logo {
  margin-top: 1.7rem;
}

.hNav__Logo a {
  width: 11.4rem;
  margin: auto;
}

.hNav__Logo svg {
  fill: var(--white);
}

.hNav__subList {
  margin-top: 1rem;
}

.hNav__subTitle {
  font-size: 1.8rem;
  padding: 1.1rem 0;
  letter-spacing: 0.2rem;
}

.hNav__subName {
  position: relative;
  padding: 0 2.3rem;
}

.hNav__snsList {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2.5rem;
}

.hNav__snsTitle {
  padding: 0 0.6rem;
}

.hNav__snsTitle svg {
  width: 3.9rem;
}

.hNav__snsTitle svg .st0 {
  fill: none;
  stroke: var(--white);
  stroke-width: 4;
  stroke-miterlimit: 10;
}

.hNav__snsTitle svg .st1 {
  fill: var(--white);
}

/*---------- ナビギミック ----------*/
.hNav {
  pointer-events: none;
}

.hNav__background.is-front {
  transform: scale(0);
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
  border-radius: 0 0 0 100%;
  transform-origin: top right;
  transition: all 0.4s;
}

.hNav__box {
  opacity: 0;
  transition: all 1s;
}

body header.active .header__navBtn figure {
  width: 50%;
  background-color: var(--white) !important;
}
body header.active .header__navBtn figure:nth-of-type(1) {
  transform: rotate(45deg);
  top: 1.8rem;
  left: 1.2rem;
}
body header.active .header__navBtn figure:nth-of-type(2) {
  opacity: 0;
}
body header.active .header__navBtn figure:nth-of-type(3) {
  transform: rotate(-45deg);
  top: 1.8rem;
  left: 1.2rem;
}
body header.active .hNav {
  pointer-events: auto;
}
body header.active .hNav__background.is-front {
  transform: scale(1);
  height: 100%;
  border-radius: 0 0 0 13rem;
}
body header.active .hNav__box {
  opacity: 1;
}

.hNav__mainItem.is-parent.active .hNav__mainArrow svg {
  transform: rotate(90deg);
}

/* ----------------------------------------------------
	footer
---------------------------------------------------- */
footer {
  position: relative;
  background-color: var(--white);
}

.footer__logo svg {
  width: 12.7rem;
  fill: var(--blue_8a);
}

.footer__snsList {
  display: flex;
  align-items: center;
}

.footer__snsTitle svg {
  width: 3.9rem;
}

.footer__snsTitle svg .st0 {
  fill: none;
  stroke: var(--blue_8a);
  stroke-width: 4;
  stroke-miterlimit: 10;
}

.footer__snsTitle svg .st1 {
  fill: var(--blue_8a);
}

.footer__menuMain a,
.footer__menuSub a {
  color: var(--blue_8a);
}

.footer__menuMain {
  display: flex;
  justify-content: space-between;
  margin-top: 3.4rem;
}

.footer__menuMain > li {
  font-family: "Marcellus", sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
  letter-spacing: 0.06rem;
}

.footer__menuSub {
  display: flex;
  justify-content: flex-start;
}

.footer__menuSub > li {
  font-family: "Marcellus", sans-serif;
  font-weight: 400;
  margin-top: 2.3rem;
  font-size: 1.1rem;
  letter-spacing: 0.03rem;
}

.footer__menuSub > li + li {
  margin-left: 1.5rem;
}

.footer__others {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 3.7rem;
}

.footer__snsList > li + li {
  margin-left: 1rem;
}

.footer__copyright {
  color: var(--blue_8a);
  font-size: 1rem;
  letter-spacing: 0.08rem;
  margin-bottom: 0.7rem;
}

/* ----------------------------------------------------
	main
---------------------------------------------------- */
.commonBtn {
  position: relative;
  width: 16.9rem;
  height: 3.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Marcellus", sans-serif;
}

.commonBtn.is-line {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  box-sizing: border-box;
  background-color: #07b53b;
  text-decoration: initial;
  width: 100%;
  height: 4rem;
  color: #fff;
  font-size: 1.3rem;
  letter-spacing: 0.1rem;
  margin: 1.4rem 0;
}

.externalLink {
  fill: var(--white);
  width: 1rem;
  margin-left: 0.6rem;
}

.commonBtn__txt {
  position: relative;
  font-size: 1.5rem;
  letter-spacing: 0.14rem;
  text-indent: -0.8rem;
}

.commonBtn__Arrow {
  position: absolute;
  top: 50%;
  right: -2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}

.commonBtn__Arrow svg {
  width: 1.2rem;
}
.commonBtn__Arrow svg .st0 {
  display: none;
}
.commonBtn__Arrow svg .st1 {
  display: inline;
  fill: none;
  stroke: var(--white);
  stroke-width: 7;
  stroke-miterlimit: 10;
}
.commonBtn__Arrow svg .st2 {
  fill: none;
  stroke: var(--white);
  stroke-width: 7;
  stroke-miterlimit: 10;
}

#fs_Top h2 {
  font-family: "classico-urw", sans-serif;
  font-weight: 400;
  font-size: 3rem;
  letter-spacing: 0.3rem;
}
#fs_Top .commonInner {
  position: relative;
  margin: 0 2rem;
}

/* ----------------------------------------------------
	fv
---------------------------------------------------- */
.fv {
  position: relative;
  height: 100svh;
  min-height: 48rem;
  padding-top: 2.8rem;
  background-color: var(--white);
}
@media screen and (max-width: 570px) {
  .fv {
    height: calc(var(--vh, 1vh) * 100);
  }
}

.fv__video {
  position: relative;
  width: calc(100% - 5rem);
  height: 100%;
  border-radius: 0 13rem 0 0;
  overflow: hidden;
}

.fv__video img,
.fv__video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.fv__video img {
  position: absolute;
  top: 0;
  left: 0;
  -o-object-position: top;
     object-position: top;
}

.fv__video video {
  position: relative;
}

.fv__slider {
  position: relative;
  width: calc(100% - 5rem);
  height: 100%;
  border-radius: 0 13rem 0 0;
  overflow: hidden;
}
.fv__slider img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
     object-position: top;
}
.fv__slider li {
  opacity: 0;
  transition: all 2.4s ease;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.fv__slider li.now {
  opacity: 1;
}

.add_zoom {
  animation: zoomUp 6s linear;
}

@keyframes zoomUp {
  0% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
  }
}
.fv__scroll {
  position: absolute;
  bottom: 2.6rem;
  right: 0;
  width: 5rem;
  display: flex;
  flex-direction: column;
}

.fv__scrollTxt {
  writing-mode: vertical-rl;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
  margin: auto;
  color: var(--black_35);
}

.fv__scrollBox {
  position: relative;
  text-align: center;
  margin-top: 0.2rem;
  padding-top: 1.1rem;
  margin-left: 1.3rem;
  width: 2rem;
}

.fv__scrollBox figure {
  width: 2px;
  height: 5rem;
  background-color: var(--gray_ab);
  margin: auto;
}
@media screen and (max-width: 570px) {
  .fv__scrollBox figure {
    width: 1px;
  }
}

.fv__scrollHeart {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 1rem;
  opacity: 0;
  animation: orig_heart 4s cubic-bezier(0.4, 0, 0.2, 1) 0s infinite;
  transform: rotate(0.0001deg);
}

@keyframes orig_heart {
  0% {
    opacity: 0;
    top: 0;
  }
  10% {
    opacity: 0;
    top: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
    top: 98%;
  }
  100% {
    opacity: 0;
    top: 98%;
  }
}
/* ----------------------------------------------------
	topNews
---------------------------------------------------- */
.topNews {
  position: relative;
  background-color: var(--white);
}
.topNews h2 {
  color: var(--black_35);
}
.topNews .commonInner {
  padding: 5.6rem 0 6rem;
}
.topNews .commonBtn {
  background-color: var(--blue_8a);
  margin-top: 2.4rem;
  margin-left: auto;
}
.topNews .commonBtn__txt {
  color: var(--white);
}
.topNews .commonBtn__Arrow {
  stroke: var(--white);
}
.topNews .fs-pt-list {
  margin-top: 1.9rem;
}
.topNews .fs-pt-list a {
  width: 100%;
}
.topNews .fs-pt-list > li + li {
  margin-top: 1.5rem;
}

.topNews_date {
  font-family: "Noto Sans JP", sans-serif;
  color: var(--blue_8a);
  font-size: 1.2rem;
  letter-spacing: 0.1rem;
}

.topNews_title {
  color: var(--black_35);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3rem;
  text-decoration-color: var(--blue_8a);
  margin-top: 0.6rem;
  font-size: 1.3rem;
  word-break: break-all;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

/* ----------------------------------------------------
	topProducts
---------------------------------------------------- */
.topProducts {
  position: relative;
  background-color: var(--pink_e7);
  padding: 5rem 0 6rem;
}

.topProducts h2 {
  color: var(--white);
}
.topProducts .commonBtn {
  background-color: var(--light_blue_e5);
  margin-top: 2.6rem;
  width: 20.5rem;
  height: 4.2rem;
}
.topProducts .commonBtn__txt {
  color: var(--blue_17);
  letter-spacing: 0.08rem;
  text-indent: -2rem;
}
.topProducts .commonBtn__Arrow svg .st1 {
  stroke: var(--blue_17);
}
.topProducts .commonBtn__Arrow svg .st2 {
  stroke: var(--blue_17);
}

.topProducts__slide {
  margin-top: 1.4rem;
}

.topProducts__slideBack {
  background-color: var(--white);
}

.topProducts__slideBack .products__itemBack {
  height: 34.1rem;
}
.topProducts__slideBack .products__itemBack img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.topProducts__slideMainFrame {
  margin-left: 1rem;
  width: 100%;
  position: relative;
}

.topProducts__slideMainFrameActive {
  position: absolute;
  top: 25.68rem;
  left: 1.1rem;
  height: 16.8rem;
  border-radius: 0 4rem 0 0;
  overflow: hidden;
  outline: solid 0.3rem var(--blue_17);
  width: calc(50% - 4.13rem) !important;
  pointer-events: none;
}

.topProducts__slideMain .splide__arrows {
  position: absolute;
  margin-left: -1rem;
  top: 18.7rem;
  left: 0;
  width: 100%;
  opacity: 1;
}
.topProducts__slideMain .splide__track {
  padding-top: 25.6rem;
  margin-top: -34.4rem;
}
.topProducts__slideMain .topProducts__item {
  width: calc(50% - 3.9rem) !important;
  margin: 0 1rem;
}
.topProducts__slideMain .topProducts__slideArrow {
  background-color: transparent;
  width: initial;
  height: initial;
}
.topProducts__slideMain .topProducts__slideArrow.is-prev {
  left: 0.4em;
}
.topProducts__slideMain .topProducts__slideArrow.is-next {
  right: 0.4em;
}
.topProducts__slideMain .topProducts__slideArrow svg {
  width: 2.2rem;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
  filter: drop-shadow(0 0 0.4rem rgba(77, 77, 77, 0.4));
}
.topProducts__slideMain .topProducts__slideArrow svg .st0 {
  display: none;
}
.topProducts__slideMain .topProducts__slideArrow svg .st1 {
  display: inline;
  fill: none;
  stroke: var(--white);
  stroke-width: 6;
  stroke-miterlimit: 10;
}
.topProducts__slideMain .topProducts__slideArrow svg .st2 {
  fill: none;
  stroke: var(--white);
  stroke-width: 8;
  stroke-miterlimit: 10;
}

.topProducts__itemImg {
  height: 17rem;
  border-radius: 0 4rem 0 0;
  overflow: hidden;
  box-sizing: initial;
  transition: all 0.2s;
  box-sizing: border-box;
}

.topProducts__itemImg > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.topProducts__itemName {
  margin-top: 1.2rem;
  text-align: center;
}

.topProducts__itemNameEn,
.topProducts__itemNameJa {
  display: flex;
  white-space: nowrap;
  justify-content: center;
  color: var(--blue_17);
}

.topProducts__itemNameEn {
  font-family: "Marcellus", sans-serif;
  font-size: 1.3rem;
}

.topProducts__itemNameJa {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  font-weight: 500;
}

.topProducts__itemBtn {
  font-family: "Marcellus", sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.08rem;
  background-color: var(--blue_17);
  color: var(--white);
  width: 93%;
  height: 3rem;
  margin: auto;
  margin-top: 0.9rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.5rem;
}

/* ----------------------------------------------------
	topAbout
---------------------------------------------------- */
.topAbout {
  position: relative;
  background-color: var(--pale_yellow_a0);
  padding: 5rem 0 5.8rem;
}

.topConcept_head {
  position: relative;
  margin-top: 1.4rem;
  padding: 0 1rem;
}

.topConcept_headLogo {
  position: absolute;
  top: 1.4rem;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
}

.topConcept_headLogo {
  width: 21rem;
  fill: var(--white);
}

.topConcept_headName {
  position: absolute;
  bottom: 1.8rem;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  font-family: "Marcellus", sans-serif;
  color: var(--white);
  font-size: 3rem;
  letter-spacing: 0.28rem;
}

.topConcept_headName > span {
  color: var(--white);
  font-size: 1.5rem;
  letter-spacing: 0.16rem;
  margin-right: 0.8rem;
}

.topConcept_body {
  margin-top: 5rem;
  text-align: center;
}

.topConcept_bodyLogo svg {
  width: 4.6rem;
  fill: var(--pink_f4);
}

.topConcept_bodyTxt {
  margin-top: 1.8rem;
}

.topConcept_bodyTxt .is-large {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 600;
  font-size: 1.8rem;
  letter-spacing: 0.1rem;
  margin-bottom: 2rem;
  color: var(--pink_f4);
}

.topConcept_bodyTxt .is-normal {
  font-weight: 500;
  font-size: 1.26rem;
  line-height: 1.72;
  letter-spacing: 0.1rem;
  color: var(--pink_f4);
}

.topConcept_bodyTxt .is-normal + .is-normal {
  margin-top: 2rem;
}

.topProfile {
  margin: 0 2rem 0 4.5rem;
}

.topProfile_photo {
  position: relative;
  margin-top: 12.2rem;
}

.topProfile_photoLabel {
  position: absolute;
  top: -4.4rem;
  left: -2.5rem;
  width: 11.4rem;
  height: 11.5rem;
  background-color: var(--pink_f4);
  border-radius: 0 0 5rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.topProfile_photoPost,
.topProfile_photoName {
  color: var(--white);
}

.topProfile_photoPost {
  font-family: "Marcellus", sans-serif;
  font-size: 1.2rem;
  letter-spacing: 0.13rem;
  margin-bottom: 0.6rem;
}

.topProfile_photoName {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  font-size: 1.6rem;
}

.topProfile_txt {
  margin: 1.6rem 2rem 0 0;
  line-height: 1.7;
  font-weight: 500;
}

.topProfile_list {
  margin: 1.2rem 2.6rem 0 0;
}

.topProfile_item + .topProfile_item {
  margin-top: 1.2rem;
}

.topProfile_itemTitle {
  position: relative;
  font-family: "Marcellus", sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.1rem;
  text-indent: 0.1rem;
}

.topProfile_itemTitle::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 90%;
  height: 1px;
  background-color: var(--black_35);
  transform: translateY(-50%);
}

.topProfile_itemTitle > span {
  position: relative;
  z-index: 2;
  background-color: var(--pale_yellow_a0);
  padding-right: 0.4rem;
}

.topProfile_itemTxt {
  margin-top: 0.8rem;
  line-height: 1.7;
  font-size: 1rem;
  letter-spacing: 0.1rem;
  font-weight: 500;
}

.topProfile__snsList {
  display: flex;
  align-items: center;
  margin-top: 1.5rem;
  margin-left: 0.2rem;
}

.topProfile__snsItem a {
  padding-right: 1rem;
}

.topProfile__snsItem svg {
  width: 3.9rem;
}

.topProfile__snsItem svg .st0 {
  fill: none;
  stroke: var(--black_35);
  stroke-width: 4;
  stroke-miterlimit: 10;
}

.topProfile__snsItem svg .st1 {
  fill: var(--black_35);
}

.topProfile__snsItem.is-youtube svg .st1 {
  fill: var(--black_35);
}

.topProfile__snsItem.is-youtube svg .st2 {
  fill: var(--pale_yellow_a0);
}

/* ----------------------------------------------------
	topLook
---------------------------------------------------- */
.topLook {
  position: relative;
  background-color: var(--white);
  padding: 5.2rem 0 5.8rem;
}

.topLook h2 {
  color: var(--black_35);
}

.topLook__main {
  margin-top: 1.1rem;
}

.topLook__txt {
  overflow: hidden;
}
@keyframes slide-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.topLook__txtInner {
  padding: 1.2rem 0;
  display: flex;
  animation: slide-left 30s linear infinite;
}

.topLook__txtInner span {
  flex-shrink: 0;
  display: inline-block;
  font-family: "classico-urw", sans-serif;
  font-weight: 700;
  font-style: italic;
  font-size: 3.6rem;
  letter-spacing: 0.38rem;
  color: var(--light_blue_43);
}

.topLook__imgBox {
  position: relative;
  width: 100%;
  height: 90.1rem;
  margin-top: 0.7rem;
}

.topLook__img {
  position: absolute;
}

.topLook__img.is-01 {
  top: 0;
  left: 13.9rem;
  width: 23rem;
}

.topLook__img.is-02 {
  top: 18rem;
  left: 40.9rem;
  width: 23.1rem;
}

.topLook__img.is-03 {
  top: 30.2rem;
  left: 18.3rem;
  width: 27rem;
}

.topLook__img.is-04 {
  top: 55rem;
  left: 31.4rem;
  width: 13.8rem;
  z-index: 2;
}

.topLook__img.is-05 {
  top: 62.9rem;
  left: 28.2rem;
  width: 22.1rem;
}

/* ----------------------------------------------------
	topShopList
---------------------------------------------------- */
.topShopList {
  position: relative;
  background-color: var(--light_blue_e5);
  padding: 5rem 0 6rem;
}

.topShopList_Txt {
  margin-top: 2.2rem;
  text-align: center;
  letter-spacing: -0.01rem;
  font-weight: 500;
}

.topShopList .commonBtn {
  margin-top: 2.6rem;
  width: 24.9rem;
  height: 4.2rem;
  background-color: var(--blue_8a);
  margin: auto;
  margin-top: 1.3rem;
}
.topShopList .commonBtn__txt {
  color: var(--white);
  font-size: 1.24rem;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New", sans-serif;
  letter-spacing: initial;
}

/* ====================================================
	カラーラベル カラーチップ
==================================================== */
.label__list {
  position: absolute;
  top: 3rem;
  left: -1.1rem;
}

.label__item {
  margin-top: 0.2rem;
}

.label__item:nth-of-type(1) {
  margin-top: initial;
}

.label__item > span {
  font-family: "Marcellus", sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.1rem;
  color: var(--white);
  padding: 0.4rem 0.7rem;
}

.label__item > span.rainbow {
  background: rgb(84, 237, 255);
  background: linear-gradient(90deg, rgb(84, 237, 255) 0%, rgb(255, 159, 231) 100%);
}

#fs_Top .label__list {
  top: 1.5rem;
  left: 0;
  z-index: 2;
  pointer-events: none;
}
#fs_Top .label__item > span {
  font-size: 1rem;
  padding: 0.3rem 0.5rem;
}

#fs_ProductCategory .label__list {
  top: 1.5rem;
  left: -0.4rem;
  z-index: 2;
  pointer-events: none;
}
#fs_ProductCategory .label__item > span {
  font-size: 1rem;
  padding: 0.3rem 0.5rem;
}

/* ====================================================
	商品名・金額・税込み周りの共通フォント（太さのみ）
==================================================== */
.fs-c-productName__name,
.fs-c-productPrice__main__price,
.fs-c-productPrice__addon,
.fs-c-productNameHeading__name,
.fs-c-listedProductName__name,
.fs-c-listedProductName__variation__choice,
.fs-c-string.fs-c-string--label,
.fs-c-productName__variation__y {
  font-weight: 500;
}

/* ====================================================
	商品一覧ページ （商品一覧系も含む）
==================================================== */
.fs-c-productList {
  margin: initial;
  margin-top: 1.6rem;
}

.fs-c-productList__list {
  display: flex;
  flex-wrap: wrap;
}

.fs-c-productList__list__item:nth-of-type(even) {
  margin-left: 1rem;
}

.fs-c-productList__list__item {
  position: relative;
  border-bottom: initial !important;
  padding: initial !important;
  width: calc(50% - 0.5rem);
  margin-top: 1.8rem;
}

.fs-c-productList__list__item:nth-of-type(1),
.fs-c-productList__list__item:nth-of-type(2) {
  margin-top: initial;
}

#orig_MainImage_cate {
  position: relative;
}

.fs-c-productListItem__image {
  position: relative;
  position: relative;
  border-radius: 0 4rem 0 0;
  overflow: hidden;
  height: 19rem;
}

.fs-c-productListItem__imageContainer a {
  position: relative;
  border-radius: 0 4rem 0 0;
  overflow: hidden;
  border-style: solid;
  border-color: var(--pink_ff);
  border-width: 6px;
  vertical-align: bottom;
  width: 100%;
  height: 19rem;
}
@media screen and (max-width: 570px) {
  .fs-c-productListItem__imageContainer a {
    border-width: 0.4rem;
  }
}
.fs-c-productListItem__imageContainer a img {
  position: relative;
  z-index: 1;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.fs-c-productListItem__image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  outline-style: solid;
  outline-color: var(--blue_17);
  outline-width: 2px;
  outline-offset: -4px;
  pointer-events: none;
  z-index: 2;
  border-radius: 0 4rem 0 0;
}
@media screen and (max-width: 570px) {
  .fs-c-productListItem__image::after {
    outline-width: 0.16em;
    outline-offset: -0.26rem;
  }
}

.fs-c-productListItem__productName {
  margin: 1.1rem 0 0;
  text-align: center;
}

.fs-c-productName__name {
  font-size: 1.12rem;
  letter-spacing: -0.1rem;
}

.fs-c-productListItem__prices {
  margin: 0.7rem 0 0;
}

.fs-c-productPrice {
  justify-content: center;
}

.fs-c-productPrice__main__price {
  font-size: 1.1rem !important;
  letter-spacing: 0.06rem;
}

.fs-c-productPrice__addon {
  font-size: 0.9rem;
  letter-spacing: 0.06rem;
  margin-left: 0.1rem;
}

.markchips__list {
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}

.markchips__item {
  margin-left: 0.3rem;
}

.markchips__item:nth-of-type(1) {
  margin-left: initial;
}

.markchips {
  position: relative;
  box-sizing: border-box;
  border-radius: 50%;
  display: flex;
  width: 1rem;
  height: 1rem;
}

.markchips.border {
  border: 1px solid var(--gray_d8);
}

.fs-c-productList__list__item .markchips__list {
  margin-top: 0.5rem;
}

/* ====================================================
	商品ページ
==================================================== */
#fs_ProductDetails .fs-l-productLayout {
  display: block;
  margin: 4rem 0;
}
#fs_ProductDetails .fs-c-productPrice__main__price {
  font-size: 1.3rem !important;
}

/*---------- 商品説明（大） ----------*/
.fs-p-productDescription--full {
  font-weight: 700;
  font-size: 1.5rem;
  margin: 0 2.4rem;
  line-height: 1.6;
}

/*---------- 商品詳細_メイン ----------*/
#orig_Main {
  position: relative;
}

/*---------- 商品詳細_メインイメージ-背景 ----------*/
.orig_MainImage__back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 127%;
  background-color: var(--pink_ff);
  -webkit-clip-path: polygon(0 69%, 0 8%, 100% 39%, 100% 100%);
          clip-path: polygon(0 69%, 0 8%, 100% 39%, 100% 100%);
}

/*---------- 商品詳細_画像スライダー インジケータ ----------*/
.orig_MainImage__indicator {
  position: absolute;
  bottom: -0.6rem;
  right: -1rem;
  width: 4.6rem;
  height: 2rem;
  background-color: var(--white);
  border-style: solid;
  border-color: var(--blue_17);
  border-width: 3px;
  box-sizing: border-box;
  border-radius: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.orig_MainImage__indicator span {
  letter-spacing: 0.1rem;
  color: var(--blue_17);
  font-size: 1rem;
  font-weight: 700;
}
@media screen and (max-width: 570px) {
  .orig_MainImage__indicator {
    border-width: 0.18rem;
  }
}

/*---------- 商品詳細_画像スライダー ----------*/
#orig_MainImage_slide-list {
  background-color: #fff;
}

#orig_MainImage {
  position: relative;
  width: 26.6rem;
  margin: auto;
  margin-top: 2rem;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
}

.fs-c-productCarouselMainImage {
  position: relative;
  width: 100%;
  height: 100%;
  border-style: solid;
  border-color: var(--pink_ff);
  border-width: 12px;
  border-radius: 0.3rem;
}
@media screen and (max-width: 570px) {
  .fs-c-productCarouselMainImage {
    border-width: 0.8rem;
  }
}

.fs-c-productCarouselMainImage::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  outline-style: solid;
  outline-color: var(--blue_17);
  outline-width: 3px;
  outline-offset: 4px;
  pointer-events: none;
}
@media screen and (max-width: 570px) {
  .fs-c-productCarouselMainImage::after {
    outline-width: 0.18rem;
    outline-offset: 0.3rem;
  }
}

#orig_MainImage_slide .splide__pagination {
  display: none;
}
#orig_MainImage_slide .splide__track {
  height: 100%;
}
#orig_MainImage_slide .splide__slide img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

/*---------- 商品画像パーツ・フリック ----------*/
.fs-c-productCarouselMainImage .splide__arrow {
  width: 3.7rem;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
  background: transparent;
  opacity: 1;
}
.fs-c-productCarouselMainImage .splide__arrow:before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  background-image: none;
  -webkit-mask-image: url(/img/icon/arrow.svg?version=231010);
  -webkit-mask-size: contain;
  width: 2.4rem;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 1/1;
  background-color: var(--blue_17);
}
.fs-c-productCarouselMainImage .splide__arrow.splide__arrow--prev {
  left: -4.4rem;
}
.fs-c-productCarouselMainImage .splide__arrow.splide__arrow--prev:before {
  margin-left: 0.2rem;
  transform: rotate(180deg) translate(50%, 50%);
}
.fs-c-productCarouselMainImage .splide__arrow.splide__arrow--next {
  right: -4.4rem;
}
.fs-c-productCarouselMainImage .splide__arrow.splide__arrow--next:before {
  margin-left: -0.2rem;
  transform: translate(-50%, -50%);
}
.fs-c-productCarouselMainImage .splide__arrow svg {
  display: none;
}

/*---------- 商品詳細_インフォ ----------*/
#orig_MainInfo {
  position: relative;
  padding: 1.7rem 4rem 0;
}

/*---------- 商品説明（小） ----------*/
.fs-p-productDescription--short {
  font-family: "Marcellus", sans-serif;
  font-size: 2rem;
  text-align: center;
}

/*---------- 商品名 ----------*/
.fs-c-productNameHeading {
  margin-top: 0.8rem;
  font-size: 1.1rem;
  font-weight: 400;
  text-align: center;
  color: var(--black_35);
}

#orig_MainInfo {
  /*---------- 商品価格 ----------*/
  /*---------- 項目選択 ----------*/
}
#orig_MainInfo .fs-c-productPrices {
  margin-top: 0.4rem;
}
#orig_MainInfo .fs-c-productPrice__addon {
  font-size: 1.1rem;
  margin-left: 0.1rem;
}
#orig_MainInfo .btn__variationBox {
  margin-top: 1.8rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
#orig_MainInfo .btn__variation {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 1rem;
  font-weight: 500;
  border: transparent;
  outline-style: solid;
  outline-color: var(--gray_d8);
  outline-width: 1px;
  border-radius: 0.4rem;
  padding: 0.7rem 0.6rem;
  background: transparent;
  width: calc(50% - 0.5rem);
  text-align: center;
  cursor: pointer;
}
#orig_MainInfo .btn__variation.is-active {
  outline-color: var(--blue_17);
  outline-width: 3px;
  outline-offset: -1px;
}

.btn__Listamazon {
  margin-top: 1.6rem;
}

.btn__Listamazon a {
  display: none;
  position: relative;
  background-color: var(--orange_ff);
  height: 4.2rem;
  width: 100%;
  border-radius: 2.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
}

.btn__Listamazon .fs-c-button__label {
  position: relative;
  color: var(--white);
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.2rem;
  text-indent: -1.2rem;
}

.btn__Listamazon .fs-c-button__label::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.5rem;
  transform: translateY(-50%);
  background-image: url(/img/icon/arrow_amazon.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 0.9rem;
  height: 1.3rem;
  aspect-ratio: initial;
  -o-object-fit: initial;
     object-fit: initial;
  -webkit-mask-image: none;
  -webkit-mask-size: initial;
  background-color: transparent;
}

/*---------- 商品詳細_ディティール ----------*/
#orig_MainDetail {
  margin: 6rem 0 0;
  font-weight: 500;
}

.orig_MainDetail__inner {
  padding: 5.4rem 2rem 11.8rem;
}

.orig_MainDetail__wrap {
  position: relative;
  border-radius: 0 5.6rem 0 0;
  margin-top: -6rem;
}

.orig_MainDetail__wrap:nth-of-type(1) {
  margin-top: initial;
}

.orig_MainDetail__features {
  background-color: var(--light_blue_e5);
}

.orig_MainDetail__color {
  background-color: var(--pale_yellow_a0);
}

.orig_MainDetail__howtouse {
  background-color: var(--blue_8a);
}
.orig_MainDetail__howtouse div {
  color: var(--white);
}

.orig_MainDetail__addMove {
  background-color: var(--white);
}
.orig_MainDetail__addMove .orig_MainDetail__inner {
  padding: 5.4rem 2rem 5.8rem;
}

#orig_MainDetail .ttl {
  font-family: "Marcellus", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.1rem;
  text-align: center;
}
#orig_MainDetail .ttl + ul {
  margin-top: 4.7rem;
}
#orig_MainDetail li:nth-of-type(1) {
  margin-top: initial !important;
}

.orig_MainDetail__features li {
  background-color: var(--white);
  position: relative;
  padding: 3.8rem 2rem 4.2rem;
  margin-top: 3.5rem;
}
.orig_MainDetail__features li .add {
  position: absolute;
  top: 0;
  right: -2rem;
  max-width: 550px;
  width: 100vw;
}
.orig_MainDetail__features .number {
  text-align: center;
  width: 5rem;
  height: 4rem;
  position: absolute;
  top: -1.5rem;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  background: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 1rem;
  font-size: 1.5rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  color: var(--blue_17);
}
.orig_MainDetail__features .txtLarge {
  position: relative;
  font-size: 1.26rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
  text-align: center;
  color: var(--blue_17);
}
.orig_MainDetail__features .txtNormal {
  position: relative;
  margin-top: 0.9rem;
  font-size: 1rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
  text-align: center;
}
.orig_MainDetail__features .txtSmall {
  position: relative;
  margin-top: 0.2rem;
  font-size: 0.6rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
  text-align: center;
}
.orig_MainDetail__features .asterisk {
  font-size: 0.6rem;
  vertical-align: top;
  line-height: 1.9;
}
.orig_MainDetail__features dl {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 1rem 0 2.5rem;
  margin: 1.3rem 0 0;
}
.orig_MainDetail__features dl:nth-of-type(1) {
  margin-top: 1.8rem;
}
.orig_MainDetail__features dl dt {
  width: 33%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
  border-radius: 50%;
  overflow: hidden;
}
.orig_MainDetail__features dl dt img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.orig_MainDetail__features dl dd {
  width: 61%;
  margin-left: initial;
}
.orig_MainDetail__features .dd__ttl {
  font-size: 1rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
}
.orig_MainDetail__features .dd__txt {
  font-size: 1rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
}

.orig_MainDetail__color li {
  margin-top: 2.2rem;
}
.orig_MainDetail__color .add {
  text-align: center;
  margin-top: 2.2rem;
}

.orig_MainDetail__howtouse .txtNormal {
  margin-top: 2rem;
  font-size: 1rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
  text-align: center;
}

.orig_MainDetail__addMove .orig_MainDetail__inner {
  text-align: center;
}
.orig_MainDetail__addMove .txtNormal {
  position: relative;
  font-size: 1rem;
  letter-spacing: -0.06rem;
  line-height: 1.4;
  text-align: center;
  display: inline-block;
}
.orig_MainDetail__addMove .txtNormal::before,
.orig_MainDetail__addMove .txtNormal::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1px;
  height: 120%;
  background-color: var(--black_35);
}
.orig_MainDetail__addMove .txtNormal::before {
  right: -2.2rem;
  transform: translateY(-50%) rotate(28deg);
}
.orig_MainDetail__addMove .txtNormal::after {
  left: -2.2rem;
  transform: translateY(-50%) rotate(-28deg);
}
.orig_MainDetail__addMove .inMove {
  width: 93%;
  height: 15.7rem;
  overflow: hidden;
  margin: 2.6rem auto 0;
}
.orig_MainDetail__addMove .inMove video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.orig_MainDetail__white {
  background-color: var(--white);
  min-height: 6.2rem;
  border-radius: initial;
}

/* ====================================================
	下層ページ
==================================================== */
.mt-6 {
  margin-top: 0.6rem !important;
}

.mt-12 {
  margin-top: 1.2rem !important;
}

.color_red {
  color: var(--defaultRed);
}

.fontWeight-m {
  font-weight: 500;
}

.fs-l-pageMain {
  padding: 0 2rem;
}

#fs_Top .fs-l-pageMain,
#fs_ProductDetails .fs-l-pageMain,
.fs-body-newsSingle .fs-l-pageMain,
.fs-body-shoplist .fs-l-pageMain {
  padding: initial;
}

.fs-c-breadcrumb,
.freeBreadcrumb {
  position: relative;
  font-size: 1rem;
  z-index: 1;
}

.fs-c-breadcrumb__list,
.fs-pt-list--breadcrumb {
  padding: 0 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 0;
}

.fs-c-breadcrumb__list > li,
.fs-pt-list--breadcrumb > li {
  position: relative;
  padding-right: 1.4rem;
}

.fs-c-breadcrumb__listItem::before,
.fs-pt-list--breadcrumb > li::before {
  content: "" !important;
  position: absolute;
  top: 62%;
  right: 0.3rem;
  transform: translateY(-50%);
  -webkit-mask: url(/img/icon/system_arrow.svg);
  mask: url(/img/icon/system_arrow.svg);
  background-color: var(--black_35);
  width: 0.7rem;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 1/1;
  display: inline-block;
  margin: initial !important;
  margin-top: 0.1rem;
}

.fs-c-breadcrumb__listItem:last-of-type::before,
.fs-pt-list--breadcrumb > li:last-of-type::before {
  display: none;
}

.fs-c-heading--page {
  color: var(--black_35);
  font-weight: 500;
  line-height: initial;
  border-bottom: initial;
  margin-bottom: 0;
  height: 7.9rem;
  padding: initial;
  padding-top: 2rem !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 1.8rem;
  letter-spacing: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

#fs_ProductCategory .fs-c-heading--page,
.fs-body-newsList .fs-c-heading--page,
.fs-body-shoplist .fs-c-heading--page,
.fs-body-contact .fs-c-heading--page {
  height: 10.9rem;
  font-size: 3rem;
  letter-spacing: 0.3rem;
  font-family: "classico-urw", sans-serif;
  padding: initial !important;
}

.orig_documentArticle__txt,
.fs-c-documentColumn__content > p,
.fs-c-explainList dt,
.fs-c-explainList dd,
.fs-c-list li,
.fs-c-orderedList,
.fs-c-specTable {
  font-size: 1rem;
  line-height: 1.4;
  letter-spacing: 0.08rem;
}

.fs-c-list {
  margin: initial;
  padding: initial;
}

.fs-c-list li {
  position: relative;
  margin-left: initial;
  padding-left: 1.1rem;
  text-indent: -1.1rem;
}

.fs-c-list li::before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  margin: 0 0.3rem 0 0;
  border: initial;
  border: 4px solid var(--blue_8a);
  box-sizing: border-box;
}
@media screen and (max-width: 570px) {
  .fs-c-list li::before {
    border: 2px solid var(--blue_8a);
  }
}

.fs-c-orderedList {
  margin-top: 0.9rem;
}

.fs-c-orderedList > li {
  padding: 0 0 0 1.6rem;
  text-indent: -1.6rem;
}

.fs-c-orderedList > li + li {
  margin-top: 0.6rem;
}

.fs-c-orderedList > li::before {
  padding-right: 0.5rem;
}

.fs-c-orderedList > li .fs-c-orderedList {
  border-left: 2px solid #7c8790;
}
@media screen and (max-width: 570px) {
  .fs-c-orderedList > li .fs-c-orderedList {
    border-left: 1px solid #7c8790;
  }
}

.fs-c-specTable__dataCell {
  padding: 0.4rem 0.8rem;
}

.fs-c-specTable.is-table-blue,
.fs-c-specTable.is-table-blue .fs-c-specTable__headerCell,
.fs-c-specTable.is-table-blue .fs-c-specTable__dataCell {
  border: 1px solid var(--blue_17);
}

.fs-c-specTable.is-table-blue th.fs-c-specTable__headerCell {
  background-color: var(--blue_17);
  color: var(--white);
}

.fs-c-specTable.is-table-blue td.fs-c-specTable__dataCell {
  color: var(--blue_17);
}

.fs-c-note {
  font-size: 1.1rem;
  line-height: 1.4;
  letter-spacing: 0.1rem;
}

.fs-c-note__item {
  padding-left: 1.1rem;
  text-indent: -1.1rem;
}

.fs-c-note > li + li {
  margin-top: 0.8rem;
}

.fs-p-address,
.fs-c-address {
  font-style: initial;
  font-size: 1rem;
  line-height: 1.1;
}

.attentionLine {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3rem;
  text-decoration-color: var(--pink_e7);
}

/* ----------------------------------------------------
	ニュース一覧
---------------------------------------------------- */
.fs-body-newsList .newsList__list {
  margin-top: -1rem;
  margin-bottom: 5rem;
}
.fs-body-newsList .newsList__list a {
  width: 100%;
}
.fs-body-newsList .newsList__list > li + li {
  margin-top: 1.5rem;
}

/* ----------------------------------------------------
	ニュース投稿
---------------------------------------------------- */
.news__head {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 4.8rem 2rem 1.4rem;
}

.news__date {
  font-family: "Noto Sans JP", sans-serif;
  color: var(--blue_8a);
  font-size: 1.2rem;
  letter-spacing: 0.1rem;
}

.news__head .fs-c-heading--page {
  height: initial;
  text-align: left;
  line-height: 1.2;
  font-weight: 400;
  font-size: 1.6rem;
  letter-spacing: 0.06rem;
  padding: initial !important;
  margin-top: 0.4rem;
}

.news__body {
  background-color: var(--pale_yellow_a0);
  margin: 0 0.9rem;
  padding: 3.3rem 1rem;
  font-size: 1rem;
  line-height: 1.4;
  letter-spacing: 0.08rem;
}

.news__body img {
  width: 100%;
}

.news__body a {
  color: var(--blue_8a);
  font-weight: 500;
}

.commonBtn.is-newsList,
.commonBtn.is-newsSingle {
  background-color: var(--blue_8a);
  margin: 2rem auto;
  height: 3.5rem;
}
.commonBtn.is-newsList .commonBtn__txt,
.commonBtn.is-newsSingle .commonBtn__txt {
  text-indent: initial;
}
.commonBtn.is-newsList .commonBtn__Arrow,
.commonBtn.is-newsSingle .commonBtn__Arrow {
  right: initial;
  left: -2.4rem;
  transform: translateY(-50%) rotate(180deg);
}

.commonBtn.is-newsList .commonBtn__txt,
.commonBtn.is-newsSingle .commonBtn__txt {
  color: var(--white);
}

.commonBtn.is-newsList {
  width: 20.1rem;
}

.commonBtn.is-newsSingle {
  width: 23.6rem;
}

/* ----------------------------------------------------
	ショップリスト
---------------------------------------------------- */
.shoplist__head {
  position: relative;
  background-color: var(--light_blue_e5);
  height: 4.8rem;
  cursor: pointer;
}
.shoplist__head .shoplist__headList-slide {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
}

@keyframes scrollTips {
  0% {
    right: 0;
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  100% {
    right: 80%;
    opacity: 0;
  }
}
.fs-body-shoplist .splide__arrows {
  display: none;
}
.fs-body-shoplist .scrollTips {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8.7rem;
  height: 5.8rem;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 0.2rem;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.fs-body-shoplist .scrollTips__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.fs-body-shoplist .scrollTips__imgBox {
  width: 6.2rem;
  height: 2.3rem;
  overflow: hidden;
  position: relative;
}
.fs-body-shoplist .scrollTips__img {
  position: absolute;
  top: 0;
  right: 100%;
  width: 1.9rem;
  max-width: 50px;
  transform: rotate(0.0001deg);
}
.fs-body-shoplist .js-scrollTips.active .scrollTips__img {
  animation: scrollTips 3s cubic-bezier(0.4, 0, 0.2, 1) 2;
  opacity: 0;
}
.fs-body-shoplist .scrollTips__word {
  font-size: 0.8rem;
  font-weight: 600;
  margin-top: 0.2rem;
  color: var(--white);
}

.shoplist__headList-slide .splide__pagination {
  padding: initial;
  height: 100%;
  bottom: 0;
  left: initial;
}
.shoplist__headList-slide .splide__pagination > li {
  display: none;
}
.shoplist__headList-slide .splide__pagination > li:last-child {
  width: 6rem;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), var(--light_blue_e5), var(--light_blue_e5));
}
.shoplist__headList-slide .splide__pagination > li:last-child .splide__pagination__page {
  -webkit-mask: url(/img/icon/system_arrow.svg);
  mask: url(/img/icon/system_arrow.svg);
  background-color: var(--blue_8a);
  background: var(--blue_8a);
  width: 1.5rem;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 1/1;
  z-index: 100;
  margin: initial;
  margin-right: -1.4rem;
  opacity: initial;
  border-radius: initial;
  transition: initial;
}
.shoplist__headList-slide .splide__pagination > li:last-child .splide__pagination__page.is-active {
  transform: scale(1);
}

.shoplist__headItem {
  display: flex;
  align-items: center;
}

.shoplist__headItem + .shoplist__headItem {
  padding-right: 1rem;
}

.shoplist__headItem:nth-of-type(1) {
  padding: 0 1rem;
}

.shoplist__headItem:last-child {
  padding-right: 1rem;
}

.shoplist__headItem > span {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--blue_8a);
  padding: 1rem;
}

/*---------- リスト ----------*/
.shoplist__body {
  padding: 0 2rem;
}

.shoplist__note {
  font-size: 0.8rem;
  line-height: 1.3;
  margin-top: 1.6rem;
}

.shoplist__bodyList {
  margin-top: 1.2rem;
}

.shoplist__bodyItem {
  display: none;
}

.shoplist__subArea {
  border-bottom-style: solid;
  border-bottom-color: var(--light_blue_e5);
  border-bottom-width: 2px;
  box-sizing: border-box;
}

.shoplist__subAreaTitle {
  position: relative;
  padding: 1.6rem 0;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--blue_17);
  cursor: pointer;
}

.shoplist__subAreaToggle {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  width: 3rem;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
}

.shoplist__subAreaToggle > span {
  width: 37%;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 30%;
  background-color: var(--blue_17);
  transition: transform 0.3s;
}

.shoplist__subAreaToggle > span:nth-of-type(1) {
  transform: translate(0, -50%) rotate(-90deg);
}

.shoplist__subAreaToggle > span:nth-of-type(2) {
  transform: rotate(0deg);
}

.shoplist__subAreaTitle.active .shoplist__subAreaToggle > span:nth-of-type(1) {
  transform: translate(0, -50%) rotate(0deg);
}

.shoplist__subAreaBody {
  display: none;
  margin-top: 0;
  margin-bottom: 2.6rem;
}

.shoplist__item + .shoplist__item {
  margin-top: 3rem;
}

.shoplist__name {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.3;
}

.shoplist__address {
  font-size: 0.8rem;
  font-weight: 500;
  margin-top: 1.2rem;
  line-height: 1.3;
}

.shoplist__map {
  font-size: 1.5rem;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 0.3rem !important;
  text-decoration-color: var(--blue_8a) !important;
  margin-top: 0.4rem;
}

.shoplist__tel {
  position: relative;
  font-size: 1.5rem;
  margin-top: 1.1rem;
  padding-left: 2.4rem;
}

.shoplist__tel::before {
  content: "Tel ";
  position: absolute;
  top: 0;
  left: 0;
}

/* アクティブ */
.shoplist__headItem.active > span {
  color: var(--blue_17);
}

.shoplist__bodyItem.active {
  display: block;
}

/* ----------------------------------------------------
	404 Not Found
---------------------------------------------------- */
.fs-p-pageNotFound {
  margin: 10rem 0 6rem !important;
}

.fs-p-pageNotFound__title {
  font-family: "classico-urw", sans-serif;
  font-weight: 400;
  font-size: 3rem;
  letter-spacing: 0.3rem;
}

.fs-p-pageNotFound__body {
  margin-top: 2rem;
  font-size: 1.3rem;
  line-height: 1.4;
  letter-spacing: 0.1rem;
}

/* ----------------------------------------------------
	特定商取引 ・ ポリシー ・ ガイド ・ お問い合わせ
    返品特約 ・ 会員規約
---------------------------------------------------- */
.fs-c-documentArticle {
  position: relative;
  padding: initial;
}

.fs-c-documentArticle a {
  color: var(--blue_8a);
  font-weight: 500;
}

.fs-c-documentArticle + .fs-c-documentArticle {
  margin-top: 1.7rem;
}

.fs-c-documentArticle__content {
  padding: initial;
}

* + .fs-c-documentColumn {
  margin-top: 1.1rem;
}

.fs-c-documentColumn__content {
  padding: 1.1rem 0;
}

.orig_documentArticle__txt + .orig_documentArticle__txt,
.fs-c-documentColumn__content > p + p {
  margin-top: 0.6rem;
}

.fs-c-documentArticle__heading {
  background-color: var(--blue_8a);
  font-size: 1.3rem;
  font-weight: 500;
  padding: 0.9rem 0.6rem;
  margin: initial;
  margin-bottom: 1.4rem;
  border-width: initial;
}

.fs-c-documentColumn__heading {
  color: var(--black_35);
  border-color: var(--blue_8a);
  font-weight: 500;
  font-size: 1.2rem;
  padding: 0 0.5rem 1rem;
  margin-bottom: 0.2rem;
  border-width: 0 0 2px 0;
}
@media screen and (max-width: 570px) {
  .fs-c-documentColumn__heading {
    border-width: 0 0 1px 0;
  }
}

.fs-c-explainList {
  width: 100%;
  display: inline-block;
  margin: initial;
}

.fs-c-explainList dt {
  font-weight: 500;
  padding: 0.5rem 0.5rem 0.2rem;
  margin-top: 0.5rem;
}

.fs-c-explainList dt:nth-of-type(1) {
  margin-top: initial;
}

.fs-c-explainList dd {
  margin: initial;
  padding: 0 0.5rem 0.5rem;
}

.fs-c-explainList dd:not(:last-child) {
  margin-bottom: initial;
}

.fs-c-explainList.is-dl-color dt {
  background-color: rgba(126, 126, 126, 0.08);
  margin-top: 0.6rem;
  padding: 0.6rem;
}

.fs-c-explainList.is-dl-color dt:nth-of-type(1) {
  margin-top: initial;
}

.fs-c-explainList.is-dl-color dd {
  padding: 0.6rem;
}

.fs-c-explainList.is-dl-color.is-dl-blue dt {
  background-color: rgba(138, 185, 197, 0.1019607843);
  color: var(--blue_17);
}

.addMargin + .addMargin {
  margin-top: 0.5rem;
}

.fs-c-orderedList ul li {
  padding: 0 0 0 1.2rem;
  text-indent: -1.2rem;
}

/* ----------------------------------------------------
	システム周り
---------------------------------------------------- */
/* ----------------------------------------------------
	ローディング
---------------------------------------------------- */
.load__foldingList {
  position: absolute;
  left: 50%;
  top: 50%;
  width: calc((200svh + 200svw) / 2);
  height: calc((200svh + 200svw) / 2);
  min-width: 140%;
  min-height: 100svh;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.load__foldingList span {
  height: 100%;
  transform: skew(0.1turn, -5deg);
}

.load__foldingList figure {
  width: 100%;
  height: 100%;
  background-color: var(--blue_8a);
  transition-property: all;
  transition-duration: 1.6s;
  transition-timing-function: cubic-bezier(0, 0, 0, 0.94);
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0);
          clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0);
}

.load__foldingList.active span figure {
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 101%);
          clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 101%);
}

.load__foldingList span:nth-of-type(1) {
  width: 10%;
}
.load__foldingList span:nth-of-type(1) figure {
  transition-delay: 0.25s;
}

.load__foldingList span:nth-of-type(2) {
  width: 11%;
}
.load__foldingList span:nth-of-type(2) figure {
  transition-delay: 0.25s;
}

.load__foldingList span:nth-of-type(3) {
  width: 8%;
}
.load__foldingList span:nth-of-type(3) figure {
  transition-delay: 0.3s;
}

.load__foldingList span:nth-of-type(4) {
  width: 6%;
}
.load__foldingList span:nth-of-type(4) figure {
  transition-delay: 0.05s;
}

.load__foldingList span:nth-of-type(5) {
  width: 5%;
}
.load__foldingList span:nth-of-type(5) figure {
  transition-delay: 0.2s;
}

.load__foldingList span:nth-of-type(6) {
  width: 19%;
}
.load__foldingList span:nth-of-type(6) figure {
  transition-delay: 0.1s;
}

.load__foldingList span:nth-of-type(7) {
  width: 9%;
}
.load__foldingList span:nth-of-type(7) figure {
  transition-delay: 0.35s;
}

.load__foldingList span:nth-of-type(8) {
  width: 8%;
}
.load__foldingList span:nth-of-type(8) figure {
  transition-delay: 0.3s;
}

.load__foldingList span:nth-of-type(9) {
  width: 4%;
}
.load__foldingList span:nth-of-type(10) {
  width: 8%;
}

.load__foldingList span:nth-of-type(11) {
  width: 8%;
}

.load__foldingList span:nth-of-type(1) figure {
  transition-delay: 0.4s;
}

.load__foldingList span:nth-of-type(2) figure {
  transition-delay: 0.2s;
}

.load__foldingList span:nth-of-type(3) figure {
  transition-delay: 0.5s;
}

.load__foldingList span:nth-of-type(4) figure {
  transition-delay: 0.2;
}

.load__foldingList span:nth-of-type(5) figure {
  transition-delay: 0.3s;
}

.load__foldingList span:nth-of-type(6) figure {
  transition-delay: 0.2;
}

.load__foldingList span:nth-of-type(7) figure {
  transition-delay: 0.45s;
}

.load__foldingList span:nth-of-type(8) figure {
  transition-delay: 0.2s;
}

.load__foldingList span:nth-of-type(10) figure {
  transition-delay: 0.4s;
}

/* ====================================================
	背景
==================================================== */
/*---------- 背景ナビ/背景アイテム出し分け ----------*/
#orig_commonContainer_nav,
#orig_commonContainer_items {
  display: none;
}

@media screen and (min-width: 1200px) {
  .fs-l-main {
    margin: 2.8rem 0 7.3rem;
  }
  header {
    display: none;
  }
  header,
  .hNav {
    position: absolute;
    left: initial;
    margin: initial;
    width: 550px;
  }
  #orig_commonContainer_nav {
    display: block;
  }
}
@media screen and (min-width: 1900px) {
  #orig_commonContainer_items {
    display: block;
  }
}
/*---------- 背景ナビ/メイン/背景アイテム ----------*/
.fs-l-page {
  max-width: initial;
}

#orig_commonWrap {
  display: flex;
  width: 100%;
  justify-content: center;
}

#orig_commonContainer_main {
  position: relative;
  width: 100%;
}

#orig_commonContainer {
  position: relative;
  max-width: 550px;
  width: 100%;
  background-color: var(--white);
  overflow: hidden;
  min-height: 100svh;
  margin: auto;
}
@media screen and (max-width: 570px) {
  #orig_commonContainer {
    max-width: initial;
  }
}

@media screen and (min-width: 1200px) {
  #orig_commonContainer_nav {
    width: 50%;
  }
  #orig_commonContainer_nav .commonBackground__nav {
    margin-right: 20px;
  }
  #orig_commonContainer_main {
    padding-left: 50%;
    margin-right: auto;
  }
  #orig_commonContainer {
    margin-left: 20px;
  }
}
@media screen and (min-width: 1900px) {
  #orig_commonContainer_nav,
  #orig_commonContainer_items {
    width: calc((100% - 590px) / 2);
  }
  #orig_commonContainer_nav .commonBackground__nav {
    margin-right: initial;
  }
  .commonBackground__navInner {
    padding-right: 2.8vw;
  }
  #orig_commonContainer {
    margin: auto;
  }
  #orig_commonContainer_main {
    padding-left: initial;
    margin: auto;
    min-width: 590px;
  }
}
#orig_commonContainer_nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  height: 100%;
}
#orig_commonContainer_nav .commonBackground__nav {
  height: 100svh;
}
#orig_commonContainer_nav .hNav {
  position: relative;
  top: initial;
  left: initial;
  right: initial;
  pointer-events: auto;
  margin: 0 0 0 auto;
  max-width: 520px;
  width: 100%;
}
#orig_commonContainer_nav .hNav__inner {
  position: relative;
  width: 100%;
  height: 91svh;
  max-height: 840px;
  padding: 6.3rem 2.5rem;
  margin-left: initial;
}
#orig_commonContainer_nav .hNav__background.is-front {
  transform: scale(1);
  height: 100%;
  border-radius: 0 0 0 13rem;
}
#orig_commonContainer_nav .hNav__box {
  opacity: 1;
}
#orig_commonContainer_nav .hNav__mainTitle {
  font-size: 1.8rem;
  padding: 1rem 0;
}
#orig_commonContainer_nav .hNav__mainName {
  padding: 0 1.7rem;
}
#orig_commonContainer_nav .hNav__nowPage svg {
  width: 1.4rem;
}
#orig_commonContainer_nav .hNav__subList {
  margin-top: 2.8rem;
}
#orig_commonContainer_nav .hNav__subTitle {
  font-size: 1.5rem;
  padding: 0.8rem 0;
}
#orig_commonContainer_nav .hNav__snsTitle svg {
  width: 3.5rem;
}
#orig_commonContainer_nav .hNav__Logo {
  margin-top: 2rem;
}
#orig_commonContainer_nav .hNav__Logo a {
  width: 15.4rem;
}

#orig_commonContainer_items {
  position: fixed;
  top: 0;
  right: 0;
}

.commonBackground__products {
  height: 100svh;
  display: flex;
  align-items: center;
  margin-top: 70px;
}

.commonBackground__productsInner {
  padding: 0 0 0 2.8vw;
  min-height: 935px;
  height: 100%;
}

.commonBackground__productsBox {
  position: relative;
  width: 26vw;
  max-width: 500px;
  height: 100%;
  overflow: hidden;
}

.commonBackground__productsItem {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.commonBackground__productsItem.is-01 {
  top: 0;
  left: 0;
  z-index: 2;
  max-width: 254px;
  max-height: 380px;
  width: 100%;
  height: 100%;
}

.commonBackground__productsItem.is-02 {
  top: 28%;
  right: 0;
  z-index: 1;
  max-width: 273px;
  max-height: 272px;
  width: 100%;
  height: 100%;
}

.commonBackground__productsItem.is-03 {
  top: 63%;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 1;
  max-width: 499px;
  max-height: 319px;
  width: 100%;
  height: 100%;
}

/* ====================================================
	ノベルティバナー
==================================================== */
/*Top Newsコンテンツ*/
.topNewsBanner a {
  margin-top: 1.9rem;
}

/*商品一覧 商品詳細*/
.fs-body-category .commonBanner a {
  margin-top: 2rem;
}
@media screen and (min-width: 1200px) {
  .fs-body-category .commonBanner a {
    margin-top: initial;
  }
}

.fs-body-product .commonBanner a {
  margin: 2rem 2rem 0;
}
@media screen and (min-width: 1200px) {
  .fs-body-product .commonBanner a {
    margin: 0 2rem;
  }
}

/* ====================================================
    追加要素
==================================================== */
/* ----------------------------------------------------
	ニュース非表示（一時的）
---------------------------------------------------- */
/*
.topNews .fs-pt-list > li:nth-of-type(1),
.fs-body-newsList .newsList__list > li:nth-of-type(1){
    display: none;
}
*//*# sourceMappingURL=common.css.map */