/* HTML */

html,
body {
  margin: 0;
  color: rgb(26, 19, 17);
  font-family: "Avenir Next", Avenir, "Helvetica Neue", "Helvetica Neue", Helvetica, YuGothic, "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, ＭＳＰゴシック, sans-serif !important;
}
img {
  max-width: 100%;
  width: 100%;
  vertical-align: bottom;
}

/* Base */
.l-contents {
  background-color: #fff;
  position: relative;
  z-index: 0;
}

.parallax-mirror {
  z-index: 1 !important;
}

.hidden {
  overflow: hidden;
}
.pointer {
  cursor: pointer;
}

.btn-text {
  appearance: none;
  outline: none;
  border: none;
  background-color: transparent;
}

.relative {
  position: relative;
}

.v-super {
  vertical-align: super;
  font-size: 10px;
}

.c-brown {
  color: #936f60;
}

.c-grey {
  color: #707070;
}

.d-none {
  display: none;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.flex {
  display: flex;
  align-items: center;
}

.flex-top {
  display: flex;
  align-items: flex-start;
}
.flex-between-real {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.flex-between {
  display: flex;
  align-items: center;
}
.flex-between .sm-mrg-t12 {
  margin-left: 50px;
}
.flex-between:nth-child(n+2) {
  margin-top: 20px;
}
@media screen and (max-width: 1001px) {
  .flex-between {
    display: block;
  }
  .flex-between .sm-mrg-t12 {
    margin-left: 0px;
  }
}

.flex-center {
  display: flex;
  justify-content: center;
}

.flex-grid {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
}

.line-h1 {
  line-height: 1;
}

.line-h1-5 {
  line-height: 1.4;
}

.line-h2 {
  line-height: 2;
}

.line-h24 {
  line-height: 2.4;
}

.mrg0 {
  margin: 0;
}

.mrg-center {
  margin: 0 auto;
}

.mrg-t5 {
  margin-top: 5px;
}

.mrg-t7 {
  margin-top: 7px;
}

.mrg-t9 {
  margin-top: 7px;
}

.mrg-t10 {
  margin-top: 10px;
}

.mrg-t14 {
  margin-top: 14px;
}

.mrg-t15 {
  margin-top: 15px;
}

.mrg-t18 {
  margin-top: 18px;
}

.mrg-t25 {
  margin-top: 25px;
}

.mrg-t28 {
  margin-top: 28px;
}

.mrg-t30 {
  margin-top: 30px;
}

.mrg-t32 {
  margin-top: 32px;
}

.mrg-t40 {
  margin-top: 40px;
}

.mrg-t50 {
  margin-top: 50px;
}

.mrg-t52 {
  margin-top: 52px;
}

.mrg-t60 {
  margin-top: 60px;
}

.mrg-t100 {
  margin-top: 100px;
}

.mrg-t120 {
  margin-top: 120px;
}

.mrg-t150 {
  margin-top: 150px;
}

.mrg-l20 {
  margin-left: 20px;
}

.mrg-r10 {
  margin-right: 10px;
}

.mrg-r20 {
  margin-right: 20px;
}

.mrg-b0 {
  margin-bottom: 0;
}
.mrg-b30 {
  margin-bottom: 30px;
}

.f10 {
  font-size: 10px;
}
.captions-this-sp{
  display: none;
}
@media screen and (max-width: 1001px) {
  .captions-this-sp{
    display: block;
    text-align: left;
    padding: 0 20px;
  }
}
.f11 {
  font-size: 11px;
}

.f12 {
  font-size: 12px;
}

.f14 {
  font-size: 14px;
}

.f16 {
  font-size: 16px;
}

.f18 {
  font-size: 18px;
}

.f20 {
  font-size: 20px;
}

.f21 {
  font-size: 21px;
}

.f24 {
  font-size: 24px;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.weight400 {
  font-weight: 400;
}

.weight500 {
  font-weight: 500;
}

.weight600 {
  font-weight: 600;
}

.w12 {
  width: 12px;
}

.w13 {
  width: 13px;
}

.w16 {
  width: 16px;
}

.w17 {
  width: 17px;
}

.w18 {
  width: 18px;
}

.w27 {
  width: 27px;
}

.w30 {
  width: 30px;
}

.w46 {
  width: 46px;
}

.w97 {
  width: 97px;
}

.w100 {
  width: 100px;
}

.w106 {
  width: 106px;
}

.w120 {
  width: 120px;
}
.w128 {
  width: 128px;
}

.w130 {
  width: 130px;
}

.w140 {
  width: 140px;
}

.w144 {
  width: 144px;
}

.w152 {
  width: 152px;
}

.w160 {
  width: 160px;
}

.w164 {
  width: 164px;
}

.w200 {
  width: 200px;
}

.w210 {
  width: 210px;
}

.w213 {
  width: 213px;
}

.w215 {
  width: 215px;
}

.w220 {
  width: 220px;
}

.w242 {
  width: 242px;
}

.w247 {
  width: 247px;
}

.w250 {
  width: 250px;
}

.w272 {
  width: 272px;
}

.w285 {
  width: 285px;
}
.w315 {
  width: 315px;
}

.w358 {
  width: 358px;
}

.w364 {
  width: 364px;
}

.w428 {
  width: 428px;
}

.w474 {
  width: 474px;
}

.w480 {
  width: 480px;
}

.w633 {
  width: 633px;
}

.w770 {
  width: 770px;
}

.h45 {
  height: 45px;
}

.h92 {
  height: 92px;
}

.br {
  display: block;
}

.section {
  padding: 80px 0;
}

.bg-offwhite {
  background-color: rgba(164, 131, 111, 0.15);
}

.bg-th {
  background-color: #f4f4f4;
}

.l-inner-770 {
  max-width: 770px;
  margin: 0 auto;
}

.l-inner-narrow {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 50px;
}

.l-inner-1336 {
  max-width: 1366px;
  margin: 0 auto;
}

.l-section-title {
  margin: 0 0 60px 0;
}

.c-img-title {
  overflow: hidden;
  text-indent: 100%;
}

.youtube-wrapper {
  max-width: 770px;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* first */

/* second */
.c-bed-text {
  margin: 10px auto 0;
}

/* third */
.l-grow-arrow {
  margin: 180px -20px 0;
}

/* fourth */
.l-simulation-wrapper {
  max-width: 385px;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

/* Colros  */

.c-title-colors {
  background: url('../images/colors/colors.png') no-repeat;
  background-size: cover;
}

.c-title-mompapa {
  background: url('../images/mompapa/title.png') no-repeat;
  background-size: cover;
}

.l-colors-item {
  margin: 0 27px;
  transform: translateY(10%);
  opacity: 0;
}

.l-colors-item.item1 {
  transition: transform 1000ms, opacity 400ms;
}

.l-colors-item.item2 {
  transition: transform 1000ms ease 100ms, opacity 400ms ease 100ms;
}

.l-colors-item.item3 {
  transition: transform 1000ms ease 200ms, opacity 400ms ease 200ms;
}

.l-colors.active .item1,
.l-colors.active .item2,
.l-colors.active .item3 {
  transform: translateY(0);
  opacity: 1;
}

.l-colors-title {
  margin: 0 auto;
}

.l-colros-texture {
  max-width: 177px;
  margin: 20px auto 0;
}

.l-colors-product {
  max-width: 255px;
  margin: 40px auto 0;
}

/* parallax */
.parallax-window {
  min-height: 600px;
  background: transparent;
}

/* Back to Top */

.l-page-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
}

.c-page-top {
  appearance: none;
  outline: none;
  border: none;
  background-color: transparent;
  width: 80px;
  cursor: pointer;
}
.fl-day{
  display: flex;
}
.fl-day:nth-child(n+2){
  margin-top: 20px;
}
.fl-day p:nth-child(n+2){
  margin-left: 10px;
}
@media screen and (max-width: 1001px) {
  .fl-day{
    display: block;
  }
  .fl-day p:nth-child(n+2){
    margin-left: 0;
  }
  .fl-day:nth-child(n+2){
    margin-top: 3vw;
  }
}

@media screen and (max-width: 1001px) {
  .c-bed-text {
    max-width: 310px;
  }
  .l-page-top {
    display: none;
  }

  .sm-left {
    text-align: left;
  }

  .sm-w30 {
    max-width: 30px;
    width: 100%;
  }

  .sm-w190 {
    max-width: 190px;
    width: 100%;
  }

  .sm-w197 {
    max-width: 197px;
    width: 100%;
  }

  .sm-w237 {
    max-width: 237px;
    width: 100%;
  }

  .sm-w255 {
    max-width: 255px;
    width: 100%;
  }

  .sm-w263 {
    max-width: 264px;
    width: 100%;
  }

  .sm-mrg-t0 {
    margin-top: 0;
  }

  .sm-mrg-t5 {
    margin-top: 5px;
  }

  .sm-mrg-t12 {
    margin-top: 12px;
  }

  .sm-mrg-t14 {
    margin-top: 14px;
  }

  .sm-mrg-t16 {
    margin-top: 16px;
  }

  .sm-mrg-t20 {
    margin-top: 20px;
  }

  .sm-mrg-t34 {
    margin-top: 34px;
  }

  .sm-mrg-t38 {
    margin-top: 38px;
  }

  .sm-mrg-t40 {
    margin-top: 40px;
  }

  .sm-mrg-t60 {
    margin-top: 60px;
  }

  .sm-mrg-t90 {
    margin-top: 90px;
  }

  .sm-mrg-center {
    margin: 0 auto;
  }

  .sm-d-row {
    display: table-row;
  }

  .sm-d-none {
    display: none;
  }

  .sm-d-inline {
    display: inline;
  }

  .sm-block {
    display: block;
  }

  .sm-f13 {
    font-size: 13px;
  }

  .sm-f16 {
    font-size: 16px;
  }

  .sm-f20 {
    font-size: 20px;
  }

  .sm-pd-l10 {
    padding-left: 10px;
  }

  .sm-pd-r10 {
    padding-right: 10px;
  }

  .sm-pd-l20 {
    padding-left: 20px;
  }

  .sm-pd-r20 {
    padding-right: 20px;
  }

  .sm-icon-new {
    display: inline-block;
    position: relative;
  }
  .parallax-window {
    min-height: 300px;
    background: transparent;
  }

  .l-section-title {
    margin: 0 0 40px 0;
  }

  .youtube-wrapper {
    padding: 0 20px;
  }
}

/* top */

.l-top {
  position: relative;
  overflow: hidden;
}

.l-top-main {
  transition: opacity 1600ms ease 2000ms;
  opacity: 0;
}

.l-top-main.fade {
  opacity: 1;
}

.l-top-main-sp {
  transition: opacity 1000ms ease 2000ms;
  opacity: 0;
}

.l-top-main-sp.fade {
  opacity: 1;
}

.l-top-circle-wrapper {
  transition: opacity 1000ms;
  transform-origin: center;
  opacity: 0;
}

.l-top-circle-wrapper.fade {
  opacity: 1;
}

.l-top-circle {
  max-width: 660px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%) scale(0.6);
  transform-origin: center;
  transition: transform 3000ms;
}

.l-top-circle-wrapper.fade .l-top-circle {
  transform: translateY(-50%) translateX(-50%) scale(1);
}

.l-optia-loading {
  max-width: 260px;
}

.l-top-copy {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translateY(-40%) translateX(-50%);
  transition: opacity 1200ms, transform 1600ms;
  transition-delay: 300ms;
  opacity: 0;
}

.l-top-copy.fade-appear {
  opacity: 1;
  transform: translateY(-50%) translateX(-50%);
}

.l-top-copy svg {
  transition: fill 1000ms ease-out 2000ms;
  fill: #a48374;
  max-width: 370px;
  width: 100%;
}

.l-top-copy.fade-white svg {
  fill: #fff;
}

.l-top-copy.fix img {
  fill: #fff;
}

.l-top-optia {
  max-width: 260px;
  width: 100%;
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  transition: opacity 600ms ease-out 300ms;
  opacity: 0;
}

.l-top-optia.fade {
  opacity: 1;
}

.l-top-optia img {
  transition: opacity 300ms ease 2000ms;
  opacity: 1;
}

.l-top-optia.fade-disappear img {
  opacity: 0;
}

.l-top-optia-fix {
  max-width: 474px;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  z-index: 999;
  transition: opacity 1000ms ease 2000ms;
  opacity: 0;
}

.l-top-optia-fix.fade {
  opacity: 1;
}

.l-top-white-bg {
  width: 100%;
  position: absolute;
  bottom: -5px;
  left: 0;
}

@media screen and (max-width: 1330px) {
  .l-top-copy svg {
    width: 330px;
  }
}

@media screen and (max-width: 1620px) {
  .l-top-circle {
    max-width: 800px;
  }
}

@media screen and (min-width: 1621px) {
  .l-top-circle {
    max-width: 1000px;
  }
}

@media screen and (max-width: 1001px) {
  .l-top {
    /* background: url('../images/top/main_sp@2x.jpg') no-repeat;
    background-size: contain;
    background-position: top center;
    transition: background-color 300ms;
    background-color: rgba(255, 255, 255, 1);
    background-blend-mode: lighten; */
  }

  .l-top-copy svg {
    width: 260px;
  }

  .l-top.fade {
    background-color: rgba(255, 255, 255, 0);
    background-blend-mode: lighten;
  }

  .l-top-circle-wrapper {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 10px);
  }

  .l-top-copy.fade-appear {
    opacity: 1;
    transform: translateY(0%) translateX(-50%);
  }

  .l-top-circle {
    width: 510px;
    height: 600px;
    position: relative;
    left: calc((100% - 510px) / 2);
    top: 0px;
    transform: none;
  }

  .l-top-circle-wrapper.fade .l-top-circle {
    transform: none;
  }

  .l-top-copy {
    top: 220px;
    transform: translateY(0) translateX(-50%);
    -webkit-transform: translateY(0) translateX(-50%);
  }

  .l-top-optia-fix {
    max-width: 330px;
    bottom: -50px;
  }

  .l-top-caption {
    text-align: left;
    padding: 0 20px;
  }

  .l-top-white-bg img {
    /* display: none; */
    height: 200px;
  }
}

@media screen and (max-width: 413) {
  .l-top-copy {
    top: 200px;
    transform: translateY(0) translateX(-50%);
    -webkit-transform: translateY(0) translateX(-50%);
  }
}

/* message */
.l-message {
}

.l-message-last {
  padding-bottom: 118px;
}

.l-message-right {
  position: absolute;
  width: 100%;
  top: 0;
  left: 50%;
  -webkit-transform: translateY(72px) translateX(-50%);
  transform: translateY(72px) translateX(-50%);
  z-index: 999;
}

.l-message-text {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}
li{
  list-style: none;
}
.d-partsSec{
  margin-top: 90px;
}
@media screen and (max-width: 1280px) {
  .d-partsSec{
    margin-top: 15vw;
  }
}

@media screen and (max-width: 1280px) {
  .l-message-text {
    overflow-y: auto;
    height: 400px;
  }
}

.l-message-optia {
  width: 234px;
  margin: 50px 0 0 0;
}

/* モーションメッセージ */

.l-motion {
  padding: 100px 0 72px 0;
  overflow: hidden;
}

.l-motion-inner {
  max-width: 1336px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
}

.l-motion-inner.reverse {
  flex-direction: row-reverse;
}

.l-motion-message-left {
  margin: 0px 50px 0 0;
  position: relative;
}

.l-motion-message-right {
  margin: 0 0 0 50px;
  position: relative;
  z-index: 999;
}

.l-motion-img {
  max-width: 800px;
  width: 100%;
  position: relative;
  transition: opacity 1000ms;
}
@media screen and (max-width: 1001px) {
  .l-motion-img {
    max-width: 350px;
    margin-right: 0;
    margin-left: auto;
  }
  .fl-r{
    margin-right: auto;
    margin-left: 0;
  }
}

.l-motion-img .visual {
  opacity: 0;
  transition: opacity 1600ms ease 1500ms;
}

.l-motion-img-over {
  max-width: 377px;
  position: absolute;
  top: 52%;
  left: 35%;
  transition: opacity 1000ms ease 500ms, transform 2000ms ease 500ms;
  transform: translate(-50%, -50%) scale(0.8);
  opacity: 0;
}

.l-motion-img-over.img2 {
  transform: translate(0%, -50%) scale(0.8);
}

.l-motion-img-over.img3 {
  transform: translate(-80%, -50%) scale(0.8);
}

.l-motion-img-over.img4 {
  transform: translate(-30%, -50%) scale(0.8);
}

.l-motion-img-text {
  max-width: 225px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 1000ms ease 800ms;
  opacity: 0;
}

.l-motion-img-text-inner {
  transition: opacity 1000ms ease 2000ms;
}

.l-motion-img.active .visual {
  opacity: 1;
}
.l-motion-img.active .l-motion-img-over {
  opacity: 1;
  transform: translate(-17%, -50%) scale(1);
}

.l-motion-img.active .l-motion-img-over.img2 {
  opacity: 1;
  transform: translate(13%, -45%) scale(1);
}

.l-motion-img.active .l-motion-img-over.img3 {
  opacity: 1;
  transform: translate(-50%, -45%) scale(1);
}

.l-motion-img.active .l-motion-img-over.img4 {
  opacity: 1;
  transform: translate(1%, -40%) scale(1);
}
@media screen and (max-width: 1001px) {
  .l-motion-img.active .l-motion-img-over {
    opacity: 1;
    transform: translate(-46%, -52%) scale(1);
  }

  .l-motion-img.active .l-motion-img-over.img2 {
    opacity: 1;
    transform: translate(-9%, -47%) scale(1);
  }

  .l-motion-img.active .l-motion-img-over.img3 {
    opacity: 1;
    transform: translate(-40%, -45%) scale(1);
  }

  .l-motion-img.active .l-motion-img-over.img4 {
    opacity: 1;
    transform: translate(-30%, -50%) scale(1);
  }
}

.l-motion-img.active .l-motion-img-text {
  opacity: 1;
}

.l-motion-img.active .l-motion-img-text-inner {
  opacity: 0;
}

.l-motion-span {
  display: block;
  overflow: hidden;
}

.l-motion-anime .l-motion-text {
  display: block;
  transition: transform 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975) 2000ms;
  transform: translate(0, 100%);
}

.l-motion-anime.active .l-motion-text {
  transform: translate(0, 0);
}

.l-bubble {
  background: #fbfaf9; /*背景色*/
  animation: fluidrotate 30s ease 0s infinite;
}

.l-bubble.left {
  width: 330px; /*横幅*/
  height: 330px; /*縦幅*/
  position: absolute;
  bottom: 0;
  left: -150px;
  transition: transform 1000ms ease;
  transform: scale(0);
}

.l-bubble.middle {
  width: 178px; /*横幅*/
  height: 178px; /*縦幅*/
  position: absolute;
  top: -50px;
  left: 40vh;
  transition: transform 1000ms ease 300ms;
  transform: scale(0);
}

.l-bubble.right {
  width: 190px; /*横幅*/
  height: 190px; /*縦幅*/
  position: absolute;
  top: 0px;
  right: 10vh;
  transition: transform 1000ms ease 400ms;
  transform: scale(0);
}

.bubbles.active .l-bubble.left {
  transform: scale(1);
}

.bubbles.active .l-bubble.middle {
  transform: scale(1);
}

.bubbles.active .l-bubble.right {
  transform: scale(1);
}

@keyframes fluidrotate {
  0%,
  100% {
    border-radius: 50%;
    /* border-radius: 63% 37% 54% 46%/55% 48% 52% 45%; */
  }
  /* 14% {
    border-radius: 40% 60% 54% 46%/49% 60% 40% 51%;
  }
  28% {
    border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
  }
  42% {
    border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
  }
  56% {
    border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
  }
  70% {
    border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
  }
  84% {
    border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
  } */
}

/* 2 */
.l-bubble.left.pos2 {
  width: 190px;
  height: 190px;
  bottom: -120px;
  left: 34px;
}

.l-bubble.middle.pos2 {
  width: 178px;
  height: 178px;
  top: 0px;
  left: 60%;
}

.l-bubble.right.pos2 {
  width: 283px;
  height: 283px;
  top: auto;
  bottom: 20px;
  right: -20px;
}

/* 3 */
.l-bubble.left.pos3 {
  width: 337px;
  height: 337px;
  bottom: 17px;
  left: -68px;
}

.l-bubble.middle.pos3 {
  width: 144px;
  height: 144px;
  top: 44px;
  left: 40%;
}

.l-bubble.right.pos3 {
  width: 208px;
  height: 208px;
  top: auto;
  bottom: 82px;
  right: -20px;
}

/* 4 */
.l-bubble.left.pos4 {
  width: 190px;
  height: 190px;
  bottom: 15px;
  left: -36px;
}

.l-bubble.middle.pos4 {
  width: 220px;
  height: 220px;
  top: 47px;
  left: 60%;
}

.l-bubble.right.pos4 {
  width: 246px;
  height: 246px;
  top: auto;
  bottom: 16px;
  right: -20px;
}

@media screen and (max-width: 1001px) {
  .l-bubble.left.pos1 {
    width: 142px;
    height: 145px;
    bottom: 280px;
    left: -71px;
  }

  .l-bubble.middle.pos1 {
    width: 86px;
    height: 86px;
    top: -50px;
    right: 38px;
  }

  .l-bubble.right.pos1 {
    width: 62px;
    height: 62px;
    top: 158px;
    right: -10px;
  }

  /* 2 */
  .l-bubble.left.pos2 {
    width: 83px;
    height: 83px;
    bottom: auto;
    top: 210px;
    left: -40px;
  }

  .l-bubble.middle.pos2 {
    width: 108px;
    height: 108px;
    top: -50px;
    left: 30px;
  }

  .l-bubble.right.pos2 {
    width: 77px;
    height: 77px;
    top: -58px;
    bottom: auto;
    right: -10px;
  }

  /* 3 */
  .l-bubble.left.pos3 {
    width: 207px;
    height: 207px;
    bottom: auto;
    top: 240px;
    left: -120px;
  }

  .l-bubble.middle.pos3 {
    right: -20px;
    left: auto;
    top: -68px;
    width: 108px;
    height: 108px;
  }

  .l-bubble.right.pos3 {
    width: 190px;
    height: 190px;
    bottom: auto;
    top: 160px;
    right: -95px;
  }

  /* 4 */
  .l-bubble.left.pos4 {
    width: 148px;
    height: 148px;
    bottom: auto;
    top: 160px;
    left: -114px;
  }

  .l-bubble.middle.pos4 {
    width: 163px;
    height: 163px;
    top: -88px;
    right: -50px;
    left: auto;
  }

  .l-bubble.right.pos4 {
    width: 0px;
    height: 0px;
  }
}

/* First */

.l-first-overlay {
  position: absolute;
  top: 0;
  right: -200px;
}

.l-first-slide {
  margin-top: 84px;
}

.l-first-babycar {
  max-width: calc(993px / 2);
  width: 100%;
}

.l-first-babycar-2 {
  max-width: calc(992px / 2);
  width: 100%;
}

.l-first-babycar-3 {
  max-width: 489px;
  width: 100%;
}

.l-first-text {
  width: 336px;
  margin-left: 20px;
}

.l-first-pc {
  max-width: 1000px;
  margin: 0 auto;
}

@media screen and (max-width: 1001px) {
  .l-first-pc {
    display: none;
  }
  .l-message-right {
    position: relative;
  }

  .l-message-text {
    overflow-y: initial;
    height: auto;
    justify-content: center;
    padding: 0 30px;
    font-size: 13px;
  }

  .l-motion-inner {
    display: block;
  }

  .l-motion-message-left {
    margin: 40px auto 0;
    box-sizing: border-box;
    padding: 0 10px 0 30px;
  }

  .l-motion-message-right {
    margin: 40px auto 0;
    box-sizing: border-box;
    padding: 0 10px 0 30px;
  }

  .l-first-babycar,
  .l-first-babycar-2,
  .l-first-babycar-3 {
    max-width: 310px;
    margin: 0 auto;
  }

  .l-first-text {
    width: auto;
    padding: 0 40px;
    margin: 16px auto 0;
  }

  .l-bubble.right {
    width: 80px;
    height: 80px;
  }

  .l-bubble.l-bubble.middle {
    width: 80px;
    height: 80px;
  }
}

@media screen and (min-width: 1336px) {
  .l-motion-inner {
    max-width: none;
  }

  .l-motion-message-left {
    margin-left: auto;
    margin-right: auto;
    padding: 0 0 0 120px;
  }

  .l-motion-message-right {
    margin-right: auto;
    margin-left: auto;
    padding: 0 120px 0 0;
  }
}

/* fourth */
.c-fourth-left {
  width: 505px;
  position: absolute;
  top: 38px;
  left: 10px;
  opacity: 1;
  transition: opacity 800ms ease-out, transform 800ms ease-out;
  transform: translateX(100px);
  opacity: 0;
}

.c-fourth-right {
  width: 438px;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 1;
  transition: opacity 800ms ease-out 200ms, transform 800ms ease-out 200ms;
  transform: translateX(-100px);
  opacity: 0;
}

.c-fourth-center {
  width: 304px;
  position: relative;
  left: 398px;
}

.c-blink-baby {
  opacity: 0;
  transition: opacity 1000ms;
}

.c-blink-baby.active {
  opacity: 1;
}

.c-fourth-overlay {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 1000ms;
}

.c-fourth-overlay.active {
  opacity: 1;
}

#fourth-anime.active .c-fourth-left {
  transform: translateX(0);
  opacity: 1;
}

