@charset "UTF-8";
/* -----------------------------------------------
* Plugins エントリーポイント
-------------------------------------------------- */ /*------------------------------------------------------------------------------
  reset PC
------------------------------------------------------------------------------*/
html,
input,
textarea,
select,
button {
  font-family: "noto-sans-cjk-jp", sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-size: 16px;
  font-weight: 300;
  font-style: normal;
}

html {
  color: #000;
  background: #fff;
  font-size: 16px;
  line-height: 1.6;
  word-break: break-all;
}

body {
  background: #fff;
  margin: 0;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

img {
  border: 0;
  margin: 0;
  vertical-align: top;
  max-width: 100%;
  width: 100%;
}

p {
  margin: 0;
  padding: 0;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

a {
  color: #000;
  text-decoration: none;
}

input,
select,
textarea,
button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select::-ms-expand {
  display: none;
}

textarea {
  resize: vertical;
}

::-webkit-input-placeholder {
  color: #ccc;
}

:-ms-input-placeholder {
  color: #ccc;
}

::-ms-input-placeholder {
  color: #ccc;
}

::-moz-placeholder {
  color: #ccc;
}

::placeholder {
  color: #ccc;
}

button {
  border: none;
  cursor: pointer;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300;
  font-size: 14px;
  margin: 0;
  padding: 0;
}

main {
  display: block;
}

.outer-block {
  min-width: 1080px;
}

.inner-block {
  position: relative;
  width: 1200px;
  margin: auto;
}

#wrapper {
  position: relative;
}

dl, dt, dd {
  padding: 0;
  margin: 0;
}

@media only screen and (min-width: 641px) {
  .sp {
    display: none !important;
  }
  a[href^="tel:"] {
    pointer-events: none;
  }
  a,
a::before,
a::after,
button {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
}
.honoka {
  font-family: honoka-maru-gothic, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.jun {
  font-family: "a-otf-jun-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.c-svg {
  display: inline-block;
  fill: currentColor;
  vertical-align: top;
}

/*------------------------------------------------------------------------------
  reset SP
------------------------------------------------------------------------------*/
@media only screen and (max-width: 640px) {
  body {
    font-size: 14px;
    position: relative;
    -webkit-appearance: none;
    -webkit-text-size-adjust: 100%;
  }
  .outer-block {
    min-width: 320px;
  }
  .inner-block {
    padding: 0 15px;
    width: auto;
    margin: 0 auto;
    width: 100%;
  }
  #wrapper {
    min-width: 320px;
    position: relative;
    overflow: hidden;
  }
  input[type=submit] {
    -webkit-text-size-adjust: 100%;
  }
  input,
select,
textarea {
    font-size: 16px !important;
  }
  .pc {
    display: none !important;
  }
}
/* - - - - - - - - - -
    Fade Animation
- - - - - - - - - - */
.fade {
  opacity: 0;
  -webkit-transition: all 1.2s ease;
  transition: all 1.2s ease;
}

.fade_fast {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
}

.fade_middle {
  -webkit-transform: translate(0, 60px);
          transform: translate(0, 60px);
}

.fade_slow {
  -webkit-transform: translate(0, 90px);
          transform: translate(0, 90px);
}

.fade_slowly {
  -webkit-transform: translate(0, 120px);
          transform: translate(0, 120px);
}

.fade.show {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}

/* --------------------------------
c-header
----------------------------------- */
.c-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1% 3%;
  position: fixed;
  top: 0;
  z-index: 999;
  width: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0px 1px 2px #dadada;
          box-shadow: 0px 1px 2px #dadada;
  height: 100px;
}
@media only screen and (max-width: 640px) {
  .c-header {
    height: 50px;
  }
}
.c-header .logo {
  width: 120px;
}
@media only screen and (max-width: 640px) {
  .c-header .logo {
    width: 60px;
  }
}
.c-header .header_nav_wrap {
  margin-left: -120px;
}
@media only screen and (max-width: 1000px) {
  .c-header .header_nav_wrap {
    margin-left: 0px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    text-align: center;
  }
}
@media only screen and (max-width: 640px) {
  .c-header .header_nav_wrap {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 98;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: rgba(255, 255, 255, 0.8);
    padding: 30% 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    pointer-events: none;
    margin-left: 0;
  }
}
.c-header .header_nav_wrap a {
  font-size: 24px;
}
@media only screen and (max-width: 640px) {
  .c-header .header_nav_wrap a {
    display: block;
    text-align: center;
    font-size: 18px;
  }
}
.c-header .header_nav_wrap a + a {
  margin-left: 100px;
}
@media only screen and (max-width: 1000px) {
  .c-header .header_nav_wrap a + a {
    margin-left: 5%;
  }
}
@media only screen and (max-width: 640px) {
  .c-header .header_nav_wrap a + a {
    margin: 30px 0 0 0;
  }
}
.c-header .header_nav_wrap.open {
  opacity: 1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  pointer-events: inherit;
}
.c-header.page-header {
  border-bottom: 1px solid #777878;
}
@media only screen and (max-width: 640px) {
  .c-header .toggleBtn {
    display: block;
    position: relative;
    z-index: 99;
    width: 30px;
    height: 20px;
  }
  .c-header .toggleBtn span {
    display: inline-block;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    width: 100%;
    height: 1px;
    background: #9d9d9e;
    border-radius: 1rem;
  }
  .c-header .toggleBtn span:nth-of-type(1) {
    top: 0;
  }
  .c-header .toggleBtn span:nth-of-type(2) {
    top: 45%;
  }
  .c-header .toggleBtn span:nth-of-type(3) {
    bottom: 0;
  }
}
.c-header .toggleBtn.active span:nth-of-type(1) {
  -webkit-transform: translateY(-14px) rotate(45deg);
          transform: translateY(-14px) rotate(45deg);
  top: 130%;
}
.c-header .toggleBtn.active span:nth-of-type(2) {
  opacity: 0;
}
.c-header .toggleBtn.active span:nth-of-type(3) {
  -webkit-transform: translateY(14px) rotate(-45deg);
          transform: translateY(14px) rotate(-45deg);
  bottom: 105%;
}

/* --------------------------------
c-footer
----------------------------------- */
.c-footer {
  background-color: #E4E4E3;
  padding: 80px 0 20px;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .c-footer {
    padding: 20px 0;
  }
}
.c-footer .footer-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-footer .footer-menu li {
  font-size: 22px;
}
.c-footer .footer-menu li + li {
  margin-left: 100px;
}
.c-footer .txt-area {
  margin-top: 60px;
  font-size: 18px;
}
@media only screen and (max-width: 640px) {
  .c-footer .txt-area {
    margin-top: 20px;
    font-size: 16px;
  }
}
.c-footer .txt-area .small-area {
  font-size: 12px;
  margin-top: 10px;
}
@media only screen and (max-width: 640px) {
  .c-footer .txt-area .small-area {
    font-size: 10px;
    margin-top: 10px;
  }
}
.c-footer .copy {
  font-size: 10px;
  margin-top: 20px;
}

/* -----------------------------------------------
* Modules エントリーポイント
-------------------------------------------------- */
/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.kv-block {
  min-width: 1200px;
  margin-top: 100px;
}
@media only screen and (max-width: 640px) {
  .kv-block {
    min-width: auto;
    margin-top: 50px;
  }
}

.concept-block {
  padding: 150px 0 300px;
  background: url(../img/bg_about.png) no-repeat center bottom;
  background-size: cover;
  padding: 10% 0 25%;
}
@media only screen and (max-width: 640px) {
  .concept-block {
    background-image: url(../img/bg_about_sp.png);
    padding-top: 20%;
    background-size: auto;
  }
}
.concept-block .logo-area {
  width: 180px;
  margin: auto;
}
@media only screen and (max-width: 640px) {
  .concept-block .logo-area {
    width: 100px;
  }
}
.concept-block .txt-area {
  text-align: center;
  font-size: 20px;
  line-height: 2.5;
  margin-top: 80px;
}
@media only screen and (max-width: 640px) {
  .concept-block .txt-area {
    font-size: 16px;
    margin-top: 10%;
    line-height: 2;
  }
}

.intro-block {
  padding-top: 47%;
  background: url(../img/bg_image.jpg) no-repeat center bottom;
  background-size: cover;
  position: relative;
  min-height: 700px;
}
@media only screen and (max-width: 640px) {
  .intro-block {
    padding-top: 0;
    background-image: url(../img/bg_image_sp.jpg);
    min-height: auto;
  }
}
.intro-block .inner-block {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 640px) {
  .intro-block .inner-block {
    position: inherit;
    display: block;
    padding: 20% 15px 70%;
  }
}
.intro-block .inner-block .txt-erea .ttl {
  font-size: 28px;
}
@media only screen and (max-width: 640px) {
  .intro-block .inner-block .txt-erea .ttl {
    font-size: 20px;
  }
}
.intro-block .inner-block .txt-erea .txt {
  font-size: 22px;
  margin-top: 50px;
  line-height: 2;
}
@media only screen and (max-width: 640px) {
  .intro-block .inner-block .txt-erea .txt {
    font-size: 14px;
    text-align: left;
    margin-top: 5%;
    line-height: 1.8;
  }
}

.veganplex-block {
  padding-top: 200px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block {
    padding-top: 20%;
  }
}
.veganplex-block .ttl {
  font-size: 30px;
  color: #84c6a5;
  width: 980px;
  text-align: center;
  margin: auto;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .ttl {
    font-size: 20px;
    width: 100%;
  }
}
.veganplex-block .ttl::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  background: linear-gradient(-45deg, transparent, #84c6a5 20%, #84c6a5 80%, transparent);
  max-width: 60%;
  width: 100%;
  height: 2px;
  margin: auto;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .ttl::before {
    max-width: 100%;
  }
}
.veganplex-block .logo-area {
  margin-top: 50px;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area {
    margin-top: 5%;
  }
}
.veganplex-block .logo-area .logo {
  width: 386px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area .logo {
    width: 60%;
  }
}
.veganplex-block .logo-area .about {
  font-size: 20px;
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area .about {
    font-size: 14px;
    margin-top: 10%;
  }
}
.veganplex-block .point-area-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 50px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .point-area-wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 5%;
  }
}
.veganplex-block .point-area-wrap .point {
  background: -webkit-gradient(linear, left top, left bottom, from(#d1bc92), to(#725a2a));
  background: linear-gradient(to bottom, #d1bc92, #725a2a);
  color: #fff;
  padding: 10px;
  border-radius: 15px;
  font-size: 20px;
  width: 210px;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .point-area-wrap .point {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 40%;
    font-size: 13px;
    border-radius: 10px;
    margin-bottom: 5px;
  }
}
.veganplex-block .point-area-wrap .point + .point {
  margin-left: 15px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .point-area-wrap .point + .point {
    margin-left: 5px;
  }
}
@media only screen and (max-width: 640px) {
  .veganplex-block .point-area-wrap .point:nth-of-type(2n+1) {
    margin-left: 0px;
  }
}
.veganplex-block .logo-area-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap {
    display: block;
    max-width: 400px;
    margin: auto;
  }
}
.veganplex-block .logo-area-wrap .logo-area {
  background-color: rgba(112, 89, 41, 0.1);
  width: 48%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px 50px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area {
    width: 100%;
    padding: 10px 20px;
  }
}
.veganplex-block .logo-area-wrap .logo-area .logo {
  width: 150px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area .logo {
    width: 25%;
  }
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area .txt-area {
    width: 75%;
  }
}
.veganplex-block .logo-area-wrap .logo-area .txt-area .logo-ttl {
  font-size: 20px;
  text-align: left;
  padding-left: 20px;
  border-bottom: 2px solid #000;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area .txt-area .logo-ttl {
    font-size: 16px;
    padding-left: 10px;
    border-width: 1px;
  }
}
.veganplex-block .logo-area-wrap .logo-area .txt-area .txt {
  margin: 10px 0 0 20px;
  text-align: left;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area .txt-area .txt {
    margin: 5px 0 0 10px;
    text-align: justify;
    font-size: 12px;
  }
}
.veganplex-block .logo-area-wrap .logo-area + .logo-area {
  margin-left: 20px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area + .logo-area {
    margin-left: 0;
    margin-top: 10px;
  }
}
.veganplex-block .logo-area-wrap .logo-area + .logo-area .logo {
  width: 110px;
}
@media only screen and (max-width: 640px) {
  .veganplex-block .logo-area-wrap .logo-area + .logo-area .logo {
    width: 20%;
  }
}

.materials-block {
  background: url(../img/bg_sozai.png) no-repeat center bottom;
  background-size: cover;
  padding-top: 78%;
  position: relative;
  min-height: 800px;
}
@media only screen and (max-width: 640px) {
  .materials-block {
    background-image: url(../img/bg_sozai_sp.png);
    padding: 15% 0 100%;
    min-height: auto;
  }
}
.materials-block .inner-block {
  position: absolute;
  top: 20%;
  margin: auto;
  left: 0;
  right: 0;
  min-width: 1000px;
}
@media only screen and (max-width: 640px) {
  .materials-block .inner-block {
    position: inherit;
    min-width: auto;
    width: 60%;
    margin-right: 0;
  }
}
.materials-block .inner-block .txt-area {
  width: 400px;
  margin-left: auto;
  text-align: right;
}
@media only screen and (max-width: 640px) {
  .materials-block .inner-block .txt-area {
    width: 100%;
  }
}
.materials-block .inner-block .txt-area .ttl {
  font-size: 30px;
}
@media only screen and (max-width: 640px) {
  .materials-block .inner-block .txt-area .ttl {
    font-size: 20px;
  }
}
.materials-block .inner-block .txt-area .txt {
  font-size: 20px;
  border-bottom: 1px solid #000;
  margin: 50px 20px 0 0;
  padding-bottom: 10px;
}
@media only screen and (max-width: 640px) {
  .materials-block .inner-block .txt-area .txt {
    font-size: 14px;
    margin: 20px 15px 0 0;
  }
}
.materials-block .inner-block .txt-area .small {
  font-size: 15px;
  margin: 10px 20px 0 0;
}
@media only screen and (max-width: 640px) {
  .materials-block .inner-block .txt-area .small {
    font-size: 14px;
    margin: 10px 15px 0 0;
  }
}

.products-block .block-ttl {
  font-size: 30px;
  text-align: center;
  padding: 20px 0;
}
@media only screen and (max-width: 640px) {
  .products-block .block-ttl {
    font-size: 20px;
    padding: 15px 0;
  }
}
.products-block .smooth-area {
  background: url(../img/bg_smooth.png) no-repeat center bottom;
  background-size: cover;
  z-index: 1;
  height: 700px;
  position: relative;
  min-width: 1000px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area {
    background-image: url(../img/bg_smooth_sp.png);
    height: 400px;
    min-width: auto;
    padding: 10% 0;
    background-position: 30% bottom;
    background-size: cover;
  }
}
@media only screen and (min-width: 1920px) {
  .products-block .smooth-area {
    height: 900px;
  }
}
.products-block .smooth-area .inner-block {
  position: absolute;
  top: 9%;
  left: 0;
  right: 0;
  width: 1000px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block {
    position: inherit;
    width: 100%;
  }
}
@media only screen and (min-width: 1920px) {
  .products-block .smooth-area .inner-block {
    top: 21%;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn {
  width: 40%;
  margin-left: auto;
}
.products-block .smooth-area .inner-block .smooth-area-inn .type {
  font-size: 23px;
  position: relative;
  color: #63AEC7;
  padding-bottom: 5px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .type {
    font-size: 14px;
    line-height: 1;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn .type::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: -10%;
  background: linear-gradient(-45deg, transparent, #63AEC7 20%, #63AEC7 80%, transparent);
  max-width: 80%;
  width: 100%;
  height: 2px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .type::before {
    width: 100%;
    max-width: inherit;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn .ttl {
  font-size: 35px;
  text-align: left;
  display: inline-block;
  margin: 30px 0 auto 0;
  line-height: 1.4;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .ttl {
    font-size: 18px;
    display: block;
    margin-top: 15px;
    line-height: 1.3;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn .txt-area {
  display: inline-block;
  margin-left: auto;
  margin-top: 10px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .txt-area {
    margin-top: 10px;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn .txt-area li {
  margin-bottom: 10px;
  line-height: 1;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .txt-area li {
    font-size: 12px;
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.4;
    margin-bottom: 5px;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn .btn-area .c-btn {
  width: 280px;
  border: 1px solid #173B47;
  background-color: rgba(255, 255, 255, 0.4);
  font-size: 16px;
  padding: 10px;
  display: block;
  text-align: center;
  color: #173B47;
  position: relative;
  padding-right: 30px;
  margin-top: 20px;
  line-height: 1;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .btn-area .c-btn {
    width: 140px;
    font-size: 11px;
    padding: 5px 10px;
    padding-right: 25px;
    line-height: 1.2;
    margin-top: 10px;
    line-height: 1;
  }
}
.products-block .smooth-area .inner-block .smooth-area-inn .btn-area .c-btn::before {
  content: "";
  position: absolute;
  top: 34%;
  right: 30px;
  background: url(../img/icon_tri_blue.svg) no-repeat center center;
  width: 14px;
  height: 14px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area .inner-block .smooth-area-inn .btn-area .c-btn::before {
    top: 30%;
    right: 20px;
    width: 12px;
    height: 12px;
  }
}
.products-block .smooth-area.moist {
  background-image: url(../img/bg_moist.jpg);
  background-size: cover;
  z-index: 0;
  margin-top: -140px;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area.moist {
    background-image: url(../img/bg_moist_sp.jpg);
    height: 400px;
    min-width: auto;
    padding: 10% 0;
    background-position: 85% bottom;
    background-size: cover;
    margin-top: -22px;
  }
}
@media only screen and (min-width: 1920px) {
  .products-block .smooth-area.moist {
    height: 800px;
    margin-top: -200px;
  }
}
.products-block .smooth-area.moist .inner-block {
  top: 13%;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area.moist .inner-block {
    position: inherit;
  }
}
@media only screen and (min-width: 1920px) {
  .products-block .smooth-area.moist .inner-block {
    top: 30%;
  }
}
.products-block .smooth-area.moist .inner-block .smooth-area-inn {
  margin: 0 auto 0 10%;
}
@media only screen and (max-width: 640px) {
  .products-block .smooth-area.moist .inner-block .smooth-area-inn {
    margin: 0 auto 0 4%;
  }
}
.products-block .smooth-area.moist .inner-block .smooth-area-inn .type {
  color: #EB8290;
}
.products-block .smooth-area.moist .inner-block .smooth-area-inn .type::before {
  background: linear-gradient(-45deg, transparent, #EB8290 20%, #EB8290 80%, transparent);
}
.products-block .smooth-area.moist .inner-block .smooth-area-inn .btn-area .c-btn {
  border-color: #EB8290;
  color: #EB8290;
}
.products-block .smooth-area.moist .inner-block .smooth-area-inn .btn-area .c-btn::before {
  content: "";
  background-image: url(../img/icon_tri_pink.svg);
}
.products-block .other-area {
  padding: 150px 0 0 0;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area {
    padding-top: 80px;
  }
}
.products-block .other-area .other-area-inn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn {
    display: block;
  }
}
.products-block .other-area .other-area-inn .img-area {
  width: 400px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .img-area {
    width: 70%;
    margin: -70px auto 0;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap {
  width: calc(100% - 400px);
  margin-left: -10%;
  margin-bottom: 3%;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap {
    width: 100%;
    margin: 0;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .category {
  font-size: 23px;
  text-align: center;
  position: relative;
  padding-bottom: 5px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .category {
    font-size: 14px;
    line-height: 1;
    padding-bottom: 5px;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .category::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(-45deg, transparent, #717071 20%, #717071 80%, transparent);
  max-width: 60%;
  width: 100%;
  height: 2px;
  margin: auto;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .category::before {
    max-width: inherit;
    width: 50%;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .ttl {
  font-size: 35px;
  text-align: center;
  margin-top: 30px;
  line-height: 1.4;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .ttl {
    font-size: 18px;
    margin-top: 20px;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .txt-area {
  font-size: 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 20px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .txt-area {
    font-size: 12px;
    display: inline-block;
    margin: 10px 0 0 10%;
    width: 70%;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .txt-area li {
  width: 40%;
  margin-top: 10px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .txt-area li {
    width: 100%;
    display: inline-block;
    margin-top: 3px;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .btn-area {
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .btn-area {
    margin-top: 15px;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .btn-area .c-btn {
  width: 280px;
  font-size: 16px;
  padding: 10px;
  border: 1px solid #D19400;
  color: #D19400;
  display: block;
  text-align: center;
  margin: auto;
  line-height: 1;
  padding-right: 20px;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .btn-area .c-btn {
    width: 160px;
    font-size: 11px;
    padding: 5px 20px 5px 10px;
  }
}
.products-block .other-area .other-area-inn .txt-area-wrap .btn-area .c-btn::before {
  content: "";
  position: absolute;
  top: 34%;
  right: 70px;
  background: url(../img/icon_tri_orange.svg) no-repeat center center;
  width: 14px;
  height: 14px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area .other-area-inn .txt-area-wrap .btn-area .c-btn::before {
    top: 25%;
    right: 30px;
    width: 12px;
    height: 12px;
  }
}
.products-block .other-area.treatment-area {
  padding-bottom: 100px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area.treatment-area {
    padding-bottom: 50px;
  }
}
.products-block .other-area.treatment-area .other-area-inn .img-area {
  width: 350px;
  margin-left: 5px;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area.treatment-area .other-area-inn .img-area {
    width: 70%;
    margin: 0 auto;
  }
}
.products-block .other-area.treatment-area .other-area-inn .txt-area-wrap {
  margin-bottom: 8%;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area.treatment-area .other-area-inn .txt-area-wrap .category::before {
    width: 80%;
  }
}
@media only screen and (max-width: 640px) {
  .products-block .other-area.treatment-area .other-area-inn .txt-area-wrap .txt-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.products-block .other-area.treatment-area .other-area-inn .txt-area-wrap .txt-area li {
  width: 23%;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .products-block .other-area.treatment-area .other-area-inn .txt-area-wrap .txt-area li {
    width: 40%;
  }
}
@media only screen and (max-width: 640px) {
  .products-block .other-area.treatment-area .other-area-inn .txt-area-wrap .btn-area {
    margin-top: 15px;
  }
}

/* -----------------------------------------------
* PRODUCTS
-------------------------------------------------- */
.products .page-ttl-block {
  background: url(../img/bg_page_header.png) no-repeat center bottom;
  padding-bottom: 30px;
  margin-top: 130px;
}
@media only screen and (max-width: 640px) {
  .products .page-ttl-block {
    padding-bottom: 20px;
    margin-top: 70px;
  }
}
.products .page-ttl-block .page-ttl {
  font-size: 33px;
  text-align: center;
  margin-top: 80px;
}
@media only screen and (max-width: 640px) {
  .products .page-ttl-block .page-ttl {
    font-size: 20px;
    margin-top: 30px;
  }
}
.products .about-type-block {
  padding-top: 150px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block {
    padding-top: 60px;
  }
}
.products .about-type-block .about-type-ttl-wrap .type-ttl {
  font-size: 25px;
  color: #EB8290;
  position: relative;
  padding-bottom: 5px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .about-type-ttl-wrap .type-ttl {
    font-size: 16px;
  }
}
.products .about-type-block .about-type-ttl-wrap .type-ttl::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -3%;
  background: linear-gradient(-45deg, transparent, #EB8290 20%, #EB8290 80%, transparent);
  max-width: 60%;
  width: 100%;
  height: 2px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .about-type-ttl-wrap .type-ttl::before {
    max-width: inherit;
    left: -5%;
  }
}
.products .about-type-block .about-type-ttl-wrap .type-ttl .small {
  font-size: 18px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .about-type-ttl-wrap .type-ttl .small {
    font-size: 12px;
  }
}
.products .about-type-block .check-block .concept {
  font-size: 38px;
  margin-top: 50px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .check-block .concept {
    font-size: 20px;
    margin-top: 20px;
  }
}
.products .about-type-block .check-block .chack-box-wrap {
  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;
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .check-block .chack-box-wrap {
    margin-top: 10px;
  }
}
.products .about-type-block .check-block .chack-box-wrap .ttl-area {
  padding: 15px 70px 15px 30px;
  border-right: 1px solid #000;
  font-size: 25px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .check-block .chack-box-wrap .ttl-area {
    padding: 35px 20px 35px 10px;
    border-right: 1px solid #000;
    font-size: 18px;
  }
}
.products .about-type-block .check-block .chack-box-wrap .check-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-left: 70px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .check-block .chack-box-wrap .check-detail {
    display: block;
    padding-left: 20px;
  }
}
.products .about-type-block .check-block .chack-box-wrap .check-detail li {
  width: 50%;
  margin: 5px 0;
  position: relative;
  padding-left: 25px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .check-block .chack-box-wrap .check-detail li {
    width: 100%;
    font-size: 12px;
    margin: 0 0 5px 0;
    padding-left: 20px;
  }
}
.products .about-type-block .check-block .chack-box-wrap .check-detail li::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/icon_check_moist.svg) no-repeat center center;
  max-width: 60%;
  width: 22px;
  height: 20px;
  top: 7%;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .check-block .chack-box-wrap .check-detail li::before {
    width: 17px;
    height: 15px;
  }
}
.products .about-type-block .products-list-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 100px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list-wrap {
    margin-top: 70px;
    display: block;
  }
}
.products .about-type-block .products-list {
  width: 45%;
  margin-bottom: 100px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list {
    width: 100%;
    margin-bottom: 50px;
  }
}
.products .about-type-block .products-list .products-ttl {
  font-size: 20px;
  text-align: center;
  border-bottom: 1px solid #000;
  padding-bottom: 10px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list .products-ttl {
    font-size: 16px;
    padding-bottom: 5px;
    list-style: 1;
  }
}
.products .about-type-block .products-list .ingredients {
  width: 80%;
  margin: auto;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list .ingredients {
    width: 90%;
  }
}
.products .about-type-block .products-list .img-area-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.products .about-type-block .products-list .img-area-wrap .img-area {
  width: 50%;
}
.products .about-type-block .products-list .img-area-wrap.shampoo .img-area {
  width: 40%;
}
.products .about-type-block .products-list .img-area-wrap.shampoo .txt-area {
  margin: 0 0 25px 20px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list .img-area-wrap.shampoo .txt-area {
    margin-left: 10px;
  }
}
.products .about-type-block .products-list .img-area-wrap.refill .img-area {
  margin-top: 50px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list .img-area-wrap.refill .img-area {
    margin-top: 15px;
  }
}
.products .about-type-block .products-list .img-area-wrap.refill .txt-area {
  margin-bottom: 30px;
}
.products .about-type-block .products-list .img-area-wrap .txt-area {
  font-size: 17px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list .img-area-wrap .txt-area {
    font-size: 14px;
  }
}
.products .about-type-block .products-list:nth-of-type(2) .ingredients {
  margin-top: 20px;
}
.products .about-type-block .products-list:nth-of-type(2) .img-area-wrap {
  margin-top: 10px;
}
.products .about-type-block .products-list + .products-list {
  margin-left: 60px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list + .products-list {
    margin-left: 0;
  }
}
.products .about-type-block .products-list:nth-of-type(3) {
  margin-left: 0;
}
.products .about-type-block .products-list.trial-set {
  width: 100%;
}
.products .about-type-block .products-list.trial-set .img-area-wrap {
  margin-top: 40px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list.trial-set .img-area-wrap {
    display: block;
    margin-top: 20px;
  }
}
.products .about-type-block .products-list.trial-set .img-area-wrap .img-area {
  width: 25%;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list.trial-set .img-area-wrap .img-area {
    width: 45%;
    margin: auto;
  }
}
.products .about-type-block .products-list.trial-set .img-area-wrap .txt-area {
  margin: 0 0 30px 30px;
}
@media only screen and (max-width: 640px) {
  .products .about-type-block .products-list.trial-set .img-area-wrap .txt-area {
    text-align: center;
    margin: 15px 0 0 0;
  }
}
.products.smooth .about-type-block .about-type-ttl-wrap .type-ttl {
  color: #63AEC7;
}
.products.smooth .about-type-block .about-type-ttl-wrap .type-ttl::before {
  background: linear-gradient(-45deg, transparent, #63AEC7 20%, #63AEC7 80%, transparent);
}
.products.smooth .about-type-block .check-block .chack-box-wrap .check-detail li::before {
  background-image: url(../img/icon_check_smooth.svg);
}
.products.other .inner-block {
  max-width: 800px;
}
.products.other .about-type-block .about-type-ttl-wrap .type-ttl {
  color: #56401D;
}
.products.other .about-type-block .about-type-ttl-wrap .type-ttl::before {
  background: linear-gradient(-45deg, transparent, #56401D 20%, #56401D 80%, transparent);
  max-width: 100%;
}
.products.other .about-type-block .check-block .chack-box-wrap .check-detail {
  display: block;
}
.products.other .about-type-block .check-block .chack-box-wrap .check-detail li {
  display: block;
  width: 100%;
}
.products.other .about-type-block .check-block .chack-box-wrap .check-detail li::before {
  background-image: url(../img/icon_check_other.svg);
}
.products.other .about-type-block .products-list {
  width: 100%;
  margin-top: 80px;
}
.products.other .about-type-block .products-list .img-area-wrap .img-area {
  width: 30%;
}
.products.other .about-type-block .products-list .img-area-wrap .txt-area {
  margin-bottom: 80px;
}
@media only screen and (max-width: 640px) {
  .products.other.oil .about-type-block .check-block .chack-box-wrap .ttl-area {
    padding: 10px 20px 10px 10px;
  }
}
@media only screen and (max-width: 640px) {
  .products.other.oil .about-type-block .products-list {
    margin-top: 30px;
  }
}
.products.other.oil .about-type-block .products-list .img-area-wrap .img-area {
  width: 43%;
}
@media only screen and (max-width: 640px) {
  .products.other.oil .about-type-block .products-list .img-area-wrap .img-area {
    width: 55%;
    margin-left: -15%;
  }
}
.products.other.oil .about-type-block .products-list .img-area-wrap .txt-area {
  margin: 0 0 50px -30px;
}
@media only screen and (max-width: 640px) {
  .products.other.water .about-type-block .check-block .chack-box-wrap .ttl-area {
    padding: 10px 20px 10px 10px;
  }
}
@media only screen and (max-width: 640px) {
  .products.other.water .about-type-block .products-list {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 640px) {
  .products.other.water .about-type-block .products-list .img-area-wrap .img-area {
    width: 35%;
    margin-left: -10%;
  }
}
@media only screen and (max-width: 640px) {
  .products.other.water .about-type-block .products-list .img-area-wrap .txt-area {
    margin-bottom: 50px;
  }
}

/* -----------------------------------------------
* Page エントリーポイント
-------------------------------------------------- */