@charset "utf-8";

.cta {
  margin-bottom: 0;
}

.fv .inner {
  display: flex;
  gap: 24px;
  padding-top: calc(var(--header-height) + 40px);
  padding-bottom: 40px;
  position: relative;
  z-index: 3;
}

.fv {
  position: relative;
}

.fv .deco01 {
  position: absolute;
  left: 0;
  bottom: -140px;
  max-width: 420px;
  z-index: 2;
}

.fv .site-tit {
  font-weight: 400;
  font-size: clamp(0.75rem, 0.689rem + 0.26vw, 1rem);
  color: #000;
}

.fv .sec-img {
  max-width: 1235px;
  width: 81%;
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-start;
}

.fv .sec-img .img {
  position: relative;
}

.fv .sec-img .catch {
  position: absolute;
  top: 64px;
  left: 56px;
  display: flex;
  gap: 4px;
  align-items: baseline;
  font-weight: 500;
  font-size: clamp(1.25rem, 1.068rem + 0.78vw, 2rem);
  color: #fff;
  padding-bottom: 8px;
  border-bottom: 3px solid #fff;
}




.fv .sec-img .catch .f-48 {
  font-size: clamp(2rem, 1.757rem + 1.04vw, 3rem);
}

.fv .sec-link {
  max-width: 277px;
  width: 19%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 33px;
}

.fv .sec-link .item {
  border-radius: 20px;
  background: #fff;
  border: 2px solid #d8d8d8;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
  padding: 20px 0;
  justify-content: center;
  align-items: center;
  transition: .4s ease;
}

.fv .sec-link .item:hover {
  box-shadow: none;
  transform: translateY(2px);
}

.fv .sec-link .item .tit-ja {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-bottom: 8px;
}

.fv .sec-link .item .tit-sub {
  font-weight: 500;

  font-size: clamp(0.75rem, 0.659rem + 0.39vw, 1.125rem);
  color: #000;
}

.fv .sec-link .item .tit-main {
  font-weight: 500;
  font-size: clamp(1rem, 0.879rem + 0.52vw, 1.5rem) !important;
  color: #efa228;
}

.fv .sec-link .item .img {
  margin-bottom: 19px;
}

.t_trouble .inner {
  padding: 146px 0 48px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: center;
}

.t_trouble {
  background: #fcf5ef;
  position: relative;
  z-index: 1;
}

.t_trouble .deco01 {
  position: absolute;
  right: 5%;
  top: 0;
  max-width: 307px;
}



.t_trouble::before {
  content: "";
  position: absolute;
  background: url(/system_panel/uploads/images/20260827134524298285.svg) no-repeat bottom/100% auto, #FFF;
  top: 0;
  left: 0;
  width: 100%;
  height: 87px;
}

.t_trouble .sec-head {
  display: flex;
  align-items: baseline;
}

.t_trouble .sec-head .tit-ja {
  font-weight: 500;
  font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
  color: #000;
}

.t_trouble .sec-head .tit-ja .char {
  font-size: clamp(1.5rem, 1.379rem + 0.52vw, 2rem);
  color: #EFA228;
  position: relative;
}

.t_trouble .sec-head .tit-ja .char::before {
  content: "";
  width: 6px;
  aspect-ratio: 1/1;
  border-radius: 50px;
  background: #efa228;
  position: absolute;
  top: -3px;
  left: 0;
  right: 0;
  margin: auto;
}

.t_trouble .sec-body {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.t_trouble .sec-body .item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  border-radius: 20px;
  background: #fff;
  border: 3px solid #d8d8d8;
  padding: 24px 0 32px;
}

.t_trouble .sec-body .item .icon {
  width: 124px;
  aspect-ratio: 1/1;
}

.t_trouble .sec-body .item .desc {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.t_trouble .sec-body .item .desc p {
  font-weight: 400;
  font-size: clamp(0.75rem, 0.689rem + 0.26vw, 1rem);
  text-align: center;
  color: #000;
}

.t_trouble .sec-body .item .desc .f-20 {
  font-weight: 500;
  font-size: clamp(1rem, 0.939rem + 0.26vw, 1.25rem);
  text-align: center;
  color: #efa228;
}

.t_solution .inner {
  padding: 70px 0 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 33px;
}

.t_solution .sec-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 6px;
  border-bottom: 3px solid #efa228;
}