#fourth-anime.active .c-fourth-right {
  transform: translateX(0);
  opacity: 1;
}

/* scroll */
.scroller {
  overflow: hidden;
  max-width: 1366px;
  margin: 0 auto;
  position: relative;
}

.scroll-inner {
  width: 4340px;
  margin: 0 -25px;
  animation-name: expansion;
  animation-duration: 20s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-fill-mode: backwards;
  animation-play-state: running;
}

@keyframes expansion {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(-2170px);
  }
}

.scroller .item {
  margin: 0 25px;
  width: 260px;
}

@media screen and (max-width: 1001px) {
  .scroll-inner {
    margin: 0 -10px;
  }

  .scroller .item {
    margin: 0 10px;
    width: 116px;
  }

  @keyframes expansion {
    0% {
      transform: translateX(0px);
    }
    100% {
      transform: translateX(-952px);
    }
  }
}

/* third  */
.l-step-grid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.l-step {
  transition: transform 300ms;
  transform: rotateY(0deg);
}

.l-step-detail {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
}

.l-step-center {
  position: absolute;
  left: 44.7%;
  right: 45%;
  top: 240px;
  width: 97px;
}

.l-step.active {
  display: block;
}

.c-step-wrapper {
  border-radius: 50%;
  background-color: #f5f2f1;
  width: 480px;
  height: 480px;
  display: flex;
  justify-content: center;
}

