/* utility */
.block-dib {
  display: inline-block;
}
.u-align--center {
  text-align: center;
}
.u-mt0 {
  margin-top: 0px;
}
.u-mt20 {
  margin-top: 20px;
}
.u-mb10 {
  margin-bottom: 10px;
}
.u-mb20 {
  margin-bottom: 20px;
}
.u-hide {
  display: none;
}
.u-hide-pc {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .u-mt0-sp {
    margin-top: 0px !important;
  }
  .u-mt10-sp {
    margin-top: 10px !important;
  }
  .u-mt20-sp {
    margin-top: 20px !important;
  }
  .u-hide-pc{
    display: block !important;
  }
  .u-hide-sp{
    display: none !important;
  }
}
.utility-mt-0 {
  margin-top: 0 !important;
}
.utility-mt-1 {
  margin-top: 8px !important;
}
.utility-mt-2 {
  margin-top: 16px !important;
}
.utility-mt-3 {
  margin-top: 24px !important;
}
.utility-mt-4 {
  margin-top: 32px !important;
}
.utility-mt-5 {
  margin-top: 40px !important;
}
.utility-mt-6 {
  margin-top: 48px !important;
}
.utility-mt-7 {
  margin-top: 56px !important;
}
.utility-mb-0 {
  margin-bottom: 0 !important;
}
.utility-mb-1 {
  margin-bottom: 8px !important;
}
.utility-mb-2 {
  margin-bottom: 16px !important;
}
.utility-mb-3 {
  margin-bottom: 24px !important;
}
.utility-mb-4 {
  margin-bottom: 32px !important;
}
.utility-mb-5 {
  margin-bottom: 40px !important;
}
.utility-mb-6 {
  margin-bottom: 48px !important;
}
.utility-mb-7 {
  margin-bottom: 56px !important;
}
.utility-mr-0 {
  margin-right: 0 !important;
}
.utility-mr-1 {
  margin-right: 8px !important;
}
.utility-mr-2 {
  margin-right: 16px !important;
}
.utility-mr-3 {
  margin-right: 24px !important;
}
.utility-mr-4 {
  margin-right: 32px !important;
}
.utility-mr-5 {
  margin-right: 40px !important;
}
.utility-mr-6 {
  margin-right: 48px !important;
}
.utility-mr-7 {
  margin-right: 56px !important;
}
.utility-ml-0 {
  margin-left: 0 !important;
}
.utility-ml-1 {
  margin-left: 8px !important;
}
.utility-ml-2 {
  margin-left: 16px !important;
}
.utility-ml-3 {
  margin-left: 24px !important;
}
.utility-ml-4 {
  margin-left: 32px !important;
}
.utility-ml-5 {
  margin-left: 40px !important;
}
.utility-ml-6 {
  margin-left: 48px !important;
}
.utility-ml-7 {
  margin-left: 56px !important;
}
@media screen and (min-width: 768px) {
  .utility-pc-mt-0 {
    margin-top: 0 !important;
  }
  .utility-pc-mt-1 {
    margin-top: 8px !important;
  }
  .utility-pc-mt-2 {
    margin-top: 16px !important;
  }
  .utility-pc-mt-3 {
    margin-top: 24px !important;
  }
  .utility-pc-mt-4 {
    margin-top: 32px !important;
  }
  .utility-pc-mt-5 {
    margin-top: 40px !important;
  }
  .utility-pc-mt-6 {
    margin-top: 48px !important;
  }
  .utility-pc-mt-7 {
    margin-top: 56px !important;
  }
  .utility-pc-mb-0 {
    margin-bottom: 0 !important;
  }
  .utility-pc-mb-1 {
    margin-bottom: 8px !important;
  }
  .utility-pc-mb-2 {
    margin-bottom: 16px !important;
  }
  .utility-pc-mb-3 {
    margin-bottom: 24px !important;
  }
  .utility-pc-mb-4 {
    margin-bottom: 32px !important;
  }
  .utility-pc-mb-5 {
    margin-bottom: 40px !important;
  }
  .utility-pc-mb-6 {
    margin-bottom: 48px !important;
  }
  .utility-pc-mb-7 {
    margin-bottom: 56px !important;
  }
  .utility-pc-mr-0 {
    margin-right: 0 !important;
  }
  .utility-pc-mr-1 {
    margin-right: 8px !important;
  }
  .utility-pc-mr-2 {
    margin-right: 16px !important;
  }
  .utility-pc-mr-3 {
    margin-right: 24px !important;
  }
  .utility-pc-mr-4 {
    margin-right: 32px !important;
  }
  .utility-pc-mr-5 {
    margin-right: 40px !important;
  }
  .utility-pc-mr-6 {
    margin-right: 48px !important;
  }
  .utility-pc-mr-7 {
    margin-right: 56px !important;
  }
  .utility-pc-ml-0 {
    margin-left: 0 !important;
  }
  .utility-pc-ml-1 {
    margin-left: 8px !important;
  }
  .utility-pc-ml-2 {
    margin-left: 16px !important;
  }
  .utility-pc-ml-3 {
    margin-left: 24px !important;
  }
  .utility-pc-ml-4 {
    margin-left: 32px !important;
  }
  .utility-pc-ml-5 {
    margin-left: 40px !important;
  }
  .utility-pc-ml-6 {
    margin-left: 48px !important;
  }
  .utility-pc-ml-7 {
    margin-left: 56px !important;
  }
}
@media screen and (max-width: 767px) {
  .utility-sp-mt-0 {
    margin-top: 0 !important;
  }
  .utility-sp-mt-1 {
    margin-top: 8px !important;
  }
  .utility-sp-mt-2 {
    margin-top: 16px !important;
  }
  .utility-sp-mt-3 {
    margin-top: 24px !important;
  }
  .utility-sp-mt-4 {
    margin-top: 32px !important;
  }
  .utility-sp-mt-5 {
    margin-top: 40px !important;
  }
  .utility-sp-mt-6 {
    margin-top: 48px !important;
  }
  .utility-sp-mt-7 {
    margin-top: 56px !important;
  }
  .utility-sp-mb-0 {
    margin-bottom: 0 !important;
  }
  .utility-sp-mb-1 {
    margin-bottom: 8px !important;
  }
  .utility-sp-mb-2 {
    margin-bottom: 16px !important;
  }
  .utility-sp-mb-3 {
    margin-bottom: 24px !important;
  }
  .utility-sp-mb-4 {
    margin-bottom: 32px !important;
  }
  .utility-sp-mb-5 {
    margin-bottom: 40px !important;
  }
  .utility-sp-mb-6 {
    margin-bottom: 48px !important;
  }
  .utility-sp-mb-7 {
    margin-bottom: 56px !important;
  }
  .utility-sp-mr-0 {
    margin-right: 0 !important;
  }
  .utility-sp-mr-1 {
    margin-right: 8px !important;
  }
  .utility-sp-mr-2 {
    margin-right: 16px !important;
  }
  .utility-sp-mr-3 {
    margin-right: 24px !important;
  }
  .utility-sp-mr-4 {
    margin-right: 32px !important;
  }
  .utility-sp-mr-5 {
    margin-right: 40px !important;
  }
  .utility-sp-mr-6 {
    margin-right: 48px !important;
  }
  .utility-sp-mr-7 {
    margin-right: 56px !important;
  }
  .utility-sp-ml-0 {
    margin-left: 0 !important;
  }
  .utility-sp-ml-1 {
    margin-left: 8px !important;
  }
  .utility-sp-ml-2 {
    margin-left: 16px !important;
  }
  .utility-sp-ml-3 {
    margin-left: 24px !important;
  }
  .utility-sp-ml-4 {
    margin-left: 32px !important;
  }
  .utility-sp-ml-5 {
    margin-left: 40px !important;
  }
  .utility-sp-ml-6 {
    margin-left: 48px !important;
  }
  .utility-sp-ml-7 {
    margin-left: 56px !important;
  }
}
/* / utility */

