@charset "utf-8";

:root {
  --mg-base: 4%;
  --clr-blue: #2b3477;
  --clr-blue-light: #3e92d8;
  --clr-skyblue: #d3e7f4;
  --clr-vermilion: #c74427;
  --clr-green: #0da546;
  --clr-pink: #fea6a5;
  --clr-lemon: #fffd5d;
  --clr-orange: #ea5514;
  --clr-gray-light: #dddddd;
  --clr-gray: #888888;
  --clr-gray-deep: #333333;
  --clr-gray-middle: #717171;
  --clr-bg-gd-gray: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(221,221,221,1) 10%, rgba(221,221,221,1) 90%, rgba(255,255,255,1) 100%);
  --clr-bg-gd-blue: linear-gradient(0deg, rgba(255,255,255,1) 0%, #d3e7f4  10%, #d3e7f4  90%, rgba(255,255,255,1) 100%);
}

.mnikibi_img-cmn {
  /* for img tag */
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.mnikibi-wrap {
  margin: 0 auto 100px;
}

.mnikibi-inr {
  position: relative;
  max-width: 750px;
  margin: 0 auto;
}

.mnikibi-inr img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.mnikibi-fv_new-box img {
  display: block;
}

.mnikibi-fv_new-top {
  padding: 2%;
}

img.mnikibi-fv_new-top-img {
  width: min(671px, 94%);
  margin: auto;
}

.mnikibi-fv_new-main {
  position: relative;
}

img.mnikibi-fv_new-main-el {
  position: absolute;
}

img.mnikibi-fv_new-main-el,
img.mnikibi-fv_new-btm-el {
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

img.mnikibi-fv_new-main-el-bk {
  position: relative;
}

.mnikibi-fv_new-main-el-copy-wrap {
  display: block;
  position: absolute;
  top: 1%;
  left: 3%;
  width: min(423px, 57%);
  overflow: hidden;
}

.mnikibi-fv_new-main-el-copy-wrap::after {
  content: "";
  display: block;
  position: absolute;
  top: -10%;
  left: -20%;
  width: 26px;
  height: 100%;
  background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
  transform: translateX(-100%);
  z-index: 10;
  transform: scale(2) rotate(349deg);
  animation-name: shine-btn;
  animation-duration: 4s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

img.mnikibi-fv_new-main-el-copy {
  position: relative;
}

img.mnikibi-fv_new-main-el-limited {
  left: 1%;
  bottom: 1%;
  width: min(135px, 18%);
  animation-name: limited-move;
  animation-duration: 5s;
}

img.mnikibi-fv_new-main-el-check {
  right: 40.5%;
  width: min(22px, 4%);
}

img.mnikibi-fv_new-main-el-check.check1 {
  bottom: 22%;
  animation-name: check-move_a;
  animation-duration: 3s;
}
img.mnikibi-fv_new-main-el-check.check2 {
  bottom: 15%;
  animation-name: check-move_b;
  animation-duration: 3s;
}
img.mnikibi-fv_new-main-el-check.check3 {
  bottom: 8%;
  animation-name: check-move_c;
  animation-duration: 3s;
}

.mnikibi-fv_new-movie {
  position: absolute;
  left: 7%;
  bottom: 4%;
  width: min(300px, 40vw);
  padding: 6px;
  background-color: #fff;
  box-shadow: 0px 0px 7px 1px #1d2457;
  transform: rotate(-7deg);
}

.mnikibi-fv_new-btm {
  position: relative;
  padding: 5% 4%;
  background-color: #d3e7f4;
}

img.mnikibi-fv_new-btm-el {
  display: block;
}

img.mnikibi-fv_new-btm-el.mnikibi-fv_new-btm-el-price {
  width: min(674px, 98%);
  margin: auto;
}

img.mnikibi-fv_new-btm-el.mnikibi-fv_new-btm-el-seconds {
  width: min(285px, 40%);
  position: absolute;
  top: -12%;
  right: 7%;
  animation-name: seconds-updown;
  animation-duration: 5s;
}

.mnikibi-cv {
  margin-top: var(--mg-base);
  padding-top: max(24%, 80px);
  /* padding-top: max(18%, 60px); */
  padding-bottom: var(--mg-base);
  background-color: var(--clr-gray-light);
  background: var(--clr-bg-gd-blue);
}

.mnikibi-cv.mnikibi-cv--btm {
  margin-top: 0;
  padding-top: max(28%, 90px);
}

.mnikibi-cv_inr {
  position: relative;
  margin: 0 5%;
  padding-bottom: var(--mg-base);
  background-color: #ffffff;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0px 0px 4px 2px #00000021;
}

.mnikibi-cv_img {
  position: relative;
}

.mnikibi-cv_img.mnikibi-cv_img--ribbon {
  position: absolute;
  top: -27%;
  /* top: -13%; */
  left: 50%;
  width: min(560px, 74vw);
  margin: auto;
  transform: translateX(-50%);
}

.mnikibi-cv_img--ribbon.mnikibi-cv_img--ribbon--btm {
  top: max(-19%, -23vw);
  /* top: max(-10%, -24vw); */
}

.mnikibi-cv_img.mnikibi-cv_img--price {
  width: min(643px, 85vw);
  margin-top: 13%;
}

.mnikibi-cv_img.mnikibi-cv_img--ideal {
  width: min(608px, 81vw);
  margin-top: 5%;
}

.mnikibi-cv_img.mnikibi-cv_img--seconds {
  width: min(348px, 62%);
  margin: 4% auto 0;
}

.mnikibi-cv_btn-box img {
  display: block;
  width: 100%;
  margin: auto;
}

.mnikibi-cv_note {
  font-size: min(2.4vw, 112%);
  color: #666;
}

.mnikibi-cv_note.tail2 {
  padding: 1% 7% 3.5%;
}

.mnikibi-cv_note-list {
  margin: 1em 0 0;
  padding: 0 5%;
  list-style: none;
  text-align: left;
}

.mnikibi-cv_caution {
  margin: 1em 1em 0;
  padding: .8em 1em 1em;
  /* background-color: #fff2f8; */
  background-color: var(--clr-gray-light);
  background: var(--clr-bg-gd-blue);
  border-radius: 8px;
}

.mnikibi-cv_note-list.mnikibi-cv_note-list--caution {
  margin: 0;
  padding: 0;
  font-size: 11px;
}

.mnikibi-cv_note-list li {
  margin-top: 0.2em;
  margin-left: 1.2em;
  text-indent: -1.2em;
}

.mnikibi-cv_note-list li::before {
  content: "※";
  margin-right: 0.2em;
}

.mnikibi-why {
  background-color: #ffffff;
}

.mnikibi-why_grn-box {
  position: relative;
  z-index: 5;
  margin-top: -4%;
  padding-top: 7%;
  padding-bottom: 6%;
  background-color: var(--clr-blue);
}

.mnikibi_img-itis {
  position: absolute;
  top: -21%;
  left: 0;
  right: 0;
}

.mnikibi-care {
  padding-bottom: 6%;
  background-color: #ffffff;
}

.mnikibi-skin {
  padding: 2em;
  background-color: #fff8df;
}

.mnikibi-skin-line {
  background-color: #fff;
  border: 1px solid black;
}

.mnikibi-skin_inr {
  margin: 3px;
  padding: 5%;
  background-color: #fff;
  border: 1px solid #000;
  text-align: center;
}

.mnikibi-skin_title {
  margin: 0;
}

.mnikibi-skin_title-inr {
  display: inline-block;
  padding: 0 1em;
  color: #ff60a6;
  background: url(/campaign/img/hifu/marker01.png) center no-repeat;
  background-size: 80% 100%;
  font-family: serif;
  font-size: min(6.5vw, 50px);
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: .1em;
}

.mnikibi-skin_title-inr>span {
  margin-left: .2em;
  font-size: min(4vw, 30px);
  color: #000;
  letter-spacing: 0;
}

.mnikibi-skin_sub {
  width: 98%;
  max-width: 600px;
  box-sizing: border-box;
  margin: 1em auto 0;
  padding: .5em 1.4em;
  background-image: url(/campaign/img/hifu/hifu-skin_frame.png), url(/campaign/img/hifu/hifu-skin_frame-reverse.png);
  background-position: left center, right center;
  background-size: contain, contain;
  background-repeat: no-repeat, no-repeat;
  background-color: rgba(255, 255, 255, 0.5);
  background-blend-mode: lighten, lighten;
  text-align: justify;
  text-align-last: left;
}

.mnikibi-skin_sub>p {
  margin: .4em 0;
}

.mnikibi-ng_inr {
  padding: 6% var(--mg-base);
  background-color: var(--clr-gray-light);
  background: var(--clr-bg-gd-blue);
}

.mnikibi-ng_inr-top {
  padding: var(--mg-base) 0;
  background-color: var(--clr-blue);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

.mnikibi-ng_inr-btm {
  padding: 6% 0;
  background-color: #ffffff;
}

.mnikibi-so {
  padding-bottom: 6%;
  background-color: #ffffff;
  /* background: var(--clr-bg-gd-blue); */
}

.mnikibi-oteire {
  background-color: #ffffff;
}

.mnikibi-skin_img {
  margin-top: 1em;
}

.mnikibi-footer {
  margin-bottom: 30%;
  /* margin-bottom: 55%; */
}

.mnikibi-footer_inner {
  display: block;
  position: absolute;
  width: 100%;
  top: 18%;
  left: 50%;
  transform: translateX(-50%);
}

.mnikibi-footer_inner a {
  display: block;
  text-align: center;
  font-size: min(3.2vw, 22px);
  color: #ffffff;
  text-decoration: none;
  margin-bottom: .5em;
}

.mnikibi-cta_btn {
  position: relative;
  display: block;
  /* text-align: center; */
}

.mnikibi-cta_btn-inr {
  position: relative;
  display: block;
  width: 94%;
  max-width: 620px;
  margin: auto;
  overflow: hidden;
}

.mnikibi-cta_btn-inr::after {
  content: "";
  display: block;
  position: absolute;
  top: -10%;
  left: -20%;
  width: 40px;
  height: 100%;
  background-image:
    linear-gradient(100deg,
      rgba(255, 255, 255, 0) 10%,
      rgba(255, 255, 255, .5) 100%,
      rgba(255, 255, 255, 0) 0%);
  transform: translateX(-100%);
  z-index: 10;
  transform: scale(2) rotate(20deg);
  animation-name: shine-btn;
  animation-duration: 4s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

.mnikibi-cta_btn,
.mnikibi-float_btn-inr {
  transition: filter 0.3s;
}

.mnikibi-before_after {
  padding-bottom: var(--mg-base);
}

.mnikibi-b_a-wrap {
  margin-top: var(--mg-base);
}

.mnikibi-b_a-inr {
  margin: 0 var(--mg-base);
}

.mnikibi-b_a-inr>img+img {
  margin-top: var(--mg-base);
}

.mnikibi-before_after-desc {
  margin-top: .6rem;
  margin-bottom: 0;
  font-size: .6rem;
  color: #888;
  text-align: right;
}

.mnikibi-point {
  padding: 2% 0;
  background-color: var(--clr-gray-light);
  background: var(--clr-bg-gd-blue);
}

.mnikibi-point_wrap-cmn {
  padding: 2% var(--mg-base) 6%;
  /* background-color: var(--clr-gray-light); */
  /* background: var(--clr-bg-gd-blue); */
}

.mnikibi-point_inr-cmn {
  position: relative;
  margin-top: var(--mg-base);
  padding: 6% 0;
  background-color: #ffffff;
  border-radius: 20px;
}

.mnikibi_point-label {
  display: block;
  position: absolute;
  top: -10px
  ;
  left: 0;
}

.mnikibi-more {
  background-color: #fcf0ec;
}

.mnikibi-point-01_bhf-link {
  margin: 0;
  position: relative;
}

.mnikibi-point-01_bhf-paper {
  display: block;
}

.mnikibi-point-01_bhf-txt {
  position: absolute;
  bottom: 5%;
  display: block;
  width: 100%;
  margin: auto;
  font-size: min(16px, 2.6vw);
  text-align: center;
}

.mnikibi_organization {
  display: block;
  margin: 6% 0 0;
  text-align: center;
  font-size: min(16px, 3vw);
}

/* フロートボタン */
.mnikibi-float_btn {
  z-index: 10;
  position: fixed;
  bottom: 0;
  width: 100%;
  max-width: 750px;
  padding: 12px 0;
  background: linear-gradient(to top, #ffffff80 0%, #ffffff90 80%, transparent);
  text-align: center;
}

.mnikibi-float_btn-inr {
  display: inline-block;
}

/* クチコミ */
.mnikibi_kuchikomi {
  width: 100%;
  padding: 5% 0 6%;
  box-sizing: border-box;
  background-repeat: repeat;
  background-size: 1%;
}

.mnikibi_kuchikomi-inner {
  width: min(100%, 760px);
  box-sizing: border-box;
  margin: auto;
  padding: 1.4rem;
  border-radius: 10px;
  border: 1px solid lightgray;
  background-color: #fff;
  box-shadow: 0px 2px 7px -2px #8f8f8f;
}

.mnikibi_kuchikomi-title {
  margin: 0 auto 1rem;
  font-size: 1.8rem;
  font-family: sans-serif;
  font-weight: bold;
  color: #888;
  text-align: center;
}

.mnikibi_kuchikomi-list {
  padding: 0;
  list-style: none;
}

.mnikibi_kuchikomi-list_el {
  display: flex;
  position: relative;
  flex-wrap: wrap;
  width: 96%;
  margin: auto;
  padding: 2.6rem 0;
  border-top: 1px dotted #ccc;
}

.mnikibi_kuchikomi-list_el:last-child {
  padding-bottom: 0;
}

.mnikibi_kuchikomi-list_el::before {
  content: "";
  position: absolute;
  top: 20px;
  right: 0;
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(/campaign/img/modebi_ad1/logo_google_24x24.png);
  background-position: center;
  overflow: hidden;
  text-indent: 110%;
}

.mnikibi_contributor {
  width: 62px;
  text-align: center;
}

.mnikibi_contributor-img {
  display: block;
  position: relative;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background-image: url(/campaign/img/modebi_ad1/icon_smile-orange_124x124.png);
  background-repeat: no-repeat;
  background-size: cover;
  font-size: 0;
  text-indent: -300%;
  overflow: hidden;
}

.mnikibi_contributor-img--00 {
  background-image: url(/campaign/img/hifu/icon_smile-orange_124x124.png);
}

.mnikibi_contributor-img--01 {
  background-image: url(/campaign/img/hifu/kuchikomi-01_124x124.jpg);
}

.mnikibi_contributor-img--02 {
  background-image: url(/campaign/img/hifu/kuchikomi-02_124x124.jpg);
}

.mnikibi_contributor-img--03 {
  background-image: url(/campaign/img/hifu/kuchikomi-03_124x124.jpg);
}

.mnikibi_contributor-name {
  margin-top: 1rem;
  font-weight: bold;
  font-size: .8rem;

}

.mnikibi_review {
  width: calc(100% - 62px);
  padding-top: 1rem;
  padding-left: 2.2rem;
  box-sizing: border-box;
}

.mnikibi_review-stars {
  font-size: 1.4rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 1;
}

.mnikibi_star-row {
  display: inline-block;

}

.mnikibi_star-row>svg {
  display: inline-block;
  margin-top: 2px;
  vertical-align: top;
}

.mnikibi_review-sub {
  display: inline-block;
  margin-left: .6rem;
  font-size: 1rem;
}

.mnikibi_review-txt {
  margin-top: .5rem;
}

.mnikibi_review-txt_inner {
  font-size: .9rem;
  line-height: 1.4;
}

.mnikibi_emoji {
  font-family: apple color emoji, segoe ui emoji, noto color emoji, android emoji, emojisymbols, emojione mozilla, twemoji mozilla, segoe ui symbol;
}

/* Steps */
.mnikibi-steps_inr {
  padding: var(--mg-base);
  padding-bottom: 0;
  /* background: linear-gradient(180deg, #fff2f7, #fbe0eb); */
  background-color: var(--clr-gray-light);
  background: var(--clr-bg-gd-blue);
}

.mnikibi-steps_ttl {
  font-family: serif;
  font-weight: bold;
  text-align: center;
}

.mnikibi-steps_ttl-img {
  margin: 0;
}

/* .mnikibi-steps_ttl-img>img {} */

.mnikibi-steps_ttl-txt {
  display: inline-block;
  margin: 0;
  font-size: 2.8rem;
  background: linear-gradient(transparent 0%, transparent 60%, #ff6 80%, #ff6 100%);
}

.mnikibi-steps_ttl-sub {
  margin: .4em auto;
  color: #f04c7c;
  font-size: 4rem;
}

.mnikibi-steps_ttl-sub>span {
  font-size: 6rem;
  font-weight: bold;
}

.mnikibi-steps_step {
  margin: 6% auto;
  padding: 0;
  list-style-type: none;
}

.mnikibi-steps_step-el:nth-child(n+2) {
  padding-top: 7rem;
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_arrow-down_ver01.svg);
  background-repeat: no-repeat;
  background-position: top 40px center;
  background-size: 100px;
}

.mnikibi-steps_step-img {
  margin: auto;
  padding: 1rem 1rem 0;
  background-color: #fff;
}

.mnikibi-steps_step-img-wrap {
  position: relative;
  display: block;
}

.mnikibi-steps_step-img-el {
  display: block;
  max-width: 100%;
  width: auto;
  margin: auto;
}

.mnikibi-steps_step-img-wrap>video {
  display: block;
  width: 100%;
  margin: auto;
}

.mnikibi-steps_step-txt {
  position: relative;
  padding: 1rem;
  background-color: #fff;
}

.mnikibi-steps_step-sub {
  margin: .3em auto;
  text-align: center;
  font-family: serif;
  font-weight: bold;
  font-size: 1.9rem;
}

.mnikibi-steps_step-sub>br {
  display: none;
}

.mnikibi-steps_step-mark {
  z-index: 10;
  position: absolute;
  bottom: -20px;
  left: -40px;
  width: 148px;
  height: 60px;
  transform: rotate(-15deg);
  background-size: cover;
  font-size: 0;
}

.mnikibi-steps_step-mark.mark--01 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-1_ver01.png);
}

.mnikibi-steps_step-mark.mark--02 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-2_ver01.png);
}

.mnikibi-steps_step-mark.mark--03 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-3_ver01.png);
}

