@charset "UTF-8";

/*SP、PC共通スタイルここに*/
/* base */
.ftool-wrapper > .article,
.ftool-wrapper .description,
.ss-article-main-image,
.ftool-wrapper p {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.ftool-wrapper h2 {
  font-size: 1em;
} 

.ftool-wrapper h3 {
  margin-bottom: 0;
}

.ftool-wrapper #sec01 {
  margin: 0 calc(50% - 50vw);
  width: calc(100vw - 8px);
  max-width: calc(100vw - 8px);
  }

/* setting */
html,
body {
  max-width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  overflow-x: unset
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

p {
  margin-block-start: 0em;
  margin-block-end: 0em;
}

:root {
  --primary: #232323;
  --secondary: #F7F700;
  --background: #F3F3F0;
}

@media (hover: hover) {
  a:hover {
    opacity: 0.8;
    cursor: pointer;  
    text-decoration: none;
    transition: 0.1s;
  }  

}
/* setting */

/* credit */
.ftool-wrapper .ref-item .thumb {
  width: calc(140 / 375 * 100vw) !important;  
  padding-bottom: 5px;
  float: none !important;
}
.ftool-wrapper .ref-item {
  font-size: 11px;
  margin-bottom: 8px;
  float: none;
}
.ftool-wrapper .ref-item .brand {
  display: none;
}
.ftool-wrapper .ref-item .name {
  font-size: 11px;
}
.ftool-wrapper .ref-item .price {
  font-size: 11px;
}
.ftool-wrapper .ref-item .price.discount {
  color: #fc125d;
}

.ftool-wrapper .ref-item {
  margin-bottom: 0;
}

.ftool-wrapper .col--02--Y {
  width: 100% !important;
  max-width: 1280px !important;
}

.ftool-wrapper .line_up_two {
  padding-right: 10px;
  width: 100% !important;
}

#container .itemsBlock .item_reference_b--tpl-Y {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.35) transparent;
  -ms-overflow-style: auto;
  position: relative;
  z-index: 1;
}

/* Webkit（Chrome / Safari）スクロールバー */
#container .itemsBlock .item_reference_b--tpl-Y::-webkit-scrollbar {
  background: transparent !important;
}

#container .itemsBlock .item_reference_b--tpl-Y::-webkit-scrollbar-track {
  background: transparent !important;
}

#container .itemsBlock .item_reference_b--tpl-Y::-webkit-scrollbar-thumb {
  background-color: rgba(0,0,0,0.35) !important;
  border-radius: 3px;
  height: 5px;
}

/* 縦スクロールバーを非表示 */
#container .itemsBlock .item_reference_b--tpl-Y::-webkit-scrollbar:vertical {
  display: none;
}

#container .itemsBlock .item_reference_b--tpl .ref-item {
  margin: 0;
  width: auto;
  height: 100%;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

.ftool-wrapper .ref-item .brand, .ftool-wrapper .ref-item .name, .ftool-wrapper .ref-item .price {
  margin-left: 0;
}

.item_reference_b--tpl .description {
  display: none;
}

.item_reference_b--tpl .title {
  display: none;
}

.mb60 {
  margin-bottom: 0 !important;
}

#container {
  margin-inline: auto;
  font-size: 13px;
  line-height: 170%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal; 
  position: relative;
  color: var(--primary);
  background-color: var(--background);
  font-variant-numeric: lining-nums;
  width: 100vw;
}

.containerWrap {
  width: 100vw;
}

.leadBlock {
  width: 90%;
  margin-inline: auto;
  padding-top: calc(40 / 375 * 100vw);
}

.visualBlock {
  position: relative;
}

.visualBlock__logo {
  position: absolute;
  width: calc(324 / 375 * 100vw);
  left: 50%;
  bottom: 0;
  transform: translate(-50%, -50%);
}

#container .scrollLoop__item img {
  height: 36px;
  width: 756px;
}

.scrollLoop__item {
  height: 36px;
  width: 756px;
}

.itemsBlock__title {
  font-family: "marlide-display-variable", sans-serif;
  font-variation-settings: "wght" 400; 
  font-size: 48px;
  letter-spacing: 0.96px;
  line-height: 100%;
  text-align: center;
  padding-bottom: calc(48 / 375 * 100vw);
}

.categoryBlock__title,
.brandBlock__title,
.blogBlock__title {
  font-family: "marlide-display-variable", sans-serif;
  font-variation-settings: "wght" 400; 
  font-size: 48px;
  letter-spacing: 0.96px;
  line-height: 100%;
  text-align: center;
  padding-bottom: calc(24 / 375 * 100vw);
}

