@charset "UTF-8";
/* --------------------------------------------------
storeStock-button
--------------------------------------------------- */
.storeStock-buttonArea {
  margin-top: 48px;
  margin-bottom: 22px;
}
@media screen and (max-width: 767px) {
  .storeStock-buttonArea {
    text-align: center;
  } 
}
.storeStock-buttonArea.is-hide {
  display: none;
}
.btn.btn-storestock {
  white-space: normal;
  font-size: 1.4rem;
  line-height: 1.3;
  color: #2d2e33;
  position: relative;
}
.btn.btn-storestock::before {
  position: absolute;
  bottom: -6px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: #2d2e33;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .2s;
}
@media screen and (max-width: 767px) {
  .btn.btn-storestock::before {
      transform-origin: center top;
  }
}
.btn.btn-storestock:hover {
  border-radius: 0;
}
.btn.btn-storestock:hover::before {
  transform: scale(1, 1);
}
.btn.btn-storestock:disabled {
  pointer-events: none;
  cursor: default;
  opacity: 0.2;
}
.btn.btn-storestock .btn-inner {
  padding-left: 24px;
  position: relative;
}
.btn.btn-storestock .btn-inner::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  content: "";
  width: 16px;
  height: 16px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2021%2021%22%20style%3D%22enable-background%3Anew%200%200%2021%2021%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%232C2E33%3B%7D%3C%2Fstyle%3E%3Cg%3E%20%3Cg%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_5_0000001…_%22%20transform%3D%22translate(0.5%200.5)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_22_0000003…_%22%20class%3D%22st0%22%20width%3D%2220%22%20height%3D%224%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_14_0000016…_%22%20class%3D%22st0%22%20d%3D%22M0%2C20h12v-7h5v7h3V6H0V20z%20M4%2C12h3v4H4%20V12z%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  transform: translateY(-50%);
}

/* --------------------------------------------------
storeStock-modal
--------------------------------------------------- */
.storeStock-modal {
  max-width: 520px;
  width: 100%;
  background: #eee;
}
.storeStock {
  position: relative;
  max-width: 520px;
  width: 100%;
  background: #eee;
  max-height: 82vh;
}
.storeStock-area {
  width: 100%;
  max-height: 82vh;
  overflow-y: auto;
}
.storeStock-inner {
  padding: 36px 24px 24px;
  min-height: 100%;
}
.storeStock-inner > *:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .storeStock-modal {
      max-width: 100%;
      position: relative;
      z-index: 1000010;
      overflow: hidden;
  }
  .storeStock {
      max-height: none;
      height: 100%;
      width: 100%;
      max-width: none;
  }
  .storeStock-area {
      max-height: none;
      height: 100%;
  }
  .storeStock-inner {
      padding: 24px 16px 24px;    
  }
}

.storeStock > *:last-child {
  margin-bottom: 0;
}
.storeStock-title {
  text-align: center;
  font-size: 23px;
  margin-bottom: 16px ;
}
.storeStock-labelGroup > *:last-child {
  margin-bottom: 0;
}
.storeStock-labelGroup {
  margin-bottom: 16px;
}
.storeStock-labelGroup:focus {
  outline: 0;
}
.storeStock-content > *:last-child {
  margin-bottom: 0;
}
.storeStock-content {
  margin-bottom: 16px;
  background: #fff;
  padding: 12px 16px;
  min-height: 104px;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.storeStock-body {
  width: 100%;
  min-height: -webkit-fit-content;
  min-height: fit-content;
  max-height: -webkit-fit-content;
  max-height: fit-content;
}
.storeStock-body.is-hide {
  display: none;
}
.storeStock-body.is-out-stock-hide tbody tr.is-stock-out,
.storeStock-body.is-out-stock-hide #storeStock-table-location tbody tr:not([data-instock-index]),
.storeStock-body.is-out-stock-hide .storeStock-shopAccordion.is-stock-out {
  display: none;
}
#storeStock-table-location tbody tr:nth-child(n + 11) {
  display: none;
}
.storeStock-body.is-out-stock-hide #storeStock-table-location tbody tr[data-instock-index] {
  display: table-row;
}
.storeStock-body .storeStock-table-messageOuter {
  display: none;
}
.storeStock-body.is-data-overDispCount .storeStock-table-messageOuter {
  display: block;
}
.storeStock-body.is-instock-overDispCount.is-out-stock-hide .storeStock-table-messageOuter {
  display: block;
}
.storeStock-body:not(.is-instock-overDispCount).is-out-stock-hide .storeStock-table-messageOuter {
  display: none;
}
@media screen and (max-width: 767px) {
  .storeStock-details.storeStock-details--location .storeStock-body {
      padding-right: 0;
  }

}
@keyframes storeStock-fade-in {
  from {
      opacity: 0;
  }
  to {
      opacity: 1;
  }
}
@keyframes storeStock-fade-out {
  from {
      opacity: 1;
  }
  to {
      opacity: 0;
  }
}
@keyframes storeStock-in {
  from {
      transform: translateY(15%);
  }
  to {
      transform: translateY(0);
  }
}
@keyframes storeStock-out {
  from {
      transform: translateY(0);
  }
  to {
      transform: translateY(-10%);
  }
}
.storeStock-modal {
  display: none;
}
.storeStock-modal[aria-hidden="false"] {
  display: block;
}
.storeStock-modal[aria-hidden="false"] .storeStock-modal-inner {
  animation: storeStock-fade-in .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}
