@charset "UTF-8";

.show_pc {
  display: none !important;
}

html {
  scroll-padding: 16vw;
  scroll-behavior: smooth;
}

.fs-l-main {
  margin-bottom: 0 !important;
  transition: padding cubic-bezier(0.55, 0, 1, 0.45) 0.3s;
}

address {
  font-style: normal;
}

/*-----------
  header
-------------*/
.fs-l-header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 100;
  background-color: #fff;
}

.header_info {
  background-color: #cc0048;
  text-align: center;
  padding: 1.3333333333vw;
  font-size: 3.2vw;
}
.header_info ul {
  margin: 0;
}
.header_info li, .header_info a {
  color: #fff;
}
.header_info .fs-pt-list--noMarker > li + li {
  margin: 0;
}

.main_header {
  display: grid;
  grid-template-columns: 26.6666666667vw 1fr 26.6666666667vw;
  align-items: center;
  height: 13.3333333333vw;
  overflow: hidden;
  position: relative;
}
.main_header_btn {
  height: 100%;
  width: 13.3333333333vw;
  background-color: #107fbf;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  appearance: none;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.main_header_btn:after {
  content: "MENU";
  text-align: center;
  font-size: 2.6666666667vw;
  line-height: 1;
  margin-top: -0.5333333333vw;
}
.main_header_btn span {
  line-height: 1;
}
.main_header_btn span:before {
  content: "\e5d2";
  font-family: "Material Symbols Outlined";
  font-size: 7.4666666667vw;
  line-height: 1;
}
.main_header_btn.active:after {
  content: "CLOSE";
}
.main_header_btn.active span:before {
  content: "\e5cd";
}
.main_header_logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.main_header_logo img {
  max-height: 10.6666666667vw;
  width: auto;
}
.main_header_link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  list-style: none;
  padding: 0;
  margin: 0;
}
.main_header_link li {
  text-align: center;
}
.main_header_link li a {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.main_header_link li img {
  width: 4.8vw;
}
.main_header_link li strong {
  font-size: 2.6666666667vw;
  font-weight: 400;
}

/*-----------
  drawer
-------------*/
.side-active .drawer {
  transform: translateX(-100%);
}

.drawer {
  --pos: 0;
  background-color: #107fbf;
  width: 100%;
  height: calc(100vh - 13.3333333333vw - var(--pos));
  overflow-y: auto;
  position: absolute;
  left: 0;
  z-index: 100;
  top: 13.3333333333vw;
  transform: translateX(0);
  transition: transform cubic-bezier(0.55, 0, 1, 0.45) 0.3s;
}
.drawer_inner {
  padding: 6.6666666667vw 4vw;
}
.drawer_info {
  background-color: #efe433;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 13.3333333333vw;
  font-size: 3.7333333333vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 5.3333333333vw;
}
.drawer_info img {
  width: 7.4666666667vw;
  margin-right: 3.7333333333vw;
}
.drawer_catch {
  margin-bottom: 5.3333333333vw;
  font-size: 4vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1.6;
  color: #fff;
}
.drawer_welcome {
  text-align: center;
  border-top: 1px solid #fff;
  padding: 4.2666666667vw 0;
  margin: 0;
  color: #fff;
  letter-spacing: 0.05em;
  font-size: 4vw;
}
.drawer_tool {
  border-top: 1px solid #fff;
  display: flex;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.drawer_tool a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8vw 5.3333333333vw;
}
.drawer_tool a img {
  width: 8vw;
}
.drawer_tool a strong {
  color: #fff;
  font-size: 2.6666666667vw;
  letter-spacing: 0.05em;
  margin-top: 0.8vw;
  font-weight: 400;
}
.drawer_block {
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 5.3333333333vw 4vw;
}
.drawer_block + .drawer_block {
  margin-top: 6.6666666667vw;
}
.drawer_ttl {
  border-left: 2px solid #efe433;
  font-size: 4vw;
  padding-left: 2.1333333333vw;
  font-weight: 500;
  margin: 0 0 6.6666666667vw;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #fff;
}
.drawer_search {
  display: flex;
  align-items: stretch;
  background: #fff;
}
.drawer_search-input {
  font-size: 1.6rem;
  height: 10.6666666667vw;
  border: none;
  width: calc(100% - 10.6666666667vw);
  flex-grow: 1;
  padding: 1.3333333333vw 0 1.3333333333vw 2.6666666667vw;
}
.drawer_search-button {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  background-color: #fff;
  width: 10.6666666667vw;
  padding: 0;
  text-align: center;
}
.drawer_search-button img {
  width: 5.8666666667vw;
  vertical-align: middle;
}
.drawer_contact {
  display: flex;
  align-items: center;
  font-size: 3.2vw;
  background-color: #fff;
  color: #107fbf;
  letter-spacing: 0.05em;
  height: 13.3333333333vw;
  padding: 0 4vw;
  line-height: 1;
}
.drawer_contact img {
  width: 5.3333333333vw;
  margin-right: 2.6666666667vw;
}
.drawer .nav_category, .drawer .nav_support {
  list-style: none;
  margin: 0;
  padding: 0;
  color: #fff;
  background-color: #fff;
}
.drawer .nav_category li:not(:last-child), .drawer .nav_support li:not(:last-child) {
  border-bottom: 1px solid #107fbf;
}
.drawer .nav_category .fs-pt-menu__link--lv1, .drawer .nav_support .fs-pt-menu__link--lv1 {
  color: #107fbf;
  display: block;
  line-height: 1.3;
  letter-spacing: 0.05em;
  padding: 4.2666666667vw 9.3333333333vw 4.2666666667vw 2.6666666667vw;
  font-size: 3.7333333333vw;
}
.drawer .nav_category .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2), .drawer .nav_support .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2) {
  position: relative;
}
.drawer .nav_category .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2):after, .drawer .nav_support .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2):after {
  content: "";
  width: 1.6vw;
  height: 1.6vw;
  border-right: 1px solid #107fbf;
  border-bottom: 1px solid #107fbf;
  position: absolute;
  top: 50%;
  right: 3.4666666667vw;
  transform: rotate(45deg);
  margin-top: -1.6vw;
}
.drawer .nav_category .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2).active:after, .drawer .nav_support .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2).active:after {
  transform: rotate(-135deg);
  margin-top: -0.8vw;
}
.drawer .nav_category .fs-pt-menu--lv2, .drawer .nav_support .fs-pt-menu--lv2 {
  background-color: #69afd7;
  display: none;
}
.drawer .nav_category .fs-pt-menu--lv2 .fs-pt-menu__link, .drawer .nav_support .fs-pt-menu--lv2 .fs-pt-menu__link {
  display: block;
  color: #fff;
  padding: 3.2vw 5.3333333333vw;
  font-size: 3.2vw;
  line-height: 1.3;
  letter-spacing: 0.05em;
}
.drawer .nav_category .fs-pt-menu--lv2 .fs-pt-menu__link--lv3, .drawer .nav_support .fs-pt-menu--lv2 .fs-pt-menu__link--lv3 {
  padding-left: 8.5333333333vw;
}
.drawer .nav_category .fs-pt-menu__submenu, .drawer .nav_support .fs-pt-menu__submenu {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid #107fbf;
}

