@charset "UTF-8";
/*--- FreePage CSS ---*/
h1, h2, h3, h4 {
  margin: 0;
  padding: 0;
  background: none;
}

/* header */
.header .header-logo {
  margin: 0 auto;
}

.pane-main, .container {
  width: 100%;
  padding: 0;
}

.content-area {
  font-size: 3.19vw;
  line-height: 1.75;
  text-align: center;
  color: #333;
}

.sec_ttl h3 {
  font-size: 5.33vw;
  font-weight: 600;
  text-align: center;
  font-feature-settings: "palt" 1;
  margin: 0 auto;
}

/* contents */
.header {
  border-bottom: none !important;
}

.header .header-logo {
  width: 63.9vw !important;
}

.header-fixed a {
  width: 60% !important;
  margin: auto;
}

body > h1 {
  padding-left: 4vw;
  padding-right: 4vw;
  font-size: 2vw;
  margin-bottom: 5.33vw !important;
}

.pane-contents {
  margin-top: 5.33vw !important;
}

/* 共通パーツ
============================== */
.l-wrapper {
  width: 100%;
  max-width: 1077px;
  margin-left: auto;
  margin-right: auto;
}

.c-flex {
  display: flex;
}

.c-text {
  font-size: 3.47vw;
  line-height: 1.88;
  color: #333;
  text-align: justify;
}
.c-text em {
  font-weight: bold;
  font-style: normal;
}

strong {
  font-weight: bold;
}

.u-color__purple02 {
  color: #330066;
}

