@charset "UTF-8";
/*=======================================
                  PC   
========================================*/
/* fonts */
/* fonts-size */
/* color */
/*=======================================
 	        animation
 ========================================*/
.inview {
  visibility: hidden;
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  opacity: 0;
}

.inview.active {
  visibility: visible;
  opacity: 1;
}

.inview02 {
  -webkit-transition: 2000ms;
  transition: 2000ms;
  visibility: hidden;
  opacity: 0;
}

.inview02.active {
  visibility: visible;
  opacity: 1;
}

#wrapper .description h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.8666;
  letter-spacing: 0.07em;
  margin-bottom: 2.9rem;
}

#wrapper .description h3 span {
  font-weight: bold;
}

#wrapper .description p {
  font-size: 1.3rem;
  line-height: 2;
  letter-spacing: 0.025em;
  color: #333333;
}

#wrapper .img01 {
  position: relative;
}

#wrapper .img01::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
}

#wrapper .img02 {
  position: relative;
}

#wrapper .img02::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
}

/* ===================
	　 firstview
=================== */
#firstview {
  text-align: center;
  position: relative;
  margin: 0 auto 11.4rem;
}

#firstview a {
  display: block;
}

#firstview .fv-img {
  width: 120rem;
  position: relative;
  margin: 0 auto 11.1rem;
}

#firstview p {
  font-size: 1.4rem;
  line-height: 2.29;
  margin-top: 1.4rem;
}

/* ===================
	　 section01
=================== */
.sec01 {
  position: relative;
  margin-bottom: 15rem;
}

.sec01 .cont1 {
  width: 96rem;
  margin: 0 auto 5.9rem;
}

.sec01 .cont1 .img01 {
  width: 52.8rem;
  margin-left: 6rem;
}

.sec01 .cont1 .img01::before {
  background-image: url("../img/heading01.svg");
  width: 24.8rem;
  height: 7.5rem;
  top: 6.8rem;
  left: -15.8rem;
}

.sec01 .cont1 .description {
  margin-top: 38.3rem;
}

.sec01 .cont1 .description h3 span:nth-child(1) {
  letter-spacing: -0.05em;
}

.sec01 .cont1 .description h3 span:nth-child(2) {
  letter-spacing: -0.05em;
  margin-left: -0.2rem;
}

.sec01 .cont1 .description h3 span:nth-child(4) {
  letter-spacing: 0.05em;
  margin-left: -0.2rem;
}

.sec01 .cont2 {
  margin-left: 31rem;
}

.sec01 .cont2 .img02 {
  width: 40.2rem;
}

.sec01 .cont2 .img02::before {
  background-image: url("../img/decolation01.svg");
  width: 9rem;
  height: 3.7rem;
  top: 8.8rem;
  left: 4.4rem;
}

.sec01 .cont2 .description {
  margin-left: 6rem;
  margin-top: 32.4rem;
}

.sec01 .cont2 .description .price {
  margin-top: 1.9rem;
}

/* ===================
	　 section02
=================== */
.sec02 {
  margin-bottom: 14.6rem;
  margin-left: 13rem;
}

.sec02 .cont1 {
  width: 60rem;
  margin-left: 2.3rem;
}

.sec02 .cont1 .img01 {
  width: 60rem;
  margin-bottom: 5.3rem;
}

.sec02 .cont1 .img01::before {
  background-image: url("../img/heading02.svg");
  width: 34.5rem;
  height: 8.4rem;
  top: 30.1rem;
  left: -11.8rem;
}

.sec02 .cont1 .description {
  margin-left: 12rem;
}

.sec02 .cont1 .description .price {
  margin-top: 1.9rem;
}

.sec02 .cont1 .description h3 span:nth-child(1) {
  letter-spacing: 0.01em;
}

.sec02 .cont1 .description h3 span:nth-child(3) {
  letter-spacing: -0.015em;
}

.sec02 .cont1 .description h3 span:nth-child(4) {
  letter-spacing: -0.08em;
  margin-left: -0.1rem;
}