.calendar {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 2.6666666667vw;
}
.calendar table {
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  table-layout: fixed;
  text-align: center;
  border: none;
}
.calendar table th, .calendar table td {
  color: #107fbf;
  font-size: 3.2vw;
  vertical-align: middle;
  border: 1px solid #ddd;
}
.calendar table th {
  font-weight: 500;
  border-bottom: 1px solid #107fbf;
}
.calendar .w0, .calendar .w6, .calendar .holiday {
  background-color: rgba(204, 0, 72, 0.4);
  color: #fff;
}

/*-----------
  footer
-------------*/
.fs-l-footer {
  padding: 13.3333333333vw 0 8vw;
}

.footer_point {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  row-gap: 4vw;
}
.footer_point li {
  background-color: #cc0048;
  display: grid;
  grid-template-columns: 20vw 1fr;
  align-items: center;
  height: 32vw;
}
.footer_point li figure {
  text-align: center;
  margin: 0;
}
.footer_point li figure img {
  width: 11.2vw;
  vertical-align: middle;
}
.footer_point li dl {
  margin: 0;
}
.footer_point li dt {
  margin: 0 0 1.6vw;
  font-size: 4.2666666667vw;
  font-weight: 500;
  color: #fff;
}
.footer_point li dd {
  margin: 0;
  font-size: 3.2vw;
  color: #fff;
}
.footer_point li dd span {
  font-size: 2.6666666667vw;
  display: block;
}
.footer_map {
  background-color: #f2f2f2;
  padding: 6.6666666667vw 0 8vw;
  margin-top: 16vw;
}
.footer_map_ttl {
  text-align: center;
  font-size: 4.2666666667vw;
  font-weight: 500;
  margin: 0 0 5.3333333333vw;
}
.footer_map_lead {
  text-align: center;
  font-size: 3.2vw;
  margin: 0;
}
.footer_map_main {
  margin-top: 6.9333333333vw;
}
.footer_map_main figure {
  margin: 0 0 9.3333333333vw;
  text-align: center;
}
.footer_map_main figure img {
  width: 73.6vw;
}
.footer_map_main dl {
  margin: 0;
}
.footer_map_main dl dt {
  font-size: 3.2vw;
  padding: 3.2vw 4vw;
  line-height: 1.5;
}
.footer_map_main dl dt:nth-of-type(1) {
  background-color: #e9a4c2;
}
.footer_map_main dl dt:nth-of-type(2) {
  background-color: #acc9e9;
}
.footer_map_main dl dt:nth-of-type(3) {
  background-color: #ecaa9d;
}
.footer_map_main dl dt:nth-of-type(4) {
  background-color: #c1da70;
}
.footer_map_main dl dd {
  font-size: 3.2vw;
  padding: 3.2vw 4vw;
  line-height: 1.5;
  margin: 0;
  background-color: #fff;
}
.footer_map_main p {
  font-size: 2.9333333333vw;
  margin: 5.3333333333vw 0 0;
}
.footer_map_main p span {
  display: block;
  text-indent: -1em;
  margin: 0 0 0 1em;
  letter-spacing: 0.05em;
}
.footer_nav .fs-pt-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer_nav .fs-pt-menu li {
  border-bottom: 1px solid #ccc;
}
.footer_nav .fs-pt-menu li span {
  display: block;
}
.footer_nav .fs-pt-menu li a {
  display: block;
  padding: 4.2666666667vw 4vw;
  font-size: 3.2vw;
  position: relative;
  letter-spacing: 0.05em;
}
.footer_nav .fs-pt-menu li a:after {
  content: "";
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  border-top: 2px solid #107fbf;
  border-right: 2px solid #107fbf;
  position: absolute;
  top: 50%;
  right: 4vw;
  transform: translateY(-50%) rotate(45deg);
}
.footer_copy {
  text-align: center;
  margin: 13.3333333333vw 0 0;
  font-size: 2.9333333333vw;
  letter-spacing: 0.05em;
}

.pagetop {
  display: none;
  position: fixed;
  right: 4vw;
  bottom: 4vw;
}
.pagetop img {
  width: 10.6666666667vw;
}

@container (width < 850px) {
}
/*-----------
  システム
-------------*/
.fs-c-subSection__title, .fs-c-linkedServiceLogin__title {
  text-align: center;
}

.fs-c-continueShopping {
  margin-top: 2rem;
  text-align: center;
}

.fs-c-requiredMark::before {
  line-height: 1;
}

.fs-body-register .fs-c-inputInformation {
  max-width: 65rem;
  margin: 0 auto;
}

#fs_Register .fs-l-main {
  max-width: 100%;
}

.fs-c-button--primary {
  color: #107fbf;
  border-color: #107fbf;
}
.fs-c-button--primary:hover, .fs-c-button--primary:active {
  background-color: #107fbf;
  color: #fff !important;
}
.fs-c-button--primary:visited {
  color: #107fbf;
}

.fs-c-productListCarousel__list__item .fs-c-productMarks,
.fs-c-productList__list .fs-c-productListItem .fs-c-productMarks {
  order: 1 !important;
}
.fs-c-productListCarousel__list__item .fs-c-productListItem__productName,
.fs-c-productList__list .fs-c-productListItem .fs-c-productListItem__productName {
  order: 2 !important;
}
.fs-c-productListCarousel__list__item .fs-c-productListItem__prices,
.fs-c-productList__list .fs-c-productListItem .fs-c-productListItem__prices {
  order: 3 !important;
}
.fs-c-productListCarousel__list__item .fs-c-productListItem__control,
.fs-c-productList__list .fs-c-productListItem .fs-c-productListItem__control {
  order: 4 !important;
}

.fs-c-wishlistProduct {
  margin-top: 5rem;
}
.fs-c-wishlistProduct .fs-c-wishlistProduct__header {
  padding: 0;
}
.fs-c-wishlistProduct .fs-c-wishlistProduct__title {
  text-align: center;
}

.fs-c-wishlistProduct__footer {
  margin-top: 3rem;
}

.fs-c-buttonContainer--myPageTop {
  justify-content: center;
}

.fs-c-buttonContainer--myPageTop .fs-c-button--myPageTop:visited, .fs-c-buttonContainer--back .fs-c-button--myPageTop:visited, .fs-c-buttonContainer--backToRegister .fs-c-button--myPageTop:visited {
  color: #107fbf;
}