.storeStock-modal[aria-hidden="false"] .storeStock {
  animation: storeStock-in .3s cubic-bezier(0, 0, .2, 1);
}
.storeStock-modal[aria-hidden="true"] .storeStock-modal-inner {
  animation: storeStock-fade-out .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}
.storeStock-modal[aria-hidden="true"] .storeStock {
  animation: storeStock-out .3s cubic-bezier(0, 0, .2, 1);
}
.storeStock-modal-inner {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999999;
  will-change: transform;
}
.storeStock-modal-inner {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999999;
  will-change: transform;
}
.storeStock-modal-container {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  padding: 24px 40px;
  max-width: 800px;
  max-height: calc(100vh - 40px);
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
  overflow: hidden;
  will-change: transform;
}
.storeStock-close {
  display: block;
  position: absolute;
  width: 34px;
  height: 35px;
  top: 10px;
  right: 20px;
  border-radius: 50%;
  background: #333;
  z-index: 1;
}
.storeStock-close:hover {
  background-color: #626262;
  transform: scale(0.98);
  transition: all 0.15s ease-in;
}
.storeStock-close:focus {
  outline: 4px auto #838383;
}  
.storeStock-close::before, .storeStock-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 16px;
  background: #fff;
} 
.storeStock-close::before {
  transform: translate(-50%,-50%) rotate(45deg);
}   
.storeStock-close::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}
@media screen and (max-width: 767px) {
  .storeStock-close {
      top: 8px;
      right: 8px;
  }
}
.storeStock-errorMessage.is-hide {
  display: none;
}
.storeStock-errorMessage {
  font-size: 12px;
}
.storeStock-body .link-inline {
  color: #393c41;
  border-bottom: 1px solid #393c41;
  position: relative;
  outline: none !important;
}
.storeStock-body .link-inline:hover {
  color: #393c41;
  opacity: 0.6;
  border-bottom: transparent;
}
.storeStock-body .link-inline:focus-visible::before {
  outline: none !important;
  border: 1px solid #838383;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.form-checkboxGroup {
  position: relative;
}
.form-checkboxGroup:focus-visible::before {
  outline: none !important;
  border: 1px solid #838383;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.form-checkboxGroup:active .form-checkbox-text {
  opacity: 0.6;
}
@media (pointer: fine) {
  .form-checkboxGroup:hover .form-checkbox-text {
    opacity: 0.6;
  }
}
.storeStock-details.is-stock-inAll .storeStock-labelGroup {
  display: none !important;
}
.storeStock-content.is-hide {
  display: none;
}
.storeStock-details.is-hide {
  display: none;
}
.storeStock-loadingGroup {
  width: 100%;
  display: flex;
  flex-direction: column;
  text-align: center;
  padding: 24px 0;
}
.storeStock-loadingGroup .loadding-circle-core {
  margin: 40px auto 8px;
}

