@charset "UTF-8";
/* line 1, concept.scss */
.concept main * {
  box-sizing: border-box;
}

/* line 4, concept.scss */
.concept .breadclumb {
  display: flex;
  gap: 8px;
  position: absolute;
  top: 90px;
  left: 26px;
  font-size: 12px;
  z-index: 1;
}
@media screen and (max-width: 1080px) {
  /* line 4, concept.scss */
  .concept .breadclumb {
    display: none !important;
  }
}
/* line 15, concept.scss */
.concept .breadclumb a {
  display: flex;
  gap: 8px;
}
/* line 18, concept.scss */
.concept .breadclumb a::after {
  content: ">";
}

/* line 23, concept.scss */
.in1020 {
  max-width: 1020px;
  margin-right: auto;
  margin-left: auto;
  padding: 0;
}
@media screen and (max-width: 1080px) {
  /* line 23, concept.scss */
  .in1020 {
    padding: 0 20px;
  }
}

/* line 33, concept.scss */
#problem .bg-gray.in1240 {
  padding: 100px 50px;
  text-align: center;
  border-radius: 20px;
}
@media screen and (max-width: 1080px) {
  /* line 33, concept.scss */
  #problem .bg-gray.in1240 {
    padding: 60px 20px;
  }
}

/* line 42, concept.scss */
.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

/* line 48, concept.scss */
.concept-mv {
  background: url("../img/concept/mv.png") center center/cover no-repeat;
  height: 662px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 1080px) {
  /* line 48, concept.scss */
  .concept-mv {
    height: auto;
  }
}
/* line 57, concept.scss */
.concept-mv .mv-inner {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: 30px;
  width: 100%;
  height: 100%;
  padding-left: calc(50vw - 570px);
}
@media screen and (max-width: 1080px) {
  /* line 57, concept.scss */
  .concept-mv .mv-inner {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 80px;
    padding-bottom: 50px;
  }
}
/* line 73, concept.scss */
.concept-mv .mv-inner h1, .concept-mv .mv-inner p {
  position: relative;
  z-index: 1;
}
/* line 77, concept.scss */
.concept-mv .mv-inner h1 {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
/* line 81, concept.scss */
.concept-mv .mv-inner h1 .concept-mv--subtitle {
  background: #373D4A;
  color: #fff;
  width: 322px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 600;
}
/* line 93, concept.scss */
.concept-mv .mv-inner h1 .concept-mv--title {
  line-height: 1.3;
  font-size: 42px;
  font-weight: 600;
  letter-spacing: 0.044em;
}
@media screen and (max-width: 430px) {
  /* line 93, concept.scss */
  .concept-mv .mv-inner h1 .concept-mv--title {
    font-size: 32px;
  }
}
/* line 104, concept.scss */
.concept-mv .mv-inner .concept-mv--text {
  font-size: 18px;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 430px) {
  /* line 104, concept.scss */
  .concept-mv .mv-inner .concept-mv--text {
    font-size: 14px;
  }
}

/* line 114, concept.scss */
#problem .ttl p::before {
  background: #8B9CC4;
}

@media screen and (max-width: 430px) {
  /* line 120, concept.scss */
  .anchor_wrap .flex-center {
    flex-direction: column;
    gap: 20px;
  }
}
@media screen and (max-width: 430px) {
  /* line 128, concept.scss */
  .anchor_wrap li {
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 430px) {
  /* line 135, concept.scss */
  .anchor_wrap li a {
    padding: 20px;
  }
}

/* line 144, concept.scss */
#reason.--concept {
  background: #F4F6F8;
}

/* line 147, concept.scss */
.bottom-img.--concept img {
  width: 100%;
  max-width: 9999px;
  height: 484px;
  object-fit: cover;
  object-position: right top;
  -webkit-mask-image: none;
  mask-image: none;
}