.fs-c-buttonContainer--myPageTop .fs-c-button--myPageTop, .fs-c-buttonContainer--back .fs-c-button--myPageTop, .fs-c-buttonContainer--backToRegister .fs-c-button--myPageTop {
  color: #107fbf;
  border-color: #107fbf;
}

.fs-c-buttonContainer--myPageTop .fs-c-button--myPageTop:hover, .fs-c-buttonContainer--myPageTop .fs-c-button--myPageTop:active, .fs-c-buttonContainer--back .fs-c-button--myPageTop:hover, .fs-c-buttonContainer--back .fs-c-button--myPageTop:active, .fs-c-buttonContainer--backToRegister .fs-c-button--myPageTop:hover, .fs-c-buttonContainer--backToRegister .fs-c-button--myPageTop:active {
  background-color: #107fbf;
  color: #fff;
  text-decoration: none;
}

.fs-p-accountInfo__accountName {
  text-align: center;
  margin-bottom: 2rem;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}

/*-----------
  商品詳細
-------------*/
.fs-body-product .fs-c-productCarouselMainImage .fs-c-slick.slick-slider,
.fs-body-product .fs-c-slick .slick-list,
.fs-body-product .fs-c-slick.slick-initialized .slick-slide,
.fs-body-product .fs-c-productCarouselMainImage__image,
.fs-body-product .fs-c-productCarouselMainImage .fs-c-slick .slick-slide img,
.fs-body-product .fs-c-slick.slick-initialized .slick-slide > div {
  height: 100% !important;
  aspect-ratio: 1;
}
.fs-body-product .fs-c-productCarouselMainImage .fs-c-slick .slick-slide img {
  max-height: 100%;
  object-fit: contain;
}
.fs-body-product .fs-c-slick .slick-track {
  height: 100% !important;
}
.fs-body-product .fs-c-productCarouselMainImage .fs-c-slick.slick-slider,
.fs-body-product .fs-c-productCarouselMainImage__thumbnailList {
  margin-left: 0;
  width: 100%;
}
.fs-body-product .fs-c-productCarouselMainImage__thumbnailList > li:nth-of-type(1) {
  padding-left: 0 !important;
}
.fs-body-product .fs-c-productCarouselMainImage__thumbnailList > li {
  flex-basis: 60px !important;
}
.fs-body-product .fs-c-productCarouselMainImage .fs-c-slick.slick-slider {
  max-width: 100% !important;
  max-height: 100% !important;
}
.item_cart {
  display: grid;
  grid-template-columns: 6.75rem 1fr 5rem;
  gap: 0.5rem;
  position: relative;
}
.item_cart .fs-c-variationAndActions {
  grid-column: 1/4;
}
.item_cart .fs-c-variationAndActions__stockSignLegend {
  display: none;
}
.item_cart .fs-c-productQuantityAndWishlist__wishlist.fs-c-buttonContainer {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 5rem;
}

.itemdetail_btn {
  background-color: #f2f2f2;
  padding: 1.5rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-top: 3.5rem;
}
.itemdetail_btn * {
  font-size: 1.1rem;
  color: #333;
}
.itemdetail_btn > * {
  text-align: center;
  background-color: #fff;
}
.itemdetail_btn .fs-c-inquiryAboutProduct.fs-c-buttonContainer.fs-c-buttonContainer--inquiryAboutProduct .fs-c-button__label::after,
.itemdetail_btn .fs-c-returnedSpecialContract__link a::after,
.itemdetail_btn .fs-c-button--plain.fs-c-button--addReview--detail::before {
  display: none;
}
.itemdetail_btn #revi-btn-indi .fs-c-button--addReview--detail.fs-c-button--plain {
  border: none;
}
.itemdetail_btn .fs-c-inquiryAboutProduct.fs-c-buttonContainer.fs-c-buttonContainer--inquiryAboutProduct {
  margin-top: 0;
}
.itemdetail_btn .fs-c-button--inquiryAboutProduct {
  width: 100%;
  height: 100%;
  border: none;
}
.itemdetail_btn #revi-btn-indi .fs-c-button--addReview--detail.fs-c-button--plain,
.itemdetail_btn .fs-c-button--inquiryAboutProduct,
.itemdetail_btn .fs-c-returnedSpecialContract__link a,
.itemdetail_btn .link_delivery {
  display: block;
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}

.itemDetail_ttl {
  margin: 0 0 2.4rem;
  border-bottom: 1px solid #333;
  padding-bottom: 1.8rem;
  font-size: 1.6rem;
  font-weight: 500;
}

