@charset "UTF-8";
.futura-500 {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
}

.futura-600 {
  font-family: futura-pt, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.futura-600 {
  font-family: futura-pt, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.din-400 {
  font-family: din-2014, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.din-600 {
  font-family: din-2014, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.din-700 {
  font-family: din-2014, sans-serif;
  font-weight: 700;
  font-style: normal;
}

.din-800 {
  font-family: din-2014, sans-serif;
  font-weight: 800;
  font-style: normal;
}

body {
  background-image: url("../images/top/section-bg.png");
  background-size: 100%;
  background-position: center;
  background-color: #fbfaf8;
}
@media screen and (max-width: 768px) {
  body {
    background-image: url("../images/top/section-bg_sp.svg");
  }
}
.contents {
  position: relative;
}
.page-head {
  height: 53.2rem;
  background-image: url(../images/pages/page-top-bg.png);
  background-size: 102.8%;
  background-position: left -2rem top -0.6rem;
  background-repeat: no-repeat;
  padding-top: 20rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .page-head {
    background-image: url(../images/pages/page-top-bg_sp.png);
    background-size: 100%;
    background-position: left 0rem top 0;
    height: 26rem;
    padding: 10rem 1.8rem 0;
  }
}
.page-head .border {
  border-bottom: 1px solid #707070;
  flex: 1 0;
  margin-left: 4rem;
  align-self: baseline;
  padding-top: 3.3rem;
}
@media screen and (max-width: 768px) {
  .page-head .border {
    margin-left: 1rem;
    padding-top: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .section-title {
    margin-bottom: 0;
  }
  .section-title .main {
    font-size: 2rem;
  }
  .section-title .sub {
    margin-top: 0.5rem;
  }
  .section-title .sub img {
    width: 7.4rem;
    width: 50%;
    margin-bottom: 1rem;
  }
}
.page-content-title__main {
  margin-bottom: 1.6rem;
}
.page-content-title__main img {
  width: var(--w, auto);
  margin: 0;
}
@media screen and (max-width: 768px) {
  .page-content-title__main {
    margin-bottom: 0.4rem;
  }
  .page-content-title__main img {
    width: var(--w_sp, auto);
  }
}
.page-content-title__sub {
  font-family: futura-pt, sans-serif;
  font-weight: bold;
  font-size: 2.4rem;
  color: #f3046c;
}
@media screen and (max-width: 768px) {
  .page-content-title__sub {
    font-size: 1.4rem;
  }
}
.page-content-title__border {
  border-bottom: 1px solid #707070;
  margin-left: 2.1rem;
  align-self: baseline;
  padding-top: 2rem;
  flex: 1;
}
@media screen and (max-width: 768px) {
  .page-content-title__border {
    margin-left: 1.2rem;
    padding-top: 1.1rem;
  }
}
.page-content-title {
  display: flex;
}

.footer {
  padding-top: 18rem;
  position: relative;
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .footer {
    padding-top: 6rem;
  }
}
.footer::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2rem;
  background-image: url("../images/pages/page-footer-bg.png");
  background-size: 100%;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .footer::before {
    background-image: url("../images/pages/page-footer-bg_sp.png");
    background-repeat: no-repeat;
    top: -3rem;
  }
}
@media screen and (max-width: 768px) {
  .footer::after {
    background-size: 100%;
    width: 100%;
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 70%;
    background-color: #f0f0ed;
  }
}
.footer__inner {
  position: relative;
  z-index: 1;
}

.page-content {
  position: relative;
  min-height: 37rem;
  margin-top: -14rem;
  padding-bottom: 8rem;
  /* overflow: hidden; */
  overflow-x: clip;
}
@media screen and (max-width: 768px) {
  .page-content {
    margin-top: -10rem;
    padding: 0 1.8rem 8rem;
  }
}
.page-content .circle-logo-wrap {
  overflow: hidden;
  padding-top: 13rem;
}
.page-content .circle-logo {
  position: absolute;
  right: -2rem;
  top: 0;
}
@media screen and (max-width: 768px) {
  .page-content .circle-logo {
    right: -9rem;
  }
}

.controls {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .controls {
    margin-bottom: 2rem;
  }
}
.controls .control {
  margin: 0 1.5rem;
}
@media screen and (max-width: 768px) {
  .controls .control {
    margin: 0 0.75rem;
  }
}
.controls .control:last-child {
  margin-right: 0;
}

.product-items {
  display: flex;
  margin: 0 -1.75rem -7rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .product-items {
    margin: 0 -0.85rem -5rem;
  }
}

.product-label {
  display: inline-block;
  padding: 0.1rem 1rem;
  border-radius: 5px;
  background-color: #fff;
  font-weight: 500;
  font-size: 1.4rem;
  align-self: baseline;
}
@media screen and (max-width: 768px) {
  .product-label {
    font-size: 1.2rem;
  }
}
.product-label--black {
  background-color: #212121;
  color: #fff;
}

.product-card {
  margin-bottom: 7rem;
  display: block;
  flex: 0 0 33.33%;
  max-width: 33.33%;
  position: relative;
}
.product-card.ranking {
  margin-top: 4.5rem;
}
.product-card.ranking::before {
  content: "";
  width: 5rem;
  height: 4.1rem;
  position: absolute;
  left: 2rem;
  top: -1rem;
  transform: translate(0, -100%);
  background-size: contain;
}
.product-card.ranking.rank1::before {
  background-image: url("../images/product/rank1.svg");
}
.product-card.ranking.rank2::before {
  background-image: url("../images/product/rank2.svg");
}
.product-card.ranking.rank3::before {
  background-image: url("../images/product/rank3.svg");
}
@media screen and (max-width: 768px) {
  .product-card.ranking {
    margin-top: 3.3rem;
  }
  .product-card.ranking::before {
    width: 4.3rem;
    height: 3.5rem;
    position: absolute;
    left: 1.2rem;
    top: -0.5rem;
    transform: translate(0, -100%);
    background-size: contain;
  }
  .product-card {
    flex: 0 0 50%;
    max-width: 50%;
    margin-bottom: 5rem;
  }
}
.product-card__inner {
  display: block;
  margin: 0 1.75rem;
  transition: 0.3s;
}
.product-card__inner:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .product-card__inner {
    margin: 0 0.85rem;
  }
}
.product-card__visual {
  margin-bottom: 2.4rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .product-card__visual {
    margin-bottom: 1.8rem;
  }
}
.product-card__image {
  width: 31rem;
  height: 25rem;
  object-fit: cover;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .product-card__image {
    width: 100%;
    height: 12rem;
  }
}
.product-card__subtitle {
  font-size: 1.4rem;
  color: #6a6a6a;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .product-card__subtitle {
    font-size: 1rem;
    margin-bottom: 1rem;
  }
}
.product-card__title {
  font-size: 2rem;
  font-weight: 500;
  height: 6rem;
  margin-bottom: 1.8rem;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media screen and (max-width: 768px) {
  .product-card__title {
    font-size: 1.2rem;
    height: 3.8rem;
    margin-bottom: 1.2rem;
  }
}
.product-card__meta {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .product-card__meta {
    display: block;
  }
}
.product-card__price {
  font-size: 1.2rem;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .product-card__price {
    margin-bottom: 0.6rem;
    font-size: 1rem;
  }
}
.product-card__price span {
  font-size: 2rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  .product-card__price span {
    font-size: 1.6rem;
  }
}
.product-card__label {
  display: inline-block;
  padding: 0.1rem 1rem;
  border-radius: 5px;
  background-color: #fff;
  font-weight: 500;
  font-size: 1.4rem;
  align-self: baseline;
}
@media screen and (max-width: 768px) {
  .product-card__label {
    font-size: 1rem;
    margin-top: 0.3rem;
  }
}
.product-card__visual-meta {
  display: flex;
  justify-content: space-between;
  position: absolute;
  width: 100%;
  top: 1rem;
  padding: 0 3rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .product-card__visual-meta {
    top: 0.5rem;
    padding: 0 1.5rem;
  }
}
.product-card__icon {
  width: 2.5rem;
  height: 2.5rem;
  /* background-image: url(../images/common/hart-off.png); */
  /* background-size: contain; */
  display: inline-block;
  cursor: pointer;
  transition: 0.4s;
  margin-left: auto;
}
/* .product-card__icon.is-active {
  background-image: url(../images/common/hart-on.png);
} */
.product-card__icon:hover {
  opacity: 0.7;
}

@media screen and (max-width: 768px) {
  .product-card__icon {
    width: 2rem;
    height: 2rem;
  }
}
.product-card__category {
  display: inline-block;
  padding: 0.1rem 1rem;
  border-radius: 5px;
  background-color: #212121;
  color: #fff;
  font-weight: 500;
  font-size: 1.4rem;
  margin: 0 0.2rem 0.2rem;
}
@media screen and (max-width: 768px) {
  .product-card__category {
    font-size: 1rem;
  }
}
.product-card__category--blue {
  background: #437fd9;
}
.product-card__category--skyblue {
  background: #58badf;
}
.product-card__category--light-yellow {
  background: #ffebb5;
}

.page-foot {
  margin: 10rem 0 0;
}
@media screen and (max-width: 768px) {
  .page-foot {
    margin: 5rem 0 0;
  }
}

/** 商品詳細 **/
.product-detail {
  padding-top: 6rem;
}
@media screen and (max-width: 768px) {
  .product-detail {
    padding-top: 0;
  }
}
.product-detail__meta {
  margin-bottom: 2rem;
}
.product-detail__main {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #707070;
  padding-bottom: 9rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main {
    display: block;
    padding-bottom: 2.8rem;
  }
}
.product-detail__main-left {
  flex: 0 0 41rem;
  max-width: 41rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main-left {
    max-width: 100%;
  }
}
.product-detail__main-right {
  flex: 0 0 44rem;
  max-width: 44rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main-right {
    position: relative;
    max-width: 100%;
  }
}
.product-detail__main-visual img {
  width: 100%;
  height: 33.6rem;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .product-detail__main-visual img {
    height: 27.7rem;
  }
}
.product-detail__main-visual-tmbs {
  display: flex;
  margin: 2rem -0.5rem 4.5rem;
  flex-wrap: wrap;
  row-gap: 1rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main-visual-tmbs {
    margin: 1.5rem -0.3rem 4rem;
  }
}
.product-detail__main-visual-tmb {
  flex: 0 0 20%;
  padding: 0 0.5rem;
}
.product-detail__main-visual-tmb-inner {
  overflow: hidden;
  border-radius: 5px;
  position: relative;
}
.product-detail__main-visual-tmb-inner::after {
  transition: 0.4s;
  content: "";
  background-color: rgba(0, 0, 0, 0.35);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.product-detail__main-visual-tmb-inner::before {
  transition: 0.4s;
  content: "";
  display: none;
  z-index: 2;
  border: solid 3px #f3046c;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.product-detail__main-visual-tmb.is-active .product-detail__main-visual-tmb-inner::after {
  display: none;
}
.product-detail__main-visual-tmb.is-active .product-detail__main-visual-tmb-inner::before {
  display: block;
}
@media screen and (max-width: 768px) {
  .product-detail__main-visual-tmb {
    padding: 0 0.3rem;
  }
}
.product-detail__main-visual-tmb img {
  border-radius: 5px;
}
.product-detail__main-subtitle {
  font-size: 1.4rem;
  color: #6a6a6a;
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main-subtitle {
    margin-bottom: 0;
  }
}
.product-detail__main-title {
  font-size: 2.8rem;
  line-height: 4rem;
  font-weight: 500;
  margin-bottom: 4rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main-title {
    font-size: 2rem;
    margin-bottom: 3.8rem;
  }
}
.product-detail__main-price-info {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3.5rem;
  align-items: baseline;
}
@media screen and (max-width: 768px) {
  .product-detail__main-price-info {
    margin-bottom: 1rem;
  }
}
.link {
  color: #1a6eff;
  text-decoration: underline;
}
.product-detail__main-shipping-link {
  color: #1a6eff;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .product-detail__main-shipping-link {
    font-size: 1rem;
  }
}
.product-detail__main-price {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .product-detail__main-price {
    font-size: 1rem;
    margin-left: 0;
  }
}
.product-detail__main-price span {
  font-size: 2.8rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  .product-detail__main-price span {
    font-size: 2.4rem;
    margin-right: 0.5rem;
  }
}
.product-detail__controls {
  display: flex;
  justify-content: space-between;
}
.product-detail__control1 .nice-select {
  width: 21rem;
  text-align: right !important;
  display: flex;
  justify-content: space-between;
  font-size: 2rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  border: solid 1px #707070;
  height: 5rem;
  line-height: 5rem;
}
.product-detail-review__control1 .nice-select {
  width: 21rem;
  text-align: right !important;
  display: flex;
  justify-content: space-between;
  font-size: 2rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  border: solid 1px #707070;
  height: 5rem;
  line-height: 5rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.product-detail-review__control1 {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .product-detail__control1 .nice-select {
    width: 13rem;
  }
  .product-detail-review__control1 .nice-select {
    width: 13rem;
  }
}
.product-detail-review__control1 .nice-select::before {
  content: "評価";
  font-size: 1.6rem;
}
.product-detail__control1 .nice-select::before {
  content: "数量";
  font-size: 1.6rem;
}
.product-detail__control2 .add-favorite {
  width: 21rem;
  border: solid 1px #707070;
  display: flex;
  align-items: center;
  border-radius: 5px;
  background: #fff;
  height: 5rem;
  padding: 0 1.65rem;
  justify-content: space-between;
  cursor: pointer;
  transition: 0.4s;
  position: relative;
}
.product-detail__control2 .add-favorite::after {
  /* position: absolute;
  width: 2.5rem;
  height: 2.5rem;
  border: solid 1px #707070;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  transition: 0.4s;
  background-image: url(../images/common/hart-off.png);
  background-size: 2.5rem;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 100%; */
}
.product-detail__control2 .add-favorite.is-active::after {
  border-color: transparent;
  background-image: url(../images/common/hart-on.png);
}
@media screen and (min-width: 769px) {
  .product-detail__control2 .add-favorite:hover::after {
    border-color: transparent;
    background-image: url(../images/common/hart-on.png);
  }
}
@media screen and (max-width: 768px) {
  .product-detail__control2 .add-favorite {
    width: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .product-detail__control2 .add-favorite {
    width: 19rem;
  }
}
.product-detail__control2 .add-favorite img {
  width: 2.5rem;
  border: solid 1px #707070;
  border-radius: 100%;
  margin: 0;
  transition: 0.3s;
}
.product-detail__control2 .add-favorite img:hover {
  opacity: 0.6;
}
.product-detail__add-cart {
  width: 100%;
  background-color: #f3046c;
  color: #fff;
  display: flex;
  align-items: center;
  border-radius: 5px;
  justify-content: center;
  height: 6rem;
  font-weight: 500;
  margin-top: 1.5rem;
  margin-bottom: 2.4rem;
  transition: 0.3s;
  border: 0;
}
.product-detail__soldout {
  width: 100%;
  color: #fff;
  background-color: #212121;
  display: flex;
  align-items: center;
  border-radius: 5px;
  justify-content: center;
  height: 6rem;
  font-weight: 500;
  margin-top: 1.5rem;
  margin-bottom: 4rem;
  transition: 0.3s;
  border: 0;
}
@media screen and (max-width: 768px) {
  .product-detail__soldout,
  .product-detail__add-cart {
    margin: 1rem 0 1.6rem;
    font-size: 1.6rem;
  }
}
.product-detail__add-cart:hover {
  opacity: 0.8;
}
.product-detail__add-cart img {
  margin: 0 1.5rem 0 0;
}

/* 「購入手続きへ」 */
.product-detail__add-cart.set-cart-bottom,
.product-detail__add-cart.link-cart-bottom {
  background-color: #f3046c; /* #28485A;*/
}
.product-detail__add-cart.input-cart,
.product-detail__add-cart.add-cart-bottom {
  background-color: #34647e; /* #F3046C;*/
}

.product-detail__desc {
  padding-bottom: 3.6rem;
  margin-bottom: 3.5rem;
  border-bottom: solid 1px #707070;
}
@media screen and (max-width: 768px) {
  .product-detail__desc {
    line-height: 2.5rem;
    font-size: 1.4rem;
    margin-bottom: 3rem;
    padding-bottom: 3rem;
  }
}
.product-detail__info dl {
  display: flex;
  margin-bottom: 1.6rem;
}
.product-detail__info dl:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .product-detail__info dl {
    margin-bottom: 1.2rem;
  }
}
.product-detail__info dl dt {
  flex: 0 0 31%;
  max-width: 31%;
}
@media screen and (max-width: 768px) {
  .product-detail__info dl dt {
    flex: 0 0 35%;
    max-width: 35%;
  }
}
.product-detail__info dl dd {
  flex: 0 0 69%;
  max-width: 69%;
}
@media screen and (max-width: 768px) {
  .product-detail__info dl dd {
    flex: 0 0 65%;
    max-width: 65%;
  }
}

.product-detail__recipe {
  padding-top: 5.7rem;
  margin-bottom: 10rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe {
    padding-top: 4rem;
    margin-bottom: 4rem;
  }
}
.product-detail__recipe-title {
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-title {
    font-size: 1.6rem;
  }
}
.product-detail__recipe-head {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-head {
    display: block;
    margin-bottom: 2.5rem;
  }
}
.product-detail__recipe-visual {
  flex: 0 0 calc(50% - 2rem);
  max-width: calc(50% - 2rem);
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-visual {
    max-width: 100%;
    margin-bottom: 2rem;
  }
}
.product-detail__recipe-visual img {
  border-radius: 5px;
}
.product-detail__recipe-detail {
  border-radius: 5px;
  flex: 0 0 calc(50% - 2rem);
  max-width: calc(50% - 2rem);
  border: solid 1px #707070;
  background-color: #fff;
  padding: 3rem 3rem 3rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-detail {
    max-width: 100%;
    padding: 2rem 1.5rem;
  }
}
.product-detail__recipe-detail .recipe-title {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
.product-detail__recipe-detail dl {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px #707070 dashed;
  margin-bottom: 0.6rem;
  padding-bottom: 0.6rem;
}
.product-detail__recipe-detail dl:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}
.product-detail__recipe-desc {
  margin-bottom: 6rem;
  line-height: 3rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-desc {
    margin-bottom: 3.6rem;
  }
}
.product-detail__recipe-content h3 {
  font-size: 2.4rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-content h3 {
    font-size: 1.6rem;
    margin-bottom: 2.3rem;
  }
}
.product-detail__recipe-content p {
  line-height: 3rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-content p {
    line-height: 2.5rem;
  }
}
.product-detail__recipe-content img {
  margin-top: 5.8rem;
}
@media screen and (max-width: 768px) {
  .product-detail__recipe-content img {
    margin-top: 3rem;
  }
}

.product-detail-review__title {
  margin: 0;
  margin-bottom: 0.5rem;
  padding-bottom: 1.5rem;
  border-bottom: #707070 1px solid;
}
.product-detail-review__title img {
  margin: 0;
}
.product-detail-review__item {
  margin-top: 3.5rem;
  padding-bottom: 3rem;
  border-bottom: #707070 1px dashed;
}
.product-detail-review__form {
  margin-bottom: 14rem;
}
.product-detail-review__form textarea {
  display: block;
  width: 100%;
  height: 30rem;
  border-radius: 5px;
  margin: 1rem 0 4rem;
  border: solid 1px #707070;
}
@media screen and (max-width: 768px) {
  .product-detail-review__form textarea {
    height: 15rem;
  }
  .product-detail-review__item {
    margin-top: 2.4rem;
    padding-bottom: 1.8rem;
  }
}
.product-detail-review__item p {
  line-height: 3rem;
}
@media screen and (max-width: 768px) {
  .product-detail-review__item p {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}
.product-detail-review__name {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 1.2rem;
}
.product-detail-review__value {
  display: flex;
  margin-bottom: 1.2rem;
}
.product-detail-review__value-title {
  margin-right: 0.5rem;
}
@media screen and (max-width: 768px) {
  .product-detail-review__value-title {
    margin-right: 1rem;
  }
}
.product-detail-review .review-point {
  margin-left: 0.5rem;
}
.product-detail-review svg.off path {
  fill: #c2c2c2;
}

.review-comment {
  position: relative;
  background: #fff;
  border: solid 1px #707070;
  border-radius: 5px;
  margin-top: 3rem;
  padding: 2rem 1.7rem;
}
.review-name {
  position: relative;
  background: #fff;
  text-align: left;
  width: 32rem;
  border: solid 1px #707070;
  border-radius: 5px;
  margin-top: 3rem;
  padding: 2rem 1.7rem;
  font-weight: 500;
  font-style: normal;
  border: solid 1px #707070;
  height: 5rem;
  line-height: 5rem;
}

@media screen and (max-width: 768px) {
  .review-name {
    width: 24rem;
  }
  .review-comment {
    padding: 2rem 1.5rem;
    margin-bottom: 0.7rem;
  }
}
.review-comment__title {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 768px) {
  .review-comment__title {
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }
}
@media screen and (max-width: 768px) {
  .review-comment__text {
    line-height: 2, 5rem;
  }
}
.review-comment::before {
  content: "";
  background-image: url(../images/product/fukidasi.svg);
  position: absolute;
  left: 5rem;
  top: -1.9rem;
  width: 4rem;
  height: 3rem;
  background-size: 100%;
  background-repeat: no-repeat;
}

.r-product-title {
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .r-product-title {
    margin-bottom: 2rem;
  }
  .r-product-title img {
    /* width: 15.4rem; */
  }
}

/**
news
*/
.news-list-bg-icon {
  position: relative;
}
.news-list-bg-icon::before {
  content: "";
  background-image: url("../images/news/machi1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 7.7rem;
  height: 5.1rem;
  position: absolute;
  left: -13rem;
  top: 13rem;
}
@media screen and (max-width: 768px) {
  .news-list-bg-icon::before {
    top: -6rem;
    left: 0;
    width: 5.3rem;
    height: 3.5rem;
  }
}
.news-list-bg-icon::after {
  content: "";
  background-image: url("../images/news/machi2.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 7.1rem;
  height: 5.1rem;
  position: absolute;
  right: -13rem;
  bottom: -22rem;
}
@media screen and (max-width: 768px) {
  .news-list-bg-icon::after {
    bottom: -15rem;
    right: -1rem;
    width: 5.1rem;
    height: 3.6rem;
  }
}

.list__items {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .list__items {
    margin-top: -2rem;
  }
}

.list__item {
  height: 8.5rem;
  border-bottom: 1px solid #707070;
  display: flex;
  align-items: center;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .list__item {
    height: 7rem;
  }
}
.list__item:hover {
  opacity: 0.6;
}
.list__item-title {
  display: flex;
  width: 90%;
  font-size: 1.6rem;
  font-weight: 400;
  padding-left: 2rem;
  padding-right: 4.8rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%226.754%22%20height%3D%2210.93%22%20viewBox%3D%220%200%206.754%2010.93%22%3E%20%3Cg%20id%3D%22down-chevron%22%20transform%3D%22translate(-48.907%2010.93)%20rotate(-90)%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_56%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2056%22%20transform%3D%22translate(0%2048.907)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_97%22%20data-name%3D%22%E3%83%91%E3%82%B9%2097%22%20d%3D%22M9.641%2C48.907%2C5.465%2C53.083%2C1.289%2C48.907%2C0%2C50.2l5.465%2C5.465L10.93%2C50.2Z%22%20transform%3D%22translate(0%20-48.907)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center right 2rem;
}
@media screen and (max-width: 768px) {
  .list__item-title {
    font-size: 1.2rem;
    padding-right: 2rem;
    padding-left: 0.855rem;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
  }
}
.list__item-date {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  border-right: 1px solid #acacac;
  padding: 0 2rem 0 1.75rem;
}
@media screen and (max-width: 768px) {
  .list__item-date {
    padding: 0 1.25rem 0 0;
  }
}
.list__item-year {
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .list__item-year {
    font-size: 1rem;
  }
}
.list__item-mmdd {
  font-size: 2.8rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .list__item-mmdd {
    font-size: 2rem;
  }
}
.list__item-label {
  white-space: nowrap;
  margin-right: 1rem;
}

/** news detail*/
.news-category {
  display: inline-block;
  background-color: #212121;
  font-weight: 400;
  color: #fff;
  text-align: center;
  padding: 0.1rem 0.5rem;
  border-radius: 5px;
  font-size: 1.2rem;
}

.detail {
  padding-top: 6rem;
}
.detail__meta {
  display: flex;
  justify-content: space-between;
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .list__item-label {
    margin-bottom: 0.5rem;
  }
  .detail {
    padding-top: 0;
  }
  .detail__meta {
    margin-bottom: 4rem;
  }
}
.detail__title {
  font-size: 2.4rem;
  line-height: 1.25;
  padding-bottom: 3rem;
  margin-bottom: 1.8rem;
  border-bottom: 1px solid #707070;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .detail__title {
    font-size: 1.6rem;
    line-height: calc(30 / 16);
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
  }
}
.detail__date {
  font-size: 1.4rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
}
.detail__content img {
  display: inline;
  margin-bottom: 5rem;
}
.detail__content .wp-block-image .alignleft {
  float: none !important;
}
.detail__content .wp-block-image .alignright {
  float: none !important;
  margin-left: auto;
}
.detail__content h3 {
  font-size: 2rem;
  padding-left: 0.75rem;
  font-weight: bold;
  border-left: 3px solid #f3046c;
  margin-bottom: 3rem;
}
.detail__content h3 span {
  position: relative;
}
.detail__content h3 span::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  background-color: #f3046c;
  border-radius: 100%;
  width: 0.5rem;
  height: 0.5rem;
  top: -0.5rem;
  /* padding-top: 0.7em;
  background-position: top left 0px;
  background-repeat: repeat-x;
  background-image: radial-gradient(#F3046C 23%, transparent 10%);
  background-size: 1em 1em; */
}
.detail__content p {
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .wp-block-image {
    margin-bottom: 0;
  }
  .detail__content img {
    margin-bottom: 2rem;
  }
  .detail__content p {
    margin-bottom: 4.2rem;
  }
  .detail__content h3 {
    font-size: 1.6rem;
  }
}
.detail__button {
  margin-top: 5rem;
  text-align: center;
}

.pickup-items {
  display: flex;
  margin: 0 -1.75rem -7rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .pickup-items {
    margin: 0 -0.85rem -5rem;
  }
}

.pickup-contents-card {
  margin-bottom: 7rem;
  display: block;
  flex: 0 0 33.33%;
  max-width: 33.33%;
  transition: 0.3s;
}
.pickup-contents-card:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .pickup-contents-card {
    flex: 0 0 50%;
    max-width: 50%;
    margin-bottom: 5rem;
  }
}
.pickup-contents-card__inner {
  padding: 0 1.75rem;
}
@media screen and (max-width: 768px) {
  .pickup-contents-card__inner {
    padding: 0 0.85rem;
  }
}
.pickup-contents-card__visual {
  margin-bottom: 2.4rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .pickup-contents-card__visual {
    margin-bottom: 1.8rem;
  }
}
.pickup-contents-card__image {
  width: 31rem;
  height: 25rem;
  object-fit: cover;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .pickup-contents-card__image {
    height: 12rem;
  }
}
.pickup-contents-card__title {
  font-size: 1.6rem;
  font-weight: 500;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
@media screen and (max-width: 768px) {
  .pickup-contents-card__title {
    font-size: 1.2rem;
  }
}
.pickup-contents-card__meta {
  display: flex;
  align-items: center;
}
.pickup-contents-card__date {
  margin-right: 1rem;
}
.pickup-contents-card__categories {
  margin-bottom: 0.3rem;
}
.pickup-contents-card__label {
  display: inline-block;
  padding: 0.1rem 1rem;
  border-radius: 5px;
  background-color: #fff;
  font-weight: 500;
  font-size: 1.4rem;
  align-self: baseline;
}
.pickup-contents-card__category {
  display: inline-block;
  padding: 0rem 1rem;
  border-radius: 5px;
  background-color: #212121;
  color: #fff;
  font-weight: 500;
  font-size: 1rem;
}
.pickup-contents-card__category--blue {
  background: #437fd9;
}
.pickup-contents-card__category--skyblue {
  background: #58badf;
}
.pickup-contents-card__category--light-yellow {
  background: #ffebb5;
}

.r-product {
  margin: 10rem 0 0;
}

.news-detail-bg-icon {
  position: relative;
}
.news-detail-bg-icon::before {
  content: "";
  background-image: url("../images/news/machi1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 7.7rem;
  height: 5.1rem;
  position: absolute;
  left: -13rem;
  top: 13rem;
}
@media screen and (max-width: 768px) {
  .r-product {
    margin-top: 5rem;
    margin-bottom: 4rem;
  }
  .news-detail-bg-icon::before {
    top: 0;
    left: 0;
    width: 5.3rem;
    height: 3.5rem;
    display: none;
  }
}
.news-detail-bg-icon::after {
  content: "";
  background-image: url("../images/news/machi2.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 7.1rem;
  height: 5.1rem;
  position: absolute;
  right: -13rem;
  bottom: -8rem;
}
@media screen and (max-width: 768px) {
  .news-detail-bg-icon::after {
    bottom: -5rem;
    right: 0rem;
    width: 5.1rem;
    height: 3.6rem;
  }
}

.product-list-bg-icon1 {
  background-image: url("../images/product/local-speciality1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2.5rem;
  height: 2.4rem;
  position: absolute;
  left: -15rem;
  top: 118rem;
}
@media screen and (max-width: 768px) {
  .product-list-bg-icon1 {
    display: none;
  }
}

.product-list-bg-icon2 {
  position: relative;
}
.product-list-bg-icon2::before {
  content: "";
  background-image: url("../images/product/local-speciality1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2rem;
  height: 1.9rem;
  position: absolute;
  left: -6rem;
  bottom: -16rem;
}
@media screen and (max-width: 768px) {
  .product-list-bg-icon2::before {
    bottom: -10rem;
    left: 1rem;
    width: 1.5rem;
    height: 1.4rem;
  }
}
.product-list-bg-icon2::after {
  content: "";
  background-image: url("../images/product/local-speciality1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  right: -13rem;
  bottom: 17rem;
}
@media screen and (max-width: 768px) {
  .product-list-bg-icon2::after {
    bottom: -5rem;
    right: 0rem;
    width: 1.5rem;
    height: 1.4rem;
  }
}

.animation-cars-wrap {
  display: flex;
  width: 100%;
  overflow: hidden;
  z-index: -1;
  position: absolute;
  /* top: 4rem; */
  bottom: -7rem;
  border-bottom: 1px solid;
}
@media screen and (max-width: 768px) {
  .animation-cars-wrap {
    /* top: 0; */
    bottom: -3rem;
  }
}

.animation-cars {
  display: flex;
  justify-content: space-around;
  align-items: baseline;
}

.animation-car {
  width: 35rem;
}
@media screen and (max-width: 768px) {
  .animation-car {
    width: 15rem;
  }
}

/**** add@2022 3.11 ***/
.aboutus {
  padding: 10rem 0 0;
}
.aboutus__title {
  font-weight: bold;
  font-size: 3.2rem;
  text-align: center;
  margin-bottom: 3.2rem;
}
.aboutus__title span {
  /* padding-top: 0.4em;
  background-position: top left 0px;
  background-repeat: repeat-x;
  background-size: 1em 0.8em;
  background-image: radial-gradient(0.12em 0.12em at center center, #F3046C, #F3046C 100%, transparent); */
  position: relative;
}
.aboutus__title span::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  background-color: #f3046c;
  border-radius: 100%;
  width: 0.5rem;
  height: 0.5rem;
  top: -0.5rem;
}
.aboutus__text {
  text-align: left;
  max-width: 67.7rem;
  margin: 0 auto 5.8rem;
}
.aboutus__figure {
  margin-bottom: 11rem;
  position: relative;
}
.aboutus__figure .circle-logo2 {
  position: absolute;
  right: -6rem;
  bottom: -6rem;
}
.aboutus__detail-title {
  font-size: 3.2rem;
  font-weight: bold;
  margin-bottom: 4.6rem;
  text-align: center;
}
.aboutus__detail-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8rem;
  align-items: center;
}
.aboutus__detail-row--alt {
  flex-direction: row-reverse;
}
.aboutus__detail-visual {
  width: 62.5rem;
  flex: 0 0 62.5rem;
}
.aboutus__detail-body {
  flex: 0 0 31.5rem;
  max-width: 31.5rem;
}
.aboutus__detail-items {
  display: flex;
  justify-content: space-between;
}
.aboutus__detail-item {
  flex: 0 0 29.3rem;
}
.aboutus .aboutus-t1 {
  font-size: 2.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: start;
  margin-bottom: 2rem;
}
.aboutus .aboutus-t1 img {
  margin: 0 1rem 0 0;
  display: inline-block;
}
.aboutus .aboutus-t2 {
  line-height: 3rem;
}
.aboutus-bg-icon1 {
  position: relative;
}
.aboutus-bg-icon1::before {
  content: "";
  position: absolute;
  left: -13rem;
  top: 27rem;
  background-image: url("../images/aboutus/bgs/bg1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2rem;
  height: 1.9rem;
}

.aboutus-bg-icon2 {
  position: relative;
}
.aboutus-bg-icon2::before {
  content: "";
  position: absolute;
  right: -11rem;
  top: 27rem;
  background-image: url("../images/aboutus/bgs/bg2.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2rem;
  height: 1.9rem;
}

.aboutus-bg-icon3 {
  position: relative;
}
.aboutus-bg-icon3::before {
  content: "";
  position: absolute;
  right: -14rem;
  top: 13rem;
  background-image: url("../images/aboutus/bgs/bg3.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 7.4rem;
  height: 9.9rem;
}

.aboutus-bg-icon4 {
  position: relative;
}
.aboutus-bg-icon4::before {
  content: "";
  position: absolute;
  left: -13rem;
  top: 25rem;
  background-image: url("../images/aboutus/bgs/bg4.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2rem;
  height: 1.9rem;
}

.aboutus-bg-icon5 {
  position: relative;
}
.aboutus-bg-icon5::before {
  content: "";
  position: absolute;
  right: -15rem;
  bottom: -6rem;
  background-image: url("../images/aboutus/bgs/bg5.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2.6rem;
  height: 2.5rem;
}

@media screen and (max-width: 768px) {
  .aboutus {
    padding: 0;
    margin-bottom: -4rem;
  }
  .aboutus__title {
    font-size: 2rem;
    margin-bottom: 3.4rem;
  }
  .aboutus__text {
    margin-bottom: 3.4rem;
  }
  .aboutus__figure .circle-logo2 {
    right: -1.4rem;
  }
  .aboutus__figure {
    margin-bottom: 5.5rem;
  }
  .aboutus__detail-title {
    font-size: 2rem;
    margin-bottom: 2.4rem;
  }
  .aboutus__detail-row {
    flex-direction: column-reverse;
    align-items: baseline;
    margin-bottom: 2rem;
  }
  .aboutus__detail-visual {
    width: 100%;
    flex: 0 0 100%;
    margin-top: 2.5rem;
  }
  .aboutus .aboutus-t1 {
    font-size: 1.6rem;
    margin-bottom: 1.5rem;
  }
  .aboutus__detail-body {
    max-width: 100%;
    flex: 0 0 100%;
  }
  .aboutus__detail-visual img {
    margin-left: -1rem;
    width: calc(100% + 1rem);
    max-width: none;
  }
  .aboutus__detail-items {
    display: block;
  }
  .aboutus__detail-item {
    flex: 0 0 100%;
  }
  .aboutus__detail-item + .aboutus__detail-item {
    margin-top: 4rem;
  }
  .aboutus .access {
    padding: 8.5rem 0 0;
  }
  .access .section-title .main {
    font-size: 2.4rem;
  }
  .access .section-title .sub img {
    width: 11rem;
  }
  .aboutus .access .access-right {
    top: -6rem;
  }
  .access .access {
    padding-top: 3rem;
  }

  .aboutus-bg-icon4::before {
    left: -1.6rem;
    top: 5.6rem;
  }
  .aboutus-bg-icon5::before {
    width: 1.1rem;
    height: 1rem;
    right: -1rem;
    bottom: -3rem;
  }
  .aboutus-bg-icon3::before {
    width: 4.8rem;
    height: 5.2rem;
    bottom: -5.6rem;
  }
  .aboutus-bg-icon2::before {
    right: 0;
    top: auto;
    bottom: -8.4rem;
    width: 1.8rem;
  }
  .aboutus-bg-icon1::before {
    top: -4rem;
    left: 0;
  }
}
/****/
.map {
  position: relative;
  height: 50rem;
}
.map::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background-color: #7a7448;
  position: absolute;
  top: 0;
  left: 0;
  mix-blend-mode: color-burn;
  pointer-events: none;
}
.map iframe {
  filter: opacity(85%);
  -webkit-filter: opacity(85%);
  height: 100%;
}

@media screen and (max-width: 782px) {
  .map {
    height: 26rem;
  }
}

.access {
  position: relative;
  margin-top: 10.5rem;
}
@media screen and (max-width: 768px) {
  .access {
    display: block;
    padding: 8rem 1.8rem 3rem;
    margin-top: -2rem;
    position: relative;
  }
  .access .section-title {
    margin-bottom: 0;
  }
}
.access__body {
  position: relative;
  z-index: 2;
}
.access .access {
  margin-top: 2.7rem;
  margin-bottom: 1.5rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .access .access {
    display: block;
    margin-top: 2rem;
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .access .access-right {
    position: absolute;
    top: -8rem;
    right: 0;
    width: 16rem;
  }
}
.access .dls {
  display: flex;
  flex-wrap: wrap;
}
.access dl {
  width: 23rem;
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .access dl {
    width: auto;
  }
  .access dl:first-child {
    margin-right: 1rem;
    flex: 0 0 43%;
    max-width: 43%;
  }
}
.access dl.full {
  width: 51.7rem;
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .access dl.full {
    width: 100%;
    flex: 0 0 100%;
    display: block;
  }
  .access dl.full dt {
    margin-bottom: 0.5rem;
  }
}
.access dl dt {
  border-radius: 5px;
  background-color: #888888;
  padding: 0.25rem;
  text-align: center;
  color: #fff;
  width: 7.4rem;
  display: inline-block;
  margin-right: 1rem;
}
@media screen and (max-width: 768px) {
  .access dl dt {
    margin-right: 0.5rem;
    font-size: 1.2rem;
    width: 5.8rem;
  }
}
.access iframe {
  width: 100%;
  height: 50rem;
}
@media screen and (max-width: 768px) {
  .access iframe {
    height: 26rem;
  }
}

.page-content .circle-logo.circle-logo--left {
  position: absolute;
  right: auto;
  left: 5rem;
  top: 0;
}

@media screen and (max-width: 768px) {
  .page-content .circle-logo.circle-logo--left {
    left: 1.8rem;
  }
}

/***/
/*****/
.login {
  position: relative;
}
.login .icon {
  position: absolute;
}
.login .icon1 {
  top: 0;
  right: -9rem;
}
.login .icon2 {
  top: 44rem;
  left: -9rem;
}
.login .icon3 {
  top: 58rem;
  left: -9rem;
}
.login .icon4 {
  bottom: 0;
  right: -9rem;
}
.login__logo {
  margin-bottom: 4.5rem;
}
.login__form {
  width: 51rem;
  margin: auto;
}
.login__form-item {
  margin-bottom: 1.5rem;
}
.login__form-item input[type="text"],
.login__form-item input[type="password"] {
  width: 100%;
  height: 5rem;
  padding: 0.5rem 1rem;
  border-radius: 5px;
  background: #fff;
  border: solid 1px #cccccc;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
}
.login__form-item .label {
  margin-bottom: 0.8rem;
}
.login__form-item .item {
  position: relative;
}
.login__form-item .item span {
  position: absolute;
  right: 0.2rem;
  background: #efefef;
  width: 4.6rem;
  height: 4.6rem;
  top: 0.2rem;
  border-radius: 0 5px 5px 0;
  font-size: 1.3em;
  text-align: center;
  padding-top: 1.3rem;
}
.error_message {
  color: #f3046c;
  margin-bottom: 4rem;
}
.form-check {
  align-items: center;
  margin-bottom: 3rem;
  display: flex;
  font-size: 1.2rem;
  color: #707070;
}
.form-check input[type="checkbox"] {
  opacity: 0;
}
.form-check label {
  position: relative;
  margin-left: 1.5rem;
  font-weight: 400;
}
.form-check label::after {
  content: "";
  position: absolute;
  left: -2.5rem;
  top: 0;
  width: 2rem;
  height: 2rem;
  border: solid 1px #ccc;
  border-radius: 2px;
}
.form-check input[type="checkbox"]:checked + label::before {
  content: "";
  position: absolute;
  left: -1.9rem;
  top: 0rem;
  border: solid 2px #f3046c;
  width: 0.8rem;
  height: 1.5rem;
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg);
}
.login__button-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 6rem;
}
.login__button-wrap .link {
  color: #2086df;
  font-size: 1.4rem;
}
.login__register {
  padding-top: 4.5rem;
  border-top: 1px #cccccc solid;
  text-align: center;
}
.login__register-title {
  margin-bottom: 3rem;
}

.contents .icon4 {
  /* .footer .icon4 { */
  position: absolute;
  bottom: -6rem;
  right: 7rem;
}
.circle-logo-wrap--bottom {
  position: absolute;
  right: 0;
  bottom: -18rem;
  overflow: hidden;
}
.circle-logo-wrap--bottom .circle-logo {
  position: relative;
  right: -3rem;
}
@media screen and (max-width: 768px) {
  .password-reset-link {
    margin-top: 2.4rem;
    display: inline-block;
    font-size: 1.2rem;
    margin-bottom: 2rem;
  }
  .login__form-item {
    /* margin-bottom: 0; */
  }
  .login__register-title {
    margin-bottom: 1rem;
  }
  .login .icon1 {
    width: 6.6rem;
    height: 6.3rem;
    right: 0;
    top: 10rem;
  }
  .login .icon3 {
    width: 4.5rem;
    height: 6.7rem;
    left: 0;
    top: 73rem;
    /* bottom: -5rem; */
    /* top: auto; */
  }
  .login__form {
    width: 100%;
    padding-bottom: 3rem;
  }
  .login__button-wrap {
    display: block;
    margin: auto;
    text-align: center;
  }
  .contents .icon4 {
    width: 9.4rem;
    bottom: 0rem;
    right: 1rem;
  }
}

@media screen and (max-width: 768px) {
  .circle-logo-wrap--bottom {
    bottom: -8rem;
    right: 0rem;
  }
  .footer__scroll {
    top: 22rem;
  }
}

/* contact **/
.contact {
  margin-top: 10rem;
  position: relative;
}
.contact::before,
.contact::after {
  content: "";
  position: absolute;
  background-size: contain;
}
.contact::before {
  left: -9.5rem;
  top: 8.7rem;
  width: 2rem;
  height: 2rem;
  /* border: solid 1px red; */
  background-image: url("../images/contact/bg-icon1.svg");
}
.contact::after {
  right: -9.5rem;
  bottom: 25rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/contact/bg-icon2.svg");
}
@media screen and (max-width: 768px) {
  .contact {
    margin-top: 0;
  }
  .contact::before {
    left: -1rem;
    top: -4rem;
  }
  .contact::after {
    right: 0;
    bottom: -6rem;
  }
}

/* pickup-contents-list **/
.pickup-contents-list {
  position: relative;
}
.pickup-contents-list::before,
.pickup-contents-list::after {
  content: "";
  position: absolute;
  background-size: contain;
}
.pickup-contents-list::before {
  left: -13.3rem;
  top: 45rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/pickup/bg-icon1.svg");
}
.pickup-contents-list::after {
  right: -9.5rem;
  bottom: -10rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/pickup/bg-icon2.svg");
}
@media screen and (max-width: 768px) {
  .pickup-contents-list::before {
    left: -1rem;
    top: 2rem;
  }
  .pickup-contents-list::after {
    right: 0;
    bottom: 0rem;
  }
}

/* pickup-contents-detail **/
.pickup-contents-detail,
.pickup-contents-detail .r-product {
  position: relative;
}
.pickup-contents-detail::before,
.pickup-contents-detail::after,
.pickup-contents-detail .r-product::before {
  content: "";
  position: absolute;
  background-size: contain;
}
.pickup-contents-detail::before {
  left: -13.3rem;
  top: 45rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/pickup/bg-icon1.svg");
}
.pickup-contents-detail::after {
  right: -9.5rem;
  top: 135rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/pickup/bg-icon2.svg");
}
.pickup-contents-detail .r-product::before {
  left: -13rem;
  bottom: -6rem;
  width: 8rem;
  height: 8.22rem;
  background-image: url("../images/pickup/bg-icon3.svg");
}
@media screen and (max-width: 768px) {
  .r-product + .detail__button {
    margin-top: 9rem;
  }
  .pickup-contents-detail::before {
    left: -1.5rem;
    top: 80rem;
    width: 1rem;
    height: 1rem;
  }
  .pickup-contents-detail::after {
    display: none;
  }
  .pickup-contents-detail .r-product::before {
    width: 6rem;
    height: 6.1rem;
    left: 0;
    bottom: -10rem;
  }
}

/* pickup-contents-detail **/
.local-speciality-detail,
.local-speciality-detail .r-product {
  position: relative;
}
.local-speciality-detail::before,
.local-speciality-detail::after,
.local-speciality-detail .r-product::before {
  content: "";
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
}
.local-speciality-detail::before {
  left: -13.3rem;
  top: 45rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/pickup/bg-icon1.svg");
}
.local-speciality-detail::after {
  right: -9.5rem;
  top: 135rem;
  width: 2rem;
  height: 2rem;
  background-image: url("../images/pickup/bg-icon2.svg");
}
.local-speciality-detail .r-product::before {
  left: -13rem;
  top: -2rem;
  width: 8rem;
  height: 8.22rem;
  background-image: url("../images/product/bg-icon3.svg");
}
@media screen and (max-width: 768px) {
  .local-speciality-detail::before {
    left: -1.2rem;
    top: -2.4rem;
    width: 1.3rem;
    height: 1.3rem;
  }
  .local-speciality-detail::after {
    display: none;
  }
  .local-speciality-detail .r-product::before {
    width: 5.2rem;
    height: 4.9rem;
    left: -1rem;
    top: -2.4rem;
  }
}

.c-table {
  margin: 6rem auto 0;
}
.c-table dl {
  display: flex;
  border-bottom: 1px solid #707070;
}
.c-table dt {
  width: 35rem;
  flex: 0 0 35rem;
  font-weight: bold;
  padding: 3rem 2.5rem;
}
.c-table dd {
  padding: 3rem 2.5rem;
}
.c-table a {
  color: #2984fb;
}
@media screen and (max-width: 768px) {
  .c-table.c-table--spblock dl {
    display: block;
  }
  .c-table.c-table--spblock dd,
  .c-table.c-table--spblock dt {
    flex: 0 0 100%;
    width: 100%;
  }
  .c-table {
    margin-top: 0;
  }
  .c-table dt {
    width: 11rem;
    flex: 0 0 11rem;
    padding: 1.5rem 0rem;
  }
  .c-table dd {
    padding: 1.5rem 0rem;
  }
  .circle-logo-wrap--bottom {
    bottom: -8rem;
  }
  .circle-logo-wrap--bottom .circle-logo {
    width: 20rem;
    right: -5rem;
  }
}

.singup__lead {
  width: 63rem;
  margin: 7rem auto 4.8rem;
}
@media screen and (max-width: 768px) {
  .singup__lead {
    width: 31.5rem;
    margin: 0 auto 4rem;
  }
}

.singup__text {
  text-align: center;
  margin: 0 0 6rem;
  line-height: 3rem;
}
.singup__text .link {
  text-decoration: underline;
  color: #2086df;
}
.singup .c-form {
  position: relative;
  margin: 3rem auto 5rem;
  padding: 6.5rem 0 5rem;
}
.singup__form-title img {
  margin: 0 0 0 1.6rem;
}
.singup__form-title {
  padding-bottom: 1.8rem;
  border-bottom: 1px solid #707070;
}
.singup .c-form .icon {
  position: absolute;
}
.singup .c-form .icon1 {
  left: -9.7rem;
  top: -11.7rem;
}
.singup .c-form .icon2 {
  right: -11rem;
  bottom: 3rem;
}
.singup .c-form .icon3 {
  left: -9.7rem;
  bottom: -9rem;
}
.singup .c-form .icon4 {
  right: -11rem;
  bottom: -32rem;
}
@media screen and (max-width: 768px) {
  .singup__text {
    margin: 0 0 4rem;
    text-align: left;
  }
  .singup__form-title {
    padding-bottom: 1.4rem;
  }
  .singup__form-title img {
    /* width: 11rem; */
  }
  .singup .c-form {
    margin: 2rem auto 3rem;
    padding: 4rem 1.5rem 2rem;
  }
  .c-form .caution {
    display: block;
    font-size: 1rem;
    margin: 0.5rem 0 -1rem;
    font-weight: 500;
  }
  .c-form .zipcode {
    width: 19rem !important;
  }
  .c-form .pref {
    width: 100% !important;
  }
  .c-form .search-address {
    width: 9.5rem;
    margin-left: 1rem;
  }
  .singup .c-form .icon1 {
    left: -1.4rem;
    top: -13.8rem;
    width: 1.3rem;
  }
  .singup .c-form .icon2 {
    right: -1.2rem;
    bottom: -3.5rem;
    width: 1.2rem;
  }
  .singup .c-form .icon3 {
    left: -0.2rem;
    bottom: -3rem;
    width: 1.4rem;
  }
  .singup .c-form .icon4 {
    right: 1rem;
    bottom: -25rem;
    width: 5.5rem;
  }
}

/** mypage **/
.mypage {
  margin-top: 10rem;
}
.mypage-head {
  display: flex;
  justify-content: space-between;
}
.mypage-head__info {
  width: 40rem;
  flex: 0 0 40rem;
  background-color: #fff;
  border-radius: 10px;
  padding: 3.5rem 3rem 2rem;
}
.mypage-head__info .t1 {
  background-color: #f0f0ed;
  padding: 1rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
.mypage-head__info .t1 span {
  font-size: 2.4rem;
  margin-right: 1rem;
}
.mypage-head__info .t2 {
  margin-bottom: 2rem;
}
.mypage-head__info .t3 span {
  display: block;
  font-size: 1.2rem;
}
.mypage-head__info .point {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3.2rem;
}
.mypage-head__info .t4 {
  color: #f3046c;
  font-size: 2rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
}
.mypage-head__info .t4 span {
  font-size: 2.8rem;
}
.mypage-head__info .t6 {
  margin-bottom: 3.2rem;
  font-size: 1.4rem;
}
.mypage-head__info .logout {
  color: #f3046c;
  font-size: 1.4rem;
  font-weight: 500;
}

.mypage-head__columns {
  display: flex;
  width: 57.5rem;
  justify-content: space-between;
  flex-wrap: wrap;
}
.mypage-head__column {
  height: 18.5rem;
  flex: 0 0 27.5rem;
  width: 27.5rem;
  background-color: #fff;
  border-radius: 10px;
  margin-bottom: 2.5rem;
  text-align: center;
  padding: 4.5rem 0 4.5rem;
  transition: 0.3s;
}
.mypage-head__column.is-active {
  filter: drop-shadow(0px 10px 20px rgba(0, 0, 0, 0.16));
}

.mypage-head__column:hover {
  opacity: 0.5;
}
.mypage-head__column img {
  height: 5rem;
}
.mypage-head__column .column-title {
  font-weight: bold;
  margin-top: 2.5rem;
}

.mypage-head__column:nth-child(n + 3) {
  margin-bottom: 0;
}

.mypage-content {
  margin: 10rem auto;
}
.mypage-content img {
}
.content-title {
  margin-bottom: 3rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #707070;
}
.mypage-content__item-visual img,
.content-title img {
  margin: 0;
}
/***/
.mypage-content__item {
  border-radius: 10px;
  background: #fff;
  padding: 2rem 3rem;
}
.mypage-content__order-title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.mypage-content__order-date {
  display: inline-block;
  font-weight: 500;
  margin-left: 2.5rem;
}
.mypage-content__order-meta {
  color: #707070;
}
.mypage-content__order-meta span {
  margin: 0 0.5rem;
}
.mypage-content__order-item {
  display: flex;
  margin: 2rem 0 0;
  padding: 2rem 0 0;
  border-top: 1px dashed #707070;
}
.mypage-content__order-item:last-child {
  padding-bottom: 2rem;
  margin-bottom: 2rem;
  border-bottom: 1px dashed #707070;
}

.mypage-content__order-detail-title {
  margin-bottom: -6rem;
  border-bottom: 1px solid #707070;
  font-size: 2rem;
  font-weight: bold;
  padding-bottom: 1rem;
  margin-top: 5rem;
}
.mypage-content__order-detail-price {
  text-align: right;
  font-size: 2rem;
  font-weight: 500;
}
.mypage-content__order-detail-price .price {
  font-size: 2.8rem;
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  margin-left: 14rem;
}
.mypage-content__order-detail-price .tax {
  font-size: 1.4rem;
  font-weight: 400;
}
.mypage-content__order-detail {
  display: none;
}
.mypage-content__order-detail .c-table dl {
  border-bottom-style: dashed;
}
.mypage-content__order-detail-button {
  text-align: center;
  cursor: pointer;
}

.mypage-content__item-inner {
  /* display: flex; */
}
.mypage-content__item:nth-child(n + 4) {
  display: none;
}
.mypage-content__item + .mypage-content__item {
  margin-top: 4rem;
}
.mypage-content__item-visual {
  flex: 0 0 18rem;
  max-width: 18rem;
}
.mypage-content__item-visual img {
  object-fit: cover;
  height: 16rem;
}
.mypage-content__item-body {
  padding-left: 3rem;
  flex: 0 0 50rem;
  max-width: 50rem;
  margin-right: auto;
}
.mypage-content__item-meta {
  font-size: 1.4rem;
  margin-bottom: 1.2rem;
}
.mypage-content__item-meta1 {
  display: inline-block;
}
.mypage-content__item-meta2 {
  display: inline-block;
  margin-left: 2rem;
  font-size: 1.2rem;
}
.mypage-content__item-meta2 span {
  font-size: 1.6rem;
  margin-right: 0.5rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
}
.mypage-content__item-price {
  font-size: 1.2rem;
}
.mypage-content__item-price span {
  font-size: 2.4rem;
  margin-right: 0.5rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
}
.mypage-content__item-title {
  font-size: 2rem;
  margin-bottom: 1rem;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.mypage-content__item-button {
  align-self: center;
}
.mypage-content__item-button .button {
  width: 25rem;
}
.mypage-content__item-link {
  font-size: 1.6rem;
  color: #1a6eff;
  text-decoration: underline;
}

.mypage-content__items-button {
  display: flex;
  align-items: center;
  border: solid 1px;
  width: 25rem;
  height: 5rem;
  justify-content: center;
  border-radius: 30px;
  transition: 0.3s;
  margin: 5rem auto;
}
.mypage-content__items-button:hover {
  opacity: 0.6;
}
.mypage-content__items-button img {
  margin: 0 0;
}
.mypage-content__items-button .icn {
  margin-right: 1.5rem;
}
.withdrawal {
  font-size: 1.4rem;
  font-weight: 300;
  display: table;
  margin: auto;
}
.withdrawal svg {
  margin-left: 0.5rem;
}
@media screen and (max-width: 768px) {
  .mypage-content__item-inner {
    flex-wrap: wrap;
  }
  .mypage-content__item-body {
    flex: 0 0 21rem;
    max-width: 21rem;
  }
  .mypage {
    margin-top: 0;
  }
  .mypage-head {
    display: block;
  }
  .mypage-head__info {
    width: 100%;
    flex: 0 0 100%;
    background-color: #fff;
    border-radius: 10px;
    padding: 3rem 1.7rem 2rem;
    margin-bottom: 1.5rem;
  }
  .mypage-head__info .t1 {
    background-color: #f0f0ed;
    padding: 1rem;
    font-weight: bold;
    margin-bottom: 2rem;
  }
  .mypage-head__info .t1 span {
    font-size: 2rem;
    margin-right: 0.5rem;
  }
  .mypage-head__info .t2 {
    margin-bottom: 2rem;
  }
  .mypage-head__info .t3 span {
    display: block;
    font-size: 1.2rem;
  }
  .mypage-head__info .point {
    display: flex;
    justify-content: space-between;
    margin-bottom: 3.2rem;
  }
  .mypage-head__info .t4 {
    color: #f3046c;
    font-size: 2rem;
    font-family: futura-pt, sans-serif;
    font-weight: 500;
  }
  .mypage-head__info .t4 span {
    font-size: 2.4rem;
  }
  .mypage-head__info .t6 {
    margin-bottom: 3.2rem;
    font-size: 1.4rem;
  }
  .mypage-head__info .logout {
    color: #f3046c;
    font-size: 1.4rem;
    font-weight: 500;
  }

  .mypage-head__columns {
    /* display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap; */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem 0.9rem;
    width: 100%;
  }
  .mypage-head__column {
    width: 100%;
    height: 10rem;
    border-radius: 10px;
    text-align: center;
    padding: 1.5rem;
    margin: 0;
  }
  .mypage-head__column img {
    height: 2.5rem;
  }
  .mypage-head__column .column-title {
    font-weight: 500;
    font-size: 1.4rem;
    margin-top: 1rem;
  }
  .mypage-content {
    margin: 5rem auto 10rem;
  }
  .content-title img {
  }
  .content-title {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
  }
  .mypage-content__item-visual img,
  .content-title img {
    margin: 0;
  }
  .mypage-content__item {
    padding: 2rem 1.5rem;
  }
  .mypage-content__item + .mypage-content__item {
    margin-top: 2rem;
  }
  .mypage-content__item-visual {
    flex: 0 0 7.8rem;
    max-width: 7.8rem;
  }
  .mypage-content__item-visual img {
    height: 6.3rem;
  }
  .mypage-content__item-body {
    padding-left: 1.5rem;
  }
  .mypage-content__item-title {
    font-size: 1.4rem;
    margin-bottom: 0.5rem;
  }
  .mypage-content__item-meta {
    margin-bottom: 0.5rem;
  }
  .mypage-content__item .c-btn.a-bubble-btn .button {
    width: 25rem;
    height: 5rem;
  }
  .mypage-content__item .c-btn.a-bubble-btn .txt {
    width: 12.7rem;
  }
  .mypage-content__item-button {
    margin-left: auto;
    margin-top: 0.5rem;
  }
  .mypage-content__order-title {
    font-size: 1.6rem;
  }
  .mypage-content__order-meta {
    font-size: 1.2rem;
  }
  .mypage-content__order-item {
    flex-wrap: wrap;
  }
  .mypage-content__item-button {
    margin: auto;
    margin-top: 2rem;
  }
  .mypage-content__item-link {
    margin-left: 2rem;
    margin-top: 1.5rem;
    display: inline-block;
  }
  .mypage-content__item-meta2 {
    margin-left: 1rem;
    font-size: 1rem;
  }
  .mypage-content__item-meta1 {
    font-size: 1.2rem;
  }
  .mypage-content__item-meta2 span {
    font-size: 1.4rem;
  }
  .mypage-content__order-detail-title {
    margin-bottom: 0;
    font-size: 1.6rem;
    margin-top: 4rem;
  }
}

.privacy-policy-content {
  margin-top: 10rem;
  border-radius: 20px;
  background-color: #fff;
  padding: 6.5rem;
}

.privacy-policy-content__title {
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 2.4rem;
}
.privacy-policy-content p {
  margin-bottom: 4.8rem;
}
.privacy-policy-content ol {
  margin-bottom: 4.8rem;
  margin-left: 4rem;
}
.re1-point-tokuten__wrap--register {
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .re1-point-tokuten__wrap--register {
    border-radius: 1rem;
  }
  .privacy-policy-content {
    margin-top: 0;
    padding: 4.5rem 2rem;
  }
  .privacy-policy-content__title {
    font-size: 2rem;
    margin-bottom: 1.8rem;
  }
  .privacy-policy-content p {
    margin-bottom: 2.4rem;
  }
  .privacy-policy-content ol {
    margin-bottom: 2.4rem;
    margin-left: 2rem;
  }
  .re1-point-tokuten__item--last img.icon1 {
    width: 8rem;
    height: 3.8rem;
  }
}
.login-content2 {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .login-content2 {
    margin-top: 8rem;
  }
}

.cart-complete,
.page-404 {
  margin-top: 10rem;
}
.single-message {
  text-align: center;
}
.single-message h2 {
  font-size: 3.2rem;
  margin-bottom: 3.6rem;
}
.single-message > p {
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .cart-complete,
  .page-404 {
    margin-top: 0;
  }
  .single-message h2 {
    font-size: 1.8rem;
    margin-bottom: 1.8rem;
  }
  .single-message > p {
    margin-bottom: 4rem;
  }
}

.login__form-wrap {
  background: #fff;
  max-width: 100rem;
  margin: 4rem auto 0;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0px 10px 10px rgb(0 0 0 / 16%);
  padding: 6.5rem 0;
}
.cart-login {
  margin-top: 10rem;
  margin-bottom: 6rem;
}
.cart-login-button {
  margin: 1rem auto 4rem;
  justify-content: center;
}

.c-form__button--cart .buttons {
  width: 80%;
}

.complete-caution {
  margin: 4rem 0;
  border: solid 2px;
  padding: 4rem;
  color: #f3046c;
}
@media screen and (max-width: 768px) {
  .cart-login {
    margin-top: 4rem;
  }
  .login__form-wrap {
    padding: 4rem 1.8rem;
  }
  .complete-caution {
    padding: 2.5rem;
  }

  .title-singup2 {
    width: 9.2rem;
  }
}

.login__form-text {
  font-size: 1.4rem;
  position: relative;
  display: block;
  text-align: center;
  margin: 0 auto 1.4rem;
  width: fit-content;
  color: #f4227c;
  font-family: "Kiwi Maru";
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .login__form-text {
    font-size: 1.2rem;
  }
}
.login__form-text::before {
  content: "";
  border-left: 1px solid;
  rotate: 330deg;
  display: inline-block;
  position: absolute;
  left: -1.4rem;
  top: 0.3rem;
  background: #f3046c;
  width: 1px;
  height: 70%;
}
.login__form-text::after {
  content: "";
  border-left: 1px solid;
  rotate: -330deg;
  display: inline-block;
  position: absolute;
  right: -1.4rem;
  top: 0.3rem;
  background: #f3046c;
  width: 1px;
  height: 70%;
}
.product-item-wrap {
  margin-top: 10rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .product-item-wrap {
    margin-top: 0;
  }
  .sp-zoom-6 {
    zoom: 0.6;
  }
}
.product-card__categories {
  justify-content: flex-end;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}
.product-detail__meta {
  display: flex;
}
.product-detail__meta .product-label {
  margin-right: 0.25rem;
}
@media screen and (max-width: 768px) {
  .product-card__categories {
    justify-content: flex-start;
  }
}
.product-detail__stock-text {
  font-size: 1.4rem;
  margin-top: 1rem;
}
.product-detail__soldout-text {
  font-size: 2rem;
  font-weight: 600;
  color: #f3046c;
}

.password-reset__text {
  text-align: center;
  margin-bottom: 5.6rem;
  line-height: 1.875;
}
.password-reset__button-wrap {
  text-align: center;
  margin-top: 6rem;
}

.password-reset__link {
  color: #2086df;
  display: table;
  margin: 4rem auto 0;
}

@media screen and (max-width: 768px) {
}

.mypage-point-dialog {
  background-color: rgba(0, 0, 0, 0.6);
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 99999;
}

.mypage-point-dialog__content {
  max-width: 100rem;
  width: 100%;
  max-height: 50rem;
  overflow: auto;
  margin: 4rem auto;
  padding: 5rem 11rem;
  background-color: #fefaf2;
  border-radius: 10px;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content {
    max-width: calc(100% - 4rem);
    padding: 4rem 1.7rem;
    max-height: 70vh;
    margin-top: 7rem;
  }
}
.mypage-point-dialog__content .title {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 3.6rem;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .title {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}
.mypage-point-dialog__content .row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5rem;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .row {
    position: relative;
    padding-top: 3rem;
  }
}
.mypage-point-dialog__content .col-left {
  flex: 0 0 59%;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .col-left {
    flex: 0 0 80.5%;
  }
}
.mypage-point-dialog__content .col-right {
  flex: 0 0 41%;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .col-right {
    flex: 0 0 19.9%;
    position: relative;
    top: 2rem;
  }

  .mypage-point-dialog__content .col-right img {
    transform: scale(1.6) translate(-1.5rem, 4.5rem);
  }
}
.mypage-point-dialog__content .label {
  max-width: 30.4rem;
  text-align: center;
  font-weight: 500;
  background: #ffebb5;
  border-radius: 20px;
  padding: 0.8rem 2rem;
  position: relative;
}
.mypage-point-dialog__content .box .col-title {
  font-size: 1.2rem;
}
.mypage-point-dialog__content .box .link {
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .label {
    position: absolute;
    width: 100%;
    max-width: 30.2rem;
    top: 0;
  }
}
.mypage-point-dialog__content .label::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 100%);
  border: solid 7.5px transparent;
  border-right: solid 7.5px #ffebb5;
  border-top: solid 7.5px #ffebb5;
}

.mypage-point-dialog__content .text1 {
  font-weight: 500;
}

.mypage-point-dialog__content .f-tiles {
  display: flex;
  align-items: baseline;
  font-weight: bold;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}

.mypage-point-dialog__content .f-tiles .t1,
.mypage-point-dialog__content .f-tiles .t4 {
  font-size: 4.8rem;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  margin-right: 1rem;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .f-tiles .t1,
  .mypage-point-dialog__content .f-tiles .t4 {
    font-size: 3.2rem;
    margin-right: 0.35rem;
  }
}
.mypage-point-dialog__content .f-tiles .t1 {
  color: #a99dbc;
}

.mypage-point-dialog__content .f-tiles .t4 {
  color: #f3046c;
}

.mypage-point-dialog__content .f-tiles .t3 {
  margin: 0 1rem;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .f-tiles .t3 {
    font-size: 2rem;
    margin: 0 0.5rem;
  }
}
.mypage-point-dialog__content .f-tiles .t2,
.mypage-point-dialog__content .f-tiles .t5 {
  font-size: 2.4rem;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .f-tiles .t2,
  .mypage-point-dialog__content .f-tiles .t5 {
    font-size: 1.6rem;
  }
}
.mypage-point-dialog__content .box {
  padding: 2.4rem 3.2rem;
  background-size: 100%;
  background-repeat: no-repeat;
  background-image: url("../images/mypage/point-bg.svg");
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .box {
    background-image: url("../images/mypage/point-bg_sp.svg");
    padding: 1.2rem 2.4rem;
  }
}
.mypage-point-dialog__content .box .t1 {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1.2rem;
  display: flex;
  gap: 1rem;
  justify-content: center;
  align-items: center;
}
.mypage-point-dialog__content .box .t1::before {
  content: "＼";
}
.mypage-point-dialog__content .box .t1::after {
  content: "／";
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .box .t1 {
    font-size: 1.6rem;
    margin-bottom: 1.2rem;
  }
}
.mypage-point-dialog__content .box .link {
  margin-right: 1.5rem;
  display: inline-block;
  width: 100%;
  height: 5rem;
  padding: 1.5rem 0 1.5rem;
  text-align: center;
  border: solid 1px;
  border-radius: 38px;
  background-color: #fff;
  transition: 0.3s;
  background-color: #fff;
  transition: 0.3s;
  color: #000;
  text-decoration: none;
  font-size: 1rem;
}

.mypage-point-dialog__content .box .link img {
  display: inline;
  margin-left: 1rem;
}

.mypage-point-dialog__content .box .row {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .box .row {
    display: block;
    padding-top: 0;
    margin-bottom: 0;
  }
}
.mypage-point-dialog__content .box .col-title {
  margin-bottom: 1.5rem;
  font-family: "Kiwi Maru", serif;
  text-align: center;
  white-space: nowrap;
}

.mypage-point-dialog__content .box .col {
  flex: 0 0 calc(50% - 2.5rem);
  max-width: calc(50% - 2.5rem);
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__content .box .col-title {
    margin-bottom: 1rem;
  }
  .mypage-point-dialog__content .box .col {
    max-width: 100%;
  }

  .mypage-point-dialog__content .box .col:nth-child(2) {
    margin-top: 1.6rem;
  }
}
.mypage-point-dialog__close {
  position: absolute;
  right: 7rem;
  top: 2rem;
}

@media screen and (max-width: 768px) {
  .mypage-point-dialog__close {
    position: absolute;
    right: 2.8rem;
    top: 2.9rem;
  }
}
.js-dialog-open {
  cursor: pointer;
}

.mypage-head__info .t3 span {
  display: block;
  font-size: 1.2rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.358%22%20height%3D%2216.358%22%20viewBox%3D%220%200%2016.358%2016.358%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_12783%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2012783%22%20transform%3D%22translate(-0.36%20-0.46)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_10122%22%20data-name%3D%22%E3%83%91%E3%82%B9%2010122%22%20d%3D%22M8.179%2C0A8.179%2C8.179%2C0%2C1%2C1%2C0%2C8.179%2C8.179%2C8.179%2C0%2C0%2C1%2C8.179%2C0Z%22%20transform%3D%22translate(0.36%200.46)%22%20fill%3D%22%23999%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_119230%22%20data-name%3D%22%E3%83%91%E3%82%B9%20119230%22%20d%3D%22M6.156-5.048H7.162c-.331-1.84%2C2.6-2.221%2C2.6-4.073%2C0-1.411-1.1-2.294-2.834-2.294a4.07%2C4.07%2C0%2C0%2C0-3.1%2C1.423l.662.613a3.121%2C3.121%2C0%2C0%2C1%2C2.319-1.116c1.251%2C0%2C1.865.613%2C1.865%2C1.46C8.671-7.636%2C5.776-7.084%2C6.156-5.048ZM5.69-2.987a.954.954%2C0%2C0%2C0%2C.994.969.944.944%2C0%2C0%2C0%2C.981-.969.934.934%2C0%2C0%2C0-.981-.957A.944.944%2C0%2C0%2C0%2C5.69-2.987Z%22%20transform%3D%22translate(1.744%2015.625)%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center left 0;
  padding-left: 1.6rem;
  color: #999999;
  text-decoration: underline;
  margin-top: 0.5rem;
  cursor: pointer;
}

.c-link {
  color: #2086df;
}

.cart-login-form {
  margin: 5rem auto 0;
}
.cart-form-title {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 4rem;
}
.cart-login-form__buttons .button-wrap:nth-child(2) {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  border-top: #cccccc 1px solid;
}
@media screen and (min-width: 769px) {
  .cart-login-form__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}
.cart-login-form__buttons {
  margin-top: 5rem;
}
.c-btn--singup {
  text-align: center;
}
.c-btn--singup.c-btn.a-bubble-btn .button {
  width: 34rem;
  height: 6rem;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}
.txt-not-register {
  width: 18.9rem;
}
.txt-register {
  width: 9rem !important;
}
.txt-login {
  width: 9rem;
}
@media screen and (max-width: 768px) {
  .c-btn--singup.c-btn.a-bubble-btn .button {
    width: 26rem;
    height: 4.4rem;
  }
  .cart-login-form {
    margin-top: 3.6rem;
  }
  .cart-login-form__row {
    display: block;
  }
  .cart-login-form__col:nth-child(2) {
  }

  .txt-register {
    width: 9rem !important;
  }
  .txt-login {
    width: 9rem !important;
  }
}

.cart-login-form__col .cart-form-title {
  text-align: center;
  margin-bottom: 3rem;
}
.cart-login-form__col:first-child .c-form__box {
  border-radius: 10px;
  background: #efefef;
  border: 1px solid #efefef;
  padding: 5rem 5rem 0.5rem;
}
@media screen and (max-width: 768px) {
  .cart-login-form__col .cart-form-title {
    margin-bottom: 1.6rem;
  }
  .cart-login-form__col:first-child {
    margin-bottom: 4rem;
  }
  .cart-login-form__col:first-child .c-form__box {
    padding: 3.4rem 1.2rem 0.5rem;
  }
}

.c-btn.a-bubble-btn .button--white {
  background: #fff;
}
.c-btn.a-bubble-btn .button--white:hover {
  background: #fff !important;
  border: none;
}
.c-btn.a-bubble-btn .button--bubble__effect-container.white .circle,
.c-btn.a-bubble-btn .button--bubble__effect-container.white .effect-button {
  background: #fff !important;
}

.c-btn.a-bubble-btn .button--secondary {
  background: #ffebb5;
}
.c-btn.a-bubble-btn .button--secondary:hover {
  background: #ffebb5 !important;
  border: none;
}
.c-btn.a-bubble-btn .button--bubble__effect-container.secondary .circle,
.c-btn.a-bubble-btn .button--bubble__effect-container.white .effect-button {
  background: #ffebb5 !important;
}

.cart-header_explanation {
  padding: 10rem 0 0;
  line-height: 3rem;
}
@media screen and (max-width: 768px) {
  .cart-header_explanation {
    padding: 0 0 0;
  }
}

/**/
/* 商品一覧の下部カテゴリ */
.product-category-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  column-gap: 2rem;
  margin-top: 10rem;
}
.product-category-link:nth-child(-n + 4) {
  border-top: dashed 1px #707070;
}
.product-category-link {
  display: block;
  border-bottom: dashed 1px #707070;
  padding: 1.5rem 0;
  display: flex;
  align-items: center;
  font-weight: 500;
  transition: 0.3s;
}
.product-category-link img {
  margin: 0;
  width: 6.5rem;
  margin-right: 2rem;
}
.product-category-link:hover {
  opacity: 0.6;
}
.product-category-link::after {
  content: "";
  width: 0.9rem;
  height: 0.9rem;
  display: inline-block;
  border: solid 2px;
  border-bottom: 0;
  border-left: 0;
  margin-right: 1rem;
  transform: rotate(45deg);
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .product-category-list {
    margin-top: 7rem;
    grid-template-columns: 1fr 1fr;
    column-gap: 1.5rem;
  }
  .product-category-link:nth-child(-n + 2) {
    border-top: dashed 1px #707070;
  }
  .product-category-link img {
    width: 5.5rem;
    margin-right: 1.5rem;
  }
  .product-category-link span {
    font-size: 1.4rem;
  }
  .product-category-link::after {
    width: 0.8rem;
    height: 0.8rem;
    margin-right: 0.5rem;
  }
}

.company-mv {
  padding: 10rem 0 4rem;
  border-radius: 1rem;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .company-mv {
    padding: 0 0 4rem;
    border-radius: 5px;
  }
}

.infomation-table {
  margin-top: 1rem;
}
.infomation-table table {
  border-collapse: collapse;
  width: 100%;
  border-radius: 1rem;
  overflow: hidden;
  border: solid;
}
.infomation-table th {
  border: solid 1px #d1d1d1;
  padding: 0.8rem;
  white-space: nowrap;
  background-color: #dfdfdf;
}
.infomation-table td,
th {
  border: solid 1px #d1d1d1;
}
.infomation-table td {
  padding: 1rem 3rem 1rem 1.5rem;
}
.infomation-table td.price {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  min-width: 13rem;
  font-size: 2rem;
  color: #f3046c;
  padding: 1rem;
  text-align: center;
  vertical-align: middle;
}
.infomation-table td.price::after {
  font-weight: bold;
  margin-left: 0.5rem;
  content: "円";
  font-size: 1.4rem;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.infomation-table td.area {
  min-width: 12rem;
  text-align: center;
  vertical-align: middle;
  padding: 1rem;
}
.infomation-table .alt {
  background-color: #f6f6f6;
}
@media screen and (max-width: 768px) {
  .infomation-table td.price::after {
    font-size: 1.2rem;
    margin-left: 0.25rem;
  }
  .infomation-table td.price,
  .infomation-table td.area {
    min-width: 100%;
    padding: 0.5rem;
  }
  .infomation-table td.price {
    font-size: 1.6rem;
    white-space: nowrap;
  }
  .infomation-table td.area {
    white-space: nowrap;
  }
}

.cart-other-link {
  text-align: right;
  margin-left: auto;
  display: block;
  margin-right: 4.6rem;
  font-size: 1.8rem;
  text-decoration: underline;
  color: #121212;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .cart-other-link {
    font-size: 1.4rem;
    margin-top: -4rem !important;
    margin-bottom: 2rem;
  }
}

.product-banners {
  margin-top: 2.4rem;
  display: grid;
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .product-banners {
    margin-top: 1.6rem;
  }
}
.product-banner {
  transition: 0.3s;
}
a.product-banner:hover {
  opacity: 0.6;
}

.dialog {
  background-color: rgba(0, 0, 0, 0.6);
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 99999;
  overscroll-behavior: contain;
}

.dialog__content {
  overscroll-behavior: contain;
  max-width: 63rem;
  width: 100%;
  max-height: 50rem;
  overflow: auto;
  margin: 9rem auto;
  background-color: #fefaf2;
  border-radius: 10px;
}
.dialog__content > .infomation-table {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .dialog__content {
    max-width: calc(100% - 4rem);
    max-height: 70vh;
  }
}
.dialog__content .title {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 3.6rem;
}

@media screen and (max-width: 768px) {
  .dialog__content .title {
    font-size: 2rem;
    margin-bottom: 3.2rem;
  }
}

.dialog__close {
  position: absolute;
  right: 7rem;
  top: 2rem;
}

@media screen and (max-width: 768px) {
  .dialog__close {
    position: absolute;
    right: 2.8rem;
    top: 2.6rem;
  }
}
.dialog__bottom-close {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 1.5rem;
  border: solid 1px;
  max-width: 24rem;
  margin: auto;
  border-radius: 40px;
  margin-top: 4rem;
}

.singup-dialog {
  background-color: rgba(0, 0, 0, 0.6);
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 99999;
  overscroll-behavior: contain;
}

.singup-dialog__content {
  overscroll-behavior: contain;
  max-width: 100rem;
  width: 100%;
  max-height: 50rem;
  overflow: auto;
  margin: 9rem auto;
  padding: 5rem 8rem;
  background-color: #fefaf2;
  border-radius: 10px;
}

@media screen and (max-width: 768px) {
  .singup-dialog__content {
    max-width: calc(100% - 4rem);
    padding: 4rem 1.7rem;
    max-height: 70vh;
  }
}
.singup-dialog__content .title {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 3.6rem;
}

@media screen and (max-width: 768px) {
  .singup-dialog__content .title {
    font-size: 2rem;
    margin-bottom: 3.2rem;
  }
}
.singup-dialog .banners {
  display: flex;
  justify-content: space-between;
  max-width: 76rem;
  margin: auto;
}

@media screen and (max-width: 768px) {
  .singup-dialog .banners {
    display: block;
  }
}
.singup-dialog .banner {
  max-width: 36rem;
}

@media screen and (max-width: 768px) {
  .singup-dialog .banner {
    margin-bottom: 4rem;
  }

  .singup-dialog .banner:last-child {
    margin-bottom: 0;
  }
}
.singup-dialog .banner-title {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22139%22%20height%3D%225%22%20viewBox%3D%220%200%20139%205%22%3E%20%3Cdefs%3E%20%3CclipPath%20id%3D%22clip-path%22%3E%20%3Crect%20width%3D%22139%22%20height%3D%225%22%20fill%3D%22none%22%2F%3E%20%3C%2FclipPath%3E%20%3C%2Fdefs%3E%20%3Cg%20id%3D%22%E3%83%AA%E3%83%94%E3%83%BC%E3%83%88%E3%82%B0%E3%83%AA%E3%83%83%E3%83%89_22%22%20data-name%3D%22%E3%83%AA%E3%83%94%E3%83%BC%E3%83%88%E3%82%B0%E3%83%AA%E3%83%83%E3%83%89%2022%22%20clip-path%3D%22url(%23clip-path)%22%3E%20%3Cg%20transform%3D%22translate(-583%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-568%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-2%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-553%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-3%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-538%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-4%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-523%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-5%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-508%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-6%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-493%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-7%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-478%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-8%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-463%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-9%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3Cg%20transform%3D%22translate(-448%20-1129)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_54-10%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2054%22%20cx%3D%222%22%20cy%3D%222%22%20r%3D%222%22%20transform%3D%22translate(583%201130)%22%20fill%3D%22%23212121%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 14rem;
  padding-bottom: 1.8rem;
  background-repeat: no-repeat;
  background-position: bottom center;
  font-family: "Kiwi Maru", serif;
  font-size: 2rem;
  font-weight: 500;
  display: table;
  margin: 0 auto 1.5rem;
}

.singup-dialog__grids {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3rem;
  row-gap: 2.5rem;
  margin-bottom: 10rem;
}

@media screen and (max-width: 768px) {
  .singup-dialog__grids {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.7rem;
    row-gap: 1.5rem;
    margin-bottom: 5rem;
  }
}
.singup-dialog__grid {
  padding: 1.5rem 1.2rem 3rem;
  background-color: #fff;
  border-radius: 10px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .singup-dialog__grid {
    padding: 1.5rem 1rem 2.5rem;
  }
}
.singup-dialog__grid .t1 {
  display: flex;
  margin-bottom: 2rem;
  height: 5rem;
  vertical-align: middle;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .singup-dialog__grid .t1 {
    align-items: baseline;
    font-size: 1.4rem;
  }
}
.singup-dialog__close {
  position: absolute;
  right: 7rem;
  top: 2rem;
}

@media screen and (max-width: 768px) {
  .singup-dialog__close {
    position: absolute;
    right: 2.8rem;
    top: 2.6rem;
  }
}
.singup-dialog__bottom-close {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 1.5rem;
  border: solid 1px;
  max-width: 24rem;
  margin: auto;
  border-radius: 40px;
  margin-top: 4rem;
}

.js-dialog-open {
  cursor: pointer;
}

@media screen and (max-width: 750px) {
  input#zeus_token_card_name {
    width: 100%;
  }
}

.product-detail__control2 {
  position: relative;
  z-index: 2;
}
.product-detail__controls--float .product-detail__add-cart img {
  display: none;
}
.product-detail__controls--float {
  /* display: none; */
  display: grid;
  margin-top: 4.3rem;
  grid-template-columns: repeat(2, 44rem);
  gap: 2.4rem;
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 3.7rem 0 2.9rem;
  z-index: 10;
}
.product-detail__controls--float::before {
  content: "";
  background: rgba(255, 255, 255, 0.5);
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.product-detail__controls--float .product-detail__add-cart {
  margin: 0;
}
.product-detail__controls--float.is-static {
  position: relative;
  bottom: 0;
  left: 0;
  width: 100%;
  /* padding: 0; */
}
.product-detail__controls--float.is-static::before {
  display: none;
}
.product-detail__controls-link {
  display: block;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .product-detail__controls--float {
    /* width: calc(100% + 3.6rem); */
    width: 100%;
    /* margin-left: -1.8rem; */
    justify-content: center;
    display: grid;
    grid-template-columns: repeat(2, 15rem);
    padding: 0 1.8rem;
    gap: 1.6rem;
  }
  .product-detail__controls--float::before {
  }
  .product-detail__controls--float .product-detail__control2 {
    padding: 1.5rem 0;
    position: relative;
    z-index: 2;
    max-width: 15rem;
    width: 15rem;
  }
  .product-detail__controls--float .product-detail__add-cart img {
    width: auto;
    margin-right: 1rem;
    height: 1.4rem;
    /* display: none; */
  }
  .product-detail__controls--float .product-detail__add-cart {
    margin: 0;
    margin: 0 auto;
    font-size: 1.4rem;
    height: 3.5rem;
  }
}

.product-cart-popup {
  z-index: 10000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(150, 150, 150, 0.52);
  /* display: none; */
}
.product-cart-popup__layer {
  position: absolute;
  width: 100%;
  height: 100%;
}
.product-cart-popup__box {
  width: 59rem;
  height: 59rem;
  background-color: #fff;
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding: 16rem 0 0;
  border-radius: 4px;
}
.product-cart-popup__icon {
  width: 13.1rem;
  margin: 0 0 3.4rem 25.1rem;
}
.product-cart-popup__title {
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 14rem;
}
.product-cart-popup__footer {
  border-top: 1px dashed #707070;
  text-align: center;
  padding: 4.4rem 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  gap: 1rem;
  font-weight: bold;
  margin: 0 4.55rem 0 4.65rem;
}
.product-cart-popup__footer svg {
  width: 1.5rem;
  height: 1.5rem;
}

@media screen and (max-width: 750px) {
  .product-cart-popup__box {
    top: 40%;
    width: 32.2rem;
    height: 32.2rem;
    padding: 8.6rem 0 0;
  }
  .product-cart-popup__icon {
    width: 7.3rem;
    margin: 0 0 1.5rem 13.8rem;
  }
  .product-cart-popup__title {
    font-size: 1.4rem;
    margin-bottom: 7.6rem;
  }
  .product-cart-popup__footer {
    font-size: 1.2rem;
    padding-top: 2.3rem;
  }
  .product-cart-popup__footer svg {
    width: 0.9rem;
    height: 0.9rem;
  }
}

/* 202410 改修 */
.product-detail__info2 {
  padding-top: 3.4rem;
  margin-top: 3.1rem;
  border-top: 1px solid #707070;
}
.product-detail__info2 dl {
  display: grid;
  gap: 6.7rem;
  grid-template-columns: 6.4rem 1fr;
  margin-bottom: 2.4rem;
}
.product-detail__info2 dl:first-child {
  align-items: center;
}
.product-detail__info2 dl:last-child {
  margin-bottom: 0;
}
.product-detail__info2 dd .product-detail__control1 .nice-select {
  width: 30.9rem;
  font-size: 1.6rem;
  font-weight: 500;
  justify-content: center;
  align-items: center;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.product-detail__info2 dd .product-detail__control1 .nice-select::before {
  content: "";
}
.product-detail__info2 dt {
  font-weight: 500;
}
.product-detail__info2-memo1 {
  font-size: 1.4rem;
}
.product-detail__info2-memo2 {
  font-size: 1.4rem;
  color: #6c6c6c;
  margin-top: 1.2rem;
}

@media screen and (max-width: 768px) {
  .product-detail__info2 {
    padding-top: 3rem;
    margin-top: 2.8rem;
    border-top: 1px solid #707070;
  }
  .product-detail__info2 dl {
    gap: 5rem;
    grid-template-columns: 5.6rem 1fr;
    margin-bottom: 1.2rem;
  }
  .product-detail__info2 dl:last-child {
    margin-bottom: 0;
  }

  .product-detail__info2 dd .product-detail__control1 .nice-select {
    width: 100%;
    height: 3.7rem;
    font-size: 1.4rem;
    font-weight: 500;
    justify-content: center;
  }
  .product-detail__info2 dd .product-detail__control1 .nice-select .current {
    line-height: 3.7rem;
  }
  .product-detail__info2-memo1 {
    font-size: 1.2rem;
  }
  .product-detail__info2-memo2 {
    font-size: 1.2rem;
    color: #6c6c6c;
    margin-top: 0.8rem;
  }
}

/**@add 202504**/
.taikai-modal {
  background: rgba(112, 112, 112, 0.64);
}
.taikai-modal__content {
  max-width: 100rem;
  max-height: calc(100vh - 18.8rem);
  border-radius: 4px;
  background: #fbfaf8;
  padding: 6.4rem 8.5rem 10.4rem;
  position: relative;
}
.taikai-modal__content .dialog__close {
  top: 3.2rem;
  right: 4rem;
}
.taikai-modal__title {
  font-size: 2.6rem;
  margin-bottom: 4rem;
  text-align: center;
  font-weight: bold;
}
.taikai-modal__desc {
  text-align: center;
  letter-spacing: 0.1em;
  padding-bottom: 3.2rem;
  margin-bottom: 4.4rem;
  border-bottom: 1px solid #ccc;
}
.taikai-form-item {
  margin-bottom: 3.5rem;
}
.taikai-form-item__label {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 1em;
}
.taikai-form-item__label::before {
  content: "必須";
  width: 4rem;
  height: 2rem;
  border-radius: 5px;
  background: #f3046c;
  color: #fff;
  display: inline-block;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 500;
  margin-right: 1.6rem;
}
.taikai-form-item__label.nini::before {
  content: "任意";
  background-color: #aaaaaa;
}
.taikai-form-item__input {
}
.taikai-form-item__input select {
  width: 42.6rem;
  height: 6.4rem;
  display: block;
  border-radius: 2px;
  background: #fff;
  border: 1px solid #ccc;
  padding: 2rem 3.2rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213%22%20height%3D%228%22%20viewBox%3D%220%200%2013%208%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_291809%22%20data-name%3D%22%E3%83%91%E3%82%B9%20291809%22%20d%3D%22M7.776%2C0%2C6.545%2C1.182%2C11.75%2C6.5l-5.2%2C5.318L7.776%2C13l6.769-6.5Z%22%20transform%3D%22translate(13%20-6.545)%20rotate(90)%22%20fill%3D%22%23ccc%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center right 2.4rem;
  appearance: none;
}
.taikai-form-item__inputs {
  display: grid;
  grid-template-columns: auto 42.6rem;
}
.taikai-form-item__input-etc input[type="text"]::placeholder {
  color: #ccc;
}
.taikai-form-item__input-etc {
  margin-top: -0.8rem;
}
.taikai-form-item__input-etc input[type="text"] {
  width: 42.6rem;
  height: 6.4rem;
  display: block;
  appearance: none;
  border-radius: 2px;
  background: #fff;
  border: 1px solid #ccc;
  padding: 2rem 3.2rem;
  appearance: none;
}
.taikai-form-item__check input[type="checkbox"] {
  display: none;
}
input[type="checkbox"]:checked + .taikai-form-item__check-text::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.324%22%20height%3D%2210.629%22%20viewBox%3D%220%200%2014.324%2010.629%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_291810%22%20data-name%3D%22%E3%83%91%E3%82%B9%20291810%22%20d%3D%22M3.7%2C9.492-.516%2C2.519A.75.75%2C0%2C0%2C1%2C.768%2C1.742L4.042%2C7.154%2C11.67.2a.75.75%2C0%2C0%2C1%2C1.01%2C1.109Z%22%20transform%3D%22matrix(0.996%2C%20-0.087%2C%200.087%2C%200.996%2C%200.621%2C%201.12)%22%20fill%3D%22%23f3046c%22%2F%3E%3C%2Fsvg%3E");
  background-size: 1.3rem;
  background-position: center;
  background-repeat: no-repeat;
}
.taikai-form-item__check {
  display: block;
  margin-bottom: 1.6rem;
}
.taikai-form-item__check label {
}
.taikai-form-item__check-text {
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.taikai-form-item__check-text::before {
  content: "";
  width: 3.2rem;
  height: 3.2rem;
  background: #fff;
  border: 1px solid #ccc;
  display: inline-block;
}
.taikai-form-item__input textarea::placeholder {
  color: #ccc;
}
.taikai-form-item__input textarea {
  width: 100%;
  height: 18.2rem;
  padding: 2rem 3.2rem;
  border-radius: 2px;
  background: #fff;
  border: 1px solid #ccc;
  resize: none;
}
.taikaisuru {
  width: 6.5rem;
  display: block;
  margin: 0 auto;
}
.chushisuru {
  width: 6.5rem;
  display: block;
  margin: 0 auto;
}
.taikai-form-buttons {
  display: flex;
  justify-content: center;
  gap: 4.2rem;
  align-items: center;
}
.taikai-form-buttons .c-btn.a-bubble-btn .button--white {
  border: solid 1px #34695f;
}
.taikai-form-buttons .a-bubble-btn .button--bubble__container .effect-button {
  height: 4.8rem;
  top: 50.5%;
}
.taikai-form-buttons .arw2 {
  display: inline-block;
  width: 0.8rem;
  position: absolute;
  top: 47.5%;
  left: 2.25rem;
  transform: translate(0, -50%);
}
@media screen and (max-width: 768px) {
  .taikai-modal__content {
    margin: 8rem auto;
    max-width: calc(100% - 3.6rem);
    padding: 4.4rem 1.6rem 6.2rem;
  }
  .taikai-modal__content .dialog__close {
    top: 1.6rem;
    right: 1.6rem;
  }
  .taikai-modal__content .dialog__close svg {
    width: 2.5rem;
    height: 2.5rem;
  }
  .taikai-form-item {
    margin-bottom: 2rem;
  }
  .taikai-modal__title {
    font-size: 1.6rem;
    margin-bottom: 2.8rem;
  }
  .taikai-modal__desc {
    font-size: 1.3rem;
    text-align: left;
    margin-bottom: 3rem;
    padding-bottom: 3.5rem;
  }
  .taikai-form-item__label {
    font-size: 1.4rem;
    font-size: 1.35rem;
    white-space: nowrap;
    margin-bottom: 1.6rem;
    display: flex;
  }
  .taikai-form-item__label::before {
    width: 3.5rem;
    height: 1.8rem;
    font-size: 1.2rem;
    font-weight: bold;
    margin-right: 1rem;
  }
  .taikai-form-item__input select {
    width: 100%;
    height: 4.8rem;
    padding: 1.4rem 2.35rem;
    background-position: right 1.3rem center;
  }
  .taikai-form-item__inputs {
    display: block;
  }
  .taikai-form-item__check {
    margin-bottom: 0.8rem;
  }
  .taikai-form-item__check-text {
    gap: 1.6rem;
    white-space: nowrap;
  }
  .taikai-form-item__check-text::before {
    width: 2.8rem;
    height: 2.8rem;
  }
  .taikai-form-item__input-etc {
    margin-top: 0;
  }
  .taikai-form-item__input-etc input[type="text"] {
    width: 100%;
    height: 4.8rem;
    padding: 1.4rem 2.35rem;
  }
  .taikai-form-buttons {
    overflow: hidden;
    flex-direction: column;
    gap: 1.6rem;
    margin-top: 3.2rem;
  }
}

.section-title .sub.sub--t2 {
  font-size: 2.4rem;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  color: #f3046c;
}
.page-content-title--taikai {
  display: block;
}
.section-title .main {
  display: flex;
}
.section-title .main img {
  width: 14.6rem;
  margin-left: 0;
  margin-bottom: 1.6rem;
}
.page-content-title--taikai .border {
  margin-left: 2.85rem;
  align-self: baseline;
  padding-top: 2.1rem;
}

.taikaikanryo {
  text-align: center;
}
.taikaikanryo p {
  margin-bottom: 5.6rem;
}
.taikaikanryo__icon img {
  width: 17.2rem;
  margin-top: 6rem;
  margin-bottom: 2rem;
}
.taikaikanryo h2 {
  font-size: 3.2rem;
  margin-bottom: 3.8rem;
}
.taikaikanryo .tophe {
  width: 5.8rem;
  margin: 0 auto;
}

.taikaikanryo {
  padding-top: 8rem;
}
@media screen and (max-width: 768px) {
  .section-title .sub.sub--t2 {
    font-size: 1.4rem;
    font-family: futura-pt-bold, sans-serif;
    font-weight: 700;
    letter-spacing: 0;
    color: #f3046c;
    margin-top: 0;
  }
  .page-content-title--taikai {
    display: block;
  }
  .section-title .main {
    display: flex;
  }
  .section-title .main img {
    width: 8rem;
    margin-left: 0;
    margin-bottom: 0.4rem;
  }
  .page-content-title--taikai .border {
    margin-left: 1.5rem;
    align-self: baseline;
    padding-top: 1.2rem;
  }
  .taikaikanryo {
    padding-top: 6rem;
  }
  .taikaikanryo__icon {
    margin: 0 auto 2.2rem;
    width: 11.8rem;
  }
  .taikaikanryo h2 {
    font-size: 2rem;
    margin-bottom: 1em;
  }
  .taikaikanryo p {
    margin-bottom: 4.8rem;
  }
}

.mypage-top-info__okoppay {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_40750%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2040750%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2218%22%20viewBox%3D%220%200%2020%2018%22%3E%20%3Cdefs%3E%20%3CclipPath%20id%3D%22clip-path%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_16485%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2016485%22%20width%3D%2220%22%20height%3D%2218%22%20fill%3D%22%23126f84%22%2F%3E%20%3C%2FclipPath%3E%20%3C%2Fdefs%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_39490%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2039490%22%20clip-path%3D%22url(%23clip-path)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_292693%22%20data-name%3D%22%E3%83%91%E3%82%B9%20292693%22%20d%3D%22M6.51%2C11.588%2C4.68%2C12a6.247%2C6.247%2C0%2C0%2C0%2C1.908%2C2.127A5.939%2C5.939%2C0%2C0%2C0%2C10%2C15.205a6.027%2C6.027%2C0%2C0%2C0%2C3.909-1.457A6.237%2C6.237%2C0%2C0%2C0%2C16%2C10.078l2.7.485a9.049%2C9.049%2C0%2C0%2C1-3.025%2C5.326A8.743%2C8.743%2C0%2C0%2C1%2C10%2C18a8.636%2C8.636%2C0%2C0%2C1-4.961-1.569A9.029%2C9.029%2C0%2C0%2C1%2C1.92%2C12.616L0%2C13.046%2C2.54%2C9ZM14.961%2C1.57A8.636%2C8.636%2C0%2C0%2C0%2C10%2C0%2C8.743%2C8.743%2C0%2C0%2C0%2C4.328%2C2.112%2C9.049%2C9.049%2C0%2C0%2C0%2C1.3%2C7.438L4%2C7.924a6.238%2C6.238%2C0%2C0%2C1%2C2.087-3.67A6.027%2C6.027%2C0%2C0%2C1%2C10%2C2.8a5.94%2C5.94%2C0%2C0%2C1%2C3.412%2C1.081A6.248%2C6.248%2C0%2C0%2C1%2C15.32%2C6l-1.83.41L17.46%2C9%2C20%2C4.956l-1.92.43A9.029%2C9.029%2C0%2C0%2C0%2C14.961%2C1.57%22%20transform%3D%22translate(0%20-0.001)%22%20fill%3D%22%23126f84%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center left 1.3rem;
  background-color: #f4f4f4;
  height: 2.9rem;
  width: fit-content;
  padding: 0 1.3rem;
  border-radius: 30px;
  margin-left: auto;
  margin-bottom: 1.4rem;
  display: flex;
  align-items: center;
  padding-left: 4.1rem;
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .mypage-top-info__okoppay {
    background-size: 2rem;
    padding-left: 4.4rem;
    font-size: 1.2rem;
    margin-bottom: 0.8rem;
  }
}
.mypage-top-info__okoppay > span {
  font-family: futura-pt, sans-serif;
  font-size: 2rem;
}
@media (max-width: 767px) {
  .mypage-top-info__okoppay > span {
    font-size: 1.6rem;
  }
}
.mypage-top-info__okoppay > span .pt {
  font-size: 1.3rem;
  margin-left: 0.4rem;
}
@media (max-width: 767px) {
  .mypage-top-info__okoppay > span .pt {
    font-size: 1.2rem;
  }
}
.mypage-top-info__separate {
  border-bottom: 1px solid #d6d6d6;
  margin-top: 2.4rem;
  margin-bottom: 1.6rem;
}

.mypage-top-banner-okoppay {
  margin-top: 1.6rem;
  display: grid;
  grid-template-columns: 10.4rem 1fr;
  min-height: 7.6rem;
  outline: solid 0.5px #d6d6d6;
  margin-bottom: 3.2rem;
}
@media (max-width: 767px) {
  .mypage-top-banner-okoppay {
    grid-template-columns: 10.5rem 1fr;
    min-height: 6.5rem;
    max-width: 100%;
    margin-bottom: 2.4rem;
  }
}
.mypage-top-banner-okoppay__left {
  display: flex;
  justify-content: center;
}
.mypage-top-banner-okoppay__left-logo img {
  width: 100%;
  height: 100%;
}
.mypage-top-banner-okoppay__title {
  font-size: 0.9rem;
  letter-spacing: 0.1em;
  font-weight: bold;
  margin-bottom: 1rem;
}
@media (max-width: 767px) {
  .mypage-top-banner-okoppay__title {
    font-size: 0.8rem;
    white-space: nowrap;
    margin-bottom: 0.8rem;
  }
}
.mypage-top-banner-okoppay__right {
  background-color: #fff;
  padding: 1.1rem 1.4rem 1rem 1.5rem;
  text-align: center;
}
@media (max-width: 767px) {
  .mypage-top-banner-okoppay__right {
    padding: 1.2rem 1rem 1rem;
  }
}
.mypage-top-banner-okoppay__button {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18.5rem;
  height: 3.1rem;
  background: linear-gradient(to right, #30bde7 0%, #1f9bdf 45.81%, #1b92dd 77.34%, #1381da 100%);
  border-radius: 3rem;
  font-size: 1rem;
  letter-spacing: 0.1em;
  font-weight: bold;
  position: relative;
  margin: auto;
}
@media (max-width: 767px) {
  .mypage-top-banner-okoppay__button {
    width: 14.5rem;
    height: 2.5rem;
    font-size: 0.8rem;
  }
}
.mypage-top-banner-okoppay__button svg {
  width: 0.5rem;
}
@media (max-width: 767px) {
  .mypage-top-banner-okoppay__button svg {
    width: 0.4rem;
    right: 1rem;
  }
}

.mypage-okoppay-box {
  background-color: #fff;
  padding: 6rem 7.8rem 5.6rem;
  border-radius: 2rem;
}
.mypage-okoppay-box__inner {
  max-width: 44.1rem;
}

.mypage-okoppay-point {
  border-bottom: 1px dashed #707070;
  padding: 0 0 1.6rem;
  margin-bottom: 2.4rem;
  justify-content: space-between;
}
.mypage-okoppay-point__left {
  font-weight: bold;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
  .mypage-okoppay-point__left {
    font-size: 1.6rem;
  }
}
.mypage-okoppay-point__value {
  font-size: 2.8rem;
  color: #f3046c;
  font-family: futura-pt, sans-serif;
  text-align: right;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .mypage-okoppay-point__value {
    font-size: 4rem;
  }
}
.mypage-okoppay-point__value > span {
  font-size: 2rem;
  margin-left: 0.5rem;
}
@media (max-width: 767px) {
  .mypage-okoppay-point__value > span {
    font-size: 2.4rem;
    margin-left: 0.8rem;
  }
}
.c-textfield::placeholder {
  color: #d3d3d3;
}
.c-textfield {
  padding: 1.3rem 2.4rem;
  border-radius: 5px;
  background: #fff;
  border: 1px solid #ccc;
  width: 100%;
}
.mypage-radio {
  display: flex;
  align-items: center;
  font-weight: bold;
}
.mypage-radio input[type="radio"] {
  opacity: 0;
  width: 0;
}
.mypage-radio input[type="radio"] + span {
  display: flex;
  align-items: center;
}
.mypage-radio input[type="radio"] + span > span {
  position: relative;
  z-index: 2;
}
.mypage-radio input[type="radio"] + span::before {
  content: "";
  color: #265bc1;
  display: inline-block;
  background-color: #fff;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 100%;
  flex: 0 0 1.6rem;
  margin-right: 0.8rem;
  border: solid 1px;
  z-index: 1;
}
@media (max-width: 767px) {
  .mypage-radio input[type="radio"] + span::before {
    margin-right: 1.6rem;
  }
}
.mypage-radio input[type="radio"]:checked + span::before {
  background-color: #265bc1;
  border: 2px solid #fff;
  outline: 1px solid #265bc1;
  border-radius: 100%;
}
.mypage-radio input[type="radio"]:checked + span::after {
  background: #ccecff;
}

.mypage-okoppay-charges {
  margin-bottom: 5.6rem;
}

.mypage-okoppay-charge + .mypage-okoppay-charge {
  margin-top: 1.6rem;
}
@media (max-width: 767px) {
  .mypage-okoppay-charge + .mypage-okoppay-charge {
    margin-top: 0.8rem;
  }
}
.mypage-okoppay-charge__input {
  margin-top: 1.6rem;
}
.mypage-okoppay-charge__input-text {
  font-weight: bold;
  margin-top: 0.8rem;
  text-align: right;
}
@media (max-width: 767px) {
  .mypage-okoppay-charge__input-text {
    margin-top: 0.8rem;
  }
}

.mypage-okoppay-dialog {
  background-color: rgba(0, 0, 0, 0.64);
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 99999;
  display: none;
  overflow: auto;
  align-content: center;
}
.mypage-okoppay-dialog__close-layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
}
.mypage-okoppay-dialog__content {
  overscroll-behavior: contain;
  position: relative;
  max-width: 1000px;
  width: 100%;
  height: 80rem;
  height: 65rem;
  padding: 6.4rem 0 7.2rem 7.2rem;
  overflow: auto;
  margin: 2.4rem auto;
  background-color: #fff;
  border-radius: 4px;
}
@media (max-width: 767px) {
  .mypage-okoppay-dialog__content {
    max-width: calc(100% - 3.6rem);
    padding: 6.4rem 1.6rem;
    height: 62rem;
  }
}
.mypage-okoppay-dialog__close {
  position: absolute;
  inset: 3.2rem 4rem auto auto;
  width: 4rem;
  height: 4rem;
}
@media (max-width: 767px) {
  .mypage-okoppay-dialog__close {
    inset: 1.6rem 1.6rem auto auto;
    width: 2.5rem;
    height: 2.5rem;
  }
}
.mypage-okoppay-dialog__title {
  display: flex;
  gap: 0.8rem;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  font-weight: 600;
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  .mypage-okoppay-dialog__title {
    display: none;
  }
}
.mypage-okoppay-dialog__title svg {
  width: 3.2rem;
  height: 3.2rem;
}
.mypage-okoppay-dialog .splide__arrow {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2232%22%20viewBox%3D%220%200%2024%2032%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_314496%22%20data-name%3D%22%E3%83%91%E3%82%B9%20314496%22%20d%3D%22M26.853%2C0l3.692%2C2.909L14.932%2C16%2C30.545%2C29.091%2C26.853%2C32%2C6.545%2C16Z%22%20transform%3D%22translate(-6.545)%22%20fill%3D%22%2328485a%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-color: transparent;
  width: 2.4rem;
  height: 3.2rem;
  border-radius: 0;
  opacity: 1;
}
.mypage-okoppay-dialog .splide__arrow svg {
  display: none;
}
.mypage-okoppay-dialog .splide:not(.is-overflow) .splide__pagination {
  display: block;
}
.mypage-okoppay-dialog .splide__pagination {
  display: block;
  text-align: center;
  position: absolute;
  bottom: -6rem;
}
@media (max-width: 767px) {
  .mypage-okoppay-dialog .splide__pagination {
    bottom: -3rem;
  }
}
.mypage-okoppay-dialog .splide__pagination__page {
  width: 1rem;
  height: 1rem;
  margin: 0 0.8rem;
  opacity: 1;
  background-color: #f4f4f4;
}
.mypage-okoppay-dialog .splide__pagination__page.is-active {
  scale: 1 !important;
  transform: scale(1) !important;
  background-color: #28485a;
}
.mypage-okoppay-dialog .splide__arrow--prev {
  bottom: -4rem;
  top: auto;
  transform: translateY(100%);
}
.mypage-okoppay-dialog .splide__arrow--next {
  bottom: -4rem;
  right: 6.4rem;
  top: auto;
  transform: translateY(100%) scaleX(-1);
}
.mypage-okoppay-dialog .splide__slide {
  position: relative;
}
.mypage-okoppay-dialog .mypage-okoppay-app-btns {
  position: absolute;
  bottom: 2.1rem;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 9.9rem);
  gap: 1.3rem;
  justify-content: center;
}
.mypage-okoppay-dialog .mypage-okoppay-app-btn {
  transition: 0.4s;
}
.mypage-okoppay-dialog .mypage-okoppay-app-btn:hover {
  scale: 1.05;
}
.mypage-head__column--okoppay {
  position: relative;
  background-image: url("../images/mypage/okoppay_new.svg");
  background-repeat: no-repeat;
  background-position: left 1.8rem top 1.6rem;
  background-size: 6.4rem;
}
@media (max-width: 767px) {
  .mypage-okoppay-dialog .mypage-okoppay-app-btns {
    bottom: 2.6rem;
    grid-template-columns: repeat(2, 12.5rem);
    gap: 1.6rem;
  }
  .mypage-head__column--okoppay {
    background-size: 4.1rem;
    background-position: left 1.6rem top 0.5rem;
  }
}
.mypage-head__column--okoppay .mypage-head__column-icon {
  margin-top: -1rem;
  margin-bottom: 0.2rem;
}
.mypage-head__column--okoppay .mypage-head__column-icon img {
  width: 11.2rem;
  height: 8.3rem;
}
@media (max-width: 767px) {
  .mypage-head__column--okoppay .mypage-head__column-icon img {
    width: 7.5rem;
    height: 4.8rem;
    position: relative;
    right: -3.8rem;
    top: 0.3rem;
  }
}
.mypage-head__column--okoppay.mypage-head__column .column-title {
  margin-top: 0;
}
@media (max-width: 767px) {
  .mypage-head__column--okoppay.mypage-head__column .column-title {
    line-height: 1.9rem;
    margin-top: 0.2rem;
  }
  .mypage-head__column--okoppay .mypage-head__column-icon {
    width: 9.4rem;
    margin-bottom: 0.2rem;
  }
}

.mypage-top-info__point-text2 img {
  margin: 0;
}
.mypage-top-info__point-text2 {
  font-size: 1.2rem;
  margin-top: 0.8rem;
  color: #707070;
  gap: 0.4rem;
  display: flex;
  align-items: center;
  justify-content: end;
}
.mypage-top-info__point-text2.is-new::before {
  content: "NEW!";
  color: #36c9c6;
  font-weight: 600;
  margin-right: 0.4rem;
}
.mypage-top-info__point-text2 span {
  border-bottom: 1px solid #d6d6d6;
  line-height: 1.9rem;
}
.c-btn--pointcharge {
  margin: auto;
  width: fit-content;
}
.c-btn--pointcharge.c-btn.a-bubble-btn .button--primary {
}
.c-btn--pointcharge.a-bubble-btn .button .arw {
  right: 1.85rem;
}
.c-btn--pointcharge .button .txt {
  width: 16.9rem !important;
}

@media (max-width: 767px) {
  .content-title--okoppaycharge img {
    max-width: 25.4rem;
  }
  .mypage-okoppay-charges {
    margin-bottom: 3.2rem;
  }
  .mypage-okoppay-box {
    padding: 4.2rem 1.5rem;
  }
  .c-btn--pointcharge {
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
  }
}

.simple-btns {
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: center;
  gap: 2rem;
}
.simple-btn {
  width: 24.9rem;
  height: 5rem;
  border: solid #212121 1.5px;
  border-radius: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  position: relative;
  transition: 0.4s;
}
@media (max-width: 767px) {
  .simple-btns {
    display: flex;
    flex-direction: column-reverse;
    margin: auto;
    justify-content: center;
    align-items: center;
  }
}
.simple-btn__arrow {
  position: absolute;
  left: 3rem;
  transition: 0.4s;
}
.simple-btn:hover {
  scale: 1.025;
}
.simple-btn:hover .simple-btn__arrow {
  left: 2.5rem;
}

.simple-btn.simple-btn--okoppay {
  border: 0;
  background: linear-gradient(to right, #30bde7 0%, #1f9bdf 45.81%, #1b92dd 77.34%, #1381da 100%);
}
.simple-btn.simple-btn--okoppay .simple-btn__txt {
  width: 18.4rem;
}
.simple-btn.simple-btn--okoppay .simple-btn__arrow {
  left: auto;
  right: 1.75rem;
}
.simple-btn.simple-btn--okoppay:hover .simple-btn__arrow {
  left: auto;
  right: 1rem;
}