.wrap.member_history .history-tab-block {
  max-width: none;
  width: 100%;
}
.wrap.member_history .history-tab-block .tab-inner {
  display: flex;
}
.wrap.member_history .history-tab-block .tab {
  box-sizing: border-box;
  flex-basis: 280px;
  padding: 20px;

}

@media screen and (max-width: 767px) {
  .wrap.member_history .history-tab-block {
    max-width: 100%;
    width: auto;
    margin-left: auto;
    margin-right: auto;
  }
  .wrap.member_history .history-tab-block .tab {
    box-sizing: border-box;
    flex-basis: auto;
    padding: 8px 8px;
    margin: auto;
  }
}

/* bugfix detail icon hitarea */
.item-pic.img-valiation.soldout:before {
  z-index: 1;
}
.item-pic.img-valiation.soldout:after {
  z-index: 2;
}
.item-detail-image .color-images .img-valiation:hover img,
.item-detail-image .color-images .img-valiation.active img {
  z-index: 2;
}
.item-detail-image .color-images .img-valiation:hover:before,
.item-detail-image .color-images .img-valiation.active:before {
  border-radius: 0;
}

.item-dataarea{
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .item-dataarea{
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

/* / bugfix detail icon hitarea */

.section-ranking .icon-holder-two {
  position: relative;
  display: inline-block;
}
.section-ranking .status-icon.jp {
  display: flex;
  flex-wrap: wrap;
}
.section-ranking .icon.free-tag {
  border-radius: 100px;
  padding: 4px 6px 6px;
  max-width: none;
  word-break: keep-all;
}
.section-ranking .icon.free-tag:not(:last-child) {
  margin-right: 5px;
}

/* item list,details keywprd icon */
.status-tag .tag-status {
  border-radius: 3px;
  letter-spacing: 0.1em;
}
.item_list_image .icon-holder-two {
  position: inherit;
  display: inline-block;
  padding-top: 5px;
  padding-right: 0;
}
.item_list_image .icon-holder-two .jp {
  display: inline-block;
}
.item_list_image .icon-holder-two .icon.free-tag {
  float: left;
  max-width: none;
  border-radius: 100px;
  padding: 4px 6px 6px;
}
.item_list_image .icon-holder-two .icon.free-tag:not(:last-child) {
  margin-right: 5px;
}
.status-tag.detail {
  margin: 0 0 5px;
}
.status-tag .tag-status {
  border-radius: 3px;
  letter-spacing: 0.1em;
}
.icon-holder-product .status-icon-two {
  position: inherit;
  display: inline-block;
  padding-top: 5px;
  padding-right: 0;
}
.icon-holder-product .status-icon-two .jp {
  display: inline-block;
}
.icon-holder-product .status-icon-two .icon.free-tag {
  float: left;
  max-width: none;
  font-size: 10px;
  padding: 5px 15px;
  border-radius: 100px;
}
.icon-holder-product .status-icon-two .icon.free-tag:not(:first-child) {
  margin-left: 5px;
}
/* / item list,details keywprd icon */

/* recommend-block keywprd icon */
.icon-holder-product .status-icon-two .icon.free-tag {
  padding: 4px 10px 6px;
  margin: 5px 5px 5px 0;
  line-height: 1.6;
}
.icon-holder-product .status-icon-two .icon.free-tag:not(:first-child) {
  margin-left: 0;
}
.icon-tag-holder.icon-holder-product .status-icon-two.en {
  display: none;
}
.icon-tag-holder {
  display: flow-root;
}
.icon-tag-holder ul {
  display: contents;
}
.icon-tag-holder .status-tag .tag-status {
  float: left;
  padding: 4px 6px 6px;
  margin: 5px 5px 5px 0;
}
.icon-tag-holder.icon-holder-product .status-icon-two {
  display: contents;
}
.recommend-block .icon-holder-two {
  position: inherit;
  padding-right: 0;
}
.recommend-block .icon-holder-two.jp .jp {
  display: inline-block;
}
.recommend-block .icon-holder-two.jp .icon.free-tag {
  float: left;
  max-width: none;
  padding: 5px 7px;
  border-radius: 100px;
}
.recommend-block .icon-holder-two.jp .icon.free-tag:not(:last-child) {
  margin-right: 3px;
}
/* / recommend-block keywprd icon */

/* ethical */
.ethical-btn-wrap + .ethical-btn-wrap {
  padding-bottom: 30px;
  border-bottom: 2px solid #f6f6f6;
  margin-bottom: 30px;
}
/*マージン調整に伴う記述*/
.item-detail-image .btn-area {
  padding-top: 0;
}
.info-block.ethicalSelect {
  margin-bottom:30px;
}
.ethical-btn-wrap .info-block.ethicalSelect{
  margin-bottom: 15px;
}
.price + .ethical-price{
  display: none;
}
/* / */
.ethical-btn-holder {
  display: flex;
  justify-content: center;
  margin: 15px 0;
  width: fit-content;
}
.ethical-btn-holder > span {
  border: 1px solid #ccc;
  border-width: 1px 1px 1px 0;
  flex-direction: column;
  text-align: center;
  border-radius: 0 6px 6px 0;
  display: flex;
  justify-content: center;
  flex: 1;
  overflow: auto;
}
.ethical-btn-holder > span:first-child {
  border: 1px solid #ccc;
  border-radius: 6px 0 0 6px;
  border-width: 1px 0px 1px 1px;
}
.ethical-btn-holder > span:last-child {
  border: 1px solid #ccc;
  border-radius: 0px 6px 6px 0;
  border-width: 1px 1px 1px 1px;
}
.ethical-btn-holder > span div.ethical-btn-item {
  display: inline-block;
  padding: 15px 10px;
  background-color: #2b2e33;
  color: #f5f5f5;
  border-width: 0px;
}
.ethical-btn-holder > span span {
  position: relative;
  height: 100%;
}
.ethical-btn-holder > span span div.ethical-btn-item {
  display: flex;
  flex-direction: column;
  align-content: center;
  align-items: center;
  justify-content: center;
}
.ethical-btn-holder > span div.ethical-btn-item .ethical-btn-item-primary {
  color: #fafafa;
}
.ethical-btn-holder > span div.ethical-btn-item .reduction {
  color: #727273;
}
.ethical-btn-holder .ethical-btn-item {
  width: 258px;
  padding: 18px 10px;
  height: 70px;
  display: flex;
  flex-direction: column;
  align-content: center;
  align-items: center;
  justify-content: center;
}
.ethical-btn-item-primary {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: #2c2c47;
  line-height: 1.5rem;
}
.ethical-btn-item-secondary {
  margin-top: 8px;
}
.ethical-btn-item-secondary.not-value {
  margin-top: 0;
}
.ethical-btn-item .name {
  font-size: 1.1rem;
  margin-right: 0.5em;
}
.ethical-btn-item .price {
  font-size: 1.5rem;
  display: flex;
  align-items: flex-end;
  line-height: 1;
}
.ethical-btn-item .price .tax {
  font-size: 1.1rem;
}
.ethical-btn-item .reduction {
  font-size: 1rem;
  color: #9f9f9f;
}
.ethical-btn-item .reduction img {
  display: inline-block;
  width: 2em;
  height: 2em;
  vertical-align: middle;
  margin-right: 5px;
}
.ethical-about {
  display: flex;
  justify-content: center;
}
.ethical-about a {
  font-size: 10px;
  color: #222;
  display: flex;
  align-items: center;
  background-color: #dfe4ea;
  border-radius: 60px;
  padding: 0;
  text-decoration: none;
  line-height: 1;
}
.ethical-about a img {
  display: inline-block;
  width: 1.4rem;
  height: 1.2rem;
  margin-left: 0.3rem;
}
.ethical-about a u {
  text-decoration: none;
  padding: 10px 45px;
  display:inline-block;
  width: 100%;
  text-align: center;
}

#ethical-popup .area-form {
  width: auto;
}
#ethical-popup .area-form .container {
  position: relative;
  max-width: 300px;
}
#ethical-popup .area-form .container a.btn.btn-primary {
  background-color: #383635;
  border: none;
  min-height: 45px;
  line-height: 1;
}
#ethical-popup .area-form .container a.btn.btn-primary span.btn-txt {
  font-size: 1.1rem;
}
#ethical-popup .area-form .container img {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.3rem;
}
.ethical-content{
  max-height: 47vh;
  overflow: auto;
  padding: 30px 20px 5px;
  margin-bottom: 10px;
}