.sec02 .cont2 {
  margin-top: 74rem;
}

.sec02 .cont2 .img02 {
  width: 36rem;
  margin-bottom: 5.4rem;
}

.sec02 .cont2 .img02::before {
  background-image: url("../img/decolation02.svg");
  width: 7rem;
  height: 1.7rem;
  top: 27.2rem;
  left: 6.4rem;
}

.sec02 .cont2 .description {
  margin-left: 6rem;
}

.sec02 .cont2 a {
  width: 36rem;
  display: block;
}

/* ===================
	　 section03
=================== */
.sec03 {
  margin-bottom: 27rem;
  margin-left: 31rem;
}

.sec03 .cont1 .img01 {
  width: 48rem;
  margin-bottom: 5.3rem;
}

.sec03 .cont1 .img01::before {
  background-image: url("../img/heading03.svg");
  width: 24.9rem;
  height: 7.4rem;
  top: 24.8rem;
  right: -22rem;
}

.sec03 .cont1 .description .price {
  margin-top: 1.9rem;
}

.sec03 .cont1 .description h3 span:nth-child(1) {
  letter-spacing: -0.06em;
  margin-left: -0.2rem;
}

.sec03 .cont1 .description h3 span:nth-child(3) {
  letter-spacing: -0.03em;
}

.sec03 .cont1 .description h3 span:nth-child(4) {
  letter-spacing: -0.01em;
  margin-left: -0.2rem;
}

.sec03 .cont2 {
  margin-top: 70rem;
  margin-left: 3.7rem;
}

.sec03 .cont2 .img02 {
  width: 36rem;
  margin-bottom: 5.3rem;
  margin-left: 12rem;
}

/* ===================
	　 section04
=================== */
.sec04 {
  margin-bottom: 14.6rem;
}

.sec04 .cont1 {
  margin-left: 29rem;
  margin-bottom: 6rem;
}

.sec04 .cont1 .img01 {
  width: 52.8rem;
  margin-left: -8.3rem;
}

.sec04 .cont1 .img01::before {
  background-image: url("../img/heading04.svg");
  width: 38.4rem;
  height: 6.2rem;
  top: -12.2rem;
  left: -17.2rem;
}

.sec04 .cont1 .img01::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
  background-image: url("../img/decolation04.svg");
  width: 7rem;
  height: 1.7rem;
  top: 39.4rem;
  right: 10.8rem;
}

.sec04 .cont1 .description {
  margin-top: 29.3rem;
  z-index: 2;
}

.sec04 .cont1 .description .price {
  margin-top: 2rem;
}

.sec04 .cont1 .description h3 span:nth-child(1) {
  letter-spacing: 0.01em;
}

.sec04 .cont1 .description h3 span:nth-child(3) {
  letter-spacing: -0.15em;
}

.sec04 .cont1 .description h3 span:nth-child(4) {
  letter-spacing: -0.01em;
}

.sec04 .cont1 .description h3 span:nth-child(5) {
  letter-spacing: -0.05em;
  margin-left: -0.3rem;
}

.sec04 .cont2 {
  margin-left: 20rem;
}

.sec04 .cont2 .img02 {
  width: 40.2rem;
}

.sec04 .cont2 .img02::before {
  background-image: url("../img/decolation03.svg");
  width: 15rem;
  height: 6.8rem;
  top: 30.6rem;
  left: -11.4rem;
}

.sec04 .description {
  margin-top: 35rem;
  margin-left: 6rem;
}

.staff {
  text-align: center;
}

.staff p {
  font-family: 'Cardo', serif;
  font-size: 1.2rem;
  line-height: 1.8333;
  letter-spacing: 0.025em;
}

