.ledeArea {
  background-color: #fefbf5;
}
.ledeArea .ledeTxt .otherLine {
  display: block;
}
@media screen and (max-width: 767px) {
  .ledeArea .ledeTxt .otherLine {
    margin-top: 1.8em;
  }
}

.hanedaArea {
  background: #fefbf5;
  padding: 140px 0 100px;
}
@media screen and (max-width: 767px) {
  .hanedaArea {
    padding: calc( 110/780 * 100vw) 0 calc( 80/780 * 100vw);
  }
}
.hanedaArea .areaInner {
  margin: 0 auto;
  width: calc( 1720/1920 * 100vw);
}
@media screen and (max-width: 767px) {
  .hanedaArea .areaInner {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .floorGuide {
    padding: 0 calc( 50/780 * 100vw);
  }
}
.floorGuide::before, .floorGuide::after {
  content: "";
  display: block;
  width: 100%;
  height: 10px;
}
@media screen and (max-width: 767px) {
  .floorGuide::before, .floorGuide::after {
    height: 10px;
  }
}
.floorGuide::before {
  background: url("/assets/img/factory/bg_jagged_top.png") no-repeat left top/100%;
}
.floorGuide::after {
  background: url("/assets/img/factory/bg_jagged_btm.png") no-repeat left bottom/100%;
}
.floorGuide .guideInner {
  background: url("/assets/img/factory/bg_jagged_mid.png") repeat-y left top/100%;
  padding: 5.2325581395% 1.1627906977% 135px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .floorGuide .guideInner {
    padding: calc( 67/780 * 100vw) calc( 20/780 * 100vw);
  }
}
.floorGuide .guideInner::before {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 0;
  right: 0;
  content: "";
  display: block;
  background: url("/assets/img/factory/bg_leaf.png") no-repeat center top/100%;
  width: calc( 1542/1920 * 100vw);
  height: calc( 19/1920 * 100vw);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .floorGuide .guideInner::before {
    width: calc( 670/780 * 100vw);
    height: calc( 18/780 * 100vw);
    background-size: cover;
  }
}

.img1f {
  position: relative;
  width: 101.1176470588%;
  margin: -2.9411764706% 0 0 -4.1176470588%;
}
@media screen and (max-width: 1280px) {
  .img1f {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .img1f {
    width: calc( 750/780 * 100vw);
    margin: 0 0 0 calc( -50/780 * 100vw);
  }
}

.img2f {
  position: relative;
  width: 85.1764705882%;
  margin: 4.1176470588% 0 0 7.4117647059%;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .img2f {
    width: calc( 710/780 * 100vw);
    margin: 0 0 0 calc( -25/780 * 100vw);
  }
}

.imgProcess {
  position: relative;
  width: 96.3529411765%;
  margin: 7.6470588235% 0 0 2.3529411765%;
}
@media screen and (max-width: 767px) {
  .imgProcess {
    width: calc( 520/780 * 100vw);
    margin: calc( 90/780 * 100vw) auto 0;
  }
}

.img4f {
  position: relative;
  width: 85.7647058824%;
  margin: 3.5294117647% 0 0 6.4705882353%;
}
@media screen and (max-width: 767px) {
  .img4f {
    width: calc( 714/780 * 100vw);
    margin: 0 0 0 calc( -28/780 * 100vw);
  }
}

.floorBlock {
  background-color: #fff;
  position: relative;
}
.floorBlock + .floorBlock:not(:nth-child(3)) {
  border-top: 1px solid #b7d332;
}
.floorBlock .textWrap {
  margin-left: 11.1764705882%;
}
@media screen and (max-width: 767px) {
  .floorBlock .textWrap {
    margin-left: calc( 18/780 * 100vw);
  }
}
.floorBlock .head {
  display: flex;
  align-items: flex-start;
}
.floorBlock .floorIcon {
  width: 140px;
  flex-shrink: 0;
  margin-right: 55px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .floorBlock .floorIcon {
    width: calc( 100/780 * 100vw);
    margin-right: calc( 40/780 * 100vw);
  }
}
.floorBlock .floorName {
  color: #00853c;
  font-size: 4rem;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .floorBlock .floorName {
    font-size: calc( 40/780 * 100vw);
  }
}
.floorBlock .floorText {
  line-height: 2.25;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .floorBlock .floorText {
    font-size: calc( 26/780 * 100vw);
    line-height: 1.7692307692;
    margin-top: calc( 28/780 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .floorBlock .floorImg {
    margin-top: calc( 46/780 * 100vw);
  }
}
.floorBlock.block01 {
  padding-bottom: 7.0588235294%;
}
@media screen and (max-width: 767px) {
  .floorBlock.block01 {
    padding-bottom: calc( 76/780 * 100vw);
  }
}
.floorBlock.block02 {
  padding-top: 5.8823529412%;
  padding-bottom: 1.1764705882%;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .floorBlock.block02 {
    padding-top: calc( 70/780 * 100vw);
    padding-bottom: calc( 20/780 * 100vw);
  }
}
.floorBlock.block02 .hasLine {
  position: absolute;
  width: 10px;
  height: 15.2941176471%;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -2.3529411765%;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .floorBlock.block02 .hasLine {
    height: calc( 104/780 * 100vw);
    bottom: 0;
  }
}
.floorBlock.block02 .hasLine::before, .floorBlock.block02 .hasLine::after {
  content: "";
  display: block;
  background-color: #00853c;
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.floorBlock.block02 .hasLine::before {
  border-radius: 50%;
  width: 10px;
  height: 10px;
  top: 0;
}
.floorBlock.block02 .hasLine::after {
  width: 2px;
  height: 100%;
  bottom: 0;
  top: 0;
}
.floorBlock.blockProcess {
  padding-top: 3.5294117647%;
  padding-bottom: 7.6470588235%;
}
@media screen and (max-width: 767px) {
  .floorBlock.blockProcess {
    padding-top: calc( 20/780 * 100vw);
    padding-bottom: calc( 66/780 * 100vw);
  }
}
.floorBlock.block04 {
  padding-top: 5.8823529412%;
}
@media screen and (max-width: 767px) {
  .floorBlock.block04 {
    padding-top: calc( 70/780 * 100vw);
  }
}
.floorBlock .heading {
  border-bottom: 8px solid #00853c;
  color: #00853c;
  font-size: 4rem;
  font-weight: bold;
  display: table;
  margin: 0 auto;
  text-align: center;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .floorBlock .heading {
    border-width: calc( 8/780 * 100vw);
    font-size: calc( 24/780 * 100vw);
  }
}
.floorBlock .headingTxt {
  margin-top: 1.7647058824%;
  font-size: 1.6rem;
  line-height: 2.25;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .floorBlock .headingTxt {
    margin-top: calc( 30/780 * 100vw);
    font-size: calc( 26/780 * 100vw);
    line-height: 1.7692307692;
  }
}