@charset "UTF-8";
body {
  font-family: "Noto Sans JP", sans-serif;
  color: #004896;
}

/******************************************************
* layout
******************************************************/
.l-inner {
  max-width: 1520px;
  max-width: 95rem;
  margin: 0 auto;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .l-inner {
    max-width: 460px;
    max-width: 28.75rem;
    margin: 0 auto;
    padding: 0 30px;
    padding: 0 1.875rem;
  }
}
.m-inner {
  max-width: 1340px;
  max-width: 83.75rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .m-inner {
    padding: 0 23px;
    padding: 0 1.4375rem;
  }
}
.s-inner {
  max-width: 796px;
  max-width: 49.75rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .s-inner {
    padding: 0 12px;
    padding: 0 0.75rem;
  }
}

@media screen and (max-width: 767px) {
  .sp_none {
    display: none;
  }
}



/******************************************************
* header
******************************************************/
.p-subpage-top.p-subpage-top--baby .p-subpage-top__heading {
  /* margin-top: 68px; */
  margin-top: 4.25rem;
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .p-subpage-top.p-subpage-top--baby .p-subpage-top__heading {
    /* margin-top: 35px; */
    margin-top: 2.1875rem;
    padding-bottom: 0;
  }
}

.p-subpage-top.p-subpage-top--baby .p-subpage-top__heading::before {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  /* margin-right: 28px; */
  margin-right: 1.75rem;
  /* margin-top: 11px; */
  margin-top: 0.3125rem;
  margin-bottom: 0;
  margin-left: 0;
  content: "";
  background-image: url(../images/baby/baby-icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 97px;
  width: 6.0625rem;
  height: 84px;
  height: 5.25rem;
}
@media screen and (max-width: 767px) {
  .p-subpage-top.p-subpage-top--baby .p-subpage-top__heading::before {
    width: 48px;
    width: 3rem;
    height: 30px;
    height: 1.875rem;
    /* margin-right: 14px; */
    margin-right: 0.875rem;
  }
}

.p-subpage-top.p-subpage-top--baby .p-subpage-top__heading img {
  width: 100%;
  max-width: 499px;
  max-width: 31.1875rem;
  /* margin-top: 22px; */
  margin-top: 1.375rem;
}
@media screen and (max-width: 767px) {
  .p-subpage-top.p-subpage-top--baby .p-subpage-top__heading img {
    max-width: 230px;
    max-width: 14.375rem;
    /* margin-top: 11px; */
    margin-top: 0.6875rem;
  }
}

.p-subpage-top.p-subpage-top--baby .p-subpage-top__inner::before {
  display: none;
}



/******************************************************
* background
******************************************************/
/* .p-baby-main {
  background-color: #efe7db;
  color: #009944;
} */

.p-baby-main {
  position: relative;
  background-image: url(../images/baby/bg.jpg);
  /*background-position: center;*/
  background-size: contain;
  background-repeat: repeat;
}

.p-subpage-top--baby {
  background-color: #fff;
}


/******************************************************
* main visual
******************************************************/
.p-baby-mv__inner {
  position: relative;
  padding-top: 58px;
  padding-top: 3.625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-mv__inner {
    padding-top: 26px;
    padding-top: 1.625rem;
    margin: 0 auto;
    width: 375px;
    width: 23.4375rem;
  }
}

.p-baby-mv__main-frame {
  width: 1620px;
  width: 101.25rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-baby-mv__main-frame {
    position: relative;
    padding-left: 5px;
    padding-right: 8px;
    width: 362px;
    width: 22.625rem;
    z-index: 10;
  }
}

.p-baby-mv__baby-illust {
  position: absolute;
  top: 346px;
  top: 21.625rem;
  left: 50%;
  width: 770px;
  width: 48.125rem;
  transform: translate(-50%, 30px);
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .p-baby-mv__baby-illust {
    top: 52%;
    left: 49%;
    width: 278px;
    width: 17.375rem;
  }
}

.p-baby-mv__butterfly img {
  position: absolute;
}

.p-baby-mv__butterfly1 {
  top: 172px;
  top: 10.75rem;
  left: 300px;
  left: 18.75rem;
  width: 60px;
  width: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-baby-mv__butterfly1 {
    top: 126px;
    top: 7.875rem;
    left: 75px;
    left: 4.6875rem;
    width: 30px;
    width: 1.875rem;
  }
}

.p-baby-mv__butterfly2 {
  top: 224px;
  top: 14rem;
  left: 370px;
  left: 23.125rem;
  width: 98px;
  width: 6.125rem;
}
@media screen and (max-width: 767px) {
  .p-baby-mv__butterfly2 {
    top: 120px;
    top: 7.5rem;
    left: initial;
    right: 80px;
    right: 5rem;
    width: 34px;
    width: 2.125rem;
  }
}


.p-baby-mv__butterfly3 {
  top: 145px;
  top: 9.0625rem;
  left: 476px;
  left: 29.75rem;
  width: 54px;
  width: 3.375rem;
}

.p-baby-mv__butterfly4 {
  top: 172px;
  top: 10.75rem;
  right: 420px;
  right: 26.25rem;
  width: 56px;
  width: 3.5rem;
}

.p-baby-mv__butterfly5 {
  top: 284px;
  top: 17.75rem;
  right: 340px;
  right: 21.25rem;
  width: 85px;
  width: 5.3125rem;
}

.p-baby-mv__butterfly6 {
  top: 168px;
  top: 10.5rem;
  right: 260px;
  right: 16.25rem;
  width: 77px;
  width: 4.8125rem;
}




/******************************************************
* about css
******************************************************/
.p-baby-about {
  margin-top: 66px;
  margin-top: 4.125rem;
}
@media screen and (max-width: 767px) {
  .p-baby-about {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
}


.p-baby-about__lead {
  margin: 0 auto;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 1.81;
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-baby-about__lead {
    padding: 0 10px;
    padding: 0 0.625rem;
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.61;
    letter-spacing: 0;
    text-align: justify;
    max-width: 315px;
    max-width: 19.6875rem;
  }
}


.p-baby-about__message-box {
  margin: 0 auto;
  margin-top: 80px;
  margin-top: 5rem;
  padding: 64px 60px;
  padding: 4rem 3.75rem;
  border-radius: 50px;
  border-radius: 3.125rem;
  background-color: #f6f1e4;
  width: 792px;
  width: 49.5rem;
  display: none;
}
@media screen and (max-width: 767px) {
  .p-baby-about__message-box {
    margin-top: 32px;
    margin-top: 2rem;
    padding: 30px 32px 30px 26px;
    padding: 1.875rem 2rem 1.875rem 1.625rem;
    border-radius: 25px;
    border-radius: 1.5625rem;
    width: 328px;
    width: 20.5rem;
  }
}


.p-baby-about__message-title {
  margin: 0 auto;
  width: 584px;
  width: 36.5rem;
}
@media screen and (max-width: 767px) {
  .p-baby-about__message-title {
    width: 100%;
  }
}


.p-baby-about__message-text {
  margin-top: 50px;
  margin-top: 3.125rem;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 1.81;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .p-baby-about__message-text {
    margin-top: 21px;
    padding: 0 8px;
    font-size: 11px;
    text-align: justify;
  }
}


.p-baby-about__message-btn {
  position: relative;
  margin: 0 auto;
  margin-top: 55px;
  margin-top: 3.4375rem;
  padding: 34px 90px 34px 45px;
  padding: 2.125rem 5.625rem 2.125rem 2.8125rem;
  width: 507px;
  width: 31.6875rem;
  border-radius: 50px;
  border-radius: 3.125rem;
  background-color: #FFF;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-baby-about__message-btn {
    margin-top: 30px;
    margin-top: 1.875rem;
    padding: 19px 44px 19px 24px;
    padding: 1.1875rem 2.75rem 1.1875rem 1.5rem;
    width: 282px;
    width: 17.625rem;
  }
}


.p-baby-about__message-btn-title {
  width: 358.5px;
  width: 22.4063rem;
}
@media screen and (max-width: 767px) {
  .p-baby-about__message-btn-title {
    width: 100%;
  }
}


.p-baby-about__message-btn::before,
.p-baby-about__message-btn::after {
  position: absolute;
  content: "";
  width: 16px;
  width: 1rem;
  height: max(0.1875rem, 0.1875rem);
  border-radius: 5px;
  background: #004896;
  top: 50%;
  right: 45.5px;
  right: 2.8438rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media screen and (max-width: 767px) {
  .p-baby-about__message-btn::before,
  .p-baby-about__message-btn::after {
    width: 11.5px;
    width: 0.7188rem;
    top: 50%;
    right: 24px;
    right: 1.5rem;
  }
}


.p-baby-about__message-btn::after {
  transform: translateY(-50%) rotate(-90deg);
}

.p-baby-about__message-btn.is-close::after {
  transform: translateY(-50%) rotate(0deg);
}

.p-baby-about__anchor-list {
  margin-top: 114px;
  margin-top: 7.125rem;
  display: flex;
  justify-content: center;
  gap: 46px;
  gap: 2.875rem;
}
@media screen and (max-width: 767px) {
  .p-baby-about__anchor-list {
    margin-top: 51px;
    padding: 0 25px;
    gap: 12px;
    /* max-width: 325px; */
  }
}


.p-baby-about__anchor-img {
  width: 257px;
  width: 16.0625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-about__anchor-img {
    width: 100px;
  }
}




/******************************************************
* contents section css
******************************************************/
.p-baby-contents {
  position: relative;
  margin-top: 89px;
  margin-top: 5.5625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents {
    margin-top: 50px;
    margin-top: 3.125rem;
    padding: 0;
    width: 375px;
    width: 23.4375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-baby-contents__title {
    padding: 0;
    margin: 0 auto;
    width: 315px;
    width: 19.6875rem;
  }
}


.p-baby-contents__title-decoration {
  position: relative;
  z-index: 10;
}

.p-baby-contents__title-decoration_img1 {
  position: absolute;
  top: 0;
  left: -180px;
  left: -11.25rem;
  width: 413px;
  width: 25.8125rem;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 1s;
}

.p-baby-contents__title-decoration_img2 {
  position: absolute;
  top: -50px;
  top: -3.125rem;
  right: -160px;
  right: -10rem;
  width: 464px;
  width: 29rem;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 1s;
}

#section2 .p-baby-contents__title-decoration_img1 {
  top: -30px;
  top: -1.875rem;
  left: -150px;
  left: -9.375rem;
  width: 465px;
  width: 29.0625rem;
}

#section2 .p-baby-contents__title-decoration_img2 {
  top: -20px;
  top: -1.25rem;
  right: -120px;
  right: -7.5rem;
  width: 387px;
  width: 24.1875rem;
}

#section3 .p-baby-contents__title-decoration_img1 {
  top: 10px;
  top: 0.625rem;
  left: -120px;
  left: -7.5rem;
  width: 393px;
  width: 24.5625rem;
}

