.lp-text-21 {
  display: flex;
  flex-direction: column;
  overflow:hidden;
}

.lp-text-21-content {
  padding: 32px 0;
}
.lp-text-21__title {
  margin: 0;
}
.lp-text-21__remark {
  margin: 16px 0 0 0;
  color: var(--text-color-a-05);
}
.lp-text-21-text-wrapper {
  margin-top: 48px;
}
.lp-text-21__text {
  padding: 0;
  margin-bottom: 32px;
}
.lp-text-21__text:last-child {
  margin-bottom: 0;
}

.lp-text-21__pic-part {
	height: 160px;
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.lp-text-21__pic-part img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lp-text-21 .lp-text-21__text {box-sizing: border-box;}

@media all and (min-width: 600px) {
  .lp-text-21 {
    padding: 0;
  }
  .lp-text-21__pic-part {
  	position: absolute;
  	top: 0;
  	bottom: 0;
  	right: 0;
  	left: calc(50% + 112px);
  	height: auto;
  }
  .lp-text-21-content {
    width: 376px;
    padding: 64px 24px 64px 0;
  }
  .lp-text-21._reverse .lp-text-21-content {
    margin-left: auto;
    padding-right: 0;
    padding-left: 24px;
  }
  .lp-text-21._reverse .lp-text-21__pic-part {
    left: 0;
    right: calc(50% + 112px);
  }
}
@media all and (min-width: 960px) {
  .lp-text-21__pic-part {
    left: calc(50% + 184px);
  }
  .lp-text-21-content {
    width: 592px;
    padding-right: 48px;
  }
  .lp-text-21._2 .lp-text-21-text-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .lp-text-21._2 .lp-text-21__text {
    width: 272px;
  }
  .lp-text-21._reverse .lp-text-21-content {
    padding-left: 48px;
  }
  .lp-text-21._reverse .lp-text-21__pic-part {
    right: calc(50% + 184px);
  }
}
@media all and (min-width: 1200px) {
  .lp-text-21__pic-part {
    left: calc(50% + 208px);
  }
  .lp-text-21-content {
    width: 760px;
    padding: 80px 24px 80px 0;
  }
  .lp-text-21-text-wrapper {
    margin-top: 56px;
  }
  .lp-text-21__text {
    padding-right: 16px;
    margin-bottom: 32px;
  }
  .lp-text-21._2 .lp-text-21__text {
    width: 352px;
  }
  .lp-text-21._reverse .lp-text-21-content {
    padding-left: 24px;
  }
  .lp-text-21._reverse .lp-text-21__pic-part {
    right: calc(50% + 208px);
  }
}
@media all and (min-width: 1380px) {
  .lp-text-21__pic-part {
    left: calc(50% + 236px);
  }
  .lp-text-21-content {
    width: 848px;
    padding-right: 32px;
  }
  .lp-text-21._2 .lp-text-21__text {
    width: 392px;
  }
  .lp-text-21._reverse .lp-text-21-content {
    padding-left: 32px;
  }
  .lp-text-21._reverse .lp-text-21__pic-part {
    right: calc(50% + 236px);
  }
}

.lp-text-21-text-col {
    margin-bottom: 32px;
}