.categoryBlock__list,
.blogBlock__link,
.itemsBlock__link {
  font-family: "marlide-display-variable", sans-serif;
  font-variation-settings: "wght" 500; 
  font-size: 16px;
  letter-spacing: 0.8px;
  line-height: 100%;
}

.itemsBlock__link {
  padding-top: calc(32 / 375 * 100vw);
}

.itemsBlock__item.itemsBlock__item--01 .itemsBlock__logo {
  width: calc(110 / 375 * 100vw);
  margin-inline: auto;
}

.itemsBlock__item.itemsBlock__item--02 .itemsBlock__logo {
  width: calc(100 / 375 * 100vw);
  margin-inline: auto;
}

.itemsBlock__item.itemsBlock__item--03 .itemsBlock__logo {
  width: calc(120 / 375 * 100vw);
  margin-inline: auto;
}

.itemsBlock__item.itemsBlock__item--04 .itemsBlock__logo {
  width: calc(150 / 375 * 100vw);
  margin-inline: auto;
}

.itemsBlock__item {
  position: relative;
  padding-bottom: calc(64 / 375 * 100vw);
}

.marqueeBlock {
  padding-top: calc(80 / 375 * 100vw);
  padding-bottom: calc(80 / 375 * 100vw);
}

.marqueeBlock.marqueeBlock--custom {
  padding-top: calc(40 / 375 * 100vw);
}

.categoryBlock__list,
.brandBlock__list {
  width: 90%;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; 
  gap: 10px 0; 
}

.categoryBlock__listItem {
  width: calc(50% - 6px);
  list-style: none;
  background: #FFF;
  border: 1px solid var(--primary);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.brandBlock__listItem {
  width: calc(50% - 6px);
  list-style: none;
  background: #FFF;
  border: 1px solid var(--primary);
  display: flex;
  justify-content: center;
  align-items: center;
}

.brandBlock__listItem > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

#container .brandBlock__listItem img.logo {
  display: block;
  max-width: 100%;
  height: auto;
}

.categoryBlock__listItem {
  padding: 12px 0;
}

.brandBlock__listItem {
  height: calc(80 / 375 * 100vw);
}

.categoryBlock__listItem a {
  display: block;
  text-align: left;
  width: 85%;
  margin-inline: auto;
}

.categoryBlock__listItemText {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-inline: auto;
}

.categoryBlock__listItemText::after {
  content: "";
  display: inline-block;
  background-image: url("https://baycrews.jp/src/feature/20251218_laclasse/images/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 6px;
  height: 10px;
}

.categoryBlock,
.brandBlock {
  padding-bottom: calc(80 /375 * 100vw);
}

#container .brandBlock__listItem.brandBlock__listItem--01 .logo,
#container .brandBlock__listItem.brandBlock__listItem--03 .logo {
  width: calc(85 / 375 * 100vw);
  margin-inline: auto;
}

#container .brandBlock__listItem.brandBlock__listItem--02 .logo {
  width: calc(72 / 375 * 100vw);
  margin-inline: auto;
}

#container .brandBlock__listItem.brandBlock__listItem--04 .logo {
  width: calc(100 / 375 * 100vw);
  margin-inline: auto;
}

.blogBlock__inner {
  width: 90%;
  margin-inline: auto;
}

.blogBlock__link a,
.itemsBlock__link a {
  width: 90%;
  height: 35px;
  margin-inline: auto;
  list-style: none;
  background: #FFF;
  border: 1px solid var(--primary);
  display: flex;
  justify-content: center;
  align-items: center;
}

.blogBlock__linkText::after,
.itemsBlock__linkText::after {
  content: "";
  display: inline-block;
  background-image: url("https://baycrews.jp/src/feature/20251218_laclasse/images/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 6px;
  height: 10px;
  margin-left: 10px;
}

.l-col5.c-itemList.list01 {
  gap: 10px;
}

.l-col5.c-itemList.list01 .contents {
  width: calc(50% - 5px);
}

.l-col5.c-itemList.list01 .thumb {
  aspect-ratio: 1 / 1;
  width: 100%;       
  overflow: hidden;
}

.l-col5 {
  justify-content: space-between;
}

#container .contents-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.l-col5.c-itemList.list01 .contents-inner .title {
  font-size: 11px;
  font-weight: 400;
  margin-bottom: 3px;
}

.l-col5.c-itemList.list01 .contents-inner .shop {
  display: none;
}

