@charset "UTF-8";
/***************************************
 *
 *base CSS
 *
 *2019/XX
 *
 ****************************************** */
/**************************************
 *
 *settings scss
 *
 ************************************** */
/***********************
 *
 *common
 *
 ********************** */
* {
  box-sizing: border-box; }

a {
  text-decoration: none;
  color: inherit; }

li {
  list-style: none; }

i, em {
  font-style: normal; }

body, html {
  margin: 0px;
  padding: 0px;
  font-family: "Noto Sans JP", "Yu Gothic", sans-serif;
  font-feature-settings: "palt";
  color: #333;
  font-weight: 500; }

body {
  overflow-x: hidden;
  color: #333;
  overflow-x: hidden; }

ul {
  margin: 0;
  padding: 0; }

h2, h3, h4, h5 {
  font-weight: bold; }

p {
  font-weight: lighter; }

.ib {
  width: 1100px;
  margin: 0 auto;
  position: relative;
  max-width: 100%; }

table {
  border-collapse: collapse; }

#wpadminbar {
  display: none; }

.pc_content {
  display: block !important; }

.sp_content {
  display: none !important; }

::-webkit-scrollbar {
  width: 10px; }

::-webkit-scrollbar-track {
  background: #fff;
  border: none;
  border-radius: 10px;
  box-shadow: inset 0 0 2px #777; }

::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 10px;
  box-shadow: none; }

/*************************************
 *
 *top_scroll
 *
 ************************************* */
a.scroll {
  position: absolute;
  bottom: 10px;
  left: calc(50% - 20px);
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
  color: #fff;
  font-family: "Yu gochic", serif;
  padding-top: 60px; }
  a.scroll span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 30px;
    height: 50px;
    margin-left: -15px;
    border: 2px solid #fff;
    border-radius: 50px;
    box-sizing: border-box; }
    a.scroll span::before {
      position: absolute;
      top: 10px;
      left: 50%;
      content: "";
      width: 6px;
      height: 6px;
      margin-left: -3px;
      background-color: #fff;
      border-radius: 100%;
      -webkit-animation: sdb 2s infinite;
      animation: sdb 2s infinite;
      box-sizing: border-box; }

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0; }
  40% {
    opacity: 1; }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0; }
  100% {
    opacity: 0; } }
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0; }
  40% {
    opacity: 1; }
  80% {
    transform: translate(0, 20px);
    opacity: 0; }
  100% {
    opacity: 0; } }
/***********************************************
 *
 *縺ｵ繧上▲縺ｨ繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ
 *
 ************************************************ */
.fadeInDown {
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  visibility: visible !important; }

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
.slideInn01 {
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: slideInn01;
  animation-name: slideInn01;
  visibility: visible !important; }