/* --------------------------------------------------
storeStock-details
--------------------------------------------------- */
.storeStock-details-content[aria-hidden="true"] {
  visibility: hidden;
  height: 0;
}
.storeStock-details {
  margin-bottom: 16px;
}
.storeStock-details-header {
  padding: 16px 26px;
  list-style: none;
  position: relative;
  outline: none !important;
}
.storeStock-details-header::-webkit-details-marker {
  display:none;
}
.storeStock-details-header:focus-visible::after {
  outline: none !important;
  border: 1px solid #838383;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
@media (pointer: fine) {
  .storeStock-details-header:hover:not(.storeStock-details-header--store) {
    opacity: 0.6;
  }
}
.storeStock-details-title {
  text-align: left;
  width: 100%;
  font-size: 16px;
  letter-spacing: 0.01em;
  font-weight: 600;
  position: relative;
}
.storeStock-details-header:active {
  opacity: 0.5;
}
@media (pointer: fine) {
  .storeStock-details-header:hover {
    opacity: 0.5;
  }
}

.storeStock-details-header.storeStock-details-header--location {
  border-bottom: 1px solid #838383;
}
.storeStock-details-body {
  overflow: hidden;
}
.storeStock-details-header.storeStock-details-header--location + .storeStock-details-body {
  margin-top: 16px;
}
.storeStock-details-header.storeStock-details-header--location::before {
  position: absolute;
  top: 52%;
  left: -7px;
  width: 30px;
  height: 30px;
  background: url(https://shiro-shiro.shop/client_info/SHIRO/view/userweb/images/icon/pin.svg) no-repeat center center/30px auto;
  content: "";
  transform: translateY(-50%);
}
.storeStock-details-header.storeStock-details-header--store {
  pointer-events: none;
}
.storeStock-details-header.storeStock-details-header--store::before {
  position: absolute;
  top: 52%;
  left: 0;
  width: 16px;
  height: 16px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2221%22%20viewBox%3D%220%200%2021%2021%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_5%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%205%22%20transform%3D%22translate(0.5%200.5)%22%3E%0A%20%20%20%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_22%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2022%22%20width%3D%2220%22%20height%3D%224.422%22%20fill%3D%22none%22%20stroke%3D%22%232d2e33%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_14%22%20data-name%3D%22%E3%83%91%E3%82%B9%2014%22%20d%3D%22M0%2C200.376H11.471v-7.194h4.637v7.194H20V186.555H0Zm3.529-7.419H6.667v3.6H3.529Z%22%20transform%3D%22translate(0%20-180.376)%22%20fill%3D%22none%22%20stroke%3D%22%232d2e33%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center;
  content: "";
  transform: translateY(-50%);
  background-size: contain;
}
.storeStock-details-body > *:last-child {
  margin-bottom: 0;
}
.storeStock-details-headerIcon {
  position: absolute;
  display: block;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
}
.storeStock-details .storeStock-details-headerIcon::before {
  content: '';
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 1s;
}
.storeStock-details:not([open]) .storeStock-details-headerIcon::after {
  content: '';
  display: inline-block;
  width: 2px;
  height: 12px;
  background-color: #000;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  opacity: 1;
  transition: opacity 0.3s;
}
.storeStock-details[open] .storeStock-details-headerIcon::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 12px;
  background-color: #000;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: opacity 0.3s;
}
.storeStock-details:last-child .storeStock-details-body {
  padding-bottom: 0;
}
.storeStock-details.storeStock-details--location .storeStock-details-body {
  padding-bottom: 16px;
}

/* --------------------------------------------------
storeStock-table
--------------------------------------------------- */
.storeStock-table {
  width: 100%;
  font-size: 13px;
}
.storeStock-table-outer {
  overflow-y: auto;
  max-height: 300px;
}
@media screen and (max-width: 767px) {
  .storeStock-table-outer {
    padding-right: 16px;
  }
}
#storeStock-table-location.storeStock-table thead,
#storeStock-table-location.storeStock-table tbody {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #storeStock-table-location.storeStock-table {
    padding-right: 16px;
  }
  .storeStock-details.storeStock-details--location .storeStock-content {
    padding-right: 0px;
  }
}
#storeStock-table-shopList.storeStock-table td:last-child {
  width: 72px;
  text-align: center;
}
.storeStock-table tr {
  border-bottom: 1px solid #e9e9e9;
  width: 100%;
}
.storeStock-table th:first-child,
.storeStock-table td:first-child {
  padding-left: 0px;
  flex: 1;
  text-align: left;
}
.storeStock-table th:last-child,
.storeStock-table td:last-child {
  padding-right: 0px;
}
.storeStock-table th,
.storeStock-table td {
  padding-left: 4px;
  padding-right: 4px;
}
.storeStock-table th {
  padding-bottom: 5px;
}
.storeStock-table td {
  padding-top: 14px;
  padding-bottom: 14px;
}
#storeStock-table-location.storeStock-table td:first-child {
  flex: 1;
}
#storeStock-table-location.storeStock-table td:nth-child(2) {
  width: 72px;
  text-align: center;
}
#storeStock-table-location.storeStock-table td:nth-child(3) {
  text-align: right;
  font-size: 14px;
}
.storeStock-table-shopNameTitle,
.storeStock-table-shopName {
  flex: 1;
}
.storeStock-table-statusTitle,
.storeStock-table-status {
  width: 72px;
  text-align: center;
}
.storeStock-table-shopName {
  font-size: 14px;
}
.storeStock-table-status {
  font-size: 16px;
}
.storeStock-table-distanceTitle,
.storeStock-table-distance {
  width: 54px;
  text-align: right;
  font-size: 14px;
}
.storeStock-table-descGroup {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0 18px;
  margin-top: 16px;
}
@media screen and (max-width: 767px) {
.storeStock-table-descGroup {
  padding-right: 16px;
}
}
.storeStock-table-descGroup .storeStock-table-desc,
.storeStock-table-descGroup .storeStock-table-desc dt,
.storeStock-table-descGroup .storeStock-table-desc dd {
  margin-bottom: 0;
}
.storeStock-table-desc {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.storeStock-table-desc dd {
  font-size: 12px;
}
.storeStock-table + .storeStock-table-descGroup {
  margin-top: 8px;
}
.storeStock-table-messageOuter {
  padding-bottom: 16px;
  border-bottom: 1px solid #e9e9e9;
  padding-top: 16px;
}
.storeStock-table-message {
  font-size: 12px;
  text-align: center;
}

/* --------------------------------------------------
storeStock-shopAccordion
--------------------------------------------------- */
.storeStock-shopAccordion {
  overflow: hidden;
}
.storeStock-shopAccordion:not(:first-child) {
  border-top: #e9e9e9 1px solid;
}
.storeStock-body.is-out-stock-hide .storeStock-shopAccordion.is-stock-inFirst {
  border-top: none;
}
.storeStock-shopAccordion-summary {
  width: 100%;
  height: 54px;
  font-size: 13px;
  text-align: left;
  position: relative;
  list-style: none;
  display: flex;
  align-items: center;
  position: relative;
  transition: background 0.2s ease;
  outline: none !important;
}
.storeStock-shopAccordion-summary:focus-visible::before {
  border: 1px solid #838383;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.storeStock-shopAccordion-summary:active {
  background: rgba(235, 235, 235, 0.809);
  transition: background 0.1s ease;
}
@media (pointer: fine) {
  .storeStock-shopAccordion-summary:hover {
    background: rgb(235 235 235 / 35%);
  }
}

.storeStock-shopAccordion-summary::-webkit-details-marker {
  display:none;
}
.storeStock-shopAccordion-summaryIcon {
  position: absolute;
  display: block;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
}
.storeStock-shopAccordion-summary[aria-expanded="true"] {
  border-bottom: 0;
}
.storeStock-shopAccordion[open] .storeStock-shopAccordion-summaryIcon::after,
.storeStock-shopAccordion .storeStock-shopAccordion-summaryIcon::after {
  content: '';
  display: inline-block;
  width: 12px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 1s;
}
.storeStock-shopAccordion .storeStock-shopAccordion-summaryIcon::before {
  opacity: 1;
  content: '';
  display: inline-block;
  width: 1px;
  height: 12px;
  background-color: #000;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 0.2s;
  opacity: 1;
}
.storeStock-shopAccordion[open] .storeStock-shopAccordion-summaryIcon::before {
  opacity: 0;
}
.storeStock-shopAccordion-content {
  transition: padding 0.25s ease, opacity 0.3s ease 0s;
}
.storeStock-shopAccordion-content {   
  height: auto;
  padding: 8px 0 16px 20px;
}

/* --------------------------------------------------
store-stock initErrorMessage
--------------------------------------------------- */
.storeStock-initErrorMessage {
  display: block;
  margin-top: 16px;
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .storeStock-initErrorMessage {
    text-align: center;
  }
}
.storeStock-initErrorMessage.is-hide {
  display: none;
}  

/* --------------------------------------------------
store-stock disclaimer
--------------------------------------------------- */
.storeStock-disclaimerGroup {
  margin-bottom: 16px;
  text-align: center;
}
.storeStock-disclaimerText {
  font-size: 13px;
}

/* --------------------------------------------------
store-stock loding
--------------------------------------------------- */
.loadding-circle-core,
.loadding-circle-core:after {
  border-radius: 50%;
  width: 50px;
  height: 50px;
}
.loadding-circle-core {
  margin: 60px auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 8px solid rgba(186,186,186, 0.2);
  border-right: 8px solid rgba(186,186,186, 0.2);
  border-bottom: 8px solid rgba(186,186,186, 0.2);
  border-left: 8px solid #bababa;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  animation: loadding-circle 1.1s infinite linear;
}
@keyframes loadding-circle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
#storeStock-modal-loading .storeStock-modal-inner {
  flex-direction: column;
  color: #fff;
}
#storeStock-modal-loading .storeStock-modal-inner button {
  padding: 8px 16px;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #fff;
}