.itemDetail_contents dl {
  display: grid;
  grid-template-columns: 7.5rem 1fr;
  gap: 1rem 1.5rem;
}
.itemDetail_contents dl dt {
  background-color: #107fbf;
  color: #fff;
  font-size: 1.2rem;
  padding: 0.7rem 0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.itemDetail_contents dl dd {
  margin: 0;
  font-size: 1.2rem;
  padding: 0.7rem 0;
}

.itemDetail_txt {
  font-size: 1.2rem;
}

.review-cnt-copy {
  margin-top: 3.5rem;
}

.share_wrap {
  display: flex;
  align-items: center;
}

.product_sns_ttl {
  margin: 0;
}

.product_sns {
  display: flex;
  align-items: center;
}
.product_sns a {
  padding: 0.5rem;
}
.product_sns img {
  vertical-align: middle;
  width: 2rem;
}
.fs-c-productMark__mark--1 {
  border: 1px solid #333;
  background-color: transparent;
}

body:not(.fs-body-product) .fs-c-productMarks .fs-c-productMark__mark, body:not(.fs-body-product) .fs-c-productMarks .fs-c-mark {
  padding: 4px 4px 2px;
}

.fs-c-subgroup {
  justify-content: center;
  margin-bottom: 3rem;
  width: 100%;
}

.fs-c-subgroup .fs-c-subgroupList__item {
  position: relative;
}
.fs-c-subgroup .fs-c-subgroupList__item::before {
  content: "";
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background-color: #107fbf;
  position: absolute;
  top: -1px;
  left: -1px;
}
.fs-c-subgroup .fs-c-subgroupList__item a {
  background-color: #fff;
  border: none;
  color: #107fbf;
  position: relative;
}
.fs-c-subgroup .fs-c-subgroupList__item a:hover, .fs-c-subgroup .fs-c-subgroupList__item a:focus {
  background-color: #107fbf;
  color: #fff;
}

.fs-c-subgroup .fs-c-subgroupList__item {
  margin-right: 0;
}

@container (width < 850px) {
}
/*-----------
  商品一覧
-------------*/
.fs-c-pagination {
  justify-content: center;
  margin-top: 1rem;
}

.fs-c-pagination__item {
  flex: none;
}

.fs-c-productListItem__image {
  aspect-ratio: 1;
}
.fs-c-productListItem__image .fs-c-productImage__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.fs-c-productList .fs-c-productList__controller:first-child .fs-c-pagination {
  display: none;
}
.fs-c-productList .fs-c-productList__list + .fs-c-productList__controller {
  margin: 5rem 0 0;
  display: block;
}
.fs-c-productList .fs-c-productList__list + .fs-c-productList__controller .fs-c-sortItems {
  display: none;
}
.fs-c-productList .fs-c-productList__list + .fs-c-productList__controller .fs-c-listControl {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.fs-c-productList .fs-c-productList__list + .fs-c-productList__controller .fs-c-listControl__status {
  margin-bottom: 0;
}
.fs-c-productList .fs-c-productList__list + .fs-c-productList__controller .fs-c-pagination {
  margin-top: 0;
}

@container (width > 850px) {
}
/*-----------
  トップページ
-------------*/
.sec__topSlider {
  margin-bottom: 5.3333333333vw;
}
.sec__topSlider.fs-pt-carousel {
  z-index: unset;
}
.sec__topSlider.fs-pt-carousel .fs-pt-carousel__slide {
  margin: 0;
}
.sec__topSlider.fs-pt-carousel .slick-list {
  aspect-ratio: auto;
}
.sec__topSlider .slick-slide {
  font-size: 0;
}
.sec__topSlider .slick-dots {
  position: absolute;
  bottom: 2.6666666667vw;
  left: 0;
  width: 100%;
  padding: 0;
}
.sec__topSlider .slick-dots li {
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  margin: 0 1.6vw;
}
.sec__topSlider .slick-dots li button {
  width: 100%;
  height: 100%;
  padding: 0;
}
.sec__topSlider .slick-dots li button:before {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 50%;
  font-size: 0;
  line-height: 1;
  background: #fff;
  opacity: 1;
}
.sec__topSlider .slick-dots li.slick-active button:before {
  opacity: 1;
  background: #107fbf;
}

.top_block {
  padding: 8vw 0;
}
.top_block:last-of-type {
  padding-bottom: 0;
}

.block_ttl {
  text-align: center;
  margin: 0 0 5.3333333333vw;
}
.block_ttl h2 {
  font-size: 5.0666666667vw;
  font-weight: 500;
  line-height: 1.3;
  margin: 0;
  letter-spacing: 0.05em;
}
.block_ttl p {
  margin: 1.6vw 0 0;
  font-size: 3.2vw;
  color: #107fbf;
  letter-spacing: 0.05em;
}

/*top Category*/
.top_category {
  padding: 0;
  list-style: none;
  margin: 0 4vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4vw;
}
.top_category .fs-pt-menu__heading {
  display: block;
}
.top_category a {
  display: block;
  background-position: center;
  background-size: cover;
  position: relative;
  background-color: #ccc;
  aspect-ratio: 367/200;
}
.top_category a span {
  width: calc(100% - 4vw);
  height: 8vw;
  background-color: rgba(255, 255, 255, 0.9);
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  padding: 0 1.3333333333vw 0 2.6666666667vw;
  line-height: 1.2;
  font-weight: 500;
  font-size: 3.2vw;
}

/*Product list*/
.product__list .slick-track {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem 1.5rem;
}
.product__list .slick-track:before, .product__list .slick-track:after {
  display: none;
}
.product__list .fs-c-productName__name, .product__list .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  font-size: 1.2rem;
}
.product__list .fs-c-productMarks {
  order: 2;
  margin-bottom: 0 !important;
  margin-top: 0.5rem;
}
.product__list .fs-c-productListItem__productName {
  order: 3;
  width: 100%;
  margin: 0.5rem 0 0 !important;
  font-size: 1.2rem;
}
.product__list .fs-c-productPrice__main__label {
  display: none;
}
.product__list .fs-c-productListItem__prices {
  order: 4;
  margin: 0.5rem 0 0 !important;
}
.product__list .fs-c-productListItem__control {
  order: 5;
  display: flex;
  justify-content: flex-end;
  margin-top: -2.6rem;
}
.product__list .fs-c-productPrice {
  display: flex;
  align-items: baseline;
}
.product__list .fs-c-productPrice .fs-c-price {
  justify-content: flex-start;
}
.product__list .fs-c-productPrice .fs-c-productPrice__addon__label {
  font-size: 1rem;
  margin-left: 0.5em;
}

/*Ranking*/
.top_ranking {
  position: relative;
}
.top_ranking::before {
  content: "";
  width: 100vw;
  height: calc(100% - 22vw);
  position: absolute;
  left: -4vw;
  bottom: -8vw;
  background-color: #f9f9e3;
}
.top_ranking .slick-slide {
  counter-increment: num;
  position: relative;
}
.top_ranking .slick-slide:before {
  content: counter(num);
  font-size: 1.2rem;
  position: absolute;
  top: 1rem;
  left: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  text-align: center;
  line-height: 2.5rem;
  color: #fff;
  background-color: #999;
  font-weight: 500;
}
.top_ranking .slick-slide:nth-child(1):before {
  background-color: #d4d06e;
  color: #333;
}
.top_ranking .slick-slide:nth-child(2):before {
  background-color: #eaeae8;
  color: #333;
}
.top_ranking .slick-slide:nth-child(3):before {
  background-color: #b4a178;
}
.top_ranking .slick-slide .fs-c-productListItem__image {
  background-color: #fff;
}

/*banner*/
.top_bnr {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
.top_bnr .fs-pt-column__image {
  display: block;
}
.top_bnr .fs-pt-column__image img {
  width: 100%;
  vertical-align: middle;
}
.top_bnr .fs-pt-column__heading {
  font-size: 1.2rem;
  font-weight: 500;
}
.top_bnr .fs-pt-column__description {
  font-size: 1.2rem;
  line-height: 1.4;
}

/*PickUp*/
.top_pickup {
  margin-bottom: 2.5rem;
}
.top_pickup a {
  display: block;
  background-color: #cc0048;
  padding-bottom: 2rem;
}
.top_pickup .fs-pt-column__image {
  display: block;
  margin-bottom: 2.5rem;
}
.top_pickup .fs-pt-column__image img {
  width: 100%;
  vertical-align: middle;
}
.top_pickup .fs-pt-column__heading {
  display: block;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  margin: 0 2.5rem 1.5rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}
.top_pickup .fs-pt-column__description {
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 2.5rem;
  color: #fff;
}
.top_pickup .fs-pt-column__description:after {
  content: "商品を見る";
  width: 20rem;
  height: 5rem;
  border: 1px solid #fff;
  display: flex;
  align-items: center;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  justify-content: center;
  margin: 2rem auto 0;
  letter-spacing: 0.05em;
}

/*Information*/
.top_information {
  overflow-x: hidden;
  border-bottom: 1px solid #ccc;
  position: relative;
}
.top_information:after {
  content: "";
  width: 100%;
  height: 1.4rem;
  background-color: #fff;
  filter: blur(5px);
  position: absolute;
  bottom: 0;
  left: -10px;
}
.top_information_list {
  max-height: 300px;
  overflow-y: auto;
  margin: 0;
  padding-right: 1rem;
}
.top_information_list::-webkit-scrollbar {
  background: #ccc;
  width: 0.5rem;
}
.top_information_list::-webkit-scrollbar-thumb {
  background-color: #107fbf;
}
.top_information li {
  padding-bottom: 2rem;
  margin: 0 !important;
}
.top_information li:not(:first-child) {
  padding-top: 2rem;
  border-top: 1px solid #ccc;
}
.top_information time {
  color: #107fbf;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  display: block;
  margin: 0 0 0.5rem;
}
.top_information h3 {
  font-weight: 500;
  font-size: 1.3rem;
  letter-spacing: 0.05em;
  margin: 0 0 0.5rem;
}
.top_information p {
  font-size: 1.2rem;
  color: #666;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0;
}

/*Company*/
.top_company {
  background-color: #107fbf;
}
.top_company figure {
  margin: 0;
}
.top_company figure img {
  width: 100%;
  vertical-align: middle;
}
.top_company dl {
  margin: 0;
  padding: 2.5rem 2.5rem;
}
.top_company dl dt {
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  margin: 0 0 1.2rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
}
.top_company dl dd {
  color: #fff;
  font-size: 1.2rem;
  margin: 0;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.top_company dl dd mark {
  background-color: transparent;
  color: currentColor;
  text-decoration: underline;
  -webkit-text-decoration-color: #efe433;
  text-decoration-color: #efe433;
  text-underline-offset: 0.3em;
}
.top_company_detail {
  margin: 3rem 4vw 0;
  margin: 3rem 4vw 0;
}
.top_company_detail h3 {
  font-size: 1.6rem;
  font-weight: 500;
  margin: 0;
}
.top_company_detail dl {
  margin: 2.5rem 0 0;
  display: grid;
  grid-template-columns: 7.5rem 1fr;
  gap: 1.5rem 1.2rem;
  align-items: center;
}
.top_company_detail dl dt {
  background-color: #107fbf;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  padding: 0.6rem 0;
  letter-spacing: 0.05em;
}
.top_company_detail dl dd {
  margin: 0;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
.top_company_detail dl dd b {
  font-size: 1.6rem;
  font-weight: 500;
}
.top_company_detail dl dd a {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

@container (width < 850px) {
}
/*-----------
  ガイド
-------------*/
#ac_link {
  background-color: #107fbf;
  color: #fff;
  margin-bottom: 3.5rem;
}
#guide article + article, #faq article + article {
  margin-top: 5rem;
}
#guide h2, #faq h2 {
  background-color: #f2f2f2;
  font-size: 1.6rem;
  font-weight: 600;
  min-height: 5rem;
  display: flex;
  align-items: center;
  padding: 0.5rem 1.5rem;
  margin: 0 0 2.5rem;
}
#guide h3, #faq h3 {
  margin: 0 0 1.5rem;
  font-size: 1.4rem;
  font-weight: 600;
  display: flex;
  align-items: center;
}
#guide h3:before, #faq h3:before {
  content: "";
  width: 0.6rem;
  height: 0.1rem;
  background-color: #333;
  margin-right: 0.6rem;
}
#guide div, #faq div {
  color: #666;
  font-size: 1.2rem;
}
#guide div b, #faq div b {
  display: block;
  font-weight: 600;
  margin: 0.5rem 0 0;
}
#guide div em, #faq div em {
  font-weight: 600;
  font-style: normal;
}
#guide div strong, #faq div strong {
  color: #cc0048;
}
#guide div + h3, #faq div + h3 {
  margin-top: 3rem;
}
#guide div a, #faq div a {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