.refill-area {
  width: 100%;
  max-width: 240px;
  margin: 0 auto 30px;
}
.refill-area .refill-area__btn {
  display: block;
  width: 100%;
  padding: 18px 10px;
  border-radius: 4px;
  text-align: center;
  line-height: 1;
}
.refill-area a.refill-area__btn {
  color: #2b2f33;
  background: #fff;
  border: solid 1px #ccc;
}
.refill-area div.refill-area__btn {
  color: #fff;
  background: #2C2E33;
}

@media screen and (max-width: 767px) {
  .ethical-btn-wrap .ethical-btn-holder {
    width: auto;
  }
  .ethical-btn-item {
    padding: 0.5rem 1rem;
    display: flex;
    flex-direction: column;
  }
  .ethical-btn-holder .ethical-btn-item {
    width: 100%;
    display: flex;
    height: 100%;
    justify-content: center;
  }
  .ethical-btn-holder > span div.ethical-btn-item{
    padding: 9px 0px;
    min-height: 90px;
  }
  .ethical-btn-item-primary {
    align-items: center;
    flex-direction: column;
  }
  .ethical-btn-item-secondary {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .ethical-btn-item .name {
    font-size: 1.2rem;
    margin-right: 0em;
    margin-bottom: 0.8rem;
  }
  .ethical-btn-item .price {
    font-size: 1.4rem;
    margin-bottom: 0;
    align-items: baseline;
  }
  .ethical-btn-item .price #price1,
  .ethical-btn-item .price #price2 {
    font-size: 1.7rem;
  }
  .ethical-btn-item .price .tax {
    font-size: 1rem;
    margin-left: 0.3rem;
  }
  .ethical-btn-item .reduction {
    font-size: 1rem;
    display: flex;
    align-items: center;
  }
  .ethical-about a {
    font-size: 1rem;
    padding: 0;
    width: 100%;
    justify-content: center;
  }

  #ethical-popup{
    max-height: calc(100vh - 10px);
  }
  #ethical-popup .area-form .container {
    position: relative;
    max-width: 100%;
    width: 100%;
    padding: 0;
  }
  .refill-area {
    width: 100%;
    max-width: 100%;
  }
}
/* / ethical */

/* IF_PUT_TO_CART_ALL */
.order-history .buttonarea .item {
  padding: 20px 10px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .order-history .buttonarea .inner {
    flex-wrap: wrap;
  }
  .order-history .buttonarea .item {
    padding: 10px;
    width: calc(100% / 2);
    flex-grow: unset;
  }
}
/* / IF_PUT_TO_CART_ALL */

/* カート購入ボタン出し分け */
.cart-payment.is-reserve .buttonarea .btn-defaultCart,
.cart-payment.is-reserve .buttonarea .amazonpay-button-inner-image,
.cart-index-payment .cart-payment .buttonarea .btn-cartDummy,
.amazonpay-button-inner-image-dummy{
  display: none;
}
.cart-payment.is-reserve .buttonarea .btn-cartDummy,
.cart-index-payment .cart-payment.is-reserve .amazonpay-button-inner-image-dummy{
  display: block;
  cursor:pointer;
}
.amazonpay-button-inner-image-dummy{
  max-width: 300px;
  margin: 0 auto;
}
.btn-cartPopupDelete{
  position: absolute;
  right: 10px;
  top: 10px;
  cursor:pointer;
  width: 20px;
  height: 20px;
  background: url(../images/icon/btn-close-gray.svg) no-repeat center center/50% 50%;
}
.txt-red-emphasis{
  font-size: 1.3em;
  font-weight: bold;
  color: #f00;
  text-decoration: underline;
}

/* accordion vertical */
.acd-check {
  display: none;
}
input[type="checkbox"].acd-check + label {
  padding: inherit;
  min-height: auto;
  margin: 40px auto 20px;
  display: table;
  font-weight: normal;
  border-bottom: 1px solid #79888B;
  cursor: pointer;
}
input[type="checkbox"].acd-check + label:before {
  display: none;
}
input[type="checkbox"].acd-check + label span.view {
  display: none;
  opacity: 1;
  visibility: visible;
}
input[type="checkbox"].acd-check + label span.hidden {
  display: block;
  opacity: 1;
  visibility: visible;
}
input[type="checkbox"].acd-check:checked + label span.view {
  display: block;
  opacity: 1;
  visibility: visible;
}
input[type="checkbox"].acd-check:checked + label span.hidden {
  display: none;
  opacity: 1;
  visibility: visible;
}
input[type="checkbox"].acd-check:checked + label span.view:after {
  content: "";
  width: 7px;
  height: 7px;
  display: inline-block;
  border: 1px solid #999;
  border-width: 0 1px 1px 0;
  transform: rotate(-135deg);
}
.acd-label {
  display: block;
  padding: 10px;
  color: #79888B;
  position: relative;
  font-weight: normal;
}
.acd-content {
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .0s;
  visibility: hidden;
  overflow: hidden;
}
.acd-check:checked + .acd-label + .acd-content {
  display: contents;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}
/* / accordion vertical */

.reward_item__list.reward_item__list--links a.reward_item__item__inner {
  display: block;
}
@media screen and (min-width: 768px) {
  .reward_item__list.reward_item__list--links a.reward_item__item__inner:hover {
    opacity: 0.8;
    transition-duration: 0.5s;
    transform: translateY(-1px);
    box-shadow: rgb(100 100 111 / 20%) 0 7px 29px 0;
  }
}
.reward_item__list.reward_item__list--links a.reward_item__item__inner .reward_item__item__text {
  text-decoration: underline;
}

/* reward_gold */
.reward_item__item__inner {
  width: 100%;
}
.reward_item__item__note,
.reward_item__item__note--s {
  word-break: break-all;
}

@media screen and (min-width: 768px) {
  .shiro-crm__rewards__nav__flex {
    display: flex;
    justify-content: space-around;
  }
  .shiro-crm__rewards__nav__flex__item {
    width: 400px;
  }
  .reward_item__list {
    justify-content: center;
  }
  .reward_item__list .reward_item__item {
    width: calc(100% / 6);
    padding: 0.8%;
  }
  .reward_item_banner__btns {
    display: flex;
  }
  .js-on-navy .shiro-crm__rewards__card__inner {
    padding-top: 8px;
  }
}