/* line 156, concept.scss */
.problem-grid-container {
  display: grid;
  grid-template-columns: 290px 1fr 290px;
  grid-template-rows: 303px 81px 218px 67px;
  padding-top: 60px;
}
@media screen and (max-width: 1080px) {
  /* line 156, concept.scss */
  .problem-grid-container {
    grid-template-rows: auto;
  }
}
@media screen and (max-width: 820px) {
  /* line 156, concept.scss */
  .problem-grid-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
}
/* line 171, concept.scss */
.problem-grid-container .problem-grid-item {
  width: 100%;
  height: 100%;
}
/* line 178, concept.scss */
.problem-grid-container .problem-grid-item:nth-child(n+2) {
  background: url("../img/concept/ploblem-baloonbg.svg") center center/auto no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 820px) {
  /* line 178, concept.scss */
  .problem-grid-container .problem-grid-item:nth-child(n+2) {
    background: #fff;
    border-radius: 20px;
  }
}
/* line 191, concept.scss */
.problem-grid-container .problem-grid-item:nth-child(n+2) .num {
  font-size: 46px;
  font-weight: 600;
  color: #D8DDEA;
  line-height: 1;
}
/* line 198, concept.scss */
.problem-grid-container .problem-grid-item:nth-child(n+2) .problem-grid-item--title {
  font-size: 20px;
  font-weight: 600;
  color: #222222;
  margin-bottom: 21px;
}
/* line 204, concept.scss */
.problem-grid-container .problem-grid-item:nth-child(n+2) .problem-grid-item--text {
  font-size: 16px;
  font-weight: 500;
  color: #222222;
  line-height: 1.75;
  text-align: center;
}
/* line 212, concept.scss */
.problem-grid-container .problem-grid-item--inner {
  width: 289px;
  height: 285px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 820px) {
  /* line 212, concept.scss */
  .problem-grid-container .problem-grid-item--inner {
    width: 100%;
    height: 100%;
    padding: 20px;
  }
}
/* line 225, concept.scss */
.problem-grid-container .problem-grid-item--inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 43px;
  width: 46px;
  height: 46px;
  background: url("../img/concept/ploblem-icon01.svg") center center/cover no-repeat;
  z-index: 1;
}
@media screen and (max-width: 820px) {
  /* line 225, concept.scss */
  .problem-grid-container .problem-grid-item--inner::before {
    left: -0;
    top: 0;
  }
}
/* line 240, concept.scss */
.problem-grid-container .problem-grid-item--center {
  grid-row: 1 / 3;
  grid-column: 2 / 3;
}
/* line 243, concept.scss */
.problem-grid-container .problem-grid-item--center .ill {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
/* line 249, concept.scss */
.problem-grid-container .problem-grid-item--center .ill img {
  margin-top: -18px;
}
/* line 252, concept.scss */
.problem-grid-container .problem-grid-item--center .ill p {
  font-size: 22px;
  font-weight: 600;
  color: #222222;
}
/* line 259, concept.scss */
.problem-grid-container .problem-grid-item--01 {
  grid-row: 1 / 2;
  grid-column: 1 / 2;
}
/* line 263, concept.scss */
.problem-grid-container .problem-grid-item--02 {
  grid-row: 1 / 2;
  grid-column: 3 / 4;
}
/* line 267, concept.scss */
.problem-grid-container .problem-grid-item--03 {
  grid-row: 2 / 4;
  grid-column: 1 / 2;
}
/* line 271, concept.scss */
.problem-grid-container .problem-grid-item--04 {
  grid-row: 3 / 5;
  grid-column: 2 / 3;
  background-position: top center !important;
}
/* line 275, concept.scss */
.problem-grid-container .problem-grid-item--04 .problem-grid-item--inner {
  margin-bottom: auto;
}
/* line 279, concept.scss */
.problem-grid-container .problem-grid-item--05 {
  grid-row: 2 / 4;
  grid-column: 3 / 4;
}

/* line 288, concept.scss */
.problem-solution-arrow {
  background: url("../img/concept/ploblem-arrow-down.svg") center center/auto no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 320px;
  margin-top: -80px;
  margin-bottom: -90px;
  position: relative;
}
/* line 297, concept.scss */
.problem-solution-arrow p {
  font-size: 42px;
  font-weight: 600;
  text-align: center;
  color: #4B4E4E;
}
@media screen and (max-width: 820px) {
  /* line 297, concept.scss */
  .problem-solution-arrow p {
    font-size: 4.63vw;
  }
}
@media screen and (max-width: 430px) {
  /* line 288, concept.scss */
  .problem-solution-arrow {
    background-size: 100%;
    height: auto;
    margin-top: 0;
    margin-bottom: 11px;
    padding: 40px 0 28%;
  }
}

/* line 318, concept.scss */
.problem-solution h3 p {
  font-size: 46px;
  font-weight: 600;
  line-height: 1.4;
}
@media screen and (max-width: 820px) {
  /* line 318, concept.scss */
  .problem-solution h3 p {
    font-size: 4.63vw;
  }
}
/* line 326, concept.scss */
.problem-solution h3 p .font-s {
  font-size: 26px;
  font-weight: 600;
}
@media screen and (max-width: 820px) {
  /* line 326, concept.scss */
  .problem-solution h3 p .font-s {
    font-size: 2.56vw;
  }
}
/* line 335, concept.scss */
.problem-solution h3 p .blue {
  color: #4A6298;
  position: relative;
}
/* line 338, concept.scss */
.problem-solution h3 p .blue::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  background: #4A6298;
  position: absolute;
  bottom: 0;
  left: 0;
}

