@charset "utf-8";

/**====================================
      全ページ共通
=======================================*/
body {
  width: 768px;
  color: #333;
  -webkit-text-size-adjust: 100%;
  font-family: Helvetica, Arial;
  font-size: 120%; /* content="width=768" のため */
  line-height: 1.8;
}
* {
  box-sizing: border-box;
}
img {
  width: 100%;
}
sup {
  line-height: 100%;
  font-size: 20px;
}
/* =====================================
      FOOTER
=======================================*/
footer .pageback a {
  padding: 2% 0 6%;
  text-align: center;
  font-size: 1.4rem;
  color: #333;
  display: block;
  text-decoration: none;
  font-weight: bold;
}
footer .copylight {
  padding: 3%;
  text-align: center;
  font-size: 0.6rem;
  color: #666;
}
/* --- go-top --- */
#gotop{
    position: fixed;
    bottom: 0;
    right: 2%;
}
#gotop a {
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  background-color: #888;
  opacity: 0.5;
  }
#gotop a:after {
    content: "";
    display: block;
    position: absolute;
    width: 28px;
    height: 28px;
    border-right: 3px solid #fff;
    border-top: 3px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 50%;
    top: 50%;
    margin-top: -4px;
    margin-left: -14px;
    }
/* --- footer_area --- */
.footer_area {
  padding: 8% 5%;
  /* background: #f7f7f7; */
}
.footer_area .icon_explain {
  font-size: 22px;
  margin: 0 0 30px 70px;
}
.footer_area p[class^="icon"] {
  position: relative;
}
.footer_area p[class^="icon"]:before {
  position: absolute;
  content: "";
  width: 60px;
  height: 35px;
  margin-left: -60px;
}
.footer_area .icon_epi:before {
  background: url("../../../imgs/sp/epi_kanren.gif") 0 6px no-repeat;
  background-size: 100%;
}
.footer_area .icon_body:before {
  background: url("../../../imgs/sp/body_kanren.gif") 0 6px no-repeat;
  background-size: 100%;
}
.footer_area .icon_taku:before {
  background: url("../../../imgs/sp/taku_icon.gif") 30px 5px no-repeat;
  background-size: 50%;
}
.icon_explain + .icon_explain {
  margin-top: -15px;
}
.footer_area .item_need {
  margin-left: 1em;
}
.footer_area .online_link {
  text-align: center;
  font-size: 26px;
}
.footer_area .foot_note {
  margin-bottom: 30px;
  text-align: center;
  font-size: 22px;
}

/*=======================================
      商品ラインナップ
=======================================*/
#line_up_container h2 {
  padding: 3% 0 2%;
}
.line_up_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.line_up_list li {
  width: 50%;
}
.line_up_list li.w_full {
  width: 100%;
}
.line_up_list a:hover img {
  opacity: 0.85;
}

/*=======================================
      商品ページ　共通レイアウト
=======================================*/
.item_block {
}
/* 商品Area
------------------------- */
.cont_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8% 2% 5% 0;
}
/* 商品画像_LEFT
------------------- */
.cont_item .item_img_box {
  width: 50%;
  margin-left: -1%;
}
/* 商品名_RIGHT
------------------- */
.cont_item .item_name_box {
  width: 50%;
}
.cont_item .item_name_box h3 {
  font-size: 30px;
  font-weight: bold;
  line-height: 160%;
}
.cont_item .item_name_box p {
  font-size: 25px;
  line-height: 160%;
}
.cont_item .item_name_box .product_name {
  font-size: 20px;
}