/* --------------------------------------------------
detail-sharemenu-btn
--------------------------------------------------- */
.detail-sharemenu-btn {
  position: absolute;
  right: 0;
  bottom: -25px;
  padding: 10px;
  z-index: 3;
}
.detail-sharemenu-btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  padding: 18px;
  width: 58px;
  height: 58px;
  background: #ffffffcc;
}

/* --------------------------------------------------
detail-price-valiation
--------------------------------------------------- */
.detail-price-valiation {
  font-size: 1.6rem;
  font-family: "TTCommons-Regular";
}
@media screen and (max-width: 767px) {
  .detail-price-valiation {
    font-size: 1.8rem;
  }
}

/* --------------------------------------------------
detail-fixed-nav
--------------------------------------------------- */
.detail-fixed-nav {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  left: 0;
  bottom: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding: 0 15px;
  width: 100%;
  height: 60px;
  background-color: #fff;
  z-index: 1000010;
  transform: translateY(80px);
  transition: transform 0.2s ease-out 0s;
}
@media screen and (min-width: 768px) {
  .detail-fixed-nav {
    display: none;
  }
}

.detail-fixed-nav.on {
  transform: translateY(0);
}
.detail-fixed-nav__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: 200px;
  height: 60px;
}
.detail-fixed-nav__info-price {
  display: flex;
  align-items: center;
}
.detail-fixed-nav__info-price-value {
  font-size: 2rem;
  line-height: 1.2;
  font-family: "TTCommons-Regular", "Noto Sans JP";
}
.detail-fixed-nav__info-price-tax {
  font-size: 1.0rem;
}
.detail-fixed-nav__info-size {
  font-size: 1.2rem;
  font-family: "TTCommons-Regular", "Noto Sans JP";
}
.detail-fixed-nav__cart {
  width: calc(100% - 140px);
}
.detail-fixed-nav__cart button {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  width: 100%;
  height: 40px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #2C2E33;
}


