@charset "UTF-8";
/*=======================================
                  PC   
========================================*/
/* fonts */
/* fonts-size */
/* color */
/*=======================================
 	        animation
 ========================================*/
.inview {
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
  opacity: 0;
  -webkit-transform: translateY(3rem);
  transform: translateY(3rem);
}

.inview.active {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

#wrapper {
  color: #333333;
}

#wrapper .img {
  background-color: #fff;
}

.wrapper02 {
  width: 140rem;
  margin: 0 auto;
}

section .description {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 1.3rem;
  font-weight: 400;
  font-style: normal;
  line-height: 2;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.025em;
}

section .credit {
  /*  text-decoration: underline; */
  font-family: orpheuspro, serif;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  margin-top: 1.7rem;
  position: relative;
  display: inline-block;
}

section .credit::before {
  content: "";
  position: absolute;
  background-color: #333333;
  width: 100%;
  height: 0.1rem;
  left: 0;
  right: 0;
  bottom: 0.1rem;
  margin: auto;
}

section .item {
  font-family: "Crimson Text", serif;
  font-size: 2.6rem;
  letter-spacing: 0.025em;
  position: absolute;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  bottom: 12.9rem;
  right: -13.2rem;
}

section .title {
  margin-bottom: 2rem;
}

section .title h3 {
  margin-bottom: 1.3rem;
}

section .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: 1.5rem;
  letter-spacing: 0.06em;
  font-weight: 600;
}

section .sub-ttl {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: bold;
  letter-spacing: 0.025em;
  margin-bottom: 1.9rem;
  color: #000;
}

section .sub-txt {
  font-family: "Crimson Text", serif;
  font-size: 2.2rem;
  font-style: italic;
  letter-spacing: 0.025em;
  -webkit-transform: rotate(-5deg);
          transform: rotate(-5deg);
  margin-bottom: 3.2rem;
}

section h2 {
  font-family: operetta-8, serif;
  font-size: 4rem;
  letter-spacing: 0.025em;
  font-weight: 600;
  position: relative;
  text-align: center;
}

section h2::before {
  content: "";
  position: absolute;
  background-color: #333333;
  width: 120rem;
  height: 0.1rem;
  left: 0;
  right: 0;
  top: 6.5rem;
  margin: auto;
}

section .point {
  font-size: 1.4rem;
  font-family: operetta-8, serif;
  letter-spacing: 0.025em;
  font-weight: 400;
  position: relative;
  padding-left: 2.6rem;
}

section .point::before {
  content: "";
  position: absolute;
  background-image: url("../img/washable.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2rem;
  height: 2rem;
  left: 0;
  top: 0;
  bottom: 0.2rem;
  margin: auto;
}

/* ===================
	　 firstview
=================== */
#firstview {
  margin-bottom: 11.7rem;
  text-align: center;
  position: relative;
}

#firstview .fv-img {
  width: 100%;
  margin: 0 auto 8.2rem;
}

#firstview .description {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.025em;
  line-height: 2;
}

/* ===================
	　 section01
=================== */
.sec01 {
  position: relative;
  margin-bottom: 11.5rem;
}

.sec01 h2 {
  margin-bottom: 8.6rem;
}

.sec01 .cont01 {
  width: 45rem;
  margin: 0 auto 6.2rem;
}

.sec01 .cont01 .movie {
  width: 32.4rem;
  margin: 0 auto 3rem;
}

.sec01 .cont01 .movie video {
  width: 32.4rem;
}

.sec01 .cont01 .description {
  margin-bottom: 3rem;
}

.sec01 .cont01 .img01-all {
  width: 45rem;
  position: relative;
  margin: 0 auto 3.2rem;
}

.sec01 .cont01 .img01-all::before {
  content: "01";
  position: absolute;
  color: #cbcbcb;
  font-family: operetta-8, serif;
  font-size: 8rem;
  right: -5.1rem;
  bottom: -3.9rem;
  z-index: 2;
}