/* line 355, concept.scss */
.problem-solution-grid-container {
  display: grid;
  grid-template-columns: 326px 1fr 326px;
  grid-template-rows: auto min-content;
  gap: 38px 63px;
  padding-top: 60px;
}
@media screen and (max-width: 1080px) {
  /* line 355, concept.scss */
  .problem-solution-grid-container {
    grid-template-columns: auto;
    grid-template-rows: auto;
    gap: 20px;
    padding-top: 30px;
  }
}
@media screen and (max-width: 820px) {
  /* line 355, concept.scss */
  .problem-solution-grid-container {
    display: flex;
    flex-direction: column;
  }
}
/* line 375, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item {
  width: 100%;
  height: 100%;
}
/* line 382, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2) {
  background: url("../img/concept/ploblem-baloonbg.svg") center center/auto no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
/* line 389, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2) .num {
  font-size: 46px;
  font-weight: 600;
  color: #B6D1FD;
  line-height: 1.2;
}
/* line 396, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2) .problem-solution-grid-item--title {
  font-size: 20px;
  font-weight: 600;
  color: #222222;
}
/* line 401, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2) .problem-solution-grid-item--text {
  font-size: 16px;
  font-weight: 500;
  color: #222222;
  line-height: 1.75;
  text-align: center;
}
@media screen and (max-width: 820px) {
  /* line 401, concept.scss */
  .problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2) .problem-solution-grid-item--text {
    width: 100%;
  }
}
/* line 413, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2) {
  background: none;
}
/* line 416, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2):not(.problem-solution-grid-item--04) {
  background: #fff;
  border: 1px solid #373D4A;
  border-radius: 20px;
  position: relative;
}
/* line 421, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item:nth-child(n+2):not(.problem-solution-grid-item--04)::before {
  content: "";
  position: absolute;
  top: -21px;
  left: -11px;
  width: 46px;
  height: 46px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2246%22%20height%3D%2246%22%20viewBox%3D%220%200%2046%2046%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_51708%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2051708%22%20transform%3D%22translate(-174.163%20-1248)%22%3E%0A%20%20%20%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_20289%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2020289%22%20cx%3D%2223%22%20cy%3D%2223%22%20r%3D%2223%22%20transform%3D%22translate(174.163%201248)%22%20fill%3D%22%2372a2fd%22%2F%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_32010%22%20data-name%3D%22%E3%83%91%E3%82%B9%2032010%22%20d%3D%22M14%2C2V3.2M3.2%2C14H2M6.2%2C6.2l-.72-.72M21.8%2C6.2l.72-.72M26%2C14H24.8M11.6%2C15.8h4.8m-2.4%2C0v6m4.2-1.951a7.2%2C7.2%2C0%2C1%2C0-8.4%2C0V22.16a5.962%2C5.962%2C0%2C0%2C0%2C.262%2C2.53%2C2.4%2C2.4%2C0%2C0%2C0%2C1.049%2C1.049A5.962%2C5.962%2C0%2C0%2C0%2C13.64%2C26h.72a5.962%2C5.962%2C0%2C0%2C0%2C2.53-.262%2C2.4%2C2.4%2C0%2C0%2C0%2C1.049-1.049%2C5.962%2C5.962%2C0%2C0%2C0%2C.262-2.53Z%22%20transform%3D%22translate(179.219%201262.633)%20rotate(-20)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.5%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
/* line 436, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 8px 17px 30px;
}
@media screen and (max-width: 820px) {
  /* line 436, concept.scss */
  .problem-solution-grid-container .problem-solution-grid-item--inner {
    width: 100%;
  }
}
/* line 449, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--center {
  grid-row: 1 / 2;
  grid-column: 2 / 3;
}
/* line 452, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--center .ill {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 347px;
  gap: 12px;
  margin-top: -35px;
}
@media screen and (max-width: 1080px) {
  /* line 452, concept.scss */
  .problem-solution-grid-container .problem-solution-grid-item--center .ill {
    width: auto;
    margin-top: 0px;
  }
}
/* line 465, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--center .ill p {
  font-size: 22px;
  font-weight: 600;
  color: #fff;
}
/* line 469, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--center .ill p .blue {
  color: #B6D1FD;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.6;
}
/* line 478, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 18px;
}
/* line 483, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--text {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
/* line 487, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--text p {
  background: #F0F4FF;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  padding: 20px;
}
/* line 493, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--text p .title {
  font-size: 18px;
  text-align: center;
  color: #373D4A;
}
/* line 498, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--text p .text {
  font-size: 16px;
  text-align: left;
}
/* line 504, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--01 {
  grid-row: 1 / 2;
  grid-column: 1 / 2;
}
/* line 508, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--02 {
  grid-row: 1 / 2;
  grid-column: 3 / 4;
}
/* line 511, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--02 .problem-solution-grid-item--inner {
  margin-bottom: auto;
}
/* line 515, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--03 {
  grid-row: 2 / 3;
  grid-column: 1 / 2;
}
/* line 519, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--04 {
  grid-row: 2 / 3;
  grid-column: 2 / 3;
}
/* line 522, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--04 .problem-solution-grid-item--inner {
  background: #fff;
  border: 1px solid #373D4A;
  border-radius: 20px;
  position: relative;
  margin-bottom: auto;
}
/* line 528, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--04 .problem-solution-grid-item--inner::before {
  content: "";
  position: absolute;
  top: -21px;
  left: -11px;
  width: 46px;
  height: 46px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2246%22%20height%3D%2246%22%20viewBox%3D%220%200%2046%2046%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_51708%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2051708%22%20transform%3D%22translate(-174.163%20-1248)%22%3E%0A%20%20%20%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_20289%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2020289%22%20cx%3D%2223%22%20cy%3D%2223%22%20r%3D%2223%22%20transform%3D%22translate(174.163%201248)%22%20fill%3D%22%2372a2fd%22%2F%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_32010%22%20data-name%3D%22%E3%83%91%E3%82%B9%2032010%22%20d%3D%22M14%2C2V3.2M3.2%2C14H2M6.2%2C6.2l-.72-.72M21.8%2C6.2l.72-.72M26%2C14H24.8M11.6%2C15.8h4.8m-2.4%2C0v6m4.2-1.951a7.2%2C7.2%2C0%2C1%2C0-8.4%2C0V22.16a5.962%2C5.962%2C0%2C0%2C0%2C.262%2C2.53%2C2.4%2C2.4%2C0%2C0%2C0%2C1.049%2C1.049A5.962%2C5.962%2C0%2C0%2C0%2C13.64%2C26h.72a5.962%2C5.962%2C0%2C0%2C0%2C2.53-.262%2C2.4%2C2.4%2C0%2C0%2C0%2C1.049-1.049%2C5.962%2C5.962%2C0%2C0%2C0%2C.262-2.53Z%22%20transform%3D%22translate(179.219%201262.633)%20rotate(-20)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.5%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
@media screen and (max-width: 820px) {
  /* line 522, concept.scss */
  .problem-solution-grid-container .problem-solution-grid-item--04 .problem-solution-grid-item--inner {
    width: 100%;
  }
}
/* line 549, concept.scss */
.problem-solution-grid-container .problem-solution-grid-item--05 {
  grid-row: 2 / 3;
  grid-column: 3 / 4;
}