.mnikibi-steps_step-mark.mark--04 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-4_ver01.png);
}

.mnikibi-steps_step-mark.mark--05 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-5_ver01.png);
}

.mnikibi-steps_step-mark.mark--06 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-6_ver01.png);
}

.mnikibi-steps_step-mark.mark--07 {
  background-image: url(/mens/campaign/image/nikibi_f/mnikibi_step_label-7_ver01.png);
}

.mnikibi-steps_step-mark.mark--bio {
  left: auto;
  right: 2%;
  width: 28%;
  height: auto;
  transform: rotate(0deg);
  bottom: 2%;
}

.mnikibi-steps_step-desc {
  margin: 1rem auto 0;
  font-size: 1.3rem;
  text-align: justify;
}

.mnikibi-steps_step-desc>span {
  color: var(--clr-orange);
  font-weight: bold;
}

.mnikibi-worry {
  background-color: var(--clr-gray-light);
  background: var(--clr-bg-gd-blue);
}

.mnikibi-stop {
  background-color: #fff;
  padding: 6% var(--mg-base);
}

.mnikibi-cosme {
  padding: 6% 0;
  background: var(--clr-bg-gd-blue);
}

.mnikibi-cosme_bg {
  padding: 0 0 10%;
  background: url(/campaign/img/nikibi_r/homecare_bg_750.jpg) no-repeat center;
  background-size: cover;
}