/* --------------------------------------------------
deliveryDate
--------------------------------------------------- */
.deliveryDate {
  margin-top: 10px;
}

.deliveryDate a {
  transform: opacity 0.3s ease;
}

.deliveryDate a:hover {
  opacity: .6;
}

/* .deliveryDate a::before {
  position: absolute;
  left: 0;
  content: '';
  height: 1px;
  background-color: #2d2e33;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .2s;
}
.deliveryDate a:hover::before {
  transform: scale(1, 1);
} */

/* --------------------------------------------------
お届け日の目安
--------------------------------------------------- */
#deliveryDateModal .commonModal__content {
  max-height: 80%;
  margin: 6% auto;
}
.article-block .costTitle {
  font-size: 1.8rem;
}
.cost-block {
  margin: 20px auto;
  border: 2px solid #dadada;
  border-radius: 4px;
}

.cost-block .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  /* -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center; */
}

.cost-block .inner .top,
.cost-block .inner .bottom,
.cost-block .inner .left,
.cost-block .inner .right {
  display: block;
  padding: 15px;
  text-align: center;
}

.cost-block .inner .top {
  width: 100%;
}

.cost-block .inner + .inner {
  border-top: 2px solid #dadada;
}

.cost-block .inner .left,
.section-body-nerrow .cost-block .inner .right {
  width: 60%;
}

.cost-block .inner .right {
  width: 40%;
}

.min-attention {
  margin: 10px auto 0;
  /* font-size: 1.4rem; */
}

.section-body-nerrow .min-attention + .min-attention {
  margin-top: 0;
}

#deliveryDateModal .title {
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  #deliveryDateModal .text,
  #deliveryDateModal .min-attention{
    text-align: left;
  }
}


/* --------------------------------------------------
製品発送日ボタン装飾
--------------------------------------------------- */
.deliverymodal {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5em;
  position: relative;
}

.deliverymodal::before {
  content: "";
  position: absolute;
  top: -10px;
  left: -1px;
  right: -1px;
  bottom: -10px;
}

.commonModalBtn.deliverymodal img {
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
}

/* --------------------------------------------------
カートボタン上の余白
--------------------------------------------------- */

