@charset "UTF-8";


/* =============================================================

    TOP PAGE CSS

============================================================= */


/*//////////////////////////////////////////////////

　　　　　　　　　　ALL SETTING

//////////////////////////////////////////////////*/


/* 全体
============================================================= */


/* JavaScriptが有効な場合、対象を隠す */

html.enable-javascript #container {
  visibility: hidden;
  transition: opacity 1s, visibility 0s ease 1s;
  opacity: 0;
}


/* 画像すべてを読み終えたら、対象を表示する */

html.enable-javascript.window-load #container {
  visibility: visible;
  transition-delay: 0s;
  opacity: 1;
}

html.hd-open {
  overflow: hidden;
}


/* フォント
============================================================= */

@font-face {
  font-family: 'davis-sans';
  src: url(/location/of/font/myfont.ttf);
}

/* 共通
============================================================= */


/* Wrap
============================================================= */

#Wrap {
  width: 100%;
  margin-top: 0;
}

#Wrap,
#Wrap * {
  box-sizing: border-box;
}

.contentsWrap {
  display: block;
  margin: 0 auto;
}

/*-----------------------------
SUB BUNNER
-----------------------------*/

.sub-bnr {
  margin-top: 8rem;
}

.sub-bnr img {
  width: 100%;
}


/*-----------------------------
POP IMG
-----------------------------*/

.pop_img {
  width: 600px;
  margin: 0 auto 60px;
}

.pop_img img {
  width: 100%;
}

@media screen and (min-width: 768px) and (max-width: 1600px) {
  .pop_img {
    width: calc(600* (100vw / 1600));
    margin: 0 auto calc(100* (100vw / 1600));
  }
}

@media only screen and (max-width: 767px) {
  .pop_img {
    width: calc(600* (100vw / 750));
    margin: 0 auto;
  }
  .wapper {
    padding-bottom: calc( 150 * (100vw / 750));
  }
}


/*-----------------------------
商品レビュー
-----------------------------*/

.rate {
  position: relative;
  display: inline-block;
  width: 7rem;
  height: 1.6rem;
  font-size: 1.6rem;
  letter-spacing: 0;
}

.rate:before,
.rate:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "★★★★★";
  display: inline-block;
  height: 1.6rem;
  line-height: 1.6rem;
  letter-spacing: 0;
}

.rate:before {
  color: #ddd;
}

.rate:after {
  color: #ffa500;
  overflow: hidden;
  white-space: nowrap;
}

.rate0:after {
  width: 0;
}

.rate0-1:after,
.rate0-2:after,
.rate0-3:after,
.rate0-4:after.rate0-5:after {
  width: .8rem;
}

.rate0-6:after,
.rate0-7:after,
.rate0-8:after,
.rate0-9:after,
.rate1:after {
  width: 1.6rem;
}

.rate1-1:after,
.rate1-2:after,
.rate1-3:after,
.rate1-4:after,
.rate1-5:after {
  width: 2.4rem;
}

.rate1-6:after,
.rate1-7:after,
.rate1-8:after,
.rate1-9:after,
.rate2:after {
  width: 3.2rem;
}

.rate2-1:after,
.rate2-2:after,
.rate2-3:after,
.rate2-4:after,
.rate2-5:after {
  width: 4.0rem;
}

.rate2-6:after,
.rate2-7:after,
.rate2-8:after,
.rate2-9:after,
.rate3:after {
  width: 4.8rem;
}

.rate3-1:after,
.rate3-2:after,
.rate3-3:after,
.rate3-4:after,
.rate3-5:after {
  width: 5.6rem;
}

.rate3-6:after,
.rate3-7:after,
.rate3-8:after,
.rate3-9:after,
.rate4:after {
  width: 6.4rem;
}

.rate4-1:after,
.rate4-2:after,
.rate4-3:after,
.rate4-4:after,
.rate4-5:after {
  width: 7.2rem;
}

.rate4-6:after,
.rate4-7:after,
.rate4-8:after,
.rate4-9:after,
.rate5:after {
  width: 8.0rem;
}

.wrap {
  width: 10rem;
  margin: 0 auto;
}

.reviewFeature__RankingParts {
  margin-top: 1rem;
  font-size: 1.3rem;
}

.reviewFeature__RankingParts .num {
  margin-left: .5rem;
  margin-top: .2rem;
  padding-left: 1rem;
  font-size: 1.4rem;
}

.reviewFeature__RankingParts .ken {
  margin-left: .2rem;
  margin-top: .2rem;
  font-size: 1.4rem;
  text-align: left;
}

.reviewFeature__RankingParts a {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.reviewFeature__RankingParts a:hover {
  opacity: 0.8;
}

/* HEADER BANNER TOP ONLY
============================================================= */

.cam_bnr_wrap {
  position: relative;
  z-index: 9999;
}


/* SECTION COMMON
============================================================= */

.top_section_inner {
  width: 136rem;
  max-width: 100%;
  margin: auto;
  padding-top: 12rem;
}

.top_section_inner img {
  max-width: 100%;
}

/* ---- SECTION TITLE ---- */
.section_ttl {
  display: block;
  width: 100%;
  position: relative;
  margin-bottom: 5rem;
  font-size: 5.4rem;
  font-weight: 100;
  letter-spacing: .05em;
  line-height: 1;
  color: #000;
  text-align: center;
}

.section_ttl .txt_ja {
  display: block;
  padding: 1rem 0 0;
  font-size: 1.7rem;
  letter-spacing: 0;
  color: #5F5F5F;
  text-align: center;
}

.section_ttl .txt_ja span {
  letter-spacing: .05em;
}

/* ---- SECTION SUB TITLE ---- */
.section_sub_ttl {

}


/* MV SECTION
============================================================= */

.top_mainvisual_section .top_section_inner {
  margin: 0;
  padding-top: 0;
  width: 100%;
}

.fv_wrap {
  transition: opacity .4s ease-in-out;
  opacity: .4;
  max-width: 100%;
}

.fv_block {
  position: relative;
  z-index: 0;
}

.fv_block .fv_img {
  position: relative;
  margin: 0 3.5rem;
  width: 110rem;
}

.fv_block .fv_img .btn_wrap {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 2.7rem;
}

.fv_block .fv_wrap {
  display: none;
}

.fv_block .fv_wrap:first-child,
.fv_block.slick-slider .fv_wrap {
  display: block;
}

.fv_block .fv_text {
  margin-top: 2.4rem;
  color: #000000;
  font-family: 'futura-pt', sans-serif;
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: center;
  min-height: 4.4rem;
}

.fv_block .slick-active {
  transition: opacity .4s ease-in-out;
  opacity: 1;
}

.fv_block .slick-track {
  padding-inline: calc((100vw - 136rem) / 2);
  box-sizing: content-box;
}

.fv_block .slide-arrow {
  position: absolute;
  top: 31.2rem;
  width: 5.4rem;
  height: 5.4rem;
  background-image: url(/Contents/ImagesPkg/common/top_slider-arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  border: none;
  background-color: unset;
  z-index: 2;
}

.fv_block .prev-arrow {
  left: calc((100vw - 122.6rem) / 2);
}

.fv_block .next-arrow {
  right: calc((100vw - 122.6rem) / 2);
  transform: scale(-1, 1);
}

@media screen and (min-width: 768px) and (max-width: 1240px) {
  .fv_block .prev-arrow {
    left: 5.2%;
  }

  .fv_block .next-arrow {
    right: 5.2%;
  }
}

/* ---- ボタン　共通設定 ---- */

.btn_wrap {
  margin-top: 5.8rem;
}

.btn_wrap .btn_link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 35.6rem;
  height: 4.6rem;
  margin: auto;
  background: #787878;
  color: #fff;
  font-size: 1.7rem;
  text-align: center;
}

.btn_wrap .btn_link::before {
  position: absolute;
  top: 50%;
  right: 1.8rem;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  width: .5rem;
  height: .5rem;
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-50%) rotate(45deg);
  content: "";
}