@media screen and (max-width: 767px) {
  .reward_item_banner__btns .reward_item_banner__btn:first-child {
    margin-bottom: 10px;
  }
}
/* / reward_gold  */

/* smp */
.crm-pagenav {
  padding-top: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.crm-pagenav ul {
  display: flex;
  justify-content: space-between;
}
.crm-pagenav li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 20px;
  font-size: 20px;
}
.crm-pagenav li a:after {
  display: inline-block;
  content: "";
  width: 9px;
  height: 9px;
  border: 1px solid #222;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg) translate(-2px, -2px);
  margin-top: -4px;
  margin-left: 10px;
}
.crm-reward-section .reward_item__item__desc {
  padding: 15px 10px;
}
.crm-reward-section .c-crm-section-title {
  margin-bottom: 20px;
}
.crm-reward-section .c-crm-section-title:not(:first-child) {
  margin-top: 40px;
  margin-bottom: 20px;
}
.c-crm-section-title-main {
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 18px;
}
h2.c-crm-section-title {
  font-size: 28px;
}
.c-crm-section-title {
  font-size: 24px;
}
.crm-about-system__desc.crm-smp {
  border-bottom: 1px solid #2C2E33;
  padding-bottom: 70px;
  margin-bottom: 70px;
}
.reward_item__list.crm-smp {
  margin-top: 20px;
}
.reward_item__list.crm-smp .reward_item__item__text {
  font-size: 1.4rem;
  text-align: left;
  line-height: 1.5;
}
.reward_item__list.crm-smp .reward_item__item__note--s,
.reward_item__list.crm-smp .reward_item__item__note {
  text-align: left;
  line-height: 1.5;
  word-break: break-all;
}
.reward_item__list.crm-smp .reward_item__item__note a,
.reward_item__list.reward-edt .reward_item__item__note a {
  display: flex;
  align-items: center;
}
.reward_item__list.crm-smp .reward_item__item__note a:after,
.reward_item__list.reward-edt .reward_item__item__note a:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #222222;
  border-width: 0 1px 1px 0;
  transform: rotate(-45deg);
}

.c-crm-section-title.crm-smp {
  border-top: 1px solid #2C2E33;
  padding-top: 70px;
  margin-top: 70px;
  margin-bottom: 20px;
}
.c-crm-section-title.crm-smp {
  margin-top: 70px;
  margin-bottom: 20px;
}
.reward_item__list.reward-edt {
  font-size: 1.3rem;
}
.crm-reward-section:not(:first-child) {
  border-top: 1px solid #2C2E33;
  padding-top: 70px;
  margin-top: 70px;
  margin-bottom: 20px;
}

.shiro-crm__rewards__content.crm-smp {
  display: flex;
  justify-content: center;
  margin-top: 20px;
  margin-bottom: 20px;
}
.shiro-crm__rewards__content.crm-smp .shiro-crm__rewards__content__ticket {
  display: flex;
  width: calc(100% - 80px);
  justify-content: space-between;
}
.shiro-crm__rewards__content.crm-smp .shiro-crm__rewards__content__ticket--navy {
  width: 100%;
  gap: 20px;
}
.shiro-crm__rewards__content.crm-smp .shiro-crm__rewards__content__ticket .img-holder {
  margin-top: 20px;
  margin-bottom: 20px;
  position: relative;
  max-width: 320px;
  margin-right: auto;
  margin-left: auto;
}
.reward_attention {
  width: calc((100% / 6) * 4 - 1em);
  display: block;
  text-align: left;
  margin: auto;
  font-size: 80%;
}