/* for SP */
@media screen and (max-width: 767px) {
  #wrapper .description h3 {
    font-size: calc(30* (100vw / 750));
    line-height: 1.9333;
    letter-spacing: 0.07em;
    margin-bottom: calc(26* (100vw / 750));
  }
  #wrapper .description p {
    font-size: calc(26* (100vw / 750));
  }
  /* ===================
	　 firstview
=================== */
  #firstview {
    margin: 0 auto calc(277* (100vw / 750));
  }
  #firstview .fv-img {
    width: 100%;
    margin: 0 auto calc(107* (100vw / 750));
  }
  #firstview p {
    font-size: calc(28* (100vw / 750));
    line-height: 2;
    margin-top: 0;
  }
  /* ===================
	　 section01
=================== */
  .sec01 {
    margin-bottom: calc(172* (100vw / 750));
  }
  .sec01 .cont1 {
    width: 100%;
    margin: 0 auto calc(62* (100vw / 750));
  }
  .sec01 .cont1 .img01 {
    width: calc(636* (100vw / 750));
    margin-left: auto;
  }
  .sec01 .cont1 .img01::before {
    width: calc(373* (100vw / 750));
    height: calc(111* (100vw / 750));
    top: calc(-165* (100vw / 750));
    left: calc(1* (100vw / 750));
  }
  .sec01 .cont1 .description {
    margin-top: calc(55* (100vw / 750));
    margin-left: calc(40* (100vw / 750));
  }
  .sec01 .cont1 .description h3 span:nth-child(1) {
    letter-spacing: -0.05em;
  }
  .sec01 .cont1 .description h3 span:nth-child(2) {
    letter-spacing: -0.05em;
    margin-left: -0.2rem;
  }
  .sec01 .cont1 .description h3 span:nth-child(4) {
    letter-spacing: 0.05em;
    margin-left: -0.2rem;
  }
  .sec01 .cont2 {
    margin-left: calc(40* (100vw / 750));
  }
  .sec01 .cont2 .img02 {
    width: calc(522* (100vw / 750));
  }
  .sec01 .cont2 .img02::before {
    background-image: url(../img/sp_decolation01.svg);
    width: calc(178* (100vw / 750));
    height: calc(71* (100vw / 750));
    top: calc(96* (100vw / 750));
    left: calc(32* (100vw / 750));
  }
  .sec01 .cont2 .description {
    margin-left: 0;
    margin-top: calc(57* (100vw / 750));
  }
  .sec01 .cont2 .description .price {
    margin-top: calc(18* (100vw / 750));
  }
  /* ===================
	　 section02
=================== */
  .sec02 {
    margin-bottom: calc(171* (100vw / 750));
    margin-left: 0;
  }
  .sec02 .cont1 {
    width: 100%;
    margin-left: 0;
  }
  .sec02 .cont1 .img01 {
    width: 100%;
    margin-bottom: calc(55* (100vw / 750));
  }
  .sec02 .cont1 .img01::before {
    background-image: url(../img/sp_heading02.svg);
    width: calc(469* (100vw / 750));
    height: calc(126* (100vw / 750));
    top: calc(62* (100vw / 750));
    left: calc(43* (100vw / 750));
  }
  .sec02 .cont1 .description {
    margin-left: calc(60* (100vw / 750));
  }
  .sec02 .cont1 .description .price {
    margin-top: 1.9rem;
  }
  .sec02 .cont1 .description h3 span:nth-child(1) {
    letter-spacing: 0;
  }
  .sec02 .cont1 .description h3 span:nth-child(3) {
    letter-spacing: -0.04em;
    margin-right: calc(4* (100vw / 750));
  }
  .sec02 .cont1 .description h3 span:nth-child(4) {
    letter-spacing: -0.07em;
    margin-left: calc(-4* (100vw / 750));
  }
  .sec02 .cont2 {
    margin-top: calc(62* (100vw / 750));
  }
  .sec02 .cont2 .img02 {
    width: calc(468* (100vw / 750));
    margin-bottom: calc(58* (100vw / 750));
    margin-left: calc(222* (100vw / 750));
  }
  .sec02 .cont2 .img02::before {
    display: none;
  }
  .sec02 .cont2 .description {
    margin-left: calc(152* (100vw / 750));
  }
  .sec02 .cont2 a {
    width: calc(468* (100vw / 750));
    display: initial;
  }
  .sec02 .cont2 .price {
    margin-top: calc(19* (100vw / 750));
  }
  /* ===================
	　 section03
=================== */
  .sec03 {
    margin-bottom: calc(336* (100vw / 750));
    margin-left: calc(40* (100vw / 750));
  }
  .sec03 .cont1 .img01 {
    width: calc(576* (100vw / 750));
    margin-bottom: calc(243* (100vw / 750));
  }
  .sec03 .cont1 .img01::before {
    width: calc(374* (100vw / 750));
    height: calc(112* (100vw / 750));
    top: 109.4%;
    right: calc(-93* (100vw / 750));
  }
  .sec03 .cont1 .description .price {
    margin-top: calc(18* (100vw / 750));
  }
  .sec03 .cont1 .description h3 span:nth-child(1) {
    letter-spacing: -0.08em;
    margin-left: calc(-4* (100vw / 750));
    margin-right: calc(3* (100vw / 750));
  }
  .sec03 .cont1 .description h3 span:nth-child(3) {
    letter-spacing: -0.03em;
  }
  .sec03 .cont1 .description h3 span:nth-child(4) {
    letter-spacing: -0.01em;
    margin-left: calc(-4* (100vw / 750));
  }
  .sec03 .cont2 {
    margin-top: calc(62* (100vw / 750));
    margin-left: 0;
  }
  .sec03 .cont2 .img02 {
    width: calc(468* (100vw / 750));
    margin-bottom: calc(57* (100vw / 750));
    margin-left: calc(202* (100vw / 750));
  }
  .sec03 .cont2 .description {
    margin-left: calc(102* (100vw / 750));
  }
  .sec03 .cont2 .description .price {
    margin-top: calc(18* (100vw / 750));
  }
  /* ===================
	　 section04
=================== */
  .sec04 {
    margin-bottom: calc(164* (100vw / 750));
  }
  .sec04 .cont1 {
    margin-left: 0;
    margin-bottom: calc(61* (100vw / 750));
  }
  .sec04 .cont1 .img01 {
    width: calc(635* (100vw / 750));
    margin-left: auto;
    margin-right: auto;
  }
  .sec04 .cont1 .img01::before {
    width: calc(574* (100vw / 750));
    height: calc(93* (100vw / 750));
    top: calc(-165* (100vw / 750));
    left: calc(32* (100vw / 750));
  }
  .sec04 .cont1 .img01::after {
    width: calc(137* (100vw / 750));
    height: calc(32* (100vw / 750));
    top: calc(474* (100vw / 750));
    right: calc(46* (100vw / 750));
  }
  .sec04 .cont1 .description {
    margin-top: calc(56* (100vw / 750));
    margin-left: calc(57* (100vw / 750));
  }
  .sec04 .cont1 .description h3 span:nth-child(1) {
    letter-spacing: 0.01em;
  }
  .sec04 .cont1 .description h3 span:nth-child(3) {
    letter-spacing: -0.15em;
  }
  .sec04 .cont1 .description h3 span:nth-child(4) {
    letter-spacing: -0.01em;
  }
  .sec04 .cont1 .description h3 span:nth-child(5) {
    letter-spacing: -0.06em;
    margin-left: calc(-6* (100vw / 750));
  }
  .sec04 .cont2 {
    margin-left: 0;
  }
  .sec04 .cont2 .img02 {
    width: calc(522* (100vw / 750));
    margin-left: calc(198* (100vw / 750));
  }
  .sec04 .cont2 .img02::before {
    background-image: url(../img/sp_decolation03.svg);
    width: calc(261* (100vw / 750));
    height: calc(129* (100vw / 750));
    top: calc(76* (100vw / 750));
    left: calc(-174* (100vw / 750));
  }
  .sec04 .cont2 .price {
    margin-top: calc(18* (100vw / 750));
  }
  .sec04 .description {
    margin-top: calc(58* (100vw / 750));
    margin-left: calc(128* (100vw / 750));
  }
  .staff p {
    font-size: calc(23* (100vw / 750));
    line-height: 1.7391;
  }
}
/*# sourceMappingURL=style.css.map */