@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@200;300;400&family=Barlow:wght@400;600;700&family=Noto+Sans+JP:wght@300;400;500&display=swap");
@-webkit-keyframes clipToRightAnime {
  0% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
  }
  99.9% {
    -webkit-clip-path: inset(-2% -4% -2% -2%);
    clip-path: inset(-2% -4% -2% -2%);
  }
  to {
    -webkit-clip-path: unset;
    clip-path: unset;
  }
}
@keyframes clipToRightAnime {
  0% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
  }
  99.9% {
    -webkit-clip-path: inset(-2% -4% -2% -2%);
    clip-path: inset(-2% -4% -2% -2%);
  }
  to {
    -webkit-clip-path: unset;
    clip-path: unset;
  }
}
.scroll_attention {
  width: 1px;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 77.3333333333vw;
  margin-left: 3.4666666667vw;
  z-index: 300;
  transition: opacity 0.5s;
}
.scroll_attention .scroll_text {
  transform: rotate(-90deg);
  position: relative;
  font-size: 4.8vw;
  letter-spacing: -0.1vw;
  line-height: 1;
  white-space: nowrap;
}
.scroll_attention .scroll_bar {
  width: 100%;
  height: 16vw;
  background-color: #ddd;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 5.3333333333vw;
  margin-left: 0.5333333333vw;
}
.scroll_attention .scroll_bar .scroll_thum {
  width: 100%;
  height: 100%;
  background-color: #e60012;
  -webkit-animation-name: b;
          animation-name: b;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}
.scroll_attention.hide {
  opacity: 0;
}

@-webkit-keyframes b {
  0% {
    transform-origin: 50% 100%;
    transform: scaleY(1);
  }
  50% {
    transform-origin: 50% 100%;
    transform: scaleY(0);
  }
  50.0001% {
    transform-origin: 50% 0;
    transform: scaleY(0);
  }
  to {
    transform-origin: 50% 0;
    transform: scaleY(1);
  }
}

@keyframes b {
  0% {
    transform-origin: 50% 100%;
    transform: scaleY(1);
  }
  50% {
    transform-origin: 50% 100%;
    transform: scaleY(0);
  }
  50.0001% {
    transform-origin: 50% 0;
    transform: scaleY(0);
  }
  to {
    transform-origin: 50% 0;
    transform: scaleY(1);
  }
}
.hero {
  background: url("../images/top/hero_bg_sp.jpg") no-repeat center top/cover;
  min-height: 251.7333333333vw;
  position: relative;
  overflow: hidden;
}
.hero .kv {
  width: 100%;
  height: 71.7333333333vw;
  margin-top: 56%;
  margin-left: 11.7333333333%;
  position: absolute;
  overflow: hidden;
  border-top-left-radius: 1.3333333333vw;
  border-bottom-left-radius: 1.3333333333vw;
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
.hero .kv .photo img {
  width: 88.2666666667vw;
  max-width: none;
}
.hero .kv.animated {
  -webkit-animation: clipToRightAnime 1.2s cubic-bezier(0.16, 1, 0.3, 1) both;
          animation: clipToRightAnime 1.2s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.hero .txt-box {
  position: relative;
  z-index: 10;
}
.hero .txt-box h1 {
  margin-top: 8%;
  margin-left: 5.8666666667vw;
  position: relative;
  width: 100%;
}
.hero .txt-box h1 span {
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: 1.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.hero .txt-box h1::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0.5333333333vw;
  margin-top: 33.8666666667%;
  margin-left: 0.8%;
  background-color: #e60012;
  transition: 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}
.hero .txt-box h1.animated span {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.hero .txt-box h1.animated::after {
  width: 30.9333333333%;
}
.hero .txt-box h2 {
  font-size: 6.4vw;
  margin-top: 105.3333333333vw;
  margin-left: 6.6666666667vw;
  letter-spacing: 0.25vw;
  opacity: 0;
  transform: translateY(13.3333333333vw);
  transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1) 0.4s, opacity 0.7s 0.4s;
}
.hero .txt-box h2.animated {
  opacity: 1;
  transform: none;
}
.hero .txt-box p {
  margin-top: 5.3333333333vw;
  margin-left: 6.6666666667vw;
  margin-right: 6.6666666667vw;
  line-height: 1.75;
  opacity: 0;
  transform: translateY(13.3333333333vw);
  transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1) 0.5s, opacity 0.7s 0.5s;
}
.hero .txt-box p.animated {
  opacity: 1;
  transform: none;
}
.hero .bnr {
  width: 92%;
  height: 42.6666666667vw;
  position: relative;
  background-color: #fff;
  border-radius: 1.3333333333vw;
  margin: 11.2% auto 0;
  overflow: hidden;
  display: flex;
  opacity: 0;
  transform: translateY(13.3333333333vw);
  transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s;
}
.hero .bnr .logo {
  display: flex;
  align-items: center;
  width: 75.0724637681%;
  flex-direction: column;
  padding: 8.6956521739% 8.6956521739% 3.768115942%;
}
.hero .bnr .logo figure {
  display: block;
  width: 81.9095477387%;
}
.hero .bnr .logo p {
  text-align: center;
  font-size: 3.7333333333vw;
  line-height: 1.5714285714;
  margin-top: 7.0351758794%;
  letter-spacing: 0;
}
.hero .bnr .btn {
  width: 24.9275362319%;
  border-right: solid 0.2666666667vw #ddd;
}
.hero .bnr .btn a {
  height: 100%;
  font-size: 5.8666666667vw;
  color: #e60012;
  position: relative;
  display: flex;
  justify-content: center;
}
.hero .bnr .btn a::before, .hero .bnr .btn a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  top: auto;
  bottom: 0;
  height: 0;
}
.hero .bnr .btn a::before {
  background-color: #e60012;
  width: 100%;
  padding-top: 34.8837209302%;
}
.hero .bnr .btn a::after {
  width: 12.7906976744%;
  height: 0;
  padding-top: 12.7906976744%;
  border-top: solid 0.2666666667vw #fff;
  border-left: solid 0.2666666667vw #fff;
  margin-bottom: 9.3023255814%;
  margin-left: 58.1395348837%;
  transform: rotate(-135deg);
  transform-origin: left;
}
.hero .bnr .btn a span {
  margin-top: 20.9302325581%;
}
.hero .bnr.animated {
  opacity: 1;
  transform: none;
}

