.integrated_sec_ttl { font-size: 2rem; line-height: 1.4; margin: 4em 0 1.5em; padding-left: .5em; }
.integrated_sec_ttl span { display: block; height: 68%; padding: 0 1em; margin-right: 1.5em; background-color: #e8cb52; border-top-left-radius: 8px; display: flex; align-items: center; position: relative; }
.integrated_sec_ttl span::before { content: ''; width: 0; height: 0; border-style: solid; border-width: 2.75em 0 0 1em; border-color: transparent transparent transparent #e8cb52; position: absolute; top: 0; left: 100%; }

.integrated_sec_txt.fw_bold { margin-top: 1em; line-height: 1.4; }
.integrated_sec_txt span { display: inline-block; font-size: 80%; line-height: 1.4; }

.strengths_ttl { font-size: 2rem; font-weight: 600; margin-bottom: .5em; }

.notes { font-size: 1.4rem; text-align: right; margin-top: 1em; }

.strengths_wrap { margin-top: 3rem; display: flex; justify-content: space-between; align-items: flex-end; }
.strengths_wrap .img { width: 25%; padding: 0 2%; }
.strengths_wrap .txt_area { width: 75%; padding: 3rem 4rem; background-color: #ebf5f5; border: 2px solid #54b699; border-radius: 20px; position: relative; }
.strengths_wrap .txt_area::before { content: ''; width: 17px; height: auto; aspect-ratio: 17 / 22; background: url(../img/strengths_icon_txt.png) no-repeat center/contain; position: absolute; left: 100%; top: 50%; transform: translateY(-50%); }
.strengths_wrap .txt_area .integrated_sec_txt { line-height: 1.8; }
.strengths_wrap .txt_area .integrated_sec_txt.fw_bold { text-align: right; }
.strengths_wrap.reverse { flex-direction: row-reverse; }
.strengths_wrap.reverse .txt_area::before { left: auto; right: 100%; transform: translateY(-50%) rotateY(-180deg); }
.strengths_wrap.reverse .txt_area .integrated_sec_txt.fw_bold { text-align: left; }

.btn_area { margin-top: 3rem; text-align: right; }
.btn_area a { display: inline-block; color: #fff; font-size: 1.6rem; font-weight: 600; padding: .5em 4em .5em 1em; background: #54b699 url(../img/strengths_icon.png) no-repeat center right 1em/2em; border-radius: 40px; }
.btn_area a:hover { background-color: #e8cb52; }

@media screen and (min-width: 768px) and (max-width: 1240px) { .integrated_sec_ttl { font-size: 1.6vw; }
  .btn_area a { font-size: 1.29vw; } }
@media screen and (max-width: 767px) { #integrated_head.type01 .head_wrap .strengths { margin-top: -4rem; transform: translateX(4rem); }
  .sec_integrated { padding-top: 2rem; }
  .integrated_sec_ttl { font-size: 4.2vw; margin: 3em 0 1em; }
  .integrated_sec_ttl span { border-top-left-radius: 4px; }
  .integrated_sec_ttl span::before { border-width: 3.45em 0 0 1em; }
  .integrated_sec_ttl.line2 { font-size: 4.2vw; }
  .integrated_sec_ttl.line3 { font-size: 4vw; }
  .integrated_sec_ttl.line3 span::before { border-width: 4.75em 0 0 1em; }
  .strengths_ttl { font-size: 4vw; }
  .strengths_wrap { margin-top: 1.5rem; }
  .strengths_wrap .img { width: 35%; }
  .strengths_wrap .img img { transform-origin: bottom; transform: translateX(1rem) scale(1.5); }
  .strengths_wrap .txt_area { width: 65%; padding: 1rem 1.5rem; border-width: 1px; border-radius: 10px; }
  .strengths_wrap .txt_area::before { width: 8.5px; }
  .strengths_wrap .txt_area .integrated_sec_txt { line-height: 1.6; }
  .strengths_wrap.reverse .img img { transform: translateX(-1rem) scale(1.5); }
  .strengths_wrap.reverse .txt_area::before { right: 99.8%; }
  .btn_area { text-align: center; }
  .btn_area a { font-size: 3.4vw; } }

/*# sourceMappingURL=strengths.css.map */