#faq h3 {
  align-items: flex-start;
}
#faq h3:before {
  content: "Q.";
  color: #107fbf;
  font-weight: 500;
  width: auto;
  height: auto;
  background-color: transparent;
  font-size: 1.8rem;
  line-height: 1;
  transform: translateY(-0.2rem);
}
#faq div {
  position: relative;
  padding-left: 2.4rem;
}
#faq div:before {
  content: "A.";
  color: #cc0048;
  font-weight: 500;
  width: auto;
  height: auto;
  background-color: transparent;
  font-size: 1.8rem;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0.1rem;
}
#faq div + h3 {
  border-top: 1px solid #ccc;
  padding-top: 3rem;
}
@media screen and (min-width: 768px) {
  .show_sp {
    display: none !important;
  }
  html {
    scroll-padding: 6rem;
  }
  .fs-l-pageMain {
    padding-right: 2rem;
    padding-left: 2rem;
  }
  .header_info {
    padding: 1rem 2rem;
    font-size: 1.2rem;
  }
  .main_header {
    grid-template-columns: 24rem 1fr 24rem;
    height: 6rem;
  }
  .main_header_btn {
    width: 6rem;
  }
  .main_header_btn:after {
    font-size: 1rem;
    margin-top: -0.2rem;
  }
  .main_header_btn span:before {
    font-size: 2.8rem;
  }
  .main_header_logo img {
    max-height: 5.4rem;
  }
  .main_header_link {
    grid-template-columns: repeat(4, 1fr);
  }
  .main_header_link li img {
    width: 2.2rem;
  }
  .main_header_link li strong {
    font-size: 1rem;
  }
  .side-active .drawer {
    transform: translateX(-30rem);
  }
  .drawer {
    width: 30rem;
    top: 6rem;
    height: calc(100vh - 6rem - var(--pos));
  }
  .drawer::-webkit-scrollbar {
    width: 0.5rem;
  }
  .drawer::-webkit-scrollbar-track {
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 1rem;
  }
  .drawer::-webkit-scrollbar-thumb {
    background-color: #075a90;
    border-radius: 1rem;
  }
  .drawer_inner {
    padding: 2.5rem 1.5rem;
  }
  .drawer_info {
    height: 5rem;
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
  .drawer_info img {
    width: 2.8rem;
    margin-right: 1.4rem;
  }
  .drawer_catch {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
  .drawer_welcome {
    font-size: 1.5rem;
    padding: 1.6rem 0;
  }
  .drawer_tool li {
    width: 33.3333333333%;
  }
  .drawer_tool a {
    padding: 3rem 0;
  }
  .drawer_tool a img {
    width: 3rem;
  }
  .drawer_tool a strong {
    font-size: 1rem;
    margin-top: 0.3rem;
  }
  .drawer_block {
    padding: 2rem 1.5rem;
  }
  .drawer_block + .drawer_block {
    margin-top: 2.5rem;
  }
  .drawer_ttl {
    font-size: 1.5rem;
    padding-left: 0.8rem;
    margin: 0 0 2.5rem;
  }
  .drawer_search-input {
    font-size: 1.4rem;
    height: 4rem;
    width: calc(100% - 4rem);
    padding: 0.5rem 0 0.5rem 1rem;
  }
  .drawer_search-button {
    width: 4rem;
  }
  .drawer_search-button img {
    width: 2.2rem;
  }
  .drawer_contact {
    font-size: 1.2rem;
    height: 5rem;
    padding: 0 1.5rem;
  }
  .drawer_contact img {
    width: 2rem;
    margin-right: 1rem;
  }
  .drawer .nav_category .fs-pt-menu__link--lv1, .drawer .nav_support .fs-pt-menu__link--lv1 {
    padding: 1.6rem 3.5rem 1.6rem 1rem;
    font-size: 1.4rem;
  }
  .drawer .nav_category .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2):after, .drawer .nav_support .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2):after {
    width: 0.6rem;
    height: 0.6rem;
    right: 1.3rem;
    margin-top: -0.6rem;
  }
  .drawer .nav_category .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2).active:after, .drawer .nav_support .fs-pt-menu__heading--lv1:has(+ .fs-pt-menu--lv2).active:after {
    margin-top: -0.3rem;
  }
  .drawer .nav_category .fs-pt-menu--lv2 .fs-pt-menu__link, .drawer .nav_support .fs-pt-menu--lv2 .fs-pt-menu__link {
    padding: 1.2rem 2rem;
    font-size: 1.2rem;
  }
  .drawer .nav_category .fs-pt-menu--lv2 .fs-pt-menu__link--lv3, .drawer .nav_support .fs-pt-menu--lv2 .fs-pt-menu__link--lv3 {
    padding-left: 3.2rem;
  }
  .calendar {
    grid-template-columns: 1fr;
    gap: 1rem 0;
  }
  .calendar table th, .calendar table td {
    font-size: 1.4rem;
  }
  .fs-l-footer {
    padding: 5rem 0 3rem;
  }
  .footer_point {
    gap: 0 3rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .footer_point li {
    display: block;
    text-align: center;
    height: 24rem;
    padding: 4.5rem 1rem 0;
  }
  .footer_point li figure {
    margin: 0 0 1.5rem;
  }
  .footer_point li figure img {
    width: 5rem;
  }
  .footer_point li dt {
    font-size: 2.4rem;
    margin: 0 0 1rem;
    line-height: 1.3;
  }
  .footer_point li dd {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .footer_point li dd span {
    font-size: 1.2rem;
    line-height: 1.3;
    margin-top: 0.5em;
  }
  .footer_map {
    padding: 5rem 2rem 3rem;
    margin-top: 5rem;
  }
  .footer_map_ttl {
    font-size: 2.4rem;
    margin: 0 0 3rem;
  }
  .footer_map_lead {
    font-size: 1.6rem;
  }
  .footer_map_main {
    display: grid;
    grid-template-columns: 36.7% 1fr;
    column-gap: 2rem;
    margin: 5rem auto 0;
    max-width: 132rem;
  }
  .footer_map_main figure {
    margin: 0;
    grid-column: 1/2;
    grid-row: 1/3;
  }
  .footer_map_main dl {
    display: grid;
    grid-template-columns: 18rem 1fr;
  }
  .footer_map_main dl dt {
    font-size: 1.4rem;
    padding: 1.6rem 1rem;
    border-bottom: 1px solid #f2f2f2;
  }
  .footer_map_main dl dd {
    font-size: 1.4rem;
    padding: 1.6rem 1rem;
    border-bottom: 1px solid #f2f2f2;
  }
  .footer_map_main p {
    font-size: 1.4rem;
    margin: 3rem 0 0;
  }
  .footer_nav {
    margin-top: 8rem;
  }
  .footer_nav .fs-pt-menu {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 2rem;
  }
  .footer_nav .fs-pt-menu li {
    border-bottom: none;
  }
  .footer_nav .fs-pt-menu li:not(:last-child) {
    border-right: 1px solid #ccc;
  }
  .footer_nav .fs-pt-menu li a {
    padding: 0 1.5rem;
    font-size: 1.4rem;
  }
  .footer_nav .fs-pt-menu li a:after {
    display: none;
  }
  .footer_copy {
    margin: 5rem 0 0;
    font-size: 1.4rem;
  }
  .pagetop {
    right: 1.5rem;
    bottom: 1rem;
  }
  .pagetop img {
    width: 8rem;
  }
  @container (width < 850px){
    .footer_point {
      gap: 0 1.5rem;
    }
    .footer_point li dt {
      font-size: 2rem;
    }
    .footer_point li dd {
      font-size: 1.4rem;
    }
    .footer_point li dd span {
      font-size: 1.1rem;
    }
  }
  .fs-c-wishlistProduct {
    margin-top: 10rem;
  }
  .itemdetail_btn {
    margin-top: 5rem;
  }
  .itemdetail_btn * {
    font-size: 1.4rem;
  }
  .itemDetail_ttl {
    margin: 0 0 3.5rem;
    padding-bottom: 2rem;
    font-size: 2.4rem;
  }
  .itemDetail_contents dl {
    grid-template-columns: 11rem 1fr;
    gap: 1rem 3rem;
  }
  .itemDetail_contents dl dt {
    font-size: 1.6rem;
  }
  .itemDetail_contents dl dd {
    font-size: 1.6rem;
  }
  .itemDetail_txt {
    font-size: 1.6rem;
  }
  .review-cnt-copy {
    margin-top: 6rem;
  }
  .fs-c-subgroup {
    margin-bottom: 6rem;
  }
  @container (width < 850px){
    .itemDetail_ttl {
      font-size: 2rem;
    }
    .itemDetail_contents dl {
      gap: 1rem 2rem;
    }
    .itemDetail_contents dl dt, .itemDetail_contents dl dd {
      font-size: 1.4rem;
    }
    .itemDetail_txt {
      font-size: 1.4rem;
    }
    .itemdetail_btn {
      margin-top: 3rem;
    }
    .itemdetail_btn * {
      font-size: 1.2rem;
    }
    .fs-c-sortItems {
      font-size: 1.2rem;
      grid-template-columns: 1fr 40rem;
    }
    .fs-c-productList__list .fs-c-productListItem .fs-c-productName__name {
      font-size: 1.4rem;
    }
  }
  .sec__topSlider {
    margin-bottom: 4rem;
  }
  .sec__topSlider .slick-dots {
    bottom: 1rem;
  }
  .sec__topSlider .slick-dots li {
    width: 1.5rem;
    height: 1.5rem;
    margin: 0 0.6rem;
  }
  .top_block {
    padding: 6rem 0;
  }
  .block_ttl {
    margin: 0 0 4rem;
  }
  .block_ttl h2 {
    font-size: 2.8rem;
  }
  .block_ttl p {
    font-size: 1.4rem;
    margin: 1.5rem 0 0;
  }
  .top_category {
    margin: 0;
    gap: 1rem;
    grid-template-columns: repeat(3, 1fr);
  }
  .top_category a span {
    font-size: 1.4rem;
    padding: 0 1rem;
    height: 4rem;
    width: calc(100% - 3rem);
  }
  .product__list .slick-track {
    grid-template-columns: repeat(3, 1fr);
  }
  .product__list .fs-c-productName__name, .product__list .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
    font-size: 1.4rem;
  }
  .top_ranking::before {
    width: calc(100% + 4rem);
    height: calc(100% - 10vw);
    left: -2rem;
    bottom: -6rem;
  }
  .top_ranking .slick-slide:before {
    font-size: 1.4rem;
    width: 3rem;
    height: 3rem;
    line-height: 3rem;
  }
  .top_bnr {
    gap: 2rem;
  }
  .top_bnr .fs-pt-column__item {
    flex: 1 0 calc(50% - 1rem);
    max-width: -webkit-fit-content;
    max-width: fit-content;
  }
  .top_pickup {
    margin-bottom: 3.5rem;
  }
  .top_pickup .fs-pt-column__heading {
    font-size: 1.8rem;
  }
  .top_pickup .fs-pt-column__description {
    font-size: 1.4rem;
  }
  .top_pickup .fs-pt-column__description:after {
    font-size: 1.4rem;
  }
  .top_information {
    max-width: 92rem;
    margin: 0 auto;
  }
  .top_information li {
    display: grid;
    grid-template-columns: 13rem 1fr;
  }
  .top_information time {
    grid-column: 1/2;
    grid-row: 1/3;
    font-size: 1.4rem;
    margin: 0;
    line-height: 1.3;
  }
  .top_information h3 {
    font-size: 1.4rem;
  }
  .top_information p {
    font-size: 1.4rem;
  }
  .top_company dl {
    padding: 4rem 3rem;
  }
  .top_company dl dt {
    font-size: 1.8rem;
    margin: 0 0 2rem;
  }
  .top_company dl dd {
    font-size: 1.4rem;
  }
  .top_company_detail {
    margin: 3rem 0 0;
  }
  .top_company_detail h3 {
    text-align: center;
    font-size: 2.4rem;
  }
  .top_company_detail dl {
    grid-template-columns: 11rem 1fr 11rem 1fr;
    gap: 1rem 2rem;
    max-width: -webkit-fit-content;
    max-width: fit-content;
    margin: 4rem auto 0;
  }
  .top_company_detail dl dt {
    font-size: 1.4rem;
  }
  .top_company_detail dl dd {
    font-size: 1.4rem;
  }
  .top_company_detail dl dd b {
    font-size: 2rem;
  }
  @container (width < 850px){
    .block_ttl {
      margin: 0 0 4rem;
    }
    .block_ttl h2 {
      font-size: 3rem;
    }
    .block_ttl p {
      font-size: 1.1rem;
      margin: 1.2rem 0 0;
    }
  }
  #ac_link {
    padding: 5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 3rem;
  }
  #ac_link summary {
    pointer-events: none;
    font-size: 1.6rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
  }
  #ac_link div a {
    color: #c2e2f5;
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    padding: 0.4rem 0;
  }
  #ac_link div a:before {
    content: "";
    width: 0.5rem;
    height: 1px;
    background-color: #c2e2f5;
    margin-right: 0.5rem;
  }
  #guide article + article, #faq article + article {
    margin-top: 8rem;
  }
  #guide h2, #faq h2 {
    font-size: 2rem;
    min-height: 6rem;
    padding: 0.5rem 3rem;
    margin: 0 0 3.5rem;
  }
  #guide h3, #faq h3 {
    font-size: 1.8rem;
    padding: 0 3rem;
    margin: 0 0 2rem;
  }
  #guide div, #faq div {
    font-size: 1.4rem;
    padding: 0 3rem;
  }
  #guide div + h3, #faq div + h3 {
    margin-top: 5rem;
  }
  #faq h3:before {
    font-size: 2.4rem;
    transform: none;
  }
  #faq div {
    padding: 0 3rem 0 6rem;
  }
  #faq div:before {
    font-size: 2.4rem;
    top: -0.2rem;
    left: 3.1rem;
  }
}
@media screen and (max-width: 767px) {
  .show_tabpc {
    display: none !important;
  }
  body:not(.fs-body-top) .fs-l-pageMain {
    padding-right: 4vw;
    padding-left: 4vw;
  }
  .sp_inner {
    padding: 0 4vw;
  }
  body:not(.fs-body-top) .fs-l-footer {
    margin-right: -4vw;
    margin-left: -4vw;
  }
  .fs-c-listControl__status {
    font-size: 1.2rem;
  }
  .product__list {
    margin: 0 4vw;
  }
  .top_bnr {
    margin: 0 4vw;
  }
  .top_bnr .fs-pt-column__item + .fs-pt-column__item {
    margin-top: 1.3rem;
  }
  .top_information {
    margin: 0 4vw;
  }
  #ac_link {
    margin-bottom: 7rem;
  }
  #ac_link details + details {
    border-top: 1px solid #fff;
  }
  #ac_link details[open] summary:after {
    transform: rotate(-135deg);
  }
  #ac_link summary {
    padding: 0 1.5rem;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0.05em;
  }
  #ac_link summary:after {
    content: "";
    width: 0.6rem;
    height: 0.6rem;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    transform: rotate(45deg);
  }
  #ac_link div {
    background-color: #f2f2f2;
    display: grid;
  }
  #ac_link div a {
    color: #333;
    display: flex;
    align-items: center;
    height: 4.5rem;
    padding: 0 1.2rem;
    font-size: 1.2rem;
    line-height: 1.3;
  }
  #ac_link div a + a {
    border-top: 1px solid #fff;
  }
  #ac_link div a:before {
    content: "";
    width: 0.5rem;
    height: 1px;
    background-color: #333;
    margin-right: 0.3rem;
  }
}
@media screen and (min-width: 1000px) {
  .show_pc {
    display: block !important;
  }
  html {
    scroll-padding: 9rem;
  }
  .fs-l-main {
    padding-left: 30rem;
  }
  .fs-l-pageMain {
    padding-right: 3rem;
    padding-left: 3rem;
    max-width: 1500px;
    margin: 0 auto;
    container-type: inline-size;
  }
  .header_info {
    padding: 1.2rem 2rem;
    font-size: 1.4rem;
  }
  .main_header {
    grid-template-columns: 32rem 1fr 32rem;
    height: 8.4rem;
  }
  .main_header_btn {
    width: 8.4rem;
  }
  .main_header_btn:after {
    font-size: 1.2rem;
    margin-top: 0;
  }
  .main_header_btn span:before {
    font-size: 4rem;
  }
  .main_header_logo img {
    max-height: 8rem;
  }
  .main_header_link li img {
    width: 3rem;
  }
  .main_header_link li strong {
    font-size: 1.2rem;
  }
  .side-active .fs-l-main {
    padding-left: 0;
  }
  .drawer {
    top: 8.4rem;
    height: calc(100vh - 8.4rem - var(--pos));
  }
  .fs-l-footer {
    padding: 10rem 0 3rem;
  }
  .footer_map_main {
    column-gap: 4rem;
  }
  .footer_map_main figure img {
    width: 100%;
  }
  .footer_map_main dl {
    grid-template-columns: 22rem 1fr;
  }
  .footer_map_main dl dt {
    font-size: 1.6rem;
    padding: 1.6rem 2rem;
  }
  .footer_map_main dl dd {
    font-size: 1.6rem;
    padding: 1.6rem 2rem;
  }
  .footer_nav {
    margin-top: 10rem;
  }
  .footer_nav .fs-pt-menu li a {
    padding: 0 2.5rem;
    font-size: 1.6rem;
  }
  @container (width < 850px){
    .footer_map_main {
      column-gap: 2rem;
    }
    .footer_map_main dl {
      grid-template-columns: 18rem 1fr;
    }
    .footer_map_main dl dt, .footer_map_main dl dd {
      font-size: 1.4rem;
      padding: 1.6rem 1rem;
    }
    .footer_nav {
      margin-top: 8rem;
    }
    .footer_nav .fs-pt-menu li a {
      padding: 0 1rem;
      font-size: 1.3rem;
    }
    .footer_copy {
      font-size: 1.3rem;
    }
  }
  .block_ttl h2 {
    font-size: 3.2rem;
  }
  .top_category {
    grid-template-columns: repeat(4, 1fr);
  }
  .top_category a span {
    width: -webkit-fit-content;
    width: fit-content;
    min-width: 62%;
  }
  .product__list .slick-track {
    grid-template-columns: repeat(4, 1fr);
  }
  .top_ranking::before {
    width: calc(100% + 6rem);
    left: -3rem;
  }
  .top_pickup {
    margin-bottom: 5rem;
  }
  .top_pickup a {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-bottom: 0;
    align-items: center;
  }
  .top_pickup .fs-pt-column__image {
    grid-column: 1/2;
    grid-row: 1/3;
    margin-bottom: 0;
    height: 100%;
  }
  .top_pickup .fs-pt-column__image img {
    height: 100%;
    object-fit: cover;
  }
  .top_pickup .fs-pt-column__heading {
    grid-column: 2/3;
    grid-row: 1/2;
    margin-top: auto;
    padding-top: 1rem;
  }
  .top_pickup .fs-pt-column__description:after {
    margin: 2rem 0 1rem;
  }
  .top_information time {
    font-size: 1.6rem;
  }
  .top_information h3 {
    font-size: 1.6rem;
  }
  .top_information p {
    font-size: 1.6rem;
  }
  .top_company {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-bottom: 0;
    align-items: center;
  }
  .top_company figure {
    grid-column: 2/3;
    grid-row: 1/2;
    height: 100%;
  }
  .top_company figure img {
    height: 100%;
    object-fit: cover;
  }
  .top_company dl {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .top_company dl dt {
    font-size: 2.4rem;
    margin: 0 0 3.5rem;
  }
  .top_company dl dd {
    font-size: 1.6rem;
  }
  .top_company_detail {
    margin: 8rem 0 0;
  }
  .top_company_detail dl dt {
    font-size: 1.6rem;
  }
  .top_company_detail dl dd {
    font-size: 1.6rem;
  }
  .top_company_detail dl dd b {
    font-size: 2.6rem;
  }
  @container (width < 850px){
    .top_category, .product__list .slick-track {
      grid-template-columns: repeat(3, 1fr);
    }
    .top_pickup .fs-pt-column__heading {
      padding-top: 2rem;
    }
    .top_pickup a {
      display: block;
      padding-bottom: 2rem;
    }
    .top_information time, .top_information h3, .top_information p {
      font-size: 1.4rem;
    }
    .top_company {
      display: block;
    }
    .top_company dl dt {
      margin-bottom: 2rem;
      font-size: 1.8rem;
    }
    .top_company dl dd {
      font-size: 1.4rem;
    }
    .top_company_detail dl dt, .top_company_detail dl dd {
      font-size: 1.4rem;
    }
    .top_company_detail dl dd b {
      font-size: 2rem;
    }
  }
}
@media screen and (min-width: 1200px) {
  .fs-l-pageMain {
    padding-right: 5rem;
    padding-left: 5rem;
  }
  @container (width > 850px){
    .fs-c-productList__list {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 5rem 3rem;
    }
  }
  @container (width > 850px){
    .fs-c-productList__list .fs-c-productList__list__item.fs-c-productListItem {
      width: 100% !important;
      margin: 0 !important;
    }
  }
  .product__list .slick-track {
    grid-template-columns: repeat(5, 1fr);
  }
  .top_ranking::before {
    width: calc(100% + 10rem);
    height: calc(100% - 5rem);
    left: -5rem;
  }
  .top_ranking .slick-slide:nth-child(n+6) {
    display: none;
  }
  @container (width < 850px){
    .product__list .slick-track {
      grid-template-columns: repeat(4, 1fr);
    }
  }
}
@media screen and (min-width: 900px) {
  .fs-body-product .fs-c-productCarouselMainImage__thumbnailList {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5rem;
  }
  .fs-body-product .fs-c-productCarouselMainImage__thumbnailList > li {
    margin: 0 !important;
    width: 100% !important;
  }
  .fs-l-productLayout__item--2 {
    grid-column: 2/3;
    grid-row: 1/3;
  }
  @container (width < 850px){
    .fs-l-productLayout {
      grid-gap: 3rem;
    }
    .fs-c-productCarouselMainImage__thumbnailList {
      gap: 0.5rem;
    }
    .fs-body-product .fs-c-productSelection__name {
      font-size: 1.2rem;
    }
  }
}
@media screen and (max-width: 900px) {
  .fs-l-productLayout__item--2 {
    margin: 6vw 0;
  }
}
@media screen and (max-width: 600px) {
  .fs-l-productLayout__item--2 {
    margin: 10vw 0;
  }
}
@media screen and (min-width: 768px) and (hover) {
  #ac_link div a:hover:hover {
    text-decoration: underline;
    text-underline-offset: 0.3em;
  }
}
/*# sourceMappingURL=whipmart.css.map */