.c-step-inner {
}

.c-step-title-before {
  width: 62px;
}

.c-step-title {
  display: flex;
  justify-content: center;
  align-items: center;
}

.step-title-text {
  font-size: 14px;
  margin: 0 0 0 20px;
}

.step1-title-img {
  width: 62px;
}

.c-step-detail {
  margin: 28px 0 0 0;
}

.c-step-detail-img {
  width: 103px;
}

.c-step-detail-text {
  margin: 0 0 0 10px;
}

.c-step-detail-th {
  font-size: 12px;
  font-weight: 600;
  margin: 0 0 2px 0;
  line-height: 1;
}

.c-step-detail-td {
  font-size: 12px;
  margin: 0;
}

.c-step-detail-td.step1 {
  max-width: 240px;
}

.c-step-detail-td.step2 {
  max-width: 290px;
}

.c-step-img3 {
  width: 240px;
}

.c-step2-img3 {
  width: 183px;
}

.btn-arrow {
  position: relative;
  display: inline-block;
  padding-left: 10px;
}

.btn-arrow-more {
  position: relative;
  display: inline-block;
  padding-right: 10px;
}

.btn-arrow::before {
  content: '';
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 1px #a48374;
  border-right: solid 1px #a48374;
  -ms-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -6px;
}

.btn-arrow-more::before {
  content: '';
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 1px #a48374;
  border-right: solid 1px #a48374;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -6px;
}

