@charset "utf-8";
/*旧テンプレ対策*/
/*.new_detail, #product-description, #product-description h2 {
  font-size: 18px !important;
}
details {
  font-size: 13px;
}
@media screen and (min-width:769px) {
  .p-product_content__inner__img {
    margin-bottom: 3em;
  }
}
@media screen and (max-width:768px) {
  .new_detail, #product-description, #product-description h2 {
    font-size: 3.3vw !important;
  }
}*/

/*commonから出張*/
span.attention, div.attention, p.attention, .attention > li, li.attention {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
  font-size: 0.75em;
  line-height: 1.5;
}
div.attention, p.attention, .attention li, .list_normal li, div.list_normal {
  text-indent: -1em;
  padding-left: 1em;
}
.list_circle > li {
  text-indent: -1.2em;
  padding-left: 1.2em;
  line-height: 1.5;
}
ul.attention li, ul.list_normal li, ul.list_check li, ul.list_circle li, ul.list_question li {
  text-align: left;
}
ul.list_normal {
  margin-bottom: 0.5em;
}
ul.list_normal > li {
  margin-bottom: 0.1em;
  font-size: 1em;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}
.brand_color p {
  margin-bottom: 1em;
}
span {
  display: inline-block;
}
img {
  max-width: 100%;
}
.pict {
  text-align: center;
  margin: 1em 0;
}
/*commonに追加*/
sup {
  font-size: 0.5em;
}
.brand_color {
  font-weight: normal;
  line-height: 1.5;
}
.brand_color img {
  display: inline;
}
/*自由入力欄以外*/
#spec h1 {
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.new_tab {
  border-top: 2px solid #f9f1f5;
  margin: 0;
}
.new_tab summary {
  color: #ddb5c8;
  font-weight: 600;
  display: block;
  position: relative;
  padding: 0.7em 0;
  cursor: pointer;
}
.new_tab summary::-webkit-details-marker {
  display: none;
}
.new_tab summary:before {
  display: block;
  transform: rotate(45deg);
  width: 0.5em;
  height: 0.5em;
  border-bottom: 0.2em solid #e99aacb3;
  border-right: 0.2em solid #e99aacb3;
  content: '';
  transition: transform .3s;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.new_tab details[open] summary:before {
  transform: rotate(225deg);
}
.new_tab details[open] {
  margin-bottom: 2em;
}
.new_tab li {
  text-indent: -1em;
  padding-left: 1em;
}
/*========================================
新ルール
リニューアル後 .new_detailはhtmlから削除する
========================================*/
#product-description p {
  margin-bottom: 1em;
}
.brand_color {
  background: #faf1f6;
  padding: 1px 1em;
  margin-bottom: 2em;
}
.brand_color > ul.attention {
  margin-bottom: 1em;
}
@media screen and (max-width:768px) {
  .brand_color {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
  }
}
.brand_color section {
  text-align: center;
  padding: 2em 5%;
  border-radius: 1em;
  margin: 1em 0;
  background: #fff;
}
.brand_color section p {
  font-weight: normal;
  display: inline-block;
  text-align: left;
}
.brand_color h3 {
  text-align: center;
  margin-bottom: 1em;
  font-size: 1.5em;
  color: #373737;
  font-weight: bold;
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.brand_color h4 {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.brand_color strong {
  font-weight: bold;
  border-bottom: 2px solid #ffe2f3;
}
.brand_color .point:before {
  content: "POINT";
  display: block;
  line-height: 1;
  text-align: center;
  color: #dcb5c8;
  margin: 0 auto 1em;
  font-size: 0.73em;
  font-family: futura-pt, san-selif;
}
@media screen and (max-width:768px) {
.brand_color h3 {font-size:1.2em;}
}
/*内容量
----------------------------------------*/
#option09 {
  line-height: 1.3;
}
/*column
----------------------------------------*/
.column_box {
  background: #f6f9fa;
  padding: 1.5em 5%;
  border-radius: 1em;
  margin: 1em 0;
}
@media screen and (min-width:769px) {
  .column_box {
    display: flex;
    gap: 0 1em;
    align-items: center;
    /*font-size: 0.85em;*/
    flex-wrap: wrap;
  }
  .column_box > h4 {
    width: 100%;
    text-align: center;
  }
  .column_box .txt_box {
    flex: 1;
    text-align: left;
  }
  .column_box img {
    width: 40%;
  }
  .img_right {
    float: right;
    margin-left: 1em;
    margin-bottom: 1em;
    max-width: 45%;
  }
}
@media screen and (max-width:768px) {
  .img_right {
    display: block;
    margin: 1em auto;
    text-align: center;
  }
  .column_box img {
    max-width: 80%;
    margin: 1em auto;
  }
}
/*香りのピラミッド
----------------------------------------*/
.scent_box {
  position: relative;
  padding-top: 1.5em;
  text-align: center;
  /*font-size: 0.85em;*/
  color: #333;
}
.scent_box:before {
  content: "";
  display: block;
  background-image: linear-gradient(0deg, rgba(240, 226, 226, 0.6), rgba(253, 177, 170, 0.6));
  height: /* calc(20em / 2)*/ 100%;
  width: 90%;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 0;
}
.scent_box li {
  display: block !important;
  position: relative;
  z-index: 1;
  padding: 1em 5%;
  border-top: 1px dashed #fff;
}
.scent_box li:first-child {
  border-top: none;
}
.scent_box li:before {
  content: "middle";
  display: block;
  /*font-size: 0.85em;*/
  color: #fff;
}
.scent_box li:first-child:before {
  content: "top";
}
.scent_box li:last-child:before {
  content: "last";
}
/*フリー処方
----------------------------------------*/
ul.free_list li {
  text-indent: 0;
  display: inline-block;
  border: 1px solid #888;
  color: #888;
  border-radius: 3em;
  padding: .2em 1.5em;
  margin: .2em;
  text-align: center;
  position: relative;
  overflow: hidden !important;
}
ul.free_list li:after {
  content: "";
  display: block;
  width: 3em;
  height: 1px;
  border-top: 1px solid #888;
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
/*成分の丸
----------------------------------------*/
.seibun_box {
  display: flex;
  gap: 0.5em 1em;
  margin: 1em auto;
  width: auto;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
}
.seibun_box dt {
  width: 100%;
  text-align: center;
  /*font-weight: bold;
  font-size: 0.85em;*/
}
.seibun_box dt:before {
  content: "＜";
}
.seibun_box dt:after {
  content: "＞";
}
.seibun_box dd {
  /*flex: 1;*/
  min-width: 22%;
  min-height: 6em;
  background: url(../img/drop.png) no-repeat center center;
  background-size: contain;
  /*font-size: 0.75em;*/
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: -0.02em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.seibun_box dd strong {
  /*font-weight: bold;
  font-size: 1.2em;*/
  border: none;
}
.seibun_box dd span {
  display: inline-block;
}
.seibun_box dd:has(img) {
  background: none;
  font-size: 0.75em;
  font-weight: normal;
  width: 30%;
  display: block;
}
/*option08 FAQ
----------------------------------------*/
.faq_box {
  border: 0.8em solid #FBF1F7;
  padding: 1.2em 5%;
  margin-bottom: 2em;
}
.faq_box:before {
  content: "FAQ";
  display: block;
  font-size: 1.5em;
  color: #DCB5C8;
  font-weight: bold;
  text-align: center;
  font-family: "游明朝", serif;
  margin: 1em 0;
}
.faq_box dl + dl {
  border-top: 0.1em solid #f9f1f5;
}
.faq_box dt, .faq_box dd {
  padding: 1.5em;
  padding-left: 2em;
}
.faq_box dt {
  color: #ddb5c8;
  font-weight: bold;
  position: relative;
  cursor: pointer;
  padding-bottom: 1.2em;
}
.faq_box dt:before {
  content: "Q.";
  font-family: "游明朝", serif;
  font-size: 1.2em;
  width: 1.5em;
  position: absolute;
  left: 0;
  top: 1em;
}
.faq_box dt:after {
  display: block;
  transform: rotate(45deg);
  width: 0.5em;
  height: 0.5em;
  border-bottom: 0.2em solid #e99aacb3;
  border-right: 0.2em solid #e99aacb3;
  content: '';
  transition: transform .3s;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.faq_box dt.open:after {
  transform: rotate(225deg);
}
.faq_box dd {
  padding-top: 0;
  display: none;
}