/* 通常カート・FR予約ボタン */
.js-regular-cartin+button, .js-regular-cartin+span>button {
  margin-top: 24px;
}

/* 定期お届け便 */
.crm-button-list.is-teiki-button-list {
  margin-top: 32px;
}

/* SOLD OUT・入荷お知らせボタン */
.default-cart-button .btn-primary.soldout, .default-cart-button .btn-primary.nyuka, .valiation-prop .btn-primary.nyuka, .valiation-prop .btn-primary.soldout, .nosale .btn-primary.nyuka, .nosale .btn-primary.soldout {
  margin-top: 24px;
}

/* --------------------------------------------------
レビュー欄
--------------------------------------------------- */
@media screen and (max-width: 767px) {
  .js-itemDetail-reviewArea {
    position: relative;
  }
  .reviewWidget .reviewWidget_inner {
    padding: 0px;
  }
  .js-accordion-detail--review {
    padding: 50px 10px 0px;
  }
  .section-itemDetail .review-block {
    position: relative;
    padding-top: 20px;
  }
  .reviewWidget .reviewWidget_title {
    margin-bottom: 0px;
    line-height: 1.5;
  }
  .item-info-head-review {
    position: relative!important;
    width: 100%;
    background-color: #fff;
    padding: 10px 0px;
    z-index: 5;
    border-bottom: 1px solid #eee;
  }
  .accordion-trigger {
    top: 12px;
    right: 15px;
  }

  .accordion-trigger--review {
    right: 15px;
    top: 1px;
  }
}
/* --------------------------------------------------
よくあるご質問見出し下のborder
--------------------------------------------------- */
@media screen and (max-width: 767px) {
  .item-info-head.faqTitleHead {
    border-bottom: 1px solid #eee;
  }
}

/* --------------------------------------------------
GPB：SS出し分け
--------------------------------------------------- */
/* .gpbSSBtnArea {
  text-align: left;
}
.gpbSSBtnArea__detail {
  display: grid;
  grid-template-columns: 0.5fr 1.5fr;
  gap: 0px 10px;
  margin-bottom: 30px;
}
.gpbSSBtnArea__detail .gpbSSBtnArea__item .gpbSSBtnArea__text {
  font-size: 1.0rem;
  margin-bottom: 0.8em;
}
.gpbSSBtnArea__detail .gpbSSBtnArea__item .gpbSSBtnArea__gpbSS {
  font-size: 1.2rem;
}
.gpbSSBtnArea__detail .gpbSSBtnArea__plusicon {
  grid-column: 1 / 3;
}
.gpbSSBtnArea__detail .gpbSSBtnArea__plusicon .plusIcon{
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: .8em;
  height: 0.1em;
  background: currentColor;
  border-radius: 0.1em;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.gpbSSBtnArea__detail .gpbSSBtnArea__plusicon .plusIcon::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  transform: rotate(90deg);
}
.gpbSSBtnArea__detail .gpbSSBtnArea__product {
	grid-column: 1 / 3;
  font-size: 1.2rem;
  text-align: center;
  margin-bottom: 16px;
}
.gpbSSBtnArea__detail .gpbSSBtnArea__carnbtn {
	grid-column: 1 / 3;
}
.gpbSSBtnArea__detail .gpbSSBtnArea__carnbtn .gpbSSBtnArea__carnbtn__totalBtn {
  display: block;
  width: 100%;
  color: #393c41;
  margin: 0 auto;
  border: 1px solid #333;
  padding: 10px 14px;
  font-size: 1.4rem;
  transition: .3s;
}

.gpbSSBtnArea__detail .gpbSSBtnArea__carnbtn .gpbSSBtnArea__carnbtn__totalBtn:hover {
  opacity: .6;
}

@media screen and (min-width: 768px) {
  .gpbSSBtnArea__detail .gpbSSBtnArea__item .gpbSSBtnArea__text {
    font-size: 1.2rem;
    margin-bottom: 2em;
  }

  .gpbSSBtnArea__detail .gpbSSBtnArea__item .gpbSSBtnArea__gpbSS {
    font-size: 1.4rem;
  }

  .gpbSSBtnArea__detail .gpbSSBtnArea__product {
    font-size: 1.4rem;
  }
} */

/* --------------------------------------------------
FRテンプレート：FR案内修正
--------------------------------------------------- */
.guidance_link {
  display: block;
  position: relative;
}

.fast-reserve-bnr {
  border: 1px solid #cccccc;
}

.fast-reserve-period {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translateX(-38%);
}