.t_solution .sec-head .tit-sub {
  font-weight: 400;
  font-size: clamp(1rem, 0.97rem + 0.13vw, 1.125rem);
  text-align: center;
  color: #000;
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.t_solution .sec-head .tit-sub::before,
.t_solution .sec-head .tit-sub::after {
  content: "";
  display: inline-block;
  width: 22px;
  aspect-ratio: 1/1;
}

.t_solution .sec-head .tit-sub::before {
  background: url(/system_panel/uploads/images/20260827144209896248.svg) no-repeat center/contain;
}

.t_solution .sec-head .tit-sub::after {
  background: url(/system_panel/uploads/images/20260827144209671179.svg) no-repeat center/contain;
}

.t_solution .sec-head .tit-main {
  font-weight: 500;
  font-size: clamp(1.5rem, 1.379rem + 0.52vw, 2rem);
  text-align: center;
  color: #000;
  line-height: calc(47/32);
}

.t_solution .sec-body {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.t_solution .sec-body .text {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px 0 40px;
  border-radius: 0px 0px 20px 20px;
  background: #fcf5ef;
  gap: 16px;
}

.t_solution .sec-body .desc {
  width: 93%;
  margin: 0 auto;
}

.t_solution .sec-body .icon {
  width: 42px;
  aspect-ratio: 1/1;
}

.t_solution .sec-body .tit-ja {
  font-weight: 500;
  font-size: clamp(1rem, 0.879rem + 0.52vw, 1.5rem);
  text-align: center;
  color: #000;

}

.t_solution .sec-body .desc p {
  font-weight: 400;
  font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
  line-height: calc(28/16);
  color: #000;
}


.t_about {
  background: #fcf5ef;
  position: relative;
}

.t_about::before {
  content: "";
  position: absolute;
  background: url(/system_panel/uploads/images/20260827134524298285.svg) no-repeat bottom/100% auto, #FFF;
  top: 0;
  left: 0;
  width: 100%;
  height: 393px;
  z-index: 1;
}

.t_about .inner {
  padding: 120px 0 110px;
  display: flex;
  flex-direction: column;
  gap: 54px;
  position: relative;
  z-index: 5;
}

.t_about .inner .column {
  display: flex;
  gap: 5%;
}



.t_about .inner .sec-img {
  max-width: 704px;
  width: 53%;
}

.t_about .inner .sec-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 40px;
}


.t_about .catch {
  font-weight: 500;
  font-size: clamp(1.25rem, 1.189rem + 0.26vw, 1.5rem);
  line-height: calc(40/24);
  color: #efa228;
}

.t_about .desc p {
  font-weight: 400;
  font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
  line-height: 2;
  color: #000;
}

.t_service .inner {
  padding: 80px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 56px;
}

.t_service .sec-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.t_service .sec-head::after {
  left: 0;
  right: 0;
  margin: auto;
}

.t_service .sec-body {
  display: flex;
  flex-direction: column;
  gap: 80px;
  width: 100%;
}

.t_service .item {
  display: flex;
  gap: 6%;
  padding-bottom: 33px;
  border-bottom: 3px solid #efa228;
}

.t_service .item .sec-img {
  max-width: 534px;
  width: 40%;

}

.t_service .item .title {
  display: flex;
  gap: 18px;
}

.t_service .item .sec-text {
  display: flex;
  flex-direction: column;
  gap: 32px;
  flex: 1;
}

.t_service .item .title .num {
  font-weight: 500;
  font-size: clamp(1.5rem, 1.379rem + 0.52vw, 2rem);
  color: #efa227;
}

.t_service .item .title .tit-ja {
  font-weight: 500;
  font-size: clamp(1.313rem, 1.146rem + 0.71vw, 2rem);
  color: #000;
}

.t_service .item .desc p {
  font-size: clamp(0.875rem, 0.845rem + 0.13vw, 1rem);
}

.links .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 80px;
}

.links .column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  width: 100%;
}