#section3 .p-baby-contents__title-decoration_img2 {
  top: -20px;
  top: -1.25rem;
  width: 465px;
  width: 29.0625rem;
}


.p-baby-contents__visual-wrap {
  position: relative;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__visual-wrap {
    margin: 0 auto;
    margin-top: 18px;
    margin-top: 1.125rem;
    width: 315px;
    width: 19.6875rem;
    padding: 0;
  }
}


#section2 .p-baby-contents__visual-wrap {
  margin-top: 142px;
  margin-top: 8.875rem;
}
@media screen and (max-width: 767px) {
  #section2 .p-baby-contents__visual-wrap {
    margin-top: 45px;
    margin-top: 2.8125rem;
  }
}

#section3 .p-baby-contents__visual-wrap {
  margin-top: 89px;
  margin-top: 5.5625rem;
}
@media screen and (max-width: 767px) {
  #section3 .p-baby-contents__visual-wrap {
    margin-top: 15px;
    margin-top: 0.9375rem;
  }
}

.p-baby-contents__visual-background {
  margin: 0 auto;
  width: 1146px;
  width: 71.625rem;
}

.p-baby-contents__visual-baby {
  position: absolute;
  top: 140px;
  top: 8.75rem;
  left: 520px;
  left: 32.5rem;
  width: 402px;
  width: 25.125rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__visual-baby {
    top: 55px;
    top: 21%;
    left: 80px;
    left: 25.5%;
    width: 155px;
    width: 9.6875rem;
  }
}


