@charset "UTF-8";

/* ------------------------------------------------------------
カテゴリページ
------------------------------------------------------------ */
#rv1d{
  overflow: hidden;
}

.contents_wrap li{
  list-style: none;
}

.fv{
  position: relative;
}
.fv_logo{
  width: 62.2%;
  position: absolute;
  top: 3.7%;
  left: 0;
  right: 0;
  margin:auto;
}
.fv_catch{
  width: 99.1%;
  position: absolute;
  top: 59.27%;
  left: 0;
  right: 0;
  margin:auto;
}
.fv_lens{
  width: 88%;
  top: 81.49%;
  position: absolute;
  left: 0;
  right: 0;
  margin:auto;
}

.newColor{
  background-color: #dedee0;
  position: relative;
  padding-bottom: 183%;
}
.newColor_title{
  position: absolute;
  top: 1.51%;
  left: 0;
  right: 0;
  margin:auto;
  width: 95.8%;
}
.newColor_image{
  position: absolute;
  top: 17%;
  left: 24%;
  width: 31%;
  z-index: 2;
}
.newColor_image + .newColor_image{
  position: absolute;
  top: 20.6%;
  left: 45%;
  width: 31.5%;
  z-index: 1;
}
.newColor_list{
  position: absolute;
  top: 37.4%;
}
.newColor_list_item{
  width: 98.5%;
  margin-bottom: 8.9%;
}
.newColor_list_item img{
  margin-left: -5px;
}
.newColor_list_item:last-child{
  width: 98.9%;
  margin-bottom: 0;
}

.awards{
  width: 90.1%;
  margin: 18% auto;
}

.lineUP_title{
  width: 40.8%;
  margin: 0 auto 6%;
}

.lineUP_color_list{
  display: flex;
  flex-wrap: wrap;
  margin: 0 3.2% 7.5%;
}
.lineUP_color_list_item:nth-child(1),
.lineUP_color_list_item:nth-child(2){
  flex-basis: 50%;
}
.lineUP_color_list_item{
  flex-basis: 33.33333%;
}

.lineUP_color_chart{
  margin-bottom: 3%;
}

.lineUP_color_btn{
  width: 90.2%;
  margin:0 auto 8.8%;
}

.lineUP_circle_list{
  display: flex;
  flex-wrap: wrap;
  margin: 0 3.2% 6.8%;
}
.lineUP_circle_list_item:first-child{
  flex-basis: 100%;
}
.lineUP_circle_list_item{
  flex-basis: 33.33333%;
}

.lineUP_circle_chart{
  margin: 0 auto 3.3%;
}

.lineUP_circle_btn{
  width: 90.2%;
  margin:0 auto 8.8%;
}

.color_price_subTitle{
  width: 28.9%;
  margin: 0 auto 4%;
}
.color_price{
  position: relative;

}
.color_price_2set_btn{
  position: absolute;
  top: 42.5%;
  left: 0;
  right: 0;
  margin: auto;
  width: 90%;
}
.color_price_subsc_btn{
  position: absolute;
  top: 71%;
  left: 0;
  right: 0;
  margin: auto;
  width: 90%;
}

.circle_price_subTitle{
  width: 28.9%;
  margin: 0 auto 4%;
}
.circle_price{
  position: relative;
}
.circle_price_2set_btn{
  position: absolute;
  top: 42%;
  left: 0;
  right: 0;
  margin: auto;
  width: 90%;
}
.circle_price_subsc_btn{
  position: absolute;
  top: 70%;
  left: 0;
  right: 0;
  margin: auto;
  width: 90%;
}
.lensSpec{
  background-color: #c1c1c3;
  padding-bottom: 18%;
}
.profile{
  margin:18% 0;
}

.profile_subTitle{
  width: 84.3%;
  margin: 0 auto 6%;
}
.profile_image{
  width: 76%;
  margin: 0 auto;
}
.logo{
  width: 36%;
  margin: 0 auto;
}
.aniv_wrap{
  position: relative;
}
.aniv_color_btn{
  position: absolute;
  top: 74.9%;
  left: 0;
  right: 0;
  margin: auto;
  width: 80.2%;
}
.aniv_circle_btn{
  position: absolute;
  top: 85.4%;
  left: 0;
  right: 0;
  margin: auto;
  width: 80.2%;
}

/* シンプルフェードアップ */
.fadeUp {
  opacity: 0;
  transform: translateY(20px); /* 少し下に配置 */
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}
.fadeUp.active {
  opacity: 1;
  transform: translateY(0);
}
/* 遅延時間を transition-delay で指定する */
.fadeUp.delay1 { transition-delay: 0s; }
.fadeUp.delay2 { transition-delay: 0.1s; }
.fadeUp.delay3 { transition-delay: 0.2s; }
.fadeUp.delay4 { transition-delay: 0.3s; }
.fadeUp.delay5 { transition-delay: 0.4s; }
.fadeUp.delay6 { transition-delay: 0.5s; }
.fadeUp.delay7 { transition-delay: 0.6s; }
.fadeUp.delay8 { transition-delay: 0.7s; }
.fadeUp.delay9 { transition-delay: 0.8s; }

/* シンプルフェードダウン */
.fadeDown {
  opacity: 0;
  transform: translateY(-20px); /* 少し上に配置 */
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}
.fadeDown.active {
  opacity: 1;
  transform: translateY(0);
}

