@charset "UTF-8";
@media screen and (min-width: 768px) {
  .fs-c-cartTable {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__headerCell {
    border-top: none;
    border-bottom: 1px solid #d5d5d5;
    border-left: none;
    border-right: none;
    vertical-align: middle;
    font-size: 0.875rem;
    padding: 5px;
  }
  .fs-c-cartTable__headerCell:not(:first-child) {
    text-align: center;
  }
  .fs-c-cartTable__headerCell--quantity {
    width: 80px;
  }
  .fs-c-cartTable__headerCell--subtotal {
    width: 90px;
  }
  .fs-c-cartTable__headerCell--point {
    width: 80px;
  }
  .fs-c-cartTable__headerCell--action {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__row {
    border-bottom: solid 1px #d5d5d5;
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__row {
    position: relative;
    border-bottom: dashed 1px #d5d5d5;
  }
}
.fs-c-cartTable__row:last-child {
  margin-bottom: 40px;
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__row:last-child {
    border-bottom: none;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__dataCell {
    border: none;
    padding: 15px 5px;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__dataCell--quantity, .fs-c-cartTable__dataCell--subtotal, .fs-c-cartTable__dataCell--point {
    width: auto;
    display: grid;
    align-items: center;
    border-bottom: 1px dashed #d5d5d5;
    margin-left: 95px;
    padding: 8px 3px;
  }
  .fs-c-cartTable__dataCell--quantity::before, .fs-c-cartTable__dataCell--subtotal::before, .fs-c-cartTable__dataCell--point::before {
    font-weight: normal;
    text-align: left;
    line-height: 1;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__dataCell--quantity, .fs-c-cartTable__dataCell--subtotal, .fs-c-cartTable__dataCell--point {
    font-size: 0.875rem;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__dataCell--subtotal, .fs-c-cartTable__dataCell--point {
    grid-template-columns: 1fr 80px;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__dataCell--product {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__dataCell--quantity {
    grid-template-columns: 1fr 40px;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__dataCell--action {
    padding: 15px 0 0;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__dataCell--action {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
.fs-c-cartTable__product {
  gap: 15px;
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__product {
    display: grid;
    grid-template-columns: 80px 1fr;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__productInfo {
    flex-grow: 1;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__productImage {
    width: 80px;
    padding-right: 0 !important;
  }
}
.fs-c-cartTable__productName {
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__productName {
    font-size: 0.8125rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__productName {
    font-size: 0.875rem;
  }
}
.fs-c-cartTable__quantity select {
  width: auto;
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__quantity select {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__quantity {
    width: 50px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__price {
    justify-content: center;
  }
}
.fs-c-cartTable__actionButton {
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .fs-c-cartTable__actionButton {
    justify-content: flex-end;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-cartTable__actionButton {
    display: flex;
  }
}
.fs-c-cartTable__actionButton button {
  width: 100%;
  display: block;
  border: solid 1px #d5d5d5;
  border-radius: 50px;
  font-size: 0.75rem;
  padding: 5px 15px;
}

/*
  各種パーツ
*/
.fs-c-listedProductName__variation {
  font-size: 0.6875rem;
}

@media screen and (max-width: 767px) {
  .fs-c-productPrice__main {
    font-size: 0.8125rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-productPrice__main {
    font-size: 0.875rem;
  }
}
.fs-c-productPrice__addon {
  font-size: 0.625rem;
  margin-left: 3px;
}

.fs-c-quantity__select {
  min-height: 1.8em;
  border-radius: 3px;
}
.fs-c-quantity__select:focus {
  border-color: #3ba4f1;
}

.fs-c-number {
  box-shadow: none;
  border-radius: 3px;
}

/*
  合計表示エリア
*/
.fs-c-orderTotalTable {
  width: 100%;
}
.fs-c-orderTotalTable tr {
  display: grid;
  grid-template-columns: auto auto;
}
.fs-c-orderTotalTable tr:not(:first-child) th,
.fs-c-orderTotalTable tr:not(:first-child) td {
  border-top: 1px solid #d5d5d5;
}
.fs-c-orderTotalTable tr:first-child th,
.fs-c-orderTotalTable tr:first-child td {
  border-top: none;
}
.fs-c-orderTotalTable th,
.fs-c-orderTotalTable td {
  border-bottom: none;
  border-left: none;
  border-right: none;
  padding: 8px;
}
.fs-c-orderTotalTable th {
  font-weight: normal;
  text-align: left !important;
}
@media screen and (max-width: 767px) {
  .fs-c-orderTotalTable th,
  .fs-c-orderTotalTable td {
    padding-right: 3px;
    padding-left: 3px;
  }
  .fs-c-orderTotalTable__itemPriceSummary {
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-orderTotalTable th {
    font-size: 0.875rem;
  }
  .fs-c-orderTotalTable td {
    font-weight: 700;
  }
}
.fs-c-orderTotalTable__grandTotal th {
  height: 100%;
  display: flex;
  align-items: center;
  border-top: 3px solid #d5d5d5 !important;
}
.fs-c-orderTotalTable__grandTotal td {
  font-size: 1.5rem !important;
  border-top: 3px solid #d5d5d5 !important;
}

.fs-c-buttonContainer {
  text-align: center;
}
.fs-c-buttonContainer--confirmRegister, .fs-c-buttonContainer--memberRegister, .fs-c-buttonContainer--send, .fs-c-buttonContainer--login {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .fs-c-buttonContainer--confirmRegister, .fs-c-buttonContainer--memberRegister, .fs-c-buttonContainer--send, .fs-c-buttonContainer--login {
    text-align: center;
  }
}
.fs-c-buttonContainer--pair {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .fs-c-buttonContainer--pair {
    margin: 30px 5.5vw 0;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-buttonContainer--pair {
    margin: 40px auto 0;
  }
}

.fs-c-button--primary, .fs-c-button--standard {
  display: inline-block;
  border-radius: 50px;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  padding: 15px;
}
@media screen and (max-width: 767px) {
  .fs-c-button--primary, .fs-c-button--standard {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-button--primary, .fs-c-button--standard {
    width: 100%;
    max-width: 260px;
  }
}
.fs-c-button--primary {
  border: solid 2px #3ba4f1;
  background: #3ba4f1;
  color: #fff;
}
.fs-c-button--standard {
  border: solid 2px #3ba4f1;
  color: #3ba4f1;
}
.fs-c-button--secondary {
  font-size: 0.875rem;
  font-weight: 700;
  color: #3ba4f1;
}
.fs-c-button--hidePassword, .fs-c-button--displayPassword {
  width: 40px;
  position: relative;
  border-top: solid 1px #d5d5d5;
  border-bottom: solid 1px #d5d5d5;
  border-right: solid 1px #d5d5d5;
  border-radius: 0 3px 3px 0;
  padding: 8px;
  background: url("https://devirockstore.net/s/assets/image/common/icon/masking_solid_bk.svg") center/20px auto no-repeat;
}
.fs-c-button--hidePassword:focus, .fs-c-button--displayPassword:focus {
  border: 1px solid #3ba4f1;
}
.fs-c-button--displayPassword::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: 8px;
  width: 21px;
  height: 2px;
  background: currentColor;
  transform: rotate(45deg);
}

.fs-favorite_release span,
.fs-favorite_entry span {
  display: none;
}
.fs-favorite_release::after,
.fs-favorite_entry::after {
  content: "";
  width: 18px;
  height: 18px;
  display: block;
}

.fs-favorite_release::after {
  background: url(https://devirockstore.net/s/assets/image/common/icon/heart_fill_pk.svg) no-repeat 0 0/100%;
}

.fs-favorite_entry::after {
  background: url(https://devirockstore.net/s/assets/image/common/icon/heart_stroke_bk.svg) no-repeat 0 0/100%;
}

.fs-c-wishlistProduct {
  margin-top: 30px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct {
    margin-top: 60px;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-wishlistProduct {
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct__header {
    margin: 0 5.5vw 10px;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-wishlistProduct__header {
    margin-bottom: 15px;
  }
}
.fs-c-wishlistProduct__header::before {
  content: "お気に入りアイテム";
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct__header::before {
    font-size: 0.875rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-wishlistProduct__header::before {
    font-size: 1.125rem;
  }
}
.fs-c-wishlistProduct__title {
  display: none;
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct__list {
    margin-left: 5.5vw;
  }
}
.fs-c-wishlistProduct .slick-track {
  display: flex;
  align-items: stretch;
}
.fs-c-wishlistProduct .slick-slide {
  display: flex;
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct .slick-slide {
    width: 34.36vw !important;
  }
  .fs-c-wishlistProduct .slick-slide:not(:last-child) {
    margin-right: 2px;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-wishlistProduct .slick-slide {
    width: 200px !important;
  }
  .fs-c-wishlistProduct .slick-slide:not(:last-child) {
    margin-right: 8px;
  }
}
.fs-c-wishlistProduct .fs-c-productPrice__main {
  font-size: 0.875rem;
  font-weight: bold;
}
.fs-c-wishlistProduct .fs-c-productPrice__main__addon {
  margin-left: 3px;
}
.fs-c-wishlistProduct .fs-c-productPrice__addon {
  font-size: 0.625rem;
  margin-left: 3px;
}

@media screen and (max-width: 767px) {
  .fs-c-productListCarousel__ctrl {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-productListCarousel__ctrl {
    position: absolute;
    width: 50px;
    height: 50px;
    inset-block-start: calc(50% + var(--nav-offset, 0px));
    z-index: 99;
  }
  .fs-c-productListCarousel__ctrl span {
    display: none !important;
  }
  .fs-c-productListCarousel__ctrl::after {
    content: "";
    width: 100%;
    height: 100%;
    background: #2e2e2e;
    border-radius: 50%;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px 13px;
    cursor: pointer;
  }
  .fs-c-productListCarousel__ctrl:hover {
    opacity: 0.7;
  }
  .fs-c-productListCarousel__ctrl--prev {
    left: -20px;
  }
  .fs-c-productListCarousel__ctrl--prev::after {
    background-image: url(https://devirockstore.net/s/assets/image/common/arrow/white.svg);
    transform: rotate(180deg);
  }
  .fs-c-productListCarousel__ctrl--next {
    right: -20px;
  }
  .fs-c-productListCarousel__ctrl--next::after {
    background-image: url(https://devirockstore.net/s/assets/image/common/arrow/white.svg);
  }
}

.slick-disabled {
  display: none !important;
}

.fs-c-productListCarousel__list__item {
  position: relative;
}

.fs-c-productListItem__imageContainer {
  margin-bottom: 8px;
}
.fs-c-productListItem__image__image {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.fs-c-productListItem .fs-c-productName__copy {
  display: none;
}
.fs-c-productListItem .fs-c-productName__name {
  height: 2.8em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .fs-c-productListItem .fs-c-productName__name {
    font-size: 0.625rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-productListItem .fs-c-productName__name {
    font-size: 0.75rem;
  }
}
.fs-c-productListItem .fs-c-productName__variation {
  display: none;
}
.fs-c-productListItem .fs-c-productPrice {
  width: calc(100% - 18px);
}
.fs-c-productListItem .fs-c-productPrice__main {
  display: flex;
  align-items: baseline;
}
.fs-c-productListItem .fs-c-productPrice__main__price {
  font-size: 0.875rem;
}
.fs-c-productListItem .fs-c-productPrice__main__addon {
  margin-left: 3px;
  font-size: 0.625rem;
}
.fs-c-productListItem .fs-c-productPrice__main__joint {
  font-size: 0.625rem;
}
.fs-c-productListItem .fs-c-productPrice__addon {
  margin-left: 3px;
  font-size: 0.625rem;
}
.fs-c-productListItem .fs-c-productPrice--listed {
  display: none;
}
.fs-c-productListItem .fs-c-productPrice--selling {
  display: flex;
  align-items: baseline;
  padding: 0 5px;
}
.fs-c-productListItem__control {
  position: absolute;
  bottom: 0;
  right: 0;
}
.fs-c-productListItem .fs-c-productMarks {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  line-height: 1;
  position: absolute;
}
@media screen and (max-width: 767px) {
  .fs-c-productListItem .fs-c-productMarks {
    top: 34.36vw;
    transform: translateY(-100%);
  }
}
@media screen and (min-width: 768px) {
  .fs-c-productListItem .fs-c-productMarks {
    top: 200px;
    transform: translateY(-100%);
  }
}
.fs-c-productListItem .fs-c-productMark__mark {
  display: inline-block;
  font-size: 0.625rem;
  color: #fff;
  line-height: 1.8;
  padding: 0 5px;
}
.fs-c-productListItem .fs-label__fs {
  background: #6FAFDD;
}
.fs-c-productListItem .fs-label__sale {
  background: #ee2e3e;
}

.fs-c-wishlistProduct__footer {
  position: absolute;
  top: 0;
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct__footer {
    right: 5.5vw;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-wishlistProduct__footer {
    right: 0;
  }
}

.fs-c-wishlistProduct__viewAllProducts::after {
  content: "もっとみる";
  font-weight: bold;
  color: #3ba4f1;
}
@media screen and (max-width: 767px) {
  .fs-c-wishlistProduct__viewAllProducts::after {
    font-size: 0.75rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-wishlistProduct__viewAllProducts::after {
    font-size: 0.875rem;
  }
}

.fs-c-button--viewProductDetail,
.fs-c-button--addToCart--list,
.fs-c-productListItem__lowInStock,
.fs-c-viewAllProductsLink__label {
  display: none;
}

@media screen and (min-width: 768px) {
  .fs-l-main {
    max-width: 1000px;
    width: calc(100% - 60px);
  }
}

@media screen and (max-width: 767px) {
  .fs-l-cart__contentsArea {
    margin: 30px 5.5vw;
  }
}
@media screen and (min-width: 768px) {
  .fs-l-cart__contentsArea {
    display: grid;
    grid-template-columns: minmax(400px, 690px) minmax(240px, 1fr);
    gap: 50px;
    margin-top: 40px;
  }
}

.fs-c-cartDiscountInfo--postage {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .fs-c-cartDiscountInfo--postage {
    font-size: 0.875rem;
    border-bottom: solid 1px #d5d5d5;
    padding-bottom: 15px;
  }
}
.fs-c-cartDiscountInfo__info {
  font-weight: 700;
}
.fs-c-cartDiscountInfo__more {
  color: #ee2e3e;
}

.fs-c-purchaseHere__message {
  display: none;
}

.fs-c-button--purchaseHere {
  width: 100%;
  display: block;
  border-radius: 50px;
  background: #3ba4f1;
  font-size: 0.875rem;
  color: #fff;
  text-align: center;
  margin-bottom: 20px;
  padding: 15px;
}

.fs-c-buttonContainer--unregisteredUserPurchase {
  text-align: center;
  margin: 20px 0;
}

.fs-c-payWithAmazon__message {
  font-size: 0.75rem;
  margin-bottom: 10px;
}

.fs-c-button--continueShopping {
  width: 210px;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .fs-total-payment {
    padding: 30px 20px;
    border: 4px solid #f2f2f2;
  }
}

@media screen and (max-width: 767px) {
  .fs-cart-payment {
    padding: 30px 20px;
    border: 4px solid #f2f2f2;
  }
  .fs-cart-payment--line {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    gap: 1em;
    margin-bottom: 15px;
  }
  .fs-cart-payment--line::before, .fs-cart-payment--line::after {
    content: "";
    width: 100%;
    flex-grow: 1;
    border-top: 1px solid #d5d5d5;
  }
  .fs-cart-payment--line span {
    flex-shrink: 0;
    white-space: nowrap;
  }
}
@media screen and (min-width: 768px) {
  .fs-cart-payment--line {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    gap: 1em;
    margin-bottom: 20px;
  }
  .fs-cart-payment--line::before, .fs-cart-payment--line::after {
    content: "";
    width: 100%;
    flex-grow: 1;
    border-top: 1px solid #d5d5d5;
  }
  .fs-cart-payment--line span {
    flex-shrink: 0;
    white-space: nowrap;
  }
}

.fs-cart-about {
  font-size: 0.625rem;
  color: #a0a0a0;
  margin: 10px 0 30px;
}

.fs-recommend {
  position: relative;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .fs-recommend {
    margin-right: 5.5vw;
    margin-left: 5.5vw;
  }
}
.fs-recommend__container {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .fs-recommend__spec {
    margin-top: 10px;
    padding: 0 3px;
  }
}
@media screen and (min-width: 768px) {
  .fs-recommend__spec {
    margin-top: 10px;
    padding: 0 8px;
  }
}
.fs-recommend__name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
  .fs-recommend__name {
    font-size: 0.625rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-recommend__name {
    font-size: 0.8125rem;
    height: calc(3em + 5px);
  }
}
.fs-recommend__price {
  font-size: 1rem;
  font-weight: 700;
  font-feature-settings: "palt";
  margin-top: auto;
}
.fs-recommend__tax {
  font-size: 0.625rem;
  font-weight: normal;
  padding-left: 3px;
}

.fs-p-announcement {
  background: #f2f2f2;
  font-size: 0.8125rem;
  padding: 15px;
}
@media screen and (max-width: 767px) {
  .fs-p-announcement {
    margin-right: 5.5vw;
    margin-left: 5.5vw;
  }
  .fs-p-announcement__title {
    font-weight: 700;
  }
}
.fs-p-announcement__wrapping {
  text-decoration: underline;
  margin-top: 10px;
}

.fs-about__wrapping {
  margin-top: 40px;
}
.fs-about__fs, .fs-about__cart {
  margin-top: 15px;
}

.fs-p-flexibleColumn {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 3px;
}
.fs-p-flexibleColumn a {
  display: block;
  border: 1px solid currentColor;
  border-radius: 100vmax;
  padding: 3px 5px;
}