@charset "UTF-8";
/*=============================================================

	Date: 2026-02-02
	CSS Document ： flufeel BRA TOPS

=============================================================*/
/*------------------------------------
仮想LP用ベース
------------------------------------*/
.fca_cat-hero, .sr_page-shopping-result__free {
  overflow: visible !important;
}
.fca_cat-hero .sr_page-shopping-result__free .fca_container__in {
  /*max-width: 100%;*/
}
.fca_cat-hero .sr_page-shopping-result__free .fca_container {
  padding: 0;
}
.fca_page-shop-category__body {
  margin-top: 0;
}
#outer ul {
  padding: 0;
  list-style: none;
}
/*------------------------------------

ベース

------------------------------------*/
.pc {
  display: block;
}
.sp {
  display: none;
}
.bold_ct {
  font-weight: bold;
}
/*
.typesquare_option {
    transition: opacity .3s ease;
    opacity: 1 !important
}*/

/*------------------------------------

wrapper

------------------------------------*/
#wrapper {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.125rem;
  animation: fade_fl 0.7s both 0s;
}
@keyframes fade_fl {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#wrapper img {
  height: auto;
  max-width: 100%;
}
#wrapper-inner {
  margin: 0 auto;
  /* display: flex; */
  justify-content: center;
  /* align-items: flex-start; */
  /* flex-wrap: wrap; */
  max-width: 1170px;
  text-align: center;
}
#wrapper-inner > div {
  /* width: 50%; */
}
#main-contents {
  /*font-family: "Aoto Gothic Medium";*/
}
#wrapper a {
  text-decoration: none;
}
/* hover */
@media (hover: hover) {
  #wrapper a {
    transition: all 0.3s;
  }
  #wrapper a:hover {
    opacity: 0.8;
  }
}
/* ---------------------------------

キーカラー指定
color: var(--theme-color);	
font-family: var(--font-Montserrat);
font-family: var(--font-main-B);
--------------------------------- */ 
:root {
  --theme-color: #809AE6;
  --font-Montserrat: "Montserrat", "Aoto Gothic Medium", sans-serif;
  --font-main-B: "Aoto Gothic Medium", sans-serif;
}
/*------------------------------------

タイトル

------------------------------------*/
#fv-main {
  position: relative;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 95%;
  max-width: 768px;
  margin: 0 auto;
  container-type: inline-size;
}
#fv-main .fv-inner {
  position: relative;
  font-size: 2.7cqw;
}
#fv-main .fv-inner .fv-image {
  border-radius: 2em;
  max-height: 90vh;
  width: auto;
  display: block;
  margin: 0 auto;
}
#fv-main .fv-inner .fv-intro {
  position: absolute;
  /* width: 100%; */
  /* height: 100%; */
  top: 7.5%;
  right: 12%;
  font-size: 150%;
  line-height: 1.3;
  display: inline-block;
  margin: 0;
  text-align: start;
  /* white-space: nowrap; */
  letter-spacing: .05em;
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-feature-settings: 'vert'on;
  font-family: var(--font-Montserrat);
  animation: fade_fl 0.7s both 0.5s;
}
#fv-main .fv-inner .fv-txt {
  position: absolute;
  width: 100%;
  /* height: 100%; */
  top: 38%;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#fv-main .fv-inner .fv-txt .fv-ttl {
  color: #FFF;
  /* font-family: var(--font-Montserrat); */
  letter-spacing: .35em;
  font-weight: 500;
  text-shadow: 0 0 1em rgba(0, 0, 0, 0.5);
  margin: 8em 0 3em;
}
#fv-main .fv-inner .fv-txt .fv-ttl h2 {
  font-family: var(--font-Montserrat);
  font-weight: 250;
  font-size: 467%;
  line-height: 1.2;
  margin: 0;
}
#fv-main .fv-inner .fv-txt .fv-ttl p {
  margin: 0;
  letter-spacing: 0.3em;
  font-size: 120%;
  font-family: var(--font-Montserrat);
  animation: fade_fl 0.7s both 0.5s;
}
/*
@media (max-height: 700px) {
  #fv-main .fv-inner {
    font-size: 2.3vh;
  }
}
*/
/*------------------------------------

リード

------------------------------------*/
#lead-section {

  text-align: left;
  max-width: 768px;
  margin: 1.8em auto 5em;
  display: flex;
  justify-content: space-between;
  align-items: center; /* gap: 7%; */
}
#lead-section p {
    font-family: var(--font-Montserrat);
      animation: fade_fl 0.7s both 0.5s;
  margin: 0;
  margin-left: 1em;
  line-height: 1.9;
  font-size: 108%;
  letter-spacing: 0.15em;
}
#lead-section .lead-photo {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 57%;
  gap: 4%;
  position: relative;
}
#lead-section .lead-photo a {
  border-radius: 2em;
  overflow: hidden;
}
#lead-section .lead-photo a img {}
/*------------------------------------

ボタン共通

------------------------------------*/
.anchor-btn {}
.anchor-btn a {
  font-family: "Aoto Gothic Medium";
  border: 1px solid #000;
  background: rgba(255, 255, 255, 0.6);
  letter-spacing: 0.35em;
  padding: 1em 1.2em;
  min-width: 17em;
  display: block;
  margin: 0 auto;
  border-radius: 1.5em;
  position: relative;
  font-size: 123%;
}
.anchor-btn a span {}
.anchor-btn a::after {
  display: block;
  width: 1.4em;
  height: 100%;
  content: '';
  background-image: url(../images/arrow_bottom.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 98%;
  position: absolute;
  top: 0;
  right: 1.6em;
  transition: all 0.2s;
}
@media (hover: hover) {
  .anchor-btn a:hover::after {
    top: 0.2em;
  }
}
.check-btn {
  padding: 0.4em;
  /* line-height: 1; */
  /* width: fit-content; */
  /* margin: 0; */
  border-radius: 50%;
  position: relative;
  font-size: 76%;
  color: #FFF;
  /* font-family: var(--font-Montserrat); */
  /* letter-spacing: .25em; */
  /* font-weight: 500; */
  background: var(--theme-color);
  display: flex;
  justify-content: center;
  align-items: center;
}
.check-btn a span {}
.check-btn::after {
  display: inline-block;
  width: 0.7em;
  aspect-ratio: 1/1;
  content: '';
  background-image: url(../images/check_arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 98%;
  transition: all 0.2s;
}
/*------------------------------------

見出し共通

------------------------------------*/
.section-header {
  text-align: center;
  margin: 2em 0 3em;
}
.section-header .section-header-main {
  color: var(--theme-color);
  letter-spacing: .20em;
  font-family: var(--font-Montserrat);
  font-weight: 270;
  font-size: 3.5em;
  line-height: 1.2;
  margin-bottom: 0.15em;
}
.section-header .section-header-sub {
  font-family: "Aoto Gothic Medium";
  font-size: 96%;
  letter-spacing: 0.35em;
}
/*------------------------------------

NEW

------------------------------------*/
#new-section {
  margin: 0 0 4em;
}
/*------------------------------------

Pick up

------------------------------------*/
#pickup-section {}
/* swiper */
#wrapper-inner .swiper {}
#wrapper-inner .swiper .swiper-wrapper {}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide {
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div {
  width: 94%;
  margin: 0 auto;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div h3 {
  font-family: "Aoto Gothic Medium";
  color: var(--theme-color);
  text-align: center;
  letter-spacing: 0.15em;
  font-size: 115%;
  line-height: 1.4;
  margin: 0 0 0.8em;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div .main-image {}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div .main-image img {
  border-radius: 1.5em;
}
.item-txt {
  /* width: 96%; */
  margin: 0 auto;
  font-size: 108%;
  position: absolute;
  bottom: 0.7em;
  right: 6%;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div .name_fl {
  font-size: 85%;
  line-height: 1.7;
  letter-spacing: 0.1em;
  margin: 1em 0.3em;
  text-align: justify;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div .price_fl {
  margin: 0;
  /* letter-spacing: 0.05em; */
  font-family: "Roboto", sans-serif;
  font-weight:400;
  font-size: 93%;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  flex-wrap: wrap;
  line-height: 1;
  gap: 0.3em 0.5em;
}
.price-wrap {
  text-shadow: 0 0 1em rgba(255, 255, 255, 1.0);
  text-align:left;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div .price_fl .specialprice_fl {
  color: #d7063b;
  display: block;
}
#wrapper-inner .swiper .swiper-wrapper .swiper-slide > div .price_fl .check-btn {}
/* If we need pagination */
#wrapper-inner .swiper .swiper-pagination {}
/* If we need navigation buttons */
#wrapper-inner .swiper .swiper-button-prev {
  left: -1.9em;
}
#wrapper-inner .swiper .swiper-button-next {
  right: -1.9em;
}
/* 前へ次への矢印カスタマイズ */
#wrapper-inner .swiper .swiper-button-prev, #wrapper-inner .swiper .swiper-button-next {
  height: auto;
  aspect-ratio: 1/1;
  width: 3.8em;
  margin: 0;
  transition: all 0.2s;
  top: 43%;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  display: flex;
  justify-content: right;
  align-items: center;
  padding: 0.4em;
  box-shadow: 0 0 0.1em rgba(0, 0, 0, 0.3);
}
#wrapper-inner .swiper .swiper-button-prev {}
#wrapper-inner .swiper .swiper-button-next {
  justify-content: left;
}
#wrapper-inner .swiper .swiper-button-prev::after, #wrapper-inner .swiper .swiper-button-next::after {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: "";
  /* height: 100%; */
  /* margin: auto; */
  width: 50%;
  aspect-ratio: 1;
  font-size: 0;
  display: block;
}
/* 前へ次への矢印カスタマイズ */
#wrapper-inner .swiper .swiper-button-prev::after {
  background-image: url('../images/slide_prev.svg');
}
#wrapper-inner .swiper .swiper-button-next::after {
  background-image: url('../images/slide_next.svg');
}
@media (hover: hover) {
  #wrapper-inner .swiper .swiper-button-prev:hover {
    transform: translateX(-0.3em);
  }
  #wrapper-inner .swiper .swiper-button-next:hover {
    transform: translateX(0.3em);
  }
}
#wrapper-inner .swiper .swiper-pagination {
  position: static;
  margin: 1em auto 2em;
  width: max-content;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.3em;
}
#wrapper-inner .swiper .swiper-pagination-bullet {
  opacity: 1;
  background: #FFF;
  border: 1px solid #999999;
  width: 0.55em;
  /* height: 0.8em; */
  aspect-ratio: 1/1;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