.l-step-sp-arrow {
  display: none;
  width: 16px;
  margin: 0 auto 10px;
}

.l-step-sp-grow {
  display: none;
  width: 126px;
  margin: 30px auto 0;
}

/* animation */
.animation-step {
  transition: transform 400ms ease;
  transform: rotate3d(0, 1, 0, 0deg);
  visibility: visible;
  /* opacity: 1; */
}

.animation-step.hide {
  transform: rotate3d(0, 1, 0, 90deg);
  visibility: hidden;
  /* opacity: 0; */
}

.l-step-wrapper {
  cursor: pointer;
  position: relative;
}

@media screen and (max-width: 1001px) {
  .l-step-wrapper {
    max-width: 350px;
    margin: 0 auto;
  }
  .l-step-grid {
    display: block;
    margin: 40px 0 0 0;
  }

  .c-step-wrapper {
    width: 350px;
    height: 350px;
    margin: 0 auto;
  }

  .c-step-img3 {
    width: 164px;
  }

  .c-step-img3.detail {
    width: 142px;
  }
  .c-step-img3.detail2 {
    transform: translateX(-20px);
  }

  .c-step2-img3 {
    width: 134px;
  }

  .c-step-title.detail {
    display: block;
    margin: 20px 0 0 0;
  }

  .c-step-title-before {
    width: 48px;
  }

  .l-step-sp-arrow,
  .l-step-sp-grow {
    display: block;
  }

  .step-title-text {
    text-align: center;
    margin: 5px 0 0 0;
  }

  .c-step-detail {
    margin: 20px 0 0 0;
  }

  .c-step-detail-img {
    width: 73px;
  }

  .c-step-detail-td.step1 {
    max-width: 204px;
  }

  .step1-title-img {
    width: 44px;
  }
}