/* 関連アイコン（右上）*/
.cont_item.icon_epi {
  background: url("../../../imgs/sp/epi_kanren.gif") right 30px top 35px no-repeat;
  background-size: 8.6%;
}
.cont_item.icon_body {
  background: url("../../../imgs/sp/body_kanren.gif") right 30px top 35px no-repeat;
  background-size: 8.6%;
}
.cont_item.icon_taku {
  background: url("../../../imgs/sp/taku_icon.gif") right 30px top 35px no-repeat;
  background-size: 4.2%;
}
/* カテゴリーicon */
.cont_item .item_name_box .icon_cate {
  font-size: 21px;
  color: #fff;
  text-align: center;
  width: 140px;
  margin-bottom: 10px;
}
/* カテゴリーicon 7文字以上 */
.cont_item .item_name_box .icon_cate.letter_more {
  width: auto;
  display: inline-block;
  padding: 0 8px 0 10px;
  margin-right: 2%;
}
/* メディカルicon */
.cont_item .item_name_box .icon_medical {
  font-size: 20px;
  padding: 0 10px;
  border: 1px solid #000;
  display: inline-block;
  margin-bottom: 10px;
  color: #000;
}
/* 限定品 */
.cont_item .item_name_box .limited {
  font-size: 29px;
  color: #b5a25d;
  font-weight: bold;
  display: inline; /* 横幅調整用 */
  margin-left: -2px;
}
#prenity .cont_item .item_name_box .limited {
  color: #6356A3;
}
/* 宅配商品icon */
.large_deli {
  width: 31px;
  vertical-align: text-top;
  margin-left: 6px;
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.d-flex div[class^="icon"] {
  margin-right: 10px;
}
.cont_item .d-flex .icon_cate, .cont_item .d-flex .icon_medical {
  margin-bottom: 0 ;
}
.cont_item .icon_timeframe img {
  width: 35px;
}
.cont_item .alphanumeric {
  font-size: 33px;
}
.cont_item .alphanumeric rt {
  font-size: 13px;
}

/* カラーチップ */
.cont_item p.color_tip {
  position: relative;
  font-size: 21px;
}
.cont_item p.color_tip:nth-of-type(2) {
  line-height: 1.2;
}
.color_tip:before {
  content: "";
  width: 50px;
  height: 20px;
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
  margin-bottom: 2.2px;
}
.color_nb:before {
  background: #ebcda3;
}
.color_or:before {
  background: #f1a98b;
}
.color_lb:before {
  background: #f0cdb7;
}
.color_bl:before {
  background: #463428;
}

/* アコーディオンArea
------------------------- */
.cont_acc > li {
  border-top: 2px solid;
  border-bottom: 2px solid;
}
.cont_acc li + li {
  border-top: none;
}
.cont_acc .acc_trigger {
  position: relative;
  font-size: 26px;
  line-height: 240%;
  padding-left: 80px;
}
.cont_acc .acc_trigger::after, .cont_acc .acc_trigger.active::after {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  right: 40px;
  width: 14px;
  height: 14px;
  -webkit-transform: translateX(-50%) rotate(135deg);
          transform: translateX(-50%) rotate(135deg);
}
.cont_acc .acc_trigger.active::after {
  top: 30px;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}
.cont_acc .acc_detail {
  border-top: 2px solid;
  padding: 4% 4.6% 9%;
  font-size: 24px;
}
.cont_acc .acc_detail.full_img {
  padding-top: 0;
  padding-bottom: 0;
}
.cont_acc .acc_detail .note,
.cont_acc .acc_detail .brand_name {
  font-size: 20.5px;
}
.cont_acc .acc_detail .inside_img {
  margin-left: -5%;
  margin-right: -5%;
  margin-top: 1.5%;
}
.cont_acc .acc_detail.full_img .inside_img {
  margin-top: 0;
}
.cont_acc .acc_detail p + p {
  margin-top: 20px;
}
.cont_acc .acc_detail p + p.inside_img {
  margin-top: 7%;
}
.cont_acc .acc_detail p.note + p.note {
  margin-top: 0;
}
.under_line {
  border-bottom: 1px solid #000;
  display: inline
}
.cont_acc .acc_detail.pd_0 {
  padding: 0;
}
/* 動画
------------------------- */
.sec_movie {
  padding: 5% 5% 7%;
  background: #f1f1f1;
}
.sec_movie h3 {
  font-size: 25px;
  font-weight: bold;
  margin-bottom: 7px;
}
.sec_movie .movie {
  width: 100%;
  aspect-ratio: 16/9;
}
.sec_movie .movie iframe {
  width: 100%;
  height: 100%;
}
/* スライダー
------------------------- */
/* Arrows */
.slick-prev, .slick-next {
    width: 30px;
    height: 30px;
    bottom: -65px;
    top: auto;
    z-index: 10;
}
.slick-prev {
    left: 20px;
    z-index: 10;
}
.slick-next {
    right: 20px;
}
.slick-prev:before, .slick-next:before {
  width: 30px;
  height: 30px;
  display: block;
  opacity: 0.6;
  content: "";
}
.slick-prev:before {
  background: url("../../../imgs/sp/icon_prev_g.png") no-repeat;
  background-size: contain;
}
.slick-next:before {
  background: url("../../../imgs/sp/icon_next_g.png") no-repeat;
  background-size: contain;
}

/* Dots */
.slick-dotted.slick-slider {
    margin-bottom: 70px;
}
.slick-dots {
    bottom: -40px;
}
.slick-dots li {
    margin: 0 8px;
    width: 30px;
}
.slick-dots li button:before {
    font-size: 18px;
    color: #9b8847;
}
.slick-dots li.slick-active button:before {
    color: #B5A25D;
}

/* カテゴリタイトル */
.category_ttl {
  text-align: center;
  padding: 10px;
  color: #fff;
  background: #B5A25D;
  font-size: 36px;
  font-weight: bold;
}
/* homeaesthetic フルサイズ商品説明レイアウト */
.cont_item.info_all {
  padding-right: 0;
  padding-bottom: 0;
}
.cont_item.info_all .item_name_box{
  width: 100%;
  padding: 0 3% 5% 3%;
}
.cont_item.info_all .item_img_box {
  width: 100%;
  margin-left: 0;
}
.cont_item.info_all h3 {
  margin-bottom: 5px;
}
.icon_taku {
    position: relative;
}
.item_block p.icon_taku::after {
    content: "";
    background: url("../../../imgs/sp/taku_icon.gif") 7px 2px no-repeat;
    background-size: 80%;
    display: inline-block;
    width: 35px;
    height: 30px;
    position: absolute;
    bottom: 5px;
}
.cont_item.info_all .product_info {
  font-size: 24px;
  line-height: 180%;
}
.cont_item.info_all .product_info .comments {
  font-size: 18px;
}
.cont_item.info_all .price {
  font-size: 24px;
  font-weight: bold;
}
span.icon_takuhai {
  display: inline-block;
  vertical-align: text-top;
  line-height: 1;
}
.icon_takuhai img {
  width: 28px;
}

/*======================================
      ブランド別カラー
=======================================*/
:root {
  --color-homecare: #00A0E9;
  --color-homecare_light: #F1F9F9;
  --color-tous: #B60005;
  --color-tous_light: #FDEEF1;
  --color-tous_border: #FFDCDC;
}
/* var(--color-tous) */

/* #homecare
------------------------- */
#homecare .cont_acc .acc_trigger {
  background: url("../../../homecare/imgs/sp/icon_star.png") 35px center no-repeat #F1F9F9;
  background-size: 30px 30px;
}
#homecare .cont_acc .acc_trigger::after, #homecare .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #00A0E9;
  border-right: 2px solid #00A0E9;
}
#homecare .cont_acc li, #homecare .cont_acc .acc_detail {
  border-color: #00A0E9;
}
#homecare .icon_cate {
  background: #00A0E9;
}