.sec01 .cont01 .img01-all .img01 {
  width: 100%;
  margin: auto;
}

.sec01 .cont02 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 11rem;
}

.sec01 .cont02 .img02 {
  width: 75rem;
}

.sec01 .cont02 .right {
  margin-top: 16.7rem;
  margin-left: -24rem;
  z-index: 2;
}

.sec01 .cont02 .right .sub-txt {
  margin-left: -2rem;
}

.sec01 .cont02 .right .description {
  width: 36rem;
  text-align: justify;
}

.sec01 .cont02 .right .price span {
  border-bottom: 0.1rem solid #808080 !important;
}

.sec01 .cont03 {
  width: 40rem;
  margin-left: 76.5rem;
  margin-bottom: -9.2rem;
}

.sec01 .cont03 .img01-all {
  width: 40rem;
  position: relative;
  margin-bottom: 3.3rem;
}

.sec01 .cont03 .img01-all::before {
  content: "02";
  position: absolute;
  color: #cbcbcb;
  font-family: operetta-8, serif;
  letter-spacing: 0.025em;
  font-size: 8rem;
  right: -6.2rem;
  bottom: -4rem;
  z-index: 2;
}

.sec01 .cont03 .img01-all .img01 {
  width: 100%;
}

.sec01 .cont03 .description {
  text-align: justify;
}

.sec01 .cont03 .item {
  bottom: 15.8rem;
  right: -16.2rem;
}

.sec01 .cont04 {
  width: 67.5rem;
}

.sec01 .cont04 .img01 {
  width: 67.5rem;
  margin-bottom: 2rem;
}

.sec01 .cont04 .description {
  width: 39.5rem;
  text-align: justify;
  margin: auto;
}

.sec01 .cont04 .sub-txt {
  margin-left: 12rem;
  margin-bottom: 4.1rem;
}

.sec01 .cont04 .price {
  margin-left: 14rem;
}

/* ===================
	　 section02
=================== */
.sec02 h2 {
  margin-bottom: 8.6rem;
}

.sec02 .cont01 {
  width: 45rem;
  margin: 0 auto 6.2rem;
}

.sec02 .cont01 .img01-all {
  position: relative;
  width: 45rem;
  margin-bottom: 3.3rem;
}

