:root {
  --black: 51,51,51;
  --red: 238,0,59;
  --dark_red: 207,28,85;
  --main: 171,94,173;
  --accent: 227,55,129;
  --note: 102,102,102;
  --bg: 243,243,243;
  --gray: 153,153,153;
  --dark_gray: 167,167,167;
  --border: 210,211,212;
  --light_pink: 242,238,246;
  --beige: 242,238,230;
  --green: 92,198,172;
  --blue: 16,120,237;
  --purple: 195,129,203;
  --light_purple: 250,244,255;
  --pink_purple: 203,75,138;
  --blue: 87 129 234;
  --yellow: 255 183 3;
  --beauty_main: 233,83,131;
  --beauty_light_pink: 252,229,237;
  --contents_width: 1100px;
  --body_padding_side: 60px;
  --contents_width_with_padding: 1160px;
  --sidebar_width: 250px;
  --hover_opacity: .7;
}

/* .l-sub-img
================================================ */
.l-sub-img.has-bg {
  background-image: url(../img/mv01_sp.jpg);
}
@media all and (min-width: 768px) {
  .l-sub-img.has-bg {
    background-image: url(../img/mv01_pc.jpg), linear-gradient(90deg, #f2f6ff 0%, #d9ecfd 100%);
  }
}

/* .k-skin-trend
================================================ */
.k-skin-intro .c-color-main {
  color: rgb(var(--beauty_main));
}

/* .k-skin-trend
================================================ */
@media all and (max-width: 767px) {
  .k-skin-trend.c-area-bg {
    padding-inline: 0;
  }
}
@media all and (max-width: 767px) {
  .k-skin-trend .u-inner {
    padding-inline: 0;
  }
}
.k-skin-trend a {
  text-decoration: none;
}
@media all and (min-width: 768px) {
  .k-skin-trend__list {
    display: flex !important;
    justify-content: space-between;
  }
}
.k-skin-trend__item {
  text-align: center;
}
@media all and (max-width: 767px) {
  .k-skin-trend__item:not(.is-active) {
    opacity: 0.5;
  }
}
@media all and (min-width: 768px) {
  .k-skin-trend__item {
    width: 300px;
  }
}
.k-skin-trend__txt {
  margin-top: 0.8em;
}
.k-skin-trend__effect {
  min-width: 6em;
  color: #fff;
  background-color: #29334a;
  font-size: 1.8rem;
  line-height: 1;
  border-radius: 9999px;
  display: inline-block;
  margin-top: 0.8em;
  padding: 0.5em;
}
@media all and (min-width: 768px) {
  .k-skin-trend__effect {
    font-size: 2rem;
  }
}

/* .k-skin-nav
================================================ */
.k-skin-nav__list {
  text-align: center;
}
@media all and (min-width: 768px) {
  .k-skin-nav__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
  }
}
@media all and (min-width: 768px) {
  .k-skin-nav__item {
    width: calc((100% - 1em) / 2);
  }
}
@media all and (max-width: 767px) {
  .k-skin-nav__item + .k-skin-nav__item {
    margin-top: 1em;
  }
}

/* .k-skin-case
================================================ */
.k-skin-case__inner {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media all and (min-width: 768px) {
  .k-skin-case__inner {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media all and (min-width: 768px) {
  .k-skin-case .c-note01 {
    width: 780px;
    margin-inline: auto;
  }
}

/* .k-skin-menu
================================================ */
@media all and (max-width: 767px) {
  .k-skin-menu__wrapper-sp {
    display: grid;
    grid-template-columns: 40% 1fr;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .k-skin-menu__wrapper-upper-tb {
    display: contents;
  }
}
@media all and (min-width: 768px) {
  .k-skin-menu__wrapper-upper-tb {
    display: grid;
    grid-template-columns: 180px 1fr;
    -moz-column-gap: 30px;
    column-gap: 30px;
    margin-top: 20px;
  }
}
@media all and (max-width: 767px) {
  .k-skin-menu .c-menu02__head {
    order: 2;
    grid-area: 1/2/2/3;
    display: flex;
    align-items: flex-end;
  }
}
@media all and (max-width: 767px) {
  .k-skin-menu .c-menu02__img {
    order: 1;
    grid-area: 1/1/3/2;
  }
}
.k-skin-menu .c-menu02__ico {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
@media all and (max-width: 767px) {
  .k-skin-menu .c-menu02__ico {
    order: 3;
    grid-area: 2/2/3/3;
  }
}
@media all and (min-width: 768px) {
  .k-skin-menu .c-menu02__ico {
    justify-content: center;
  }
}
.k-skin-menu .c-menu02__txt {
  margin-top: 15px;
}
@media all and (min-width: 768px) {
  .k-skin-menu .c-menu02__txt {
    margin-top: 20px;
  }
}

/* .k-skin-aim
================================================ */
.k-skin-aim__list {
  border-radius: 15px;
  padding: 15px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media all and (min-width: 768px) {
  .k-skin-aim__list {
    padding: 30px;
    grid-template-columns: repeat(4, 1fr);
  }
}