.mnikibi-cosme_title {
  margin-top: 0;
  margin-bottom: 6%;
  padding: 10px 0;
  /* background: linear-gradient(to right, var(--clr-gray-light) 0%, var(--clr-gray) 100%); */
  background: var(--clr-blue);
  font-family: serif;
  font-size: min(22px, 4vw);
  text-align: center;
  color: #fff;
  font-weight: bold;
}

.mnikibi-cosme_inner {
  padding: 0 15px;
}

.mnikibi-cosme_text-logo {
  width: 230px;
  margin-bottom: 20px;
  margin: 0 auto 40px;
}

.mnikibi-cosme_text-desc {
  margin: 0;
  padding: 2% 6%;
  background: #ffffff;
  background: linear-gradient(to right, #ffffff 0%, #ffffff00 50%, #ffffff00 100%);
  font-size: 16px;
  font-family: serif;
}

.mnikibi-cosme_items {
  margin: 0 var(--mg-base);
}

.mnikibi-cosme_items-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  font-size: 13px;
  margin: 0;
}

.mnikibi-cosme_items-list dt {
  width: max(280px, 40%);
  margin-bottom: 1%;
  padding-left: 1em;
  text-indent: -1em;
  font-weight: bold;
}

.mnikibi-cosme_items-list dt>span {
  color: yellow;
}

