@charset "UTF-8";
body {
  color: #353737;
  font-weight: 300;
}
h2,
h3 {
  font-weight: 300;
}
.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}
#main {
  margin-top: 0;
  margin-bottom: 0;
}
#main > .row {
  max-width: none;
}
#primary.column {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* .t-sec-benefits {
  position: relative;
  z-index: 1;
} */
/*-- j-scroll-effect --*/
.skincare-philosophy-page .j-scroll-effect {
  opacity: 0;
  transition: opacity 0.75s linear, transform 2.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.skincare-philosophy-page .j-scroll-left.j-scroll-effect {
  transform: translate3d(-50px, 0px, 0px);
}
.skincare-philosophy-page .j-scroll-right.j-scroll-effect {
  transform: translate3d(50px, 0px, 0px);
}
.skincare-philosophy-page .j-scroll-left.j-scroll-effect_start,
.skincare-philosophy-page .j-scroll-right.j-scroll-effect_start {
  opacity: 1;
  transform: translate3d(0px, 0px, 0px);
}

/*--contents --*/
.skincare-philosophy-page h2 {
  color: #898a8d;
  font-size: clamp(60px, calc(52.72985781990521px + 0.9478672985781991vw), 66px);
  font-weight: 700;
  line-height: 1.2;
  padding: 0;
  margin-bottom: 53px;
  border: none;
}
.skincare-philosophy-page h3 {
  color: #353737;
  font-size: 26px;
  line-height: 1.2;
  padding: 0 0 26px;
  border: none;
}
.skincare-philosophy-page .p-txt {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.7;
}
.skincare-philosophy-page .p-txt-last {
  margin-top: 75px;
}
.skincare-philosophy-page .p-txtLink {
  text-decoration: underline;
}
.skincare-philosophy-page .p-txtLink:hover {
  text-decoration: none;
}
.skincare-philosophy-page picture {
  display: block;
}
.skincare-philosophy-page .spp--contents-l-l {
  position: relative;
  max-width: 1300px;
  width: 92.857vw;
  margin: 0 auto 0 0;
  z-index: 1;
}
.skincare-philosophy-page .spp--contents-l-r {
  position: relative;
  max-width: 1300px;
  width: 92.857vw;
  margin: 0 0 0 auto;
  z-index: 1;
}
.skincare-philosophy-page .spp--contents-flex {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .skincare-philosophy-page h2 {
    color: #898a8d;
    font-size: 48px;
    line-height: 1.2;
    padding: 0;
    margin-bottom: 9.524vw;
    border: none;
  }
  .skincare-philosophy-page h3 {
    color: #353737;
    font-size: 26px;
    line-height: 1.2;
    padding: 5.952vw 0 5.714vw;
    border: none;
  }
  .skincare-philosophy-page .p-txt {
    margin-top: 3vw;
    font-size: 14px;
    line-height: 1.7;
  }
  .skincare-philosophy-page .p-txt-last {
    margin-top: 9.762vw;
  }
  .skincare-philosophy-page .p-txtLink {
    text-decoration: underline;
  }
  .skincare-philosophy-page .p-txtLink:hover {
    text-decoration: none;
  }
  .skincare-philosophy-page .spp--contents-l-l {
    position: relative;
    max-width: initial;
    width: 100vw;
    margin: 0 auto 0 0;
    z-index: 1;
  }
  .skincare-philosophy-page .spp--contents-l-r {
    position: relative;
    max-width: initial;
    width: 100vw;
    margin: 0 0 0 auto;
    z-index: 1;
  }
}
/*--background --*/
.skincare-philosophy-page .bg-left,
.skincare-philosophy-page .bg-right {
  position: relative;
}
.skincare-philosophy-page .bg-right::after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #ffffff 0%, #efedee 100%) 0% 0% no-repeat padding-box;
}
.skincare-philosophy-page .bg-left::after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(270deg, #ffffff 0%, #efedee 100%) 0% 0% no-repeat padding-box;
}
/*-- kv --*/
.skincare-philosophy-page .kv {
  position: relative;
  text-align: center;
}
.skincare-philosophy-page .kv--video {
  width: 100%;
}
.skincare-philosophy-page .kv--video video {
  width: 100%;
}
.skincare-philosophy-page .kv--scroll {
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  width: 30px;
  margin: 0 auto;
  opacity: 0;
  animation: fadeIn 5s ease-in-out forwards;
}
.skincare-philosophy-page .kv--scroll img {
  width: 30px;
}
.skincare-philosophy-page .kv--content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 1;
}
.skincare-philosophy-page .kv h1 {
  color: #cbccce;
  font-size: 84px;
  font-weight: 300;
}
.skincare-philosophy-page .kv p {
  color: #fff;
  display: block;
  font-size: 20px;
  margin: 35px 0 0;
}
.skincare-philosophy-page .kv .kv--content.act h1 {
  opacity: 0;
  animation: fadeIn 3s ease-in-out forwards;
}
.skincare-philosophy-page .kv .kv--content.act p {
  opacity: 0;
  animation: fadeIn 3s ease-in-out 0.5s forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media screen and (min-width: 768px) {
  .skincare-philosophy-page .kv-movie.pc {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .skincare-philosophy-page .kv--content {
    transform: translate(-50%, -60%);
  }
  .skincare-philosophy-page .kv h1 {
    color: #cbccce;
    font-size: 36px;
    font-weight: 300;
    line-height: 1.2;
  }
  .skincare-philosophy-page .kv p {
    display: block;
    margin-top: 4vw;
    color: #fff;
    font-size: 18px;
  }
}

/*-- perception--*/
.skincare-philosophy-page .perception .spp--contents-flex {
  position: relative;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .skincare-philosophy-page .perception .perception--content {
    max-width: 470px;
    width: 33.571vw;
    padding-top: 100px;
  }
  .skincare-philosophy-page .perception .perception--img {
    position: relative;
    max-width: 790px;
    width: 56.429vw;
  }
  .skincare-philosophy-page .perception .perception--img--01 {
    position: absolute;
    top: clamp(110px, calc(-9.957345971563981px + 15.639810426540285vw), 209px);
    right: clamp(164px, calc(11.32701421800948px + 19.90521327014218vw), 290px);
    max-width: 500px;
    width: 35.714vw;
    z-index: 1;
  }
  .skincare-philosophy-page .perception .perception--img--02 {
    position: absolute;
    top: clamp(90px, calc(77.8830963665087px + 1.579778830963665vw), 100px);
    right: 0;
    max-width: 250px;
    width: 17.857vw;
  }
  .skincare-philosophy-page .perception .perception--img--03 {
    position: absolute;
    top: clamp(355px, calc(58.13586097946285px + 38.70458135860979vw), 600px);
    right: 40px;
    max-width: 500px;
    width: 35.714vw;
  }
  .skincare-philosophy-page .perception {
    min-height: 960px;
  }
  .skincare-philosophy-page .perception h2 {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .skincare-philosophy-page .perception {
    padding-bottom: 23.81vw;
  }
  .skincare-philosophy-page .perception h2 {
    width: 100%;
    padding-left: 8.81vw;
    margin-bottom: 6.667vw;
  }
  .skincare-philosophy-page .perception .spp--contents-flex {
    flex-direction: column-reverse;
    padding-top: 13.81vw;
    margin: 0 auto;
  }
  .skincare-philosophy-page .perception .perception--content {
    width: 90.476vw;
    margin: 0 auto;
  }
  .skincare-philosophy-page .perception .perception--img {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .skincare-philosophy-page .perception .perception--img--01 {
    width: 95.238vw;
    margin-bottom: 7.143vw;
  }
  .skincare-philosophy-page .perception .perception--img--02 {
    width: 35.714vw;
  }
  .skincare-philosophy-page .perception .perception--img--03 {
    width: 57.143vw;
  }
}
/*-- perception--*/

/*-- keys --*/
.skincare-philosophy-page .keys .spp--contents-flex {
  position: relative;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .skincare-philosophy-page .keys {
    min-height: 1030px;
  }
  .skincare-philosophy-page .keys h3,
  .skincare-philosophy-page .keys p {
    margin-left: 53px;
  }
  .skincare-philosophy-page .keys--content {
    max-width: 458px;
    width: 32.714vw;
    padding-top: 124px;
  }
  .skincare-philosophy-page .keys--img {
    max-width: 809px;
    width: 57.786vw;
  }
  .skincare-philosophy-page .keys .keys--img--01 {
    position: absolute;
    top: 100px;
    left: 0;
    max-width: 500px;
    width: 35.714vw;
  }
  .skincare-philosophy-page .keys .keys--img--02 {
    position: absolute;
    top: clamp(300px, calc(205.48815165876778px + 12.322274881516588vw), 378px);
    left: clamp(100px, calc(-334.9968404423381px + 56.71406003159558vw), 459px);
    max-width: 350px;
    width: 25vw;
  }
  .skincare-philosophy-page .keys .keys--img--03 {
    position: absolute;
    top: clamp(555px, calc(464.1232227488152px + 11.848341232227488vw), 630px);
    left: 40px;
    max-width: 370px;
    width: 26.429vw;
  }
}
@media screen and (max-width: 767px) {
  .skincare-philosophy-page .keys {
    padding-bottom: 17.619vw;
  }
  .skincare-philosophy-page .keys h2 {
    width: 100%;
    padding-left: 8.81vw;
    margin-bottom: 6.667vw;
  }
  .skincare-philosophy-page .keys .spp--contents-flex {
    padding-top: 13.095vw;
  }
  .skincare-philosophy-page .keys--content {
    width: 90.476vw;
    margin: 0 auto;
  }
  .skincare-philosophy-page .keys--img {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .skincare-philosophy-page .keys .keys--img--01 {
    width: 95.238vw;
    margin-bottom: 7.143vw;
  }
  .skincare-philosophy-page .keys .keys--img--02 {
    width: 35.714vw;
  }
  .skincare-philosophy-page .keys .keys--img--03 {
    width: 57.143vw;
  }
}

/*-- texture--*/
.skincare-philosophy-page .texture .spp--contents-flex {
  position: relative;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .skincare-philosophy-page .texture {
    min-height: 1040px;
  }
  .skincare-philosophy-page .texture h2 {
    margin-bottom: 80px;
  }
  .skincare-philosophy-page .texture .texture--content {
    max-width: 639px;
    width: 40.643vw;
    padding-top: 100px;
  }
  .skincare-philosophy-page .texture .texture--img {
    position: relative;
    max-width: 650px;
    width: 46.429vw;
  }
  .skincare-philosophy-page .texture .texture--img--01 {
    position: absolute;
    top: 100px;
    right: 0;
    max-width: 520px;
    width: 37.143vw;
  }
  .skincare-philosophy-page .texture .texture--img--02 {
    position: absolute;
    top: clamp(374px, calc(136.50868878357028px + 30.963665086887836vw), 570px);
    right: clamp(112px, calc(-166.68878357030013px + 36.334913112164294vw), 342px);
    max-width: 380px;
    width: 27.143vw;
  }
  .skincare-philosophy-page .texture .texture--img--03 {
    position: absolute;
    top: 570px;
    right: 42px;
    max-width: 260px;
    width: 18.571vw;
  }
}
@media screen and (max-width: 767px) {
  .skincare-philosophy-page .texture {
    padding-bottom: 23.81vw;
  }
  .skincare-philosophy-page .texture h2 {
    width: 100%;
    padding-left: 8.81vw;
    margin-bottom: 6.667vw;
  }
  .skincare-philosophy-page .texture .spp--contents-flex {
    flex-direction: column-reverse;
    padding-top: 13.81vw;
    margin: 0 auto;
  }
  .skincare-philosophy-page .texture .texture--content {
    width: 90.476vw;
    margin: 0 auto;
  }
  .skincare-philosophy-page .texture .texture--img {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .skincare-philosophy-page .texture .texture--img--01 {
    width: 95.238vw;
    margin-bottom: 7.143vw;
  }
  .skincare-philosophy-page .texture .texture--img--02 {
    width: 35.714vw;
  }
  .skincare-philosophy-page .texture .texture--img--03 {
    width: 57.143vw;
  }
}
/*-- texture--*/
