@charset "UTF-8";
.pane-contents {
  padding: 0;
}
.page-top #header-wrapper.header-pt1 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: auto;
  z-index: 999;
}
.page-top #header-wrapper .block-globalnav-menu,
.page-top #header-wrapper .block-header-search {
  top: 100px;
}
.page-top #header-wrapper.is-fixed .block-globalnav-menu,
.page-top #header-wrapper.is-fixed .block-header-search {
  top: 80px;
}
.page-top #header-wrapper.is-fixed #header {
  background: #fff;
  -webkit-transition: 0s;
  transition: 0s;
}
.page-top .header-pt1 #header {
  background: transparent;
}
.page-top #header {
  background: transparent;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.page-top #header:hover {
  background: #fff;
}
.page-top #header:has(.block-header-search.active) {
  background: #fff;
}
.page-top .block-top-body--body {
  border: none;
  /* max-height: 780px; */
  height: auto;
  margin: 0;
}
.page-top .block-top-body--body .splide__list {
  /* max-height: 780px; */
  height: auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page-top .block-top-body--body .splide__list img {
  width: 100%;
  max-width: 100%;
  max-width: none;
  aspect-ratio: 1440/780;
}
.page-top .block-top-body--body .splide__pagination {
  bottom: 24px;
  gap: 4px;
}
.page-top .block-top-body--body .splide__pagination__page {
  width: 4px;
  height: 4px;
  background: #fff;
  opacity: 1;
  margin: 0;
  border-radius: 20px;
  -webkit-transition: 0.8s;
  transition: 0.8s;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.page-top .block-top-body--body .splide__pagination__page.is-active {
  width: 20px;
  height: 4px;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.page-top .block-top-free-1 {
  margin-block: 150px;
}
.page-top .block-top-category {
  max-width: 1300px;
  margin: 0 auto;
}
.page-top .block-top-category ul {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
  -ms-grid-rows: (1fr)[2];
  grid-template-rows: repeat(2, 1fr);
  padding-top: 45px;
  gap: 2px;
  max-height: 522px;
  place-content: center;
  overflow: hidden;
}
.page-top .block-top-category li:nth-of-type(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: 1/1/3/2;
}
.page-top .block-top-category li a {
  position: relative;
  display: block;
  overflow: hidden;
}
.page-top .block-top-category li a:hover img.hover_off {
  opacity: 0;
}
.page-top .block-top-category li a:hover h3 {
  opacity: 0;
}
.page-top .block-top-category li img {
  position: relative;
  vertical-align: bottom;
  -webkit-transition: 1s;
  transition: 1s;
  width: 100%;
  height: 100%;
}
.page-top .block-top-category li img.hover_off {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
}
.page-top .block-top-category li h3 {
  position: absolute;
  bottom: 24px;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: center;
  z-index: 10;
  -webkit-transition: 1s;
  transition: 1s;
}
.page-top .block-top-event {
  width: auto;
  background: #f4f3ef;
  padding-bottom: 160px;
}
.page-top .block-top-event .block-top-event--header {
  max-width: 1300px;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  font-family: "Playfair Display", serif;
  font-size: 32px;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin: 155px auto 0;
  padding: 0;
}
.page-top .block-top-event .block-top-event--header span {
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  color: #999;
  font-size: 12px;
  letter-spacing: 0.05em;
  font-weight: normal;
}
.page-top .block-top-event .block-top-event--header:after {
  content: none;
}
.page-top .block-top-event .block-top-event--goods {
  max-width: 1300px;
  margin: 0 auto;
  padding-block: 45px;
}
.page-top .block-top-event .block-top-event--goods:has(.block-ranking-r) {
  display: none;
}
.page-top .block-top-event .event_link {
  width: 124px;
  margin: auto;
}
.page-top .block-top-event .event_link a {
  font-family: "Jost", sans-serif;
  display: -ms-grid;
  display: grid;
  place-content: center;
  height: 34px;
  font-size: 14px;
  text-align: center;
  letter-spacing: 0.1em;
  border: 1px solid #000;
  -webkit-transition: 1s;
  transition: 1s;
  margin: auto;
}
.page-top .block-top-event .event_link:hover a {
  color: #fff;
  background: #000;
}
.page-top .custom_ranking_container {
  max-width: 1300px;
  margin: 0 auto 75px;
  padding: 150px 0 0;
}
.page-top .custom_ranking_container .custom_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page-top .custom_ranking_container .custom_header h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  font-family: "Playfair Display", serif;
  font-size: 32px;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin: 0;
}
.page-top .custom_ranking_container .custom_header h2:after {
  font-family: "Noto Sans JP", sans-serif;
  content: "ランキング";
  color: #999;
  font-size: 12px;
  letter-spacing: 0.05em;
  font-weight: normal;
  display: block;
}
.page-top .custom_ranking_container .custom_tubs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 41px;
}
.page-top .custom_ranking_container .custom_tubs h2 {
  font-size: 16px;
  margin: 0;
  cursor: pointer;
}
.page-top .custom_ranking_container .custom_tubs h2 span {
  font-family: "Jost", sans-serif;
  color: #999;
  font-size: 16px;
  line-height: normal;
  padding-bottom: 3px;
}
.page-top .custom_ranking_container .custom_tubs h2.is_active span {
  color: #000;
  border-bottom: 1px solid #000;
}
.page-top .custom_ranking_container .custom_item {
  max-width: 1300px;
  display: none;
  margin: auto;
  padding-block: 40px 45px;
}
.page-top .custom_ranking_container .custom_item.is_active {
  display: block;
}
.page-top .custom_ranking_container .custom_link {
  display: none;
  width: 124px;
  margin: auto;
}
.page-top .custom_ranking_container .custom_link a {
  font-family: "Jost", sans-serif;
  display: -ms-grid;
  display: grid;
  place-content: center;
  height: 34px;
  font-size: 14px;
  text-align: center;
  letter-spacing: 0.1em;
  border: 1px solid #000;
  -webkit-transition: 1s;
  transition: 1s;
  margin: auto;
}
.page-top .custom_ranking_container .custom_link:hover a {
  color: #fff;
  background: #000;
}
.page-top .custom_ranking_container .custom_link.is_active {
  display: block;
}
.page-top .block-ranking-r .block-ranking-r--items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  margin: 0;
}
.page-top .block-ranking-r .block-ranking-r--items li {
  padding: 0;
  margin: 0;
}
.page-top .block-ranking-r .block-ranking-r--items li:hover .block-ranking-r--goods-name a {
  color: #94007b;
}
.page-top .block-ranking-r .block-ranking-r--goods {
  width: 100%;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
}
.page-top .block-ranking-r .block-ranking-r--goods-image {
  position: relative;
  max-width: 240px;
  height: auto;
  aspect-ratio: 1/1;
  padding: 0;
  margin-bottom: 16px;
}
.page-top .block-ranking-r .block-ranking-r--goods-image figure {
  position: static;
  padding: 0;
}
.page-top .block-ranking-r .block-ranking-r--goods-image img {
  width: 240px;
  height: 100%;
  aspect-ratio: 1/1;
}
.page-top .block-ranking-r .block-ranking-r--goods-image img:hover {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.page-top .block-ranking-r .block-ranking-r--goods-image .block-ranking-r--rank {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-family: "Prata", serif;
  top: 0;
  color: #fff;
  font-size: 16px;
  width: 64px;
  height: 64px;
  background: #c9a46a;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  border-radius: 0;
  padding: 10px 12px;
}
.page-top .block-ranking-r .block-ranking-r--goods-image .block-ranking-r--rank:after {
  content: none;
}
.page-top .block-ranking-r .block-ranking-r--goods-image .block-goods-favorite {
  position: absolute;
  top: 16px;
  right: 12px;
  width: 24px;
  height: 24px;
  z-index: 9;
}
.page-top .block-ranking-r .block-ranking-r--goods-image .block-goods-list--favorite--btn {
  position: static;
  width: 24px;
  height: 24px;
  background: url("/img/usr/common/item_favo01.png") no-repeat center/contain;
}
.page-top .block-ranking-r .block-ranking-r--goods-image .block-goods-list--favorite-registed--btn {
  position: static;
  width: 24px;
  height: 24px;
  background: url("/img/usr/common/item_favo02.png") no-repeat center/contain;
}
.page-top .block-ranking-r .block-ranking-r--goods-description {
  display: -ms-grid;
  display: grid;
  margin: 0;
  padding-left: 8px;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .variation-name {
  display: none;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-icon {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
  margin: 0;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-ranking-r--goods-name {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
  margin-top: 10px;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-ranking-r--goods-name a {
  line-height: 24px;
  -webkit-transition: 1s;
  transition: 1s;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-ranking-r--price-infos {
  -webkit-box-ordinal-group: 21;
      -ms-flex-order: 20;
          order: 20;
  margin-top: 8px;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-ranking-r--price-infos:has(.default-price) .price {
  color: #da1818;
  font-weight: 500;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-ranking-r--price-infos .price {
  text-align: left;
  font-weight: 400;
  margin-top: 0;
}
.page-top .block-ranking-r .block-ranking-r--goods-description .block-ranking-r--price-infos .default-price {
  margin-top: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  margin: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t li {
  display: block;
  padding: 0;
  margin: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t li:has(dl + dl) {
  display: none;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods {
  width: auto;
  padding: 0;
  margin: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods:hover .block-thumbnail-t--goods-name a {
  color: #94007b;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image {
  padding: 0;
  height: auto;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image figure {
  position: static;
  padding: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image img {
  width: 240px;
  height: auto;
  aspect-ratio: 1/1;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image img:hover {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image .block-goods-favorite {
  position: absolute;
  top: 16px;
  right: 12px;
  width: 24px;
  height: 24px;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image .block-goods-list--favorite--btn {
  position: static;
  width: 24px;
  height: 24px;
  background: url("/img/usr/common/item_favo01.png") no-repeat center/contain;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-image .block-goods-list--favorite-registed--btn {
  position: static;
  width: 24px;
  height: 24px;
  background: url("/img/usr/common/item_favo02.png") no-repeat center/contain;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description {
  padding-left: 8px;
  margin-top: 16px;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .variation-name {
  display: none;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-icon {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
  margin: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-thumbnail-t--goods-name {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
  margin-top: 10px;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-thumbnail-t--goods-name a {
  line-height: 24px;
  -webkit-transition: 1s;
  transition: 1s;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-thumbnail-t--price-infos {
  -webkit-box-ordinal-group: 21;
      -ms-flex-order: 20;
          order: 20;
  margin-top: 8px;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-thumbnail-t--price-infos:has(.default-price) .price {
  color: #da1818;
  font-weight: 500;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-thumbnail-t--price-infos .price {
  text-align: left;
  font-weight: 400;
  margin-top: 0;
}
.page-top .block-top-event--goods .block-thumbnail-t--goods-description .block-thumbnail-t--price-infos .default-price {
  margin-top: 0;
}
.page-top .block-top-free-2 {
  width: auto;
  padding-block: 150px 0;
}
.page-top .block-top-collection {
  max-width: 1300px;
  margin: 0 auto;
}
.page-top .block-top-collection ul {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  padding-block: 45px 0;
}
.page-top .block-top-collection li {
  overflow: unset;
  max-height: none;
  height: 435px;
}
.page-top .block-top-collection li a {
  position: relative;
  display: block;
}
.page-top .block-top-collection li a img {
  -webkit-transition: 1s;
  transition: 1s;
  width: 306px;
  height: auto;
  aspect-ratio: 306/436;
}
.page-top .block-top-collection li a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.page-top .block-top-collection li .txt_wrap {
  /* position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: auto; */
  font-family: "Jost", sans-serif;
  letter-spacing: 0.1em;
  position: static;
  color: #000;
  text-align: left;
  margin-top: 12px;
  padding: 0 8px;
}
.page-top .block-top-collection li .txt_wrap h3 {
  font-size: 16px;
  margin: 0;
}
.page-top .block-top-collection li .txt_wrap span {
  font-size: 13px;
}
.page-top .block-top-collection li .img_wrap {
  overflow: hidden;
  height: 435px;
}
.page-top .block-top-news {
  padding-block: 150px 160px;
}
.page-top .block-top-news .block-pagecategory {
  max-width: 1015px;
  margin: 0 auto;
}
.page-top .block-top-news .block-pagecategory h2 {
  margin: 0;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--frame {
  border-top: 1px solid #ddd;
  margin-top: 40px;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--page {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  border-bottom: 1px solid #ddd;
  padding: 0 15px;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--page-image {
  display: none;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--date {
  width: 125px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  font-family: "Noto Sans JP", sans-serif;
  color: #999;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 0.05em;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--date .block-pagecategory-page-list--auto-new img {
  height: 24px;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--page-caption {
  width: 100%;
}
.page-top .block-top-news .block-pagecategory .block-pagecategory-page-list--page-caption a {
  display: block;
  padding: 23px 0;
  font-size: 16px;
  letter-spacing: 0.02em;
}
.page-top .block-top-links {
  overflow: hidden;
  max-height: 560px;
}
.page-top .block-top-links ul {
  max-width: 1300px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  -ms-grid-rows: (1fr)[2];
  grid-template-rows: repeat(2, 1fr);
  margin: 0 auto;
  gap: 2px;
}
.page-top .block-top-links li:first-of-type {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: 1/1/3/2;
}
.page-top .block-top-links li a {
  position: relative;
  display: -ms-grid;
  display: grid;
}
.page-top .block-top-links li a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-filter: brightness(100%);
          filter: brightness(100%);
}
.page-top .block-top-links li .img_wrap {
  position: relative;
  overflow: hidden;
}
.page-top .block-top-links li .img_wrap img {
  display: block;
  width: 100%;
  vertical-align: bottom;
  -webkit-transition: 1s;
  transition: 1s;
  -webkit-filter: brightness(80%);
          filter: brightness(80%);
}
.page-top .block-top-links li .txt_wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  z-index: 9;
}
.page-top .block-top-links li .txt_wrap h2 {
  font-family: "Playfair Display", serif;
  font-size: 32px;
  letter-spacing: 0.1em;
  margin: 0;
}
.page-top .block-top-links li .txt_wrap span {
  font-size: 12px;
  letter-spacing: 0.05em;
}
.page-top .block-top-reform {
  max-width: 1300px;
  margin: 160px auto 150px;
}
.page-top .block-top-reform .reform_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 80px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page-top .block-top-reform img {
    max-width: 840px;
    width: 100%;
    height: auto;
    aspect-ratio: 2 / 1;
    object-fit: cover;
}
.page-top .block-top-reform p {
  padding-block: 45px;
  line-height: 32px;
  letter-spacing: 1px;
}
.page-top .block-top-reform .common_link {
  margin: 0;
}
.page-top .block-top-advice {
  background: #f4f3ef;
  padding-block: 150px 160px;
}
.page-top .block-top-advice .block-pagecategory {
  max-width: 1300px;
  margin: 0 auto;
}
.page-top .block-top-advice .block-pagecategory h2 {
  margin: 0;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--frame {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  padding-block: 45px;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page {
  width: auto;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page:hover .block-pagecategory-page-list--page-image img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 1s;
  transition: 1s;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page:hover .block-pagecategory-page-list--page-caption a {
  color: #94007b;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page-image {
  overflow: hidden;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page-image img {
  display: block;
  width: 307px;
  height: auto;
  aspect-ratio: 1/1;
  -webkit-transition: 1s;
  transition: 1s;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--date {
  display: none;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page-caption {
  padding: 0 8px;
  margin-top: 16px;
}
.page-top .block-top-advice .block-pagecategory .block-pagecategory-page-list--page-caption a {
  font-size: 16px;
  letter-spacing: 0.02em;
  -webkit-transition: 1s;
  transition: 1s;
}
/* CLS対策：カテゴリ画像のアスペクト比 */
.page-top .block-top-category li:nth-of-type(1) img.hover_on {
  aspect-ratio: 324 / 480;
}
.page-top .block-top-category li:not(:nth-of-type(1)) img.hover_on {
  aspect-ratio: 324 / 240;
}