.l-col5.c-itemList.list01 .contents-inner .shop {
  font-size: 10px;
}

.blogBlock__link {
  padding-top: calc(24 / 375 * 100vw);
}

.itemsBlock__inner {
  position: relative;
}

/* バッジ */
.itemsBlock__badge {
  position: absolute;
  width: calc(62 / 375 * 100vw);
  left: 2%;
  z-index: 3;
}

.itemsBlock__badge .title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: calc(50 / 375 * 100vw);
}

.itemsBlock__item.itemsBlock__item--01 .itemsBlock__badge {
  top: calc(27 / 375 * 100vw);
}
.itemsBlock__item.itemsBlock__item--02 .itemsBlock__badge {
  top: calc(48 / 375 * 100vw);
}
.itemsBlock__item.itemsBlock__item--03 .itemsBlock__badge {
  top: calc(17 / 375 * 100vw);
}
.itemsBlock__item.itemsBlock__item--04 .itemsBlock__badge {
  top: calc(20 / 375 * 100vw);
}

.itemsBlock {
  position: relative;
}

.item_reference_b--tpl-Y .ref-item:nth-of-type(3) {
  padding-left: calc(20 / 375 * 100vw);
}

.itemsBlock__logo {
  padding-bottom: calc(2 / 375 * 100vw);
}

.itemsBlock__item.itemsBlock__item--04 {
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
/*PC用スタイル*/

#container .itemsBlock .item_reference_b--tpl-Y {
  padding-bottom: 20px;
}

.leadBlock_lead {
  text-align: center;
}

.itemsBlock__logo {
  padding-bottom: calc(10 / 1280 * 100vw);
}

.itemsBlock__item.itemsBlock__item--01 .itemsBlock__badge {
  top: calc(38 / 1280 * 100vw);
}
.itemsBlock__item.itemsBlock__item--02 .itemsBlock__badge {
  top: calc(60 / 1280 * 100vw);
}
.itemsBlock__item.itemsBlock__item--03 .itemsBlock__badge {
  top: calc(28 / 1280 * 100vw);
}
.itemsBlock__item.itemsBlock__item--04 .itemsBlock__badge {
  top: calc(35 / 1280 * 100vw);
}

.itemsBlock__item {
  padding-bottom: calc(80 / 1280 * 100vw);
}

.itemsBlock__badge .title {
  width: calc(60 / 1280 * 100vw);
}

.itemsBlock__badge {
  width: calc(80 / 1280 * 100vw);
  left: 10%;
}

.ftool-wrapper .ref-item .thumb {
  width: calc(220 / 1280 * 100vw) !important;  
}

.itemsBlock__link {
  padding-top: calc(32 / 1280 * 100vw);
}

.blogBlock__link {
  padding-top: calc(40 / 1280 * 100vw);
}
.l-col5.c-itemList.list01 .contents {
  width: calc(50% - 8px);
}

.blogBlock__inner {
  width: calc(480 / 1280 * 100vw);
}

#container .brandBlock__listItem.brandBlock__listItem--01 .logo, #container .brandBlock__listItem.brandBlock__listItem--03 .logo {
  width: calc(85 / 1280 * 100vw);
}

#container .brandBlock__listItem.brandBlock__listItem--02 .logo {
  width: calc(72 / 1280 * 100vw);
}

#container .brandBlock__listItem.brandBlock__listItem--04 .logo {
  width: calc(100 / 1280 * 100vw);
}

.brandBlock__listItem {
  width: calc(50% - 8px);
  height: calc(80 / 1280 * 100vw);
}

.categoryBlock, .brandBlock {
  padding-bottom: calc(80 / 1280 * 100vw);
}

.categoryBlock__list, .brandBlock__list {
  width: calc(480 / 1280 * 100vw);
  gap: 16px 0;
}

.categoryBlock__listItem a {
  width: 90%;
}

.categoryBlock__listItem {
  width: calc(50% - 8px);
}

.categoryBlock__title, .brandBlock__title, .blogBlock__title {
  padding-bottom: calc(24 / 1280 * 100vw);
}

.blogBlock__link a, .itemsBlock__link a {
  width: calc(480 / 1280 * 100vw);
}

.itemsBlock__item.itemsBlock__item--01 .itemsBlock__logo {
  width: calc(110 / 1280 * 100vw);
}

.itemsBlock__item.itemsBlock__item--02 .itemsBlock__logo {
  width: calc(100 / 1280 * 100vw);
}

.itemsBlock__item.itemsBlock__item--03 .itemsBlock__logo {
  width: calc(120 / 1280 * 100vw);
}