/* fifth */
.l-fifth-contents {
  height: 580px;
  padding: 210px 0 0 0;
  box-sizing: border-box;
}

.l-fifth-detail-1 {
  position: absolute;
  top: 0;
  left: 35%;
  transition: opacity 800ms 200ms, transform 800ms ease 200ms;
  opacity: 0;
  transform: translateY(50px);
}

.l-fifth-contents.active .l-fifth-detail-1 {
  opacity: 1;
  transform: translateY(0);
}

.l-fifth-detail-2 {
  position: absolute;
  bottom: -10px;
  left: 20px;
  transition: opacity 800ms 300ms, transform 800ms ease 300ms;
  opacity: 0;
  transform: translateX(50px);
}

.l-fifth-contents.active .l-fifth-detail-2 {
  opacity: 1;
  transform: translateY(0);
}

.l-fifth-detail-3 {
  position: absolute;
  bottom: -15px;
  right: 80px;
  transition: opacity 800ms 400ms, transform 800ms ease 400ms;
  opacity: 0;
  transform: translateY(-50px);
}

.l-fifth-contents.active .l-fifth-detail-3 {
  opacity: 1;
  transform: translateY(0);
}

.l-fifth-detail-4 {
  position: relative;
  z-index: 999;
}

.c-fifth-circle-1 {
  width: 370px;
  height: 370px;
  text-align: center;
  background-color: #faf8f8;
  border-radius: 50%;
  padding: 40px 0;
  box-sizing: border-box;
}