@media screen and (max-width: 767px) {
  h2.c-crm-section-title {
    font-size: 26px;
  }
  .crm-reward-section .c-crm-section-title-main {
    font-size: 24px;
  }
  .crm-reward-section div.c-crm-section-title {
    font-size: 22px;
  }
  .crm-pagenav {
    padding-top: 32px;
  }
  .crm-pagenav ul {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  .crm-pagenav li {
    font-size: 1.8rem;
    margin: 0 0 0.5rem 0;
    position: relative;
    width: 100%;
  }
  .crm-pagenav li a {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .crm-pagenav li a:after {
    transform: rotate(45deg) translate(0px, 0px);
  }
  .shiro-crm__rewards__content.crm-smp .shiro-crm__rewards__content__ticket {
    width: 100%;
    display: block;
  }
  .shiro-crm__rewards__content.crm-smp .shiro-crm__rewards__content__ticket .img-holder {
    max-width: none;
  }
  .reward_item__list.crm-smp {
    margin-bottom: 10px;
  }
  .reward_attention {
    width: auto;
    margin-bottom: 20px;
  }
  .shiro-crm__container--inverted #anchor1,
  .shiro-crm__container--inverted #anchor2,
  .shiro-crm__container--inverted #anchor3 {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}
/* / smp */

/* Addition of payment method */
.paypal-kessai img {
  width: auto;
}
/* / Addition of payment method */

/* cart */
.kessai_link_attention {
  color: #fe0000;
}
/* /cart */

/* input_member */

/* 特典ページ内遷移 */
.privilege__navi {
  width: 30%;
  margin: 0 auto 40px;
}
.privilege__navi__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* margin: 0 auto; */
}

.privilege__navi__list .privilege__navi__item {
  font-size: 1.6rem;
  color: #393c3f;
}

.privilege__navi__list .privilege__navi__item a {
  border-bottom: 1px solid #393c41;
  transition: .3s;
}
.privilege__navi__list .privilege__navi__item a:hover {
  opacity: .6;
}

@media screen and (max-width: 767px) {
  .privilege__navi {
    width: 70%;
    margin: 0 auto 20px;
  }
  .privilege__navi__list .privilege__navi__item {
    font-size: 1.4rem;
  }
}

.shiro-crm__status__header.navy{
  background-color: #E4D9C7;
}
.shiro-crm__status__content.shiro-crm__status__content--mypage{
  background-color: #E4D9C7;
}
@media screen and (max-width: 767px) {
  .shiro-crm__status__content.shiro-crm__status__content--mypage{
    padding-right: 6px;
    padding-left: 6px;
    padding-top: 50px;
  }
  .shiro-crm__status__content .shiro-crm__rewards__notice{
    width: calc(100% + 12px);
    transform: translateX(-6px);
  }
}

.shiro-crm__status_family{
  background-color: #050D26;
  outline:solid 1px #fff;
  outline-offset: -4px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding:30px 20px;
  color: #fff;
  border-radius: 6px;
  max-width: 345px;
  margin: 0 auto 80px;

}

@media screen and (max-width: 767px) {
  .shiro-crm__status_family{
    margin: 30px auto 20px;
  }
}

.shiro-crm__status_family img{
  width: 90px;
  margin-right: 20px;
  height: auto;
}
.shiro-crm__stage__next__title__bold {
  font-weight: bold;
  display: block;
  text-align: center;
  margin-bottom: 20px;
}
.shiro-crm__stage__next__title__comma{
  display: none;
}
span+.shiro-crm__stage__next__title__comma{
  display: inline;
}
.shiro-crm__stage__news__main{
  font-size: 14px;
  line-height: 1.5em;
}
#rankParent .rank-default {
  display: none;
}

.shiro-crm__rewards__title {
  font-weight: bold;
}

.shiro-crm__rewards__card {
  margin: 10px auto;
  position: relative;
  max-width: 100%;
  line-height: 1;
  background-size: contain;
  width: 170px;
  height: 63px;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  border-radius: 5px;
  background-color: #fff;
  border: 1px solid #3d3d3e;
  background-size: 20px auto;
  background-position: -1px -1px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card {
    width: 101px;
    height: 93px;
  }
}

.shiro-crm__rewards__card--gold {
  background-image: url(../images/crm/crm-rewards__card-gold-pc.png);
}

.shiro-crm__rewards__card--gold02 {
  width: 170px;
  height: 63px;
  line-height: 1.6;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 10px;
  text-align: left;
  background-image: url(../images/crm/crm-rewards__card-gold-pc.png);
}

.shiro-crm__rewards__card.shiro-crm__rewards__card--gold.shiro-crm__rewards__card--navy {
  background-image: url(../images/crm/crm-rewards__card-navy-pc.png);
}

.shiro-crm__rewards__card--gold02 em,
.shiro-crm__rewards__card--silver02 em {
  font-style: normal;
  font-weight: bold;
}

.shiro-crm__rewards__card__deadline {
  color: #f00;
}

.shiro-crm__rewards__card--silver {
  background-image: url(../images/crm/crm-rewards__card-silver-pc.png);
}

.shiro-crm__rewards__card--silver02 {
  width: 170px;
  height: 63px;
  line-height: 1.6;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 10px;
  text-align: left;
  background-image: url(../images/crm/crm-rewards__card-silver-pc.png);
}

.shiro-crm__rewards_table02 .shiro-crm__rewards__card {
  width: 170px;
  height: 63px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table02 .shiro-crm__rewards__card {
    width: 170px;
    /* width: 160px; */
    height: 120px;
  }
}

.shiro-crm__rewards__card--used {
  background-size: contain;
  border-color: transparent;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  display: none;
  background-image: url(../images/crm/crm-rewards__card-used_pc.png);
}
.shiro-crm__rewards__card__year{
  font-size: 12px;
  color: #fff;
  margin-top: -8px;
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__year{
    display: block;
    font-size: 10px;
    text-align: center;
    width: 100%;
    position: absolute;
    top:8px;
    color: #fff;
    margin-bottom: 0;
    margin-top: 0;
  }
}

.is-used .shiro-crm__rewards__card.shiro-crm__rewards__card--used,
.is-used .shiro-crm__rewards__card02 {
  display: flex;
}

.is-used .shiro-crm__rewards__card,
.is-used .shiro-crm__rewards__message01,
.is-used .shiro-crm__rewards__message02 {
  display: none;
}

.shiro-crm__rewards__card02 {
  background-size: contain;
  border-color: transparent;
  justify-content: center;
  align-items: center;
  display: none;
  width: 170px;
  height: 63px;
  background-position: -1px -1px;
  background-repeat: no-repeat;
  background-color: transparent;
  background-image: url(../images/crm/crm-rewards__card-used_pc02.svg);
}

.shiro-crm__rewards__card__item {
  font-size: 10px;
}

.shiro-crm__rewards__card__item:last-child {
  flex: 1;
}

.shiro-crm__rewards__card__item .shiro-crm__rewards__card_min img {
  height: 48px;
  width: auto;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card02 {
    background-image: url(../images/crm/crm-rewards__card-used_sp02.svg);
    width: 170px;
    height: 118px;
    background-size: 100%;
    background-position: center;
  }

  .shiro-crm__rewards__card__item .shiro-crm__rewards__card_min img {
    height: 74px;
    width: auto;
  }

  .is-used .shiro-crm__rewards__card.shiro-crm__rewards__card--used,
  .is-used .shiro-crm__rewards__card02 {
    display: flex;
    margin: 10px auto;
  }

  .is-used .shiro-crm__rewards__card02 {
    margin: 10px auto 0 0;
  }
}

.rewards__card__item,
.is-used .rewards__card__item{
  margin: 0 auto 0 0;
}

.shiro-crm__rewards__card_min {

  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  margin-left: 4px;
  width: 94px;
  padding: 2px 0;

}

.shiro-crm__rewards__card_min div {
  transform: scale(0.6);
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card--used {
    background-image: url(../images/crm/crm-rewards__card-used_sp.png);
  }
}

.shiro-crm__rewards__card__inner {
  display: flex;
  padding: 2px 10px;
  flex: 1;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__inner {
    flex-direction: column;
  }
}

.shiro-crm__rewards__card__inner02 {
  background-color: #000;
  color: #fff;
  font-size: 10px;
  padding: 2px 10px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__imgWrapper {
    height: 44px;
  }

  .shiro-crm__rewards__card__imgWrapper [src$="truck02.svg"] {
    margin-top: 10px;
  }
}

.shiro-crm__rewards__card__imgWrapper img {

  text-align: center;
  margin-top: 5px;
}

.shiro-crm__rewards__card img {
  width: 30px;
  height: auto;
}


.shiro-crm__rewards__card__imgWrapper--reserve img {
  width: 15px;
}

.shiro-crm__rewards__card__bar {
  background-color: #000;
  text-align: center;
  color: #fff;
  font-size: 10px;
  padding: 4px 0;
  line-height: 1;
  position: relative;
  left: -0.5px;
  bottom: -0.5px;
  width: calc(100% + 1px);
  border-radius: 0 0 4px 4px;
}

.shiro-crm__rewards__card__bar span {
  transform: scale(0.8);
  display: block;
}

.shiro-crm__rewards__card__btn {
  font-size: 10px;
  border: 1px solid #000;
  padding: 2px 10px;
  margin: 0 18px 5px;
  text-align: center;
}


@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__btn {
    margin: 2px 5px 2px;
  }
}

.shiro-crm__rewards_table {
  font-size: 16px;
  margin-bottom: 80px;
  margin-top: 50px;
  width: 100%;
  table-layout: fixed;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table {
    font-size: 12px;
  }
}

.shiro-crm__rewards_table_small {
  font-size: 10px;
  line-height: 1.2;
  display: block;
  margin: 0 20px 0 40px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table_small {
    margin: 0;
  }
}

.shiro-crm__rewards_table td {
  padding-top: 10px;
  vertical-align: top;
  padding-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table td {
    padding: 10px 5px 15px;
  }
}

.shiro-crm__rewards_table tr:last-child td {
  padding-bottom: 20px;
  border-radius: 0 0 10px 10px;
}

.shiro-crm__rewards_table th:nth-child(2),
.shiro-crm__rewards_table td:nth-child(2) {
  background-color: #efeee3;
}

.shiro-crm__rewards_table th:nth-child(4),
.shiro-crm__rewards_table td:nth-child(4)  {
  background-color: #efeee3;
}

.shiro-crm__rewards_table thead {
  text-align: center;
  border-bottom: 1px solid #999;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table thead {
    border-bottom: none;
  }
}

.shiro-crm__rewards_table thead th {
  padding: 20px 0;
  border-radius: 10px 10px 0 0;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table thead th {
    padding: 5px 0;
    border-radius: 5px 5px 0 0;
  }

  .shiro-crm__rewards_table thead th span {
    font-size: 10px;
  }
}

.shiro-crm__rewards_table thead th:first-child {
  width: 130px;
}

.shiro-crm__rewards_table tbody tr {
  border-top: 1px dashed #999;
}

