.visually-hidden {
  position: absolute;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  border: 0;
  height: 1px;
  width: 1px;
  overflow: hidden
}
.top-border-link {
  display: inline-block;
  min-width: 200px;
  margin: 20px 4px 0;
  padding: 10px 25px 8px 27px;
  border: 1px solid #41417a;
  color: #41417a;
  font-size: 16px;
  text-decoration: none;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s
}
@media (max-width: 480px) {
  .top-border-link {
    min-width: 0;
    font-size: 14px;
    font-size: 3.73333vw
  }
}
.top-border-link::after {
  content: ' >'
}
.top-border-link:hover {
  background: #41417a;
  color: #fff
}
.top-border-link-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
@media (max-width: 480px) {
  .top-border-link-wrap {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .top-border-link-wrap .top-border-link {
    min-width: 150px;
    margin: 20px 0 0;
    padding: 10px
  }
}
@media (max-width: 480px) and (max-width: 480px) {
  .top-border-link-wrap .top-border-link {
    min-width: 0;
    font-size: 14px;
    font-size: 3.73333vw
  }
}
.color-red {
  color: #b33e5c
}
.bgcolor-red {
  background-color: #fff0f0
}
.font-bold {
  font-weight: bold
}
@media (max-width: 480px) {
  .pc-only {
    display: none
  }
}
@media (min-width: 769px) {
  .pc-none {
    display: none
  }
}
.sp-only {
  display: none
}
@media (max-width: 480px) {
  .sp-only {
    display: block
  }
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    transform: rotate(-45deg) translate(0, 0)
  }
  20% {
    -webkit-transform: rotate(-45deg) translate(-5px, 5px);
    transform: rotate(-45deg) translate(-5px, 5px)
  }
  40% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    transform: rotate(-45deg) translate(0, 0)
  }
}
@keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    transform: rotate(-45deg) translate(0, 0)
  }
  20% {
    -webkit-transform: rotate(-45deg) translate(-5px, 5px);
    transform: rotate(-45deg) translate(-5px, 5px)
  }
  40% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    transform: rotate(-45deg) translate(0, 0)
  }
}
.notes-block {
  background-color: #e61974
}
.notes-block .notes-block-inner {
  width: 100%;
  max-width: 1040px;
  margin: 20px auto;
  padding: 0 20px
}
.notes-block .notes-block-inner a {
	text-decoration: underline;
	color: #ffffff;
}
.notes-block .notes-block-inner a:hover {
	text-decoration: none;
}
.notes-block .notes-block-inner dl {
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #666
}
.notes-block .notes-block-inner dl dt {
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 1.5;
  color: #b33e5c
}
@media (max-width: 480px) {
  .notes-block .notes-block-inner dl dt {
    font-size: 14px;
    font-size: 3.73333vw;
    line-height: 1.4;
    text-align: center
  }
}
.notes-block .notes-block-inner dl dd {
  font-size: 14px;
  line-height: 1.2
}
@media (max-width: 480px) {
  .notes-block .notes-block-inner dl dd {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.3
  }
}
.main-visual-block {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
.main-visual-block .visual-slide {
  position: relative;
  width: 100%;
  height: 0
}
@media (max-width: 480px) {
  .main-visual-block .visual-slide {
    height: 500px
  }
}
.main-visual-block .visual-slide.slide01 {
  background: url(/common/img/top/slider01_l.jpg) no-repeat;
  background-size: cover;
  background-position: center
}
@media (max-width: 1100px) {
  .main-visual-block .visual-slide.slide01 {
    background-image: url(/common/img/top/slider01_m.jpg)
  }
}
@media (max-width: 480px) {
  .main-visual-block .visual-slide.slide01 {
    background-image: url(/common/img/top/slider01_s.jpg);
    background-position: center top
  }
}
.main-visual-block .visual-slide.slide02 {
  background: url(/common/img/top/slider02_l.jpg) no-repeat;
  background-size: cover;
  background-position: center bottom 40%
}
@media (max-width: 1100px) {
  .main-visual-block .visual-slide.slide02 {
    background-image: url(/common/img/top/slider02_m.jpg);
    background-position: center
  }
}
@media (max-width: 480px) {
  .main-visual-block .visual-slide.slide02 {
    background-image: url(/common/img/top/slider02_s.jpg);
    background-position: center top
  }
}
.main-visual-block .visual-slide.slide03 {
  background: url(/common/img/top/slider03_l.jpg) no-repeat;
  background-size: cover;
  background-position: center bottom 40%
}
@media (max-width: 1100px) {
  .main-visual-block .visual-slide.slide03 {
    background-image: url(/common/img/top/slider03_m.jpg);
    background-position: center
  }
}
@media (max-width: 480px) {
  .main-visual-block .visual-slide.slide03 {
    background-image: url(/common/img/top/slider03_s.jpg);
    background-position: center top
  }
}
.main-visual-block .visual-slide.slide04 {
  background: url(/common/img/top/slider04_l.jpg) no-repeat;
  background-size: cover;
  background-position: center bottom 40%
}
@media (max-width: 1100px) {
  .main-visual-block .visual-slide.slide04 {
    background-image: url(/common/img/top/slider04_m.jpg);
    background-position: center
  }
}
@media (max-width: 480px) {
  .main-visual-block .visual-slide.slide04 {
    background-image: url(/common/img/top/slider04_s.jpg);
    background-position: center top
  }
}
.main-visual-block .visual-slide a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
.main-visual-block .slide-dots {
  position: absolute;
  bottom: 80px;
  right: 0;
  width: 500px
}
@media (max-width: 768px) {
  .main-visual-block .slide-dots {
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 100px
  }
}
@media (max-width: 480px) {
  .main-visual-block .slide-dots {
    bottom: 20px
  }
}
.main-visual-block .to-scroll {
  display: none
}
@media (max-width: 480px) {
  .main-visual-block .to-scroll {
    position: absolute;
    bottom: 60px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 2;
    display: inline;
    text-align: center;
    text-decoration: none
  }
  .main-visual-block .to-scroll span {
    position: absolute;
    bottom: -16px;
    left: 50%;
    margin: 0 auto;
    width: 24px;
    height: 24px;
    margin-left: -12px;
    border-left: 1px solid #1e1e1e;
    border-bottom: 1px solid #1e1e1e;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-animation: sdb 2s infinite;
    animation: sdb 2s infinite;
    box-sizing: border-box
  }
}
.slick-dots li button:before {
  font-size: 10px
}
.slick-dotted.slick-slider {
  margin-bottom: 30px
}
.slick-dots {
  position: absolute;
  bottom: -25px;
  left: 0;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: -10px;
  content: "\2022";
  width: 40px;
  height: 40px;
  font-size: 15px;
  line-height: 1.5;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
.slick-dots li.slick-active button:before {
  color: #41417a;
  opacity: 0.9
}
.topics-block {
  margin-top: 40px
}
@media (max-width: 480px) {
  .topics-block .sp-scroll {
    overflow-x: scroll
  }
}
.topics-block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  max-width: 960px;
  margin: 0px auto;
  padding-bottom: 65px;
  border-bottom: 1px dotted #41417a
}
@media (max-width: 480px) {
  .topics-block ul {
    width: 100%;
    padding: 0 20px 30px;
    border-bottom: none
  }
}
.topics-block ul li {
  margin: 0 10px 40px;
  width: calc(33% - 20px);
}
.topics-block ul li a {
  text-decoration: none
}
.topics-block ul li:last-child, .topics-block ul li:nth-last-child(2), .topics-block ul li:nth-last-child(3) {
  margin: 0 10px;
}
@media (max-width: 480px) {
  .topics-block ul li {
    margin: 0 auto 20px;
    width: 90%;
  }
  .topics-block ul li:last-child, .topics-block ul li:nth-last-child(2), .topics-block ul li:nth-last-child(3) {
    margin: 0 auto 20px;
  }
}
.topics-block ul li img {
  width: 100%;
  max-width: 100%;
  padding-bottom: 16px
}
.topics-block ul li p {
  font-size: 14px;
  line-height: 160%;
  margin-bottom: 10px
}
@media (max-width: 480px) {
  .topics-block ul li p {
    font-size: 12px
  }
}
.topics-block ul li .cat {
  display: inline-block;
  padding: 5px 10px;
  font-size: 12px;
  color: #41417a;
  border: 1px solid #41417a
}
@media (max-width: 480px) {
  .topics-block ul li .cat {
    font-size: 10px;
    padding: 3px 5px
  }
}
.topics-block ul.pt2 {
  width: 100%;
}
.topics-block ul.pt2 li {
  width: calc(50% - 10px);
	margin: 0 10px;
}
.topics-block ul.pt2 .thumb {
  text-align: center
}
.topics-block ul.pt2 .txt {
  max-width: 295px;
  margin: 0 auto
}
@media (max-width: 480px) {
  .topics-block ul.pt2 {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .topics-block ul.pt2 li {
    width: 100%;
    margin-bottom: 20px
  }
}
.topics-block ul.pt3 {
  width: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.topics-block ul.pt3 li {
  max-width: 625px;
  width: 100%
}
.topics-block ul.pt3 li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
.topics-block ul.pt3 li a .thumb, .topics-block ul.pt3 li a .txt {
  width: calc(50% - 10px)
}
.topics-block ul.pt3 li .thumb {
  text-align: center
}
@media (max-width: 480px) {
  .topics-block ul.pt3 {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .topics-block ul.pt3 li {
    width: 100%;
    margin-bottom: 20px
  }
}
.about-block {
  width: 100%;
  max-width: 1040px;
  margin: 60px auto 50px;
  padding: 0 30px;
  text-align: center
}
@media (max-width: 480px) {
  .about-block {
    margin: 0 auto 40px;
    width: calc(100% - 40px);
    text-align: left;
    border-top: 1px dotted #41417a;
    padding: 30px 0;
    margin-bottom: 0
  }
}
.about-block p {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 19px;
  line-height: 3
}
@media (max-width: 480px) {
  .about-block p {
    font-size: 16px;
    font-size: 4.26667vw;
    line-height: 2
  }
}
.topics-bnr-block {
  background: #f5f5f5;
  padding: 86px 20px 75px;
  margin: 0 0px 76px
}
@media (max-width: 480px) {
  .topics-bnr-block {
    padding: 50px 20px 40px;
    margin-bottom: 50px;
    margin-left: 0;
    margin-right: 0
  }
}
.topics-bnr-block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  max-width: 1000px;
  margin: 0px auto
}
@media (max-width: 480px) {
  .topics-bnr-block ul {
    display: block
  }
}
.topics-bnr-block ul img {
  width: 100%
}
.topics-bnr-block ul li {
  width: calc(50% - 20px);
	margin: 0 auto;
}
@media (max-width: 480px) {
  .topics-bnr-block ul li {
    width: 100%;
    margin-bottom: 30px
  }
}
.topics-bnr-block ul li a {
  text-decoration: none
}
.topics-bnr-block ul li span {
  display: block;
  padding-top: 15px;
  padding-right: 25px;
  color: #41417a;
  font-size: 18px;
  font-family: "游明朝", YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  position: relative
}
.topics-bnr-block ul li span:after {
  content: '';
  width: 10px;
  height: 10px;
  border-right: 1px solid #41417a;
  border-bottom: 1px solid #41417a;
  display: block;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  right: 20px;
  top: 18px
}
@media (max-width: 480px) {
  .topics-bnr-block ul li span {
    font-size: 15px;
    padding-top: 12px
  }
  .topics-bnr-block ul li span:after {
    width: 10px;
    height: 10px;
    top: 14px;
    right: 0
  }
}
.products-block {
  position: relative;
  margin-bottom: 50px
}
.products-block .slide-wrap {
  position: relative;
  margin-bottom: 80px
}
@media (max-width: 480px) {
  .products-block .slide-wrap {
    margin-bottom: 50px
  }
}
@media (max-width: 480px) {
  .products-block .slide-wrap .slick-slider {
    padding-bottom: 40px
  }
}
.products-block .slide-wrap .slick-dots {
  bottom: -30px
}
@media (max-width: 480px) {
  .products-block .slide-wrap .slick-dots {
    padding: 0 30px
  }
}
.products-block .slide-wrap .slick-dotted.slick-slider {
  margin-bottom: 40px
}
.products-block .slide-wrap .slick-dots li {
  margin: 0 7px;
  width: 10px;
  height: 1px
}
@media (max-width: 480px) {
  .products-block .slide-wrap .slick-dots li {
    margin: 0 3px
  }
}
.products-block .slide-wrap .slick-dots li button {
  width: 8px;
  height: 8px
}
@media (max-width: 480px) {
  .products-block .slide-wrap .slick-dots li button {
    width: 30px
  }
}
.products-block .slide-wrap .slick-dots li button:before {
  content: '';
  background: #d0d0d0;
  opacity: 1;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  left: 0
}
@media (max-width: 480px) {
  .products-block .slide-wrap .slick-dots li button:before {
    width: 6px;
    height: 6px
  }
}
.products-block .slide-wrap .slick-dots li.slick-active button:before {
  background: #41417a
}
@media (max-width: 480px) {
  .products-block .slide-wrap ul li {
    width: 230px
  }
}
.products-block .slide-wrap ul li img {
  display: block;
  margin: 0 auto;
  padding: 0 8% 10px;
  width: 100%;
  max-width: 267px
}
.products-block .slide-wrap ul li a {
  text-decoration: none
}
.products-block .slide-wrap ul li .eng, .products-block .slide-wrap ul li .name {
  padding: 0 8%;
  color: #323232
}
.products-block .slide-wrap ul li .name {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px
}
.products-block .slide-wrap ul li .eng {
  font-size: 12px
}
.products-block .top-border-link-wrap {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.brand-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 600px;
  background-color: #f5f5f5
}
@media (max-width: 480px) {
  .brand-block {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    height: 400px
  }
}
@media (max-width: 320px) {
  .brand-block {
    height: 350px
  }
}
.brand-block .brand-block-inner {
  width: 100%;
  max-width: 1040px;
  margin: 30px auto;
  padding: 0 20px
}
@media (max-width: 480px) {
  .brand-block .brand-block-inner .brand-ttl-wrap {
    margin-bottom: 100px
  }
}
.brand-block .brand-block-inner .brand-ttl-wrap .brand-ttl {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 24px;
  line-height: 1.5;
  text-align: center
}
@media (max-width: 480px) {
  .brand-block .brand-block-inner .brand-ttl-wrap .brand-ttl {
    font-size: 18px;
    font-size: 4.8vw
  }
}
.item-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 40px
}
@media (max-width: 768px) {
  .item-block {
    margin: 0
  }
}
@media (max-width: 608px) {
  .item-block {
    display: block
  }
}
.item-block .item-box {
  position: relative;
  width: 100%;
  height: 0; /*! 表示画像の高さ ÷ 表示画像の幅 × 100 */ padding-top: 26.37%;
  background-position: 0 0;
  background-size: contain;
  background-color: #f2f2f4
}
@media (max-width: 1100px) {
  .item-block .item-box { /*! 表示画像の高さ ÷ 表示画像の幅 × 100 */ padding-top: 50%;
    background-position: right center
  }
}
@media (max-width: 767px) {
  .item-block .item-box:nth-of-type(2) {
    background-position: center center
  }
}
@media (max-width: 608px) {
  .item-block .item-box {
    width: 100%;
    height: 0; /*! 表示画像の高さ ÷ 表示画像の幅 × 100 */ padding-top: 113.33%;
    background-position: 0 0;
    background-size: contain
  }
}
.item-block .item-box .item-box-inner {
  position: absolute;
  text-align: center
}
.item-block .item-box .item-box-inner .item-text {
  margin-bottom: 10px;
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  color: #000
}
@media (max-width: 768px) {
  .item-block .item-box .item-box-inner .item-text {
    font-size: 14px
  }
}
@media (max-width: 767px) {
  .item-block .item-box .item-box-inner .item-text {
    font-size: 8px;
    font-size: 2.13333vw
  }
}
@media (max-width: 608px) {
  .item-block .item-box .item-box-inner .item-text {
    font-size: 14px
  }
}
@media (max-width: 480px) {
  .item-block .item-box .item-box-inner .item-text {
    font-size: 14px;
    font-size: 3.73333vw
  }
}
.item-block .item-box .item-box-inner .item-ttl {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 24px;
  font-weight: normal;
  font-weight: bold;
  line-height: 1.2;
  color: #000
}
@media (max-width: 768px) {
  .item-block .item-box .item-box-inner .item-ttl {
    font-size: 20px
  }
}
@media (max-width: 767px) {
  .item-block .item-box .item-box-inner .item-ttl {
    font-size: 10px;
    font-size: 2.66667vw
  }
}
@media (max-width: 608px) {
  .item-block .item-box .item-box-inner .item-ttl {
    font-size: 20px
  }
}
@media (max-width: 480px) {
  .item-block .item-box .item-box-inner .item-ttl {
    font-size: 20px;
    font-size: 5.33333vw
  }
}
.item-block .item-box:nth-of-type(1) {
  background-image: url(/common/img/top/top_repair_gel_l.jpg)
}
.item-block .item-box:nth-of-type(1) .item-box-inner {
  top: 58px;
  right: 26%
}
@media (max-width: 1500px) {
  .item-block .item-box:nth-of-type(1) .item-box-inner {
    right: 38%
  }
}
@media (max-width: 1100px) {
  .item-block .item-box:nth-of-type(1) {
    background-image: url(/common/img/top/top_repair_gel.jpg)
  }
  .item-block .item-box:nth-of-type(1) .item-box-inner {
    right: auto;
    top: 18%;
    left: 14%
  }
}
@media (max-width: 767px) {
  .item-block .item-box:nth-of-type(1) .item-box-inner {
    top: 20px
  }
}
@media (max-width: 608px) {
  .item-block .item-box:nth-of-type(1) {
    background-image: url(/common/img/top/top_repair_gel_sp.jpg)
  }
  .item-block .item-box:nth-of-type(1) .item-box-inner {
    top: 37px;
    left: auto;
    right: 50px
  }
}
.item-block .item-box:nth-of-type(2) {
  background-image: url(/common/img/top/top_beauty_l.jpg)
}
.item-block .item-box:nth-of-type(2) .item-box-inner {
  bottom: 80px;
  left: 8%
}
@media (max-width: 1100px) {
  .item-block .item-box:nth-of-type(2) {
    background-image: url(/common/img/top/top_beauty.jpg);
    background-position: left center
  }
  .item-block .item-box:nth-of-type(2) .item-box-inner {
    left: auto;
    bottom: 80px;
    right: 30px
  }
}
@media (max-width: 767px) {
  .item-block .item-box:nth-of-type(2) .item-box-inner {
    right: 10px
  }
}
@media (max-width: 608px) {
  .item-block .item-box:nth-of-type(2) {
    background-image: url(/common/img/top/top_beauty_sp.jpg)
  }
  .item-block .item-box:nth-of-type(2) .item-box-inner {
    bottom: 62px;
    right: 20px
  }
}
.trial-block .trial-block-inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding: 30px 40px
}
@media (max-width: 768px) {
  .trial-block .trial-block-inner {
    padding: 60px 40px 0
  }
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner {
    padding: 50px 20px 30px;
    background: -webkit-linear-gradient(bottom, #f5f6f8 0%, #f8f9fb 100%);
    background: linear-gradient(to top, #f5f6f8 0%, #f8f9fb 100%)
  }
}
.trial-block .trial-block-inner .trial-ttl-wrap {
  position: relative;
  margin-bottom: 10px;
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  color: #41417a
}
@media (max-width: 768px) {
  .trial-block .trial-block-inner .trial-ttl-wrap {
    margin-bottom: 20px
  }
}
.trial-block .trial-block-inner .trial-ttl-wrap .trial-ttl-circle {
  position: absolute;
  left: 0;
  top: -32px;
  display: block;
  text-align: center;
  width: 90px;
  height: 90px;
  padding: 34px 0;
  font-size: 18px;
  border: 1px solid #41417a;
  border-radius: 50%;
  z-index: 1
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-ttl-wrap .trial-ttl-circle {
    top: -23px;
    width: 70px;
    height: 70px;
    padding: 27px 0;
    font-size: 15px
  }
}
.trial-block .trial-block-inner .trial-ttl-wrap .trial-ttl {
  margin-left: 95px;
  font-size: 32px;
  line-height: 1
}
@media (max-width: 767px) {
  .trial-block .trial-block-inner .trial-ttl-wrap .trial-ttl {
    font-size: 5vw
  }
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-ttl-wrap .trial-ttl {
    margin-left: 70px;
    font-size: 22px;
    font-size: 5.86667vw
  }
}
@media (max-width: 320px) {
  .trial-block .trial-block-inner .trial-ttl-wrap .trial-ttl {
    font-size: 20px;
    font-size: 5.33333vw
  }
}
.trial-block .trial-block-inner .trial-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-list {
    display: block
  }
}
.trial-block .trial-block-inner .trial-list .trial-list-item {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc(100% / 3);
  flex: 0 0 calc(100% / 3)
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item {
    margin-bottom: 10px
  }
}
.trial-block .trial-block-inner .trial-list .trial-list-item img {
  width: 100%;
  height: auto
}
.trial-block .trial-block-inner .trial-list .trial-list-item a {
  display: block;
  opacity: 1;
  -webkit-transition: all .2s;
  transition: all .2s
}
.trial-block .trial-block-inner .trial-list .trial-list-item a:hover {
  opacity: .8
}
.trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner {
    right: 20px;
    left: 20px
  }
}
@media (max-width: 320px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner {
    right: 10px;
    left: 10px
  }
}
.trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner .item-name {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 18px;
  line-height: 1.3;
  color: #41417a
}
@media (max-width: 768px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner .item-name {
    margin: 0
  }
}
@media (max-width: 767px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner .item-name {
    font-size: 16px
  }
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner .item-name {
    font-size: 18px;
    font-size: 4.8vw
  }
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner .item-name span {
    display: none
  }
}
.trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner p {
  position: absolute;
  right: 0;
  bottom: 3px;
  font-size: 14px;
  color: #41417a
}
@media (max-width: 1100px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner p {
    position: static
  }
}
@media (max-width: 480px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner p {
    position: absolute;
    font-size: 14px;
    font-size: 3.73333vw
  }
}
@media (min-width: 769px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner.repair-gel-trial {
    margin: 0 35px
  }
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner.repair-gel-first {
    margin: 0 30px
  }
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner.foundation-trial {
    margin-left: 20px
  }
}
@media (max-width: 1100px) {
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner.repair-gel-trial {
    margin: 0
  }
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner.repair-gel-first {
    margin: 0
  }
  .trial-block .trial-block-inner .trial-list .trial-list-item .trial-list-inner.foundation-trial {
    margin: 0
  }
}
.banner-block {
  margin: 0 auto
}
.banner-block .sp {
  display: none
}
@media (max-width: 480px) {
  .banner-block .sp {
    display: inline
  }
}
@media (max-width: 480px) {
  .banner-block .pc {
    display: none
  }
}
.banner-block .banner-block-inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 20px
}
.banner-block .banner-block-inner img {
  max-width: 100%
}
.banner-block .banner-block-inner a {
  margin-bottom: 28px;
  display: block
}
@media (max-width: 480px) {
  .banner-block .banner-block-inner a {
    margin-bottom: 15px
  }
}
.banner-block .banner-block-inner .risou-banner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
  border: 1px solid #41417a;
  box-sizing: border-box
}
.banner-block .banner-block-inner .risou-banner a {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc(100% / 2);
  flex: 0 0 calc(100% / 2);
  display: block;
  margin: 0;
  padding: 0;
  -webkit-transition: all .2s;
  transition: all .2s;
  opacity: 1
}
@media screen and (min-width: 0\0) and (-webkit-min-device-pixel-ratio: 0.75), screen and (min-width: 0\0) and (min-resolution: 72dpi) {
  .banner-block .banner-block-inner .risou-banner a {
    width: calc(100% / 2)
  }
}
@media (max-width: 768px) {
  .banner-block .banner-block-inner .risou-banner a:nth-of-type(1) {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 55%;
    flex: 0 0 55%;
    overflow: hidden
  }
  .banner-block .banner-block-inner .risou-banner a:nth-of-type(2) {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 45%;
    flex: 0 0 45%;
    height: 100%;
    padding: 5% 0
  }
}
.banner-block .banner-block-inner .risou-banner a:hover {
  opacity: .8
}
.banner-block .banner-block-inner .risou-banner img {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0
}
@media (max-width: 480px) {
  .banner-block .banner-block-inner .risou-banner .left-banner img.sp-zoom {
    -webkit-transform: scale(1.3, 1.3);
    transform: scale(1.3, 1.3);
    -webkit-transform-origin: center top;
    transform-origin: center top
  }
}
.banner-block .banner-block-inner .risou-banner .right-bunner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 500px;
  height: 188px;
  text-decoration: none;
  text-align: center
}
@media (max-width: 768px) {
  .banner-block .banner-block-inner .risou-banner .right-bunner {
    width: calc(45%);
    height: 100%
  }
}
.banner-block .banner-block-inner .risou-banner .right-bunner img {
  display: block;
  margin: 12px auto;
  width: 280px;
  height: auto
}
@media (max-width: 768px) {
  .banner-block .banner-block-inner .risou-banner .right-bunner img {
    width: 80%;
    height: 80%;
    margin-bottom: 0
  }
}
.banner-block .banner-block-inner .risou-banner .right-bunner .text-top {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 20px;
  color: #41417a
}
@media (max-width: 768px) {
  .banner-block .banner-block-inner .risou-banner .right-bunner .text-top {
    font-size: 15px
  }
}
@media (max-width: 480px) {
  .banner-block .banner-block-inner .risou-banner .right-bunner .text-top {
    font-size: 10px;
    font-size: 2.66667vw
  }
}
.banner-block .banner-block-inner .risou-banner .right-bunner .text-under {
  font-size: 16px
}
@media (max-width: 768px) {
  .banner-block .banner-block-inner .risou-banner .right-bunner .text-under {
    display: none
  }
}
.banner-block .banner-block-inner .other-banner {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  box-sizing: border-box;
  margin-bottom: 33px
}
@media (max-width: 480px) {
  .banner-block .banner-block-inner .other-banner {
    margin-bottom: 20px;
    display: block
  }
}
.banner-block .banner-block-inner .other-banner a {
  display: block;
  margin: 0;
  padding: 0;
  -webkit-transition: all .2s;
  transition: all .2s;
  opacity: 1;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc(100% / 2 - 20px);
  flex: 0 0 calc(100% / 2 - 20px)
}
@media screen and (min-width: 0\0) and (-webkit-min-device-pixel-ratio: 0.75), screen and (min-width: 0\0) and (min-resolution: 72dpi) {
  .banner-block .banner-block-inner .other-banner a {
    width: 100%
  }
}
.banner-block .banner-block-inner .other-banner a:first-of-type {
  margin-right: 20px
}
@media (max-width: 480px) {
  .banner-block .banner-block-inner .other-banner a:first-of-type {
    margin-right: 0;
    margin-bottom: 20px
  }
}
.banner-block .banner-block-inner .other-banner a:hover {
  opacity: .8
}
.banner-block .banner-block-inner .other-banner img {
  width: 100%;
  margin: 0;
  padding: 0
}
@media (max-width: 480px) {
  .banner-block .banner-block-inner .other-banner img {
    width: 100%
  }
}
.btn-block {
  width: 100%;
  max-width: 1040px;
  padding: 0 20px;
  margin: 0 auto 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
@media (max-width: 480px) {
  .btn-block {
    display: block;
    margin-bottom: 40px
  }
}
.btn-block div {
  width: calc(50% - 20px);
  text-align: center;
  box-sizing: border-box;
  border: 1px solid #41417a
}
@media (max-width: 480px) {
  .btn-block div {
    width: 100%;
    margin-bottom: 20px
  }
}
.btn-block div a {
  display: block;
  padding: 20px 0;
  font-size: 22px;
  color: #41417a;
  text-decoration: none;
  font-family: "游明朝", YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  -webkit-transition: all .3s;
  transition: all .3s
}
.btn-block div a:hover {
  background: #41417a;
  color: #fff
}
.btn-block div a span {
  font-size: 16px;
  display: block;
  margin-top: 5px
}
@media (max-width: 480px) {
  .btn-block div a {
    font-size: 14px;
    padding: 15px 0
  }
  .btn-block div a span {
    font-size: 11px;
    margin-top: 2px
  }
}
.media-block {
  width: 100%;
  margin: 0 0 60px;
  padding: 40px 0;
  background-color: #f5f5f5
}
.media-block .media-cov-ttl-wrap {
  margin: 0 auto 20px;
  text-align: center
}
.media-block .media-cov-ttl-wrap .media-cov-ttl {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
  font-size: 25px;
  font-weight: normal
}
@media (max-width: 480px) {
  .media-block .media-cov-ttl-wrap .media-cov-ttl {
    font-size: 20px;
    font-size: 5.33333vw
  }
}
.news-block {
  width: 100%;
  max-width: 1020px;
  margin: 0 auto 80px;
  padding: 0 20px
}
.news-block .news-ttl {
  font-weight: normal;
  line-height: 1.5;
  font-size: 32px;
  font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif
}
@media (max-width: 480px) {
  .news-block .news-ttl {
    font-size: 25px;
    font-size: 6.66667vw
  }
}
.news-block .news-ttl span {
  font-size: 18px;
  padding-left: 20px;
  color: #41417a
}
@media (max-width: 480px) {
  .news-block .news-ttl span {
    font-size: 20px;
    font-size: 5.33333vw;
    padding-left: 15px
  }
}
@media (max-width: 320px) {
  .news-block .news-ttl span {
    letter-spacing: -.03em
  }
}
.news-block .news-ttl.nobr {
  white-space: nowrap
}
.news-block .news-list {
  margin: 10px 0 0;
  line-height: 1.3
}
.news-block .news-list dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px;
  border-top: 1px dotted #ccc
}
@media (max-width: 480px) {
  .news-block .news-list dl {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.4;
    padding: 15px 0
  }
}
.news-block .news-list dl dt {
  margin-right: 50px;
  white-space: nowrap
}
@media (max-width: 480px) {
  .news-block .news-list dl dt {
    margin-right: 20px
  }
}
.news-block .news-list dl dd a {
  text-decoration: none;
  -webkit-transition: all .2s;
  transition: all .2s;
  opacity: 1
}
.news-block .news-list dl dd a:hover {
  text-decoration: underline;
  opacity: .8
}
.news-block .news-link {
  margin-top: 20px;
  text-align: right
}
.news-block .news-link a {
  position: relative;
  padding: 10px 62px 10px 50px;
  font-size: 16px;
  text-decoration: none;
  color: #fff;
  background-color: #41417a;
  -webkit-transition: all .2s;
  transition: all .2s
}
@media (max-width: 480px) {
  .news-block .news-link a {
    padding: 10px 32px 10px 20px;
    font-size: 15px;
    font-size: 4vw
  }
  .news-block .news-link a span {
    display: none
  }
}
.news-block .news-link a:hover {
  background-color: #53539b
}
.news-block .news-link a::after {
  content: '';
  position: absolute;
  top: calc((100% - 12px) / 2);
  right: 2.5em;
  width: 12px;
  height: 12px;
  background: url(/common/img/top/popup_wh.svg) no-repeat;
  background-size: 12px 12px
}
@media (max-width: 480px) {
  .news-block .news-link a::after {
    right: 1em
  }
}