#wrapper-inner .swiper .swiper-pagination-bullet-active {
  border: 1px solid var(--theme-color);
  background: var(--theme-color);
}
/*------------------------------------

swiper アニメーション

------------------------------------*/
#wrapper-inner .pickup-title .line {
  display: block;
}
/**/
#wrapper-inner .pickup-title .line {
  opacity: 0.4;
  transition: all 0.5s;
}
/*
#wrapper-inner  .swiper-slide-next .pickup-title .line {
    opacity: 0;
     transition: all 0s;
}
*/

#wrapper-inner .swiper-slide .pickup-title .line {
  white-space:nowrap;
}
#wrapper-inner .swiper-slide:not(.swiper-slide-active) .pickup-title .char {
  opacity: 1 !important;
  animation: none !important;
}
#wrapper-inner .swiper-slide-active .pickup-title .line {
  opacity: 1;
  transition: all 0s;
}
#wrapper-inner .swiper-slide-active .pickup-title .char {
  display: inline-block;
  /*opacity: 1;*/
  /*transform: translateY(0.5em);*/
}
@keyframes charFadeUp {
  0% {
    /*opacity: 0;*/
  }
  50% {
    transform: scale(1.09)
  }
  100% {
    opacity: 1;
  }
}
/*------------------------------------

レビュー

------------------------------------*/
#review-section {
  margin: 6em 0 0;
}
#wrapper-inner #review-section .swiper .swiper-button-prev, #wrapper-inner #review-section .swiper .swiper-button-next {
  top: 34%;
}
/* タイトル */
#review-section .section-header {
  margin: 1em 0;
}
#review-section .section-header .section-header-main {}
#review-section .section-header .section-header-sub {}
/* swiper */
#review-section .swiper.review-list {
  padding: 1em 0 0 0;
}
#review-output_fl {
  margin-bottom: 3em;
}
#wrapper-inner .swiper #review-output_fl.swiper-wrapper .swiper-slide {
  width: 50%;
}
#wrapper-inner #review-output_fl .swiper-slide .review-item {
  width: 89%;
}
#review-output_fl .swiper-slide .review-item a {
  display: flex;
  justify-content: center;
  align-items: center;
}
#review-output_fl .swiper-slide .review-item a .review-main {
  border: 1px solid #000;
  border-radius: 1.6em;
  padding: 1em 1.3em;
  text-align: justify;
  width: 45%;
  flex-shrink: 0;
  margin-bottom: 1em;
  background: rgba(255, 255, 255, 0.7);
  margin-right: -3%;
  position: relative;
  transition: all 0.5s;
  font-family: var(--font-Montserrat);
}
#review-output_fl .swiper-slide .review-item a .review-main::after {
  display: block;
  width: 1.6em;
  aspect-ratio: 1/1;
  content: '';
  background-image: url(../images/review_arrow.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 94%;
  left: 56%; /* mix-blend-mode: multiply; */
}
#review-output_fl .swiper-slide .review-item a .review-main .review-star {
  color: #CCCCCC;
  font-size: 125%;
  letter-spacing: 0.05em;
}
#review-output_fl .swiper-slide .review-item a .review-main .review-star .valid {
  color: #B3840E;
  display: inline-block;
}
#review-output_fl .swiper-slide .review-item a .review-main p {
  margin: 0.6em 0 0.3em; /* font-size: 90%; */ line-height: 1.6;
}
#review-output_fl .swiper-slide .review-item a .review-main .review-name {
  font-size: 75%;
  text-align: right;
  display: block;
  position: relative;
  z-index: 1;
  font-family: "Aoto Gothic Medium";
}
#review-output_fl .swiper-slide .review-item a .main-image {
  margin: 0em 0 0px;
}
#review-output_fl .swiper-slide .review-item a .main-image img {}
#review-output_fl .swiper-slide .review-item a .item-txt {
  position: absolute;
  bottom: auto;
  top: 103%;
  right: 6%;
}
#review-output_fl .swiper-slide .review-item a .item-txt .price_fl {}
#review-output_fl .swiper-slide .review-item a .item-txt .price_fl .price-wrap {}
#review-output_fl .swiper-slide .review-item a .item-txt .price_fl .check-btn {}
#review-output_fl .swiper-slide .review-item {
  display: inline-block;
  /*opacity: 1;*/
  /*transform: translateY(0.5em);*/
  font-family: "Aoto Gothic Medium";
}
#review-output_fl .swiper-slide-active .review-main {
  transform: translateY(-1em)
}
#review-output_fl .swiper-slide-active .review-star .valid {
  animation: starFadeUp 0.8s both 0s;
}
#review-output_fl .swiper-slide-active .review-star .valid:nth-child(1) {
  animation-delay: 0.0s;
}
#review-output_fl .swiper-slide-active .review-star .valid:nth-child(2) {
  animation-delay: 0.2s;
}
#review-output_fl .swiper-slide-active .review-star .valid:nth-child(3) {
  animation-delay: 0.4s;
}
#review-output_fl .swiper-slide-active .review-star .valid:nth-child(4) {
  animation-delay: 0.6s;
}
#review-output_fl .swiper-slide-active .review-star .valid:nth-child(5) {
  animation-delay: 0.8s;
}
@keyframes starFadeUp {
  0% {
    transform: scale(1)
  }
  50% {
    transform: scale(1.2);
    color: #D59C00;
  }
  100% {
    transform: scale(1.0)
  }
}
/*===================================

スマホ

===================================*/
@media (min-width: 768px) and (max-width: 1170px) {
  #main-contents {
    font-size: 1.7vw;
  }
  #fv-main .fv-inner {
    /* font-size: 1.3vw; */
  }
}
@media (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  #wrapper {
    font-size: 3.8vw;
  }
  #wrapper-inner {
    display: block;
  }
  #wrapper-inner > div {
    position: static;
    height: auto;
    padding: 0;
    width: 100%;
  }