.itemsBlock__item.itemsBlock__item--04 .itemsBlock__logo {
  width: calc(150 / 1280 * 100vw);
}

.itemsBlock__title {
  padding-bottom: calc(40 / 1280 * 100vw);
}

.marqueeBlock {
  padding-top: calc(80 / 1280 * 100vw);
  padding-bottom: calc(80 / 1280 * 100vw);
}

.marqueeBlock.marqueeBlock--custom {
  padding-top: calc(56 / 1280 * 100vw);
}

.leadBlock {
  width: calc(500 / 1280 * 100vw);
  padding-top: calc(56 / 1280 * 100vw);
}

.visualBlock__logo {
  width: calc(554 / 1280 * 100vw);
  bottom: 0;
}

.item_reference_b--tpl-Y .ref-item:nth-of-type(3) {
  padding-left: calc(80 / 1280 * 100vw);
}

#container .contentsBlock {
  max-width: 560px;
  margin: 0 auto;
 }

.br-sp {
  display: none;
}

.sp {
  display: none;
}  

}
/*PC用スタイルここまで*/

@media screen and (max-width: 767px) {
/*SP用スタイル*/

#container {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.pc {
  display: none;
}
/*SP用スタイルここまで*/
}

@media screen and (min-width: 1280px) {

.visualBlock {
  height: 100vh;
  overflow: hidden;  
}

.visualBlock__logo {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
}

/* fixed設定 */
.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}
.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}

.description > #container {
  overflow: visible;
}

@media screen and (max-width: 1002px) {
}
#container img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

#container .main__visual ,
.main__visual .visual_title ,
.main__visual {
text-align: center;
}

#container .main__visual.wrap.pc {
  width: auto;
}

#container .l-articleLayout__wrap {
  margin: 0 auto;
  display: flow-root;
}

@media screen and (max-width: 768px) {
  #container .l-articleLayout__wrap {
    width: 100%;
  }
}
#container .l-articleLayout__article {
  float: right;
  width: 50%;
  transition: 0.85s ease;
  position: relative;
  top: 0;
}
@media screen and (max-width: 768px) {
  #container .l-articleLayout__article {
    float: none;
    left: 0;
    margin: 0 auto;
    width: auto;
  }
}
#container .l-articleLayout__title {
  position: sticky !important;
  float: left;
  width: 50%;
}

#container .d-fixed-area {
  position: relative;
}

#container .d-fixed-element {
  position: absolute;
  top: 0;
}

#container .d-fixed-element.is-fixed {
  position: fixed;
}

#container .l-articleLayout {
  background-attachment: fixed;
  background-position: top left;
  background-size: cover;
}

#container .main__visual {
  position: relative;
}

#container .main__visual .title__wrap {
  position: absolute;
  top: 52%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 88%;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  #container #contents {
    width: 100%;
  }
}
/* fixed設定 */

/* fadeIn */
.fadeIn {
  transition: 1s;
  opacity: 0;
}

.fadeIn.animated {
  opacity: 1;
}

/* visualのフェードイン */
@keyframes visualFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.visual-fadeIn {
  opacity: 0;
}

.visual-fadeIn.show {
  animation: visualFadeIn 2s ease-out forwards;
}

/* バッジ回転 */
.itemsBlock__badge .bg {
  position: relative; 
  z-index: 1;
  animation: rotateBadge 12s linear infinite;
}

@keyframes rotateBadge {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* マーカーループ */
@keyframes infinity-scroll-left {
  from { transform: translateX(0); }
  to   { transform: translateX(-100%); }
  }
  .scrollLoop__wrap {
    display: flex;
    overflow: hidden;
  }

  .scrollLoop__list {
    display: flex;
    list-style: none;
    padding: 0;
  }

.imageSet {
  display: flex;
  flex-direction: column;
}

.scrollLoop__list--left {
  animation: infinity-scroll-left 50s infinite linear;
}

/* スクロールバー(SP用) */
@media (max-width: 767px) {
  #container .itemsBlock .item_reference_b--tpl-Y {
    scrollbar-width: none;
  }

  #container .itemsBlock .item_reference_b--tpl-Y::-webkit-scrollbar {
    display: none;
  }

  .fakeScrollbar {
    position: relative;
    height: 5px;
    margin-top: 10px;
    background: transparent;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
    border-radius: 3px;
  }

  .fakeScrollbar.is-visible {
    opacity: 1;
  }

  .fakeScrollbar__thumb {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0, 0, 0, 0.35);
    border-radius: 3px;
  }
}