#section2 .p-baby-contents__visual-baby {
  top: 20px;
  top: 1.25rem;
  left: 530px;
  left: 33.125rem;
  width: 388px;
  width: 24.25rem;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  #section2 .p-baby-contents__visual-baby {
    top: 6%;
    left: 27%;
    width: 136px;
    width: 8.5rem;
  }
}

#section3 .p-baby-contents__visual-baby {
  top: 20px;
  top: 1.25rem;
  left: 630px;
  left: 39.375rem;
  width: 274px;
  width: 17.125rem;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  #section3 .p-baby-contents__visual-baby {
    top: 6%;
    left: 35%;
    width: 102px;
    width: 6.375rem;
  }
}

.p-baby-contents__visual-butterfly img {
  position: absolute;
}

.p-baby-contents__visual-butterfly_img1 {
  top: 100px;
  top: 6.25rem;
  left: 300px;
  left: 18.75rem;
  width: 85px;
  width: 5.3125rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__visual-butterfly_img1 {
    top: 8px;
    top: 0.5rem;
    left: 28px;
    left: 1.75rem;
    width: 30px;
    width: 1.875rem;
  }
}


.p-baby-contents__visual-butterfly_img2 {
  top: -90px;
  top: -5.625rem;
  left: 550px;
  left: 34.375rem;
  width: 99px;
  width: 6.1875rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__visual-butterfly_img2 {
    top: -10px;
    top: -0.625rem;
    left: 90px;
    left: 5.625rem;
    width: 35px;
    width: 2.1875rem;
  }
}