.section-header .section-header-main {
  font-size:220%;
}
  #wrapper-inner .swiper-slide .pickup-title .line {
  font-size:90%;
}
  /*------------------------------------

タイトル

------------------------------------*/
  #fv-main {}
  #fv-main::before {
    display: none;
  }
  #fv-main .fv-inner {
    width: 100%;
    max-height: none; /* font-size: 3.8vw; */ padding: 0;
  }
  #fv-main .fv-inner .fv-image {
    max-height: none;
    width: 100%;
    border-radius: 0;
  }

  /*------------------------------------

見出し共通

------------------------------------*/
  .section-header {
    margin: 1.7em 0 2.3em;
  }
/*------------------------------------

リード

------------------------------------*/
#lead-section {
    width: 90%;
}

#lead-section p {
    font-size: 88%;
    margin: 0;
}

#lead-section .lead-photo {
    width: 43%;
}

#lead-section .lead-photo a {}
#lead-section .lead-photo a:nth-child(2) {
  position:absolute;
  top:0;
  left:0;
}
#lead-section .lead-photo a img {}


#wrapper-inner .swiper  .swiper-wrapper .swiper-slide {
    width: 82%;
}
#wrapper-inner .swiper #review-output_fl.swiper-wrapper .swiper-slide {
  width: 50%;
}

    .sub02 {
        opacity: 0;
        transition: all 0.5s;
        pointer-events: none;
    }
    
    .sub02.on {
        opacity: 1;
        pointer-events: all;
    }