/* #egf_fgf
------------------------- */
#egf_fgf .cont_acc .acc_trigger {
  background: url("../../../first_step_items/imgs/sp/icon_star.png") 35px center no-repeat #E7E3EB;
  background-size: 30px 30px;
}
#egf_fgf .cont_acc .acc_trigger::after, #egf_fgf .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #5C372D;
  border-right: 2px solid #5C372D;
}
#egf_fgf .cont_acc li, #egf_fgf .cont_acc .acc_detail {
  border-color: #5C372D;
}
#egf_fgf .icon_cate {
  background: #5C372D;
}

/* #tous_beaux
------------------------- */
#tous_beaux .cont_acc .acc_trigger {
  background: url("../../../tous_beaux/imgs/sp/icon_star.png") 35px center no-repeat #FDEEF1;
  background-size: 30px 30px;
}
#tous_beaux .cont_acc .acc_trigger::after, #tous_beaux .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #B60005;
  border-right: 2px solid #B60005;
}
#tous_beaux .cont_acc li, #tous_beaux .cont_acc .acc_detail {
  border-color: #B60005;
}
#tous_beaux .icon_cate {
  background: #B60005;
}

/* #prenity
------------------------- */
#prenity .cont_acc .acc_trigger {
  background: url("../../../prenity/imgs/sp/icon_star.png") 35px center no-repeat #E7E6F3;
  background-size: 30px 30px;
}
#prenity .cont_acc .acc_trigger::after, #prenity .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #6356A3;
  border-right: 2px solid #6356A3;
}
#prenity .cont_acc li, #prenity .cont_acc .acc_detail {
  border-color: #6356A3;
}
#prenity .icon_cate {
  background: #6356A3;
}

