@charset "UTF-8";
:root {
  --key-color: #1374b4;
  --linear: cubic-bezier(0.250, 0.250, 0.750, 0.750);
  --ease: cubic-bezier(0.250, 0.100, 0.250, 1.000);
  --ease-in: cubic-bezier(0.420, 0.000, 1.000, 1.000);
  --ease-out: cubic-bezier(0.000, 0.000, 0.580, 1.000);
  --ease-in-out: cubic-bezier(0.420, 0.000, 0.580, 1.000);
  --easeInQuad: cubic-bezier(0.550, 0.085, 0.680, 0.530);
  --easeInCubic: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  --easeInQuart: cubic-bezier(0.895, 0.030, 0.685, 0.220);
  --easeInQuint: cubic-bezier(0.755, 0.050, 0.855, 0.060);
  --easeInSine: cubic-bezier(0.470, 0.000, 0.745, 0.715);
  --easeInExpo: cubic-bezier(0.950, 0.050, 0.795, 0.035);
  --easeInCirc: cubic-bezier(0.600, 0.040, 0.980, 0.335);
  --easeInBack: cubic-bezier(0.600, -0.280, 0.735, 0.045);
  --easeOutQuad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
  --easeOutCubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  --easeOutQuart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
  --easeOutQuint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
  --easeOutSine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
  --easeOutExpo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
  --easeOutCirc: cubic-bezier(0.075, 0.820, 0.165, 1.000);
  --easeOutBack: cubic-bezier(0.175, 0.885, 0.320, 1.275);
  --easeInOutQuad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
  --easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
  --easeInOutQuart: cubic-bezier(0.770, 0.000, 0.275, 1.000);
  --easeInOutQuint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
  --easeInOutSine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
  --easeInOutExpo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
  --easeInOutCirc: cubic-bezier(0.785, 0.135, 0.150, 0.860);
  --easeInOutBack: cubic-bezier(0.680, -0.550, 0.265, 1.550);
  --easeBuruBuru: cubic-bezier(0.42, 0, 0.58, 1);
}