/*------------------------------------

レビュー

------------------------------------*/
#review-section {
    margin: 4em 0 0;
}
#wrapper-inner #review-section .swiper .swiper-button-prev, #wrapper-inner #review-section .swiper .swiper-button-next { }
/* タイトル */
#review-section .section-header { }
#review-section .section-header .section-header-main { }
#review-section .section-header .section-header-sub { }
/* swiper */
#review-section .swiper.review-list { }
#review-output_fl { }
#wrapper-inner .swiper #review-output_fl.swiper-wrapper .swiper-slide {width: 99%;}
#wrapper-inner #review-output_fl .swiper-slide .review-item {font-size: 95%;}
#review-output_fl .swiper-slide .review-item a { }
#review-output_fl .swiper-slide .review-item a .review-main {width: 50%; }
#review-output_fl .swiper-slide .review-item a .review-main::after { }
#review-output_fl .swiper-slide .review-item a .review-main .review-star { }
#review-output_fl .swiper-slide .review-item a .review-main .review-star .valid { }
#review-output_fl .swiper-slide .review-item a .review-main p { }
#review-output_fl .swiper-slide .review-item a .review-main .review-name { }
#review-output_fl .swiper-slide .review-item a .main-image { }
#review-output_fl .swiper-slide .review-item a .main-image img { }
#review-output_fl .swiper-slide .review-item a .item-txt { }
#review-output_fl .swiper-slide .review-item a .item-txt .price_fl { }
#review-output_fl .swiper-slide .review-item a .item-txt .price_fl .price-wrap { }
#review-output_fl .swiper-slide .review-item a .item-txt .price_fl .check-btn { }
#review-output_fl .swiper-slide .review-item { }
  
}