/* #latia
------------------------- */
#latia .cont_acc .acc_trigger {
  background: url("../../../latia/imgs/sp/icon_star.png") 35px center no-repeat #D2ECFA;
  background-size: 30px 30px;
}
#latia .cont_acc .acc_trigger::after, #latia .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #62AFE2;
  border-right: 2px solid #62AFE2;
}
#latia .cont_acc li, #latia .cont_acc .acc_detail {
  border-color: #62AFE2;
}
#latia .icon_cate {
  background: #62AFE2;
}

/* #mediquest
------------------------- */
#mediquest .cont_acc .acc_trigger {
  background: url("../../../mediquest/imgs/sp/icon_star.png") 35px center no-repeat #ced9eb;
  background-size: 30px 30px;
}
#mediquest .cont_acc .acc_trigger::after, #mediquest .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #163078;
  border-right: 2px solid #163078;
}
#mediquest .cont_acc li, #mediquest .cont_acc .acc_detail {
  border-color: #163078;
}
#mediquest .icon_cate {
  background: #5b6ea0;
}

/* #based
------------------------- */
#based .cont_acc .acc_trigger {
  background: url("../../../based/imgs/sp/icon_star.png") 35px center no-repeat #F9F9F5;
  background-size: 30px 30px;
}
#based .cont_acc .acc_trigger::after, #based .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #6F6E6E;
  border-right: 2px solid #6F6E6E;
}
#based .cont_acc li, #based .cont_acc .acc_detail {
  border-color: #6F6E6E;
}
#based .icon_cate {
  background: #6F6E6E;
}

/* #pracenta
------------------------- */
#pracenta .cont_acc .acc_trigger {
  background: url("../../../pracenta/imgs/sp/icon_star.png") 35px center no-repeat #FEF1EC;
  background-size: 30px 30px;
}
#pracenta .cont_acc .acc_trigger::after, #pracenta .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #B60005;
  border-right: 2px solid #B60005;
}
#pracenta .cont_acc li, #pracenta .cont_acc .acc_detail {
  border-color: #B60005;
}
#pracenta .icon_cate {
  background: #B60005;
}

/* #special_collection_items
------------------------- */
#special_collection_items .cont_acc .acc_trigger {
  background: url("../../../special_collection_items/imgs/sp/icon_star.png") 35px center no-repeat #EAEFF9;
  background-size: 30px 30px;
}
#special_collection_items .cont_acc .acc_trigger::after, #special_collection_items .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #0B318F;
  border-right: 2px solid #0B318F;
}
#special_collection_items .cont_acc li, #special_collection_items .cont_acc .acc_detail {
  border-color: #0B318F;
}
#special_collection_items .icon_cate {
  background: #0B318F;
}

/* #limited_collection_items
------------------------- */
#limited_collection_items .cont_acc .acc_trigger {
  background: url("../../../limited_collection_items/imgs/sp/icon_star.png") 35px center no-repeat #E0D5AF;
  background-size: 30px 30px;
}
#limited_collection_items .cont_acc .acc_trigger::after, #limited_collection_items .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #B5A25D;
  border-right: 2px solid #B5A25D;
}
#limited_collection_items .cont_acc li, #limited_collection_items .cont_acc .acc_detail {
  /* border-color: #B5A25D; */
  border-color: #99894f;
}
#limited_collection_items .icon_cate {
  background: #B5A25D;
}

/* #supplement
------------------------- */
#supplement .cont_acc .acc_trigger {
  background: url("../../../supplement/imgs/sp/icon_star.png") 35px center no-repeat #fde0a6;
  background-size: 30px 30px;
}
#supplement .cont_acc .acc_trigger::after, #supplement .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #F08300;
  border-right: 2px solid #F08300;
}
#supplement .cont_acc li, #supplement .cont_acc .acc_detail {
  border-color: #F08300;
}
#supplement .icon_cate {
  background: #F08300;
}
#supplement .icon_cate.letter_more {
  width: 410px;
}