/* line 558, concept.scss */
.top-service.--concept {
  background: none;
}
@media screen and (max-width: 820px) {
  /* line 560, concept.scss */
  .top-service.--concept .top-service-list .ec-shop .inner-wrap {
    margin-bottom: 0;
    border-radius: 20px;
    max-width: 9999px;
    margin-bottom: 40px;
  }
  /* line 566, concept.scss */
  .top-service.--concept .top-service-list .ec-shop .inner-wrap p {
    margin-top: 0;
  }
}
@media screen and (max-width: 820px) {
  /* line 571, concept.scss */
  .top-service.--concept .top-service-list .ec-shop {
    background: none;
  }
}
@media screen and (max-width: 820px) {
  /* line 578, concept.scss */
  .top-service.--concept .top-service-list .top-service-flex .top-service-box {
    max-width: 9999px;
  }
}
@media screen and (max-width: 820px) {
  /* line 584, concept.scss */
  .top-service.--concept .top-service-list .top-service-flex .top-service-box figure {
    max-width: 9999px;
  }
}
/* line 590, concept.scss */
.top-service.--concept .ttl p::before {
  background: #8B9CC4;
}
/* line 594, concept.scss */
.top-service.--concept .concept-case-outer h3 {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: relative;
  padding-left: 27px;
  margin-bottom: 58px;
}
/* line 601, concept.scss */
.top-service.--concept .concept-case-outer h3::before {
  content: "";
  position: absolute;
  display: block;
  width: 6px;
  height: 44px;
  background: #8B9CC4;
  left: 0;
  top: 0;
}
/* line 614, concept.scss */
.top-service.--concept .concept-case--item:not(:last-child) {
  margin-bottom: 60px;
}
/* line 617, concept.scss */
.top-service.--concept .concept-case--item h4 {
  display: flex;
  gap: 44px;
  margin-bottom: 40px;
}
@media screen and (max-width: 430px) {
  /* line 617, concept.scss */
  .top-service.--concept .concept-case--item h4 {
    flex-direction: column;
    gap: 20px;
  }
}
/* line 626, concept.scss */
.top-service.--concept .concept-case--item h4 .num {
  width: 129px;
  height: 81px;
  background: #373D4A;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-family: 'montserrat', sans-serif;
  font-weight: bold;
  font-size: 18px;
}
/* line 638, concept.scss */
.top-service.--concept .concept-case--item h4 .title {
  font-size: 26px;
  font-weight: 600;
}
/* line 643, concept.scss */
.top-service.--concept .concept-case--item h4 + p {
  font-size: 16px;
}
/* line 648, concept.scss */
.top-service.--concept .concept-case--ex {
  text-align: center;
}
/* line 650, concept.scss */
.top-service.--concept .concept-case--ex p {
  text-align: left;
  margin-bottom: 14px;
  font-weight: 600;
}
/* line 655, concept.scss */
.top-service.--concept .concept-case--ex--inner {
  display: inline-flex;
  justify-content: center;
  flex-direction: column;
  margin: 60px auto;
}
/* line 661, concept.scss */
.top-service.--concept .concept-case--ex--inner ul {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
@media screen and (max-width: 1080px) {
  /* line 661, concept.scss */
  .top-service.--concept .concept-case--ex--inner ul {
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px 0;
  }
}
@media screen and (max-width: 430px) {
  /* line 661, concept.scss */
  .top-service.--concept .concept-case--ex--inner ul {
    flex-direction: column;
    gap: 20px;
  }
}
/* line 676, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li {
  width: 230px;
  height: 106px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #222222;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  box-shadow: 6px 6px 0px #222222;
}
/* line 691, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li::after {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 20px;
  background: #4A6298;
  top: 12px;
  left: 12px;
}
/* line 704, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li.cl-green::after {
  background: #6BC4C0;
}
/* line 709, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li.cl-yellow::after {
  background: #D2E250;
}
/* line 714, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li.cl-blue::after {
  background: #99C6E8;
}
/* line 719, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li.cl-orange::after {
  background: #EAD166;
}
/* line 723, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li:nth-child(n + 2) {
  margin-left: 72px;
}
@media screen and (max-width: 430px) {
  /* line 723, concept.scss */
  .top-service.--concept .concept-case--ex--inner ul li:nth-child(n + 2) {
    margin-left: 0;
    margin-top: 72px;
  }
}
/* line 730, concept.scss */
.top-service.--concept .concept-case--ex--inner ul li:nth-child(n + 2)::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -52px;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232.289%22%20height%3D%2232.289%22%20viewBox%3D%220%200%2032.289%2032.289%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_51725%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2051725%22%20transform%3D%22translate(-472.519%20-5468.484)%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_32011%22%20data-name%3D%22%E3%83%91%E3%82%B9%2032011%22%20d%3D%22M3389.262-16132.867h32.289%22%20transform%3D%22translate(-2916.743%2021617.496)%22%20fill%3D%22none%22%20stroke%3D%22%23222%22%20stroke-width%3D%226%22%2F%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_32012%22%20data-name%3D%22%E3%83%91%E3%82%B9%2032012%22%20d%3D%22M3389.262-16132.867h32.289%22%20transform%3D%22translate(-15644.204%202079.223)%20rotate(90)%22%20fill%3D%22none%22%20stroke%3D%22%23222%22%20stroke-width%3D%226%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  background-size: cover;
}
@media screen and (max-width: 430px) {
  /* line 730, concept.scss */
  .top-service.--concept .concept-case--ex--inner ul li:nth-child(n + 2)::before {
    top: -52px;
    left: 50%;
    transform: translateX(-50%);
  }
}
/* line 757, concept.scss */
.top-service.--concept .concept-case-point {
  background: #F0F4FF;
  display: flex;
  gap: 50px;
  padding: 34px 43px 34px 57px;
  align-items: center;
}
@media screen and (max-width: 430px) {
  /* line 757, concept.scss */
  .top-service.--concept .concept-case-point {
    flex-direction: column;
    gap: 20px;
    padding: 20px;
  }
}
/* line 769, concept.scss */
.top-service.--concept .concept-case-point .point-title {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.07em;
  color: #222222;
  font-family: 'montserrat', sans-serif;
}

