@charset "UTF-8";
/*
|---------------------------------------------------------------
| fs-product-share.css
|---------------------------------------------------------------
*/
.mbs-pd-share {
  pointer-events: none;
}
.mbs-pd-share:not(.js--active) {
  display: none;
}

/*
 * シェアボタン
------------------------------------------------*/
.mbs-pd-shareBtn {
  --mbs-padding: 2.5px;
  --mbs-size: calc(25px + var(--mbs-padding) * 2);
  pointer-events: auto;
  display: block;
  width: var(--mbs-size);
  height: var(--mbs-size);
  padding: var(--mbs-padding);
  color: var(--mbs-color-foreground);
  background: rgba(255, 255, 255, 0.75);
  border-radius: 50%;
  cursor: pointer;
}
.mbs-pd-shareBtn img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

/* 商品画像エリア */
.mbs-pd-image__main .mbs-pd-shareBtn {
  position: absolute;
  top: auto;
  left: calc(var(--mbs-pd-image-controller-position-x, 20px) - 5px);
  right: auto;
  bottom: var(--mbs-pd-image-controller-position-y, 20px);
  z-index: 2;
  margin: auto;
}

/*
 * モーダル
------------------------------------------------*/
.mbs-pd-shareModal {
  --mbs-padding-x: 15px;
  --mbs-icon-close-size: 16px;
  display: block;
  width: 100%;
  height: 100%;
  color: #ffffff;
  background: rgba(0, 0, 0, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: calc(var(--mbs-header-zindex, 1000) + 10);
  margin: auto;
  pointer-events: auto;
  transition: opacity 0.25s, visibility 0.25s;
  opacity: 1;
}
.mbs-pd-shareModal__dialog {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 10px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.mbs-pd-shareModal__content {
  display: block;
  width: 100%;
  max-width: 480px;
  height: auto;
  max-height: 100%;
  color: var(--mbs-color-foreground);
  background: var(--mbs-color-background);
  transition: transform 0.5s;
  transform: translateY(0%);
}

.mbs-pd-share:not(.js--show) .mbs-pd-shareModal {
  opacity: 0;
  visibility: hidden;
}
.mbs-pd-share:not(.js--show) .mbs-pd-shareModal__content {
  transform: translateY(calc(-1 * min(5%, 50px)));
}

/*--------------- レイアウト ---------------*/
.mbs-pd-shareModal__head {
  display: block;
  width: 100%;
  padding: 10px calc(var(--mbs-padding-x) + var(--mbs-icon-close-size));
  position: relative;
}
.mbs-pd-shareModal__summary {
  display: block;
  width: 100%;
  padding: 15px var(--mbs-padding-x);
  color: var(--mbs-color-foreground);
  background: #f6f6f6;
}
.mbs-pd-shareModal__share {
  display: block;
  width: 100%;
  padding: 25px var(--mbs-padding-x);
}

/*--------------- 閉じる ---------------*/
.mbs-pd-shareModal-closer {
  display: block;
  width: var(--mbs-icon-close-size);
  height: var(--mbs-icon-close-size);
  cursor: pointer;
  position: absolute;
  top: 0;
  right: var(--mbs-padding-x);
  bottom: 0;
  z-index: 2;
  margin: auto;
}
.mbs-pd-shareModal-closer img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

/*--------------- 見出し ---------------*/
.mbs-pd-shareModal-title {
  display: block;
  font-size: 17px;
  text-align: center;
}

/*
 * 商品
------------------------------------------------*/
.mbs-pd-share-product {
  display: block;
  width: 100%;
  font-size: 15px;
}
.mbs-pd-share-product__layout {
  display: grid;
  grid-template-columns: 50% minmax(0, 1fr);
  gap: 15px;
}
.mbs-pd-share-product__layout__image {
  display: block;
  width: 100%;
}
.mbs-pd-share-product__layout__body {
  display: block;
  width: 100%;
}

.mbs-pd-share-product-image {
  display: block;
  width: 100%;
  box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.1);
  background: #ffffff;
}
.mbs-pd-share-product-image img {
  display: block;
  width: 100%;
  height: auto;
}

.mbs-pd-share-product-catch {
  display: block;
  width: 100%;
  margin: 0 0 0.5em;
  color: var(--mbs-color-brand);
  font-size: 1em;
  font-weight: 700;
}
.mbs-pd-share-product-catch:empty {
  display: none;
}

.mbs-pd-share-product-name {
  display: block;
  width: 100%;
  margin: 0 0 0.5em;
  color: inherit;
  font-size: 1.07em;
  font-weight: 700;
}

.mbs-pd-share-product-series {
  display: block;
  width: 100%;
  margin: 0 0 0.5em;
  color: #777777;
  font-size: 0.93em;
  font-weight: 400;
}
.mbs-pd-share-product-series:empty {
  display: none;
}

/*
 * シェアリンク
------------------------------------------------*/
.mbs-pd-share-list {
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: auto;
  margin: -5px -2px;
}
.mbs-pd-share-list__item {
  container-type: inline-size;
  display: block;
  margin: 0;
  padding: 5px 2px;
  width: auto;
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}
.mbs-pd-share-list__item:not(.js--active) {
  display: none;
}

.mbs-pd-share-link {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  /* font-size: 13px; */
  font-size: clamp(10px, 22.86cqw, 15px);
  color: inherit;
  text-decoration: none !important;
}
.mbs-pd-share-link__image {
  display: block;
  width: 100%;
  padding: 0 4px;
}
.mbs-pd-share-link__image img {
  display: block;
  width: 100%;
  height: auto;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.mbs-pd-share-link__body {
  display: block;
  width: 100%;
  padding: 0.25em 0;
}
.mbs-pd-share-link:not(.js--active) {
  display: none;
}

.mbs-pd-share-name {
  display: block;
  font-size: 1em;
  font-weight: 400;
  text-align: center;
}