.message {
  position: relative;
  padding-top: 10.1333333333%;
  padding-bottom: 21.3333333333%;
  overflow: hidden;
}
.message .box {
  position: relative;
}
.message .box .bg-txt-lft,
.message .box .bg-txt-rgt {
  font-size: 20vw;
  line-height: 1;
  color: #f6f6f6;
  position: absolute;
  top: 0;
  letter-spacing: -0.65vw;
  z-index: -5;
}
.message .box .pic-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: 24%;
}
.message .box .pic-wrap .pic {
  width: 88.2666666667%;
  height: 53.3333333333vw;
  border-top-right-radius: 26.6666666667vw;
  border-bottom-right-radius: 26.6666666667vw;
  overflow: hidden;
  position: relative;
  background-color: #fff;
}
.message .box .pic-wrap .pic::before, .message .box .pic-wrap .pic::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  border-top: solid 4.2666666667vw rgb(255, 255, 255);
  border-bottom: solid 4.2666666667vw rgb(255, 255, 255);
  transform: scale(1.02, 1.04);
  filter: blur(0.4vw);
}
.message .box .pic-wrap .pic::before {
  mix-blend-mode: soft-light;
}
.message .box .pic-wrap .pic img {
  max-width: none;
  width: 106.0422960725%;
  margin-top: -4.833836858%;
  margin-left: -6.0422960725%;
}
.message .box .pic-wrap .pic + .rec {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #e60012;
  width: 55.7333333333%;
  height: 0;
  margin-top: 24%;
  padding-top: 34.1333333333%;
  z-index: -1;
  border-top-right-radius: 8vw;
  border-bottom-right-radius: 8vw;
}
.message .box .pic-wrap .pic.pic-lft::before, .message .box .pic-wrap .pic.pic-lft::after {
  border-right: solid 4.2666666667vw rgb(255, 255, 255);
  border-top-right-radius: 26.6666666667vw;
  border-bottom-right-radius: 26.6666666667vw;
}
.message .box .pic-wrap .pic.pic-lft::after {
  opacity: 0.1;
}
.message .box .pic-wrap .pic.pic-rgt::before, .message .box .pic-wrap .pic.pic-rgt::after {
  border-left: solid 4.2666666667vw rgb(255, 255, 255);
  border-top-left-radius: 26.6666666667vw;
  border-bottom-left-radius: 26.6666666667vw;
}
.message .box .pic-wrap .pic.pic-rgt::after {
  opacity: 0.2;
}
.message .box .txt-wrap h2 {
  font-size: 10.6666666667vw;
  color: #e60012;
  margin-left: 11.7333333333%;
  position: relative;
  letter-spacing: -0.2vw;
}
.message .box .txt-wrap h2 span {
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: 1.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.message .box .txt-wrap h2::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0.2666666667%;
  top: auto;
  bottom: 0;
  margin-bottom: -1.3333333333%;
  background-color: #ddd;
  transition: 0.7s cubic-bezier(0.33, 1, 0.68, 1) 0.5s;
}
.message .box .txt-wrap h2.animated span {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.message .box .txt-wrap h2.animated::before {
  width: 100%;
}
.message .box .txt-wrap h3 {
  margin-top: 81.6%;
  margin-left: 11.7333333333%;
  position: relative;
}
.message .box .txt-wrap h3 span {
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: 1.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.message .box .txt-wrap h3::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  padding-top: 0.6042296073%;
  margin-top: 34.1389728097%;
  background-color: #e60012;
  transition: width 0.6s 0.5s;
}
.message .box .txt-wrap h3 + p {
  margin-top: 13.3333333333%;
  margin-left: 11.7333333333%;
  margin-right: 8%;
  opacity: 0;
  transform: translateY(13.3333333333vw);
  transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s;
}
.message .box .txt-wrap h3 + p.animated {
  opacity: 1;
  transform: none;
}
.message .box .txt-wrap h3.animated span {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.message .box .txt-wrap h3.animated::after {
  width: 17.2205438066%;
}
.message .box .txt-wrap .link-btn {
  margin-top: 11.4666666667vw;
  margin-left: 11.7333333333vw;
}
.message .box .circle {
  width: 82.6666666667vw;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 9.6%;
  margin-left: 20.5333333333%;
  z-index: -2;
}
.message .box .circle svg {
  max-width: 100%;
  transform: rotate(-90deg);
  position: absolute;
  top: 0;
  left: 0;
}
.message .box .circle circle {
  fill: transparent;
  stroke: #ddd;
  stroke-width: 1;
  fill: none;
  stroke-dasharray: 0 962;
}
@-webkit-keyframes circleSp {
  0% {
    stroke-dasharray: 0 962;
  }
  99.9%, to {
    stroke-dasharray: 962 962;
  }
}
@keyframes circleSp {
  0% {
    stroke-dasharray: 0 962;
  }
  99.9%, to {
    stroke-dasharray: 962 962;
  }
}
.message .box .circle.animated svg circle {
  -webkit-animation: circleSp 1.6s forwards;
          animation: circleSp 1.6s forwards;
}
.message .box:first-of-type .bg-txt-rgt {
  right: 0;
  margin-top: 85.3333333333vw;
  margin-right: -1.3333333333vw;
}
.message .box:first-of-type .pic-wrap .pic {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
  transition: 1.2s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.message .box:first-of-type .pic-wrap .pic.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.message .box:first-of-type .pic-wrap .pic + .rec {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
  transition: 1.2s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.message .box:first-of-type .pic-wrap .pic + .rec.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.message .box:nth-of-type(2) {
  margin-top: 17.0666666667%;
}
.message .box:nth-of-type(2) .bg-txt-lft {
  margin-top: 76vw;
  margin-left: -1.3333333333vw;
}
.message .box:nth-of-type(2) .pic-wrap {
  margin-top: 15.4666666667%;
}
.message .box:nth-of-type(2) .pic-wrap .pic {
  margin-left: auto;
  margin-top: 12.8vw;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 26.6666666667vw;
  border-bottom-left-radius: 26.6666666667vw;
  -webkit-clip-path: inset(0 0 0 100%);
          clip-path: inset(0 0 0 100%);
  transition: 1.2s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.message .box:nth-of-type(2) .pic-wrap .pic img {
  width: 115%;
  margin-top: -6.9333333333vw;
  margin-left: -7.4666666667vw;
}
.message .box:nth-of-type(2) .pic-wrap .pic.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.message .box:nth-of-type(2) .pic-wrap .pic + .rec {
  -webkit-clip-path: inset(0 0 0 100%);
          clip-path: inset(0 0 0 100%);
  transition: 1.2s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.message .box:nth-of-type(2) .pic-wrap .pic + .rec.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.message .box:nth-of-type(2) .pic-wrap .pic .photo {
  -webkit-clip-path: inset(2.6666666667vw 0px 2.6666666667vw 2.6666666667vw round 26.6666666667vw 0px 0px 26.6666666667vw);
          clip-path: inset(2.6666666667vw 0px 2.6666666667vw 2.6666666667vw round 26.6666666667vw 0px 0px 26.6666666667vw);
}
.message .box:nth-of-type(2) .pic-wrap .pic + .rec {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 8vw;
  border-bottom-left-radius: 8vw;
  left: auto;
  right: 0;
  margin-top: 8.5333333333%;
  -webkit-clip-path: inset(0 0 0 100%);
          clip-path: inset(0 0 0 100%);
}
.message .box:nth-of-type(2) .txt-wrap h3 {
  margin-top: 85.8666666667%;
}
.message .box:nth-of-type(2) .txt-wrap h3::after {
  margin-top: 25.3776435045%;
}
.message .box:nth-of-type(2) .txt-wrap .link-btn {
  margin-top: 10.9333333333vw;
}
.message .box:nth-of-type(2) .circle {
  margin-top: 14.4%;
  margin-left: -3.2%;
}

.service {
/*   background: url(../images/top/service_bg_sp.jpg) no-repeat left top/100%; */
  background: url(https://ingage.co.jp/wp-content/uploads/2022/12/service_bg_sp.jpg) no-repeat left top/100%;
  background-color: #efeeec;
  overflow: hidden;
  padding-top: 9.0666666667%;
  padding-bottom: 15.2%;
}
.service h2 {
  font-size: 10.6666666667vw;
  line-height: 100%;
  margin-left: 8vw;
  letter-spacing: -0.1vw;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: 1.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.service h2.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.service .box .txt-wrap {
  transition-duration: 1.2s;
}
.service .box .logo {
  width: 61.8666666667%;
  margin: 64% auto 0;
}
.service .box h3 {
  font-size: 4.8vw;
  margin-top: 6.9333333333vw;
  margin-left: 9.0666666667vw;
  letter-spacing: 0.15vw;
}
.service .box h3 + p {
  margin-top: 4.2666666667vw;
  margin-left: 0;
  text-align: center;
  letter-spacing: 0.05vw;
}
.service .box .link-btn {
  margin: 9.0666666667vw auto 0;
}
.service ul {
  display: flex;
  flex-direction: column;
  width: 92%;
  margin: 18.6666666667% auto 0;
  padding-left: 0;
  list-style: none;
}
.service ul li {
  background-color: #fff;
  min-height: 80vw;
  border-radius: 1.4492753623%;
  opacity: 0;
  transform: translateY(26.6666666667vw);
  transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s;
}
.service ul li h4 {
  font-size: 22.4vw;
  line-height: 100%;
  margin: 0;
  padding: 7.2463768116% 7.8260869565% 7.5362318841% 7.8260869565%;
  border-bottom: solid 0.2666666667vw #ddd;
}
.service ul li h4 > span.per {
  font-size: 14.6666666667vw;
  font-weight: 600;
  line-height: 1;
}
.service ul li .panel-title {
  font-size: 5.3333333333vw;
  line-height: 100%;
  padding: 7.2463768116% 8.4057971014% 0 8.4057971014%;
}
.service ul li .caption {
  font-size: 3.2vw;
  line-height: 1.5;
  padding: 2.8985507246% 8.4057971014% 0 8.4057971014%;
}
.service ul li .icon {
  display: block;
  width: 14.4927536232%;
  margin-top: 5.2173913043%;
  margin-left: 76.8115942029%;
}
.service ul li .icon img.mail {
  margin-top: 16%;
}
.service ul li .icon img.client {
  margin-top: -36%;
}
.service ul li:not(:first-child) {
  margin-top: 5.7971014493%;
}
.service ul li:nth-child(2) {
  transition-delay: 0.1s;
}
.service ul li:nth-child(3) {
  transition-delay: 0.2s;
}
.service ul li.animated {
  opacity: 1;
  transform: none;
}

.news {
  border-top: solid 0.2666666667vw #ddd;
}
.news .inner {
  width: 92%;
  margin: 0 auto;
  padding-bottom: 14.9333333333%;
  border-left: solid 0.2666666667vw #ddd;
  border-right: solid 0.2666666667vw #ddd;
  background-color: #f6f6f6;
}
.news .inner .title-wrap {
  height: 26.6666666667vw;
  display: flex;
  border-bottom: solid 0.2666666667vw #ddd;
  align-items: flex-end;
}
.news .inner .title-wrap h2 {
  font-size: 10.6666666667vw;
  width: 50.1449275362%;
  height: 100%;
  border-right: solid 0.2666666667vw #ddd;
  margin: 0;
  padding-top: 10.4347826087%;
  padding-left: 4.347826087%;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: 1.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.news .inner .title-wrap h2.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.news .inner .title-wrap .link-btn {
  width: 49.8550724638%;
  border-radius: 0;
  background-color: transparent;
  border-left: none;
  border-right: none;
  border-bottom: none;
}
.news .inner .title-wrap .link-btn a .arrow {
  left: auto;
  right: 0;
  margin-left: 0;
}
.news .inner ul.slick01 .slick-list {
  padding: 0 23% 0 0 !important;
}
.news .inner ul.slick01 .slick-list li {
  margin: 0 3.2vw;
}
.news .inner ul.general-news {
  list-style: none;
  margin: 8.115942029% 0 0 4.347826087%;
  margin-left: 0;
  padding: 0;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-left: 2.6666666667vw;
}
.news .inner ul.general-news li {
  width: 74.3902439024%;
  width: 65.0666666667vw;
  height: 93.3333333333vw;
  background-color: #fff;
  border-radius: 1.5243902439%;
  position: relative;
  overflow: hidden;
}
.news .inner ul.general-news li figure {
  padding: 4vw;
}
.news .inner ul.general-news li .txt-wrap {
  margin-top: 6.1475409836%;
}
.news .inner ul.general-news li .txt-wrap .date {
  font-size: 4.8vw;
  font-weight: 400;
  margin-left: 5.737704918%;
}
.news .inner ul.general-news li .txt-wrap p.txt {
  font-size: 4vw;
  margin: 1.2295081967% 5.737704918% 0 5.737704918%;
}
.news .inner ul.general-news li .txt-wrap .link-txt {
  position: absolute;
  bottom: 0;
  margin-bottom: 5.3278688525%;
  margin-left: 40.5737704918%;
}
.news .inner h3 {
  border-top: solid 0.2666666667vw #ddd;
  border-bottom: solid 0.2666666667vw #ddd;
  margin-top: 11.884057971%;
  font-size: 9.0666666667vw;
  line-height: 100%;
  padding: 7.8260869565% 0 5.5072463768% 4.347826087%;
  letter-spacing: -0.2vw;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: 1.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}
.news .inner h3.animated {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.news .inner ul.update-news {
  margin: 9.2753623188% auto 0;
  padding: 0;
  list-style: none;
  width: 91.5942028986%;
}
.news .inner ul.update-news li {
  background-color: #fff;
  border-radius: 1.582278481%;
  min-height: 26.6666666667vw;
  opacity: 0;
  transform: translateY(26.6666666667vw);
  transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s;
}
.news .inner ul.update-news li:not(:first-child) {
  margin-top: 6.3291139241%;
}
.news .inner ul.update-news li:nth-child(2) {
  transition-delay: 0.1s;
}
.news .inner ul.update-news li:nth-child(3) {
  transition-delay: 0.2s;
}
.news .inner ul.update-news li.animated {
  opacity: 1;
  transform: none;
}
.news .inner ul.update-news li a {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 26.6666666667vw;
  position: relative;
  padding: 2.2151898734% 13.6075949367% 2.5316455696% 4.4303797468%;
  transition: all 0.1s;
}
.news .inner ul.update-news li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  top: 50%;
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  margin-left: 90.8227848101%;
  border-top: solid 0.2666666667vw #e60012;
  border-left: solid 0.2666666667vw #e60012;
  transform: translateY(-50%) rotate(135deg);
  transition: transform 0.6s cubic-bezier(0.4, 0, 0, 1);
}
.news .inner ul.update-news li a p.date {
  font-size: 4.8vw;
  font-weight: 400;
}
.news .inner ul.update-news li a p.txt {
  font-size: 4vw;
  margin-top: 0.6329113924%;
}
.news .inner ul.update-news li a:hover {
  color: #e60012;
}
.news .inner ul.update-news li a:hover::after {
  transform: translateX(1.3333333333vw) translateY(-50%) rotate(135deg);
}

.career-bnr {
  background-image: url(../images/top/recommend_bg_sp.jpg);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
  padding-bottom: 62.9333333333%;
  padding-bottom: 106.6666666667%;
  margin-top: 0;
}
.career-bnr .panel {
  background-color: #fff;
  width: 92%;
  height: 53.3333333333vw;
  border-radius: 1.3333333333vw;
  position: relative;
  margin-top: -9.0666666667%;
  margin-left: -4%;
  overflow: hidden;
  position: absolute;
}
.career-bnr .panel .box .txt-wrap {
  padding: 5.5072463768% 8.6956521739% 0;
}
.career-bnr .panel .box .txt-wrap h2 {
  line-height: 1;
  margin: 0;
  letter-spacing: 0.05vw;
  font-size: 5.8666666667vw;
}
.career-bnr .panel .box .txt-wrap h2 + p {
  line-height: 1.5;
  margin-top: 5.8479532164%;
  font-size: 4.8vw;
  margin-top: 4.9122807018%;
}
.career-bnr .panel .btn-wrap {
  position: absolute;
  width: 100%;
  height: 0;
  padding-top: 14.4927536232%;
  bottom: 0;
  border-top: 0.2666666667vw solid #ddd;
}
.career-bnr .panel .btn-wrap .link-btn {
  width: 53.3333333333vw;
  position: absolute;
  top: 0;
  right: 0;
  border-top: none;
  border-right: none;
  border-bottom: none;
  border-radius: 0;
}
.career-bnr .panel .btn-wrap .link-btn a .arrow {
  margin-left: 39.7333333333vw;
}

@media screen and (min-width: 769px) {
  .scroll_attention {
    margin-top: 56.6666666667vw;
    margin-left: 5.5555555556vw;
    position: absolute;
  }
  .scroll_attention .scroll_text {
    font-size: 1.6666666667vw;
    letter-spacing: -0.05vw;
    transform: none;
    padding-left: 0.6944444444vw;
  }
  .scroll_attention .scroll_bar {
    height: 4.1666666667vw;
    margin-top: 0.2083333333vw;
    margin-left: 0;
  }
  .hero {
    background-image: url("../images/top/hero_bg_pc.jpg");
    min-height: 58.3333333333vw;
  }
  .hero .kv {
    width: 55.5555555556vw;
    height: 45.1388888889vw;
    margin-top: 4.4444444444%;
    margin-left: 38.8888888889%;
    border-radius: 0.3472222222vw;
  }
  .hero .kv .photo img {
    width: 68.9583333333vw;
    max-width: none;
    margin-top: -0.4166666667vw;
    margin-left: -4.5138888889vw;
    transform: scale(-1, 1);
  }
  .hero .txt-box h1 {
    font-size: 6.9444444444vw;
    margin-top: 9.7222222222vw;
    margin-left: 5.1388888889vw;
  }
  .hero .txt-box h1::after {
    height: 0.1388888889vw;
    margin-top: 16.5972222222%;
    margin-left: 0.3472222222%;
  }
  .hero .txt-box h1.animated::after {
    width: 11.1111111111%;
  }
  .hero .txt-box h2 {
    font-size: 2.0833333333vw;
    margin-top: 5.9722222222vw;
    margin-left: 5.5555555556vw;
    letter-spacing: 0.15vw;
    transform: translateY(3.4722222222vw);
  }
  .hero .txt-box p {
    font-size: 1.25vw;
    margin-top: 1.25vw;
    margin-left: 5.5555555556vw;
    margin-right: 0;
    width: 27.0833333333vw;
    letter-spacing: 0.04vw;
    line-height: 1.75;
    transform: translateY(3.4722222222vw);
  }
  .hero .bnr {
    width: 34.7222222222%;
    height: 13.8888888889vw;
    border-radius: 0.3472222222vw;
    margin-top: -1.9444444444%;
    margin-left: 63.6805555556%;
    transform: translateY(13.8888888889vw);
  }
  .hero .bnr .logo {
    width: 80%;
    padding: 6% 6% 2.6%;
  }
  .hero .bnr .logo figure {
    width: 70%;
    margin-top: 3.5294117647%;
    margin-left: -2.9411764706%;
  }
  .hero .bnr .logo p {
    font-size: 1.1111111111vw;
    line-height: 1.875;
    margin-top: 5.8823529412%;
    letter-spacing: 0.05vw;
  }
  .hero .bnr .btn {
    width: 20%;
    border-right: solid 0.0694444444vw #ddd;
  }
  .hero .bnr .btn a {
    font-size: 1.5277777778vw;
  }
  .hero .bnr .btn a::before {
    padding-top: 40%;
  }
  .hero .bnr .btn a::after {
    width: 10%;
    padding-top: 10%;
    border-top: solid 0.0694444444vw #fff;
    border-left: solid 0.0694444444vw #fff;
    margin-bottom: 14%;
    margin-left: 54%;
  }
  .hero .bnr .btn a span {
    margin-top: 17%;
  }
  .message {
    padding-top: 5.5555555556%;
    padding-bottom: 9.3055555556%;
  }
  .message .box .bg-txt-lft,
.message .box .bg-txt-rgt {
    font-size: 15.2777777778vw;
    letter-spacing: -0.5vw;
  }
  .message .box .pic-wrap {
    margin-top: 0.4861111111%;
    margin-left: -1.0416666667%;
  }
  .message .box .pic-wrap .pic {
    width: 50.9722222222%;
    height: 30.5555555556vw;
    border-top-right-radius: 17.3611111111vw;
    border-bottom-right-radius: 17.3611111111vw;
    position: relative;
  }
  .message .box .pic-wrap .pic::before, .message .box .pic-wrap .pic::after {
    border-top: solid 1.9444444444vw rgb(255, 255, 255);
    border-bottom: solid 1.9444444444vw rgb(255, 255, 255);
    filter: blur(0.18vw);
  }
  .message .box .pic-wrap .pic img {
    width: 105.9945504087%;
    margin-top: 1.9073569482%;
    margin-left: -5.4495912807%;
  }
  .message .box .pic-wrap .pic + .rec {
    width: 38.8888888889%;
    padding-top: 17.3611111111%;
    margin-top: 9.7222222222%;
    margin-left: -7.5%;
    border-top-right-radius: 3.8888888889vw;
    border-bottom-right-radius: 3.8888888889vw;
  }
  .message .box .pic-wrap .pic.pic-lft::before, .message .box .pic-wrap .pic.pic-lft::after {
    border-right: solid 1.9444444444vw rgb(255, 255, 255);
    border-top-right-radius: 17.3611111111vw;
    border-bottom-right-radius: 17.3611111111vw;
  }
  .message .box .pic-wrap .pic.pic-rgt::before, .message .box .pic-wrap .pic.pic-rgt::after {
    border-left: solid 1.9444444444vw rgb(255, 255, 255);
    border-top-left-radius: 17.3611111111vw;
    border-bottom-left-radius: 17.3611111111vw;
  }
  .message .box .txt-wrap {
    width: 44.4444444444%;
    margin-top: 4.5833333333%;
    margin-left: auto;
  }
  .message .box .txt-wrap h2 {
    margin-left: 0;
    font-size: 3.3333333333vw;
    font-weight: 300;
    letter-spacing: -0.1vw;
  }
  .message .box .txt-wrap h2::before {
    margin-bottom: -1.5625%;
  }
  .message .box .txt-wrap h3 {
    font-size: 2.0833333333vw;
    margin-top: 6.25%;
    margin-left: 0;
    line-height: 1.4;
    letter-spacing: 0.12vw;
  }
  .message .box .txt-wrap h3::after {
    width: 0;
    padding-top: 0.3125%;
    margin-top: 23.28125%;
  }
  .message .box .txt-wrap h3 + p {
    font-size: 1.1111111111vw;
    margin-top: 7.8125%;
    margin-left: 0;
    margin-right: 24.6875%;
    line-height: 1.875;
    letter-spacing: 0.06vw;
    transform: translateY(3.4722222222vw);
  }
  .message .box .txt-wrap h3.animated::after {
    width: 12.5%;
  }
  .message .box .txt-wrap .link-btn {
    margin-top: 10.9375%;
    margin-left: 0;
  }
  .message .box .circle {
    width: 43.75vw;
    margin-top: -5.9722222222vw;
    margin-left: 15.4861111111vw;
  }
  .message .box .circle circle {
    stroke-dasharray: 0 1965;
  }
  @-webkit-keyframes circlePc {
    0% {
      stroke-dasharray: 0 1965;
    }
    99.9%, to {
      stroke-dasharray: 1965 1965;
    }
  }
  @keyframes circlePc {
    0% {
      stroke-dasharray: 0 1965;
    }
    99.9%, to {
      stroke-dasharray: 1965 1965;
    }
  }
  .message .box .circle.animated svg circle {
    -webkit-animation: circlePc 1.6s forwards;
            animation: circlePc 1.6s forwards;
  }
  .message .box:first-of-type .bg-txt-rgt {
    margin-top: -12.5%;
    margin-right: -0.6944444444%;
  }
  .message .box:nth-of-type(2) .bg-txt-lft {
    margin-top: -27.7777777778%;
    margin-left: -0.9027777778%;
  }
  .message .box:nth-of-type(2) .pic-wrap {
    margin-top: -1.1111111111%;
    margin-left: 1.25%;
  }
  .message .box:nth-of-type(2) .pic-wrap .pic {
    margin-top: 0;
  }
  .message .box:nth-of-type(2) .pic-wrap .pic img {
    width: 110.3542234332%;
    margin-top: 6.8119891008%;
    margin-left: -8.8555858311%;
  }
  .message .box:nth-of-type(2) .pic-wrap .pic .photo {
    -webkit-clip-path: inset(1.3888888889vw 0px 1.3888888889vw 1.3888888889vw round 27.7777777778vw 0px 0px 27.7777777778vw);
            clip-path: inset(1.3888888889vw 0px 1.3888888889vw 1.3888888889vw round 27.7777777778vw 0px 0px 27.7777777778vw);
  }
  .message .box:nth-of-type(2) .pic-wrap .pic + .rec {
    margin-top: -12.5%;
    margin-right: -7.5%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 3.8888888889vw;
    border-bottom-left-radius: 3.8888888889vw;
  }
  .message .box:nth-of-type(2) .txt-wrap {
    margin-top: -0.3472222222%;
    margin-left: 0;
  }
  .message .box:nth-of-type(2) .txt-wrap h2 {
    padding-left: 24.6875%;
  }
  .message .box:nth-of-type(2) .txt-wrap h3 {
    padding-left: 25%;
    margin-top: 6.5625%;
  }
  .message .box:nth-of-type(2) .txt-wrap h3::after {
    margin-top: 16.40625%;
    margin-left: 25.3125%;
  }
  .message .box:nth-of-type(2) .txt-wrap h3 + p {
    padding-left: 25%;
    margin-right: 0;
  }
  .message .box:nth-of-type(2) .txt-wrap .link-btn {
    margin-top: 5.9375%;
    margin-left: 25%;
  }
  .message .box:nth-of-type(2) .circle {
    margin-top: -7.6388888889vw;
    margin-left: 40.9722222222vw;
  }
  .service {
/*     background-image: url(../images/top/service_bg_pc.jpg); */
    background-image: url(https://ingage.co.jp/wp-content/uploads/2022/12/service_bg_pc-scaled.jpg);
    padding-top: 0;
    padding-bottom: 7.0138888889%;
  }
  .service h2 {
    font-size: 3.3333333333vw;
    margin-top: 5.2777777778vw;
    margin-left: 10.9722222222vw;
  }
  .service .box {
    margin-left: 55.5555555556%;
    padding-bottom: 6.9444444444%;
  }
  .service .box .txt-wrap {
    transition-duration: 3s;
  }
  .service .box .logo {
    width: 56.25%;
    margin: 11.25% 0 0;
  }
  .service .box h3 {
    font-size: 1.6666666667vw;
    margin-top: 5.9375%;
    margin-left: 0;
    letter-spacing: 0.05vw;
  }
  .service .box h3 + p {
    font-size: 1.1111111111vw;
    width: 65%;
    margin-top: 1.875%;
    margin-left: 0;
    text-align: left;
  }
  .service .box .link-btn {
    margin: 5.9375% 0 0;
  }
  .service ul {
    flex-direction: row;
    width: 77.7777777778%;
    margin: 0.9722222222% auto 0;
    justify-content: space-between;
  }
  .service ul li {
    min-height: 27.7777777778vw;
    border-radius: 1.3888888889%;
    width: 32.1428571429%;
    transform: translateY(6.9444444444vw);
  }
  .service ul li h4 {
    font-size: 6.25vw;
    line-height: 100%;
    padding: 10% 6.9444444444% 8.3333333333% 6.9444444444%;
    border-bottom: solid 0.0694444444vw #ddd;
    letter-spacing: 0;
  }
  .service ul li h4 > span.per {
    font-size: 3.8194444444vw;
  }
  .service ul li .panel-title {
    font-size: 1.5277777778vw;
    line-height: 100%;
    line-height: 1.5;
    padding: 5.5555555556% 6.9444444444% 0 6.9444444444%;
  }
  .service ul li .caption {
    font-size: 0.8333333333vw;
    padding: 3.8888888889% 6.6666666667% 0 6.6666666667%;
  }
  .service ul li .icon {
    width: 13.8888888889%;
    margin-top: 21.6666666667%;
    margin-left: 80.5555555556%;
  }
  .service ul li .icon img.mail {
    margin-top: 0;
  }
  .service ul li .icon img.client {
    margin-top: -36%;
  }
  .service ul li:not(:first-child) {
    margin-top: 0;
  }
  .news {
    border-top: solid 0.0694444444vw #ddd;
  }
  .news .inner {
    width: 81.9444444444%;
    padding-bottom: 6.6666666667%;
    border-left-width: 0.0694444444vw;
    border-right-width: 0.0694444444vw;
  }
  .news .inner .title-wrap {
    height: 9.6527777778vw;
    border-bottom-width: 0.0694444444vw;
  }
  .news .inner .title-wrap h2 {
    font-size: 3.3333333333vw;
    width: 84.0407470289%;
    border-right-width: 0.0694444444vw;
    padding-top: 4.9235993209%;
    padding-left: 2.376910017%;
  }
  .news .inner .title-wrap .link-btn {
    width: 16.1290322581%;
  }
  .news .inner ul.slick01 .slick-list li {
    margin: 0;
  }
  .news .inner ul.general-news {
    margin: 2.4617996604% auto 0;
    width: 95.0764006791%;
    display: flex;
    justify-content: space-between;
    padding-left: 0;
  }
  .news .inner ul.general-news li {
    width: 31.25%;
    height: 31.9444444444vw;
    border-radius: 1.4285714286%;
    opacity: 0;
    transform: translateY(6.9444444444vw);
    transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s;
  }
  .news .inner ul.general-news li figure {
    padding: 1.3888888889vw;
  }
  .news .inner ul.general-news li .txt-wrap {
    margin-top: 5.7142857143%;
  }
  .news .inner ul.general-news li .txt-wrap .date {
    font-size: 1.25vw;
    font-weight: 400;
    margin-left: 4.2857142857%;
    letter-spacing: 0;
  }
  .news .inner ul.general-news li .txt-wrap p.txt {
    font-size: 1.1111111111vw;
    margin: 4% 3.7142857143% 0 4.5714285714%;
  }
  .news .inner ul.general-news li .txt-wrap .link-txt {
    margin-bottom: 4.8571428571%;
    margin-left: 57.7142857143%;
  }
  .news .inner ul.general-news li:nth-child(2) {
    transition-delay: 0.1s;
  }
  .news .inner ul.general-news li:nth-child(3) {
    transition-delay: 0.2s;
  }
  .news .inner ul.general-news li.animated {
    opacity: 1;
    transform: none;
  }
  .news .inner h3 {
    border-top-width: 0.0694444444vw;
    border-bottom: none;
    margin-top: 2.5466893039%;
    margin-bottom: 0;
    font-size: 2.5vw;
    line-height: 1;
    padding: 4.0747028862% 0 0 2.2071307301%;
    letter-spacing: -0.05vw;
  }
  .news .inner ul.update-news {
    width: 95.0764006791%;
    margin: 2.5466893039% auto 0;
  }
  .news .inner ul.update-news li {
    border-radius: 0.3472222222vw;
    min-height: 5.5555555556vw;
    transform: translateY(6.9444444444vw);
  }
  .news .inner ul.update-news li:not(:first-child) {
    margin-top: 1.7857142857%;
  }
  .news .inner ul.update-news li a {
    display: flex;
    align-items: center;
    min-height: 5.5555555556vw;
    padding: 0 1.7857142857%;
  }
  .news .inner ul.update-news li a::after {
    width: 0.6944444444vw;
    height: 0.6944444444vw;
    margin-left: 96.25%;
    border-top-width: 0.0694444444vw;
    border-left-width: 0.0694444444vw;
  }
  .news .inner ul.update-news li a p.date {
    font-size: 1.25vw;
    width: 7.4074074074%;
    letter-spacing: 0;
  }
  .news .inner ul.update-news li a p.txt {
    font-size: 1.1111111111vw;
    margin-top: 0;
  }
  .news .inner ul.update-news li a:hover::after {
    transform: translateX(0.3472222222vw) translateY(-50%) rotate(135deg);
  }
  .career-bnr {
    background-image: url(../images/top/recommend_bg_pc.jpg);
    padding-bottom: 17.3611111111%;
    margin-top: 4.9305555556%;
    margin-top: 0;
    height: 34.7222222222vw;
  }
  .career-bnr .panel {
    border-radius: 0.3472222222vw;
    width: 38.8888888889%;
    height: 20.8333333333vw;
    margin-top: -3.4722222222%;
    margin-left: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .career-bnr .panel .box .txt-wrap {
    padding: 8.9285714286% 13.9285714286% 0;
  }
  .career-bnr .panel .box .txt-wrap h2 {
    letter-spacing: 0;
    font-size: 1.9444444444vw;
    line-height: 1.2857142857;
  }
  .career-bnr .panel .box .txt-wrap h2 + p {
    font-size: 1.6666666667vw;
    margin-top: 1.2376237624%;
    letter-spacing: 0.05vw;
  }
  .career-bnr .panel .btn-wrap {
    padding-top: 8.9285714286%;
    border-top-width: 0.0694444444vw;
  }
  .career-bnr .panel .btn-wrap .link-btn {
    width: 16.6666666667vw;
  }
  .career-bnr .panel .btn-wrap .link-btn a .arrow {
    margin-left: 13.125vw;
  }
}
/*# sourceMappingURL=top.css.map */