.links .item {
  border-radius: 10px;
  background: #fcf5ef;
  padding: 40px;
  display: grid;
  grid-template-columns: 147px 1fr;
  gap: 16px 40px;
  grid-template-areas: "icon title"
    "icon desc";
}

.links .item .icon {
  grid-area: icon;
  width: 147px;
  aspect-ratio: 1/1;
}

.links .item .title {
  grid-area: title;
  display: flex;
  align-items: center;
  gap: 40px;

}

.links .item .title .tit-ja {
  font-weight: 500;
  font-size: clamp(1.125rem, 0.913rem + 0.91vw, 2rem);
  color: #000;
}

.links .item .title .arrow {
  width: 28px;
  aspect-ratio: 1/1;
  background: url(/system_panel/uploads/images/20260827130600455089.svg) no-repeat center/contain;
}

.links .item .desc p {
  font-weight: 500;
  font-size: clamp(0.875rem, 0.814rem + 0.26vw, 1.125rem);
  line-height: calc(27/18);
  color: #000;
}

.links .cta,
.links .cta .box {
  width: 100%;
}

.links .cta {
  position: relative;
  z-index: 5;
}

.links .cta::after {
  content: "";
  position: absolute;
  background: url(/system_panel/uploads/images/20260827184036276493.svg) no-repeat center/contain;
  top: 68px;
  left: -230px;
  z-index: -1;
  max-width: 420px;
  width: 100%;
  height: 425px;
}

.t_news {
  position: relative;
}

.t_news .deco01 {
  position: absolute;
  max-width: 277px;
  right: 10%;
  top: 120px;
}

.t_news .inner {
  padding: 120px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
}

