@charset "UTF-8";
body.page-top {
  background-color: #555;
}

/* header
--------------------------------------- */
@media screen and (min-width: 769px) {
  body.page-top:not(.body-fixed) header#header {
    background: rgba(0, 0, 0, 0);
  }
}
/* header - 高さ分余白
--------------------------------------- */
.page-top .pane-contents {
  padding-top: 0;
}
@media screen and (min-width: 769px) {
  .page-top .pane-contents {
    padding-bottom: 0;
  }
}

/* header - スクロール 表示アニメーション
--------------------------------------- */
@media screen and (max-width: 768px) {
  body.page-top:not(.body-fixed) header#header,
  body.page-top:not(.body-fixed) #header-search-area {
    opacity: 0;
  }
  body.page-top:not(.body-fixed) header#header.js-fixed,
  body.page-top:not(.body-fixed) #header-search-area.js-fixed {
    opacity: 1;
  }
}
/* 背景動画
--------------------------------------- */
.youtube-cover {
  position: fixed;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  margin: 0 auto;
  z-index: -1;
}
.youtube-cover:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAAXNSR0IArs4c6QAAABdJREFUGFdjZEACjFD2fwYGBkYYBywGABJxAQSVNVWFAAAAAElFTkSuQmCC) 0 0 repeat;
}
.youtube-cover iframe {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
}

/* スクロールアニメーション
--------------------------------------- */
.js_scroll_animation {
  opacity: 1;
  transition: opacity 1s ease;
}
.js_scroll_animation.js-fadeout {
  opacity: 0;
}

/* メインビジュアル
--------------------------------------- */
div#block_of_top_body .top-main-visual {
  position: relative;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
div#block_of_top_body .top-main-visual h1.top-logo {
  width: 82.5vw;
  text-align: center;
  max-width: 500px;
}
div#block_of_top_body .top-main-visual h1.top-logo img {
  width: 100%;
  height: auto;
}
div#block_of_top_body a.top-link-scroll {
  position: absolute;
  bottom: 6vh;
}
div#block_of_top_body a.top-link-scroll img {
  width: 100%;
  height: auto;
  max-width: 60px;
}
@media screen and (max-width: 768px) {
  div#block_of_top_body a.top-link-scroll img {
    max-width: 45px;
  }
}

