@charset "UTF-8";

.product_list_head{
  padding: 0;
}

.group-detail-area{
  width: 100%;
  margin: auto;
}

.sp {
  display: none!important;
}
.herboristerie_2023 img {
    width: 100%;
}
/* コンテンツ部分のみ横幅100%に調整 */
#Wrap,
.wrapBottom,
.wrapTop {
  width: 100%;
  background-color: #fff;
}

#header{
  background-color: #fff;
}

.breadcrumb_wrapper {
  position: absolute;
  z-index: 999;
  top: 10rem;
  left: 50%;
  transform: translate(-50%, 0);
  width: 110rem;
  margin: 0 auto;
}
.breadcrumbs * {
  color: #fff;
}

.lp_contents .img {
  width: 100%;
}
#Contents {
  padding: 0;
}

.herboristerie_2023 a:hover{
  opacity: 0.7;
}

#main_container{
  letter-spacing: 0;
  font-family: HiraKakuProN-W3, sans-serif;
  background-color: #fff;
}

.herboristerie_2023 .heading{
  max-width: 100%;
  margin: auto;
  margin-bottom: 9.4rem;
}

.herboristerie_2023 .heading_first{
  height: 60rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url(https://www.cosmekitchen-webstore.jp/Page/Lp/2023herboristerie/img/main_img01pc.jpg);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center top 65%;
  margin: auto;
}

.herboristerie_2023 .heading_ttl{
  width: 38.5rem;
  margin: auto;
}

.herboristerie_2023 .heading_second{
  background-image: url(https://www.cosmekitchen-webstore.jp/Page/Lp/2023herboristerie/img/main_img02pc.jpg);
  margin: auto;
  height: 40.7rem;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  margin: auto;
  color: #FFFFFF;
}

.herboristerie_2023 .heading_sub_ttl{
  padding-top: 7.5rem;
  margin-bottom: 1.4rem;
  font-size: 2rem;
  line-height: 1.75;
  font-weight: 600;
  text-align: center;
}

.herboristerie_2023 .heading_txt{
  font-size: 1.8rem;
  line-height: 2;
  text-align: center;
}

.herboristerie_2023 .menu_area .heading_ttl{
  line-height: 2.8;
  letter-spacing: 0.06em;
}

/*1段目*/

.product_area{
  width: 100%;
  background-color: #E5E5E5;
  color: #476DAD;
  text-align: center;
}

.product_area.product_area_top{
  padding-top: 8rem;
  padding-bottom: 4rem;
}

.content_list_area{
  width: 120rem;
  margin: auto;
}

.content_list{
  margin-bottom: 3.8rem;
  width: 116rem;
  display: flex;
  gap: 3.8rem;
}

.product_area.product_area_top .content_list{
  margin-left: auto;
}

.product_area .content_inner{
  position: relative;
  margin-top: 11.7rem;
  width: 32.2rem;
}

.product_area .content_ttl{
  margin-bottom: 6.5rem;
  font-family: "lato", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 4rem;
  font-weight: bold;
}

.product_area .border-side{
  position: absolute;
  top: 6.7rem;
  left: 50%;
  border-left: 1px #707070 solid;
  height: 2.9rem;
  font-weight: bold;
}

.product_area .item_name{
  margin-bottom: 1.2rem;
  font-size: 2.6rem;
  line-height: 1.5;
  font-weight: 600;
  text-align: center;
}

.product_area .item_price{
  margin-bottom: 1.8rem;
  font-size: 2rem;
  line-height: 1.65;
  font-weight: 600;
  text-align: center;
  font-weight: 600;
}

.product_area .item_price .tax{
  font-size: 1.4rem;
  line-height: 2.357;
  font-weight: 600;
}

.product_area .item_btn{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFFFFF;
  margin: auto;
  padding: 0.9rem 0;
  width: 20rem;
  border: 1px #4F6DA8 solid;
  border-radius: 10rem;
  font-family: "lato", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing: 0.06em;
  color: #476DAD;
}

.product_area .item_btn:hover{
  background-color: #41649F;
  color: #FFF;
  opacity: 1;
}

.product_area .content_img{
  width: 80rem;
}

.product_area .content_txt{
  width: 79.5rem;
  margin: auto;
  font-size: 1.8rem;
  line-height: 2;
  color: #4B4B4B;
}

/*2段目*/
.component_area{
  background-color: #F5F5F5;
  padding-top: 3.2rem;
  padding-bottom: 3rem;
}

.component_list{
  position: relative;
  margin: auto;
  display: flex;
  gap: 10.5rem;
  width: 104.1rem;
}

.component_inner{
  width: 47rem;
}

.component_ttl{
  margin-bottom: 0.4rem;
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 600;
  color: #476DAD;
  text-align: center;
}

.component_txt{
  font-size: 1.3rem;
  line-height: 1.75;
  text-align: left;
  color: #4B4B4B;
}

.component_txt.txt_right{
  font-size: 1.4rem;
  line-height: 1.75;
  text-align: left;
}

.component_list .border-side{
  position: absolute;
  height: 100%;
  top: 0;
  left: 50.2%;
  border-left: 1px #C9C9C9 solid;
}


/*3段目*/
.product_area.product_area_bottom{
  padding-top: 8rem;
  padding-bottom: 3.8rem;
}

.product_area.product_area_bottom .content_list{
  margin-right: auto;
}

/*4段目*/
.teacher_area{
  margin-top: 8rem;
}

.border_area{
  border: 1px #476DAD solid;
  width: 106rem;
  margin: auto;
}

.border_area.border_area_bottom{
  margin-top: 9rem;
}

.teacher_area .content_ttl{
  padding-bottom: 4rem;
  margin-bottom: 6.2rem;
  font-size: 2.6rem;
  line-height: 1.5;
  text-align: center;
  color: #476DAD;
  font-weight: 600;
}

.teacher_area .teacher_list{
  display: flex;
  gap: 4rem;
  width: 96rem;
  padding-top: 4.5rem;
  padding-bottom: 3.7rem;
  margin: auto;
}

.teacher_img{
  margin-top: -9.5rem;
  width: 32rem;
}

.teacher_name{
  margin-top: 1rem;
  font-size: 1.5rem;
  line-height: 2.4;
  font-weight: 600;
  text-align: center;
  color: #476DAD;
}

.teacher_txt{
  width: 60rem;
  font-size: 1.5rem;
  line-height: 2;
  color: #4B4B4B;
}

.teacher_btn_area{
  margin-top: 6.2rem;
}

.teacher_btn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50rem;
  padding: 2rem 0;
  margin: auto;
  background-color: #476DAD;
  border: 1px #4F6DA8 solid;
  font-family: "lato", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.06em;
  border-radius: 16rem;
  color: #FFF;
}

/************************
SPデバイス調整
************************/
@media only screen and (max-width: 768px) {
  .sp {
    display: block!important;
  }

  .pc {
    display: none!important;
  }

  .herboristerie_2023 img {
    width: 100%;
    height: 100%;
}

  /* common */
#Wrap {
    padding-top: 0;
}


#share {
  z-index: 10!important;
}