.p-baby-contents__visual-butterfly_img3 {
  top: -10px;
  top: -0.625rem;
  right: 360px;
  right: 22.5rem;
  width: 58px;
  width: 3.625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__visual-butterfly_img3 {
    top: -6px;
    top: -0.375rem;
    right: 40px;
    right: 2.5rem;
    width: 20px;
    width: 1.25rem;
  }
}

.p-baby-contents__lets-wrap {
  position: relative;
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__lets-wrap {
    margin-top: 10px;
    margin-top: 0.625rem;
    padding: 0 5px;
    padding: 0 0.3125rem;
    width: 375px;
    width: 23.4375rem;
  }
}

.p-baby-contents__lets-frame {
  width: 100%;
}

.p-baby-contents__lets-value {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0 276px;
  padding: 0 17.25rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__lets-value {
    padding: 0 60px;
    padding: 0 3.75rem;
  }
}


.p-baby-contents__lets-title {
  margin: 104px auto 0;
  margin: 6.5rem auto 0;
  width: 331px;
  width: 20.6875rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__lets-title {
    margin-top: 68px;
    margin-top: 4.25rem;
    width: 175px;
    width: 10.9375rem;
  }
}


#section2 .p-baby-contents__lets-title {
  margin: 118px auto 0;
  margin: 7.375rem auto 0;
}
@media screen and (max-width: 767px) {
  #section2 .p-baby-contents__lets-title {
    margin-top: 64px;
    margin-top: 4rem;
  }
}


#section3 .p-baby-contents__lets-title {
  margin: 138px auto 0;
  margin: 8.625rem auto 0;
}
@media screen and (max-width: 767px) {
  #section3 .p-baby-contents__lets-title {
    margin-top: 60px;
    margin-top: 3.75rem;
  }
}


.p-baby-contents__lets-text {
  margin-top: 53px;
  margin-top: 3.3125rem;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 1.81;
  letter-spacing: 0.03em;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__lets-text {
    padding: 0 4px;
    padding: 0 0.25rem;
    margin-top: 26px;
    margin-top: 1.625rem;
    font-size: 13px;
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
  }
}


.p-baby-contents__advise-wrap {
  position: relative;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__advise-wrap {
    margin-top: 14px;
    margin-top: 0.875rem;
  }
}


.p-baby-contents__advise-frame {
  margin-left: 10px;
  margin-left: 0.625rem;
  width: 510px;
  width: 31.875rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__advise-frame {
    width: 255px;
    width: 15.9375rem;
    margin-left: 0;
  }
}


.p-baby-contents__advise-text {
  position: absolute;
  top: 160px;
  top: 10rem;
  left: 42px;
  left: 2.625rem;
  width: 460px;
  width: 28.75rem;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 1.63;
  letter-spacing: 0.08em;
  color: #6f5540;
  /* mix-blend-mode: hard-light; */
  opacity: 0.6;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__advise-text {
    top: 86px;
    top: 5.375rem;
    left: 18px;
    left: 1.125rem;
    width: 220px;
    width: 13.75rem;
    font-size: 11px;
    font-size: 0.6875rem;
    line-height: 1.58;
    letter-spacing: 0.03em;
    text-align: justify;
  }
}


