@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
}
address,
article,
blockquote,
canvas,
caption,
dd,
div,
dl,
dt,
fieldset,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
legend,
li,
nav,
object,
ol,
p,
pre,
section,
table,
td,
th,
ul {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset,
img {
  border: none;
  vertical-align: top;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: 400;
}
li,
ol,
ul {
  list-style: none;
}
caption,
td,
th {
  text-align: left;
  vertical-align: top;
}
h1,
h2,
h3,
h4,
h5,
h6,
small {
  font-weight: 400;
  font-size: 100%;
}
i {
  font-style: normal;
}
q:after,
q:before {
  content: "";
}
abbr,
acronym {
  border: none;
}
sup {
  vertical-align: top;
}
sub {
  vertical-align: baseline;
}
a,
embed,
object {
  outline: 0;
}
a:active,
a:focus,
a:hover {
  outline: 0;
}
article,
canvas,
figure,
footer,
header,
main,
nav,
section {
  display: block;
}
body {
  font-feature-settings: "palt";
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  color: #000;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.8;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N M", sans-serif;
  letter-spacing: normal;
}
* {
  box-sizing: border-box;
  cursor: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/cursor.cur), auto;
  cursor: -webkit-image-set(url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/cursor.cur) 1x, url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/cursor.cur) 2x), auto;
}
::after,
::before {
  box-sizing: border-box;
}
a {
  color: inherit;
  text-decoration: none;
}
b,
em,
strong {
  font-weight: 400;
}
table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
input:not([type="button"]),
input:not([type="reset"]),
input:not([type="submit"]),
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: 0;
  background: 0 0;
  font: inherit;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: 0 0;
  color: inherit;
  font: inherit;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  outline: 0;
  background: 0 0;
  color: inherit;
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-align: left;
}
button::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner {
  padding: 0;
  border: none;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
img[src$=".svg"] {
  display: block;
  width: 100%;
  height: auto;
}
svg,
video {
  vertical-align: top;
}
body .hidden {
  visibility: hidden !important;
  z-index: -1 !important;
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
body .sp {
  display: none !important;
}
body [data-fsb-ruby] {
  display: inline-block;
  position: relative;
  line-height: 1;
}
body [data-fsb-ruby]::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin: auto;
  padding-left: 0.1em;
  transform: translate3d(-50%, -105%, 0) scale(0.6);
  transform-origin: center center;
  content: attr(data-fsb-ruby);
  font-weight: 400;
  font-size: 10px;
  line-height: 1;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N M", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 988px) {
  body [data-fsb-ruby]::before {
    font-size: 2.66667vw;
  }
}
body rt {
  display: none;
  z-index: -1;
  position: absolute;
  font-weight: 400;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N M", sans-serif;
  letter-spacing: -1em;
  opacity: 0;
  pointer-events: none;
}
body rt.-shown {
  display: inline;
}
@media (max-width: 988px) {
  body .pc {
    display: none !important;
  }
  body .sp {
    display: block !important;
  }
  body br.sp,
  body em.sp,
  body img.sp,
  body span.sp {
    display: inline !important;
  }
}
.header {
  z-index: 3;
}
.main {
  z-index: 0;
}
.footer {
  z-index: 1;
}
.pagetop {
  z-index: 2;
}
.loading {
  z-index: 4;
}
.slick-slider {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  display: block;
  position: relative;
  touch-action: pan-y;
  user-select: none;
}
.slick-list {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.slick-list:focus {
  outline: 0;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-list,
.slick-slider .slick-track {
  transform: translate3d(0, 0, 0);
}
.slick-track {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  margin-right: auto;
  margin-left: auto;
}
.slick-track:after,
.slick-track:before {
  display: table;
  content: "";
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  display: none;
  height: 100%;
  min-height: 1px;
  float: left;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
@-webkit-keyframes pyoko {
  0% {
    transform: translateY(-100%);
  }
  16.66667%,
  3.33333% {
    transform: translateY(-95%);
  }
  100%,
  13.33333%,
  23.33333%,
  6.66667% {
    transform: translateY(-100%);
  }
}
@keyframes pyoko {
  0% {
    transform: translateY(-100%);
  }
  16.66667%,
  3.33333% {
    transform: translateY(-95%);
  }
  100%,
  13.33333%,
  23.33333%,
  6.66667% {
    transform: translateY(-100%);
  }
}
.carousel {
  position: relative;
}
.carousel .slick-list {
  z-index: 0;
}
.carousel .slick-dots {
  display: flex;
  z-index: 1;
  position: absolute;
  bottom: 23.4px;
  left: 50%;
  align-items: center;
  justify-content: center;
  transform: translateX(-50%);
}
.carousel .slick-dots > li.slick-active button::before {
  background-color: #00a0e9;
}
.carousel .slick-dots > li button {
  display: block;
  width: 10.4px;
  height: 10.4px;
  margin: 0 2.6px;
  border: 0;
  outline: 0;
  background: 0 0;
  color: transparent;
  font-size: 0;
  line-height: 0;
}
.carousel .slick-dots > li button::before {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: rgba(0, 160, 233, 0.4);
  content: "";
}
@media (max-width: 988px) {
  .carousel .slick-dots {
    bottom: 2.66667vw;
  }
  .carousel .slick-dots > li button {
    width: 2.13333vw;
    height: 2.13333vw;
    margin: 0 0.53333vw;
  }
}
.footer {
  position: relative;
  width: 100%;
  padding: 84.5px 0 58.5px;
  background-color: #e4007f;
}
.footer::before {
  z-index: 0;
  position: absolute;
  top: -28px;
  left: 0;
  width: 100%;
  height: 60px;
  transform: scaleY(-1);
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/bg-wave-pink.svg) repeat-x left top transparent;
  background-size: 90px 60px;
  content: "";
}
@media (max-width: 988px) {
  .footer::before {
    top: -6.66667vw;
    height: 13.86667vw;
    background-size: auto 100%;
    background-position-x: -2.66667vw;
  }
}
.footer__inner {
  z-index: 0;
  position: relative;
  max-width: 988px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
.footer__banners {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: flex-start;
}
.-isIE .footer__banners {
  display: block;
}
.-isIE .footer__banners .footer__banner {
  margin-right: auto;
  margin-left: auto;
}
.footer__banner {
  display: block;
  min-height: 0;
}
.footer__banner.-b1 {
  width: 357.5px;
}
.footer__banner.-b2 {
  width: 247px;
}
.footer__banner + .footer__banner {
  margin-top: 26px;
}
.footer__banner {
  transition: transform 0.1s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
.-hasHover .footer__banner:hover {
  transform: scale(1.05);
}
.footer__copyright {
  margin-top: 74.75px;
  color: #fff;
  font-size: 11.7px;
  font-family: YakuHanJP_Narrow, Inter, sans-serif;
  letter-spacing: 0;
}
@media (max-width: 988px) {
  .footer {
    padding: 17.33333vw 0 12vw;
  }
  .footer__inner {
    max-width: none;
  }
  .footer__banner.-b1 {
    width: 61.33333vw;
  }
  .footer__banner.-b2 {
    width: 48vw;
  }
  .footer__banner + .footer__banner {
    margin-top: 5.33333vw;
  }
  .footer__copyright {
    margin-top: 12vw;
    font-size: 2.66667vw;
  }
}
.fsbCopy {
  padding: 39px 55.25px;
  background-color: #00a0e9;
  color: #fff;
  font-size: 55.25px;
  line-height: 1.29;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
  letter-spacing: 0;
  white-space: nowrap;
}
.fsbCopy.-white {
  background-color: #fff;
  color: #000;
}
.fsbCopy [data-fsb-ruby]::before {
  font-size: 16px;
}
.fsbCopy small {
  display: block;
  margin-top: 9.75px;
  font-weight: inherit;
  font-size: 19.5px;
}
.fsbCopy small i {
  font-size: 10px;
  vertical-align: super;
}
.fsbCopy small [data-fsb-ruby]::before {
  font-size: 12px;
}
@media (max-width: 988px) {
  .fsbCopy {
    padding: 5.33333vw 9.33333vw 6.66667vw;
    font-size: 10.66667vw;
    line-height: 1.275;
    letter-spacing: -0.05em;
  }
  .fsbCopy [data-fsb-ruby]::before {
    font-size: 3.73333vw;
  }
  .fsbCopy small {
    margin-top: 3.2vw;
    font-size: 4.26667vw;
    letter-spacing: 0;
  }
  .fsbCopy small i {
    font-size: 2.4vw;
  }
  .fsbCopy small [data-fsb-ruby]::before {
    font-size: 3.2vw;
  }
}
.fsbQuestion__q {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 6.5px 0 6.5px 13px;
  background-color: #e4007f;
  color: #fff;
  font-size: 36px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.fsbQuestion__q .fsbQuestion__body {
  letter-spacing: -2px;
  white-space: nowrap;
}
.fsbQuestion__a {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 6.5px 0 6.5px 13px;
  background-color: #fff;
  color: #e4007f;
  font-size: 18.2px;
  line-height: 2.1;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.fsbQuestion__a .fsbQuestion__body {
  padding: 13px 0 9.75px;
}
.fsbQuestion__icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 58.5px;
  height: 58.5px;
  margin-right: 13px;
  border-radius: 50%;
  font-size: 39.65px;
  line-height: 1;
  font-family: YakuHanJP_Narrow, Inter, sans-serif;
  letter-spacing: 0;
}
.fsbQuestion__icon.-q {
  background-color: #fff;
  color: #e4007f;
}
.fsbQuestion__icon.-a {
  background-color: #e4007f;
  color: #fff;
}
.fsbQuestion__body {
  font-weight: inherit;
}
@media (max-width: 988px) {
  .fsbQuestion__q {
    padding: 1.33333vw 0 1.33333vw 2.66667vw;
    font-size: 7.46667vw;
  }
  .fsbQuestion__a {
    padding: 1.33333vw 0 1.33333vw 2.66667vw;
    font-size: 4vw;
  }
  .fsbQuestion__a .fsbQuestion__body {
    padding: 2.66667vw 0 2.66667vw;
    line-height: 2.0625;
  }
  .fsbQuestion__icon {
    width: 11.73333vw;
    height: 11.73333vw;
    margin-right: 1.33333vw;
    font-size: 8vw;
  }
}
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 57.2px;
  padding: 22.1px 22.1px 0;
  background-color: #23b399;
}
.header::before {
  z-index: 0;
  position: absolute;
  top: 25px;
  left: 0;
  width: 100%;
  height: 60px;
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/bg-wave-green.svg) repeat-x left top transparent;
  background-size: 90px 60px;
  content: "";
}
@media (max-width: 988px) {
  .header::before {
    top: 6.66667vw;
    height: 13.86667vw;
    background-size: auto 100%;
    background-position-x: -2.66667vw;
  }
}
.header.-opened .header__toggle span:nth-child(1) {
  margin-top: 0;
  transform: translate3d(-50%, -50%, 0) rotate(30deg);
}
.header.-opened .header__toggle span:nth-child(2) {
  margin-top: 0;
  transform: translate3d(-50%, -50%, 0) rotate(-30deg);
}
.header.-opened .header__toggle::before {
  margin-top: 1.3px;
  transform: translate3d(-50%, -50%, 0) rotate(30deg);
}
.header.-opened .header__toggle::after {
  margin-top: 1.3px;
  transform: translate3d(-50%, -50%, 0) rotate(-30deg);
}
.-hasHover .header.-opened .header__toggle:hover span:nth-child(1) {
  margin-top: 0;
  transform: translate3d(-50%, -50%, 0) rotate(20deg);
}
.-hasHover .header.-opened .header__toggle:hover span:nth-child(2) {
  margin-top: 0;
  transform: translate3d(-50%, -50%, 0) rotate(-20deg);
}
.-hasHover .header.-opened .header__toggle:hover::before {
  margin-top: 1.3px;
  transform: translate3d(-50%, -50%, 0) rotate(20deg);
}
.-hasHover .header.-opened .header__toggle:hover::after {
  margin-top: 1.3px;
  transform: translate3d(-50%, -50%, 0) rotate(-20deg);
}
.header.-opened .header__nav {
  width: 100%;
  pointer-events: auto;
}
.header__inner {
  z-index: 1;
  position: relative;
}
.header__kai a {
  display: block;
  width: 61.75px;
  transition: opacity 0.1s ease-in-out;
}
.-hasHover .header__kai a:hover {
  opacity: 0.8;
}
.header__toggle {
  z-index: 2;
  position: fixed;
  top: 23.4px;
  right: 26px;
  width: 58.5px;
  height: 23.4px;
}
.-hasHover .header__toggle:hover span:nth-child(1) {
  margin-top: -7.8px;
}
.-hasHover .header__toggle:hover span:nth-child(2) {
  margin-top: 7.8px;
}
.-hasHover .header__toggle:hover::before {
  margin-top: -5.8px;
}
.-hasHover .header__toggle:hover::after {
  margin-top: 9.8px;
}
.header__toggle span,
.header__toggle::after,
.header__toggle::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 3px;
  transform: translate3d(-50%, -50%, 0);
  transform-origin: center;
  transition: margin 150ms ease, transform 150ms ease;
}
.header__toggle span {
  z-index: 1;
  background-color: #fff;
}
.header__toggle span:nth-child(1) {
  margin-top: -10.4px;
}
.header__toggle span:nth-child(2) {
  margin-top: 10.4px;
}
.header__toggle::after,
.header__toggle::before {
  z-index: 0;
  background-color: rgba(0, 0, 0, 0.2);
  content: "";
}
.header__toggle::before {
  margin-top: -8.4px;
}
.header__toggle::after {
  margin-top: 12.4px;
}
.header__nav {
  z-index: 1;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 0%;
  overflow: hidden;
  transform: translate3d(-50%, 0, 0);
  pointer-events: none;
  transition: width 0.4s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
.-isIE .header__nav .nav,
.-isIE .header__nav .nav__logo {
  position: absolute;
}
@media (max-width: 988px) {
  .header {
    height: 13.86667vw;
    padding: 5.33333vw 5.33333vw 0;
  }
  .header__kai a {
    width: 12.8vw;
  }
  .header__toggle {
    top: 6.4vw;
    right: 6.4vw;
    width: 12vw;
    height: 4.26667vw;
  }
  .-hasHover .header__toggle:hover span:nth-child(1) {
    margin-top: -1.86667vw;
  }
  .-hasHover .header__toggle:hover span:nth-child(2) {
    margin-top: 1.86667vw;
  }
  .-hasHover .header__toggle:hover::before {
    margin-top: -1.33333vw;
  }
  .-hasHover .header__toggle:hover::after {
    margin-top: 2.4vw;
  }
  .header__toggle span,
  .header__toggle::after,
  .header__toggle::before {
    height: 2px;
  }
  .header__toggle span:nth-child(1) {
    margin-top: -2.13333vw;
  }
  .header__toggle span:nth-child(2) {
    margin-top: 2.13333vw;
  }
  .header__toggle::before {
    margin-top: -1.6vw;
  }
  .header__toggle::after {
    margin-top: 2.66667vw;
  }
}
.illust {
  background-color: #00a0e9;
}
.illust .section__inner {
  height: 377px;
}
.illust .section__inner img {
  position: absolute;
  left: 50%;
  width: 905px;
  max-width: none;
  transform: translate3d(-50%, -230px, 0);
}
@media (max-width: 988px) {
  .illust .section__inner {
    height: 50.66667vw;
  }
  .illust .section__inner img {
    width: 97.33333vw;
    transform: translate3d(-50%, -17.33333vw, 0);
  }
}
.loading {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  height: 100%;
  background-color: #fff100;
}
.-initialized .loading {
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.7s 2.9s ease-in-out, height 0s 3601ms ease-in-out;
}
.-initialized .loading .loading__razor {
  transform: rotate(330deg) translateY(0);
  transition: transform 1.8s cubic-bezier(0.55, 0, 1, 0.45);
}
.-initialized .loading .loading__bg {
  transition: transform 1.4s 2.1s cubic-bezier(0.65, 0, 0.35, 1);
}
.-initialized .loading .loading__bg.-left {
  transform: skewX(30deg) translateX(-100%);
}
.-initialized .loading .loading__bg.-right {
  transform: skewX(30deg) translateX(100%);
}
.loading__razor {
  position: absolute;
  top: 0;
  left: 26.5%;
  height: 130vh;
  transform: rotate(330deg) translateY(-130%);
  transform-origin: left top;
}
.loading__razor img {
  display: block;
  position: absolute;
  bottom: -91px;
  left: -10.4px;
  width: 101.4px;
  max-width: none;
  transform: rotate(-180deg);
}
.loading__razor::before {
  display: block;
  z-index: 0;
  position: relative;
  width: 57.2px;
  height: 100%;
  background-color: #fff100;
  content: "";
}
.loading__bg {
  position: absolute;
  width: 200%;
  height: 100%;
  background: #e4007f;
}
.loading__bg.-left {
  right: 73.5%;
  transform: skewX(30deg) translateX(45.5px);
  transform-origin: right top;
}
.loading__bg.-right {
  left: 26.5%;
  transform: skewX(30deg) translateX(19.5px);
  transform-origin: left top;
}
@media (max-width: 988px) {
  .loading__razor {
    left: -6.66667vw;
  }
  .loading__razor img {
    bottom: -18.66667vw;
    left: -2.13333vw;
    width: 20.8vw;
  }
  .loading__razor::before {
    width: 11.73333vw;
  }
  .loading__bg.-left {
    right: 100%;
    transform: skewX(30deg) translateX(2.66667vw);
  }
  .loading__bg.-right {
    left: 0;
    transform: skewX(30deg) translateX(-2.66667vw);
  }
}
.main {
  position: relative;
  overflow-x: hidden;
}
.movie {
  position: relative;
}
.movie iframe {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate3d(-50%, -50%, 0);
}
.movie.-playing .movie__start,
.movie.-playing .movie__thumbnail {
  display: none;
}
.movie.-playing iframe {
  display: block;
}
.movie__player {
  position: relative;
  width: 715px;
  height: 403px;
  margin: 0 auto;
}
.movie__player button {
  display: block;
}
.movie__player button .movie__start {
  transition: transform 0.1s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
.-hasHover .movie__player button:hover .movie__start {
  transform: translate3d(-50%, -50%, 0) scale(1.15);
}
.movie__thumbnail {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.movie__thumbnail img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.movie__start {
  display: flex;
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 50%;
  align-items: center;
  justify-content: center;
  width: 97.5px;
  height: 97.5px;
  transform: translate3d(-50%, -50%, 0);
  border-radius: 50%;
  background-color: #000;
}
.movie__start img {
  width: 40.3px;
  margin-left: 14.3px;
}
@media (max-width: 988px) {
  .movie__player {
    width: 75.73333vw;
    height: 42.66667vw;
  }
  .movie__start {
    width: 15.46667vw;
    height: 15.46667vw;
  }
  .movie__start img {
    width: 6.4vw;
    margin-left: 1.6vw;
  }
}
.nav {
  position: relative;
  position: fixed;
  left: 50%;
  width: 100%;
  width: 100vw;
  height: 100%;
  padding: 127.4px 0;
  overflow: auto;
  transform: translateX(-50%);
  background-color: #00a0e9;
}
.nav__bg {
  z-index: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.nav__bg div {
  position: absolute;
  width: 100%;
  border-right: 50vw solid transparent;
  border-left: 50vw solid transparent;
}
.nav__bg div:nth-child(1) {
  top: 0;
  border-top: 127.4px solid #e4007f;
}
.nav__bg div:nth-child(2) {
  bottom: 0;
  border-bottom: 127.4px solid #e4007f;
}
.nav__inner {
  z-index: 1;
  position: relative;
  height: 100%;
  padding-left: 50%;
}
.nav__logo {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  width: 50%;
  height: 100%;
  padding-bottom: 13px;
}
.nav__logo img {
  width: 214.5px;
}
.nav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  font-size: 20.15px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.nav__links {
  padding-right: 32.5px;
}
.nav__links a {
  display: inline-block;
  position: relative;
  padding: 13px 0;
  line-height: 1.1;
}
.nav__links a::before {
  position: absolute;
  bottom: 2.6px;
  left: 0;
  width: 0;
  height: 2.6px;
  background-color: #000;
  content: "";
  transition: width 0.2s ease-in-out;
}
.-hasHover .nav__links a:hover::before {
  width: 100%;
}
.nav__links a > span.-q {
  font-size: 26px;
  font-family: YakuHanJP_Narrow, Inter, sans-serif;
}
.nav__links a > span.-label span {
  letter-spacing: 0;
}
@media (max-width: 988px) {
  .nav {
    padding: 20.26667vw 0;
  }
  .nav__bg {
    position: fixed;
  }
  .nav__bg div:nth-child(1) {
    border-top-width: 20.26667vw;
  }
  .nav__bg div:nth-child(2) {
    border-bottom-width: 20.26667vw;
  }
  .nav__inner {
    padding-left: 0;
  }
  .nav__menu {
    font-size: 4.26667vw;
  }
  .nav__links {
    padding-right: 0;
    padding-left: 2.66667vw;
  }
  .nav__links a {
    padding: 4vw 0;
  }
  .nav__links a > span.-q {
    font-size: 5.06667vw;
  }
}
.pagetop {
  position: absolute;
  right: 65px;
  bottom: 65px;
  width: 74.75px;
}
.pagetop.-fadeout {
  opacity: 0;
  transition: opacity 0.1s ease-in;
}
.pagetop.-scrolling {
  position: fixed;
}
.pagetop a {
  display: block;
  z-index: 1;
  position: relative;
}
.-hasHover .pagetop a:hover > img {
  transform: translateY(-10.4px);
}
.pagetop a > img {
  display: block;
  transition: transform 0.1s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
.pagetop span {
  display: block;
  padding-left: 26px;
  color: #fff;
  font-size: 14.3px;
  font-family: YakuHanJP_Narrow, Inter, sans-serif;
  letter-spacing: 0;
  white-space: nowrap;
}
.pagetop span i {
  display: inline-block;
  width: 9.1px;
  margin-left: 2.6px;
}
.trajectory {
  z-index: 0;
  position: absolute;
  top: 65px;
  right: 5.2px;
  width: 46.8px;
  background-color: #fff;
}
@media (max-width: 988px) {
  .pagetop {
    right: 6.66667vw;
    bottom: 109.6vw;
    width: 15.46667vw;
  }
  .pagetop span {
    padding-left: 4.26667vw;
    font-size: 3.2vw;
  }
  .pagetop span i {
    width: 2vw;
    margin-left: 1.06667vw;
  }
  .trajectory {
    top: 13.33333vw;
    right: 1.06667vw;
    width: 9.6vw;
  }
}
.s1 {
  position: relative;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  min-height: 656.5px;
  background-color: #e8e8ea;
}
.s1::after {
  z-index: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 50%;
  background-color: #ececee;
  content: "";
}
.s1 .section__inner {
  height: 100%;
}
.s1__bg {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/img-hero-pc.jpg) no-repeat bottom center transparent;
  background-size: auto 100%;
}
.s1__title {
  display: none;
}
.fv__scroll {
  -webkit-animation-name: pyoko;
  -webkit-animation-duration: 3s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-fill-mode: both;
  -webkit-animation-timing-function: ease;
  z-index: 3;
  position: absolute;
  top: 100vh;
  top: calc(var(--vh, 1vh) * 100);
  right: 84.5px;
  margin-top: -65px;
  transform: translateY(-100%);
  animation-duration: 3s;
  animation-timing-function: ease;
  animation-iteration-count: infinite;
  animation-fill-mode: both;
  animation-name: pyoko;
}
.fv__scroll img {
  width: 20.8px;
}
.fv__scroll span {
  display: block;
  position: absolute;
  top: 3.25px;
  left: 52px;
  width: 10em;
  transform: rotate(90deg);
  transform-origin: left top;
  color: #00a0e9;
  font-size: 14.3px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
  letter-spacing: -0.5px;
}
@media (max-width: 988px) {
  .s1 {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    min-height: 169.33333vw;
    padding-top: 17.33333vw;
  }
  .s1 .section__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 93.33333vw;
  }
  .s1::after {
    width: 100%;
  }
  .s1.-initialized {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .s1.-fixed {
    position: fixed;
  }
  .s1__bg {
    bottom: 0;
    background-image: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/img-hero-sp.jpg);
    background-size: 100vw auto;
  }
  .s1__title {
    display: block;
    position: relative;
    top: auto;
    left: auto;
    width: 42.13333vw;
    margin-top: 10.66667vw;
    margin-left: 2.66667vw;
    transform: none;
  }
  .fv__scroll {
    right: 13.86667vw;
    margin-top: 12vw;
  }
  .fv__scroll img {
    width: 4.53333vw;
  }
  .fv__scroll span {
    top: 1.06667vw;
    left: 11.73333vw;
    font-size: 3.2vw;
  }
  .fv__scroll.-fixed {
    position: fixed;
  }
}
.s2 {
  position: relative;
  margin-top: -26px;
  background-color: #fff100;
}
.s2 .section__inner {
  padding-top: 81.25px;
  padding-bottom: 273px;
}
.s2 .s2__movie {
  transform: translate3d(0, 13px, 0);
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s2 .s2__movie {
    transform: translate3d(0, 5.33333vw, 0);
  }
}
.s2 .s2__movie.-shown {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.s2 .s2__bookWrapper {
  margin-top: 13px;
  opacity: 0;
  transition: opacity 0.4s ease-in-out, margin-top 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s2 .s2__bookWrapper {
    margin-top: 5.33333vw;
  }
}
.s2 .s2__bookWrapper.-shown {
  margin-top: 0;
  opacity: 1;
}
.s2__bg {
  z-index: 0;
  position: absolute;
  top: 45.5px;
  right: 0;
  bottom: 0;
  left: 0;
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/bg-hairroot.svg) repeat top center transparent;
  background-size: 71.5px auto;
}
.s2__wrapper {
  position: relative;
}
.s2__wrapper::before {
  z-index: 0;
  position: absolute;
  top: -28px;
  left: 0;
  width: 100%;
  height: 60px;
  transform: scaleY(-1);
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/bg-wave-yellow.svg) repeat-x left top transparent;
  background-size: 90px 60px;
  content: "";
}
@media (max-width: 988px) {
  .s2__wrapper::before {
    top: -6.66667vw;
    height: 13.86667vw;
    background-size: auto 100%;
    background-position-x: -2.66667vw;
  }
}
.s2__spacer {
  display: none;
  position: relative;
}
.s2__book__inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 858px;
  height: 458.25px;
  margin: 0 auto;
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/book.svg) no-repeat top center transparent;
  background-size: 100% auto;
}
.s2__book__content {
  width: 50%;
}
.s2__book__content.-left {
  padding: 61.75px 0 0 58.5px;
}
.s2__book__content.-left img {
  width: 318.5px;
}
.s2__book__content.-right {
  padding: 81.25px 0 0 22.75px;
}
.s2__book__content.-right img {
  width: 306.15px;
}
.s2__movie {
  position: relative;
  margin-top: 48.75px;
}
.s2__movie__bar {
  position: absolute;
  top: 185.25px;
  padding: 6px 12px 5px;
  background-color: #23b399;
  color: #fff;
  font-size: 22.1px;
  line-height: 1;
  font-family: YakuHanJP_Narrow, Inter, sans-serif;
  letter-spacing: 0;
}
.s2__movie__bar.-left {
  left: -36.4px;
  transform: rotate(90deg);
}
.s2__movie__bar.-right {
  right: -36.4px;
  transform: rotate(-90deg);
}
@media (max-width: 988px) {
  .s2 {
    margin-top: -13.33333vw;
    background-color: transparent;
  }
  .s2 .section__inner {
    padding-top: 16.53333vw;
    padding-bottom: 38.66667vw;
  }
  .s2.-initialized .s2__spacer,
  .s2.-initialized .s2__wrapper {
    height: 210.13333vw;
  }
  .s2.-initialized .s2__wrapper {
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff100;
  }
  .s2.-initialized .s2__spacer {
    box-sizing: content-box;
    display: block;
    z-index: 0;
    position: relative;
  }
  .s2.-initialized .s2__book {
    overflow: hidden;
  }
  .s2.-fixed .s2__wrapper {
    position: fixed;
    top: auto;
    left: 0;
    transform: none;
  }
  .s2.-past .s2__wrapper {
    top: auto;
    bottom: 0;
  }
  .s2__bg {
    top: 13.33333vw;
    background-size: 8.53333vw auto;
  }
  .s2__book {
    -webkit-overflow-scrolling: touch;
    padding: 0;
    overflow: auto;
  }
  .s2__book__inner {
    position: relative;
    width: 190.4vw;
    height: 92vw;
    padding: 0 8.53333vw;
    background-size: 173.33333vw auto;
    background-position-y: center;
  }
  .s2__book__content.-left {
    padding: 12.66667vw 0 0 12vw;
  }
  .s2__book__content.-left img {
    width: 65.33333vw;
  }
  .s2__book__content.-right {
    padding: 16.66667vw 0 0 4.66667vw;
  }
  .s2__book__content.-right img {
    width: 62.8vw;
  }
  .s2__movie {
    margin-top: 20vw;
  }
  .s2__movie__bar {
    top: 18.66667vw;
    padding: 1.6vw;
    font-size: 3.2vw;
  }
  .s2__movie__bar.-left {
    left: -9.6vw;
  }
  .s2__movie__bar.-right {
    right: -9.6vw;
  }
}
.s3 {
  position: relative;
  background-color: #23b399;
}
.s3::before {
  z-index: 0;
  position: absolute;
  top: -28px;
  left: 0;
  width: 100%;
  height: 60px;
  transform: scaleY(-1);
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/bg-wave-green.svg) repeat-x left top transparent;
  background-size: 90px 60px;
  content: "";
}
@media (max-width: 988px) {
  .s3::before {
    top: -6.66667vw;
    height: 13.86667vw;
    background-size: auto 100%;
    background-position-x: -2.66667vw;
  }
}
.s3.section {
  z-index: 1;
}
.s3 .section__inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 45.5px;
}
.s3 .s3__charts,
.s3 .s3__q {
  transform: translate3d(0, 13px, 0);
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s3 .s3__charts,
  .s3 .s3__q {
    transform: translate3d(0, 5.33333vw, 0);
  }
}
.s3 .s3__chartsWrapper.-shown .s3__charts {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.s3 .s3__chartsWrapper.-shown .s3__charts.-d1 {
  transition-delay: 0s, 0s;
}
.s3 .s3__chartsWrapper.-shown .s3__charts.-d2 {
  transition-delay: 0.5s, 0.5s;
}
.s3 .s3__q.-shown {
  transform: translate3d(0, 0, 0);
  opacity: 1;
  transition-delay: 0.2s, 0.2s;
}
@media (max-width: 988px) {
  .s3 .s3__q.-shown {
    transition-delay: 0s, 0s;
  }
}
.s3__chartsWrapper {
  position: relative;
  width: 549.25px;
  padding-top: 19.5px;
}
.s3__charts {
  position: relative;
}
.s3__charts.-d1 .s3__charts__chart {
  position: absolute;
  top: 0;
  right: 52px;
}
.s3__charts.-d1 .s3__charts__chart span.-value {
  position: absolute;
  top: 48px;
  right: 18px;
}
.s3__charts.-d1 .s3__charts__chart span.-bg {
  width: 217.75px;
}
.s3__charts.-d1 .s3__charts__balloon::before {
  right: -13px;
  border-left: 14.3px solid #fff;
}
.s3__charts.-d1 .s3__charts__answer {
  margin: 18px 0 0 32.5px;
}
.s3__charts.-d2 {
  margin-top: 45.5px;
  padding-left: 260px;
}
.s3__charts.-d2 .s3__charts__chart {
  position: absolute;
  top: 3.25px;
  left: 3.25px;
}
.s3__charts.-d2 .s3__charts__chart span.-value {
  position: absolute;
  top: 74.75px;
  right: 27.3px;
}
.s3__charts.-d2 .s3__charts__chart span.-bg {
  width: 224.25px;
}
.s3__charts.-d2 .s3__charts__balloon {
  padding-top: 33.8px;
}
.s3__charts.-d2 .s3__charts__balloon::before {
  left: -13px;
  border-right: 14.3px solid #fff;
}
.s3__charts.-d2 .s3__charts__answer {
  margin: 20.8px 0 0 48.75px;
}
.s3__charts__chart span.-value {
  color: #fff;
  font-size: 20.8px;
  font-family: YakuHanJP_Narrow, Inter, sans-serif;
  text-shadow: 0 3.9px 0 rgba(0, 0, 0, 0.2);
}
.s3__charts__chart span.-value em {
  display: inline-block;
  transform: scaleX(0.95);
  font-size: 43.55px;
  letter-spacing: -1px;
}
.s3__charts__chart span.-bg {
  display: block;
}
.s3__charts__balloon {
  position: relative;
  width: 247px;
  height: 182px;
  padding: 41.6px 0 0 48.75px;
  border-radius: 91px;
  background-color: #fff;
  font-size: 19.5px;
  line-height: 1.53;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s3__charts__balloon::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-top: 6.5px solid transparent;
  border-bottom: 6.5px solid transparent;
  content: "";
}
.s3__charts__balloon small {
  display: block;
  margin-top: 5.2px;
  font-weight: inherit;
  font-size: 13.65px;
  line-height: 1.76;
}
.s3__charts__answer {
  color: #fff;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s3__charts__answer__header {
  display: flex;
  align-items: flex-end;
}
.s3__charts__answer__header span {
  display: block;
}
.s3__charts__answer__header span.-arrow {
  width: 52px;
  margin-right: 6.5px;
  padding-bottom: 5.2px;
}
.s3__charts__answer__header span.-title {
  margin-top: 3.25px;
  font-size: 19.5px;
}
.s3__charts__answer__body {
  margin-top: 3.25px;
  font-size: 14.3px;
  line-height: 2;
}
.s3__charts__note {
  display: block;
  position: absolute;
  bottom: 20px;
  left: 20px;
  color: #fff;
  font-size: 10.4px;
}
.s3__q {
  position: relative;
  width: 438.1px;
}
.s3__q .fsbCopy {
  width: 388.7px;
  margin-top: -26px;
  margin-left: 88.4px;
}
.s3__q .fsbQuestion__a .fsbQuestion__body {
  padding-bottom: 39px;
}
@media (max-width: 988px) {
  .s3 .section__inner {
    flex-flow: column nowrap;
    align-items: center;
    padding-top: 9.33333vw;
    padding-bottom: 9.33333vw;
  }
  .s3 .section__inner > * {
    min-height: 0;
  }
  .s3__chartsWrapper {
    order: 2;
    width: 100%;
    padding: 10.66667vw 5.33333vw 9.33333vw;
  }
  .s3__charts.-d1 .s3__charts__chart {
    top: 17.33333vw;
    right: -2.66667vw;
    left: auto;
  }
  .s3__charts.-d1 .s3__charts__chart span.-value {
    top: 11.33333vw;
    right: 4vw;
  }
  .s3__charts.-d1 .s3__charts__chart span.-bg {
    width: 45.33333vw;
  }
  .s3__charts.-d1 .s3__charts__answer {
    margin: 12vw 0 0 4vw;
  }
  .s3__charts.-d2 {
    margin-top: 8vw;
    padding-left: 0;
  }
  .s3__charts.-d2 .s3__charts__chart {
    z-index: 1;
    top: 26.66667vw;
    right: -2.66667vw;
    left: auto;
  }
  .s3__charts.-d2 .s3__charts__chart span.-value {
    top: 13.33333vw;
    right: 2.66667vw;
  }
  .s3__charts.-d2 .s3__charts__chart span.-bg {
    width: 42.66667vw;
  }
  .s3__charts.-d2 .s3__charts__balloon {
    height: 53.33333vw;
    padding-top: 9.06667vw;
    border-radius: 26.66667vw;
  }
  .s3__charts.-d2 .s3__charts__answer {
    margin: 16vw 0 0 4vw;
  }
  .s3__charts__chart span.-value {
    font-size: 4.53333vw;
    text-shadow: 0 0.8vw 0 rgba(0, 0, 0, 0.2);
  }
  .s3__charts__chart span.-value em {
    transform: scaleX(0.9);
    font-size: 9.6vw;
    letter-spacing: -1px;
  }
  .s3__charts__balloon {
    z-index: 1;
    position: relative;
    width: 64vw;
    height: 48vw;
    padding: 6.93333vw 0 0 8.53333vw;
    border-radius: 24vw;
    font-size: 5.86667vw;
  }
  .s3__charts__balloon::before {
    display: none;
  }
  .s3__charts__balloon::after {
    position: absolute;
    bottom: -5.86667vw;
    left: 25.06667vw;
    width: 10.66667vw;
    height: 13.06667vw;
    transform: none;
    border: none;
    background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/arrow-5.svg) no-repeat center center transparent;
    background-size: contain;
    content: "";
  }
  .s3__charts__balloon small {
    margin-top: 1.33333vw;
    font-size: 4vw;
    line-height: 1.73;
  }
  .s3__charts__answer__header span {
    display: block;
  }
  .s3__charts__answer__header span.-arrow {
    width: 16vw;
    margin-right: 1.33333vw;
    padding-bottom: 1.86667vw;
  }
  .s3__charts__answer__header span.-title {
    margin-top: 0;
    font-size: 6.93333vw;
  }
  .s3__charts__answer__body {
    margin-top: 2.13333vw;
    font-size: 4.26667vw;
  }
  .s3__charts__note {
    bottom: 0;
    left: 8vw;
    font-size: 3.2vw;
  }
  .s3__q {
    order: 1;
    width: 89.86667vw;
  }
  .s3__q .fsbCopy {
    width: 74.66667vw;
    margin-top: -5.33333vw;
    margin-left: 20vw;
  }
  .s3__q .fsbQuestion__a .fsbQuestion__body {
    padding-bottom: 8vw;
  }
}
.s4 {
  position: relative;
  padding-bottom: 172.25px;
  background-color: #fff100;
}
.s4__bg {
  z-index: 0;
  position: absolute;
  top: 65px;
  right: 0;
  bottom: 0;
  left: 0;
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/bg-hairroot.svg) repeat top center transparent;
  background-size: 71.5px auto;
}
@media (max-width: 988px) {
  .s4 {
    padding-bottom: 25.33333vw;
  }
  .s4__bg {
    top: 4vw;
    background-size: 8.53333vw auto;
  }
}
.s4a {
  padding-top: 234px;
}
.s4a .section__inner {
  text-align: center;
}
.s4a {
  transform: translate3d(0, 13px, 0);
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s4a {
    transform: translate3d(0, 5.33333vw, 0);
  }
}
.s4a.-shown {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.s4a__contents {
  display: flex;
  text-align: left;
}
.s4a__contents .fsbQuestion {
  width: 409.5px;
  height: 301.6px;
  overflow: hidden;
}
.s4a__carousel {
  width: 578.5px;
  height: 301.6px;
}
.s4a__download {
  display: inline-block;
  position: relative;
  margin-top: 74.75px;
  text-align: center;
}
.s4a__download a {
  transition: transform 0.1s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
.-hasHover .s4a__download:hover a {
  transform: scale(1.08);
}
.-hasHover .s4a__download:hover .s4__hand {
  transform: rotate(-15deg);
}
.s4a__download a {
  display: inline-flex;
  position: relative;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 468px;
  height: 91px;
  padding-left: 13px;
  border-radius: 45.5px;
  background-color: #000;
  color: #fff;
  font-size: 27.3px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s4a__download a i {
  display: inline-block;
  width: 17.55px;
  margin-left: 9.75px;
}
.s4__hand {
  position: absolute;
  top: -48.75px;
  right: -68.25px;
  width: 117px;
  transition: transform 0.1s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
@media (max-width: 988px) {
  .s4a {
    padding-top: 25.33333vw;
  }
  .s4a__contents {
    flex-flow: column nowrap;
    padding: 0 4.8vw;
  }
  .s4a__contents > * {
    min-height: 0;
  }
  .s4a__contents .fsbQuestion {
    width: 100%;
    height: auto;
    overflow: visible;
  }
  .s4a__carousel {
    width: 100%;
    height: auto;
  }
  .s4a__download {
    margin-top: 10.66667vw;
  }
  .s4a__download a {
    width: 85.33333vw;
    height: 16vw;
    padding-left: 2.66667vw;
    border-radius: 8vw;
    font-size: 4.8vw;
  }
  .s4a__download a i {
    width: 3.2vw;
    margin-left: 1.6vw;
  }
  .s4__hand {
    top: -8.53333vw;
    right: -3.2vw;
    width: 17.33333vw;
  }
}
.s4b {
  padding-top: 97.5px;
  text-align: center;
}
.s4b {
  transform: translate3d(0, 13px, 0);
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s4b {
    transform: translate3d(0, 5.33333vw, 0);
  }
}
.s4b.-shown {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.s4b__title {
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  font-size: 43.55px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s4b__title span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 65px;
  height: 65px;
  border-radius: 50%;
  background-color: #e4007f;
}
.s4b__title span + span {
  margin-top: -16.9px;
}
.s4b__contents {
  display: flex;
  padding-left: 143px;
  text-align: left;
}
.s4b__info {
  width: 100%;
  padding-top: 16px;
  font-size: 18.2px;
  line-height: 2.1;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s4b__detail {
  margin-top: 28.6px;
}
.s4b__detail dt {
  width: 3.2em;
  float: left;
  clear: left;
}
.s4b__detail dt::after {
  margin-left: 3.25px;
  content: "｜";
}
.s4b__detail dd {
  overflow: auto;
}
.s4b__note {
  margin-top: 20px;
  font-size: 11.7px;
}
.s4b__note small {
  display: block;
}
.s4b__img {
  flex-shrink: 0;
  width: 416px;
}
.s4b__copy {
  display: inline-block;
  margin-top: 74.75px;
  padding: 19.5px 19.5px 19.5px 26px;
  font-size: 53.3px;
}
@media (max-width: 988px) {
  .s4b {
    padding: 17.33333vw 4.8vw 0;
  }
  .s4b__title {
    font-size: 8.53333vw;
  }
  .s4b__title span {
    width: 12.26667vw;
    height: 12.26667vw;
  }
  .s4b__title span + span {
    margin-top: -3.2vw;
  }
  .s4b__contents {
    flex-flow: column nowrap;
    padding-left: 0;
  }
  .s4b__contents > * {
    min-height: 0;
  }
  .s4b__info {
    padding: 0 0 0 17.33333vw;
    font-size: 4.26667vw;
    line-height: 1.9375;
  }
  .s4b__detail {
    margin-top: 5.33333vw;
  }
  .s4b__detail dt::after {
    margin-left: 0.66667vw;
  }
  .s4b__detail dd {
    overflow: hidden;
    letter-spacing: 0;
    white-space: nowrap;
  }
  .s4b__note {
    margin-top: 2.66667vw;
    font-size: 3.2vw;
    line-height: 1.75;
  }
  .s4b__note small + small {
    margin-top: 2.66667vw;
  }
  .s4b__img {
    width: 100%;
    margin-top: 6.66667vw;
  }
  .s4b__copy {
    max-width: 100%;
    margin-top: 13.33333vw;
    padding: 4vw 4vw 4vw 5.33333vw;
    font-size: 10.66667vw;
    text-align: left;
  }
}
.s5 {
  background-color: #23b399;
}
.s5 .section__inner {
  display: flex;
  padding-top: 74.75px;
  padding-bottom: 149.5px;
}
.s5 .s5__products,
.s5 .s5__text {
  transform: translate3d(0, 13px, 0);
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s5 .s5__products,
  .s5 .s5__text {
    transform: translate3d(0, 5.33333vw, 0);
  }
}
.s5 .s5__products.-shown,
.s5 .s5__text.-shown {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.s5 .s5__products.-shown {
  transition-delay: 0.2s, 0.2s;
}
@media (max-width: 988px) {
  .s5 .s5__products.-shown {
    transition-delay: 0s, 0s;
  }
}
.s5__text {
  flex-shrink: 0;
  width: 529.75px;
}
.s5__text .fsbQuestion__a .fsbQuestion__body {
  padding-bottom: 39px;
}
.s5__text .fsbCopy {
  display: inline-block;
  position: relative;
  top: -40px;
  left: 97.5px;
  padding: 32.5px;
}
.s5__products {
  width: 458.25px;
}
.s5__products__imgs {
  position: relative;
  height: 289.25px;
}
.s5__products__imgs::after,
.s5__products__imgs::before {
  z-index: 0;
  position: absolute;
  width: 305.5px;
  height: 305.5px;
  background: url(https://www.kai-group.com/contents_file/products/kamisori/product/firstshavebook/images/product-bg.svg) no-repeat center center transparent;
  background-size: contain;
  content: "";
}
.s5__products__imgs::before {
  top: -32.5px;
  left: 26px;
}
.s5__products__imgs::after {
  top: -32.5px;
  right: -71.5px;
}
.s5__products__img {
  z-index: 1;
  position: absolute;
}
.s5__products__img.-p1 {
  top: -19.5px;
  left: 113.75px;
  width: 136.5px;
}
.s5__products__img.-p2 {
  position: absolute;
  top: -18.2px;
  right: 9.75px;
  width: 123.5px;
}
.s5__products__link {
  padding-left: 107.25px;
  text-align: center;
}
.s5__products__link a {
  padding-bottom: 6.5px;
  border-bottom: 1.3px solid #fff;
  color: #fff;
  font-size: 16.9px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.-hasHover .s5__products__link a:hover {
  border-bottom-color: transparent;
}
.s5__products__link a i {
  display: inline-block;
  width: 16.9px;
  margin-left: 6.5px;
}
.s5__description {
  width: 409.5px;
  margin: 22.75px 0 0 81.25px;
  padding: 20.8px 29.25px;
  background-color: #0d9b82;
  color: #fff;
  font-size: 14.3px;
  line-height: 1.77;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
  white-space: nowrap;
}
.s5__description a {
  margin-right: 0.5em;
  padding-bottom: 5.2px;
  border-bottom: 1.3px solid #fff;
  color: #fff;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.-hasHover .s5__description a:hover {
  border-bottom-color: transparent;
}
.s5__description a i {
  display: inline-block;
  width: 11.7px;
  margin-left: 3.25px;
}
@media (max-width: 988px) {
  .s5 .section__inner {
    flex-flow: column nowrap;
    padding: 16vw 4.8vw 42.66667vw;
  }
  .s5 .section__inner > * {
    min-height: 0;
  }
  .s5__text {
    width: 100%;
  }
  .s5__text .fsbQuestion__q {
    font-size: 6.4vw;
  }
  .s5__text .fsbQuestion__a .fsbQuestion__body {
    padding-bottom: 8vw;
  }
  .s5__text .fsbCopy {
    top: -5.33333vw;
    left: 12vw;
    padding: 4vw 5.33333vw;
  }
  .s5__products {
    width: 100%;
    margin-top: 2.66667vw;
  }
  .s5__products__imgs {
    height: 56vw;
  }
  .s5__products__imgs::after,
  .s5__products__imgs::before {
    width: 54.4vw;
    height: 54.4vw;
  }
  .s5__products__imgs::before {
    top: 0;
    left: -0.53333vw;
  }
  .s5__products__imgs::after {
    top: 0;
    right: -0.53333vw;
  }
  .s5__products__img.-p1 {
    top: 2.13333vw;
    left: 16vw;
    width: 24vw;
  }
  .s5__products__img.-p2 {
    top: 1.6vw;
    right: 15.2vw;
    width: 21.86667vw;
  }
  .s5__products__link {
    margin-top: 7.46667vw;
    padding-left: 0;
  }
  .s5__products__link a {
    padding-bottom: 1.6vw;
    border-bottom-width: 1px;
    font-size: 3.73333vw;
  }
  .s5__products__link a i {
    width: 3.46667vw;
    margin-left: 1.33333vw;
  }
  .s5__description {
    width: auto;
    margin: 5.33333vw 4vw 0;
    padding: 4vw 2.66667vw;
    font-size: 3.2vw;
  }
  .s5__description a {
    padding-bottom: 1.06667vw;
    border-bottom-width: 1px;
  }
  .s5__description a i {
    width: 2.4vw;
    margin-left: 0.66667vw;
  }
}
.s6 {
  background-color: #00a0e9;
}
.s6 .section__inner {
  display: flex;
  z-index: 2;
  padding-top: 74.75px;
  padding-bottom: 136.5px;
}
.s6 .s6__copy .fsbCopy,
.s6 .s6__vm {
  transform: translate3d(0, 13px, 0);
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}
@media (max-width: 988px) {
  .s6 .s6__copy .fsbCopy,
  .s6 .s6__vm {
    transform: translate3d(0, 5.33333vw, 0);
  }
}
.s6 .s6__copy .fsbCopy.-shown,
.s6 .s6__vm.-shown {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.s6__copy {
  z-index: 1;
  position: absolute;
  top: -65px;
  left: 50%;
  transform: translateX(-50%);
}
.s6__copy .fsbCopy {
  padding: 29.25px 19.5px 26px 32.5px;
}
.s6__copy i {
  display: inline-block;
  position: relative;
  top: -9.75px;
  left: -3.25px;
  font-weight: 400;
  font-size: 19.5px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N M", sans-serif;
  vertical-align: super;
}
.s6__bgs {
  z-index: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
.s6__bg {
  position: absolute;
  width: 357.5px;
}
.s6__bg.-b1 {
  top: 32.5px;
  left: -117px;
}
.s6__bg.-b2 {
  top: 16.25px;
  right: -120.25px;
}
.s6__vm {
  position: relative;
  width: 910px;
  height: 468px;
  margin: 107.25px auto 0;
  padding-left: 435.5px;
  overflow: hidden;
  border-radius: 234px;
  background-color: #fff;
}
.s6__vm__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 435.5px;
  height: 100%;
}
.s6__vm__img img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.s6__vm__info {
  padding: 57.2px 65px 0;
}
.s6__vm__title em,
.s6__vm__title small,
.s6__vm__title span {
  display: block;
}
.s6__vm__title em,
.s6__vm__title span {
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s6__vm__title small {
  font-size: 15.6px;
}
.s6__vm__title span {
  font-size: 23.4px;
}
.s6__vm__title em {
  font-size: 39px;
  line-height: 1.4;
  white-space: nowrap;
}
.s6__vm__title em i {
  font-weight: 400;
  font-size: 14.3px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N M", sans-serif;
  vertical-align: super;
}
.s6__vm__text {
  margin-top: 13px;
  font-size: 14.3px;
  line-height: 1.81;
}
.s6__link {
  margin-top: 22.75px;
}
.s6__link a {
  display: inline-flex;
  position: relative;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 221px;
  height: 58.5px;
  padding-left: 13px;
  border-radius: 29.25px;
  background-color: #00a0e9;
  color: #fff;
  font-size: 16.9px;
  font-family: YakuHanJP_Narrow, "A+EqpB-游ゴシック体 Pr6N B", sans-serif;
}
.s6__link a {
  transition: transform 0.1s cubic-bezier(0.69, -0.18, 0.45, 1.21);
}
.-hasHover .s6__link a:hover {
  transform: scale(1.1);
}
@media (max-width: 988px) {
  .s6 .section__inner {
    flex-flow: column nowrap;
    padding-top: 15.46667vw;
    padding-bottom: 25.33333vw;
  }
  .s6 .section__inner > * {
    min-height: 0;
  }
  .s6__copy {
    top: -26.66667vw;
    right: 8.53333vw;
    left: 8.53333vw;
    transform: none;
  }
  .s6__copy .fsbCopy {
    padding: 4vw 5.33333vw;
    font-size: 8vw;
  }
  .s6__copy .fsbCopy span {
    display: block;
    margin-top: 1.33333vw;
    font-size: 10.4vw;
  }
  .s6__copy .fsbCopy i {
    top: -2vw;
    left: -0.66667vw;
    font-size: 4vw;
  }
  .s6__bgs {
    z-index: 1;
    position: absolute;
    top: -1.33333vw;
    overflow: hidden;
  }
  .s6__bg {
    position: absolute;
    width: 37.33333vw;
  }
  .s6__bg.-b1 {
    top: 3.2vw;
    left: -11.2vw;
  }
  .s6__bg.-b2 {
    top: 0;
    right: -12.8vw;
  }
  .s6__vm {
    width: 88vw;
    height: auto;
    margin: 5.33333vw auto 0;
    padding-left: 0;
    border-radius: 48vw;
  }
  .s6__vm__img {
    position: relative;
    width: 100%;
    height: 74.66667vw;
    overflow: hidden;
  }
  .s6__vm__img img {
    -o-object-fit: cover;
    width: 120%;
    height: 120%;
    margin-top: -12vw;
    object-fit: cover;
  }
  .s6__vm__info {
    padding: 6.66667vw 9.33333vw 16vw;
  }
  .s6__vm__title small {
    font-size: 3.2vw;
  }
  .s6__vm__title span {
    font-size: 4.8vw;
  }
  .s6__vm__title em {
    margin-top: -1.33333vw;
    font-size: 8vw;
  }
  .s6__vm__title em i {
    font-size: 2.93333vw;
  }
  .s6__vm__text {
    margin-top: 1.33333vw;
    margin-right: -9.33333vw;
    font-size: 3.2vw;
    line-height: 1.83;
  }
  .s6__link {
    margin-top: 5.33333vw;
    text-align: center;
  }
  .s6__link a {
    width: 48vw;
    height: 13.33333vw;
    padding-left: 0;
    border-radius: 6.66667vw;
    font-size: 3.73333vw;
  }
}
.section {
  z-index: 0;
  position: relative;
}
.section.-arrowBottom .section__arrow,
.section.-arrowTop .section__arrow {
  z-index: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: inherit;
}
.section.-arrowBottom .section__arrow::after,
.section.-arrowBottom .section__arrow::before,
.section.-arrowTop .section__arrow::after,
.section.-arrowTop .section__arrow::before {
  position: absolute;
  width: 50%;
  height: 100%;
  background-color: inherit;
  content: "";
}
.section.-arrowBottom .section__arrow::before,
.section.-arrowTop .section__arrow::before {
  left: 0;
  transform: skewY(11deg);
  transform-origin: right top;
}
.section.-arrowBottom .section__arrow::after,
.section.-arrowTop .section__arrow::after {
  right: 0;
  transform: skewY(-11deg);
  transform-origin: left top;
}
.section.-arrowBottom .section__arrow::before {
  transform-origin: left bottom;
}
.section.-arrowBottom .section__arrow::after {
  transform-origin: right bottom;
}
.section__inner {
  z-index: 1;
  position: relative;
  max-width: 988px;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 988px) {
  .section__inner {
    max-width: none;
  }
}
.sections {
  overflow: hidden;
}