#main_container{
  letter-spacing: 0;
  font-family: "ヒラギノ角ゴ ProN W3", HiraKakuProN-W3, 游ゴシック, "Yu Gothic", メイリオ, Meiryo, sans-serif;
  background-color: #fff;
}

.herboristerie_2023 .heading{
  max-width: 100%;
  margin: auto;
  margin-bottom: 9.4rem;
}

.herboristerie_2023 .heading_first{
  height: calc(428* (100vw / 428));
  display: block;
  background-image: url(https://www.cosmekitchen-webstore.jp/Page/Lp/2023herboristerie/img/main_img01sp.jpg);
}

.herboristerie_2023 .heading_ttl{
  width: calc(270* (100vw / 428));
  margin: auto;
  padding-top: calc(40* (100vw / 428));
}

.herboristerie_2023 .heading_second{
  background-image: url(https://www.cosmekitchen-webstore.jp/Page/Lp/2023herboristerie/img/main_img02sp.jpg);
  height: calc(346* (100vw / 428));
  margin: auto;
}

.herboristerie_2023 .heading_sub_ttl{
  padding-top: calc(57* (100vw / 428));
  margin-bottom: calc(6* (100vw / 428));
  font-size: calc(18* (100vw / 428));
}

.herboristerie_2023 .heading_txt{
  font-size: calc(14* (100vw / 428));
}

.herboristerie_2023 .menu_area .heading_ttl{
  line-height: 2.8;
  letter-spacing: 0.06em;
}

/*1段目*/

.product_area{
  width: 100%;
  background-color: #E5E5E5;
  color: #476DAD;
  text-align: center;
}

.product_area.product_area_top{
  padding-top: calc(62* (100vw / 428));
  padding-bottom: calc(30* (100vw / 428));
}

.content_list_area{
  width: 100%;
  margin: auto;
}

.content_list{
  position: relative;
  margin-bottom: calc(22* (100vw / 428));
  width: calc(388* (100vw / 428));
  display: flex;
  flex-direction: column;
  gap: 0;
}

.product_area.product_area_top .content_list {
  margin: auto;
  margin-bottom: calc(25* (100vw / 428));
}

.product_area.product_area_bottom .content_list {
  margin: auto;
  margin-bottom: calc(22* (100vw / 428));
}

.product_area .content_inner{
  position: relative;
  margin: auto;
  margin-top: calc(9* (100vw / 428));
  width: 100%;
  order: 2;
}

.product_area .content_ttl{
  margin-bottom: calc(24* (100vw / 428));
  font-family: "lato", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: calc(30* (100vw / 428));
}

.product_area .border-side._top{
  position: absolute;
  top: -3.5%;
  left: 50%;
  border-left: 1px #707070 solid;
  height: calc(31* (100vw / 428));
  font-weight: bold;
}

.product_area .item_name{
  margin-bottom: calc(2* (100vw / 428));
  font-size: calc(20* (100vw / 428));
}

.product_area .item_price{
  margin-bottom: calc(8* (100vw / 428));
  font-size: calc(17* (100vw / 428));
  line-height: 2.0625;
}

.product_area .item_price .tax{
  font-size: calc(12* (100vw / 428));
  line-height: 2.75;
  font-weight: 600;
}

.product_area .item_btn{
  padding: calc(9* (100vw / 428)) 0;
  width: calc(200* (100vw / 428));
  border: 1px #4F6DA8 solid;
  border-radius: calc(30* (100vw / 428));
  font-size: calc(14* (100vw / 428));
}

.product_area .item_btn:hover{
  background-color: #41649F;
  color: #FFF;
}

.product_area .content_img{
  width: calc(388* (100vw / 428));
}

.product_area .content_txt{
  width: calc(388* (100vw / 428));
  margin: auto;
  font-size: calc(14* (100vw / 428));
  line-height: 2;
  color: #4B4B4B;
}

/*2段目*/
.component_area{
  background-color: #F5F5F5;
  padding-top: calc(32* (100vw / 428));
  padding-bottom: calc(32* (100vw / 428));
}

.component_list{
  position: relative;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: calc(46* (100vw / 428));
  width: calc(388* (100vw / 428));
}

.component_inner{
  width: calc(388* (100vw / 428));
}

.component_ttl{
  margin-bottom: calc(6* (100vw / 428));
  font-size: calc(16* (100vw / 428));
}

.component_txt{
  font-size: calc(12* (100vw / 428));
}

.component_txt.txt_right{
  font-size: calc(14* (100vw / 428));
}

.component_list .border-side{
  position: absolute;
  width: calc(388* (100vw / 428));
  height: 0;
  top: 37%;
  left: 0%;
  border-left: none;
  border-bottom: 1px #C9C9C9 solid;
}


/*3段目*/
.product_area.product_area_bottom{
  padding-top: calc(60* (100vw / 428));
  padding-bottom: calc(34* (100vw / 428));
}

.product_area.product_area_bottom .content_list{
  margin-right: auto;
}

.component_list .border-side.side_bottom{
  position: absolute;
  width: calc(388* (100vw / 428));
  height: 0;
  top: 27%;
  left: 0%;
  border-left: none;
  border-bottom: 1px #C9C9C9 solid;
}

/*4段目*/
.teacher_area{
  margin-top: calc(57* (100vw / 428));
}

.border_area{
  border: 1px #476DAD solid;
  width: calc(388* (100vw / 428));
}

.border_area.border_area_bottom{
  margin-top: calc(220* (100vw / 428));
}

.teacher_area .content_ttl{
  margin-bottom: calc(173* (100vw / 428));
  font-size: calc(20* (100vw / 428));
  padding-bottom: calc(20* (100vw / 428));
}

.teacher_area .teacher_list{
  display: flex;
  flex-direction: column;
  gap: calc(12* (100vw / 428));
  width: calc(388* (100vw / 428));
  padding-top: calc(40* (100vw / 428));
  padding-bottom: calc(20* (100vw / 428));
  margin: auto;
}

.teacher_img{
  margin: auto;
  margin-top: calc(-200* (100vw / 428));
  width: calc(270* (100vw / 428));
}

.teacher_name{
  margin-top: calc(9* (100vw / 428));
  font-size: calc(15* (100vw / 428));
  line-height: 2.6;
}

.teacher_txt{
  width: calc(348* (100vw / 428));
  margin: auto;
  font-size: calc(13* (100vw / 428));
}

.teacher_btn_area{
  margin-top: calc(39* (100vw / 428));
}

.teacher_btn{
  width: calc(360* (100vw / 428));
  padding: calc(5* (100vw / 428)) 0;
  border: 1px #4F6DA8 solid;
  font-size: calc(18* (100vw / 428));
  line-height: 1.5;
  border-radius: calc(40* (100vw / 428));
  text-align: center;
}

}

/* for Tablet */
@media screen and (min-width: 768px) and (max-width: 1500px) {

  /*=======================================
                  Tablet
========================================*/
  /* ===================
　　 General
=================== */
  #main_container {
      font-size: calc(10* (100vw / 1500))!important;
  }

  * {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
  }

}