.fast-reserve-term {
  font-size: 14px;
}

.fast-reserve-link {
  margin-top: 0.4em;
}

.fast-reserve-link p {
  text-decoration: underline;
  text-underline-offset: .2em;
  text-align: right;
}

.fast-reserve-link p a {
  transition: .3s;
}

.fast-reserve-link p a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .fast-reserve-container {
    padding-bottom: 16px;
  }
  .fast-reserve-term {
    font-size: 3.73vw;
  }
  .fast-reserve-period {
    width: 65%;
    left: 50%;
    transform: translateX(-34%);
  }
  .fast-reserve-term {
    font-size: 3.2vw;
  }
  .fast-reserve-link p a {
    font-size: 1.2rem;
    transition: .3s;
  }
}

/* --------------------------------------------------
FR最高注文数上限時ボタン
--------------------------------------------------- */

/*コメントパーツ化*/
@media screen and (min-width: 768px) {
  section.item-detail-block.desc-block.top > strong:first-of-type {
    display: block;
    margin-bottom: 60px;
    text-align: center;
    font-weight: normal;
    font-size: 2rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  section.item-detail-block.desc-block.top > strong:first-of-type {
    font-size: 2rem;
    display: block;
    line-height: 1.8;
    font-weight: normal;
    margin: 10px auto 45px;
  }
}

/* PC縦・SP横表示 */
.newsitem__img {
  width: 20%;
  vertical-align: middle;
}

.newsitem__text {
  vertical-align: middle;
}

.text-area {
  margin-left: 20px;
}

@media screen and (max-width: 768px) {
  .newsitem__text {
      width: 100%;
      display: block;
  }

  .newsitem__img {
      margin: 0 auto;
      width: 60%;
      display: block;
  }

  .text-area {
      margin-left: 0px;
  }

  .newsitem__img img {
      margin: 0px auto !important;
  }
}

/* SKINCARE STEPS */

.l-content__box {
  padding: 4rem 0;
}

.l-content__box:not(:last-of-type) {
  border-bottom: 1px solid #eee;
}

.l-content__box .h4 {
  text-align: center;
  font-size: 1.8rem;
}

.l-content__box .list_num {
  padding-inline-start: 0;
}

.l-content__box .list_num__item {
  padding-left: 1.5rem;
  text-indent: -1.5rem;
  padding-bottom: 0.5rem;
}

.l-content__box .flex__media {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: -20px;
  justify-content: center;
}

.l-content__box .media__thumb {
  margin-top: 20px;
}

@media(min-width: 768px) {
  .l-content__box .flex__media {
      flex-direction: row;
  }

  .l-content__box .media__thumb {
      width: 30%;
      margin-right: 20px;
      margin-top: 0;
      flex-shrink: 0;
  }

  .l-content__box .flex__media .media__link:hover {
      opacity: 0.75;
  }
}

.u-text-align--right {
  text-align: right;
}

.u-text-align--center {
  text-align: center;
}

.u-font-weight--700 {
  font-weight: 700;
}

.u-mb16 {
  margin-bottom: 1.6rem;
}

.u-mb24 {
  margin-bottom: 2.4rem;
}

.u-mb48 {
  margin-bottom: 4.8rem;
}

.u-text-decoration--underline {
  text-decoration: underline;
}

/* SKINCARE STEPS ここから*/
.newsitem__wrapper_tips {
  display: flex;
  column-gap: 3rem;
  justify-content: center;
}

.newsitem__img_tips {
  flex: 1 1 30%;
}

.newsitem__text_tips {
  vertical-align: middle;
  flex: 1 1 72%;
}

.btn--navy_tips {
  color: #fff;
  background: #2c2e33;
  display: block;
  width: 600px;
  cursor: pointer;
  text-align: center;
  border-radius: 4px;
  margin: auto;
  margin-top: 1em;
  padding: 12px 50px;
  position: relative;
}

.btn--navy_tips::after {
  position: absolute;
  top: 50%;
  right: 16px;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  content: '';
  -webkit-transform: rotate(0deg) translate(-50%, -50%);
  transform: rotate(0deg) translate(-50%, -50%);
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.btn--navy_tips:hover {
  color: #fff;
  transition: .5s;
  opacity: .8;
}

.h3--magin_tips {
  margin-bottom: 40px;
}

.skin-care-tips__innner {
  text-indent: -4.1em;
  padding-left: 4em;
}

.skin-care-tips__innner li {
  margin-bottom: 5px;
}

.skin-care-tips__innner li:last-child {
  margin-bottom: 0px;
}

@media screen and (max-width: 768px) {

  .newsitem__wrapper_tips {
      display: block;
  }

  .newsitem__text_tips {
      width: 100%;
      display: block;
  }

  .newsitem__img_tips {
      margin: 0 auto;
      width: 100%;
      display: block;
  }

  .text-area_tips {
      margin-left: 0px;
  }

  .newsitem__img_tips img {
      margin: 0px auto !important;
  }

  .btn--navy_tips {
      display: block;
      width: 100%;
  }

  .h3--magin_tips {
      margin-bottom: 0px;
  }

  /* /SKINCARE STEPS　ここまで */
}


    /* フェイスマスク比較 */
    .newsitem__mask {
      width: 40%;
  }

  @media screen and (max-width: 768px) {
      .newsitem__mask {
          margin: 0 auto;
          width: 100%;
          display: block;
      }

      .newsitem__mask img {
          margin: 0px auto !important;
      }
  }

  /* /フェイスマスク比較 */
  /* PC縦・SP横表示 */
  .newsitem__img {
      width: 20%;
      vertical-align: middle;
  }

  .newsitem__text {
      vertical-align: middle;
  }

  .text-area {
      margin-left: 20px;
  }

  @media screen and (max-width: 768px) {
      .newsitem__text {
          width: 100%;
          display: block;
      }

      .newsitem__img {
          margin: 0 auto;
          width: 60%;
          display: block;
      }

      .text-area {
          margin-left: 0px;
      }

      .newsitem__img img {
          margin: 0px auto !important;
      }
  }

  /* SKIN CARE TIPS */
  .newsitem__wrapper_tips {
      display: flex;
      column-gap: 3rem;
      justify-content: center;
  }

  .newsitem__img_tips {
      flex: 1 1 22%;
  }

  .newsitem__text_tips {
      vertical-align: middle;
      flex: 1 1 72%;
  }

  .btn--navy_tips {
      color: #fff;
      background: #2c2e33;
      display: block;
      width: 600px;
      cursor: pointer;
      text-align: center;
      border-radius: 4px;
      margin: auto;
      margin-top: 1em;
      padding: 12px 50px;
      position: relative;
  }

  .btn--navy_tips::after {
      position: absolute;
      top: 50%;
      right: 16px;
      width: 12px;
      height: 12px;
      margin-top: -6px;
      content: '';
      -webkit-transform: rotate(0deg) translate(-50%, -50%);
      transform: rotate(0deg) translate(-50%, -50%);
      border-top: solid 1px #fff;
      border-right: solid 1px #fff;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
  }

  .btn--navy_tips:hover {
      color: #fff;
      transition: .5s;
      opacity: .8;
  }

  .h3--magin_tips {
      margin-bottom: 40px;
  }

  /* /SKIN CARE TIPS */

  @media screen and (max-width: 768px) {

      /* SKIN CARE TIPS */
      .newsitem__wrapper_tips {
          display: block;
      }

      .newsitem__text_tips {
          width: 100%;
          display: block;
      }

      .newsitem__img_tips {
          margin: 0 auto;
          width: 100%;
          display: block;
      }

      .text-area_tips {
          margin-left: 0px;
      }

      .newsitem__img_tips img {
          margin: 0px auto !important;
      }

      .btn--navy_tips {
          display: block;
          width: 100%;
      }

      .h3--magin_tips {
          margin-bottom: 0px;
      }

      /* /SKIN CARE TIPS */
  }

  /* 製品コメント2の右側画像表示関連 */
  .third-one-right img {
      border-radius: 0;
  }

  .third-one-right img {
      margin-bottom: 5px;
  }

  .third-one-right img:last-child {
      margin-bottom: 0px;
  }

  @media screen and (max-width: 767px) {
      .third-one-right {
          margin: 25px 0px;
          width: 100%;
          display: block;
      }
  }




/* 店舗在庫表示 */
/* .storeStock-buttonArea {
  display: none !important;
}
.undercart-btnblock .undercart-title {
  margin-top: 4rem;
} */
.storeStock-closeinfo {
  display: none !important;
  /* margin: 32px 0 16px;
  padding: 0; */
}
.storeStock-closeinfo a {
  text-decoration: underline;
  font-size: 1.2rem;
  text-align: center;
}



  /* レビュー装飾削除 */
  .review-block .reviewQuestionTab {
    display: none;
  }

  .review-block .accordion-detail {
    padding: 0px;
  }

  .review-block .ukomi-fullwidth {
    display: none !important;
  }