/* ============================================================================

　page_advantage

=============================================================================== */
main.page_advantage {
  /* ----------------------------------------------------------------------------
  　page_ttl_custom
  ---------------------------------------------------------------------------- */
}
main.page_advantage section.page_ttl_custom {
  background: url("/img/advantage/main_visual.jpg") center 0 no-repeat;
  background-size: cover;
}
@media screen and (max-width: 999px) {
  main.page_advantage section.page_ttl_custom {
    background-position: 72% 0;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage section.page_ttl_custom {
    background: url("/img/advantage/main_visual_sp.jpg") center bottom no-repeat;
    background-size: 100% auto;
    height: 400px;
  }
}

main.page_advantage .breadcrumb {
  margin-top: 0rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  position: relative;
}
main.page_advantage .breadcrumb::before {
  content: "";
  width: 100vw;
  margin-left: calc(50% - 50vw);
  position: absolute;
  top: 0rem;
  left: 0rem;
  border-top: 1px solid #ccc;
}
main.page_advantage .breadcrumb::after {
  content: "";
  width: 100vw;
  margin-left: calc(50% - 50vw);
  position: absolute;
  bottom: 0rem;
  left: 0rem;
  border-bottom: 1px solid #ccc;
}

main.page_advantage .common_container {
  margin-bottom: 0rem !important;
  /* ----------------------------------------------------------------------------
  　introduction
  ---------------------------------------------------------------------------- */
}
main.page_advantage .common_container section.introduction:not(:last-child) {
  margin-bottom: 10rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction:not(:last-child) {
    margin-bottom: 6rem;
  }
}
main.page_advantage .common_container section.introduction .txt-introduction {
  font-size: 2.35rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container section.introduction .txt-introduction {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .txt-introduction {
    font-size: 1.6rem;
  }
}
main.page_advantage .common_container section.introduction .forte-nav h2 {
  width: 75%;
  height: 30px;
  margin: 0 auto 2rem;
  background: url("/img/advantage/forte_bg.png") center 0 no-repeat;
  background-size: 100% auto;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .forte-nav h2 {
    width: 100%;
    margin-bottom: 0.5rem;
  }
}
main.page_advantage .common_container section.introduction .forte-nav h2 span {
  background-color: var(--key-color);
  color: #fff;
  border-radius: 2px;
  font-size: 2.3rem;
  line-height: 110%;
  font-weight: 400;
  padding: 1rem 3rem;
  display: inline-block;
  border-radius: 5px;
  position: absolute;
  top: 0rem;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .forte-nav h2 span {
    font-size: 1.8rem;
    white-space: nowrap;
  }
}
main.page_advantage .common_container section.introduction .forte-nav ul li:not(:last-child) {
  margin-bottom: 1.5rem;
}
main.page_advantage .common_container section.introduction .forte-nav ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: none;
  border: 3px solid var(--key-color);
  border-radius: 10px;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .forte-nav ul li a {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
main.page_advantage .common_container section.introduction .forte-nav ul li a::before {
  content: "";
  width: 180px;
  background: url("/img/advantage/forte_nav_01.jpg") center center no-repeat;
  background-size: cover;
  border-radius: 7px 0 0 7px;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .forte-nav ul li a::before {
    width: 100%;
    height: 60px;
  }
}
main.page_advantage .common_container section.introduction .forte-nav ul li a .no {
  width: 150px;
  font-weight: 700;
  background-color: var(--key-color);
  color: #fff;
  font-size: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container section.introduction .forte-nav ul li a .no {
    font-size: 2rem;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .forte-nav ul li a .no {
    width: 100%;
    font-size: 1.6rem;
    padding: 0.5rem 0;
  }
}
main.page_advantage .common_container section.introduction .forte-nav ul li a .ttl {
  font-weight: 700;
  color: var(--key-color);
  padding: 1.2rem 2rem;
  font-size: 3rem;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container section.introduction .forte-nav ul li a .ttl {
    font-size: 2rem;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container section.introduction .forte-nav ul li a .ttl {
    font-size: 1.8rem;
    text-align: center;
    width: 100%;
  }
}
main.page_advantage .common_container section.introduction .forte-nav ul li._green a {
  border: 3px solid #96BF39;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._green a::before {
  background: url("/img/advantage/forte_nav_02.jpg") center center no-repeat;
  background-size: cover;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._green a .no {
  background-color: #96BF39;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._green a .ttl {
  color: #96BF39;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._orange a {
  border: 3px solid #FDA729;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._orange a::before {
  background: url("/img/advantage/forte_nav_03.jpg") center center no-repeat;
  background-size: cover;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._orange a .no {
  background-color: #FDA729;
}
main.page_advantage .common_container section.introduction .forte-nav ul li._orange a .ttl {
  color: #FDA729;
}
main.page_advantage .common_container .content-wrap {
  position: relative;
  z-index: 1;
  padding: 2rem 0 8rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container .content-wrap {
    padding: 2rem 0 5rem;
  }
}
main.page_advantage .common_container .content-wrap::before {
  content: "";
  width: 23%;
  height: 100%;
  position: absolute;
  top: 0rem;
  z-index: 1;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container .content-wrap::before {
    display: none;
  }
}
main.page_advantage .common_container .content-wrap::after {
  content: "";
  z-index: -1;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  position: absolute;
  top: 0rem;
  left: 0rem;
  height: 100%;
}
main.page_advantage .common_container .content-wrap .bg_sp {
  margin-bottom: 3rem;
}
main.page_advantage .common_container .content-wrap h2 {
  background-color: #fff;
  color: var(--key-color);
  font-size: 3.2rem;
  font-weight: 500;
  border-bottom: 1px solid var(--key-color);
  padding: 0.5rem 1.5rem;
  margin-bottom: 1.5rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container .content-wrap h2 {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container .content-wrap h2 {
    font-size: 1.8rem;
  }
}
main.page_advantage .common_container .content-wrap .inner-block .lead {
  margin-bottom: 4rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container .content-wrap .inner-block .lead {
    margin-bottom: 2.5rem;
  }
}
main.page_advantage .common_container {
  /* ----------------------------------------------------------------------------
  　anchor
  ---------------------------------------------------------------------------- */
}
main.page_advantage .common_container .anchor {
  font-size: 0rem;
  height: 0px;
  margin: 0 0 0 0;
  overflow: hidden;
  display: block;
}
main.page_advantage .common_container {
  /* ----------------------------------------------------------------------------
  　forte1
  ---------------------------------------------------------------------------- */
}
main.page_advantage .common_container #forte1 {
  min-height: 570px;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte1 {
    min-height: auto;
  }
}
main.page_advantage .common_container #forte1::after {
  background-color: #D2EBF7;
}
main.page_advantage .common_container #forte1::before {
  background: url("/img/advantage/forte1_bg.png") 0 0 no-repeat;
  background-size: 100% auto;
  right: 0rem;
}
main.page_advantage .common_container #forte1 .inner-block {
  padding-right: 30%;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container #forte1 .inner-block {
    padding-right: 27%;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte1 .inner-block {
    padding-right: 0%;
  }
}
main.page_advantage .common_container #forte1 .inner-block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte1 .inner-block ul {
    display: block;
  }
}
main.page_advantage .common_container #forte1 .inner-block ul li {
  width: 100%;
  background-color: #fff;
  border-radius: 10px;
  padding: 2rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte1 .inner-block ul li {
    padding: 1.5rem;
  }
  main.page_advantage .common_container #forte1 .inner-block ul li:not(:last-child) {
    margin-bottom: 2rem;
  }
}
main.page_advantage .common_container #forte1 .inner-block ul li h3 {
  text-align: center;
  padding-bottom: 0.5rem;
  margin-bottom: 2rem;
  font-size: 1.9rem;
  color: #CA0914;
  border-bottom: 1px solid var(--key-color);
}
main.page_advantage .common_container #forte1 .inner-block ul li .li_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
main.page_advantage .common_container #forte1 .inner-block ul li .li_inner .text-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.45rem;
}
main.page_advantage .common_container #forte1 .inner-block ul li .li_inner .img-area {
  width: 35%;
}
main.page_advantage .common_container {
  /* ----------------------------------------------------------------------------
  　forte2
  ---------------------------------------------------------------------------- */
}
main.page_advantage .common_container #forte2 {
  position: relative;
  z-index: 1;
}
main.page_advantage .common_container #forte2::after {
  background-color: #EAF4D6;
}
main.page_advantage .common_container #forte2::before {
  background: url("/img/advantage/forte2_bg.png") 0 0 no-repeat;
  background-size: 100% auto;
  left: 0rem;
}
main.page_advantage .common_container #forte2 .inner-block {
  padding-left: 30%;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container #forte2 .inner-block {
    padding-left: 27%;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte2 .inner-block {
    padding-left: 0%;
  }
}
main.page_advantage .common_container #forte2 .inner-block .lead {
  margin-bottom: 2.2rem;
}
main.page_advantage .common_container #forte2 .inner-block ul li {
  background-color: #fff;
  border-radius: 10px;
  padding: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte2 .inner-block ul li {
    display: block;
    padding: 1.5rem;
  }
}
main.page_advantage .common_container #forte2 .inner-block ul li:not(:last-child) {
  margin-bottom: 1rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte2 .inner-block ul li:not(:last-child) {
    margin-bottom: 2rem;
  }
}
main.page_advantage .common_container #forte2 .inner-block ul li .text-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte2 .inner-block ul li .text-area {
    margin-bottom: 2rem;
  }
}
main.page_advantage .common_container #forte2 .inner-block ul li .text-area h3 {
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  font-size: 1.7rem;
  color: #CA0914;
  border-bottom: 1px solid var(--key-color);
}
main.page_advantage .common_container #forte2 .inner-block ul li .text-area p {
  font-size: 1.45rem;
}
main.page_advantage .common_container #forte2 .inner-block ul li .img-area {
  width: 130px;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte2 .inner-block ul li .img-area {
    width: 50%;
    margin: 0 auto;
  }
}
main.page_advantage .common_container {
  /* ----------------------------------------------------------------------------
  　forte3
  ---------------------------------------------------------------------------- */
}
main.page_advantage .common_container #forte3 {
  position: relative;
  z-index: 1;
}
main.page_advantage .common_container #forte3::after {
  background-color: #FFE6B5;
}
main.page_advantage .common_container #forte3::before {
  background: url("/img/advantage/forte3_bg.png") 0 0 no-repeat;
  background-size: 100% auto;
  right: 0rem;
}
main.page_advantage .common_container #forte3 .inner-block {
  padding-right: 30%;
}
@media screen and (max-width: 999px) {
  main.page_advantage .common_container #forte3 .inner-block {
    padding-right: 27%;
  }
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block {
    padding-right: 0%;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li {
  background-color: #fff;
  border-radius: 10px;
  padding: 2rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li {
    padding: 1.5rem;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li:not(:last-child) {
  margin-bottom: 1rem;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .li_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .li_inner {
    display: block;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area {
    margin-bottom: 2rem;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area h3 {
  padding-bottom: 0.5rem;
  margin-bottom: 2rem;
  font-size: 1.8rem;
  color: #CA0914;
  border-bottom: 1px solid var(--key-color);
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area p {
  font-size: 1.45rem;
  padding-left: 1em;
  text-indent: -1em;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area p._no_indent {
  padding-left: 0em;
  text-indent: 0em;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area p:not(:last-child) {
  margin-bottom: 1rem;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .text-area p b {
  color: #CA0914;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .img-area {
  width: 150px;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .img-area {
    width: 50%;
    margin: 0 auto;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation {
  background-color: #FDA929;
  border-radius: 0 0 10px 10px;
  padding: 1.5rem;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation h4 {
  text-align: center;
  font-weight: 400;
  margin-bottom: 1rem;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation h4 span {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation h4 span::before {
  content: "";
  width: 20px;
  aspect-ratio: 1;
  background: url("/img/icon_link.png") 0 0 no-repeat;
  background-size: 100% auto;
  margin-right: 1rem;
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0rem 2%;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list {
    display: block;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list li {
  width: 49%;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list li {
    width: 100%;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list li a {
  font-size: 1.3rem;
  text-decoration: none;
  position: relative;
  color: #1374B4;
  padding: 0 0 0 2rem;
  display: inline-block;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list li a {
    font-size: 1.6rem;
  }
}
main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list li a::before {
  content: "";
  width: 5px;
  aspect-ratio: 1;
  background-color: #fff;
  border-radius: 100px;
  position: absolute;
  top: 0.7rem;
  left: 0rem;
}
@media screen and (max-width: 743px) {
  main.page_advantage .common_container #forte3 .inner-block .layout > li .relation .relation-list li a::before {
    top: 0.9rem;
  }
}