/* タイトルから探す
--------------------------------------- */
#anchor-title.block-top-searchTitle {
  backdrop-filter: blur(30px);
  background-color: rgba(255, 255, 255, 0.1);
  padding: 100px 0;
  width: 100%;
  scroll-margin-top: 40px;
}
@media screen and (min-width: 769px) {
  #anchor-title.block-top-searchTitle::before, #anchor-title.block-top-searchTitle::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    left: 0;
  }
  #anchor-title.block-top-searchTitle::before {
    top: 100px;
  }
  #anchor-title.block-top-searchTitle::after {
    bottom: 99px;
  }
  #anchor-title.block-top-searchTitle .top-content-inner {
    max-width: 1200px;
    margin: 0 auto;
    border-style: solid;
    border-width: 0 1px;
    border-color: rgba(255, 255, 255, 0.4);
    padding: 35px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle {
    padding: 65px 0 0;
    margin: 0 0 180px;
  }
}
#anchor-title.block-top-searchTitle h2.hdg {
  color: #ffffff;
  background: none;
  font-size: 75px;
  font-weight: normal;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  line-height: 1.3;
  letter-spacing: -0.02em;
  text-align: left;
  padding: 0 45px 30px;
  margin: 0 auto;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle h2.hdg {
    font-size: 60px;
    padding: 0 24px 25px;
  }
}
#anchor-title.block-top-searchTitle h2.hdg > span {
  display: block;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.2em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle h2.hdg > span {
    font-size: 11px;
  }
}
#anchor-title.block-top-searchTitle #list-searchTitle {
  display: flex;
  transition: 0.5s;
}
#anchor-title.block-top-searchTitle #list-searchTitle .slick-track {
  display: flex;
}
@media screen and (min-width: 769px) {
  #anchor-title.block-top-searchTitle #list-searchTitle {
    opacity: 0;
  }
  #anchor-title.block-top-searchTitle #list-searchTitle.slick-initialized {
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle #list-searchTitle {
    flex-wrap: nowrap;
    overflow-x: scroll;
    scrollbar-width: none;
  }
}
#anchor-title.block-top-searchTitle #list-searchTitle > a,
#anchor-title.block-top-searchTitle #list-searchTitle a.slick-slide {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  height: auto;
  padding: 35px 36px 35px 35px;
  outline: none;
  background: rgba(255, 255, 255, 0);
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle #list-searchTitle > a,
  #anchor-title.block-top-searchTitle #list-searchTitle a.slick-slide {
    min-width: 60vw;
    padding: 32px 16px;
  }
}
#anchor-title.block-top-searchTitle #list-searchTitle > a::after,
#anchor-title.block-top-searchTitle #list-searchTitle a.slick-slide::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  background: rgba(255, 255, 255, 0.4);
  top: 0;
  right: 0;
}
#anchor-title.block-top-searchTitle #list-searchTitle > a:hover,
#anchor-title.block-top-searchTitle #list-searchTitle a.slick-slide:hover {
  background: rgba(255, 255, 255, 0.15);
}
#anchor-title.block-top-searchTitle #list-searchTitle > a > img,
#anchor-title.block-top-searchTitle #list-searchTitle a.slick-slide > img {
  display: block;
  margin: 0;
  width: 100%;
  height: auto;
  box-shadow: 10px 10px 16px -14px rgba(0, 0, 0, 0.4);
}
@media screen and (min-width: 769px) {
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow {
    position: absolute;
    width: 55px;
    height: 55px;
    background: rgba(0, 0, 0, 0.6);
    border: 1px solid #000;
    top: 50%;
    z-index: 1;
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow::before {
    content: "";
    position: absolute;
    width: 10px;
    height: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow:hover {
    cursor: pointer;
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow.arw-l {
    left: -15px;
    transform: translate(-100%, -50%);
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow.arw-l::before {
    background: url(../../img/usr/common/slide_arw_l.png) center center/contain no-repeat;
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow.arw-r {
    right: -15px;
    transform: translate(100%, -50%);
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow.arw-r::before {
    background: url(../../img/usr/common/slide_arw_r.png) center center/contain no-repeat;
  }
}
@media screen and (max-width: 1400px) and (min-width: 769px) {
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow.arw-l {
    left: 0;
    transform: translateY(-50%);
  }
  #anchor-title.block-top-searchTitle #list-searchTitle .slick-arrow.arw-r {
    right: 0;
    transform: translateY(-50%);
  }
}
#anchor-title.block-top-searchTitle .block-top-more {
  border-style: solid;
  border-width: 1px 0 0;
  border-color: rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle .block-top-more {
    border-width: 1px 0;
  }
}
#anchor-title.block-top-searchTitle .block-top-more a.btn {
  position: relative;
  display: block;
  width: 100%;
  background-color: #111111;
  color: #ffffff;
  font-size: 18px;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 300;
  text-align: center;
  padding: 24px 45px;
  border: none;
  transition: 0.3s;
}
@media screen and (min-width: 769px) {
  #anchor-title.block-top-searchTitle .block-top-more a.btn > span {
    position: relative;
    padding-right: 55px;
  }
  #anchor-title.block-top-searchTitle .block-top-more a.btn > span::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 14px;
    background: url(../../img/usr/common/btn_arw_pc.png) center center/contain no-repeat;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  #anchor-title.block-top-searchTitle .block-top-more a.btn {
    font-size: 14px;
  }
  #anchor-title.block-top-searchTitle .block-top-more a.btn::after {
    content: "";
    position: absolute;
    width: 25px;
    height: 9px;
    background: url(../../img/usr/common/btn_arw_sp.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
#anchor-title.block-top-searchTitle .block-top-more a.btn:hover {
  filter: brightness(1.2);
}

/* イベント
--------------------------------------- */
div.block-top-event {
  position: relative;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.7);
  margin: 0 auto;
  padding: 100px 0;
  width: 100%;
}
@media screen and (min-width: 769px) {
  div.block-top-event::before, div.block-top-event::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    left: 0;
  }
  div.block-top-event::before {
    top: 100px;
  }
  div.block-top-event::after {
    bottom: 99px;
  }
}
@media screen and (max-width: 768px) {
  div.block-top-event {
    display: flex;
    flex-wrap: wrap;
    padding: 80px 0 0 72px;
    margin: 180px 0;
  }
}
div.block-top-event h2.block-top-title {
  color: #ffffff;
  font-weight: normal;
  border-bottom: none;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 769px) {
  div.block-top-event h2.block-top-title {
    position: relative;
    max-width: 1200px;
    display: flex;
    gap: 25px;
    align-items: baseline;
    padding: 25px 30px 20px;
    text-align: left;
    font-size: 52px;
    line-height: 1.3;
    letter-spacing: -0.02em;
    margin: 0 auto;
  }
  div.block-top-event h2.block-top-title > span {
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 0.2em;
    display: block;
  }
  div.block-top-event h2.block-top-title::after {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 768px) {
  div.block-top-event h2.block-top-title {
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    position: absolute;
    top: 80px;
    left: 15px;
    font-size: 40px;
    padding-top: 0;
    margin-bottom: 0;
    line-height: 1;
  }
  div.block-top-event h2.block-top-title > span {
    display: none;
  }
}
div.block-top-event .block-top-event--inner {
  max-width: 1200px;
  margin: 0 auto;
  border-style: solid;
  border-width: 0 1px;
  border-color: rgba(255, 255, 255, 0.4);
  padding: 0;
}
@media screen and (min-width: 769px) {
  div.block-top-event .block-top-event--inner .block-thumbnail-t {
    margin: 0;
  }
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--inner {
    border-width: 1px 0 0 1px;
  }
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--inner .block-top-event--goods {
    background-color: #eee;
  }
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  padding: 0;
  margin: 0;
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item {
  width: 33.3333333333%;
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 769px) {
  div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item:not(:nth-child(-n+3)) {
    border-top: 1px solid rgba(255, 255, 255, 0.4);
  }
  div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item:not(:nth-child(3n)) {
    border-right: 1px solid rgba(255, 255, 255, 0.4);
  }
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item {
    width: 50%;
    border-bottom: none;
  }
  div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item:not(:nth-child(-n+2)) {
    border-top: 1px solid #111111;
  }
  div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item:not(:nth-child(2n)) {
    border-right: 1px solid #111111;
  }
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item > .block-goods-list--image-relative > a {
  display: block;
  transition: 0.3s;
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item > .block-goods-list--image-relative > a div.block-goods-detail-j--goods-image {
  margin: 0;
  padding: 35px 35px;
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item > .block-goods-list--image-relative > a div.block-goods-detail-j--goods-image {
    padding: 30px 15px;
  }
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item > .block-goods-list--image-relative > a div.block-goods-detail-j--goods-image figure {
  min-width: 0;
  min-height: 0;
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item > .block-goods-list--image-relative > a div.block-goods-detail-j--goods-image figure img {
  width: 100%;
  height: auto;
  max-width: 330px;
  box-shadow: 10px 10px 16px -14px rgba(0, 0, 0, 0.4);
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items li.block-goods-detail-j--item > .block-goods-list--image-relative > a:hover {
  background: rgba(255, 255, 255, 0.15);
}
div.block-top-event .block-top-event--inner div.block-goods-detail-j--items .block-goods-favorite {
  display: none;
}
div.block-top-event div.block-goods-detail-j--goods-description {
  display: none !important;
}
div.block-top-event .block-top-event--more {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--more {
    border-top: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }
}
div.block-top-event .block-top-event--more > a {
  position: relative;
  display: block;
  width: 100%;
  background-color: #111111;
  color: #ffffff;
  text-align: center;
  padding: 25px 45px;
  border-radius: 0;
  font-size: 18px;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 300;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--more > a {
    font-size: 14px;
  }
}
div.block-top-event .block-top-event--more > a:hover {
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  div.block-top-event .block-top-event--more > a > span {
    position: relative;
    padding-right: 55px;
  }
  div.block-top-event .block-top-event--more > a > span::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 14px;
    background: url(../../img/usr/common/btn_arw_pc.png) center center/contain no-repeat;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  div.block-top-event .block-top-event--more > a {
    font-size: 14px;
  }
  div.block-top-event .block-top-event--more > a::after {
    content: "";
    position: absolute;
    width: 25px;
    height: 9px;
    background: url(../../img/usr/common/btn_arw_sp.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
div.block-top-event .block-top-event--more > a:hover {
  filter: brightness(1.2);
}

.swiper-button-prev,
.swiper-button-next {
  visibility: hidden;
}

.block-category-tree {
  display: none;
}

/* 特集
--------------------------------------- */
div.block-top-campaign {
  position: relative;
  backdrop-filter: blur(30px);
  background-color: rgba(255, 255, 255, 0.1);
  margin: 0 auto;
  padding: 100px 0;
  width: 100%;
}
@media screen and (min-width: 769px) {
  div.block-top-campaign::before, div.block-top-campaign::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    left: 0;
  }
  div.block-top-campaign::before {
    top: 100px;
  }
  div.block-top-campaign::after {
    bottom: 99px;
  }
  div.block-top-campaign .top-content-inner {
    max-width: 1200px;
    margin: 0 auto;
    border-style: solid;
    border-width: 0 1px;
    border-color: rgba(255, 255, 255, 0.4);
    padding: 35px 0 0;
  }
}
@media screen and (max-width: 768px) {
  div.block-top-campaign {
    padding: 65px 0 0;
  }
}
div.block-top-campaign h2.block-top-title {
  color: #ffffff;
  font-size: 75px;
  font-weight: normal;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  line-height: 1.3;
  letter-spacing: -0.02em;
  text-align: left;
  padding: 0 45px 30px;
  margin: 0 auto;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  div.block-top-campaign h2.block-top-title {
    font-size: 60px;
    padding: 0 24px 25px;
  }
}
div.block-top-campaign h2.block-top-title > span {
  display: block;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.2em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  div.block-top-campaign h2.block-top-title > span {
    font-size: 11px;
  }
}
div.block-top-campaign #list-campaignBanner {
  display: flex;
  justify-content: center;
  padding: 0;
  position: relative;
  transition: 0.5s;
  opacity: 0;
}
@media screen and (min-width: 769px) {
  div.block-top-campaign #list-campaignBanner .slick-list {
    width: calc(100% - 120px);
    border-left: 1px solid rgba(255, 255, 255, 0.4);
    border-right: 1px solid rgba(255, 255, 255, 0.4);
  }
}
div.block-top-campaign #list-campaignBanner.slick-initialized {
  opacity: 1;
}
div.block-top-campaign #list-campaignBanner .slick-track {
  display: flex;
}
div.block-top-campaign #list-campaignBanner a.slick-slide {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 15px;
  flex-grow: 1;
  height: auto;
  padding: 40px 70px 40px 71px;
  outline: none;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  div.block-top-campaign #list-campaignBanner a.slick-slide {
    padding: 25px;
  }
}
@media screen and (min-width: 769px) {
  div.block-top-campaign #list-campaignBanner a.slick-slide.slick-active::after, div.block-top-campaign #list-campaignBanner a.slick-slide.slick-current::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    background: rgba(255, 255, 255, 0.4);
    top: 0;
    right: -1px;
  }
}
@media screen and (min-width: 769px) {
  div.block-top-campaign #list-campaignBanner a.slick-slide.slick-active:only-child::after, div.block-top-campaign #list-campaignBanner a.slick-slide.slick-current:only-child::after {
    content: none;
  }
}
div.block-top-campaign #list-campaignBanner a.slick-slide:hover {
  text-decoration: none;
  background: rgba(255, 255, 255, 0.15);
}
div.block-top-campaign #list-campaignBanner a.slick-slide figure.img-center > img {
  display: block;
  margin: 0;
  width: 100%;
  height: auto;
  box-shadow: 10px 10px 16px -14px rgba(0, 0, 0, 0.4);
}
div.block-top-campaign #list-campaignBanner div.block-campaign-banner--title {
  background-color: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  padding: 16px;
  font-size: 12px;
}
div.block-top-campaign #list-campaignBanner div.block-campaign-banner--title > .inner-txt {
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  word-break: break-all;
}
div.block-top-campaign #list-campaignBanner .slick-arrow {
  display: block;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
}
@media screen and (min-width: 769px) {
  div.block-top-campaign #list-campaignBanner .slick-arrow {
    width: 60px;
    flex-grow: 1;
  }
}
@media screen and (max-width: 768px) {
  div.block-top-campaign #list-campaignBanner .slick-arrow {
    position: absolute;
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid #000;
    z-index: 1;
  }
}
div.block-top-campaign #list-campaignBanner .slick-arrow::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 20px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  div.block-top-campaign #list-campaignBanner .slick-arrow::before {
    width: 6px;
    height: 14px;
  }
}
div.block-top-campaign #list-campaignBanner .slick-arrow:hover {
  cursor: pointer;
}
div.block-top-campaign #list-campaignBanner .slick-arrow.arw-l::before {
  background: url(../../img/usr/common/slide_arw_l.png) center center/contain no-repeat;
}
@media screen and (max-width: 768px) {
  div.block-top-campaign #list-campaignBanner .slick-arrow.arw-l {
    left: 0;
  }
}
div.block-top-campaign #list-campaignBanner .slick-arrow.arw-r::before {
  background: url(../../img/usr/common/slide_arw_r.png) center center/contain no-repeat;
}
@media screen and (max-width: 768px) {
  div.block-top-campaign #list-campaignBanner .slick-arrow.arw-r {
    right: 0;
  }
}
div.block-top-campaign .block-top-more {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  div.block-top-campaign .block-top-more {
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }
}
div.block-top-campaign .block-top-more > a.btn {
  position: relative;
  display: block;
  width: 100%;
  background-color: #111111;
  color: #ffffff;
  font-size: 18px;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 300;
  text-align: center;
  padding: 24px 45px;
  border: none;
  transition: 0.3s;
}
@media screen and (min-width: 769px) {
  div.block-top-campaign .block-top-more > a.btn > span {
    position: relative;
    padding-right: 55px;
  }
  div.block-top-campaign .block-top-more > a.btn > span::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 14px;
    background: url(../../img/usr/common/btn_arw_pc.png) center center/contain no-repeat;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  div.block-top-campaign .block-top-more > a.btn {
    font-size: 14px;
  }
  div.block-top-campaign .block-top-more > a.btn::after {
    content: "";
    position: absolute;
    width: 25px;
    height: 9px;
    background: url(../../img/usr/common/btn_arw_sp.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
div.block-top-campaign .block-top-more > a.btn:hover {
  filter: brightness(1.2);
}

/* レコメンド
--------------------------------------- */
#block_of_top_free5 div.block-top-lightningrecommend {
  position: relative;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.7);
  margin: 0 auto;
  padding: 100px 0;
  width: 100%;
}
@media screen and (min-width: 769px) {
  #block_of_top_free5 div.block-top-lightningrecommend::before, #block_of_top_free5 div.block-top-lightningrecommend::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    left: 0;
  }
  #block_of_top_free5 div.block-top-lightningrecommend::before {
    top: 100px;
  }
  #block_of_top_free5 div.block-top-lightningrecommend::after {
    bottom: 99px;
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free5 div.block-top-lightningrecommend {
    display: flex;
    flex-wrap: wrap;
    padding: 80px 0 80px 72px;
    margin: 180px 0;
  }
}
#block_of_top_free5 div.block-top-lightningrecommend h2.block-top-lightningrecommend--header {
  color: #ffffff;
  font-weight: normal;
  border-bottom: none;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 769px) {
  #block_of_top_free5 div.block-top-lightningrecommend h2.block-top-lightningrecommend--header {
    position: relative;
    max-width: 1200px;
    display: flex;
    gap: 25px;
    align-items: baseline;
    padding: 25px 30px 20px;
    text-align: left;
    font-size: 52px;
    line-height: 1.3;
    letter-spacing: -0.02em;
    margin: 0 auto;
  }
  #block_of_top_free5 div.block-top-lightningrecommend h2.block-top-lightningrecommend--header > span {
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 0.2em;
    display: block;
  }
  #block_of_top_free5 div.block-top-lightningrecommend h2.block-top-lightningrecommend--header::after {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free5 div.block-top-lightningrecommend h2.block-top-lightningrecommend--header {
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    position: absolute;
    top: 80px;
    left: 15px;
    font-size: 40px;
    padding-top: 0;
    margin-bottom: 0;
    line-height: 1;
  }
  #block_of_top_free5 div.block-top-lightningrecommend h2.block-top-lightningrecommend--header > span {
    display: none;
  }
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods {
  max-width: 1200px;
  margin: 0 auto;
  border-style: solid;
  border-width: 0 1px;
  border-color: rgba(255, 255, 255, 0.4);
  padding: 0;
}
@media screen and (min-width: 769px) {
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t {
    margin: 0;
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods {
    background: #eee;
    border-width: 1px 0 0 1px;
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-top-lightningrecommend--goods {
    background-color: #eee;
  }
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  padding: 0;
  margin: 0;
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item {
  width: 33.3333333333%;
  margin: 0;
  padding: 0;
  border-bottom: none;
}
@media screen and (min-width: 769px) {
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item:not(:nth-child(-n+3)) {
    border-top: 1px solid rgba(255, 255, 255, 0.4);
  }
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item:not(:nth-child(3n)) {
    border-right: 1px solid rgba(255, 255, 255, 0.4);
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item {
    width: 50%;
  }
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item:not(:nth-child(-n+2)) {
    border-top: 1px solid #111111;
  }
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item:not(:nth-child(2n)) {
    border-right: 1px solid #111111;
  }
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item > a {
  display: block;
  transition: 0.3s;
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item > a div.block-thumbnail-t--goods-image {
  margin: 0;
  padding: 35px 35px;
}
@media screen and (max-width: 768px) {
  #block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item > a div.block-thumbnail-t--goods-image {
    padding: 30px 15px;
  }
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item > a div.block-thumbnail-t--goods-image figure {
  min-width: 0;
  min-height: 0;
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item > a div.block-thumbnail-t--goods-image figure img {
  width: 100%;
  max-width: 330px;
  height: auto;
  box-shadow: 10px 10px 16px -14px rgba(0, 0, 0, 0.4);
}
#block_of_top_free5 div.block-top-lightningrecommend .block-top-lightningrecommend--goods .block-thumbnail-t--items > li.block-thumbnail-t--item > a:hover {
  background: rgba(255, 255, 255, 0.15);
}
#block_of_top_free5 div.block-top-lightningrecommend div.block-thumbnail-t--goods-description {
  display: none !important;
}

.swiper-button-prev,
.swiper-button-next {
  visibility: hidden;
}

/* トピック
--------------------------------------- */
div.block-top-topic {
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  div.block-top-topic {
    margin: 180px 0;
  }
}
div.block-top-topic div.block-top-topic--body {
  background-color: #111111;
  padding: 150px 0;
}
@media screen and (max-width: 768px) {
  div.block-top-topic div.block-top-topic--body {
    padding: 80px 0;
  }
}
div.block-top-topic h2.block-top-topic--header {
  color: #ffffff;
  max-width: 900px;
  border-top: double 4px rgba(255, 255, 255, 0.4);
  border-bottom: solid 1px rgba(255, 255, 255, 0.4);
  padding: 16px;
  font-size: 45px;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  line-height: 1;
  margin: 0 auto 50px;
}
@media screen and (max-width: 768px) {
  div.block-top-topic h2.block-top-topic--header {
    font-size: 35px;
    padding: 12px;
    margin: 0 auto 25px;
  }
}
div.block-top-topic h2.block-top-topic--header > span {
  font-size: 13px;
  font-weight: normal;
  display: block;
}
@media screen and (max-width: 768px) {
  div.block-top-topic h2.block-top-topic--header > span {
    font-size: 10px;
  }
}
div.block-top-topic ul.block-topic--items {
  width: 90%;
  max-width: 900px;
  margin: 0 auto;
}
div.block-top-topic ul.block-topic--items > li {
  border-bottom: none;
  padding: 5px 0;
}
div.block-top-topic ul.block-topic--items > li > a {
  transition: 0.3s;
}
div.block-top-topic ul.block-topic--items > li > a:hover {
  filter: brightness(1.2);
}
div.block-top-topic ul.block-topic--items > li dl {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  div.block-top-topic ul.block-topic--items > li dl {
    flex-direction: column;
    gap: 5px;
  }
}
div.block-top-topic ul.block-topic--items > li dl dt {
  width: 6em;
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  div.block-top-topic ul.block-topic--items > li dl dt {
    width: 100%;
  }
}
div.block-top-topic ul.block-topic--items > li dl dd {
  width: calc(100% - 6em);
}
@media screen and (max-width: 768px) {
  div.block-top-topic ul.block-topic--items > li dl dd {
    width: 100%;
  }
}
div.block-top-topic ul.block-topic--items > li dl dd .block-top-topic--icon-comment:empty {
  margin-right: 0;
}
div.block-top-topic ul.block-topic--items div.block-icon-image--table div.block-icon-image--table-cell {
  background-color: #343434;
  color: #ffffff;
  padding: 14px 50px;
  font-size: 12px;
  font-weight: normal;
}
@media screen and (max-width: 768px) {
  div.block-top-topic ul.block-topic--items div.block-icon-image--table div.block-icon-image--table-cell {
    padding: 12px;
  }
}
div.block-top-topic ul.block-topic--items div.block-icon-image--table div.block-icon-image--table-cell-angle-right {
  display: none;
}
div.block-top-topic div.block-top-topic--next-page {
  width: 75%;
  max-width: 550px;
  margin: 50px auto 0;
}
@media screen and (max-width: 768px) {
  div.block-top-topic div.block-top-topic--next-page {
    margin: 25px auto 0;
  }
}
div.block-top-topic div.block-top-topic--next-page > a {
  display: block;
  position: relative;
  width: 100%;
  border: solid 1px rgba(255, 255, 255, 0.4);
  color: #ffffff;
  background-color: #111111;
  font-size: 14px;
  font-weight: normal;
  padding: 15px 45px;
  transition: 0.3s;
}
@media screen and (min-width: 769px) {
  div.block-top-topic div.block-top-topic--next-page > a::after {
    content: "";
    position: absolute;
    width: 30px;
    height: 10px;
    background: url(../../img/usr/common/btn_arw_pc.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  div.block-top-topic div.block-top-topic--next-page > a {
    font-size: 12px;
    padding: 14px 45px;
  }
  div.block-top-topic div.block-top-topic--next-page > a::after {
    content: "";
    position: absolute;
    width: 25px;
    height: 9px;
    background: url(../../img/usr/common/btn_arw_sp.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
div.block-top-topic div.block-top-topic--next-page > a:hover {
  filter: brightness(1.2);
}

/* フリーエリア
--------------------------------------- */
/* フリーエリア
--------------------------------------- */
#block_of_top_free2 {
  position: relative;
  background-color: #279d91;
  color: #ffffff;
  margin: 0 auto;
  padding: 100px 0;
  width: 100%;
}
@media screen and (min-width: 769px) {
  #block_of_top_free2::before, #block_of_top_free2::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    left: 0;
  }
  #block_of_top_free2::before {
    top: 100px;
  }
  #block_of_top_free2::after {
    bottom: 99px;
  }
  #block_of_top_free2 .top-content-inner {
    max-width: 1200px;
    margin: 0 auto;
    border-style: solid;
    border-width: 0 1px;
    border-color: rgba(255, 255, 255, 0.4);
    padding: 35px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 {
    padding: 65px 0 0;
  }
}
#block_of_top_free2 h2.block-top-title {
  color: #ffffff;
  font-size: 75px;
  font-weight: normal;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  line-height: 1.3;
  letter-spacing: -0.02em;
  text-align: left;
  padding: 0 45px 30px;
  margin: 0 auto;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 h2.block-top-title {
    font-size: 60px;
    padding: 0 24px 25px;
  }
}
#block_of_top_free2 h2.block-top-title > span {
  display: block;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.2em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 h2.block-top-title > span {
    font-size: 11px;
  }
}
#block_of_top_free2 h3.worksDetail__Title {
  width: 100%;
  color: #ffffff;
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 0;
  text-align: center;
  padding: 0 0 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 h3.worksDetail__Title {
    font-size: 16px;
    text-align: left;
  }
}
#block_of_top_free2 .worksDetail {
  max-width: 900px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  padding: 60px 30px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 .worksDetail {
    gap: 20px;
    padding: 20px 20px 60px;
  }
}
#block_of_top_free2 .worksDetail .worksDetail__kv img {
  max-width: 350px;
}
#block_of_top_free2 .worksDetail .worksDetail__date {
  width: 100%;
  text-align: left;
}
#block_of_top_free2 .worksDetail .worksDetail__date p {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 .worksDetail .worksDetail__date p {
    font-size: 13px;
  }
}
#block_of_top_free2 .worksDetail .worksDetail__date p:not(:last-child) {
  margin-bottom: 1em;
}
#block_of_top_free2 .block-top-more {
  width: 75%;
  max-width: 550px;
  margin: 30px auto 0;
}
#block_of_top_free2 .block-top-more > a.btn {
  display: block;
  position: relative;
  width: 100%;
  color: #ffffff;
  background-color: #111111;
  border: none;
  font-size: 14px;
  font-weight: normal;
  padding: 15px 45px;
  transition: 0.3s;
}
@media screen and (min-width: 769px) {
  #block_of_top_free2 .block-top-more > a.btn::after {
    content: "";
    position: absolute;
    width: 30px;
    height: 10px;
    background: url(../../img/usr/common/btn_arw_pc.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  #block_of_top_free2 .block-top-more > a.btn {
    font-size: 12px;
    padding: 14px 45px;
  }
  #block_of_top_free2 .block-top-more > a.btn::after {
    content: "";
    position: absolute;
    width: 25px;
    height: 9px;
    background: url(../../img/usr/common/btn_arw_sp.png) center center/contain no-repeat;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
  }
}
#block_of_top_free2 .block-top-more > a.btn:hover {
  filter: brightness(1.2);
}