.mnikibi-cosme_items-list dd {
  width: max(200px, 30%);
  margin: 0;
  margin-bottom: 1%;
  padding-left: 1em;
}

.mnikibi-cosme_items-annotation {
  margin: 0;
  font-size: 12px;
}

.mnikibi-cosme_items-annotation span {
  color: yellow;
}

.mnikibi-wrap img {
  height: auto;
}

.nikibi_faq-wrap {
  width: 100%;
  margin: 0 auto;
  background: var(--clr-bg-gd-blue);
}

.nikibi_faq-inr {
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
  padding: 0 1.5em 4%;
  box-sizing: border-box;
}

.nikibi_faq-title_img {
  display: block;
  margin: auto;
  max-width: 100%;
  width: auto;
}

.nikibi_faq-list_wrap {
  margin-top: 7%;
}

.nikibi_faq-list-el {
  display: flex;
  align-items: center;
}

.nikibi_faq-list_q {
  justify-content: left;
  /* margin-bottom: 12px; */
}

.nikibi_faq-list_torso {
  width: min(100px, 18vw)!important;
}

.nikibi_faq-list_torso--q {
  margin-right: 30px;
}

.nikibi_faq-txt {
  position: relative;
  max-width: 55%;
  padding: 2rem 2rem 2rem 4rem;
  font-size: 16px;
  line-height: 1.6;
  text-indent: -1.5em;
  border-radius: 30px;
}