.sec02 .cont01 .img01-all::before {
  content: "";
  position: absolute;
  background-image: url("../img/number03.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9rem;
  height: 5rem;
  right: -6.5rem;
  bottom: -3rem;
  z-index: 2;
}

.sec02 .cont01 .img01-all .img01 {
  width: 100%;
}

.sec02 .cont01 .img01-all .item {
  bottom: 21.3rem;
  right: -21.8rem;
}

.sec02 .cont01 .description {
  text-align: justify;
  margin-bottom: 3rem;
}

.sec02 .cont01 .point::before {
  background-image: url(../img/multiway.png);
}

.sec02 .cont02 {
  margin-left: 34rem;
  margin-bottom: 15rem;
}

.sec02 .cont02 .description {
  width: 32rem;
}

.sec02 .cont02 .img02 {
  width: 36rem;
  margin-left: 6rem;
}

.sec02 .cont02 .right {
  margin-top: 20rem;
}

.sec02 .cont02 .right .sub-txt {
  margin-left: -2rem;
  margin-bottom: 3.1rem;
}

.sec02 .cont03 {
  margin-left: 20rem;
  margin-bottom: 6.2rem;
}

.sec02 .cont03 .img01-all {
  width: 75rem;
  position: relative;
  margin-bottom: 3.3rem;
}

.sec02 .cont03 .img01-all::before {
  content: "";
  position: absolute;
  background-image: url("../img/number04.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9rem;
  height: 5rem;
  right: -6.5rem;
  bottom: -3rem;
  z-index: 2;
}

.sec02 .cont03 .img01-all .img01 {
  width: 100%;
}

.sec02 .cont03 .img01-all .item {
  bottom: 17.2rem;
  right: -17.6rem;
}

.sec02 .cont03 .sub-ttl {
  margin-left: 12rem;
}

.sec02 .cont03 .description {
  width: 51rem;
  margin-left: 12rem;
  margin-bottom: 3rem;
}

.sec02 .cont03 .point-all {
  margin-left: 12rem;
}

.sec02 .cont03 .point-all .point {
  display: inline-block;
}

.sec02 .cont03 .point-all .point:nth-child(1)::before {
  background-image: url(../img/sustainable.png);
}

.sec02 .cont03 .point-all .point:nth-child(2) {
  padding-left: 4.1rem;
}

.sec02 .cont03 .point-all .point:nth-child(2)::before {
  margin-left: 1.5rem;
}

.sec02 .cont04 {
  margin-left: 46rem;
}

.sec02 .cont04 .img01 {
  width: 36rem;
  margin-left: 6rem;
}

.sec02 .cont04 .description {
  width: 32rem;
}

.sec02 .cont04 .sub-txt {
  margin-left: -2rem;
  margin-bottom: 3rem;
}

.sec02 .cont04 .left {
  margin-top: 25.9rem;
}

/* for SP */
@media screen and (max-width: 767px) {
  .wrapper02 {
    width: 100%;
    margin: 0 auto;
  }
  section .description {
    font-size: calc(26* (100vw / 750));
  }
  section .credit {
    /*  text-decoration: underline; */
    font-family: orpheuspro, serif;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    margin-top: 1.7rem;
    position: relative;
    display: inline-block;
  }
  section .credit::before {
    content: "";
    position: absolute;
    background-color: #333333;
    width: 100%;
    height: 0.1rem;
    left: 0;
    right: 0;
    bottom: 0.1rem;
    margin: auto;
  }
  section .item {
    font-size: calc(44* (100vw / 750));
    bottom: calc(227* (100vw / 750));
    right: calc(-223* (100vw / 750));
  }
  section .title {
    margin-bottom: 2rem;
  }
  section .title h3 {
    margin-bottom: 1.3rem;
  }
  section .ttl {
    font-family: "Noto Serif JP", serif;
    font-size: 1.5rem;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
  section .sub-ttl {
    font-size: calc(28* (100vw / 750));
    margin-bottom: calc(19* (100vw / 750));
    font-weight: 600;
  }
  section .sub-txt {
    font-size: 2.2rem;
    font-style: italic;
    letter-spacing: 0.025em;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    margin-bottom: calc(47* (100vw / 750));
  }
  section h2 {
    font-size: calc(70* (100vw / 750));
  }
  section h2::before {
    width: calc(700* (100vw / 750));
    height: calc(2* (100vw / 750));
    left: 0;
    right: 0;
    top: calc(92* (100vw / 750));
    margin: auto;
  }
  section .point {
    font-size: calc(26* (100vw / 750));
    padding-left: calc(52* (100vw / 750));
  }
  section .point::before {
    width: calc(40* (100vw / 750));
    height: calc(40* (100vw / 750));
    left: 0;
    top: 0;
    bottom: calc(4* (100vw / 750));
    margin: auto;
  }
  /* ===================
        　 firstview
    =================== */
  #firstview {
    margin-bottom: calc(109* (100vw / 750));
  }
  #firstview .fv-img {
    width: 100%;
    margin: 0 auto calc(108* (100vw / 750));
  }
  #firstview .description {
    font-size: calc(26* (100vw / 750));
  }
  /* ===================
        　 section01
    =================== */
  .sec01 {
    margin-bottom: calc(171* (100vw / 750));
  }
  .sec01 h2 {
    margin-bottom: calc(83* (100vw / 750));
  }
  .sec01 .cont01 {
    width: 100%;
    margin: 0 auto calc(94* (100vw / 750));
  }
  .sec01 .cont01 .movie {
    width: calc(486* (100vw / 750));
    margin: 0 auto calc(32* (100vw / 750));
    margin-left: calc(224* (100vw / 750));
  }
  .sec01 .cont01 .movie video {
    width: calc(486* (100vw / 750));
  }
  .sec01 .cont01 .description {
    width: calc(600* (100vw / 750));
    margin-left: calc(40* (100vw / 750));
    margin-bottom: calc(40* (100vw / 750));
    text-align: justify;
  }
  .sec01 .cont01 .img01-all {
    width: calc(600* (100vw / 750));
    position: relative;
    margin: 0 auto calc(45* (100vw / 750));
    margin-left: calc(40* (100vw / 750));
  }
  .sec01 .cont01 .img01-all::before {
    font-size: calc(144* (100vw / 750));
    right: calc(-97* (100vw / 750));
    bottom: calc(-66* (100vw / 750));
    letter-spacing: 0.025em;
  }
  .sec01 .cont01 .img01-all .img01 {
    width: 100%;
    margin: auto;
  }
  .sec01 .cont01 .sub-ttl {
    margin-left: calc(40* (100vw / 750));
  }
  .sec01 .cont01 .point {
    margin-left: calc(40* (100vw / 750));
  }
  .sec01 .cont02 {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-left: calc(110* (100vw / 750));
    margin-bottom: calc(138* (100vw / 750));
  }
  .sec01 .cont02 .img02 {
    width: calc(600* (100vw / 750));
    margin-bottom: calc(40* (100vw / 750));
  }
  .sec01 .cont02 .right {
    margin-top: 0;
    margin-left: 0;
  }
  .sec01 .cont02 .right .sub-txt {
    margin-left: calc(-29* (100vw / 750));
  }
  .sec01 .cont02 .right .description {
    width: calc(600* (100vw / 750));
  }
  .sec01 .cont02 .right .price span {
    border-bottom: calc(2* (100vw / 750)) solid #cccccc !important;
  }
  .sec01 .cont03 {
    width: 100%;
    margin-left: calc(60* (100vw / 750));
    margin-bottom: calc(79* (100vw / 750));
  }
  .sec01 .cont03 .img01-all {
    width: calc(520* (100vw / 750));
    margin-bottom: calc(47* (100vw / 750));
  }
  .sec01 .cont03 .img01-all::before {
    font-size: calc(144* (100vw / 750));
    right: calc(-115* (100vw / 750));
    bottom: calc(-69* (100vw / 750));
  }
  .sec01 .cont03 .description {
    width: calc(520* (100vw / 750));
  }
  .sec01 .cont03 .item {
    bottom: calc(276* (100vw / 750));
    right: calc(-275* (100vw / 750));
  }
  .sec01 .cont04 {
    width: 100%;
  }
  .sec01 .cont04 .img01 {
    width: calc(600* (100vw / 750));
    margin-bottom: calc(42* (100vw / 750));
    margin-left: calc(120* (100vw / 750));
  }
  .sec01 .cont04 .description {
    width: calc(600* (100vw / 750));
    margin-left: calc(120* (100vw / 750));
  }
  .sec01 .cont04 .sub-txt {
    margin-left: calc(91* (100vw / 750));
    margin-bottom: calc(49* (100vw / 750));
  }
  .sec01 .cont04 .price {
    margin-left: calc(120* (100vw / 750));
    margin-top: calc(18* (100vw / 750)) !important;
  }
  /* ===================
        　 section02
    =================== */
  .sec02 h2 {
    margin-bottom: calc(83* (100vw / 750));
  }
  .sec02 .cont01 {
    width: calc(600* (100vw / 750));
    margin: 0 auto calc(95* (100vw / 750));
    margin-left: 0;
  }
  .sec02 .cont01 .img01-all {
    position: relative;
    width: calc(600* (100vw / 750));
    margin-bottom: calc(47* (100vw / 750));
  }
  .sec02 .cont01 .img01-all::before {
    width: calc(162* (100vw / 750));
    height: calc(90* (100vw / 750));
    right: calc(-120* (100vw / 750));
    bottom: calc(-50* (100vw / 750));
  }
  .sec02 .cont01 .img01-all .item {
    bottom: calc(370* (100vw / 750));
    right: calc(-368* (100vw / 750));
  }
  .sec02 .cont01 .description {
    width: calc(540* (100vw / 750));
    margin-bottom: calc(35* (100vw / 750));
    margin-left: calc(60* (100vw / 750));
  }
  .sec02 .cont01 .point {
    margin-left: calc(60* (100vw / 750));
  }
  .sec02 .cont01 .point::before {
    background-image: url(../img/multiway.png);
  }
  .sec02 .cont01 .sub-ttl {
    margin-left: calc(60* (100vw / 750));
  }
  .sec02 .cont02 {
    margin-left: 0;
    margin-bottom: calc(138* (100vw / 750));
  }
  .sec02 .cont02 .description {
    width: calc(500* (100vw / 750));
    text-align: justify;
  }
  .sec02 .cont02 .img02 {
    width: calc(500* (100vw / 750));
    margin-left: calc(190* (100vw / 750));
    margin-bottom: calc(45* (100vw / 750));
  }
  .sec02 .cont02 .right {
    margin-left: calc(190* (100vw / 750));
    margin-top: 0;
  }
  .sec02 .cont02 .right .sub-txt {
    margin-left: calc(-30* (100vw / 750));
    margin-bottom: calc(46* (100vw / 750));
  }
  .sec02 .cont02 .right .price {
    margin-top: calc(13* (100vw / 750)) !important;
  }
  .sec02 .cont03 {
    margin-left: 0;
    margin-bottom: calc(94* (100vw / 750));
  }
  .sec02 .cont03 .img01-all {
    width: calc(630* (100vw / 750));
    margin-bottom: calc(47* (100vw / 750));
  }
  .sec02 .cont03 .img01-all::before {
    width: calc(162* (100vw / 750));
    height: calc(90* (100vw / 750));
    right: calc(-121* (100vw / 750));
    bottom: calc(-50* (100vw / 750));
  }
  .sec02 .cont03 .img01-all .item {
    bottom: calc(300* (100vw / 750));
    right: calc(-298* (100vw / 750));
  }
  .sec02 .cont03 .sub-ttl {
    margin-left: calc(60* (100vw / 750));
  }
  .sec02 .cont03 .description {
    width: calc(570* (100vw / 750));
    margin-left: calc(60* (100vw / 750));
    margin-bottom: calc(36* (100vw / 750));
    text-align: justify;
  }
  .sec02 .cont03 .point-all {
    margin-left: calc(60* (100vw / 750));
  }
  .sec02 .cont03 .point-all .point::before {
    bottom: calc(5* (100vw / 750));
  }
  .sec02 .cont03 .point-all .point:nth-child(2) {
    padding-left: calc(72* (100vw / 750));
  }
  .sec02 .cont03 .point-all .point:nth-child(2)::before {
    margin-left: calc(20* (100vw / 750));
  }
  .sec02 .cont04 {
    margin-left: calc(190* (100vw / 750));
  }
  .sec02 .cont04 .img01 {
    width: calc(500* (100vw / 750));
    margin-left: 0;
    margin-bottom: calc(42* (100vw / 750));
  }
  .sec02 .cont04 .description {
    width: calc(500* (100vw / 750));
    text-align: justify;
  }
  .sec02 .cont04 .sub-txt {
    margin-left: calc(-30* (100vw / 750));
    margin-bottom: calc(45* (100vw / 750));
  }
  .sec02 .cont04 .left {
    margin-top: 0;
  }
  .sec02 .cont04 .left .price {
    margin-top: calc(15* (100vw / 750)) !important;
  }
}
/*# sourceMappingURL=style.css.map */