@keyframes slideInn01 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
    -ms-transform: translateX(100px);
    transform: translateX(100px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
.slideInn02 {
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: slideInn02;
  animation-name: slideInn02;
  visibility: visible !important; }

@keyframes slideInn02 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    transform: translateX(-100px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
.topimg {
  height: 860px;
  width: 100%;
  position: relative; }
  .topimg .logo {
    position: absolute;
    top: 33px;
    right: 40px;
    width: 110px; }
  .topimg:before {
    content: "";
    position: absolute;
    width: calc(100% - 60px);
    height: calc(100% - 60px);
    top: 20px;
    left: 25px;
    display: block;
    border: 5px solid #c31948;
    z-index: 2; }
  .topimg:after {
    content: "";
    background: url(../img/st01.png);
    z-index: 1;
    height: 170px;
    display: block;
    width: calc(100% - 60px);
    position: absolute;
    left: 30px;
    bottom: 30px;
    display: block; }
  .topimg .lady01 {
    position: absolute;
    left: calc( 50% - 375px);
    top: 6px;
    width: 750px;
    z-index: 3; }
  .topimg .tit01 {
    position: absolute;
    left: calc(50% - 503px);
    top: 110px;
    display: none; }
  .topimg .tit02 {
    position: absolute;
    left: calc(50% - 446px);
    bottom: 70px;
    z-index: 4; }
  .topimg .pr01 {
    position: absolute;
    left: calc(50% + 220px);
    bottom: -30px;
    z-index: 3; }
  .topimg a.cart_btn {
    position: absolute;
    left: calc(50% - 240px);
    bottom: -15px;
    z-index: 5; }

a.cart_btn {
  width: 480px;
  display: block;
  background: #c31948;
  color: #fff;
  font-size: 32px;
  text-align: center;
  padding: 20px;
  border-radius: 6px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 5px #87002a; }
  a.cart_btn::after {
    content: "";
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.5) 100%, rgba(255, 255, 255, 0) 0%);
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 5s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }

@keyframes shiny {
  0% {
    left: -20%; }
  10% {
    left: 120%; }
  100% {
    left: 120%; } }
.intro {
  margin: 130px 0;
  position: relative; }
  .intro .ib {
    position: relative;
    padding: 60px 0;
    height: 430px; }
    .intro .ib .tit03 {
      position: absolute;
      top: 0;
      right: 0; }
    .intro .ib .pr02 {
      position: absolute;
      left: 80px;
      top: 90px; }
    .intro .ib .desc {
      position: absolute;
      left: calc(50% + -30px);
      top: 180px; }
      .intro .ib .desc h3 {
        font-size: 24px;
        font-weight: bold;
        line-height: 1;
        margin-bottom: 0px;
        margin-left: -35px; }
        .intro .ib .desc h3 span {
          color: #c31948;
          font-size: 32px;
          font-family: Yu mincho;
          display: inline-block;
          padding-right: 10px;
          line-height: 1;
          font-style: italic; }
      .intro .ib .desc p {
        font-size: 18px;
        line-height: 1.6; }

.nayami {
  position: relative;
  height: 1000px; }
  .nayami:after {
    content: "";
    background: url(../img/st01.png);
    position: absolute;
    height: 490px;
    bottom: 0;
    width: 100%;
    display: block; }
  .nayami .ib {
    padding: 50px 0;
    width: 1000px;
    height: 100%;
    background: #fff;
    position: relative;
    z-index: 2; }
    .nayami .ib h2 {
      font-size: 44px;
      text-align: center;
      margin: 50px 0;
      font-family: vdl-logona;
      font-weight: normal; }
      .nayami .ib h2 span {
        color: #c31948; }
    .nayami .ib .n_list {
      font-size: 18px;
      width: 460px;
      margin: 40px auto; }
      .nayami .ib .n_list div {
        margin-bottom: 10px; }
        .nayami .ib .n_list div span {
          display: inline-block;
          padding: 5px;
          text-align: center;
          background: #c31948;
          width: 38px;
          height: 38px;
          color: #fff;
          margin-right: 15px; }
    .nayami .ib .nayami01 {
      display: block;
      width: 100%; }
    .nayami .ib .ar01 {
      display: block;
      margin: 30px auto; }

.triple {
  position: relative;
  z-index: 2; }
  .triple .bg01 {
    position: absolute;
    right: 0;
    width: calc(50% + 100px);
    top: 550px;
    display: block;
    background: #f1e9f4;
    height: 700px; }
  .triple .bg02 {
    position: absolute;
    left: 0;
    width: calc(50% + 100px);
    top: 2150px;
    display: block;
    background: #f1e9f4;
    height: 600px; }
  .triple .bg03 {
    position: absolute;
    right: 0;
    width: calc(50% + 100px);
    top: 2880px;
    display: block;
    background: #f1e9f4;
    height: 500px; }
  .triple .head {
    width: 100%;
    display: block;
    height: 220px;
    background: #f2f2f2;
    padding: 20px 0;
    overflow: hidden;
    position: relative; }
    .triple .head:before {
      display: block;
      content: "";
      background: #c31948;
      position: absolute;
      width: 40%;
      left: -100px;
      top: -100px;
      height: 500px;
      transform: rotate(12deg); }
    .triple .head .ib {
      padding: 0 0 0 320px;
      width: 1100px; }
      .triple .head .ib em {
        display: block;
        color: #fff;
        font-size: 70px;
        line-height: 1.1;
        position: absolute;
        top: 15px;
        left: calc(50% - 420px);
        font-style: italic; }
      .triple .head .ib span {
        font-family: vdl-logona;
        font-size: 34px;
        display: block;
        padding-left: 60px; }
      .triple .head .ib i {
        font-size: 110px;
        color: #c31948;
        font-family: Yu mincho;
        font-weight: normal;
        line-height: 1;
        font-style: italic; }
  .triple .ib {
    padding: 50px 0;
    width: 920px; }
    .triple .ib .bal01 {
      position: absolute;
      top: -340px;
      right: -140px; }
    .triple .ib .lady02 {
      position: absolute;
      right: -180px;
      top: -150px; }
    .triple .ib p {
      font-size: 22px;
      line-height: 1.8; }
      .triple .ib p span {
        color: #c31948; }
    .triple .ib .mask01 {
      display: block;
      margin: 20px auto 100px; }
    .triple .ib .p3_con {
      margin: 50px 0; }
      .triple .ib .p3_con .point {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        margin-bottom: 60px; }
        .triple .ib .p3_con .point:nth-of-type(2) {
          flex-direction: row-reverse; }
        .triple .ib .p3_con .point .l {
          width: 430px; }
          .triple .ib .p3_con .point .l img:nth-of-type(2) {
            margin-top: -40px; }
        .triple .ib .p3_con .point .r {
          width: 450px; }
          .triple .ib .p3_con .point .r img {
            max-width: 100%;
            display: block;
            margin: 30px auto; }
          .triple .ib .p3_con .point .r h3 {
            font-family: vdl-logona;
            font-size: 40px;
            position: relative;
            padding-left: 100px;
            line-height: 1.5;
            margin-top: 0; }
            .triple .ib .p3_con .point .r h3 em {
              display: block;
              font-size: 14px;
              font-family: inherit; }
            .triple .ib .p3_con .point .r h3 span {
              display: block;
              position: absolute;
              left: 0;
              top: 0;
              width: 80px;
              padding: 10px;
              text-align: center;
              font-size: 60px;
              line-height: 1;
              height: 80px;
              background: #c31948;
              color: #fff;
              font-family: Yu mincho; }
          .triple .ib .p3_con .point .r p {
            font-size: 18px; }
            .triple .ib .p3_con .point .r p b {
              display: block;
              font-weight: bold;
              font-size: 22px; }

.care {
  position: relative; }
  .care:after {
    content: "";
    display: block;
    height: 300px;
    background: url(../img/st01.png);
    width: 100%;
    position: absolute;
    top: 530px;
    z-index: -1; }
  .care h2 {
    padding: 45px;
    border-top: 1px solid #c31948;
    border-bottom: 1px solid #c31948;
    text-align: center;
    position: relative; }
    .care h2 .linu01 {
      position: absolute;
      bottom: 0;
      left: calc(50% - 460px); }
    .care h2 span {
      font-family: Yu mincho;
      letter-spacing: 0.2rem;
      font-size: 44px;
      color: #c31948; }
  .care .ib {
    padding: 50px 0;
    height: 100%;
    height: 850px; }
    .care .ib .tit04 {
      position: absolute;
      top: 50px;
      right: 160px; }
    .care .ib .lady03 {
      position: absolute;
      left: 40px;
      top: 210px; }
    .care .ib .lady04 {
      position: absolute;
      right: 50px;
      top: 290px; }

.howto {
  padding: 25px;
  margin-top: 70px; }
  .howto .wash01, .howto wash02 {
    display: block;
    margin: 50px auto;
    max-width: 100%; }
  .howto .cart_btn {
    display: block;
    margin: 50px auto; }
  .howto .ib {
    border: 5px solid #c31948;
    padding: 60px 0;
    width: 100%;
    background: url(../img/bolt01.png) no-repeat 15px 15px, url(../img/bolt01.png) no-repeat calc(100% - 15px) 15px, url(../img/bolt01.png) no-repeat 15px calc(100% - 15px), url(../img/bolt01.png) no-repeat calc(100% - 15px) calc(100% - 15px); }
    .howto .ib:before {
      width: 630px;
      content: "使い方は簡単3ステップ";
      padding: 15px;
      line-height: 1.2;
      text-align: center;
      color: #c31948;
      font-family: vdl-logona;
      font-size: 44px;
      position: absolute;
      top: -87px;
      background: #fff;
      width: 600px;
      left: calc(50% - 300px);
      border: 5px solid #c31948;
      border-bottom: none;
      border-radius: 6px 6px 0 0; }
    .howto .ib .how_con {
      width: 780px;
      margin: 30px auto; }
      .howto .ib .how_con .how_box {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        margin-bottom: 40px;
        flex-wrap: wrap; }
        .howto .ib .how_con .how_box:nth-of-type(2) {
          flex-direction: row-reverse; }
          .howto .ib .how_con .how_box:nth-of-type(2) div:nth-child(1) {
            padding-left: 15px; }
        .howto .ib .how_con .how_box:nth-of-type(3) div {
          width: 100%; }
          .howto .ib .how_con .how_box:nth-of-type(3) div:nth-child(1) {
            margin-bottom: 20px; }
          .howto .ib .how_con .how_box:nth-of-type(3) div img {
            display: block;
            margin: 0 auto; }
        .howto .ib .how_con .how_box div {
          width: 380px; }

.product {
  background: #f5f5f5;
  margin-bottom: 100px; }
  .product .cart_btn {
    display: block;
    margin: 50px auto 100px; }
  .product .ib {
    width: 880px;
    padding: 50px 0 10px; }
    .product .ib h2 {
      text-align: center; }
      .product .ib h2 img {
        width: 100%; }
    .product .ib .pr_box {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .product .ib .pr_box div {
        width: 49%; }
        .product .ib .pr_box div img {
          display: block;
          margin: 0 auto; }
        .product .ib .pr_box div p span {
          display: block;
          font-size: 14px; }
        .product .ib .pr_box div h3 {
          border-bottom: 1px solid #333;
          padding-bottom: 10px; }

/*************************************
 *
 *footer
 *
 ************************************** */
#backtop {
  position: fixed;
  top: 0;
  left: 0;
  width: 200px;
  display: block;
  padding: 10px;
  text-align: center;
  background: #fff;
  font-size: 16px;
  border-bottom: 1px solid #c31948;
  border-right: 1px solid #c31948;
  z-index: 5; }

#pagetop {
  width: 52px;
  height: 52px;
  background: #c31948;
  position: fixed;
  z-index: 9999;
  bottom: 0px;
  cursor: pointer;
  right: 0px; }
  #pagetop:before {
    content: "";
    font-size: 28px;
    position: absolute;
    top: 7px;
    left: 16px;
    font-family: ionicons;
    color: #fff; }
  #pagetop i {
    font-size: 10px;
    position: absolute;
    bottom: 5px;
    left: 0;
    text-align: center;
    width: 100%;
    display: block;
    color: #fff; }

footer {
  background: #f1f1f1; }
  footer .ib {
    padding: 60px 0 20px; }
    footer .ib p {
      text-align: center;
      color: #333;
      font-size: 12px; }

/*# sourceMappingURL=style.css.map */