/* line 780, concept.scss */
#reason.--concept {
  background: #F4F6F8;
  padding-bottom: 100px;
}
/* line 783, concept.scss */
#reason.--concept .ttl p::before {
  background: #8B9CC4;
}
/* line 786, concept.scss */
#reason.--concept .subttl {
  font-size: 34px;
  letter-spacing: 0.03em;
  font-weight: 600;
  margin-bottom: 20px;
  line-height: 1.7;
}
@media screen and (max-width: 820px) {
  /* line 793, concept.scss */
  #reason.--concept h3 + p {
    margin-bottom: 0;
  }
}
/* line 799, concept.scss */
#reason.--concept .reason-main {
  gap: 80px;
}
/* line 801, concept.scss */
#reason.--concept .reason-main:not(:last-child) {
  margin-bottom: 0;
  padding-bottom: 80px;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 820px) {
  /* line 799, concept.scss */
  #reason.--concept .reason-main {
    flex-direction: column;
    gap: 30px;
  }
}
/* line 811, concept.scss */
#reason.--concept .reason-main .reason {
  margin-bottom: 16px;
}
/* line 812, concept.scss */
#reason.--concept .reason-main .reason span:last-of-type {
  border: solid 1px #8B9CC4;
  background-color: #8B9CC4;
}
/* line 819, concept.scss */
#reason.--concept .reason-main h3 {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.05em;
}
/* line 824, concept.scss */
#reason.--concept .reason-main .reason-r {
  flex: 1;
}
@media screen and (max-width: 820px) {
  /* line 824, concept.scss */
  #reason.--concept .reason-main .reason-r {
    width: 100%;
  }
}
/* line 831, concept.scss */
#reason.--concept .reason-main .reason-l {
  width: 457px;
}
@media screen and (max-width: 820px) {
  /* line 831, concept.scss */
  #reason.--concept .reason-main .reason-l {
    width: 100%;
  }
  /* line 835, concept.scss */
  #reason.--concept .reason-main .reason-l img {
    width: 100%;
  }
}