.p-baby-contents__advise-baby {
  position: absolute;
  top: 100px;
  top: 6.25rem;
  right: -50px;
  right: -3.125rem;
  width: 337px;
  width: 21.0625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__advise-baby {
    top: 200px;
    top: 12.5rem;
    right: 40px;
    right: 2.5rem;
    width: 168px;
    width: 10.5rem;
  }
}


#section2 .p-baby-contents__advise-baby {
  top: 50px;
  top: 3.125rem;
  right: 10px;
  right: 0.625rem;
  width: 229px;
  width: 14.3125rem;
}
@media screen and (max-width: 767px) {
  #section2 .p-baby-contents__advise-baby {
    top: 180px;
    top: 11.25rem;
    right: 40px;
    right: 2.5rem;
    width: 110px;
    width: 6.875rem;
  }
}


#section3 .p-baby-contents__advise-baby {
  top: 20px;
  top: 1.25rem;
  right: 0;
  width: 238px;
  width: 14.875rem;
}
@media screen and (max-width: 767px) {
  #section3 .p-baby-contents__advise-baby {
    top: 200px;
    top: 12.5rem;
    right: 90px;
    right: 5.625rem;
    width: 120px;
    width: 7.5rem;
  }
}


.p-baby-contents__advise-onomato {
  position: absolute;
  top: -13px;
  top: -0.8125rem;
  right: -54px;
  right: -3.375rem;
  width: 223px;
  width: 13.9375rem;
}
@media screen and (max-width: 767px) {
  .p-baby-contents__advise-onomato {
    top: 165px;
    top: 10.3125rem;
    right: 18px;
    right: 1.125rem;
    width: 116px;
    width: 7.25rem;
  }
}


#section2 .p-baby-contents__advise-onomato {
  top: -10px;
  top: -0.625rem;
  right: -140px;
  right: -8.75rem;
  width: 195px;
  width: 12.1875rem;
}
@media screen and (max-width: 767px) {
  #section2 .p-baby-contents__advise-onomato {
    top: 185px;
    top: 11.5625rem;
    right: 125px;
    right: 7.8125rem;
    width: 73px;
    width: 4.5625rem;
  }
}


#section3 .p-baby-contents__advise-onomato {
  top: -20px;
  top: -1.25rem;
  right: -110px;
  right: -6.875rem;
  width: 213px;
  width: 13.3125rem;
}
@media screen and (max-width: 767px) {
  #section3 .p-baby-contents__advise-onomato {
    top: 250px;
    top: 15.625rem;
    right: 10px;
    right: 0.625rem;
    width: 95px;
    width: 5.9375rem;
  }
}






/******************************************************
* end section css
******************************************************/
.p-baby-end {
  position: relative;
  margin-top: 115px;
  margin-top: 7.1875rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end {
    margin-top: 42px;
    margin-top: 2.625rem;
    width: 375px;
    width: 23.4375rem;
  }
}

.p-baby-end__visual-wrap {
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-baby-end__visual-wrap {
    margin: 0 auto;
    width: 315px;
    width: 19.6875rem;
  }
}


.p-baby-end__visual-img {
  margin: 0 auto;
  width: 1146px;
  width: 71.625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__visual-img {
    width: 264.5px;
  }
}

.p-baby-end__visual-butterfly1 {
  position: absolute;
  top: 0;
  left: 470px;
  left: 29.375rem;
  width: 98px;
  width: 6.125rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__visual-butterfly1 {
    top: 20px;
    top: 1.25rem;
    left: 25px;
    left: 1.5625rem;
    width: 41px;
    width: 2.5625rem;
  }
}

.p-baby-end__visual-butterfly2 {
  position: absolute;
  top: 80px;
  top: 5rem;
  right: 510px;
  right: 31.875rem;
  width: 58px;
  width: 3.625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__visual-butterfly2 {
    top: 70px;
    top: 4.375rem;
    right: 50px;
    right: 3.125rem;
    width: 25px;
    width: 1.5625rem;
  }
}