.fv_block .fv_img .btn_wrap .btn_link {
  color: #787878;
  background: #fff;
}

.fv_block .fv_img .btn_wrap .btn_link::before {
  border-color: #787878;
}

.fv_block .fv_txt {
  padding: 2rem 0;
  font-size: 3.3rem;
  text-align: center;
}

.fv_block .slick-dots {
  display: block !important;
  position: static;
  margin-top: 3rem;
}

.fv_block .slick-dots li {
  height: .8rem;
  width: .8rem;
  margin: 0 1.1rem;
}

.fv_block .slick-dots li button {
  height: inherit;
  width: inherit;
  border-radius: 100%;
  padding: 0;
  cursor: pointer;
  background: #C0C0C0;
}

.fv_block .slick-dots li.slick-active button {
  background: #000000;
}

.fv_block .slick-dots li button:before {
  height: .4rem;
  width: .4rem;
  color: transparent;
}


/* for sp */

@media only screen and (max-width: 767px) {
  .fv_block .slick-dots {
    margin-top: calc(13* (100vw / 375));
  }

  .fv_block .slick-dots li {
    width: calc(6* (100vw / 375));
    height: calc(6* (100vw / 375));
    margin: 0 calc(8* (100vw / 375));
  }


}

.header_bnr {
  display: none;
}

.text_bnr {
  position: relative;
  width: 100%;
}

.teiki p::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(450* (100vw / 1600));
  height: 4rem;
  width: 4rem;
  background: url("<%= Constants.PATH_ROOT %>Contents/ImagesPkg/top/teiki_220422.png");
  background-repeat: no-repeat;
  background-size: 100%;
}

.text_bnr {
  background: #727071;
  padding: 3rem;
  text-align: center;
}

.text_bnr p {
  color: #fff;
  font-size: calc(12* (100vw / 1600));
}

.text_bnr p span {
  font-size: calc(22* (100vw / 1600));
}

@media only screen and (max-width: 767px) {
  .teiki p::before {
    content: "";
    position: absolute;
    top: calc(25* (100vw / 750));
    transform: translateY(0);
    transform: translateX(-50%);
    left: 50%;
    height: calc(60* (100vw / 750));
    width: calc(60* (100vw / 750));
  }
  .text_bnr {
    padding: calc(52* (100vw / 750));
  }
  .text_bnr p {
    line-height: 1.5;
    font-size: calc(24* (100vw / 750));
  }
  .text_bnr p span {
    display: block;
    font-size: calc(30* (100vw / 750));
  }
}

@media only screen and (min-width: 1601px) {
  .text_bnr p::before {
    left: 45rem;
    height: 3rem;
    width: 3rem;
  }
  .text_bnr p {
    color: #fff;
    font-size: 1.2rem;
  }
  .text_bnr p span {
    font-size: 2.2rem;
    ;
  }
}



/* PRODUCT
============================================================= */

.top_products_section {
}

.top_products-list {
  display: grid;
  gap: 2.2rem 9.3rem;
  grid-template-columns: repeat(3, minmax(0, 31.7rem));
  justify-content: center;
}

.top_products-item {
  position: relative;
  z-index: 0;
}

.top_products-item::after {
  content: '';
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  right: 0;
  width: .6rem;
  height: .96rem;
  background-image: url(/Contents/ImagesPkg/common/icn_btn_arw.svg);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 0;
}

.top_products-link {
  display: flex;
  align-items: center;
  column-gap: .5rem;
}

.top_products-link:hover .products-item_text span {
  text-decoration: underline;
}

.top_products_img {
  position: relative;
  margin-bottom: 4.5rem;
  z-index: 0;
}

.top_products_img::before {
  display: flex;
  padding-left: 8.7rem;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(90deg, rgba(0,0,0,0.18) 0%, rgba(0,0,0,0) 100%);
  color: #ffffff;
  font-size: 6rem;
  line-height: 1;
  letter-spacing: .1em;
  text-align: left;
  width: 60rem;
  height: 100%;
  z-index: 0;
}

#panel1 .top_products_img::before {
  content: 'SERIES';
}

#panel2 .top_products_img::before {
  content: 'SKINCARE';
}

#panel3 .top_products_img::before {
  content: 'BODYCARE';
}

#panel4 .top_products_img::before {
  content: 'HAIRCARE';
}

.top_products_img img,
.products-item_img img {
  display: block;
  width: 100%;
  height: auto;
}

.products-item_img {
  width: 6.4rem;
}

.products-item_text {
  color: #5F5F5F;
  line-height: 1.2;
  width: 23rem;
}

.products-item_text span {
  display: inline-block;
}

.products-item_text .en {
  font-size: 1.7rem;
  letter-spacing: .05em;
}

.products-item_text .jp {
  font-size: 1.5rem;
  letter-spacing: 0;
}

.fadeInUp {
  opacity: 0;
  transform: translateY(60px);
  transition: 1.5s;
}

.tab_pane {
  display: none;
}

.tab_panel .fadeInUp {
  transition: 1s;
}

.contentsWrap .line-wrap img {
  width: 100%;
}

.tab_btn_area {
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: -0.4em;
  margin: 0 auto 3rem;
}

.tab_btn_area .tab_btn {
  position: relative;
  display: inline-block;
  padding: .4rem 4rem;
  color: #000000;
  font-size: 2.4rem;
  font-weight: 100;
  transition: .3s;
  letter-spacing: .05em;
  text-align: center;
  vertical-align: bottom;
  cursor: pointer;
}

.tab_btn_area .tab_btn.selected p {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 10px;
}

.tab_wrap .panel_area .inner {
  position: relative;
  max-width: 120rem;
  margin: auto;
  padding: 12rem 0 14rem;
}

.tab_wrap .panel_area .inner h3 {
  color: #fff;
  font-size: 2.4rem;
  text-align: center;
  font-weight: 200;
  letter-spacing: 0.2em;
}

.tab_wrap .panel_area #panel3 .inner h3 span {
  color: #929390;
  font-size: 1.8rem;
  display: block;
  padding-bottom: 2rem;
}

.tab_wrap .panel_area .inner h3:after {
  content: '';
  display: block;
  width: 3rem;
  height: 1px;
  background: #fff;
  margin: 2rem auto 0;
}

.tab_wrap .panel_area #panel3 .inner h3,
.tab_wrap .panel_area #panel4 .inner h3 {
  color: #5f5f5f;
}

.tab_wrap .panel_area #panel3 .inner h3:after,
.tab_wrap .panel_area #panel4 .inner h3:after {
  background: #5f5f5f;
}