.page-saikokaryukotuboreito * {
  color: #333;
  box-sizing: border-box;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

/* ====== その他共通 ====== */
/* fadeIn */
@keyframes fadeInAnime {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInTrigger {
  opacity: 0;
}

.fadeIn {
  animation-name: fadeInAnime;
  animation-duration: 1s;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
}

/* circle01 */
@keyframes circle01 {
  0% {
    transform: scale(0);
  }
  100% {
    opacity: 0;
    transform: scale(2);
  }
}
@media screen and (max-width: 768px) {
  /* 共通パーツ
  ============================== */
  .l-wrapper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .c-flex, .flex {
    display: flex;
  }
  .c-text {
    font-size: 3.47vw;
    line-height: 1.88;
    color: #333;
  }
  .c-text em {
    font-weight: bold;
  }
  strong {
    font-weight: bold;
  }
  .u-color__purple02 {
    color: #330066;
  }
  .page-saikokaryukotuboreito * {
    color: #333;
    box-sizing: border-box;
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  }
  /* kv
  ============================== */
  .main_vg {
    width: 100vw;
  }
  .main_vg * {
    font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", serif;
  }
  .l-kv__top {
    width: 100%;
    height: auto;
    aspect-ratio: 750/280;
    background: url("../../img/usr/freepage/saikokaryukotuboreito/img_bg_kv_sp.png") no-repeat top center/auto 100%;
    text-align: center;
    padding: 2.7vw 0 5.73vw;
    position: relative;
    z-index: 1;
    margin-bottom: -6.53vw;
  }
  .l-kv__top .c-box__ellipse span {
    font-size: 1.87vw;
    color: #B193C9;
    line-height: 1.75;
    border-radius: 12px;
    background: #fff;
    display: inline-block;
    padding: 0 1.47vw;
  }
  .l-kv__top .u-color__white {
    font-size: 4.27vw;
    line-height: 1;
    color: #fff;
    position: relative;
    display: inline-block;
    letter-spacing: 0.1em;
    margin-top: 2.67vw;
  }
  .l-kv__top .u-color__white::before {
    position: absolute;
    content: " ";
    width: 100%;
    height: auto;
    display: inline-block;
    top: 100%;
    left: 0;
    background: url("../../img/usr/freepage/saikokaryukotuboreito/line_kv.png") no-repeat top center/100% auto;
    aspect-ratio: 534/25;
  }
  .l-kv__top .u-color__white .u-text__small {
    font-size: 3.47vw;
    color: #fff;
    line-height: 1;
    letter-spacing: 0.01em;
  }
  .l-kv__top .u-color__purple01 {
    font-size: 4vw;
    font-weight: 500;
    color: #330066;
    line-height: 1.6;
    letter-spacing: 0.075em;
    margin-top: 3.2vw;
  }
  .l-kv__main {
    position: relative;
  }
  .l-kv__main * {
    font-weight: 500;
  }
  .l-kv__main .p-subtitle01 {
    position: absolute;
    writing-mode: vertical-lr;
    font-size: 8vw;
    line-height: 1;
    letter-spacing: 0.075em;
    color: #6C4D99;
    bottom: 29.2%;
    left: 21.2%;
    margin: 0;
  }
  .l-kv__main .p-subtitle01 .u-text__small {
    font-size: 6.67vw;
    color: #6C4D99;
  }
  .l-kv__main .p-subtitle02 {
    position: absolute;
    writing-mode: vertical-lr;
    font-size: 8.67vw;
    line-height: 1;
    letter-spacing: 0.075em;
    color: #AAB23F;
    bottom: 7.9%;
    left: 10%;
    margin: 0;
  }
  .l-kv__main .p-subtitle02 .u-text__small {
    font-size: 8vw;
    line-height: 1;
    color: #AAB23F;
  }
  .l-kv__main .p-subtitle02 .u-text__large {
    font-size: 10.67vw;
    line-height: 1;
    letter-spacing: 0.075em;
    color: #AAB23F;
  }
  .l-kv__main .p-title__level1 {
    position: absolute;
    font-size: 7.33vw;
    line-height: 1;
    letter-spacing: 0.075em;
    bottom: 9.3%;
    left: 21.73%;
    margin: 0;
    padding: 0;
  }
  .l-kv__main .p-title__level1 * {
    color: #AAB23F;
  }
  .l-kv__main .p-title__level1 ruby {
    position: relative;
  }
  .l-kv__main .p-title__level1 rb[data-ruby]::before {
    content: attr(data-ruby);
    position: absolute;
    text-align: right;
    font-size: 3.07vw;
    letter-spacing: 0.075em;
    line-height: 1;
    width: 100%;
    bottom: 100%;
    white-space: nowrap;
  }
  /* 睡眠不満
  ============================== */
  .l-about {
    padding: 12.34vw 4vw 10.27vw;
  }
  .l-about .l-wrapper {
    text-align: center;
  }
  .l-about .p-about__image01 {
    width: 90.8vw;
    display: inline-block;
    text-align: center;
    margin: auto;
  }
  .l-about h3 {
    font-size: 7.6vw;
    line-height: 1;
    letter-spacing: 0;
    font-weight: bold;
    margin: 4.67vw 0 6.29vw;
    padding: 0;
  }
  .l-about h3 .u-text__small {
    font-size: 5.33vw;
    line-height: 1;
    letter-spacing: 0;
    font-weight: bold;
    margin-top: 4.57vw;
    display: block;
  }
  .l-about h3 picture {
    width: 53.2vw;
    display: inline-block;
    vertical-align: sub;
    margin-left: 1.28vw;
  }
  .l-about .p-about__image03 {
    width: 53.2vw;
    display: block;
    text-align: center;
    margin: auto;
  }
  .l-about .c-about__list {
    width: 100%;
    margin: 1.71vw 0 0 2.57vw;
  }
  .l-about .c-about__list li {
    font-size: 4vw;
    font-weight: bold;
    line-height: 2.4;
    letter-spacing: 0;
    padding-left: 6.27vw;
    position: relative;
    text-align: left;
  }
  .l-about .c-about__list li::before {
    content: " ";
    display: inline-block;
    width: 4.73vw;
    height: 9.6vw;
    background: url("../../img/usr/freepage/saikokaryukotuboreito/icon_checked.png") no-repeat center left/100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  /* 睡眠with漢方
  ============================== */
  .l-with__kampo {
    width: 100vw;
    padding-bottom: 10.4vw;
    background: #FCF8EB;
  }
  .l-with__kampo .u-box__title {
    width: 100%;
    height: auto;
    text-align: center;
    padding: 12.93vw 0 0;
    margin: 0 auto 8.13vw;
  }
  .l-with__kampo h3 {
    color: #CCCCFF;
    font-size: 4.53vw;
    text-align: center;
    line-height: 2.4;
    letter-spacing: 0;
    width: 30vw;
    height: 17.2vw;
    border: 2px solid #B193C9;
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0;
  }
  .l-with__kampo h3 span {
    font-size: 4.91vw;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0;
    display: inline-block;
    background: #FCF8EB;
    position: absolute;
    color: #330066;
  }
  .l-with__kampo h3 span:nth-child(1) {
    top: 2.13vw;
    left: -3.43vw;
    padding: 1.71vw 0 1.43vw;
  }
  .l-with__kampo h3 span:nth-child(2) {
    bottom: 1.6vw;
    right: -3.33vw;
    padding: 0.86vw 0 1.43vw;
  }
  .l-with__kampo .p-about__image03 {
    width: 90.67vw;
    max-width: 680px;
    margin: 9.71vw auto 5.71vw;
    display: block;
    text-align: center;
  }
  .l-with__kampo .c-text {
    padding: 0 4vw;
  }
  .l-with__kampo .c-text:nth-child(4) {
    width: 100%;
    position: relative;
    margin-top: 10.67vw;
    line-height: 1.88;
    letter-spacing: 0;
  }
  .l-with__kampo .c-text:nth-child(4)::before {
    content: " ";
    width: 63.33vw;
    max-width: 475px;
    height: 100%;
    display: block;
    background: url(../../img/usr/freepage/saikokaryukotuboreito/img_with02.jpg) no-repeat top left/contain;
    aspect-ratio: 475/324;
    margin: 0 auto 5.93vw;
  }
  /* 漢方で断ち切る負のループ
  ============================== */
  .l-loop {
    width: 100vw;
  }
  .l-loop .l-wrapper {
    display: flex;
    flex-wrap: wrap;
  }
  .l-loop > .u-box__title {
    background: #CCCCFF;
    padding-top: 10.93vw;
    text-align: center;
    margin-bottom: -1px;
  }
  .l-loop > .u-box__title .c-subtitle {
    font-size: 3.2vw;
    line-height: 2;
    letter-spacing: 0;
    font-weight: bold;
  }
  .l-loop > .u-box__title h3 {
    width: 100%;
    padding: 0 0 0 26.4vw;
    font-size: 8.93vw;
    font-weight: bold;
    line-height: 1.17;
    letter-spacing: 0;
    text-align: left;
    margin: 2.2vw 0 0;
    position: relative;
  }
  .l-loop > .u-box__title h3::before {
    content: "";
    width: 8.4vw;
    height: 22.13vw;
    background: url("../../img/usr/freepage/saikokaryukotuboreito/icon_point.png") no-repeat top center/auto 100%;
    position: absolute;
    top: 0.87vw;
    left: 10.13vw;
  }
  .l-loop > .u-box__title h3 em {
    font-size: 14vw;
    line-height: 1;
    letter-spacing: 0;
    font-weight: bold;
    vertical-align: middle;
    font-style: normal;
  }
  .l-loop .item_area {
    order: 3;
    width: 100%;
  }
  /* ------------ おすすめな理由 ------------ */
  .l-loop .recommend {
    width: 100%;
    padding: 6.53vw 0 7.87vw;
    order: 1;
    background: #CCCCFF;
  }
  .l-loop .recommend h4, .l-loop .recommend h4 .u-text__large {
    font-size: 5.07vw;
    font-weight: bold;
    line-height: 1.38;
    letter-spacing: 0;
    text-align: center;
  }
  .l-loop .recommend h4 ruby {
    position: relative;
  }
  .l-loop .recommend h4 ruby, .l-loop .recommend h4 ruby .u-text__large {
    font-size: 5.33vw;
    font-weight: bold;
    line-height: 1.32;
    letter-spacing: 0;
  }
  .l-loop .recommend h4 ruby rb[data-ruby]::before {
    content: attr(data-ruby);
    position: absolute;
    text-align: left;
    font-size: 2.8vw;
    letter-spacing: 0.1em;
    line-height: 1.19;
    width: 100%;
    bottom: 100%;
    white-space: nowrap;
  }
  .l-loop .recommend .c-text {
    padding: 0 4vw;
    margin-top: 5.07vw;
    position: relative;
  }
  .l-loop .recommend .c-text::before {
    content: "";
    display: block;
    width: 100vw;
    max-width: 735px;
    height: auto;
    aspect-ratio: 735/458;
    background: url(../../img/usr/freepage/saikokaryukotuboreito/img_recommend01.png) no-repeat top center/contain;
    margin: 0 0 5.73vw -4vw;
  }
  .l-loop .recommend .c-text .c-marker {
    position: relative;
  }
  .l-loop .recommend .c-text .c-marker::after {
    content: "";
    position: absolute;
    display: inline-block;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    transition: background-size 1.5s;
    width: 100%;
    height: 1.2vw;
    z-index: -1;
  }
  .l-loop .recommend .c-text .c-marker.u-marker__yellow::after {
    background: #FEE0A3;
  }
  .l-loop .recommend .c-text .c-marker.u-marker__blue::after {
    background: #B5E3FD;
  }
  /* ------------ 構成生薬について ------------ */
  .l-loop .herbal-medicine {
    padding: 10.93vw 4vw;
    order: 4;
  }
  .l-loop .herbal-medicine h4 {
    text-align: center;
    margin-bottom: 6.27vw;
  }
  .l-loop .herbal-medicine h4 span {
    font-size: 4.8vw;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 0.2em;
    color: #663399;
    position: relative;
    display: inline-block;
    padding: 0 3.2vw 2.45vw 0;
  }
  .l-loop .herbal-medicine h4 span::before {
    content: "";
    width: 5.47vw;
    height: 5.33vw;
    background: url("../../img/usr/freepage/saikokaryukotuboreito/icon_pen.png") no-repeat top center/auto 100%;
    display: inline-block;
    position: absolute;
    top: -1.07vw;
    right: -2.67vw;
    aspect-ratio: 41/40;
  }
  .l-loop .herbal-medicine h4 span::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(to right, #663399, #663399 3.33vw, transparent 0.8vw);
    background-repeat: repeat-x;
    background-size: 19px 6px;
    background-position: left bottom;
    width: 100%;
    height: 0.8vw;
    z-index: -1;
  }
  .l-loop .herbal-medicine .herbal-medicine__link h5 {
    margin: 56px 0 13px;
    text-align: center;
    position: relative;
  }
  .l-loop .herbal-medicine .herbal-medicine__link h5::after {
    content: "構成生薬";
    font-size: 4.8vw;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.2em;
    padding: 0;
    display: inline-block;
    width: 100%;
  }
  .l-loop .herbal-medicine .herbal-medicine__link h5 span {
    font-size: 3.2vw;
    font-weight: bold;
    line-height: 3.33;
    letter-spacing: 0;
    color: #663399;
  }
  .l-loop .herbal-medicine .herbal-medicine__link .list {
    width: 77vw;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto -2.63vw;
  }
  .l-loop .herbal-medicine .herbal-medicine__link .list li {
    display: inline-block;
    margin: 0 1.69vw 2.63vw 0;
  }
  .l-loop .herbal-medicine .herbal-medicine__link .list li:nth-child(4n) {
    margin-right: 0;
  }
  .l-loop .herbal-medicine .herbal-medicine__link .list li a {
    display: inline-block;
    background: #663399;
    color: #fff;
    font-size: 3.47vw;
    font-weight: bold;
    line-height: 1.3;
    letter-spacing: 0;
    padding: 0 7px;
    border-radius: 17px;
    transition: ease-in-out 0.4s;
  }
  .l-loop .herbal-medicine .herbal-medicine__link .list li a:hover {
    background: #B193C9;
  }
  /* ------------ 寝る前悪習慣 ------------ */
  .l-loop .bad-habits {
    background: #FCF8EB;
    border-radius: 6.8vw;
    text-align: center;
    padding: 6.27vw 0 4.13vw;
    order: 5;
    width: calc(100% - 5.34vw);
    margin: auto;
  }
  .l-loop .bad-habits .u-box__title {
    width: 100%;
    margin: auto;
    position: relative;
  }
  .l-loop .bad-habits .u-box__title::after {
    content: "";
    width: 17.33vw;
    height: 7.6vw;
    background: url("../../img/usr/freepage/saikokaryukotuboreito/icon_bad-habits.png") no-repeat top center/auto 100%;
    display: inline-block;
    position: absolute;
    top: 0;
    right: 11.42%;
  }
  .l-loop .bad-habits .u-box__title h5 {
    display: inline-block;
    color: #339999;
    font-size: 3.2vw;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.2em;
    margin: 3.6vw auto 4vw;
  }
  .l-loop .bad-habits .u-box__title .c-text {
    font-size: 4.8vw;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
  }
  .l-loop .bad-habits .c-list {
    width: 100%;
    margin: 0 0 4.4vw;
    text-align: left;
    position: relative;
  }
  .l-loop .bad-habits .c-list::before {
    content: " ";
    width: 60.93vw;
    max-width: 457px;
    height: auto;
    aspect-ratio: 457/304;
    display: block;
    background: url(../../img/usr/freepage/saikokaryukotuboreito/img_bad-habits01.jpg) no-repeat top left/100%;
    margin: 5.47vw auto;
  }
  .l-loop .bad-habits .c-list li {
    color: #339999;
    font-size: 4.27vw;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0;
    padding-left: 12.99%;
  }
  .l-loop .bad-habits > .c-text {
    width: 100%;
    margin: auto;
    padding: 0 3.73vw;
    font-feature-settings: "palt" 1;
  }
  /* ------------ 不眠症が疑われたら ------------ */
  .l-loop .summarize {
    width: 100%;
    padding: 0 0 6.91vw;
    order: 2;
    background: #CCCCFF;
    margin-top: -1px;
  }
  .l-loop .summarize .l-inner {
    width: 100%;
    position: relative;
  }
  .l-loop .summarize .l-inner::after {
    content: " ";
    width: 54.93vw;
    max-width: 412px;
    height: auto;
    aspect-ratio: 412/275;
    display: block;
    background: url(../../img/usr/freepage/saikokaryukotuboreito/img_summarize01_sp.jpg) no-repeat top left/contain;
    margin: 2.24vw auto;
  }
  .l-loop .summarize .l-inner .u-strong {
    font-size: 4.8vw;
    font-weight: bold;
    line-height: 1.66;
    letter-spacing: 0;
    text-align: center;
  }
  .l-loop .summarize .l-inner .u-strong strong {
    font-weight: bold;
    color: #663399;
    font-style: normal;
  }
  .l-loop .summarize .l-inner .u-strong span {
    display: inline-block;
    color: #fff;
    background: #663399;
    font-size: 4.27vw;
    line-height: 1;
    padding: 2.8vw 4.67vw 2.67vw 10.93vw;
    margin-bottom: 1.73vw;
  }
}
/* 第2類医薬品
======================================= */
.item_area {
  /* background: url('../../img/usr/freepage/saikokaryukotuboreito/product_bnr_bg.jpg')no-repeat 0 0; */
  background: #fff;
  background-size: cover;
  padding: 9.43vw 0 4.8vw;
}

.item_area .item-img {
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
  padding: 0 5.14vw 0 5.71vw;
}

.item_area .item-img > .imgbox {
  width: 23.14%;
  overflow: hidden;
}

.item_area .item-img > .imgbox img {
  width: 100%;
}

.item_area .item-img .txtbox {
  width: 63.71%;
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.item_area .item-img .txtbox p:nth-child(1) {
  width: 21.99vw;
  height: 5.59vw;
  font-size: 2.93vw;
  border: solid 1px #000;
  text-align: center;
  margin-top: 1.14vw;
}

.item_area .item-img .txtbox p:nth-child(2) {
  font-size: 5.59vw;
  font-feature-settings: "palt" 1;
  font-weight: 600;
  margin: 2.86vw 0 3.14vw;
  line-height: 1;
}

.item_area .item-img .txtbox p:nth-child(2) > span {
  font-size: 3.19vw;
  display: block;
  font-feature-settings: "palt" 1;
  margin-top: 1.14vw;
}

.item_area .item-img .txtbox p:nth-child(3) {
  font-size: 6vw;
  font-feature-settings: "palt" 1;
  font-weight: 600;
  line-height: 1;
}

.item_area .item-img .txtbox p:nth-child(3) > span {
  font-size: 2.93vw;
}

.item_area .item-img .txtbox p .fs_s {
  font-size: 2.93vw;
  line-height: 1;
}

.item_area .item_point {
  font-size: 2.6vw;
  margin-left: 1vw;
}

.item_area .item-img .txtbox p:last-child {
  font-size: 2.57vw;
  line-height: 1;
  margin-top: 1.14vw;
  white-space: nowrap;
}
.item_area p.cp_price {
  position: relative;
  width: fit-content;
}
.item_area .cp_price_after {
  display: none;
}
.item_area .cp_price_after .fs_s {
  color: red;
}
.item_area .cp_price_after::before {
  width: 3.73vw;
  height: 2.39vw;
  content: " ";
  background: url(../../img/usr/freepage/common/cp_price_arrow.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: -38%;
  left: 18%;
  transform: translateX(-50%) rotate(90deg);
}
.item_area .cp_price_after_off {
  color: #fff;
  background: red;
  font-size: 2.93vw;
  width: 23.2vw;
  height: 100%;
  text-align: center;
  vertical-align: middle;
  padding: 1.2vw;
  margin: 0 1vw 0 0;
}

.item_area .item-btn {
  width: 92vw;
  margin: 0 auto;
}

.item_area .item-btn p {
  margin-bottom: 2.66vw;
}

.item_area .item-btn p:last-child {
  margin-bottom: 0;
}

.item_area .item-btn .btn {
  width: 100%;
  height: 11.99vw;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #6eb92b !important;
}

.item_area .item-btn .item-basket a {
  color: #fff !important;
  position: relative;
  align-items: center;
}

.item_area .item-btn .item-basket a::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 16px;
  background: url(../../img/customize/pc/common/ico_basket_white.png) 0 0/24px 16px no-repeat;
  margin-right: 8px;
}

.item_area .cp_bnr {
  width: 92vw;
  margin: 2vw auto 5.33vw;
}

.item_area .notes {
  width: 92vw;
  margin: 3.43vw auto 0;
  font-size: 2.4vw;
  text-align: left;
  font-feature-settings: "palt" 1;
  line-height: 1.75;
}
.item_area .cp_bnr.sale_bnr {
  display: none;
}
.item_area .cp_bnr {
  display: block;
}

/* セール価格時 */
.item_area._sale p.cp_price::after {
  position: absolute;
  content: " ";
  width: 100%;
  height: 2px;
  background-color: #333;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.item_area._sale .cp_price_after {
  display: flex;
  margin: 5.8vw 0 1vw;
  justify-content: flex-start;
  align-items: flex-end;
  color: red;
  font-weight: 600;
  line-height: 1;
  font-size: 6vw !important;
  position: relative;
  letter-spacing: -0.05em;
  white-space: nowrap;
}
.item_area._sale .sale_hidden {
  display: none;
}
.item_area._sale .cp_bnr {
  display: none;
}
.item_area._sale .cp_bnr.sale_bnr {
  display: block;
}




.faq_area {
  width: 92vw;
  margin: 4.66vw auto;
  text-align: left;
}

.faq_areafaq_area h3 {
  width: 92vw;
  margin: 7.99vw auto 3.99vw;
}

.faq_area dt {
  font-size: 3.5vw;
  font-weight: bold;
  line-height: 1.55;
  margin: 5.06vw 0 2.39vw 0;
  padding-left: 7.6vw;
  position: relative;
  font-feature-settings: "palt" 1;
}

.faq_area dd {
  padding-left: 7.99vw;
  position: relative;
  letter-spacing: -0.05em;
}

.faq_area dt::before {
  content: "";
  width: 5.99vw;
  height: 5.99vw;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../../img/goods/details/details_icon_q.gif") no-repeat 0 0;
  background-size: 100%;
}

.faq_area dd::before {
  content: "";
  width: 5.99vw;
  height: 5.99vw;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../../img/goods/details/details_icon_a.gif") no-repeat 0 0;
  background-size: 100%;
}

.fPNK01 {
  color: #BC9E65;
}

.faq_area dl dt span.wavyline::after,
.faq_area dl dd span.wavyline::after {
  background: url(../../img/usr/freepage/saikokaryukotuboreito/wave02_sp.png) 0 0;
  background-repeat: repeat-x;
  background-size: contain;
  bottom: -1.3vw !important;
  height: 1.3vw !important;
}

.medical-related-box .btn-outline-primary {
  width: 92vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  cursor: pointer;
  font-size: 3.99vw;
  font-weight: 600;
  line-height: 1.65;
  border: 2px solid transparent;
  transition: 0.2s;
  padding: 2vw 0;
  /* border-radius: 5px; */
  background: #fff;
  border: 2px solid #6eb92b !important;
  color: #6eb92b !important;
  position: relative;
}

.fbtn-area {
  margin-top: 10.66vw;
}

.fbtn-area > div {
  margin: 5.99vw auto;
}

.footer-back-ec-btn {
  width: 92vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 6.9vw;
  cursor: pointer;
  font-size: 3.99vw;
  font-weight: 600;
  text-align: center;
  line-height: 1.65;
  border: 2px solid transparent;
  transition: 0.2s;
  padding: 2vw 0;
  border-radius: 5px;
  background: #fff;
  border: 2px solid #6eb92b !important;
  color: #6eb92b !important;
  position: relative;
}

.footer-back-ec-btn:after,
.medical-related-box .btn-outline-primary:after {
  position: absolute;
  right: 6%;
  content: "\f054";
  font-weight: 700;
  font-size: 3.99vw;
  color: #6eb92b !important;
  font-family: "Font Awesome 5 Free";
}

.footer .footer-support {
  padding: 4vw;
  padding-bottom: 6.66667vw;
}

.footer-guide {
  padding-left: 4vw;
  padding-right: 4vw;
}

/* ====== 追従ボタン ====== */
.footer .page-top {
  border: 2px solid #fff;
  box-sizing: border-box;
  border-radius: 50%;
  z-index: 444;
}

.product-buy-fixed {
  position: fixed;
  left: 0;
  bottom: -180vw;
  z-index: 1020;
  width: 100%;
  padding: 3.2vw 14vw 3.2vw 1vw;
  background: #6eb92b;
  transition: 0.3s;
  z-index: 333;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, "Font Awesome 5 Free", sans-serif;
}

.product-buy-fixed.is-show {
  bottom: 0;
}

.product-buy-fixed-variation-list-wrapper {
  position: fixed;
  bottom: -100px;
  left: 0;
  width: 100%;
  overflow: hidden;
  background: #6eb92b;
  transition: opacity 0.5s, bottom 0.5s, visibility 0s ease 0.5s;
  opacity: 0;
  visibility: hidden;
}

.product-buy-fixed-variation-list-wrapper-inner {
  padding: 3.2vw 4vw;
}

.product-buy-fixed-variation-list-wrapper.is-open {
  transition-delay: 0s;
  bottom: 0;
  opacity: 1;
  visibility: visible;
}

.product-buy-fixed-variation-list-wrapper-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  display: block;
}

.product-buy-fixed-variation-list-wrapper-close::before, .product-buy-fixed-variation-list-wrapper-close::after {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 17px;
  left: 7px;
  transform: rotate(45deg);
}

.product-buy-fixed-variation-list-wrapper-close::before {
  transform: rotate(-45deg);
}

.product-buy-fixed .variation-list {
  margin-top: 2.66667vw;
}

.product-buy-fixed .variation-list .variation-list-item {
  display: flex;
  display: -ms-flexbox;
  justify-content: space-between;
  -ms-flex-pack: justify;
  align-items: center;
  -ms-flex-align: center;
  margin-bottom: 2.66667vw;
}

.product-buy-fixed .variation-list .variation-list-item:last-child {
  margin-bottom: 0;
}

.product-buy-fixed .variation-number {
  display: flex;
  display: -ms-flexbox;
  justify-content: center;
  -ms-flex-pack: center;
  align-items: center;
  -ms-flex-align: center;
  width: 9.33333vw;
  height: 9.33333vw;
  font-size: 3.2vw;
  background-color: #fff;
}

.product-buy-fixed .product-price {
  font-size: 3.8vw; /* 3.46667vw */
  font-weight: 400;
  color: #fff;
  letter-spacing: -0.05em;
}

.product-buy-fixed .btn-buy {
  width: 48vw;
  background: #fff;
  color: #6eb92b;
  margin: 0 auto;
}

.product-buy-fixed .btn-buy::before {
  content: "";
  display: inline-block;
  width: 7.46667vw;
  height: 4.53333vw;
  background: url("../../img/customize/pc/common/ico_basket_green.png") center center no-repeat;
  background-size: contain;
  margin-right: 0.8vw;
}

.product-buy-fixed .product-btn-favorite {
  font-size: 6.13333vw;
  color: #fff;
}

.product-buy-fixed .detail-btn-favorite-added {
  color: #fff;
}

.product-buy-fixed .block-arrival-notice--btn {
  background: #fff;
  color: #6eb92b;
}

/* キャンペーン価格 */
.cp_product-price {
  font-size: 3vw;
}

.cp_product-price > span {
  width: 80%;
  line-height: 1.8;
  margin-bottom: 1.2vw;
  color: #fff;
  display: inline-block;
}

/* ====== 追従ボタン ====== */
.footer .page-top {
  border: 2px solid #fff;
  box-sizing: border-box;
  border-radius: 50%;
  z-index: 444;
}

.product-buy-fixed {
  position: fixed;
  left: 0;
  bottom: -180vw;
  z-index: 1020;
  width: 100%;
  padding: 3.2vw 14vw 3.2vw 1vw;
  background: #6eb92b;
  transition: 0.3s;
  z-index: 333;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, "Font Awesome 5 Free", sans-serif;
}

.product-buy-fixed.is-show {
  bottom: 0;
}

.product-buy-fixed-variation-list-wrapper {
  position: fixed;
  bottom: -100px;
  left: 0;
  width: 100%;
  overflow: hidden;
  background: #6eb92b;
  transition: opacity 0.5s, bottom 0.5s, visibility 0s ease 0.5s;
  opacity: 0;
  visibility: hidden;
}

.product-buy-fixed-variation-list-wrapper-inner {
  padding: 3.2vw 4vw;
}

.product-buy-fixed-variation-list-wrapper.is-open {
  transition-delay: 0s;
  bottom: 0;
  opacity: 1;
  visibility: visible;
}

.product-buy-fixed-variation-list-wrapper-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  display: block;
}

.product-buy-fixed-variation-list-wrapper-close::before, .product-buy-fixed-variation-list-wrapper-close::after {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 17px;
  left: 7px;
  transform: rotate(45deg);
}

.product-buy-fixed-variation-list-wrapper-close::before {
  transform: rotate(-45deg);
}

.product-buy-fixed .variation-list {
  margin-top: 2.66667vw;
}

.product-buy-fixed .variation-list .variation-list-item {
  display: flex;
  display: -ms-flexbox;
  justify-content: space-between;
  -ms-flex-pack: justify;
  align-items: center;
  -ms-flex-align: center;
  margin-bottom: 2.66667vw;
}

.product-buy-fixed .variation-list .variation-list-item:last-child {
  margin-bottom: 0;
}

.product-buy-fixed .variation-number {
  display: flex;
  display: -ms-flexbox;
  justify-content: center;
  -ms-flex-pack: center;
  align-items: center;
  -ms-flex-align: center;
  width: 9.33333vw;
  height: 9.33333vw;
  font-size: 3.2vw;
  background-color: #fff;
}

.product-buy-fixed .product-price {
  font-size: 3.8vw; /* 3.46667vw */
  font-weight: 400;
  color: #fff;
  letter-spacing: -0.05em;
}

.product-buy-fixed .btn-buy {
  width: 48vw;
  background: #fff;
  color: #6eb92b;
}

.product-buy-fixed .btn-buy::before {
  content: "";
  display: inline-block;
  width: 7.46667vw;
  height: 4.53333vw;
  background: url("../../img/customize/pc/common/ico_basket_green.png") center center no-repeat;
  background-size: contain;
  margin-right: 0.8vw;
}

.product-buy-fixed .product-btn-favorite {
  font-size: 6.13333vw;
  color: #fff;
}

.product-buy-fixed .detail-btn-favorite-added {
  color: #fff;
}

.product-buy-fixed .block-arrival-notice--btn {
  background: #fff;
  color: #6eb92b;
}

/* キャンペーン価格 */
.cp_product-price {
  font-size: 3vw;
}

.cp_product-price > span {
  width: 80%;
  line-height: 1.8;
  margin-bottom: 1.2vw;
  color: #fff;
  display: inline-block;
}

.cp_price_after_off {
  background: red;
}/*# sourceMappingURL=style.css.map */