/* シンプルフェードイン */
.fadeIn {
  opacity: 0;
  transition: opacity 0.4s ease-out;
}
.fadeIn.active {
  opacity: 1;
}
/* 遅延時間を transition-delay で指定する */
.fadeIn.delay1 { transition-delay: 0.2s; }
.fadeIn.delay2 { transition-delay: 0.5s; }
.fadeIn.delay3 { transition-delay: 0.8s; }
.fadeIn.delay4 { transition-delay: 1.1s; }

/* 右から左 */
.fadeRight {
  opacity: 0;
  transform: translateX(30px);
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}
.fadeRight.active {
  opacity: 1;
  transform: translateX(0);
}

/* 左から右  */
.fadeLeft {
  opacity: 0;
  transform: translateX(-30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.fadeLeft.active {
  opacity: 1;
  transform: translateX(0);
}

/* ------------------------------------------------------------
商品ページ
------------------------------------------------------------ */
.rv1dLp .lp_head + .lp_head{
  margin-top: 15px;
}
.rv1dLp .newColor{
  padding-bottom: 185%;
}
.rv1dLp .lineUP{
  background-color: #fff;
  margin-top: -2px;
  padding-top: 20px;
  position: relative;
  z-index: 2;
}
.rv1dLp .aniv{
  background-color: #c1c1c3;
}
.rv1dLp .aniv_color_btn{
  top: 79.2%;
}
.rv1dLp .aniv_circle_btn{
  top: 89.1%;
}

/* 注意事項 */
.aniv_notice{
  margin: 0 auto;
  padding: 0 5% 5%;
  width: 90%;
  text-align: center;
  position: relative;
}
.aniv_notice_bgNewcolor{
  background-color: #3c3c3c;
}
.aniv_notice_bgSticker{
  background-color: #fff;
}
.aniv_notice_details{
  background-color: #fff;
  border-radius: 100px;
  border: 2px solid #3c3c3c;
  padding: 14px 0;
}
.aniv_notice_details[open]{
  border-radius: 28px;
}
.aniv_notice_summary{
  cursor: pointer;
  list-style: none;
  padding: 3px 9.6% 3px 7.2%;
}
.aniv_notice_summary::before{
  content: "";
  position: absolute;
  right: 9.2%;
  top: 24px;
  border: solid transparent;
  border-top-color: #3c3c3c;
  border-width: 10px 7px 0 7px;
}
.aniv_notice_details[open] .aniv_notice_summary::before{
  transform: rotate(180deg);
}
.aniv_notice_block{
  padding: 5%;
}
.aniv_notice_text{
  font-size: 1.4rem;
  line-height: 2rem;
  text-align: left;
  margin-bottom: 20px;
}
.aniv_notice_list + .aniv_notice_list{
  margin-top: 20px;
}
.aniv_notice_item{
  font-size: 1.4rem;
  list-style: none;
  line-height: 1.8rem;
  margin-bottom: 5px;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
}
.aniv_notice_item_fontSmall{
  font-size: 1.2rem;
}
.aniv_notice_sideNote{
  margin-top: 5px;
  font-size: 1.2rem;
}
.aniv_notice_emphasis{
  color: #d50036;
}

/* lineUP */
.lineUP_mb{
  margin-bottom: 13%;
}

/* 定期バナー */
.color_price_btn,
.circle_price_btn{
  width: 90%;
  margin: 7% auto 0;
}
.color_price_btn a{
  display: block;
  border: 2px solid #3d3d3d;
}
.circle_price_btn a{
  display: block;
  border: 2px solid #ebabbe;
}

/* ReVIA Products */
.other_products{
  margin-top: 40px;
}
.other_products_title{
  background-color: #333;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  padding: 10px 15px;
  text-align: left;
}
.other_products_image{
  margin-bottom: 30px;
}
.other_products_subTitle{
  font-size: 1.4rem;
  color: #3c3c3c;
  margin: 6px 0 0;
}
.other_products_lineup{
  margin-top: 10px;
}

/* よくある質問 */
.productContent{
  margin-top: 10%;
}
.productContent_title{
  width: 29%;
  margin: 0 auto 5.5%;
}
.productFaq{
  background-color: #c1c1c3;
}
.productFaq_summary{
  background-color: #3c3c3c;
}
.productFaq_title,
.productFaq_subTitle{
  color: #fff;
}
.productFaq_answer{
  background-image: url(https://fatp275ehc.user-space.cdn.idcfcloud.net/images/pc/type/se_revia1d_26/icon_a_red.svg) ;
  background-position: left 5% top 26px;
  background-repeat: no-repeat;
  background-size: 16px;
  background-color: #fff;
}
.productFaq_text{
  font-weight: 500;
}

/* よくある質問（circle） */
.productContent_circle .productFaq{
  background-color: #eaa0b9;
}
.productContent_circle .productFaq_summary{
  background-color: #f5d2d8;
  background-image: url(/images/pc/product/arrow_product_faq.svg), url(/images/pc/product/icon_q_gray.svg);
  color: #3c3c3c;
}
.productContent_circle .productFaq_details[open] .productFaq_summary {
  background-image: url(/images/pc/product/arrow_product_faq_close.svg), url(/images/pc/product/icon_q_gray.svg);
}