.shiro-crm__rewards_table__spTtl {
  display: none;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table tbody tr {
    border-top: none;
  }

  .shiro-crm__rewards_table thead th:first-child {
    display: none;
  }

  .shiro-crm__rewards_table thead th {
    width: 33.3%;
  }

  .shiro-crm__rewards_table tbody td {
    position: relative;
  }

  .shiro-crm__rewards_table tbody th {
    /* position: absolute; */
    display: none;
  }

  .shiro-crm__rewards_table__spTtl {
    position: absolute;
    left: 0;
    top: -5px;
    width: calc(100vw - 12px);
    font-size: 10px;
    padding-left: 10px;
    display: block;
    z-index: 1;
  }

  .shiro-crm__rewards_table__spTtl::before {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;

    transform: translateY(-50%);
    height: 0px;
    border-top: 1px dashed #666;
    width: calc(100% - 110px);
  }
}

.shiro-crm__rewards_table tbody th {
  vertical-align: top;
  padding-top: 15px;
  font-size: 14px;
}

.shiro-crm__rewards_table thead span {
  display: block;
  font-size: 12px;
}

.shiro-crm__rewards__card__meta__ttl {
  font-size: 10px;
  color: #e60012;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__meta__ttl {
    text-align: center;
  }
}

.shiro-crm__rewards__card__meta__time {
  font-size: 10px;
  color: #e60012;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__meta__time {
    letter-spacing: -0.5px;
    text-align: center;
  }
}

.shiro-crm__rewards__card__meta__time em {
  font-weight: bold;
  font-style: normal;
}

.shiro-crm__rewards__card__imgWrapper {
  font-size: 10px;
  text-align: center;
  width: 40px;
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card__imgWrapper {
    margin-right: 0;
    padding-top: 5px;
    margin-bottom: 2px;
  }
}

.shiro-crm__rewards__card .shiro-crm__rewards__card__only {
  width: 120px;
  display: block;
  margin: 0 auto 4px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__card .shiro-crm__rewards__card__only {
    width: 80px;
  }
}

.shiro-crm__rewards__txt {
  line-height: 1.4;
  font-size: 16px;
  max-width: 705px;
  margin: 0 auto;
}

.shiro-crm__rewards__txt small {
  display: block;
}

.shiro-crm__rewards__rankLast {
  padding-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .shiro-crm__rewards__rankLast {
    padding-bottom: 0px;
  }
}

.shiro-crm__rewards__dashedBorderTtl {
  position: relative;
  width: 100%;
  font-size: 10px;
  padding-left: 10px;
  display: block;
  margin: 20px auto 0;
  font-weight: bold;
}

.shiro-crm__rewards__dashedBorderTtl::before {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 0px;
  border-top: 1px dashed #666;
  width: calc(100% - 110px);
}

.shiro-crm__rewards__message01,
.shiro-crm__rewards__message02 {
  font-size: 10px;
  border-radius: 4px;
  padding: 7px 10px;
  margin-bottom: 5px;
  display: block;
}

@media screen and (max-width: 767px) {

  .shiro-crm__rewards__message01,
  .shiro-crm__rewards__message02 {
    display: flex;
    width: 140px;
    height: 54px;
    padding: 6px 10px;
    margin-bottom: 10px;
    flex-wrap: wrap;
    align-content: center;
  }

  .shiro-crm__rewards__message01 span,
  .shiro-crm__rewards__message02 span {
    display: block;
    width: 100%;
    text-align: center;
    line-height: 1.4;
  }

}

.shiro-crm__rewards__message01:last-child,
.shiro-crm__rewards__message02:last-child {
  margin-bottom: 0;
}

.shiro-crm__rewards__message01,
.shiro-crm__rewards__message01:hover  {
  background-color: #2b2f33;
  color: #fff;
}
.shiro-crm__rewards__message02 {
  color: #000;
  background-color: #fff;
}

.shiro-crm__rewards_table02 {
  margin: 30px auto 20px;
  width: 428px;
}
@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table02 {
    width: 332px;
  }
}

.shiro-crm__rewards__rank_last {
  padding-bottom: 50px;
}


.shiro-crm__rewards_table02 th {
  font-size: 10px;
  font-weight: bold;
  width: 80px;
  text-align: left;
}

.shiro-crm__rewards_table02 td {
  padding: 0 2px 5px 0px;
}
@media screen and (max-width: 767px) {
  .shiro-crm__rewards_table02 th {
    display: none;
  }
  .shiro-crm__rewards_table02 td {
    padding: 0 2px 10px 0;
    height: 44px;
  }
}
/* 特典アイテムのリスト */
@media screen and (max-width: 767px) {
  .shiro-crm__status__content--mypage .reward_item__list{
    flex-wrap: nowrap;
    overflow: auto;
  }

  .shiro-crm__status__content--mypage .reward_item__item__img{
    width: 140px;
  }
}

.shiro-crm__status__content--mypage .reward_item__item__inner{
  border: none;
}

/* アイテムの一覧 */

.shiro-crm__listWishlistSubmitButton {
  position: absolute;
  left: 10px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .shiro-crm__listWishlistSubmitButton {
    left: 0px;

  }
}
.shiro-crm__listWishlistSubmitButton .before-add-list,
.shiro-crm__listWishlistSubmitButton .after-add-list
{

  position: absolute;
  bottom: 50%;
  left: 50%;
  transform: translate(-50%,50%);
}
@media screen and (max-width: 767px) {
  .shiro-crm__listWishlistSubmitButton .before-add-list,
  .shiro-crm__listWishlistSubmitButton .after-add-list
  {
    bottom: 10px;
    left: 10px;
    transform: translate(0%,0%);
  }
}

.shiro-crm__listWishlistSubmitButton img {
  display: block;
  width: auto;
}

/* ログインモーダル */
#loginModal.modalShow {
  position: fixed;
}

.modal .modal-overlay {
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.6);
  width: 100%;
  height: 100vh;
  position: fixed;
}

@media screen and (max-width: 767px) {
  .modalShow.modal {
    position: absolute;
    visibility: visible;
  }

  .modalHide.modal {
    position: fixed;
    visibility: hidden;
    pointer-events: none;
  }

  .modalShow.modal .modal-inner {
    -webkit-animation: modalShow 0.5s both;
    animation: modalShow 0.5s both;
  }

  .modalHide.modal .modal-inner {
    -webkit-animation: modalHide 0.5s both;
    animation: modalHide 0.5s both;
  }
}

/**
 リワードアイテム選択ページ スタイルオーバーライド
 */
