@charset "UTF-8";
/* ------------------------------------------------------
common
------------------------------------------------------ */
.image-wrap {
  text-align: center;
}
.image-wrap img {
  display: inline-block
}
.heading02 {
  color: var(--color_black);
}
.anchor-wrap {
  background: none;
}
.anchor-nav__list .button {
  width: 100%;
  padding: .9em 3em;
}
.fancybox-slide--image .fancybox-content {background-color: #fff;}
.os-scrollbar-handle { background: var(--color_main) !important;}
.os-scrollbar-vertical {display: none !important}
@media screen and (max-width:640px) {
  .image-wrap {
    width: calc(100% + 8vmin);
    margin-left: -4vmin;
  }
  .anchor-wrap {
    padding-top: 0;
    padding-bottom: 13.33vmin;
  }
  .anchor-nav__list {
    width: 100%;
  }
  .anchor-nav__item {
    width: 100%;
    margin: 0;
  }
  .anchor-nav__item:first-of-type a {
    margin-top: 0;
  }
}
@media print, screen and (min-width:641px) {
  .anchor-wrap {
    padding-top: 0;
    padding-bottom: 15.5rem
  }
  .anchor-nav__list {
    max-width: 1120px;
    margin: auto;
    -ms-flex-pack: distribute;
        justify-content: space-around
  }
  .anchor-nav__item {
    width: 22.4%;
    margin: 0;
  }
}
.bg-circleshadow {
  position: relative;
  overflow: hidden;
}
.bg-circleshadow > .container {
  position: relative;
  z-index: 1;
}
.bg-lightblue {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 300vw;
  background-color: #DEECFE;
  z-index: -1;
  overflow: hidden;
}
.bg-lightblue::before, .bg-lightblue::after {
  content: "";
  position: absolute;
  display: block;
  width: 907px;
  height: 907px;
  background: radial-gradient(rgba(48, 140, 248, 1), rgba(48, 140, 248, 0) 65%);
  opacity: 0.2;
}
.bg-lightblue::before {
  right: -120vmin;
  top: -70vmin;
}
.bg-white {
  background-color: var(--color_white);
  position: relative;
}
.bg-white > * {
  position: relative;
  z-index: 1;
}
.bg-white:after {
  background-color: var(--color_white);
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100vw;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
}
.bg-graylight {
  background-color: var(--color_grey_light);
  position: relative;
}
.bg-graylight > * {
  position: relative;
  z-index: 1;
}
.bg-graylight:after {
  background-color: var(--color_grey_light);
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100vw;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
}
.bg-bluelight {
  position: relative;
  background-color: #DEEBFE;
}
.bg-bluelight > * {
  position: relative;
  z-index: 1;
}
.bg-bluelight:after {
  background-color: #DEEBFE;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100vw;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
}
.button--external_link::after {
  background-image: url("/files/user/gt/images/common/icon-external_link.svg");
  background-size: 65% auto;
}
@media screen and (max-width:640px) {
  section {
    overflow: hidden;
  }
  .bg-lightblue {
    height: 100%
  }
  .bg-lightblue::after {
    content: none;
  }
  .mv-service-wrap {
    height: 93.33vw;
  }
  .button--external_link::after {
    background-size: 92% auto;
    right: 1.25em;
  }
}
@media print, screen and (min-width:641px) {
  .bg-lightblue::before {
    right: -300px;
    top: -238px;
  }
  .bg-lightblue::after {
    left: -336px;
    top: 630px;
  }
}
/* .service （WHAT WE DO）
====================================================== */
.mv-service-wrap {
  background-image: url("/files/user/gt/images/service/mv_sp.webp");
}
#service_03 .heading03 {
  margin-top: 25.33vmin;
}
.heading03-content:nth-of-type(n + 2) {
  margin-top: 25.33vmin ;
}
.heading02--service {
  margin-bottom: 0;
}
.container_service-inner--element {
  padding-bottom: 10.5vmin;
  padding-top: 27.5vmin;
  position: relative;
  border-top: 1px solid var(--color_main_02);
}
.container_service-inner--element:first-child {
  padding-top: 8.5vmin;
  border-top-style: none;
}
.container_service-inner--element:last-child {
  padding-bottom: 9.0vmin;
}
.img__wrap-service-image-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  position: relative;
}
.img__wrap-right-image, .img__wrap-left-image {
  border-radius: 20px;
  overflow: hidden;
  position: absolute;
}
.img__wrap-right-image {
  right: 0;
  top: 0;
}
.img__wrap-left-image {
  left: 0;
  bottom: 0;
}
.related-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.related-card__body {
  width: 100%;
  border-radius: 5px;
  background-color: var(--color_white);
}
.related-card__body--bgnone {background: none}
.related-card__figure {
  aspect-ratio: 298 / 267;
  width: 100%;
}
.related-list--column03 .related-card__figure {
  aspect-ratio: 407 / 228.2;
}
.related-card__title {
  font-size: 5.3vmin; /* 20px */
  padding: 1.2em 0 1.65em;
  font-weight: 500;
  line-height: 1.5em;
}
.related-card__copy {margin-top: 5.33vmin}
.related-card__footer {margin-top: 5.33vmin}
.related-card__footer .button-wrap { width: 100%}
.related-card__footer .button { width: 100%}
.warning_note {
  margin-top: 5.33vmin;
  font-size: 3.73vmin;
  text-align: center;
}
#service_04 .heading03 { color: var(--color_black) }
.know_more__link {
  position: relative;
  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;
  width: 100%;
  aspect-ratio: 69/50;
  background: url("/files/user/gt/images/service/know_more_SP.webp") no-repeat center/contain;
  border-radius: 20px;
  overflow: hidden;
}
.know_more__link::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--color_main);
  opacity: .4;
  pointer-events: none;
}
.know_more__title {
  position: relative;
  font-size: 8vmin;
  font-weight: 700;
  color: var(--color_white);
  z-index: 1;
}
@media screen and (max-width:640px) {
  .category-name + .heading02 {
    margin-top: .5em;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    letter-spacing: .04em;
  }
  .bg-circleshadow .category-name,
  .bg-circleshadow .heading02,
  .bg-circleshadow p {
    margin-left: 4vmin;
    margin-right: 4vmin;
  }
  
  #service_03 .heading03 { text-align: center;}
  .heading03-service_02-service {
    font-size: 5.3vmin; /* 20px */
    margin-bottom: 1.4em;
    line-height: 1.4;
  }
  .container_service-inner--element {
    margin-left: -4vmin;
    margin-right: -4vmin;
  }
  .related-list {
    display: block;
    padding: 0 4vmin;
  }
  .related-list .button-wrap {
    padding: 0 2vmin;
  }
  .related-card:nth-of-type(n + 2) {margin-top: 10.67vmin;}
  .img__wrap-strengths-image-box {
    padding-top: 11.5vmin;
    padding-bottom: 17vmin;
  }
  .img__wrap-challenge-image-box {
    padding-top: 12vmin;
  }
  .related-card__figure {
    aspect-ratio: 298 / 246;
  }
  #service_04 .js-scrollArea-wrapper { 
    width: calc(100% + 12vmin);
    margin-top: 12.8vmin;
    margin-left: -4vmin;
  }
  #service_04 .js-scrollArea { padding-bottom: 8vmin}
  #service_04 .js-scrollArea img {
    max-width: 439.2vmin;
  }
}
@media print, screen and (min-width:641px) {
  .mv-service-wrap {
    background-image: url("/files/user/gt/images/service/mv_pc.webp");
  }
  #service_03 .heading03 {margin-top: 3rem}
  .heading03-content:nth-of-type(n + 2) {
    margin-top: 9.0rem ;
  }
  .container_service-inner--element {
    padding-bottom: 4rem;
    padding-top: 9rem;
  }
  .container_service-inner--element:first-child {
    padding-top: 3.8rem;
  }
  .container_service-inner--element:last-child {
    padding-bottom: 0;
    margin-bottom: -1.7rem;
  }
  .img__wrap-strengths-image-box {
    padding-top: 3.3rem;
    padding-bottom: 5.3rem;
  }
  .img__wrap-strengths-image.img__wrap-left-image {
    max-width: 33.7rem;
    width: 26.386%;
    -webkit-transform: translateY(-4.0%);
    transform: translateY(-4.0%);
  }
  .img__wrap-strengths-image.img__wrap-center-image {
    width: 46.115%;
  }
  .img__wrap-strengths-image.img__wrap-right-image {
    max-width: 28.0rem;
    width: 21.87%;
    -webkit-transform: translateY(-1%);
    transform: translateY(-1%);
  }
  .img__wrap-challenge-image-box {
    padding-top: 3rem;
  }
  .img__wrap-challenge-image.img__wrap-center-image {
    width: 80.979%;
  }
  .img__wrap-challenge-image.img__wrap-right-image {
    top: auto;
    bottom: 0;
    max-width: 30.8rem;
    width: 24.45%;
    -webkit-transform: translateX(5.5%) translateY(-8.5%);
    transform: translateX(5.5%) translateY(-8.5%);
  }
  .related-card {
    padding-right: 3rem;
  }
  .related-card__body {
    width: 29.8rem;
  }
  .related-list--column03 .related-card__body {
    width: 40.7rem;
  }
  .related-card__title {
    font-size: 2.0rem;
    padding: 1.34em 0;
  }
  .related-card__copy {
    min-height: 4em;
    margin-top: 2.0rem
  }
  .related-card__footer {margin-top: 4.0rem}
  .related-card__footer .button {max-width: 298px}
  .warning_note {
    margin-top: 1.43em;
    font-size: 1.4rem
  }
  .know_more__link {
    aspect-ratio: 128/45;
    background-image: url("/files/user/gt/images/service/know_more_PC.webp");
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }
  .know_more__link:hover {opacity: .8}
  .know_more__title {
    font-size: 3.6rem;
  }
  #service_04 .js-scrollArea-wrapper { margin-top: 4.5rem; }
  #service_04 .js-scrollArea { padding-bottom: 2.0rem}
  #service_04 .js-scrollArea img {
    max-width: 1907px;
  }
}