.p-baby-end__frame-wrap {
  position: relative;
  margin-top: 41px;
  margin-top: 2.5625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__frame-wrap {
    margin: 0 auto;
    width: 315px;
    width: 19.6875rem;
  }
}


.p-baby-end__frame {
  margin: 0 auto;
  width: 1273px;
  width: 79.5625rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__frame {
    width: 315px;
    width: 19.6875rem;
  }
}


.p-baby-end__frame-value {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0 auto;
  padding: 106px 360px;
  padding: 6.625rem 22.5rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__frame-value {
    padding: 60px 35px;
    padding: 3.75rem 2.1875rem;
  }
}


.p-baby-end__frame-title {
  margin: 0 auto;
  width: 460px;
  width: 28.75rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__frame-title {
    width: 195px;
    width: 12.1875rem;
  }
}


.p-baby-end__frame-message {
  margin-top: 54px;
  margin-top: 3.375rem;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 1.81;
  letter-spacing: 0.03em;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .p-baby-end__frame-message {
    margin: 0 auto;
    margin-top: 28px;
    margin-top: 1.75rem;
    font-size: 12px;
    font-size: 0.75rem;
    letter-spacing: 0.12em;
  }
}


.p-baby-end__source {
  margin: 48px auto 0;
  margin: 3rem auto 0;
  padding-bottom: 213px;
  padding-bottom: 13.3125rem;
  width: 732px;
  width: 45.75rem;
}
@media screen and (max-width: 767px) {
  .p-baby-end__source {
    width: 290px;
    width: 18.125rem;
    padding-bottom: 80px;
    padding-bottom: 5rem;
  }
}


.p-baby-end__decoration img {
  position: absolute;
}

.p-baby-end__decoration-img1 {
  top: -150px;
  top: -9.375rem;
  right: -170px;
  right: -10.625rem;
  width: 402px;
  width: 25.125rem;
}

.p-baby-end__decoration-img2 {
  bottom: 20px;
  bottom: 1.25rem;
  left: -130px;
  left: -8.125rem;
  width: 408px;
  width: 25.5rem;
}


/******************************************************
* decoration css
******************************************************/
.external-decoration img {
  position: absolute;
}

.external-decoration1 {
  top: -200px;
  top: -12.5rem;
  left: -160px;
  left: -10rem;
  width: 138px;
  width: 8.625rem;
}

.external-decoration2 {
  top: 50px;
  top: 3.125rem;
  right: -160px;
  right: -10rem;
  width: 150px;
  width: 9.375rem;
}

.external-decoration3 {
  top: 400px;
  top: 25rem;
  left: -160px;
  left: -10rem;
  width: 138px;
  width: 8.625rem;
}

.external-decoration4 {
  top: 660px;
  top: 41.25rem;
  right: -160px;
  right: -10rem;
  width: 142px;
  width: 8.875rem;
}

.external-decoration5 {
  top: 990px;
  top: 61.875rem;
  left: -160px;
  left: -10rem;
  width: 135px;
  width: 8.4375rem;
}

.external-decoration6 {
  top: 70px;
  top: 4.375rem;
  right: -160px;
  right: -10rem;
  width: 142px;
  width: 8.875rem;
}

.external-decoration7 {
  top: 400px;
  top: 25rem;
  left: -160px;
  left: -10rem;
  width: 138px;
  width: 8.625rem;
}

.external-decoration8 {
  top: 680px;
  top: 42.5rem;
  right: -160px;
  right: -10rem;
  width: 142px;
  width: 8.875rem;
}

.external-decoration9 {
  top: 980px;
  top: 61.25rem;
  left: -160px;
  left: -10rem;
  width: 144px;
  width: 9rem;
}

.external-decoration10 {
  top: 70px;
  top: 4.375rem;
  right: -160px;
  right: -10rem;
  width: 135px;
  width: 8.4375rem;
}

.external-decoration11 {
  top: 460px;
  top: 28.75rem;
  left: -160px;
  left: -10rem;
  width: 138px;
  width: 8.625rem;
}

.external-decoration12 {
  top: 730px;
  top: 45.625rem;
  right: -160px;
  right: -10rem;
  width: 142px;
  width: 8.875rem;
}

.external-decoration13 {
  top: 1100px;
  top: 68.75rem;
  left: -160px;
  left: -10rem;
  width: 138px;
  width: 8.625rem;
}

