@charset "UTF-8";

/* pulp-regeneration
---------------------------------------------------------------------------*/
.title-sub strong {
  font-size: 17px;
}

/* .pulp-regeneration-lead
------------------------------------*/
.pulp-regeneration-lead {
  margin: 0 auto 135px;
  padding-top: 135px;
}

.pulp-regeneration-lead .inner1 {
  display: flex;
	justify-content: space-between;
  width: 960px;
  margin: 0 auto 80px;
}

.pulp-regeneration-lead .inner1 figure {
  width: 495px;
  min-width: 495px;
}

.pulp-regeneration-lead .inner1 .txt {
  padding: 2px 0 0 50px;
}

.pulp-regeneration-lead .inner1 h2 {
  margin-bottom: 15px;
}

.pulp-regeneration-lead .inner1 h3,
.pulp-regeneration-lead .inner2 h3 {
  margin: 0 0 22px -2px;
  font-size: 30px;
  line-height: 1.65;
  letter-spacing: 0.1em;
}

.pulp-regeneration-lead .inner1 p,
.pulp-regeneration-lead .inner2 .txt p {
  margin-bottom: 12px;
  margin-left: 1px;
  font-size: 16px;
  line-height: 2.15;
  letter-spacing: 0.11em;
  text-align: justify;
}

.pulp-regeneration-lead .inner2 {
  display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
  width: 960px;
  margin: 0 auto;
}

.pulp-regeneration-lead .inner2 .img {
  position: relative;
  width: 430px;
  margin-right: -15px;
}

.pulp-regeneration-lead .inner2 .img2 {
  display: block;
}

.pulp-regeneration-lead .inner2 .img3 {
  display: block;
  margin: 64px 0 0 70px;
}

.pulp-regeneration-lead .inner2 .img b {
  display: block;
  position: absolute;
  top: 109px;
  left: 116px;
  color: #7FA401;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.08em;
}

.pulp-regeneration-lead .inner2 .txt {
  padding: 5px 35px 0 28px;
}

.pulp-regeneration-lead .inner2 .txt p {
  line-height: 2.2;
  text-align: left;
}

.pulp-regeneration-lead .inner2 .btn-arrow {
  margin: 35px 0 0 -2px;
}

/* .pulp-regeneration-merit
------------------------------------*/
.pulp-regeneration-merit {
  margin: 0 auto 125px;
}

.pulp-regeneration-merit .message {
  height: 510px;
  margin-bottom: 110px;
}

.pulp-regeneration-merit .message .txt1:after,
.pulp-regeneration-merit .message .txt4:after {
  left: 60px;
  transform: scaleX(-1);
}

.pulp-regeneration-merit .message .txt1:after {
  left: 85px;
}

.pulp-regeneration-merit .message .txt2:after,
.pulp-regeneration-merit .message .txt3:after,
.pulp-regeneration-merit .message .txt5:after {
  right: 55px;
}

.pulp-regeneration-merit .message .txt3:after {
  right: 75px;
}

.pulp-regeneration-merit .message .txt1 { top: 39px; left: 60px; }
.pulp-regeneration-merit .message .txt2 { top: 0px; left: 535px; }
.pulp-regeneration-merit .message .txt3 { top: 274px; left: 0px; }
.pulp-regeneration-merit .message .txt4 { top: 197px; left: 486px; }
.pulp-regeneration-merit .message .txt5 { top: 386px; left: 435px; }

.pulp-regeneration-merit figure {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0 33px;
}

/* .pulp-regeneration-flow
------------------------------------*/
.pulp-regeneration-flow {
  width: 940px;
  margin: 0 auto 140px;
}

.pulp-regeneration-flow h2 {
  margin: 0 0 55px 10px;
  font-size: 22px;
  letter-spacing: 0.18em;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.3em;
}

.pulp-regeneration-flow .flow {
  position: relative;
  width: 940px;
  height: 680px;
  margin: 0 auto 80px;
}

.pulp-regeneration-flow picture {
  display: block;
}

.pulp-regeneration-flow picture img {
  display: block;
  opacity: 0;
}

.pulp-regeneration-flow .multiply {
  mix-blend-mode: multiply !important;
}

.pulp-regeneration-flow .flow-start {
  position: absolute;
  top: 0;
  left: 347px;
  width: 223px;
}

.pulp-regeneration-flow .flow-start a {
  pointer-events: none;
}

.pulp-regeneration-flow .txt-old {
  position: absolute;
  top: 81px;
  left: -101px;
}

.pulp-regeneration-flow .pic-old1 {
  position: absolute;
  top: 119px;
  left: -74px;
}

.pulp-regeneration-flow .txt-new {
  position: absolute;
  top: 48px;
  right: -143px;
}

.pulp-regeneration-flow .pic-new1 {
  position: absolute;
  top: 94px;
  right: -119px;
}

.pulp-regeneration-flow .pic-old2 {
  position: absolute;
  top: 36px;
  left: 30px;
}

.pulp-regeneration-flow .pic-old3 {
  position: absolute;
  top: 236px;
  left: 0px;
}

.pulp-regeneration-flow .pic-new2 {
  position: absolute;
  top: 58px;
  right: -51px;
}

.pulp-regeneration-flow .pic-new3 {
  position: absolute;
  top: 206px;
  right: -24px;
}

.pulp-regeneration-flow .pic-new4 {
  position: absolute;
  top: 403px;
  right: 47px;
}

.pulp-regeneration-flow .pic-new5 {
  position: absolute;
  top: 410px;
  right: 225px;
}

.pulp-regeneration-flow .pic-new5-line {
  position: absolute;
  top: 232px;
  right: 525px;
}

.pulp-regeneration-flow .pic-new6 {
  position: absolute;
  top: 456px;
  right: 570px;
}

/* .pulp-regeneration-fee
------------------------------------*/
.pulp-regeneration-fee {
  box-sizing: border-box;
  background-color: #F6EFDD;
  width: 100%;
  margin-bottom: 105px;
  padding: 95px 0;
}

.pulp-regeneration-fee .sec-inner {
  width: 900px;
  margin: 0 auto;
}

.pulp-regeneration-fee h2 {
  margin-bottom: 25px;
}

.pulp-regeneration-fee h4 {
  margin-bottom: 19px;
  color: #7FA401;
  font-size: 17px;
  letter-spacing: 0.15em;
}

.pulp-regeneration-fee p {
  font-size: 15px;
  letter-spacing: 0.15em;
}

.pulp-regeneration-fee table {
  margin: 30px 0 45px -5px;
}

.pulp-regeneration-fee .box {
  display: inline-block;
  background-color: #FDFBF2;
  border-radius: 4px;
  margin: 0 0 15px;
  padding: 16px 28px 16px 34px;
}

/* .pulp-regeneration-contact
------------------------------------*/
.pulp-regeneration-contact {
  display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
  width: 900px;
  margin: 0 auto;
}

.pulp-regeneration-contact figure {
  width: 360px;
  min-width: 360px;
  margin-top: 52px;
}

.pulp-regeneration-contact h2 {
  margin-bottom: 26px;
}

.pulp-regeneration-contact h3 {
  margin-bottom: 18px;
  font-size: 22px;
  line-height: 1.9;
  letter-spacing: 0.2em;
}

.pulp-regeneration-contact p {
  font-size: 15px;
  line-height: 2.2;
  letter-spacing: 0.12em;
}