.nikibi_faq-txt--q {
  background-color: #cccccc4f;
  background-image: url(https://www.parler.co.jp/mens/campaign/image/nikibi_f/common/nikibi_about-course_bg_20221124.png);
}

.nikibi_faq-txt::before {
  content: "";
  position: absolute;
  top: 40%;
  margin-top: -10px;
  border: 10px solid transparent;
}

.nikibi_faq-txt--q::before {
  left: -30px;
  border-right: 30px solid #f0f2f3;
}

.nikibi_faq_title {
  font-size: 16px;
  font-weight: bold;
}

.nikibi_faq-list_a {
  justify-content: right;
  margin-bottom: 30px;
}

.nikibi_faq-list_a--last {
  margin-bottom: 0;
}

.nikibi_faq-txt--a {
  background-color: #cccccc4f;
  background-image: url(https://www.parler.co.jp/mens/campaign/image/nikibi_f/common/nikibi_about-course_bg_20221124.png);
}

.nikibi_faq-txt--a::before {
  right: -30px;
  border-left: 30px solid #f0f2f3;
}

.nikibi_faq-a_sub {
  font-size: 12px;
}

.nikibi_faq-list_torso--a {
  margin-left: 30px;
}

.cv-bnr_present {
  display: block;
  padding: 2% 1.5em 0;
  max-width: 620px;
  margin: auto;
}

.floating_present-bnr {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 88%;
    display: block;
    width: min(400px, 60vw);
    margin: auto;
    z-index: 20;
}

.cv-bnr_present.cv-bnr_present-float {
    padding: 0;
}

@media screen and (min-width: 768px) {

  .mnikibi-cta_btn:hover,
  .mnikibi-float_btn-inr:hover {
    filter: brightness(130%);
  }
}

@media screen and (max-width: 767px) {
  .mnikibi-steps_step-sub>br {
    display: block;
  }

  /* クチコミ */
  .mnikibi_kuchikomi {
    padding: 0 4% 6%;
  }

  .mnikibi_kuchikomi-title {
    font-size: 1.4rem;
  }

  .mnikibi_kuchikomi-list_el {
    display: block;
    padding: 1.4rem 0;
  }

  .mnikibi_contributor {
    display: flex;
    width: auto;
    text-align: left;
  }

  .mnikibi_contributor-img {
    width: 42px;
    height: 42px;
  }

  .mnikibi_contributor-name {
    margin-top: .7rem;
    margin-left: 1rem;
  }

  .mnikibi_contributor-name br {
    display: none;
  }

  .mnikibi_review {
    width: 100%;
    margin-top: .5rem;
    padding-top: 0;
    padding-left: 0;
  }

  .mnikibi_review-txt {
    margin-top: .5rem;
  }

  .mnikibi_review-txt_inner {
    line-height: 1.6;
  }

  /* .mnikibi_review-sub {} */

  /* Steps */
  .mnikibi-steps_inr {
    padding: 2rem 20px 0;
  }

  .mnikibi-steps_ttl-txt {
    font-size: min(6.2vw, 2.4rem);
  }

  .mnikibi-steps_ttl-sub>span {
    font-size: min(20vw, 6rem);
  }

  .mnikibi-steps_ttl-sub {
    margin: .2em auto;
    font-size: min(14vw, 4rem);
    line-height: 1.2;
  }

  .mnikibi-steps_step {
    margin-top: 20px;
  }

  .mnikibi-steps_step-mark {
    left: min(50px, -5%);
    width: 100px;
    height: 40px;
  }

  .mnikibi-steps_step-sub {
    margin: .3em auto;
    font-size: 1.6rem;
    line-height: 1.2;
  }

  .mnikibi-steps_step-desc {
    font-size: 1rem;
  }

  .mnikibi-steps_step-note {
    font-size: .8rem;
  }

  .mnikibi-steps_step-el:nth-child(n+2) {
    padding-top: 3rem;
    background-size: 60px;
    background-position: top 13px center;
  }

  .mnikibi-skin_sub {
    font-size: 90%;
  }

  .nikibi_faq-txt {
    font-size: 14px;
    padding: 1.2em 1.2em 1.2em 3em;
  }
}

@keyframes shine-btn {
  0% { left: -20%; }
  10% { left: 120%; }
  100% { left: 120%; }
}

@keyframes check-move_a {
  0% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  20% { transform: translateY(-20%); scale: 1.4; transform: rotate(15deg);}
  40% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  100% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
}

@keyframes check-move_b {
  0% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  20% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  40% { transform: translateY(-20%); scale: 1.4; transform: rotate(15deg);}
  60% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  100% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
}

@keyframes check-move_c {
  0% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  40% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  60% { transform: translateY(-20%); scale: 1.4; transform: rotate(15deg);}
  80% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
  100% { transform: translateY(0); scale: 1; transform: rotate(0deg);}
}

@keyframes color-change {
  0% { filter: hue-rotate(0deg); }
  50% { filter: hue-rotate(30deg); }
  80% { filter: hue-rotate(0deg); }
  100% { filter: hue-rotate(0deg); }
}

@keyframes seconds-updown {
  0% { transform: translateY(0); scale: 1;}
  20% { transform: translateY(5%); scale: .9;}
  40% { transform: translateY(-8%); scale: 1.1;}
  60% { transform: translateY(4%); scale: .9;}
  80% { transform: translateY(-3%); scale: 1.1;}
  100% { transform: translateY(0); scale: 1;}
}

@keyframes limited-move {
  0% { transform: rotate(0);}
  15% { transform: rotate(15deg);}
  40% { transform: rotate(-12deg);}
  75% { transform: rotate(5deg);}
  100% { transform: rotate(0);}
}