/* #homeaesthetic
------------------------- */
#homeaesthetic .cont_acc .acc_trigger {
  background: url("../../../homeaesthetic/imgs/sp/icon_star.png") 35px center no-repeat #e5e8ef;
  background-size: 30px 30px;
}
#homeaesthetic .cont_acc .acc_trigger::after, #homeaesthetic .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #002657;
  border-right: 2px solid #002657;
}
#homeaesthetic .cont_acc li, #homeaesthetic .cont_acc .acc_detail {
  border-color: #002657;
}
#homeaesthetic .icon_cate {
  background: #002657;
  width: 14em;
  text-align: center;
}
#homeaesthetic .icon_cate.letter_more {
  width: auto;
}
#homeaesthetic .icon_cate.cosme {
  background: #1c80e4;
}

/* #luwont
------------------------- */
#luwont .cont_acc .acc_trigger {
  background: url("../../../luwont/imgs/sp/icon_star.png") 35px center no-repeat #dfebdf;
  background-size: 30px 30px;
}
#luwont .cont_acc .acc_trigger::after, #luwont .cont_acc .acc_trigger.active::after {
  border-top: 2px solid #947d64;
  border-right: 2px solid #947d64;
}
#luwont .cont_acc li, #luwont .cont_acc .acc_detail {
  border-color: #947d64;
}
#luwont .icon_cate {
  background: #947d64;
  width: 200px;
}
#luwont .icon_cate.letter_more {
  width: auto;
}
#luwont .icon_cate.cosme {
  background: #1c80e4;
}

/* ======================================
      BASE
=======================================*/
.mark_size {
  font-size: 36px;
  line-height: 1;
}
.mb_7 {
  margin-bottom: 7px;
}
.mb_10 {
  margin-bottom: 10px;
}
.fs_16 {
  font-size: 16px;
}
.fs_17 {
  font-size: 17px;
}
.fs_18 {
  font-size: 18px;
}
.fs_19 {
  font-size: 19px;
}
.fs_20 {
  font-size: 20px;
}
.fs_21 {
  font-size: 21px;
}
.fs_22 {
  font-size: 22px;
}
.fs_23 {
  font-size: 23px;
}
.fs_24 {
  font-size: 24px;
}
.fs_25 {
  font-size: 25px;
}
.font_b {
  font-weight: bold;
}
.pd0 {
  padding: 0!important;
}

/* ======================================
      2026 NEW
=======================================*/
/* ブランド一覧 */

.brand_lineup .slick-dotted.slick-slider {
    margin-bottom: 30px;
}
.brand_lineup .slick-dotted.slick-slider button {
  display: none;
}
section.brand {
  display: flex;
  flex-wrap: wrap;
}
section.brand .goods_cont {
  width: 50%;
  padding: 0 0 20px
}
section.brand .goods_imgs {
  text-align: center;
  width: 90%;
  margin: auto auto 6px;
}
section.brand .goods_imgs img {
  width: auto;
  height: 220px;
}
section.brand .goods_name {
  /* margin-left: 10px; */
}
section.brand .goods_cont:nth-child(odd) .goods_name {
  padding-left: 75px
}
section.brand .goods_cont:nth-child(even) .goods_name {
  /* padding-right: 85px; */
  padding-left: 55px;
}
section.brand .daynight {
  margin-left: 5px;
}
section.brand .daynight img {
  width: 22px;
  vertical-align: sub;
}
section.brand .goods_name h3 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
}
section.brand .goods_name .price {
  font-size: 20px;
  font-size: 21px;
}
section.brand .goods_name .price span {
  /* font-size: 14px; */
}
.brand_lineup .cate_title {
  font-size: 18px;
  font-weight: bold;
}

/* 商品ページ */
.product_page .cate_title {
  font-size: 22px;
  font-weight: bold;
}
.product_page .ht_ttl {
  font-size: 26px;
  display: inline-block;
  padding: 5px 26px;
  margin-bottom: -30px;
}
.product_page .ht_ttl + .acc_detail {
  padding-top: 6%;
  padding-bottom: 7%;
}
.product_page .cont_acc {
  border-bottom: 2px solid;
}
.product_page .d-flex div[class^="icon"] {
  margin-left: 2px;
}
.product_page .icon_day {
  margin-left: 8px;
}
/* ブランド別 */
#tous_beaux .cate_title {
  color: var(--color-tous);
}
#tous_beaux.product_page .cont_acc, #tous_beaux.product_page .cont_acc .acc_detail {
  border-color: var(--color-tous_border);
}
#tous_beaux.product_page .ht_ttl {
  background: var(--color-tous_light);
}