@media screen and (max-width: 820px) {
  /* line 846, concept.scss */
  #reason02, #reason04 {
    flex-direction: column-reverse !important;
  }
}

/* line 853, concept.scss */
#download.--concept .dl-content .circle-gray img {
  width: revert-layer;
}

/* line 859, concept.scss */
footer .contact-inner {
  display: flex;
  gap: 32px;
}
@media screen and (max-width: 820px) {
  /* line 859, concept.scss */
  footer .contact-inner {
    flex-direction: column;
  }
}
/* line 865, concept.scss */
footer .contact-inner .contact-item {
  background: rgba(255, 255, 255, 0.17);
  padding: 40px 53px 52px;
}
/* line 868, concept.scss */
footer .contact-inner .contact-item h2 + p {
  font-size: 14px;
  margin-bottom: 30px;
}
/* line 873, concept.scss */
footer .contact-inner .contact-item .contact-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 80px;
  background: #fff;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: #373D4A;
  border-radius: 100vh;
  transition: all 0.3s ease;
}
/* line 888, concept.scss */
footer .contact-inner .contact-item:hover .contact-btn {
  background: #373D4A;
  color: #fff;
}
/* line 894, concept.scss */
footer .contact-inner .contact-item.--dl .contact-btn {
  background: #E84C12;
  border: 1px solid #E84C12;
  color: #fff;
}
/* line 900, concept.scss */
footer .contact-inner .contact-item.--dl:hover .contact-btn {
  background: #fff;
  color: #E84C12;
}

/*--------20250820修正--------*/
/* line 914, concept.scss */
.bg-darkblue {
  background: #4A6298;
  text-align: center;
  border-radius: 20px;
  padding: 100px 0;
}
/* line 922, concept.scss */
.bg-darkblue .problem-solution h3 p {
  color: #fff;
}
/* line 924, concept.scss */
.bg-darkblue .problem-solution h3 p .blue {
  color: #B6D1FD;
}
/* line 926, concept.scss */
.bg-darkblue .problem-solution h3 p .blue::before {
  background: #B6D1FD;
}

/* line 935, concept.scss */
.top-service .top-service-body .top-service-title .top-service-title-h2 .top-service-link .more-btn {
  background: #F7F7F7;
  border-color: #F7F7F7;
}
/* line 938, concept.scss */
.top-service .top-service-body .top-service-title .top-service-title-h2 .top-service-link .more-btn:hover {
  background: #fff;
  border-color: #373D4A;
}

/*# sourceMappingURL=concept.css.map */