.c-fifth-circle-2 {
  width: 336px;
  height: 336px;
  text-align: center;
  background-color: #faf8f8;
  border-radius: 50%;
  padding: 20px 0;
  box-sizing: border-box;
}

.c-fifth-circle-3 {
  width: 246px;
  height: 246px;
  text-align: center;
  background-color: #faf8f8;
  border-radius: 50%;
  padding: 55px 0;
  box-sizing: border-box;
}

.c-stimulus-babycar {
  width: 398px;
  margin: 0 0 0 75px;
}

.c-fifth-title {
  font-size: 20px;
  font-weight: 600;
  color: #a48374;
  line-height: 1.2;
}

.c-fifth-title.c-new {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px 0 0 0;
}

.c-fifth-title.c-new .label {
  margin-left: 5px;
}

.c-fifth-text {
  margin: 12px 0 0 0;
  font-size: 14px;
}

.c-fifth-img-2 {
  width: 222px;
}

/* style */
.c-style-main {
  position: relative;
}

.c-style-wrapper {
  position: relative;
  padding: 180px 0 0 0;
}

.l-style-circle-sp {
  position: relative;
  overflow: hidden;
  top: -50px;
}

.l-style-circle-sp-img {
  width: 600px;
  position: relative;
  left: calc((100% - 600px) / 2);
  z-index: 999;
}

.l-style-container-sp {
  position: absolute;
  top: 50px;
  left: 0;
}

.c-style-circle {
  width: 894px;
  position: absolute;
  top: -60px;
  left: 53px;
}

.c-style-main-img {
  width: 1000px;
  position: relative;
  z-index: 999;
}

.c-style-main-1 {
  width: 416px;
}