.external-decoration14 {
  top: 130px;
  top: 8.125rem;
  right: -160px;
  right: -10rem;
  width: 150px;
  width: 9.375rem;
}

.external-decoration15 {
  top: 430px;
  top: 26.875rem;
  left: -160px;
  left: -10rem;
  width: 138px;
  width: 8.625rem;
}

.external-decoration16 {
  top: 660px;
  top: 41.25rem;
  right: -160px;
  right: -10rem;
  width: 142px;
  width: 8.875rem;
}



/******************************************************
* footer css
******************************************************/
.l-btn {
  /* margin-top: 100px; */
  margin-top: 6.25rem;
  /* margin-bottom: 90px; */
  margin-bottom: 5.625rem;
}
@media screen and (max-width: 767px) {
  .l-btn {
    /* margin-top: 37px; */
    margin-top: 2.3125rem;
  }
}
.p-btn__item.p-btn__item--picnic a {
  padding: 12px 55px 12px 60px;
  padding: 0.75rem 3.4375rem 0.75rem 3.75rem;
  text-transform: none;
}
@media screen and (max-width: 767px) {
  .p-btn__item.p-btn__item--picnic a {
    /* padding: 9px 32px; */
    padding: 0.5625rem 2rem;
    padding-left: 3.75rem;
    justify-content: left;
    text-align: center;
  }
}
.p-btn__item.p-btn__item--picnic a::after,
.p-btn__item.p-btn__item--picnic a::before {
  right: 50px;
  right: 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-btn__item.p-btn__item--picnic a::after,
  .p-btn__item.p-btn__item--picnic a::before {
    right: 20px;
    right: 1.25rem;
  }
}


.p-btn__item.p-btn__item--picnic img {
  width: 43px;
  width: 2.6875rem;
  /* margin-right: 8px; */
  margin-right: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-btn__item.p-btn__item--picnic img {
    width: 32px;
    width: 2rem;
    margin-right: 12px;
    margin-right: 0.75rem;
  }
}






/****************************************************
** Footer css
****************************************************/
.p-btn__item.p-btn__item--search {
  max-width: 27rem;
}
@media screen and (max-width: 767px) {
  .p-btn__item.p-btn__item--search {
    max-width: 17.6875rem;
  }
}


.p-btn__item.p-btn__item--search a {
  padding: 0.5675rem 1.1875rem 0.5675rem 2.5rem;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .p-btn__item.p-btn__item--search a {
    padding: 9px 19px 9px 30px;
    justify-content: center;
  }
}

.p-btn__item.p-btn__item--search a:before,
.p-btn__item.p-btn__item--search a::after {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-btn__item.p-btn__item--search img {
    margin-right: 32px;
  }
}




/****************************************************
** Animation css
****************************************************/
.p-baby-mv__baby-illust.is-inview {
  opacity: 1;
  -webkit-transform: translate(-50%, 0px);
          transform: translate(-50%, 0px); /* 下に30pxの位置から */
  -webkit-transition: opacity 1.2s, -webkit-transform 1.2s;
  transition: opacity 1.2s, -webkit-transform 1.2s;
  transition: opacity 1.2s, transform 1.2s;
  transition: opacity 1.2s, transform 1.2s, -webkit-transform 1.2s; /* 透過率と縦方向の移動を0.8秒 */
  transition-delay: 1s;
}