.tab_wrap .panel_area .inner .item_area p {
  font-size: 1.6rem;
  padding: 1.2rem 1.5rem 0 0;
  line-height: 1.4;
}

.tab_wrap .panel_area .inner .item_area .ico-cate {
  font-size: 1.2rem;
  display: inline-block;
  padding: 0.2rem 1rem;
  margin: 2rem 1.5rem 0 0;
}

.tab_wrap .panel_area .inner .item_area p .sub-txt {
  display: block;
  font-size: 1.2rem;
  margin-top: 1rem;
}

.tab_wrap .panel_area .inner .item_area li {
  text-align: center;
  letter-spacing: 0.15em;
}

.tab_wrap .panel_area .inner .item_area li img {
  display: block;
  margin: 0 auto;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.320, 1.275);
}

.tab_wrap .panel_area .inner .item_area li a img:hover {
  transform: translateY(-10px);
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(1) img {
  max-width: 8.5rem;
  width: calc(85 * (100vw / 1200));
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(1) {
  top: 20%;
  left: 26%;
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(2) img {
  max-width: 8.2rem;
  width: calc(82 * (100vw / 1200));
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(2) {
  top: 23%;
  right: 28%;
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(3) img {
  max-width: 6.2rem;
  width: calc(62 * (100vw / 1200));
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(3) {
  bottom: 16%;
  left: 7%;
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(4) img {
  max-width: 11.8rem;
  width: calc(118 * (100vw / 1200));
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(4) {
  bottom: 14%;
  left: 40%;
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(5) img {
  max-width: 19rem;
  width: calc(190 * (100vw / 1200));
}

.tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(5) {
  bottom: 8%;
  right: 7.5%;
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(1) img {
  max-width: 8.6rem;
  width: calc(86 * (100vw / 1200));
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(1) {
  top: 20%;
  left: 10%;
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(2) img {
  max-width: 8.2rem;
  width: calc(82 * (100vw / 1200));
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(2) {
  top: 19%;
  right: 41%;
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(3) img {
  max-width: 7rem;
  width: calc(70 * (100vw / 1200));
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(3) {
  top: 28%;
  right: 12%;
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(4) img {
  max-width: 9.8rem;
  width: calc(98 * (100vw / 1200));
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(4) {
  bottom: 8%;
  left: 24%;
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(5) img {
  max-width: 19rem;
  width: calc(190 * (100vw / 1200));
}

.tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(5) {
  bottom: 10%;
  right: 20%;
}

.tab_wrap .panel_area #panel3 .inner .item_area .ico-cate,
.tab_wrap .panel_area #panel4 .inner .item_area .ico-cate {
  border: 1px solid #5f5f5f;
}

.tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(1) img {
  width: calc(96 * (100vw / 1200));
  max-width: 9.6rem;
}

.tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(2) {
  left: 43.5%;
  top: 33.7%;
}

.tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(2) img {
  max-width: 11rem;
  width: calc(110 * (100vw / 1200));
}

.tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(1) {
  top: 38%;
  left: 18.3%;
}

.tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(3) img {
  max-width: 14.4rem;
  width: calc(144 * (100vw / 1200));
}

.tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(3) {
  top: 40%;
  right: 15%;
}

.tab_wrap .panel_area #panel3 .inner .item_area li p,
.tab_wrap .panel_area #panel4 .inner .item_area li p {
  color: #5f5f5f;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(1) img {
  width: calc(108 * (100vw / 1200));
  max-width: 10.8rem;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(1) {
  top: 20%;
  left: 10%;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(2) img {
  max-width: 8.8rem;
  width: calc(88 * (100vw / 1200));
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(2) {
  top: 26%;
  left: 38%;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(3) img {
  width: calc(104 * (100vw / 1200));
  max-width: 10.4rem;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(3) {
  right: 6%;
  top: 20%;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(4) img {
  max-width: 10.8rem;
  width: calc(108 * (100vw / 1200));
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(4) {
  bottom: 6%;
  left: 26%;
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(5) img {
  max-width: 14.2rem;
  width: calc(142 * (100vw / 1200));
}

.tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(5) {
  bottom: 12%;
  right: 22%;
}

.tab_wrap .panel_area .inner .btn-area a {
  color: #5f5f5f;
  text-decoration: none;
  border: 1px solid #5f5f5f;
  font-size: 1.6rem;
  padding: 1rem 0;
  display: inline-block;
  max-width: calc(300 * (100vw / 1000));
  width: 30rem;
  text-align: center;
  margin-right: 8rem;
}

.tab_wrap .panel_area .inner .btn-area a:hover {
  background: #5f5f5f;
  color: #fff;
}

.tab_wrap .panel_area .inner .btn-area li:last-child a {
  margin-right: 0;
}

.tab_wrap .panel_area .inner .btn-area {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  position: absolute;
  bottom: 16%;
  left: 50%;
  transform: translate(-50%, 0);
}

.top_products_section .top_section_inner {
  padding-inline: 0;
}

.top_products_section .list-product {
  display: flex;
  justify-content: center;
  width: 100% !important;
  max-width: 100%;
  gap: .5rem;
  margin-bottom: 2rem;
}

.top_products_section .list-product > li {
  width: 19rem !important;
  margin: 0 !important;
}

.top_products_section .list-product ul li {
  margin-bottom: .4rem;
}

/* CAMPAIGN
============================================================= */

.top_campaign_section {
  margin-bottom: 12rem;
}

.top_campaign_section .section_img {
  width: 50rem;
  margin: 0 auto 9.5rem;
}

.top_campaign_section .section_cont {
  margin-top: 4rem;
  margin-bottom: 6rem;
  line-height: 2.2;
  font-size: 1.4rem;
  text-align: center;
  color: #A9AAAA;
}

.top_campaign_section .campaign_banner {
  display: block;
  margin-bottom: 1.6rem;
}

.top_campaign_section .campaign_caption {
  margin-bottom: 1.6rem;
  line-height: 1;
  font-size: 1.4rem;
  text-align: center;
  color: #A9AAAA;
}

.top_campaign_section .block-campaignSlider {
  position: relative;
  padding: 0 4rem;
  z-index: 0;
}

.top_campaign_section .block-campaignSlider .slick-slide {
  margin: 0 2rem;
}

.top_campaign_section .block-campaignSlider .arrow-box {
  display: flex;
  justify-content: space-between;
  position: absolute;
  pointer-events: none;
  transform: translateY(-50%);
  top: 46%;
  left: 0;
  width: 100%;
  z-index: 1;
}

.top_campaign_section .slide-arrow {
  width: 4rem;
  height: 10rem;
  -webkit-mask-image: url(/Contents/ImagesPkg/common/icn_btn_arw.svg);
  mask-image: url(/Contents/ImagesPkg/common/icn_btn_arw.svg);
  -webkit-mask-size: 1rem auto;
  mask-size: 1rem auto;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: #A9AAAA;
  cursor: pointer;
  pointer-events: all;
  z-index: 0;
}

.top_campaign_section .prev-arrow {
  transform: scale(-1, 1);
}

.top_section .slick-dotted.slick-slider,
.top_campaign_section .slick-dotted.slick-slider {
  margin: 0;
}

.top_campaign_section .slick-dots {
  position: static;
}


/* FEATURES
============================================================= */

.top_features_section {
  background-color: #F7F6F0;
}

.top_features_section .top_section_inner {
  padding: 10rem 0 12rem;
}

.top_features_section img {
  width: 100%;
  height: auto;
}

.top_features_section .features-list {
  display: grid;
  gap: 2.7rem 4rem;
  grid-template-columns: repeat(2, minmax(0, 50rem));
  justify-content: center;
}

.top_features_section .features-link {
  display: block;
}


/* SUBSCRIPTION
============================================================= */

.top_subsc_section {
  margin-bottom: 12rem;
}

.top_subsc_section .subsc_cont {
  margin: auto;
  color: #000;
  text-align: center;
}

.top_subsc_section .subsc_cont:nth-of-type(2) {
  padding: 10rem 0 0;
}

.top_subsc_section .section_img {
  width: 97.8rem;
  max-width: 100%;
  margin: 0 auto 9.7rem;
}

.top_subsc_section .section_img ul{
  display: flex;
  justify-content: space-between;
}

.top_subsc_section .section_img li{
  width: 26.4rem;
}

.top_subsc_section .section_img li p{
  margin: 2.9rem auto 0;
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0;
  line-height: 1.6;
}

.top_subsc_section .section_cont {
  width: 100%;
  max-width: 97.8rem;
  margin: auto;
}

.top_subsc_section .section_cont span {
  display: block;
  padding-bottom: 2.1rem;
}

.top_subsc_section .section_cont .txt_ja {
  border-bottom: 1px solid #000;
  font-size: 1.7rem;
}

.top_subsc_section .section_cont .txt_en {
  padding-top: 1.3rem;
  font-size: 2.5rem;
  letter-spacing: 0.05em;
}


/* RANKING
============================================================= */

.top_ranking_section {
  background-color: #F8F8F8;
}

.top_ranking_section .top_section_inner {
  padding: 10rem 0 12rem;
}

.ranking_tab .slick-center {
  border-bottom: solid 2px #5f5f5f !important;
  color: #5f5f5f !important;
  pointer-events: none !important;
  opacity: 1 !important;
}

.ranking .inner {
  max-width: 100%;
  margin: 0 auto;
}

.ranking .inner .section_ttl {
  margin-bottom: 3rem;
  text-align: center;
}

.ranking .inner .ranking_tab {
  display: flex;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;
}

.ranking .inner .ranking_tab li {
  padding: 1rem 4.6rem;
  font-size: 2.4rem;
  text-align: center;
  letter-spacing: .05em;
  color: #000;
  cursor: pointer;
  transition: .5s;
}

.ranking .inner .ranking-item_list {
  margin-top: 3rem;
}

.ranking .inner .ranking-item_list .ranking-itm img {
  width: 100%;
}

.ranking .inner .ranking-item_list .ranking-itm a {
  transition: opacity .5s;
}

.ranking .inner .ranking-item_list .ranking-itm a:hover {
  opacity: .6;
}

.ranking .inner .ranking-item_list .listProduct {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  gap: 3.8rem 4rem;
  width: 98rem;
}

.ranking .inner .ranking-item_list .listProduct .glbPlist {
  position: relative;
  width: 30rem;
}

.ranking .inner .ranking-item_list .ranking-itm .rank {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  margin-left: .6rem;
  background-color: #ffffff;
  font-size: 2rem;
  color: #A9AAAA;
  pointer-events: none;
  width: 3.6rem;
  height: 3.6rem;
}

.ranking .inner .ranking-item_list .ranking-itm .itm-img {
  margin-bottom: 1.6rem;
}

.ranking .inner .ranking-item_list .ranking-itm .itm-txt {
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif;
}

.ranking .inner .ranking-item_list .ranking-itm .name {
  margin-bottom: .7rem;
  font-size: 1.4rem;
  line-height: 1.5;
}

.ranking .itm-wrap {
  display: flex;
  align-items: center;
  column-gap: 1.3rem;
}

.ranking .inner .ranking-item_list .ranking-itm .price {
  font-size: 1.5rem;
  white-space: nowrap;
}

.ranking .inner .ranking-item_list .ranking-itm .name a {
  color: #727272;
}

.ranking .inner .ranking-item_list .ranking-itm .review {
  font-size: 1.3rem;
}

.ranking .inner .ranking-item_list .ranking-itm .review .rate:before {
  transform: scale(0.8);
  transform-origin: left;
  color: #eae3b2;
}

.ranking .inner .ranking-item_list .ranking-itm .review .rate:after {
  transform: scale(0.8);
  transform-origin: left;
  color: #b1a335;
}

.ranking .inner .ranking-item_list .ranking-itm .review .average {
  margin-left: -0.5rem;
  color: #5f5f5f;
}

.ranking .inner .ranking-item_list .ranking-itm .review .count {
  margin-left: 0;
  color: #5f5f5f;
  white-space: nowrap;
}

.ranking .inner .btn_viewmroe a {
  margin: 0 auto;
  font-family: sans-serif;
}

.pushitems .reviewFeature__RankingParts .rate:before {
  color: #eae3b2;
}

.pushitems .reviewFeature__RankingParts .rate:after {
  color: #b1a335;
}

.ranking .inner .ranking_tab .selected-tab {
  pointer-events: none;
}

.ranking .inner .ranking_tab .selected-tab p {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 10px;
}

.ranking .inner .ranking-item_list .ranking-itm {
  display: none;
  opacity: 0;
}

.ranking .inner .ranking-item_list .ranking-itm.selected {
  display: block;
  animation: fade .5s forwards;
}

@keyframes fade {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}


/* CONCEPT
============================================================= */

.top_concept_section {
 text-align: center;
}

.top_concept_section .section_cont_wrap {
  display: flex;
  justify-content: center;
  gap: 7.3rem;
  align-items: flex-end;
  color: #787878;
}

.top_concept_section .section_img {
  width: 50rem;
  max-width: 100%;
}

.top_concept_section .section_cont {
  max-width: 100%;
}

.top_concept_section .section_cont .ttl_sub {
  margin-bottom: 4rem;
  font-size: 1.7rem;
  font-weight: normal;
  letter-spacing: 0;
  line-height: 1.4;
}

.top_concept_section .section_cont .ttl_sub span {
  font-size: 1.9rem;
  letter-spacing: .05em;
}

.top_concept_section .section_cont .txt_cont {
  font-size: 1.7rem;
  line-height: 2.25;
}


/* PHILOSOPHY
============================================================= */

.top_philosophy_section {
}

.top_philosophy_section .img_area {
  display: flex;
  gap: 3rem;
}

.top_philosophy_section .txt_cont {
  color: #A9AAAA;
  font-size: 1.4rem;
  line-height: 1.7;
}

.top_philosophy_section .package_area {
  padding-bottom: 11rem;
}

.top_philosophy_section .package_area .img_area {
  width: 123rem;
  max-width: 100%;
  margin: auto auto 1rem;
}

.top_philosophy_section .package_area .txt_cont {
  text-align: center;
  line-height: 2.2;
}

.top_philosophy_section .approach_area {
  position: relative;
  text-align: center;
}

.top_philosophy_section .approach_area .section_ttl_sub {
  margin-bottom: 2rem;
  color: #000;
  font-size: 2.3rem;
  font-weight: normal;
}

.top_philosophy_section .approach_area .txt_cont {
  width: 68rem;
  max-width: 100%;
  margin: auto auto 6rem;
  line-height: 1.7;
}

.top_philosophy_section .approach_area .img_area {
  width: 82.5rem;
  max-width: 100%;
  margin: auto auto 4rem;
}

.top_philosophy_section .approach_area .txt_cont.txt_left {
  position: relative;
  right: 50%;
  width: auto;
  padding-right: 2rem;
  text-align: right;
  line-height: 2;
}

.top_philosophy_section .rose_area {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 12rem;
  margin-top: -19rem;
}

.top_philosophy_section .rose_area .rose_cont {
  width: 48rem;
  padding-bottom: 3.4rem;
}

.top_philosophy_section .rose_area .rose_img {
  width: 50rem;
}

.top_philosophy_section .rose_area .rose_img_02 {
  display: block;
  margin-bottom: 4rem;
}

/* NEWS
============================================================= */

.top_topics_section {
  margin-top: 12rem;
}

.top_topics_section .top_section_inner {
  padding-top: 0;
}

/* 管理画面記事設定*/
.top_topics_section .infobox li:nth-child(n + 6) {
  display: none !important;
}

.top_topics_section .newscontents .tag_cate {
  text-transform: uppercase;
}

.top_topics_section .newscontents .tag_cate {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  display: inline-block;
  width: 8.5rem;
  background-color: #bfbfbf;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  color: #fff;
  line-height: 2rem;
  margin-right: 2rem;
  text-align: center;
}

/*//////////////////////////////////////////////////

　　　　　　　　　　PC SETTING

//////////////////////////////////////////////////*/

/* PC用*/
@media (min-width: 769px) {

  .sp_only {
    display: none !important;
  }

  ._sp {
    display: none !important
  }


  /* PRODUCT
  ============================================================= */

  .top_products_section {
  }

  .top_products_section .top_section_inner {
    padding-top: 10rem;
  }


  /* RANKING
  ============================================================= */

  .top_ranking_section {}



  /* PHILOSOPHY
  ============================================================= */

  .top_philosophy_section .rose_area .rose_img_02 {
    width: 47rem;
    margin-left: 0;
    margin-left: auto;
  }

  /* NEWS
  ============================================================= */

  .top_topics_section {
    background-color: #f8f8f8;
    text-align: center;
    padding: 10rem 0 12rem;
  }

  .top_topics_section .infobox {
    width: 100rem;
    max-width: 100%;
    margin: 7.2rem auto 6.1rem;
  }

  .top_topics_section .newscontents {
    display: flex;
    align-items: center;
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    width: 100%;
    /*height: 60px;*/
    background-color: #fff;
    margin-bottom: 1rem;
    padding: 2rem 0;
    transition: all 0.5s ease;
  }

  .top_topics_section .newscontents:hover {
    opacity: 0.6;
  }

  .top_topics_section .newscontents:last-child {
    margin-bottom: 0;
  }

  .top_topics_section .newscontents .tag_cate {
    width: 8.5rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 2rem;
    margin-right: 2rem;
  }

  .top_topics_section .newscontents .newsdetail {
    position: relative;
    text-align: left;
    width: 100%;
    padding-left: 10.5rem;
  }

  .top_topics_section .newscontents .date {
    margin: 0 5.6rem 0 3.8rem;
  }

  .top_topics_section .btn_01 a {
    margin: 0 auto;
  }

}

/*//////////////////////////////////////////////////

　　　　　　　　　　TABLET SETTING

//////////////////////////////////////////////////*/



@media screen and (min-width: 768px) and (max-width: 1600px) {

  .tab_wrap .panel_area .inner .item_area p {
    font-size: calc(16 * (100vw / 1024));
  }
  .tab_wrap .panel_area .inner .item_area .ico-cate,
  .tab_wrap .panel_area .inner .item_area p .sub-txt {
    font-size: calc(12 * (100vw / 1024));
  }
}

/*//////////////////////////////////////////////////

　　　　　　　　　　SP SETTING

//////////////////////////////////////////////////*/


/* SP用*/
@media (max-width: 768px) {

  html {
    font-size: calc(1000vw / 750);
    color: #5f5f5f;
  }

  img {
    width: 100%;
  }

  a {
    text-decoration: none;
    color: #5f5f5f;
  }

  .pc_only {
    display: none;
  }

  ._sp {
    display: block !important;
  }

  ._pc {
    display: none !important;
  }


  #Contents {
    overflow: clip;
  }

  /*-----------------------------
  SUB BUNNER
  -----------------------------*/

  .sub-bnr {
    margin-top: calc(80 * (100vw / 750));
  }

  /*-----------------------------
  商品レビュー
  -----------------------------*/
  .rate {
    position: relative;
    display: inline-block;
    width: calc(60 * (100vw / 375));
    height: calc(12 * (100vw / 375));
    font-size: calc(12 * (100vw / 375));
    margin-right: calc(1 * (100vw / 375));
  }

  .rate:before,
  .rate:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "★★★★★";
    display: inline-block;
    height: calc(12 * (100vw / 375));
    line-height: calc(12 * (100vw / 375));
  }

  .rate:before {
    color: #ddd;
  }

  .rate:after {
    color: #ffa500;
    overflow: hidden;
    white-space: nowrap;
  }

  .rate0:after {
    width: 0;
  }

  .rate0-1:after,
  .rate0-2:after,
  .rate0-3:after,
  .rate0-4:after.rate0-5:after {
    width: calc(6 * (100vw / 375));
  }

  .rate0-6:after,
  .rate0-7:after,
  .rate0-8:after,
  .rate0-9:after,
  .rate1:after {
    width: calc(12 * (100vw / 375));
  }

  .rate1-1:after,
  .rate1-2:after,
  .rate1-3:after,
  .rate1-4:after,
  .rate1-5:after {
    width: calc(18 * (100vw / 375));
  }

  .rate1-6:after,
  .rate1-7:after,
  .rate1-8:after,
  .rate1-9:after,
  .rate2:after {
    width: calc(24 * (100vw / 375));
  }

  .rate2-1:after,
  .rate2-2:after,
  .rate2-3:after,
  .rate2-4:after,
  .rate2-5:after {
    width: calc(30 * (100vw / 375));
  }

  .rate2-6:after,
  .rate2-7:after,
  .rate2-8:after,
  .rate2-9:after,
  .rate3:after {
    width: calc(36 * (100vw / 375));
  }

  .rate3-1:after,
  .rate3-2:after,
  .rate3-3:after,
  .rate3-4:after,
  .rate3-5:after {
    width: calc(42 * (100vw / 375));
  }

  .rate3-6:after,
  .rate3-7:after,
  .rate3-8:after,
  .rate3-9:after,
  .rate4:after {
    width: calc(48 * (100vw / 375));
  }

  .rate4-1:after,
  .rate4-2:after,
  .rate4-3:after,
  .rate4-4:after,
  .rate4-5:after {
    width: calc(54 * (100vw / 375));
  }

  .rate4-6:after,
  .rate4-7:after,
  .rate4-8:after,
  .rate4-9:after,
  .rate5:after {
    width: calc(60 * (100vw / 375));
  }

  .wrap {
    width: calc(100 * (100vw / 375));
    margin: 0 auto;
  }

  .reviewFeature__RankingParts {
    margin-top: calc(10 * (100vw / 375));
    font-size: calc(13 * (100vw / 375));
  }
  .reviewFeature__RankingParts .num {
    margin-left: 0;
  }
  .reviewFeature__RankingParts .ken {
    margin-left: calc(8 * (100vw / 375));
    font-size: calc(14 * (100vw / 375));
  }
  .reviewFeature__RankingParts a {
    text-decoration: none;
    /* justify-content: center; */
    display: flex;
    align-items: center;
  }
  .reviewFeature__RankingParts a:hover {
    opacity: 0.8;
  }


  /* HEADER BANNER TOP ONLY
  ============================================================= */

  .cam_bnr_wrap {
    top: 0 !important;
  }

  #Contents.cam_bnr__active,
  #Contents.cam_bnr__active_txt {
    margin-top: 0 !important;
  }

  /* --- Banner --- */
  .header.cam_bnr__active {
    top: calc(100 * (100vw / 750));
  }

  /* --- Txt Banner --- */
  .header.cam_bnr__active_txt {
    top: calc(90 * (100vw / 750));
  }

  .cam_bnr_wrap .cam_bnr__slider {
    position: inherit;
    transform: none;
    left: inherit;
    top: inherit;
    width: 100%;
    display: block;
    z-index: 10;
  }
  /*
  .header_sp_wrap {
    top: inherit;
    height: 0;
  }

  .header_sp_wrap > h2 {
    display: none;
  }

  .contentsWrap {
    margin-top: 0 !important;
  }*/


  /* SECTION COMMON
  ============================================================= */

  .top_section_inner {
    width: 100%;
    padding: calc(60 * (100vw / 375)) calc(23 * (100vw / 375)) 0;
  }

  /* ---- SECTION TITLE ---- */
  .section_ttl {
    margin-bottom: calc(28 * (100vw / 375));
    font-size: calc(31 * (100vw / 375));
  }

  .section_ttl .txt_ja {
    padding: calc(8 * (100vw / 375)) 0 0;
    font-size: calc(13 * (100vw / 375));
  }

  /* MV SECTION
  ============================================================= */

  .top_mainvisual_section {
    margin-bottom: calc(51 * (100vw / 375));
  }

  .top_mainvisual_section .top_section_inner {
    padding: 0;
  }

  .fv_block .fv_txt {
    padding: calc(8 * (100vw / 375)) 0 0;
    font-size: calc(13 * (100vw / 375));
  }

  .fv_block .fv_img {
    margin: 0;
    width: calc(375 * (100vw / 375));
  }

  .fv_block .fv_img .btn_wrap {
   bottom: calc(23 * (100vw / 375));
  }

  .fv_block .fv_text {
    margin-top: calc(11 * (100vw / 375));
    font-size: calc(13 * (100vw / 375));
    min-height: calc(38 * (100vw / 375));
  }

  .fv_block .slide-arrow {
    top: calc(239 * (100vw / 375));
    width: calc(38 * (100vw / 375));
    height: calc(38 * (100vw / 375));
  }

  .fv_block .prev-arrow {
    left: calc(3 * (100vw / 375));
  }

  .fv_block .next-arrow {
    right: calc(3 * (100vw / 375));
  }

  /* ---- ボタン　共通設定 ---- */

  .btn_wrap {
    margin-top: calc(24 * (100vw / 375));
  }

  .btn_wrap .btn_link {
    padding: calc(12 * (100vw / 375)) calc(10 * (100vw / 375)) calc(10 * (100vw / 375));
    font-size: calc(12 * (100vw / 375));
    line-height: 1;
    width: calc(200 * (100vw / 375));
    height: auto;
  }

  .btn_wrap .btn_link::before {
    right: calc(11 * (100vw / 375));
    width: calc(4 * (100vw / 375));
    height: calc(4 * (100vw / 375));
  }

  /* PRODUCT
  ============================================================= */

  .top_products_section {
    background-color: #F8F8F8;
  }

  .top_products_section .top_section_inner {
    padding: calc(50 * (100vw / 375)) 0;
  }

  .top_products-list {
    display: grid;
    gap: calc(15 * (100vw / 375)) calc(8 * (100vw / 375));
    grid-template-columns: repeat(2, minmax(0, calc(171 * (100vw / 375))));
    justify-content: center;
  }

  .top_products-item::after {
    position: static;
    background-image: none;
  }

  .top_products-link {
    column-gap: calc(4 * (100vw / 375));
  }

  .top_products_img {
    margin-bottom: calc(19 * (100vw / 375));
  }

  .top_products_img::before {
    padding-left: calc(24 * (100vw / 375));
    font-size: calc(20 * (100vw / 375));
    width: calc(164 * (100vw / 375));
  }

  .products-item_img {
    width: calc(52 * (100vw / 375));
  }

  .products-item_text {
    line-height: 1.25;
    width: calc(112 * (100vw / 375));
  }

  .products-item_text .en {
    font-size: calc(14 * (100vw / 375));
  }

  .products-item_text .jp {
    font-size: calc(10 * (100vw / 375));
  }

  .tab_btn_area {
    margin: 0 auto calc(8 * (100vw / 375));
  }

  .top_products_section .lineup_area {
    display: none;
  }

  .tab_wrap .panel_area .inner {
    max-width: 100%;
    padding: calc(140 * (100vw / 750)) 0;
  }

  .tab_wrap .panel_area .inner h3 {
    font-size: calc(36 * (100vw / 750));
  }

  .tab_wrap .panel_area .inner h3:after {
    width: calc(60 * (100vw / 750));
    height: calc(2 * (100vw / 750));
    margin: calc(40 * (100vw / 750)) auto 0;
  }

  .tab_btn_area .tab_btn {
    display: flex;
    justify-content: center;
    font-size: calc(16 * (100vw / 375));
    padding: calc(4 * (100vw / 375)) calc(3 * (100vw / 375)) calc(10 * (100vw / 375)) ;
    width: calc(76 * (100vw / 375)) ;
  }

  .tab_btn_area .tab_btn.slick-current p {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
  }

  .tab_btn_area .tab_btn p {
    word-break: break-all;
  }

  .tab_btn_area > .slick-list {
    padding: 0 !important;
  }

  .tab_btn_area .slick-track {
  }

  .tab_wrap .panel_area .inner .item_area p {
    font-size: calc(24 * (100vw / 750));
    padding: calc(20 * (100vw / 750)) calc(20 * (100vw / 750)) 0 0;
    font-weight: 200;
  }
  .tab_wrap .panel_area .inner .item_area .ico-cate {
    font-size: calc(20 * (100vw / 750));
    margin: calc(30 * (100vw / 750)) calc(20 * (100vw / 750)) 0 0;
  }

  .tab_wrap .panel_area .inner .item_area p .sub-txt {
    font-size: calc(20 * (100vw / 750));
    margin-top: calc(16 * (100vw / 750));
  }
  .tab_wrap .panel_area #panel1 .inner {
    height: calc(1800 * (100vw / 750));
    max-height: none;
  }
  .tab_wrap .panel_area #panel2 .inner {
    height: calc(1800 * (100vw / 750));
    max-height: none;
  }
  .tab_wrap .panel_area #panel3 .inner {
    height: calc(1000 * (100vw / 750));
    max-height: none;
  }
  .tab_wrap .panel_area #panel4 .inner {
    height: calc(1800 * (100vw / 750));
    max-height: none;
  }

  .tab_wrap .panel_area .inner .item_area li img {
    max-width: none !important;
  }
  .tab_wrap .panel_area #panel2 .inner .item_area li {
    width: calc(260 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(1) img {
    width: calc(85 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(1) {
    left: calc(120 * (100vw / 750));
    top: calc(270 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(2) img {
    width: calc(82 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(2) {
    right: calc(120 * (100vw / 750));
    top: calc(300 * (100vw / 750));
    left: unset;
  }
  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(3) img {
    width: calc(62 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(3) {
    left: calc(80 * (100vw / 750));
    top: calc(840 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(4) img {
    width: calc(118 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(4) {
    right: 0;
    top: calc(880 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(5) img {
    width: calc(190 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel1 .inner .item_area li:nth-child(5) {
    right: calc(200 * (100vw / 750));
    top: calc(1280 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(1) img {
    width: calc(86 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(1) {
    top: calc(270 * (100vw / 750));
    left: calc(100 * (100vw / 750));
    width: auto;
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(2) img {
    width: calc(82 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(2) {
    top: calc(300 * (100vw / 750));
    right: calc(90 * (100vw / 750));
  }
  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(3) img {
    width: calc(70 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(3) {
    top: calc(840 * (100vw / 750));
    left: calc(30 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(4) img {
    width: calc(98 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(4) {
    top: calc(960 * (100vw / 750));
    left: calc(240 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(5) img {
    width: calc(190 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel2 .inner .item_area li:nth-child(5) {
    top: calc(900 * (100vw / 750));
    right: calc(20 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(1) img {
    width: calc(96 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(2) {
    left: calc(250 * (100vw / 750));
    top: calc(380 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(2) img {
    width: calc(110 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(1) {
    top: calc(320 * (100vw / 750));
    left: calc(20 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(3) img {
    width: calc(144 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel3 .inner .item_area li:nth-child(3) {
    top: calc(350 * (100vw / 750));
    right: calc(0 * (100vw / 750));
  }
  .tab_wrap .panel_area #panel3 .inner h3 span {
    font-size: calc(24 * (100vw / 750));
    padding-bottom: calc(30 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(1) img {
    width: calc(108 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(1) {
    left: calc(65 * (100vw / 750));
    top: calc(270 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(2) img {
    width: calc(88 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(2) {
    right: calc(60 * (100vw / 750));
    top: calc(320 * (100vw / 750));
    left: unset;
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(3) img {
    width: calc(104 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(3) {
    left: calc(80 * (100vw / 750));
    top: calc(820 * (100vw / 750));
    width: auto;
    right: unset;
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(4) img {
    width: calc(108 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(4) {
    left: calc(420 * (100vw / 750));
    top: calc(890 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(5) img {
    width: calc(142 * (100vw / 750));
  }

  .tab_wrap .panel_area #panel4 .inner .item_area li:nth-child(5) {
    top: calc(1360 * (100vw / 750));
    right: calc(230 * (100vw / 750));
  }

  .tab_wrap .panel_area .inner .btn-area {
    display: block;
    bottom: calc(140 * (100vw / 750));
  }

  .tab_wrap .tab_panel .top_products_contents {
    display: none;
  }

  .tab_wrap .tab_panel.slick-current .top_products_contents {
    display: block;
  }

  /* CAMPAIGN
  ============================================================= */

  .top_campaign_section {
  }

  .top_campaign_section .section_img,
  .top_campaign_section .section_cont {
    width: calc(290 * (100vw / 375));
  }

  .top_campaign_section .section_img {
    margin-bottom: calc(16 * (100vw / 375));
  }

  .top_campaign_section .section_cont {
    margin: calc(14 * (100vw / 375)) auto calc(30 * (100vw / 375));
    font-size: calc(12 * (100vw / 375));
    line-height: 1.5;
    text-align: left;
  }

  .top_campaign_section .campaign_banner {
    margin-bottom: calc(10 * (100vw / 375));
  }

  .top_campaign_section .campaign_caption {
    margin-bottom: calc(10 * (100vw / 375));
    font-size: calc(13 * (100vw / 375));
    line-height: 1.8;
  }

  .top_campaign_section .block-campaignSlider {
    padding: 0 calc(26 * (100vw / 375));
  }

  .top_campaign_section .block-campaignSlider .slick-slide {
    margin: 0;
  }

  .top_campaign_section .slide-arrow {
    width: calc(20 * (100vw / 375));
    height: calc(100 * (100vw / 375));
    mask-size: calc(8 * (100vw / 375)) auto;
    mask-position: center right;
  }

  .top_campaign_section .prev-arrow {
    transform: scale(-1, 1);
  }

  .top_campaign_section .slick-dots li {
    margin: 0;
  }

  /* FEATURES
  ============================================================= */

  .top_features_section {
  }

  .top_features_section .top_section_inner {
    padding: calc(55 * (100vw / 375)) calc(27 * (100vw / 375)) calc(60 * (100vw / 375));
  }

  .top_features_section .features-list {
    gap: calc(20 * (100vw / 375));
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }



  /* SUBSCRIPTION
  ============================================================= */

  .top_subsc_section {
    margin-bottom: calc(60 * (100vw / 375));
  }

  .top_subsc_section .subsc_cont {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }

  .top_subsc_section .section_img {
    margin: 0 auto;
    width: calc(316 * (100vw / 375));
  }

  .top_subsc_section .section_img li{
    width: calc(92 * (100vw / 375));
  }

  .top_subsc_section .section_img li p{
    font-size: calc(12 * (100vw / 375));
    line-height: 1.4;
  }

  .top_subsc_section .section_cont {
    width: auto;
    margin-bottom: calc(34 * (100vw / 375));
    line-height: 1;
  }

  .top_subsc_section .section_cont span {
    padding: calc(8 * (100vw / 375)) 0;
  }

  .top_subsc_section .section_cont .txt_ja {
    border-bottom: none;
    font-size: calc(13 * (100vw / 375));
    letter-spacing: 0;
  }

  .top_subsc_section .section_cont .txt_en {
    padding-top: 0;
    font-size: calc(17 * (100vw / 375));
    letter-spacing: 0.05em;
  }


  /* RANKING
  ============================================================= */

  .top_ranking_section .top_section_inner {
    padding: calc(55 * (100vw / 375)) 0 calc(60 * (100vw / 375));
  }

  .ranking .inner {
    width: 100%;
  }

  .ranking .inner .ranking_tab {
    width: auto;
  }

  .ranking .inner .ranking_tab li {
    width: fit-content;
    padding: calc(5 * (100vw / 375)) calc(12 * (100vw / 375)) calc(10 * (100vw / 375));
    font-size: calc(14 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list {
    margin: calc(15 * (100vw / 375)) 0;
  }

  .ranking .inner .ranking-item_list .listProduct {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: auto;
    gap: calc(22 * (100vw / 375)) calc(9 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .listProduct .glbPlist:nth-of-type(1) {
    margin-right: calc(2 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .listProduct .glbPlist:nth-of-type(2) {
    margin-left: calc(2 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .listProduct .glbPlist:nth-of-type(-n+2) {
    width: calc(158 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .listProduct .glbPlist:nth-of-type(n+3) {
    width: calc(104 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .listProduct.clearFix:after {
    display: none;
  }

  .ranking .inner .ranking-item_list .ranking-itm .rank {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    margin: 0;
    pointer-events: none;
  }

  .ranking .ranking-item_list .ranking-itm .glbPlist:nth-of-type(-n+2) .rank  {
    font-size: calc(16 * (100vw / 375));
    width: calc(24* (100vw / 375));
    height: calc(24 * (100vw / 375));
  }

  .ranking .ranking-item_list .ranking-itm .glbPlist:nth-of-type(n+3) .rank  {
    font-size: calc(14 * (100vw / 375));
    width: calc(22* (100vw / 375));
    height: calc(22 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .ranking-itm .itm-img {
    margin-bottom: calc(7 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .ranking-itm .name {
    margin-bottom: calc(8 * (100vw / 375));
    font-size: calc(12 * (100vw / 375));
  }

  .ranking .itm-wrap {
    display: block;
  }

  .ranking .inner .ranking-item_list .ranking-itm .price {
    margin-bottom: calc(10 * (100vw / 375));
    font-size: calc(12 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .ranking-itm .review {
    font-size: calc(11 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .ranking-itm .review .average {
    margin-left: calc(-10 * (100vw / 375));
  }

  .ranking .inner .ranking-item_list .ranking-itm .review .count {
    margin-left: calc(-3 * (100vw / 375));
  }

  .reviewFeature__Top {
    width: calc(162 * (100vw / 375)) !important;
    margin-top: calc(4 * (100vw / 375)) !important;
    margin-bottom: calc(3 * (100vw / 375)) !important;
  }


  /* CONCEPT
  ============================================================= */

  .top_concept_section {
  }

  .top_concept_section .section_cont .ttl_sub {
    margin-bottom: calc(22 * (100vw / 375));
    font-size: calc(13 * (100vw / 375));
    line-height: 1.85;
  }

  .top_concept_section .section_cont .ttl_sub span {
    font-size: calc(15 * (100vw / 375));
  }

  .top_concept_section .section_cont .txt_cont {
    font-size: calc(13 * (100vw / 375));
    line-height: 2;
  }


  /* PHILOSOPHY
  ============================================================= */

  .top_philosophy_section {
  }

  .top_philosophy_section .package_area,
  .top_philosophy_section .approach_area,
  .top_philosophy_section .rose_area {
    width: calc(294 * (100vw / 375));
    margin-right: auto;
    margin-left: auto;
  }

  .top_philosophy_section .img_area,
  .top_philosophy_section .txt_cont,
  .top_philosophy_section .approach_area .section_ttl_sub,
  .top_philosophy_section .rose_area .rose_cont {
    width: auto !important;
  }

  .top_philosophy_section .img_area {
    gap: calc(10 * (100vw / 375));
  }

  .top_philosophy_section .img_area li:nth-child(3) {
    display: none;
  }

  .top_philosophy_section .txt_cont {
    font-size: calc(11 * (100vw / 375));
    text-align: left;
    line-height: 1.55;
    letter-spacing: 0.02em;
  }

  .top_philosophy_section .package_area {
    padding-bottom: calc(20 * (100vw / 375));
  }

  .top_philosophy_section .package_area .img_area {
    margin: auto auto calc(5 * (100vw / 375));
  }

  .top_philosophy_section .package_area .txt_cont {
    text-align: left;
    line-height: 1.55;
  }

  .top_philosophy_section .approach_area {
    position: relative;
    text-align: left;
  }

  .top_philosophy_section .approach_area .section_ttl_sub {
    margin-right: calc(-7 * (100vw / 375));
    margin-bottom: calc(5 * (100vw / 375));
    color: #A9AAAA;
    font-size: calc(15 * (100vw / 375));
    text-align: right;
  }

  .top_philosophy_section .approach_area .txt_cont {
    margin: auto auto calc(5 * (100vw / 375));
  }

  .top_philosophy_section .approach_area .img_area {
    margin: auto auto calc(15 * (100vw / 375));
  }

  .top_philosophy_section .approach_area .txt_cont.txt_left {
    position: relative;
    right: auto;
    width: auto;
    padding-right: 0;
    text-align: left;
    line-height: 1.55;
  }

  .top_philosophy_section .rose_area {
    align-items: center;
    flex-direction: column;
    gap: calc(5 * (100vw / 375));
    margin-top: auto;
  }

  .top_philosophy_section .rose_area .rose_cont {
    padding-top: calc(20 * (100vw / 375));
    padding-bottom: calc(5 * (100vw / 375));
    text-align: right;
  }

  .top_philosophy_section .rose_area .txt_cont {
    text-align: right;
  }

  .top_philosophy_section .rose_area .rose_img_02 {
    margin-bottom: calc(15 * (100vw / 375));
  }


  /* NEWS
  ============================================================= */

  .top_topics_section {
    background-color: #f8f8f8;
    text-align: center;
    margin-top: calc(60 * (100vw / 375));
  }

  .top_topics_section .top_section_inner {
    padding-top: calc(55 * (100vw / 375));
    padding-bottom: calc(60 * (100vw / 375));
    color: #000;
  }

  .top_topics_section .infobox {
    width: auto;
    margin: calc(30 * (100vw / 375)) auto 0;
    min-width: 0;
  }

  .top_topics_section .newscontents {
    position: relative;
    display: block;
    font-size: 0;
    letter-spacing: 0.2em;
    width: 100%;
    height: auto;
    background-color: #fff;
    /* margin: calc(10 * (100vw / 750)) 0; */
    padding: calc(18 * (100vw / 375));
    text-align: left;
  }

  .top_topics_section .newscontents:not(:last-child) {
    margin-bottom: calc(14 * (100vw / 375));
  }

  .top_topics_section .newscontents .tag_cate {
    position: absolute;
    top: calc(-60 * (100vw / 750));
    left: calc(165* (100vw / 750));
    transform: inherit;
    display: inline-block;
    width: calc(125 * (100vw / 750));
    height: calc(30 * (100vw / 750));
    background-color: #bfbfbf;
    font-size: calc(8 * (100vw / 375));
    letter-spacing: 0.1em;
    color: #fff;
    line-height: calc(31 * (100vw / 750));
    text-align: center;
  }

  .top_topics_section .newscontents .date {
    display: inline-block;
    margin: 0 calc(32 * (100vw / 750)) 0 0;
    width: auto;
    vertical-align: bottom;
    font-size: calc(12 * (100vw / 375));
    letter-spacing: 0.08em;
  }

  .top_topics_section .newsdetail {
    position: inherit;
    line-height: 1.6;
    margin-top: calc(25 * (100vw / 750));
    padding-left: 0;
    font-size: calc(11 * (100vw / 375));
    letter-spacing: 0.08em;
  }

  .top_topics_section .newsdetail a {
    color: #000;
  }


}


/* TOP RANKING //241002
============================================================= */
.ranking .inner .ranking-item_list .ranking-itm .price {
  display: flex;
  align-items: center;
}

.item_list__review {
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
}

.item_list__review iframe {
  width: 200%;
  height: 2rem;
}

.item_list__review.summary-empty {
  display: none !important;
}

@media (max-width: 768px) {
  .ranking .inner .ranking-item_list .ranking-itm .price {
      display: block;
  }

  .item_list__review iframe {
    width: 200%;
    height: calc(30*(100vw / 375));
    margin-top: calc(10*(100vw / 375));
  }

}