.c-style-main-2 {
  width: 307px;
}

.c-style-main-3 {
  width: 246px;
}

.c-style-thumnails {
  margin: 0 -10px;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 999;
}

.c-style-thumb {
  margin: 72px 10px 0;
  width: 235px;
  background: #fff;
  box-shadow: 6px 6px 30px rgba(0, 0, 0, 0.16);
}

.c-style-copy {
  position: absolute;
  right: 0;
  top: 120px;
  z-index: 99;
}

@media screen and (max-width: 1001px) {
  .c-style-copy {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin: 60px 0 0 0;
    position: relative;
    top: 0;
    padding: 0 20px;
  }

  .c-style-wrapper {
    padding: 0;
  }

  .c-style-thumnails {
    flex-wrap: wrap;
    margin: 50px 0 0;
  }

  .c-style-thumb {
    width: 168px;
    margin: 5px 5px 0;
  }
}

/* baby */
.l-section-baby {
  padding: 0 0 60px 0;
}

.l-baby-grid {
  margin: 30px 0 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.l-baby-item {
  margin: 0 10px;
  max-width: 235px;
  transform: translateY(10%);
  opacity: 0;
}

.l-baby-item.item1 {
  transition: transform 1000ms, opacity 400ms;
}

.l-baby-item.item2 {
  transition: transform 1000ms ease 100ms, opacity 400ms ease 100ms;
}

.l-baby-item.item3 {
  transition: transform 1000ms ease 200ms, opacity 400ms ease 200ms;
}

.l-baby-item.item4 {
  transition: transform 1000ms ease 300ms, opacity 400ms ease 300ms;
}

.l-baby-grid.active .item1,
.l-baby-grid.active .item2,
.l-baby-grid.active .item3,
.l-baby-grid.active .item4 {
  transform: translateY(0);
  opacity: 1;
}

.l-baby-thumb-1 {
  width: 224px;
  height: 200px;
  margin: 0 auto;
}

.l-baby-thumb-2 {
  width: 224px;
  height: 200px;
  margin: 0 auto;
}

.l-baby-thumb-3 {
  width: 200px;
  margin: 0 auto;
}

.l-baby-thumb-4 {
  width: 200px;
  margin: 0 auto;
}

.c-baby-thum-title {
  font-size: 18px;
  font-weight: 600;
  color: #936f60;
  margin: 18px 0 0 0;
  line-height: 1.4;
}

.c-baby-thum-title-new {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

/* for baby */
.bg-baby {
  max-width: 1366px;
  margin: 0 auto;
  background: url('../images/forbaby/bg_baby.png') no-repeat;
  background-size: 438px;
}

.c-baby-copy-img {
  padding: 100px 0 0;
  margin: 0 auto;
  width: 633px;
}

.c-baby-arrow {
  width: 40px;
}

.c-baby-buttons-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 38px;
}

.c-baby-buttons {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 780px;
}

.c-baby-buttons-item {
  margin: 5px;
  box-sizing: border-box;
}

.c-baby-button {
  border: 1px solid #a48374;
  width: 185px;
  height: 44px;
  border-radius: 8px;
  background-color: #fff;
  line-height: 1.4;
  font-size: 12px;
  box-sizing: border-box;
  cursor: pointer;
  transition: all 300ms;
}
a.c-baby-formama:visited{
  color: #fff;
}
.c-baby-button:hover {
  background-color: #a48374;
  font-weight: 600;
  color: #fff;
}

.c-baby-button.active {
  background-color: #a48374;
  font-weight: 600;
  color: #fff;
}

.c-baby-formama {
  appearance: none;
  outline: none;
  border: none;
  color: #fff;
  background-color: #df0723;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
  width: 200px;
  padding: 8px 0;
  border-radius: 20px;
  background: #df0723;
  box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  transition: opacity 500ms;
  opacity: 1;
}

.c-baby-formama:hover {
  opacity: 0.7;
}

/* slide */

.c-baby-slide-wrapper {
  max-width: 770px;
  margin: 54px auto 0;
  transition: opacity 300ms ease-out;
  transition-delay: 100ms;
  display: none;
  opacity: 0;
}

.c-baby-slide-wrapper.active {
  display: block;
  opacity: 1;
}

.c-baby-slide-inner {
  display: flex;
  justify-content: space-between;
}

.c-baby-slide-bike {
  width: 248px;
  margin-left: 80px;
  margin-top: -20px;
}

.c-baby-slide-title {
  margin: 0 0 0 10px;
}
.c-baby-slide-title h3 {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
}

.c-baby-slide-grid {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 24px -6px -6px;
  width: 400px;
}

.c-baby-slide-img {
  width: 187px;
  margin: 6px;
}

.l-baby-slider {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}

#btn-arrow-prev {
  position: absolute;
  top: 40%;
  left: 0;
  cursor: pointer;
}

#btn-arrow-next {
  position: absolute;
  top: 40%;
  right: 0;
  cursor: pointer;
}

.c-baby-sp-grid {
  display: none;
}