.c-animation--fuwafuwa1 {
  -webkit-animation: fuwafuwa1 2s infinite;
          animation: fuwafuwa1 2s infinite;
  animation-delay: 0.5s;
}
@-webkit-keyframes fuwafuwa1 {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(-0.625rem, -1.25rem);
            transform: translate(-0.625rem, -1.25rem);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

.c-animation--fuwafuwa2 {
  -webkit-animation: fuwafuwa2 2s infinite;
          animation: fuwafuwa2 2s infinite;
}
@-webkit-keyframes fuwafuwa2 {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(0.625rem, 0.625rem);
            transform: translate(0.625rem, 0.625rem);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

.c-animation--fuwafuwa3 {
  -webkit-animation: fuwafuwa3 2s infinite;
          animation: fuwafuwa3 2s infinite;
          animation-delay: 1.0s;
}
@-webkit-keyframes fuwafuwa3 {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(0.625rem, -1.25rem);
            transform: translate(0.625rem, -1.25rem);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

.c-animation--fuwafuwa4 {
  -webkit-animation: fuwafuwa4 2s infinite;
          animation: fuwafuwa4 2s infinite;
          animation-delay: 0.5s;
}
@-webkit-keyframes fuwafuwa4 {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(-1.25rem, 0.625rem);
            transform: translate(-1.25rem, 0.625rem);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

.c-animation--fuwafuwa5 {
  -webkit-animation: fuwafuwa5 2s infinite;
          animation: fuwafuwa5 2s infinite;
          animation-delay: 1.0s;
}
@-webkit-keyframes fuwafuwa5 {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(-0.625rem, -0.625rem);
            transform: translate(-0.625rem, -0.625rem);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

.c-animation--fuwafuwa6 {
  -webkit-animation: fuwafuwa6 2s infinite;
          animation: fuwafuwa6 2s infinite;
}
@-webkit-keyframes fuwafuwa6 {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(0px, -1.25rem);
            transform: translate(0px, -1.25rem);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

.c-animation--pikopiko1 {
  -webkit-animation: pikopiko1 2s steps(2, start) infinite;
          animation: pikopiko1 2s steps(2, start) infinite;
  transform-origin: 60% 60% 0;
}
@-webkit-keyframes pikopiko1 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
}

.c-animation--pikopiko2 {
  -webkit-animation: pikopiko2 1.6s steps(2, start) infinite;
          animation: pikopiko2 1.6s steps(2, start) infinite;
  transform-origin: 60% 60% 0;
}
@-webkit-keyframes pikopiko2 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
}

.c-animation--pikopiko3 {
  -webkit-animation: pikopiko3 1.5s steps(2, start) infinite;
          animation: pikopiko3 1.5s steps(2, start) infinite;
  transform-origin: 0% 80% 0;
}
@-webkit-keyframes pikopiko3 {
  0% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}

.c-animation--scale01 {
  -webkit-animation: scale-up01 2s ease-in-out infinite alternate;
          animation: scale-up01 2s ease-in-out infinite alternate;
}
@-webkit-keyframes scale-up01 {
  0% {
    -webkit-transform: none;
            transform: none;
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.c-animation--scale02 {
  -webkit-animation: scale-up02 0.5s ease-in-out infinite alternate;
          animation: scale-up02 0.5s ease-in-out infinite alternate;
}
@-webkit-keyframes scale-up02 {
  0% {
    -webkit-transform: none;
            transform: none;
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.c-animation--mochimochi {
  -webkit-animation: mochimochi 1.2s infinite;
          animation: mochimochi 1.2s infinite;
}
@-webkit-keyframes mochimochi {
  0% {
    -webkit-transform: scale(1, 0.8);
            transform: scale(1, 0.8);
  }
  20% {
    -webkit-transform: scale(0.8, 1.1);
            transform: scale(0.8, 1.1);
  }
  90% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(1, 0.8);
            transform: scale(1, 0.8);
  }
}

.js-show.is-inview {
  opacity: 1;
}








.titleFadeUp {
  animation-name: titleFadeUp;
  animation-duration: 1.4s;
  animation-delay: 1.0s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  opacity: 0;
}

@keyframes titleFadeUp {
  from {
    margin-top: 50px;
    opacity: 0;
  }
  to {
    margin-top: 0;
    opacity: 1;
  }
}

.slide-in {
	overflow: hidden;
  /* display: inline-block; */
}

.slide-in_inner {
	display: inline-block;

}

/*左右のアニメーション*/
.maskingAnime, .leftAnime, .rightAnime {
    opacity: 0;/*事前に透過0にして消しておく*/
}

.maskingAnimeLeftRight {
	animation-name:slideTextX100;
	animation-duration:1.8s;
	animation-fill-mode:forwards;
  opacity: 1;
}
.maskingAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:1.8s;
	animation-fill-mode:forwards;
  opacity: 0;
}

.sectionLine {
  animation-duration: 2.0s;
}

@keyframes slideTextX100 {
  from {
    transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 0;
  }

  to {
    transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

@keyframes slideTextX-100 {
  from {
    transform: translateX(100%);/*要素を右の枠外に移動*/
    opacity: 0;
  }

  to {
    transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}