.t_news .sec-head,
.t_insta .sec-head,
.t_company .sec-head {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.t_news .sec-head::after,
.t_insta .sec-head::after,
.t_company .sec-head::after {
  left: 0;
  right: 0;
  margin: auto;
}

.t_news .sec-body,
.t_insta .list {
  width: 100%;
}

.t_insta {
  position: relative;
  background: #fcf5ef;
}

.t_insta::before {
  content: "";
  position: absolute;
  background: url(/system_panel/uploads/images/20260827192333563000.svg) no-repeat center/contain;
  top: 0;
  right: 5%;
  max-width: 420px;
  width: 100%;
  height: 425px;
}

.t_insta .inner {
  padding: 80px 0 120px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.t_insta .list .webgene-blog {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  width: 100%;
  margin: 0 auto;
}

.t_insta .list .webgene-blog .imgBx01:hover {
  opacity: 50%;
}

.t_insta .list .webgene-blog .webgene-item-main-image,
.t_insta .list .webgene-blog video {
  aspect-ratio: 1/1;
  width: 100%;
}

.t_insta .list .webgene-blog .py-3 {
  padding: 0 !important;
}

.t_insta .list .webgene-blog .imgBx01 {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
  transition: 0.4s ease;
}

.t_company .inner {
  padding: 120px 0 80px;
}

.t_company .sec-head {
  margin-bottom: 56px;
}

.t_company .sec-body {
  width: 100%;
  display: flex;
  gap: 5%;
}

.t_company .sec-body .sec-img {
  max-width: 700px;
  width: 54%;
}

.t_company .sec-body .sec-text {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.t_company .sec-body .sec-text .desc p {
  font-size: clamp(0.875rem, 0.814rem + 0.26vw, 1.125rem);
}

@media (max-width: 1280px) {
  .fv .inner {
    flex-direction: column;
    gap: 40px;
  }

  .fv .sec-img {
    max-width: none;
    width: 100%;
  }

  .fv .sec-link {
    max-width: none;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .t_trouble .sec-body {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .t_about .inner .sec-img {
    width: 55%;
  }

  .t_service .item .sec-img {
    width: 37%;
  }

  .t_service .item {
    gap: 3%;
  }

  .links .column {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

@media (max-width: 1023px) {
  .fv .sec-img .img {
    height: 520px;
    border-radius: 17px;
  }

  .fv .sec-img .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 17px;
  }

  .fv .sec-img .catch {
    top: 30px;
    left: 20px;
  }

  .fv .deco01 {
    max-width: 143px;
  }

  .fv .deco01 {
    bottom: 28%;
  }

  .t_solution .inner {
    width: 80%;
  }

  .t_solution .sec-body {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .t_about .inner .column {
    flex-direction: column-reverse;
    gap: 17px;
  }

  .t_about .inner {
    gap: 17px;
    align-items: center;
    width: 80%;
  }

  .sec-head.has-dot::after {
    left: 0;
    right: 0;
    margin: auto;
  }

  .t_about .inner .sec-img,
  .t_service .item .sec-img {
    max-width: none;
    width: 100%;
  }

  .t_about .sec-head {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .t_about .inner .sec-text {
    gap: 0;
  }

  .t_about .catch {
    margin-bottom: 17px;
  }

  .t_about .desc {
    margin-bottom: 24px;
  }

  .t_about .morebtn,
  .t_service .morebtn,
  .t_company .morebtn {
    margin: 0 auto;
  }

  .t_service .inner {
    width: 82%;
  }

  .t_service .item {
    flex-direction: column;
    gap: 17px;
  }

  .t_news .deco01 {
    max-width: 126px;
    top: 40px;
  }

  .links .cta::after {
    max-width: 155px;
    top: auto;
    left: -5%;
    bottom: -30%;
    height: 157px;
  }

  .t_news .inner {
    width: 80%;
  }

  .t_news .webgene-blog .webgene-item .txt01 {
    display: none;
  }

  .t_company .inner {
    width: 100%;
  }

  .t_company .sec-body {
    flex-direction: column;
    gap: 32px;
  }

  .t_company .sec-body .sec-img {
    max-width: none;
    width: 100%;
  }

  .t_company .sec-body .sec-text {
    width: 90%;
    margin: 0 auto;
  }

  .t_company .sec-body .sec-text .desc br {
    display: none;
  }

  .t_company .cta .inner {
    width: 90%;
    margin: 0 auto;
  }
}


@media (max-width: 767px) {
  .fv .sec-img .catch {
    flex-wrap: wrap;
    width: 70%;
  }

  .fv .sec-link .item {
    padding: 12px 0;
  }

  .t_trouble .deco01 {
    display: none;
  }

  .fv .sec-link .item .img {
    width: 84px;
    height: auto;
  }

  .fv .sec-link .item .arrow {
    width: 17px;
    aspect-ratio: 1/1;
  }

  .t_trouble::before {
    top: -303px;
  }

  .t_trouble::after {
    content: "";
    position: absolute;
    top: -216px;
    left: 0;
    background-color: #FCF5EF;
    height: 30%;
    width: 100%;
  }

  .t_trouble .inner {
    padding: 85px 0 40px;
  }

  .t_about .desc br {
    display: none;
  }

  .t_service .inner {
    width: 86%;
  }

  .t_service .item .sec-text {
    gap: 16px;
  }

  .links .item {
    grid-template-columns: 66px 1fr;
    padding: 24px 20px 24px 20px;
    gap: 9px 14px;
  }

  .links .item .icon {
    width: 66px;
  }

  .links .item .title .arrow {
    width: 19px;
  }

  .t_news .morebtn,
  .t_about .morebtn,
  .t_service .morebtn,
  .t_company .morebtn {
    width: 90%;
  }

  .t_insta::before {
    content: none;
  }

  .fv .inner {
    padding-top: calc(var(--header-height) + 32px);
    padding-bottom: 0;
  }

  .t_solution .inner {
    padding: 64px 0;
  }

  .t_about .inner {
    padding: 80px 0 64px;
  }

  .t_service .inner {
    padding: 64px 0 40px;
    gap: 24px;
  }

  .t_news .inner {
    padding: 109px 0 80px;
    gap: 24px;
  }

  .t_insta .inner {
    padding: 40px 0 56px;
  }

  .t_company .inner {
    padding: 80px 0;
  }

  .t_company .sec-head {
    margin-bottom: 24px;
  }

  .t_company .cta .inner {
    padding: 0;
    margin-top: 64px;
  }

  .fv .deco01 {
    bottom: 18%;
  }

.t_insta .list .webgene-blog {
  grid-template-columns: repeat(3, 1fr);
}

}