@media screen and (max-width: 1001px) {
  .l-baby-thumb-1 {
    height: auto;
  }

  .l-baby-thumb-2 {
    height: auto;
  }

  .l-baby-grid {
    display: block;
    padding: 0 40px;
    margin: 30px 0;
  }

  .l-baby-item {
    margin: 50px auto;
    max-width: 310px;
  }

  .c-baby-thum-title-new {
    justify-content: flex-start;
    align-items: center;
  }

  .bg-baby {
    background-size: 164px;
  }

  .c-baby-copy-img {
    width: 310px;
    padding: 40px 0 0;
  }

  .c-baby-slide-img {
    width: 150px;
  }

  .c-baby-slide-inner {
    justify-content: center;
    align-items: flex-start;
    position: relative;
  }

  .c-baby-slide-bike {
    width: 120px;
    margin: -20px 10px 0 -20px;
  }

  .c-baby-slide-info {
    max-width: 110px;
  }

  .c-baby-slide-grid {
    display: none;
  }

  .c-baby-slide-title {
    margin: 16px 0 0 0;
  }

  .c-baby-slide-title h3 {
    font-size: 16px;
    text-align: center;
  }

  .c-baby-arrow {
    width: 30px;
  }

  #btn-arrow-prev {
    top: 70px;
    left: 20px;
  }

  #btn-arrow-next {
    top: 70px;
    right: 20px;
  }

  .c-baby-button {
    width: 170px;
  }

  .c-baby-sp-grid {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 20px 0 0 0;
  }
}

/* mampapa */
.l-section-mompapa {
  width: 428px;
  margin: 0 auto;
}

.l-section-belt {
  width: 770px;
  margin: 0 auto;
}

.l-mompapa-belt {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 40px 0 0 0;
}

.l-belt-steps {
  margin: 60px 0 0 0;
}

.c-belt-text {
  margin: 40px 0 0 0;
  font-size: 14px;
  text-align: center;
}

.l-mompapa-img {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 200px;
}

.l-mompapa-img-inner {
  width: 200px;
}

.l-mompapa-img-inner.w235 {
  width: 235px;
}

.l-belt-fukidashi {
  width: 242px;
  margin-left: 20px;
}

.l-mompapa-details {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 75px -10px;
}

.l-mp-item {
  margin: 25px 17.5px;
  width: 220px;
  transform: translateY(10%);
  opacity: 0;
}

.l-mp-item.item1 {
  transition: transform 1000ms, opacity 400ms;
}

.l-mp-item.item2 {
  transition: transform 1000ms ease 100ms, opacity 400ms ease 100ms;
}

.l-mp-item.item3 {
  transition: transform 1000ms ease 200ms, opacity 400ms ease 200ms;
}

.l-mp-item.item4 {
  transition: transform 1000ms ease 300ms, opacity 400ms ease 300ms;
}

.l-mp-item.item5 {
  transition: transform 1000ms ease 400ms, opacity 400ms ease 400ms;
}

.l-mp-item.item6 {
  transition: transform 1000ms ease 200ms, opacity 400ms ease 500ms;
}

.l-mp-item.item7 {
  transition: transform 1000ms ease 300ms, opacity 400ms ease 600ms;
}

.l-mp-item.item8 {
  transition: transform 1000ms ease 700ms, opacity 400ms ease 700ms;
}

.l-mompapa-details.active .item1,
.l-mompapa-details.active .item2,
.l-mompapa-details.active .item3,
.l-mompapa-details.active .item4,
.l-mompapa-details.active .item5,
.l-mompapa-details.active .item6,
.l-mompapa-details.active .item7,
.l-mompapa-details.active .item8 {
  transform: translateY(0);
  opacity: 1;
}

.l-mp-h4 {
  font-size: 18px;
  font-weight: 600;
  color: #936f60;
  margin: 18px 0 0 0;
}
.l-mp-text {
  font-size: 14px;
  margin: 32px 0 0 0;
}

.l-mp-text.mrg8 {
  margin: 8px 0 0 0;
}

@media screen and (max-width: 1001px) {
  .l-section-mompapa {
    max-width: 310px;
  }

  .l-section-belt {
    max-width: 350px;
  }

  .l-belt-steps {
  }

  .l-belt-wrapper {
    overflow-x: scroll;
    width: 100%;
  }

  .c-belt-text {
    padding: 0 20px;
  }

  .l-mompapa-belt {
    background-color: #a48374;
    padding: 10px 40px;
  }

  .l-belt-fukidashi {
    margin-left: -18px;
  }

  .l-mompapa-details {
    max-width: 310px;
    width: 100%;
    margin: 40px auto 0;
  }

  .l-mp-h4 {
    text-align: center;
  }

  .l-mp-text {
    margin: 16px 0 0 0;
  }

  .l-mp-item {
    margin: 0px 0 40px 0;
    width: 100%;
  }

  .l-mompapa-img-inner.w214 {
    width: 214px;
  }

  .l-mompapa-img-inner.w235 {
    width: 235px;
  }

  .l-belt-stepper {
    padding: 0 20%;
  }
}

/* colors */
.l-colors {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 -27px;
}

.l-optia-img {
  max-width: 342px;
  margin: 0 auto;
}

.l-table-wrapper {
  margin: 60px 0 0 0;
}

.table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  max-width: 1000px;
  border: 1px solid #707070;
  box-sizing: border-box;
}

.table th,
.table td {
  border: 1px solid #707070;
}

.table th {
  text-align: left;
  padding: 16px 18px;
}

.td-single {
  padding: 16px 18px;
}

.td-multi {
  padding: 5px 18px;
}
.code-block{
  padding: 15px 18px;
}

@media screen and (max-width: 1001px) {
  .l-colors {
    display: block;
    margin: 0;
  }

  .l-colors-item {
    margin: 60px 0 0 0;
  }

  .l-optia-img {
    max-width: 310px;
  }

  .l-table-wrapper {
    padding: 0 20px;
    margin: 60px 0 0 0;
    box-sizing: border-box;
  }

  .table {
    table-layout: fixed;
  }

  .table td {
    width: 100%;
    padding: 16px 10px;
  }

  .table th {
    width: 88px;
    padding: 16px 10px;
  }

  .l-colors-tips {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .l-colors-title {
    margin: 10px 5px 0 0;
  }
}