.reward_item__inner.primary {
  margin-top: 0;
  padding: 20px 20px 40px;
}
.reward_item__inner.primary .reward_item__text {
  margin-bottom: 16px;
}
.reward_item__inner.primary .reward_item__list {
  margin-bottom: 32px;
}
.reward_item__inner.primary .reward_item__item .reward_item__item__inner,
.reward_item__inner.primary .reward_item__item input[type="radio"] + .reward_item__item__inner {
  display: flex;
  flex-direction: column;
}
.reward_item__inner.primary .reward_item__item__desc {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.reward_item__inner.primary .reward_item__item__desc .reward_item__item__note--s {
  margin-bottom: auto;
}
.reward_item__inner.primary .reward_item__item__desc .reward_item__item__empty {
  margin-top: 16px;
}
@media screen and (max-width: 767px) {
  .reward_item__inner.primary {
    padding-bottom: 32px;
  }
  .reward_item__inner.primary .reward_item__list {
    margin-bottom: 24px;
  }
  .reward_item__inner.primary .reward_item__list--fast {
    margin-bottom: 0;
  }
  .reward_item__inner.primary .reward_item__btn__wrapper > *:last-child {
    margin-bottom: 0;
  }
  .reward_item__inner.primary .shiro-crm__offline__wrapping__btn {
    padding-bottom: 0;
  }
}
/* 定期注文 */
@media (min-width: 768px) {
  .teiki-table-sp {
    display: none;
  }
}
@media (max-width: 767px) {
  .sp-p15 {
    padding-left: 15px;
    padding-right: 15px;
  }
  .teiki-table-pc {
    display: none;
  }
  .accordion-area {
    margin-top: 20px;
  }
}
.status-label {
  padding: 6px 12px;
  margin-left: 10px;
  font-size: 12px;
  color: #fff;
  background: #79888b;
  border-radius: 4px;
  vertical-align: middle;
}
.btn-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.btn-item {
  width: calc(100% / 2 - 10px);
}
[data-pageID="teiki_index"] .order-date-text {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 2px solid #eee;
  font-weight: bold;
}

[data-pageID="teiki_index"] .order-date-text-inner {
  display: inline-block;
}

[data-pageID="teiki_index"] .teiki-table-pc {
  width: 100%;
  margin-top: 30px;
  border-collapse: separate;
  border-spacing: 20px 0;
}
[data-pageID="teiki_index"] .teiki-table-pc th {
  padding-bottom: 15px;
  border-bottom: 2px solid #eee;
  text-align: center;
}
[data-pageID="teiki_index"] .teiki-table-pc th:last-of-type {
  width: 150px;
}
[data-pageID="teiki_index"] .teiki-table-pc td {
  padding: 10px 0;
  text-align: center;
}
[data-pageID="teiki_index"] .teiki-table-pc td .btn {
  width: 120px;
  min-height: 40px;
  margin: 0 auto;
}
[data-pageID="teiki_index"] .teiki-table-sp {
  width: 100%;
  margin-top: 15px;
}
[data-pageID="teiki_index"] .teiki-table-sp tr:first-of-type {
  border-top: 2px solid #eee;
}
[data-pageID="teiki_index"] .teiki-table-sp tr:last-of-type {
  border-bottom: 2px solid #eee;
}
[data-pageID="teiki_index"] .teiki-table-sp th {
  width: 120px;
}
[data-pageID="teiki_index"] .teiki-table-sp th,
[data-pageID="teiki_index"] .teiki-table-sp td {
  padding: 6px 0;
}
[data-pageID="teiki_index"] .teiki-table-sp td .btn {
  min-height: 35px;
}

/* item_detail.xhtml teiki */
.row.crm-button-container.is-teiki {
  flex-direction: column;
}
.crm-buybutton-radio {
  width: 100%;
  padding-left: 36px;
}
.crm-buybutton-radio + .col {
  margin-top: 24px;
}
.crm-buybutton-radio label.teiki-radio {
  display: inline-flex;
  position: relative;
  left: -36px;
  font-size: 16px;
  line-height: 1.2;
  min-height: 24px;
  font-weight: 400;
  padding-left: 36px;
  cursor: pointer;
  margin-bottom: 0;
}
.crm-buybutton-radio label.teiki-radio::before {
  width: 24px;
  height: 24px;
  top: 0;
  margin-right: 0;
  margin-top: 0;
}
.crm-buybutton-radio input + label.teiki-radio + .btn,
.crm-buybutton-radio input + label.teiki-radio + .crm-btn-wrapper,
.crm-buybutton-radio input + label.teiki-radio + .crm-buybutton-desc-group + .btn,
.crm-buybutton-radio input + label.teiki-radio + .crm-buybutton-desc-group + .crm-btn-wrapper  {
  display: none;
}
.crm-buybutton-radio input:checked + label.teiki-radio + .btn,
.crm-buybutton-radio input:checked + label.teiki-radio + .crm-btn-wrapper,
.crm-buybutton-radio input:checked + label.teiki-radio + .crm-buybutton-desc-group + .btn,
.crm-buybutton-radio input:checked + label.teiki-radio + .crm-buybutton-desc-group + .crm-btn-wrapper  {
  display: block;
}
.crm-buybutton-radio label.teiki-radio + .btn,
.crm-buybutton-radio label.teiki-radio + .crm-btn-wrapper,
.crm-buybutton-radio label.teiki-radio + .crm-buybutton-desc-group + .btn,
.crm-buybutton-radio label.teiki-radio + .crm-buybutton-desc-group + .crm-btn-wrapper {
  margin-top: 24px;
}
.crm-buybutton-desc-group {
  margin-top: 16px;
  font-size: 14px;
}
.crm-button-list {
  display: flex;
  flex-direction: column;
  width: 520px;
}
.crm-button-list > *:first-child {
  margin-top: 0;
}
.crm-button-list > * {
  margin-top: 32px;
}
.teiki-wishbtn-wrapper {
  margin-top: 16px;
}
.teiki-wishbtn-wrapper .wishlistSubmitButton {
  max-width: 120px;
  font-size: 18px;
}
.teiki-wishbtn-wrapper .wishlistSubmitButton .btn {
  min-height: 42px;
}
.teiki-wishbtn-wrapper .wishlistSubmitButton .btn .flex {
  min-height: 42px;
}
.teiki-wishbtn-wrapper .wishlistSubmitButton .btn .before-add-list {
  margin-right: 10px;
}
.teiki-wishbtn-wrapper .wishlistSubmitButton .btn .after-add-list {
  margin-right: 8px;
}
.teiki-wishbtn-wrapper .wishlistSubmitButton .btn .wishlistcount {
  font-size: 1.8rem;
  font-family: "TTCommons-Regular";
  padding-top: 4px;
}
.item-detail-image .btn-area .wishlistSubmitButton-outer {
  min-width: 160px;
}
.item-detail-image .btn-area .wishlistSubmitButton-outer .col.wish {
  width: 100%;
}
.wishbtn .wishlistSubmitButton.wishlistSubmitButton--teiki .btn-outline-primary {
  padding: 10px;
  border: none;
}
.wishbtn .wishlistSubmitButton.wishlistSubmitButton--teiki .btn-outline-primary .flex {
  flex-direction: column;
  width: 58px;
  background: #ffffffcc;
  border-radius: 50%;
}
.wishbtn .wishlistSubmitButton.wishlistSubmitButton--teiki .btn-outline-primary .wishlistcount {
  margin-top: 4px;
}
@media screen and (max-width: 768px) {
  .crm-button-list {
      width: 100%;
  }
  .crm-buybutton-radio .btn {
      max-width: calc(100% - 32px);
  }
  .crm-buybutton-desc {
      font-size: 12px;
  }
  .crm-button-list > * {
    margin-top: 32px;
  }
}
#section-review .reviewProductName a {
  pointer-events: none;
}
.title-section.title-section--staff-review {
  margin-bottom: 32px;
}
@media screen and (max-width: 767px) {
  .title-section.title-section--staff-review {
    margin-top: 48px;
    margin-bottom: 24px;
    font-size: 18px;
  }
}
.overlayForUkomiSlide {
  z-index: 1100 !important;
}

/* ---------------------------------------------------
 絞り込みラベル
--------------------------------------------------- */
.tagList-wrapper {
  width: 100%;
  overflow: auto;
  position: relative;
}
.tagList-wrapper::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  right: 0;
  width: 16px;
  height: 100%;
  background: linear-gradient(270deg,#eee 15%,hsla(0,0%,100%,0));
  transition: .3s;
  visibility: visible;
  opacity: 1;
  pointer-events: none;
}
.tagList-wrapper.is-end::before {
  visibility: hidden;
  opacity: 0;
}
.tagList-wrapper::after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 16px;
  height: 100%;
  background: linear-gradient(90deg,#eee 15%,hsla(0,0%,100%,0));
  transition: .3s;
  visibility: visible;
  opacity: 1;
  pointer-events: none;
}
.tagList-wrapper.is-start::after {
  visibility: hidden;
  opacity: 0;
}
.tagList-outer {
  overflow: auto;
  padding-bottom: 10px;
}
.tagList-list {
  display: flex;
  gap: 8px 8px;
}
.tagList{
  background: #eee;
  border: 1px solid #79888b;
  color: #79888b;
  border-radius: 4px;
  display: block;
  font-size: 14px;
  padding: 6px 10px;
  word-break: keep-all;
  white-space: nowrap;
}
.tagList.is-current {
  background: #79888b;
  color: #fff;
  transition: none;
  pointer-events: none;
}
a.tagList:active,
a.tagList:focus {
  background: #79888b;
  color: #fff;
  transition: all 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  a.tagList:hover {
    background: #79888b;
    color: #fff;
    transition: all 0.3s;
  }
}
@media (pointer: coarse) {
  a.tagList:hover {
    color: #79888b;
  }
  a.tagList:active:hover,
  a.tagList:focus:hover {
    color: #fff;
  }
}
@media screen and (max-width: 767px) {
  .tagList-wrapper {
    margin-top: 0;
    position: relative;
    padding: 0 15px;
    margin-bottom: 24px;
  }
  .tagList-wrapper:not(.is-end)::before {
    right: 14px;
  }
  .tagList-wrapper:not(.is-start):after {
    left: 14px;
  }
}

/* 限定テーマ色 アイスミント2023 */
.wrap.top.theme-icemint .contents-area {
  background: #3b9cdd;
}
.wrap.top.theme-icemint .contents-area .section-topics {
  background: #3b9cdd;
}
.wrap.top.theme-icemint .section-topics .topics_list {
  background: #006699;
}
.wrap.top.theme-icemint .menu-area {
  background: #3b9cdd;
}
.wrap.top.theme-icemint .menu-area .menu-area--top-inner {
  background: #3b9cdd;
}

/* 限定テーマ色 SAKURA 2024 */
.wrap.top.theme-sakura .contents-area,
.wrap.top.theme-sakura .section-topics,
.wrap.top.theme-sakura .menu-area--top,
.wrap.top.theme-sakura .menu-area .menu-area--top-inner {
  background-color: #ffebe5;
}

.wrap.top.theme-sakura .section-topics .topics_list {
  background-color: rgba(255, 255, 255, 0.5);
}

.wrap.top.theme-sakura .menu-inner .top-menu .btn,
.wrap.top.theme-sakura .menu-inner .bottom-menu .title,
.wrap.top.theme-sakura .menu-area .menu-inner .title-en,
.wrap.top.theme-sakura .menu-area .menu-inner .sub,
.wrap.top.theme-sakura .news-area-two .btn .text-block,
.wrap.top.theme-sakura .section-topics .topics_link,
.wrap.top.theme-sakura .section-topics .date,
.wrap.top.theme-sakura .section-topics .text {
  color: #000030;
}

.wrap.top.theme-sakura .menu-inner .top-menu .btn+.btn {
  border-left: 1px solid #000030;
}

.wrap.top.theme-sakura .menu-inner .sns-holder .btn-ig img,
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-fb img,
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-tw img,
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-yt img,
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-pr img,
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-line img {
  visibility: hidden;
}

.wrap.top.theme-sakura .menu-inner .sns-holder .ga-sns {
  background-repeat: no-repeat;
  background-size: 16px;
  background-position: center;
}

/* instagram */
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-ig {
  background-image: url("../images/icon/instagram-navy.svg");
}

/* Facebook */
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-fb {
  background-image: url("../images/icon/facebook-navy.svg");
}

/* X（Twitter） */
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-tw {
  background-image: url("../images/icon/x-navy.svg");
}

/* Youtube */
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-yt {
  background-image: url("../images/icon/youtube-navy.svg");
}

/* Pinterest */
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-pr {
  background-image: url("../images/icon/pinterest-navy.svg");
}

/* LINE */
.wrap.top.theme-sakura .menu-inner .sns-holder .btn-line {
  background-image: url("../images/icon/line-navy.gif");
}

/* --------------------------------------------------
form-checkbox
--------------------------------------------------- */
.form-checkboxGroup {
  font-size: 13px;
  cursor: pointer;
  display: inline-flex;
}
.form-checkbox-inner {
  position: relative;
  padding-left: 24px;
}
.form-checkbox-inner::after {
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
  border: solid 1px #dadada;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.7) url(https://shiro-shiro.jp/client_info/SHIRO/view/userweb/images/icon/check-white.svg) no-repeat center center;
  background-size: contain;
  content: "";
  backface-visibility: hidden;
}
.form-checkbox:checked + .form-checkbox-inner:after {
  background-color: #79888b;
}
.form-checkboxGroup:focus {
  outline: none !important;
}
/* --------------------------------------------------
screen reader
--------------------------------------------------- */
.srOnly {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  top: auto;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* カート下関連アイテムボタン */
.undercart-btnblock {
  margin-bottom: 2rem;
}
.undercart-btnblock .undercart-title {
  margin-bottom: 1.5rem;
}
.undercart-btnblock .undercart-btnwrapper {
  width: 100%;
  padding-bottom: 1rem;
}
.undercart-btnblock .undercart-btnlist {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.undercart-btnblock .undercart-btnitem .undercart-btnlink {
  border: 1px solid #79888b;
  color: #79888b;
  border-radius: 4px;
  display: block;
  font-size: 12px;
  padding: 0.3rem 0.8rem;
  word-break: keep-all;
  width: max-content;
}
.undercart-btnblock .undercart-btnitem .undercart-btnlink:hover {
  background: #79888b;
  color: #fff;
  transition: all 0.3s;
}

/* --------------------------------------------------
SP__navi
--------------------------------------------------- */
@media screen and (max-width: 767px) {
  .sp__navi {
    margin: 15px 0 15px; 
  }
  .sp__navi__list {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto 0 20px;
  }
  .sp__navi__list .sp__navi__list__head h1 {
    font-size: 1.6rem;
    /* padding-right: 10px; */
  }
  .sp__navi__list .sp__navi__list__item {
    display: flex;
    gap: 4%;
    align-items: center;
    justify-content: flex-end;
    width: 70%;
    font-size: 1.2rem;
    line-height: 1;
    margin-bottom: 0px;
  }
  .sp__navi__list .sp__navi__list__item .shiro-crm__header__link {
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
  }
  .sp__navi__list .sp__navi__list__item .sp__navi__member {
    display: flex;
    align-items: center;
  }
  .sp__navi__list .sp__navi__list__item .sp__navi__member a {
    display: block;
    margin-right: 6px;
  }
  .sp__navi__list .sp__navi__list__item .sp__navi__member img {
    width: 6%;
    transform: rotate(90deg);
  }
  .sp__navi__list__head,
  .sp__navi__list__item {
    position: relative;
  }
  .sp__navi__list__head::after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      right: -24%;
      bottom: 0;
      width: 1px;
      background-color: #393C41;
    }

  .sp__navi__list .sp__navi__list__item .shiro-crm__header__link span {
    display: block;
    margin-right: 6px;
    font-size: 1.2rem;
    line-height: 1;
    color: #393C41;
  }
  .sp__navi__list .sp__navi__list__item .shiro-crm__header__link img {
    width: 6%;
    transform: rotate(90deg);
  }
}

