@charset "UTF-8";

.s-of-hidden {
   overflow: hidden;
}

body.is-fixed {
   overflow: hidden;
}

body {
   margin: 0 0 1.5em;
}

#inhouse-support {
   margin-bottom: 80px;
   font-family: "Noto Sans JP", sans-serif;
   font-size: 16px;
   font-weight: 400;
   line-height: 1.95;
   color: #555;
}

@media screen and (max-width: 767px) {
   #inhouse-support {
      font-size: 14px;
   }
}

#inhouse-support button {
   all: unset;
   display: inline-block;
   cursor: pointer;
}

#inhouse-support h1,
#inhouse-support h2,
#inhouse-support h3,
#inhouse-support h4,
#inhouse-support p {
   padding: 0;
   margin: 0;
}

#inhouse-support h1::before,
#inhouse-support h1::after,
#inhouse-support h2::before,
#inhouse-support h2::after,
#inhouse-support h3::before,
#inhouse-support h3::after,
#inhouse-support h4::before,
#inhouse-support h4::after,
#inhouse-support p::before,
#inhouse-support p::after {
   display: none;
}

#inhouse-support .inview_re {
   opacity: 0;
   transition: 0.5s;
   transform: translateY(20px);
}

#inhouse-support .inview_re.is-show {
   opacity: 1;
   transform: translateY(0px);
}

#inhouse-support .u-t-blue {
   color: #2aa0d0;
}

#inhouse-support img {
   display: inline-block;
   vertical-align: middle;
   width: 100%;
   height: auto;
}

#inhouse-support .sp {
   display: block;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sp {
      display: none;
   }
}

#inhouse-support .tb {
   display: none;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
   #inhouse-support .tb {
      display: block;
   }
}

#inhouse-support .pc {
   display: none;
}

@media screen and (min-width: 768px) {
   #inhouse-support .pc {
      display: block;
   }
}

#inhouse-support a {
   text-decoration: none;
}

#inhouse-support .c-heading {
   display: flex;
   flex-direction: column;
   align-items: center;
   text-align: center;
   gap: 22px;
   font-family: "Noto Sans JP";
   font-weight: 400;
}

#inhouse-support .c-heading.--white {
   color: #fff;
}

#inhouse-support .c-heading.--white .c-heading__en {
   color: #fff;
}

#inhouse-support .c-heading.--white .c-heading__line {
   background: #fff;
}

#inhouse-support .c-heading.--gray .c-heading__en {
   color: #404040;
}

#inhouse-support .c-heading.--gray .c-heading__line {
   background: #404040;
}

#inhouse-support .c-heading.--orange .c-heading__en {
   color: #ff630c;
}

#inhouse-support .c-heading.--orange .c-heading__line {
   background: #ff630c;
}

#inhouse-support .c-heading__en {
   text-align: center;
   font-weight: 700;
   font-size: 14px;
   color: #E3EEFF;
   text-transform: uppercase;
   margin-bottom: 0px;
   background:#2AA0D0;
   border: 1px solid #2C7CFF;
   padding: 6px 18px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-heading {
      gap: 32px;
   }

   #inhouse-support .c-heading__en {
      font-size: 14px;
   }
}

#inhouse-support .c-heading__title {
   font-size: 25px;
   font-weight: 400;
   line-height: 1.25;
   letter-spacing: 0.03em;
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-heading__title {
      font-size: 36px;
      margin-top: 0px;
   }
}

#inhouse-support .c-heading__title.--bk {
   color: #404040;
}

#inhouse-support .c-heading__title span {
   font-weight: 300;
   font-family: Montserrat;
}

#inhouse-support .c-heading__desc {
   font-weight: 500;
   color: #777;
   letter-spacing: 0.03em;
   padding-top: 40px;
}

@media screen and (max-width: 767px) {
   #inhouse-support .c-heading__desc {
      text-align: justify;
      padding-top: 0;
   }
}

#inhouse-support .c-heading__line {
   display: block;
   background: #555;
   width: 40px;
   height: 1px;
}

#inhouse-support .c-button {
   position: relative;
   display: flex;
   width: 327px;
   padding: 24px 56px;
   justify-content: center;
   align-items: center;
   gap: 8px;
   font-size: 18px;
   font-weight: 500;
   border-radius: 4px;
   line-height: 1;
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-button {
      padding: 24px 50px;
   }

   #inhouse-support .c-button:first-child {
      padding: 24px 40px 24px 58px;
   }
}

#inhouse-support .c-button::before {
   position: absolute;
   content: "";
   top: 50%;
   right: 24px;
   transform: translateY(-50%);
}

#inhouse-support .c-button.--dl {
   background: #2aa0d0;
   color: #fff;
   border: 1px solid #fff;
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-button.--dl {
      max-width: 272px;
   }
}

#inhouse-support .c-button.--dl::before {
   background: url(../images/page-inhouse-support/icon-dl.svg) no-repeat center center/contain;
   width: 16px;
   aspect-ratio: 1/1;
}

#inhouse-support .c-button.--dl::after {
   position: absolute;
   content: "";
   top: 50%;
   left: 16px;
   transform: translateY(-50%);
   background: url(../images/page-inhouse-support/button-paper.webp) no-repeat center center/contain;
   width: 46px;
   aspect-ratio: 26/38;
}

#inhouse-support .c-button.--dl .c-button__head {
   color: #2aa0d0;
   background: #fff;
}

#inhouse-support .c-button.--contact {
   background: #fff;
   color: #2aa0d0;
   border: 1px solid #2aa0d0;
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-button.--contact {
      max-width: 238px;
   }
}

#inhouse-support .c-button.--contact::before {
   background-image: url("../images/page-inhouse-support/icon-arrow-right.svg");
   background-repeat: no-repeat;
   background-size: contain;
   width: 10px;
   aspect-ratio: 10/8;
}

#inhouse-support .c-button.--contact .c-button__head {
   color: #fff;
   background: #2aa0d0;
}

#inhouse-support .c-button.--blue {
   background: #2aa0d0;
   color: #fff;
   border: 1px solid #fff;
}

#inhouse-support .c-button.--blue::before {
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10' fill='none'%3E%3Cpath d='M1 1L11 5L1 9' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-size: contain;
   width: 10px;
   aspect-ratio: 10/8;
}

#inhouse-support .c-button__head {
   position: absolute;
   font-size: 12px;
   line-height: normal;
   font-weight: 600;
   padding: 1px 16px 4px;
   border-radius: 32px;
   top: 0;
   left: 50%;
   transform: translate(-50%, -50%);
   white-space: nowrap;
}

#inhouse-support .c-button-new {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 70px;
   padding: 0;
   background-image: linear-gradient(135deg, #22A1E2, #7A78EA);
   color: #fff;
   font-weight: 700;
   font-size: 18px;
   letter-spacing: 0.04em;
   line-height: 1;
   border-radius: 8px;
   position: relative;
   box-shadow: inset 0 0 4px #fff, 0 4px 4px rgba(255, 255, 255, 0.25);
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-button-new {
      width: 325px;
      font-size: 20px;
   }
}

#inhouse-support .c-wrap {
   width: 100%;
   max-width: 100%;
   margin: 0 auto;
   padding: 0 24px;
   box-sizing: border-box;
   position: relative;
}

@media screen and (min-width: 768px) {
   #inhouse-support .c-wrap {
      max-width: 720px;
      padding: 0;
   }
}

@media screen and (min-width: 1024px) {
   #inhouse-support .c-wrap {
      max-width: 960px;
   }
}

@media screen and (min-width: 1201px) {
   #inhouse-support .c-wrap {
      max-width: 1128px;
   }
}

.header__catch {
   display: none;
}

#inhouse-support .header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 90px;
   z-index: 99;
   border-bottom: 1px solid #eee;
   background: #fff;
}

#inhouse-support .header__inner {
   position: relative;
   padding: 12px 24px;
   z-index: 1;
   height: 100%;
   box-sizing: border-box;
}

@media screen and (min-width: 768px) {
   #inhouse-support .header__inner {
      padding: 16px 32px;
   }
}

#inhouse-support .header__wrap {
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 100%;
   gap: 12px;
}

#inhouse-support .header__brand {
   display: flex;
   align-items: center;
   gap: 8px;
   position: relative;
   z-index: 10;
   min-width: 0;
   flex-shrink: 1;
}

#inhouse-support .header__logo {
   display: block;
   width: 80px;
   flex-shrink: 0;
}

#inhouse-support .header__catch {
   font-size: 13px;
   font-weight: 500;
   line-height: 1.35;
   color: #333;
}

@media screen and (min-width: 768px) {
   #inhouse-support .header__catch {
      white-space: nowrap;
   }
}

#inhouse-support .header__catch span {
   color: #2aa0d0;
}

@media screen and (min-width: 768px) {
   #inhouse-support .header__container {
      display: flex;
      gap: 25px;
   }
}

#inhouse-support .header__nav {
   padding-top: 126px;
   position: absolute;
   top: 0;
   left: 0;
   width: 100vw;
   height: 100dvh;
   background: #fff;
   display: flex;
   flex-direction: column;
   gap: 43px;
   align-items: center;
   transform: translateX(100%);
   transition: 0.5s;
}

#inhouse-support .header__nav.is-active {
   transform: translateX(0%);
}

@media screen and (min-width: 1280px) {
   #inhouse-support .header__nav {
      padding-top: 0;
      position: static;
      background: transparent;
      flex-direction: row;
      gap: 40px;
      width: auto;
      height: auto;
      transform: translateX(0%);
   }
}

#inhouse-support .header__nav-links {
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 27px;
}

@media screen and (min-width: 1280px) {
   #inhouse-support .header__nav-links {
      flex-direction: row;
      gap: 24px;
   }
}

#inhouse-support .header__nav-link {
   color: #404040;
   font-size: 16px;
   font-weight: 300;
}

#inhouse-support .header__nav-buttons {
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 12px;
}

@media screen and (min-width: 1280px) {
   #inhouse-support .header__nav-buttons {
      display: none;
   }
}

#inhouse-support .header__nav-button {
   display: flex;
   width: 263px;
   padding: 16px 32px;
   justify-content: center;
   align-items: center;
   font-size: 16px;
   font-weight: 500;
   border-radius: 4px;
   line-height: 1;
}

#inhouse-support .header__nav-button.--dl {
   background: #2aa0d0;
   color: #fff;
   border: 1px solid #fff;
}

@media screen and (min-width: 768px) {
   #inhouse-support .header__nav-button.--dl {
      max-width: 272px;
   }
}

#inhouse-support .header__nav-button.--contact {
   background: #fff;
   color: #2aa0d0;
   border: 1px solid #2aa0d0;
}

#inhouse-support .header__tel {
   display: flex;
   flex-direction: column;
   align-items: center;
   line-height: normal;
}

#inhouse-support .header__tel-content {
   display: flex;
   align-items: end;
   gap: 4px;
}

#inhouse-support .header__tel-icon {
   width: 11px;
}

#inhouse-support .header__tel-num {
   color: #333;
   font-size: 18px;
   font-weight: 400;
   letter-spacing: 0.01em;
}

#inhouse-support .header__tel-data {
   color: #888;
   font-size: 13px;
   font-weight: 400;
}

#inhouse-support .header__buttons {
   display: flex;
   align-items: center;
   gap: 12px;
   flex-shrink: 0;
}

@media screen and (max-width: 767px) {
   #inhouse-support .header__buttons .header__button {
      display: none;
   }
}

#inhouse-support .header__button {
   display: flex;
   padding: 6px 15px;
   justify-content: center;
   align-items: center;
   border: 1px solid #2aa0d0;
   border-radius: 4px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .header__button {
      padding: 8px 19px;
   }
}

#inhouse-support .header__button.--dl {
   background: #fff;
   color: #2aa0d0;
}

#inhouse-support .header__button.--contact {
   background: #2aa0d0;
   color: #fff;
}

#inhouse-support .header__drawer-button {
   position: relative;
   z-index: 10;
   padding-block: 8px;
   display: flex;
   flex-direction: column;
   gap: 8px;
   width: 24px;
}

@media screen and (min-width: 1280px) {
   #inhouse-support .header__drawer-button {
      display: none;
   }
}

#inhouse-support .header__drawer-button span {
   width: 24px;
   height: 1px;
   display: block;
   background: #2aa0d0;
   transition: 0.3s;
}

#inhouse-support .header__drawer-button.is-active span {
   width: 28px;
   background: #404040;
}

#inhouse-support .header__drawer-button.is-active span:nth-child(1) {
   transform: translateY(9px) rotate(45deg);
}

#inhouse-support .header__drawer-button.is-active span:nth-child(2) {
   opacity: 0;
}

#inhouse-support .header__drawer-button.is-active span:nth-child(3) {
   transform: translateY(-9px) rotate(-45deg);
}

#inhouse-support .fv {
   position: relative;
   padding-top: 154px;
   padding-bottom: 65px;
}

@media screen and (min-width: 1280px) {
   #inhouse-support .fv {
      padding-top: 197px;
      padding-bottom: 65px;
   }
}

#inhouse-support .fv__wrap {
   padding-inline: 24px;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 44px;
}

@media screen and (min-width: 1024px) {
   #inhouse-support .fv__wrap {
      flex-direction: row;
      justify-content: space-between;
      max-width: 900px;
      margin: 0 auto;
      padding: 0;
   }
}

@media screen and (min-width: 1280px) {
   #inhouse-support .fv__wrap {
      padding-inline: 50px 90px;
      width: 100%;
      max-width: 1288px;
   }
}

#inhouse-support .fv__body {
   display: flex;
   flex-direction: column;
   gap: 24px;
}

@media screen and (min-width: 1280px) {
   #inhouse-support .fv__body {
      gap: 40px;
   }
}

#inhouse-support .fv__content {
   display: flex;
   flex-direction: column;
}

#inhouse-support .fv__title {
   color: #000;
   font-size: 55px;
   font-weight: 700;
   line-height: 1.55;
}

#inhouse-support .fv__sub-title {
   font-size: 18px;
   font-weight: 700;
   white-space: nowrap;
   color: #2AA0D0;
}

#inhouse-support .fv__text {
   font-size: 15px;
   font-weight: 500;
   letter-spacing: 0.04em;
   padding-top: 20px;
}

#inhouse-support .fv__buttons {
   display: flex;
   align-items: center;
   gap: 14px;
}


#inhouse-support .fv__buttons {
   display: flex;
   flex-direction: column;
   gap: 16px;
}
@media screen and (min-width: 768px) {
   #inhouse-support .fv__buttons .c-button {
      max-width: 327px;
   }
}
@media screen and (min-width: 1280px) {
   #inhouse-support .fv__buttons {
      flex-direction: row;
   }
}
@media screen and (min-width: 1280px) and (min-width: 768px) {
   #inhouse-support .fv__buttons .--dl {
      max-width: 222px;
   }
}
@media screen and (min-width: 1280px) and (min-width: 768px) {
   #inhouse-support .fv__buttons .--contact {
      max-width: 228px;
      padding: 24px 26px;
   }
}

#inhouse-support .c-button {
   position: relative;
   display: flex;
   width: 247px;
   padding: 24px 56px;
   justify-content: center;
   align-items: center;
   gap: 8px;
   font-size: 16px;
   font-weight: 500;
   border-radius: 4px;
   line-height: 1;
}
@media screen and (min-width: 768px) {
   #inhouse-support .c-button {
      padding: 24px 50px;
   }
}
#inhouse-support .c-button::before {
   position: absolute;
   content: "";
   top: 50%;
   right: 24px;
   transform: translateY(-50%);
}
#inhouse-support .c-button.--dl {
   background: #2aa0d0;
   color: #fff;
   border: 1px solid #fff;
}
@media screen and (min-width: 768px) {
   #inhouse-support .c-button.--dl {
      max-width: 272px;
   }
}
#inhouse-support .c-button.--dl::before {
   background: url(../images/page-llmo/icon-dl.svg) no-repeat center center/contain;
   width: 16px;
   aspect-ratio: 1/1;
}
#inhouse-support .c-button.--dl::after {
   position: absolute;
   content: "";
   top: 50%;
   left: 16px;
   transform: translateY(-50%);
   background: url(../images/page-llmo/button-paper.webp) no-repeat center center/contain;
   width: 46px;
   aspect-ratio: 26/38;
}
#inhouse-support .c-button.--dl .c-button__head {
   color: #2aa0d0;
   background: #fff;
}
#inhouse-support .c-button.--contact {
   background: #fff;
   color: #2aa0d0;
   border: 1px solid #2aa0d0;
}
@media screen and (min-width: 768px) {
   #inhouse-support .c-button.--contact {
      max-width: 238px;
   }
}
#inhouse-support .c-button.--contact::before {
   background-image: url("../images/page-llmo/icon-arrow-right.svg");
   background-repeat: no-repeat;
   background-size: contain;
   width: 10px;
   aspect-ratio: 10/8;
}
#inhouse-support .c-button.--contact .c-button__head {
   color: #fff;
   background: #2aa0d0;
}
#inhouse-support .c-button.--blue {
   background: #2aa0d0;
   color: #fff;
   border: 1px solid #fff;
}
#inhouse-support .c-button.--blue::before {
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10' fill='none'%3E%3Cpath d='M1 1L11 5L1 9' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-size: contain;
   width: 10px;
   aspect-ratio: 10/8;
}
#inhouse-support .c-button__head {
   position: absolute;
   font-size: 12px;
   line-height: normal;
   font-weight: 600;
   padding: 1px 16px 4px;
   border-radius: 32px;
   top: 0;
   left: 50%;
   transform: translate(-50%, -50%);
   white-space: nowrap;
}

@media screen and (max-width: 767px) {
   #inhouse-support .fv__sub-title {
      font-size: 14px;
   }

   #inhouse-support .fv__title {
      font-size: 32px;
   }

   #inhouse-support .fv__text {
      font-size: 14px;
   }

   #inhouse-support .fv__buttons {
      flex-direction: column;
   }

   #inhouse-support .fv__buttons a {
      width: 100%;
      box-sizing: border-box;
   }
}

#inhouse-support .fv__image {
   position: relative;
   display: block;
   width: 285px;
}

#inhouse-support .fv__image::after {
   position: absolute;
   content: "";
   z-index: -1;
   background: url(../images/page-inhouse-support/fv-img-bg-sp.webp) no-repeat center center/contain;
   width: 954px;
   aspect-ratio: 1/1;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

@media screen and (min-width: 1280px) {
   #inhouse-support .fv__image {
      width: 449px;
   }

   #inhouse-support .fv__image::after {
      margin-top: 20px;
      width: 1182px;
   }
}

#inhouse-support .sec01 {
   background-color: #F6F6F6;
   padding: 110px 0;
}

#inhouse-support .sec01 .list {
   list-style: none;
   font-weight: 500;
   font-size: 18px;
   letter-spacing: 0.03em;
   padding-top: 50px;
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap:20px;
}

#inhouse-support .sec01 .list dl {
   display: grid;
   grid-template-columns: 50px 1fr;
   align-items: center;
   gap: 20px;
   min-height: 118px;
   background-color: #fff;
   border: 1px solid #E3E3E3;
   box-shadow: 0 0 8px rgba(0, 0, 0, 0.06);
   margin: 0;
   padding: 0 25px;
   border-radius: 0px;
}

#inhouse-support .sec01 .list dl dd {
   margin: 0;
   line-height: 150%;
}

#inhouse-support .sec01 .list dl span {
   color:#2AA0D0;
}

#inhouse-support .sec01 .arrow {
   width: 32px;
   margin: 25px auto 10px auto;
}

#inhouse-support .sec01 h3 {
   font-weight: 500;
   font-size: 36px;
   text-align: center;
   line-height: 140%;
}

#inhouse-support .sec01 h3 span {
   background: #4BAED6;
   -webkit-background-clip: text;
   background-clip: text;
   -webkit-text-fill-color: transparent;
   color: transparent;
}

#inhouse-support .sec01 .box {
   background-color: #fff;
   border-radius: 0px;
   margin-top: 60px;
   padding: 35px 35px 55px;
}

#inhouse-support .sec01 .box h4 {
   font-weight: 700;
   font-size: 22px;
   line-height: 1.5;
   text-align: center;
}

#inhouse-support .sec01 .box .txt {
   font-size: 17px;
   line-height: 1.95;
   letter-spacing: 0.02em;
   padding-top: 20px;
}

@media screen and (max-width: 1023px) {
   #inhouse-support .sec01 .list {
      grid-template-columns: 1fr;
   }
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec01 {
      padding: 80px 0;
   }

   #inhouse-support .sec01 .list {
      padding-top: 40px;
      font-size: 16px;
   }

   #inhouse-support .sec01 .list dl {
      display: flex;
      flex-direction: column;
      gap: 10px;
      border-radius: 20px;
      padding: 20px;
      font-size: 14px;
   }

   #inhouse-support .sec01 .arrow {
      width: 30px;
      margin: 25px auto 15px;
   }

   #inhouse-support .sec01 h3 {
      font-size: 18px;
   }

   #inhouse-support .sec01 .box {
      border-radius: 12px;
      margin-top: 40px;
      padding: 30px 20px;
   }

   #inhouse-support .sec01 .box h4 {
      font-size: 18px;
   }

   #inhouse-support .sec01 .box .txt {
      font-size: 14px;
      padding-top: 15px;
   }
}

#inhouse-support .sec02 {
   padding-block: 70px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02 {
      padding-block: 110px;
   }
}

#inhouse-support .sec02_head {
   display: flex;
   justify-content: center;
   gap: 32px;
   padding-top: 40px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head {
      gap: 49px;
      padding-top: 56px;
   }
}

#inhouse-support .sec02_head dl {
   flex: 0 0 auto;
   display: flex;
   flex-direction: column;
   align-items: center;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl {
      width: auto;
   }
}

#inhouse-support .sec02_head dl dt {
   font-size: 14px;
   font-family: "Inter", "Noto Sans JP", sans-serif;
   font-weight: 400;
   letter-spacing: 0.01em;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl dt {
      font-size: 20px;
   }
}

#inhouse-support .sec02_head dl dd {
   display: flex;
   align-items: center;
   margin: 0;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl dd {
      margin-top: -8px;
   }
}

#inhouse-support .sec02_head dl dd img {
   flex: 0 0 auto;
   width: 31px;
   height: auto;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl dd img {
      width: 66px;
   }
}

#inhouse-support .sec02_head dl dd p {
   flex: 1 1 auto;
   padding-left: 10px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl dd p {
      padding-left: 24px;
   }
}

#inhouse-support .sec02_head dl dd p .num {
   font-size: 32px;
   color: #2AA0D0;
   font-family: "Outfit", sans-serif;
   font-weight: 200;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl dd p .num {
      font-size: 72px;
   }
}

#inhouse-support .sec02_head dl dd p small {
   font-family: "Inter", "Noto Sans JP", sans-serif;
   font-size: 14px;
   font-weight: 400;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_head dl dd p small {
      font-size: 16px;
   }
}

#inhouse-support .sec02_body {
   margin-top: 30px;
   display: flex;
   flex-direction: column;
   gap: 16px;
   color: #404040;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_body {
      align-items: center;
      text-align: center;
      gap: 24px;
   }
}

#inhouse-support .sec02_title {
   margin-inline: auto;
   width: 312px;
   color: #fff;
   text-align: center;
   font-size: 24px;
   line-height: 1.4;
   font-weight: 500;
   background: #2aa0d0;
   letter-spacing: -0.02em;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_title {
      padding: 0px 21px;
      max-width: inherit;
      width: -moz-fit-content;
      width: fit-content;
      font-size: 44px;
      font-weight: 400;
      display: flex;
      align-items: center;
   }
}

#inhouse-support .sec02_title span {
   display: inline-block;
   font-size: 16px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_title span {
      margin-top: 10px;
      font-size: 31px;
   }
}

#inhouse-support .sec02_catch {
   font-size: 18px;
   font-weight: 400;
   line-height: 1.2;
   text-align: center;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_catch {
      font-size: 28px;
   }
}

#inhouse-support .sec02_text {
   font-size: 14px;
   font-weight: 400;
   line-height: 160%;
   text-align: center;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec02_text {
      font-size: 16px;
      line-height: 150%;
   }
}

#inhouse-support .sec03 {
   background-color: #F9F9F9;
   padding: 110px 0;
}

#inhouse-support .sec03 .box {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 16px;
   padding-top: 40px;
}

#inhouse-support .sec03 .box .col {
   display: flex;
   flex-direction: column;
   background-color: #fff;
   border: 1px solid #E3E3E3;
   border-radius: 0px;
   padding: 30px 25px;
   text-align: center;
}

#inhouse-support .sec03 .box .no {
   font-weight: 500;
   font-size: 22px;
}

#inhouse-support .sec03 .box .no span {
   background: #2aa0d0;
   -webkit-background-clip: text;
   background-clip: text;
   -webkit-text-fill-color: transparent;
   color: transparent;
}

#inhouse-support .sec03 .box figure {
   width: 50px;
   margin: 0 auto;
   padding-top: 30px;
}

#inhouse-support .sec03 .box h3 {
   display: flex;
   justify-content: center;
   font-weight: 500;
   min-height: 90px;
   font-size: 18px;
   line-height: 1.72;
   letter-spacing: 0em;
   padding-top: 25px;
}

#inhouse-support .sec03 .box .txt {
   text-align: justify;
   padding-top: 20px;
}

#inhouse-support .sec03 .box .txt p:not(:last-child) {
   padding-bottom: 20px;
}

@media screen and (max-width: 1200px) {
   #inhouse-support .sec03 .box .col {
      padding: 30px;
   }
}

@media screen and (max-width: 1023px) {
   #inhouse-support .sec03 .box {
      display: flex;
      flex-direction: column;
      align-items: center;
   }

   #inhouse-support .sec03 .box .col {
      width: 362px;
      padding: 40px;
   }
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec03 {
      padding: 80px 0;
   }

   #inhouse-support .sec03 .desc {
      padding-top: 30px;
   }

   #inhouse-support .sec03 .box {
      padding-top: 30px;
   }

   #inhouse-support .sec03 .box .col {
      width: 100%;
      padding: 30px;
   }

   #inhouse-support .sec03 .box .no {
      font-size: 18px;
   }

   #inhouse-support .sec03 .box figure {
      padding-top: 20px;
   }

   #inhouse-support .sec03 .box h3 {
      font-size: 18px;
      padding-top: 20px;
   }
}

#inhouse-support .sec04 {
   padding: 110px 0;
}

#inhouse-support .sec04__items {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 50px;
   padding-top: 50px;
}

#inhouse-support .sec04__item {
   display: flex;
   flex-direction: column;
   gap: 15px;
   border: 1px solid #E3E3E3;
   border-radius: 0px;
   padding: 35px;
}

#inhouse-support .sec04__item figure {
   max-width: 60px;
   margin: 0;
}

#inhouse-support .sec04__item h3 {
   font-weight: 500;
   font-size: 20px;
   letter-spacing: 0;
   padding-top: 5px;
}

@media screen and (max-width: 1023px) {
   #inhouse-support .sec04__items {
      grid-template-columns: 1fr;
   }
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec04 {
      padding: 80px 0;
   }

   #inhouse-support .sec04__items {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   #inhouse-support .sec04__item {
      padding: 30px;
   }

   #inhouse-support .sec04__item h3 {
      font-size: 18px;
   }
}

#inhouse-support .sec05 {
   background-color: #F9F9F9;
   padding: 110px 0;
}

#inhouse-support .sec05 .box {
   display: flex;
   flex-wrap: wrap;
   gap: 12px;
   padding-top: 70px;
}

#inhouse-support .sec05 .box dl {
   display: grid;
   grid-template-columns: 40px 1fr;
   align-items: center;
   gap: 20px;
   background-color: #fff;
   border: 1px solid #E3E3E3;
   border-radius: 0px;
   width: calc(50% - 6px);
   height: 94px;
   margin: 0;
   padding: 0 20px;
   box-sizing: border-box;
}

#inhouse-support .sec05 .box dl dd {
   font-weight: 500;
   font-size: 19px;
   line-height: 1.7;
   margin: 0;
}

@media screen and (max-width: 1023px) {
   #inhouse-support .sec05 .box dl {
      gap: 15px;
      width: 100%;
   }
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec05 {
      padding: 80px 0;
   }

   #inhouse-support .sec05 .box {
      gap: 10px;
      padding-top: 40px;
   }

   #inhouse-support .sec05 .box dl {
      grid-template-columns: 30px 1fr;
      gap: 10px;
      width: 100%;
      height: 80px;
      padding: 0 10px;
   }

   #inhouse-support .sec05 .box dl dd {
      font-size: 16px;
      line-height: 1.5;
   }
}

#inhouse-support .sec06 {
   padding: 110px 0;
}

#inhouse-support .sec06 .box {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 30px;
   padding-top: 70px;
}

#inhouse-support .sec06 .box .item {
   background-color: #F9F9F9;
   padding: 35px;
}

#inhouse-support .sec06 .box h3 {
   display: grid;
   grid-template-columns: 93px 1fr;
   align-items: center;
   gap: 17px;
   font-weight: 500;
   font-size: 20px;
   line-height: 28px;
   letter-spacing: 0.03em;
   color: #2AA0D0;
}
#inhouse-support .sec06 .box h3 span {
   background-color: rgba(42, 160, 208, 0.84);
   color: #fff;
   text-align: center;
   text-transform: uppercase;
   font-weight: 700;
   font-size: 13px;
   letter-spacing: 0;
}

#inhouse-support .sec06 .box ul {
   line-height: 1.95;
   list-style: none;
   margin: 0;
   padding: 30px 0 0;
}

#inhouse-support .sec06 .box ul li {
   text-indent: -17px;
   padding-left: 17px;
}

#inhouse-support .sec06 .catch {
   font-weight: 500;
   font-size: 36px;
   line-height: 1.48;
   text-align: center;
   padding-top: 50px;
}

#inhouse-support .sec06 .catch span {
   color: #2AA0D0;
}

@media screen and (max-width: 1023px) {
   #inhouse-support .sec06 .box {
      grid-template-columns: 1fr;
   }
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec06 {
      padding: 80px 0;
   }

   #inhouse-support .sec06 .box {
      padding-top: 40px;
   }

   #inhouse-support .sec06 .box .item {
      padding: 20px;
   }

   #inhouse-support .sec06 .box h3 {
      grid-template-columns: 70px 1fr;
      gap: 10px;
      font-size: 18px;
   }

   #inhouse-support .sec06 .box ul {
      padding-top: 15px;
   }

   #inhouse-support .sec06 .box ul li {
      text-indent: -15px;
      padding-left: 15px;
   }

   #inhouse-support .sec06 .catch {
      font-size: 20px;
   }
}

#inhouse-support .sec07 {
   background-color: #F9F9F9;
   padding: 110px 0;
}

#inhouse-support .sec07 .txt {
   margin: 0;
   padding: 70px 0 0;
   font-weight: 500;
   font-size: 20px;
}

#inhouse-support .sec07 .txt li {
   display: flex;
   align-items: center;
   min-height: 94px;
   background: url('../images/page-inhouse-support/check-mark.webp') no-repeat center left 25px / 37px auto;
   background-color: #fff;
   border: 1px solid #E3E3E3;
   padding: 10px 25px 10px 70px;
}

#inhouse-support .sec07 .txt li:not(:last-child) {
   margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
   #inhouse-support .sec07 {
      padding: 80px 0;
   }
   #inhouse-support .sec07 .txt {
      padding-top: 30px;
      font-size: 16px;
      line-height: 1.5;
   }
   #inhouse-support .sec07 .txt li {
      background-position: center left 10px;
      background-size: 25px auto;
      padding: 10px 10px 10px 40px;
   }
}

#inhouse-support .media_member {
   background: #fff;
   padding: 110px 0;
}

#inhouse-support .sec_media_member__container {
   margin-top: 70px;
}

@media screen and (max-width: 767px) {
   #inhouse-support .media_member {
      padding: 80px 0;
   }

   #inhouse-support .sec_media_member__container {
      margin-top: 40px;
   }
}

#inhouse-support .sec08 {
   background-color: #F9F9F9;
   padding: 110px 0;
}

#inhouse-support .sec08__list {
   margin: 50px 0 0;
   padding: 0;
   display: flex;
   flex-direction: column;
   gap: 24px;
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec08 {
      padding: 80px 0;
   }
}

@media screen and (min-width: 1024px) {
   #inhouse-support .sec08__list {
      flex-direction: row;
      gap: 24px;
   }
}

#inhouse-support .sec08__item {
   display: flex;
   flex-direction: column;
   align-items: center;
   padding: 24px;
   background-color: #fff;
   border-width: 1px;
   border-style: solid;
   border-color: #eee;
}

@media screen and (min-width: 1024px) {
   #inhouse-support .sec08__item {
      padding: 24px;
   }
}

#inhouse-support .sec08__item-icon {
   flex: 0 0 auto;
   width: 96px;
}

#inhouse-support .sec08__item-title {
   margin-top: 16px;
   font-size: 18px;
   font-weight: 400;
   color: #2aa0d0;
   letter-spacing: -0.05em;
}

@media screen and (min-width: 1024px) {
   #inhouse-support .sec08__item-title {
      margin-top: 32px;
      font-size: 18px;
   }
}

#inhouse-support .sec08__item-text {
   margin-top: 16px;
   font-size: 14px;
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: -0.01em;
}

@media screen and (min-width: 1024px) {
   #inhouse-support .sec08__item-text {
      font-size: 14px;
   }
}

#inhouse-support .sec09 {
   padding: 110px 0;
}

#inhouse-support .sec09__img {
   padding-top: 35px;
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec09 {
      padding: 80px 0;
   }
}

#inhouse-support .sec10 {
   padding-bottom: 110px;
}

@media screen and (max-width: 767px) {
   #inhouse-support .sec10 {
      padding-bottom: 80px;
   }
}

#inhouse-support .sec10__wrap {
   padding-inline: 0;
   max-width: 100%;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec10__wrap {
      padding-inline: 0;
      max-width: 100%;
   }
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10__wrap {
      padding-inline: 50px;
      max-width: 1200px;
   }
}

#inhouse-support .sec10__container {
   margin-top: 41px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec10__container {
      margin-top: 35px;
   }
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10 .swiper-wrapper {
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      gap: 32px 40px;
      width: 100%;
   }
}

#inhouse-support .sec10 .swiper-slide {
   width: auto;
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10 .swiper-slide {
      width: calc((100% - 80px) / 3);
      height: 100%;
   }
}

#inhouse-support .sec10 .swiper {
   padding-inline: 24px;
   padding-bottom: 18px;
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10 .swiper {
      padding: 0;
   }
}

#inhouse-support .sec10__item {
   width: 279px;
   height: 444px;
   display: flex;
   flex-direction: column;
   gap: 14px;
   border: 1px solid #eee;
   background: #fff;
}

#inhouse-support .sec10__item:hover {
   transform: scale(1);
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10__item {
      width: 100%;
      height: auto;
      min-height: 458px;
      gap: 16px;
   }
}

#inhouse-support .sec10__img {
   overflow: hidden;
   aspect-ratio: 279/182;
   flex-shrink: 0;
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10__img {
      aspect-ratio: 340/222;
      width: 100%;
   }
}

#inhouse-support .sec10__img img {
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center;
   object-position: center;
   width: 100%;
   height: 100%;
}

#inhouse-support .sec10__content {
   padding-inline: 16px;
   padding-bottom: 12px;
   display: flex;
   flex-direction: column;
   align-items: end;
   gap: 50px;
   height: 100%;
   justify-content: space-between;
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10__content {
      padding-inline: 24px;
      gap: 8px;
   }
}

#inhouse-support .sec10__body {
   display: flex;
   flex-direction: column;
   align-items: start;
   gap: 14px;
   width: 100%;
}

#inhouse-support .sec10__head {
   display: flex;
   justify-content: space-between;
   gap: 3px;
   width: 100%;
}

#inhouse-support .sec10__com {
   color: #333;
   font-size: 16px;
   font-weight: 700;
   line-height: normal;
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10__com {
      font-size: 18px;
   }
}

#inhouse-support .sec10__time {
   color: #888;
   font-size: 14px;
   font-weight: 400;
}

#inhouse-support .sec10__text {
   color: #000;
   font-size: 14px;
   font-weight: 400;
   line-height: 150%;
}

@media screen and (min-width: 1080px) {
   #inhouse-support .sec10__text {
      font-size: 16px;
   }
}

#inhouse-support .sec10__tag {
   padding: 4px 12px;
   font-size: 13px;
   font-weight: 500;
   line-height: 140%;
   border-radius: 24px;
   background: rgba(42, 160, 208, 0.1);
}

#inhouse-support .sec10__button {
   position: relative;
   width: 36px;
   height: 36px;
   aspect-ratio: 1/1;
   border: 1px solid #eee;
   background: #f8f8f8;
}

#inhouse-support .sec10__button::before {
   position: absolute;
   content: "";
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='13' viewBox='0 0 6 13' fill='none'%3E%3Cpath d='M1 1L5.5 6.4L1 11.8' stroke='%232AA0D0' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-size: contain;
   background-position: center;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   aspect-ratio: 4.5/10.8;
   width: 5px;
}

#inhouse-support .sec10__scrollbar {
   left: 24px;
   width: calc(100% - 48px);
   background: #fff;
}

#inhouse-support .sec10__scrollbar .swiper-scrollbar-drag {
   background: #ccc;
}

#inhouse-support .sec11 {
   overflow: hidden;
   position: relative;
   background: #edf7fc;
   padding: 50px 0;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11 {
      padding: 110px 0 110px;
   }
}

#inhouse-support .sec11__inner {
   position: relative;
   z-index: 1;
   display: flex;
   flex-direction: column;
   gap: 20px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__inner {
      align-items: center;
   }
}

#inhouse-support .sec11__desc {
   text-align: center;
   letter-spacing: 0.03em;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__desc {
      padding-top: 50px;
   }
}

#inhouse-support .sec11__button {
   padding-block: 42px;
   position: relative;
   border-radius: 8px;
   background: #2aa0d0;
   display: flex;
   justify-content: center;
   gap: 16px;
   color: #fff;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__button {
      padding-block: 49px;
      padding-right: 20px;
      align-items: center;
      margin-top: 21px;
      max-width: 694px;
      width: 100%;
      gap: 37px;
   }
}

@media screen and (min-width: 1024px) {
   #inhouse-support .sec11__button {
      max-width: 840px;
   }
}

#inhouse-support .sec11__img {
   width: 79px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__img {
      width: 138px;
   }
}

#inhouse-support .sec11__text {
   font-size: 22px;
   font-weight: 300;
   line-height: 120%;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__text {
      font-size: 28px;
   }
}

#inhouse-support .sec11__text span {
   font-size: 28px;
   line-height: 120%;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__text span {
      font-size: 44px;
   }
}

#inhouse-support .sec11__dl-icon {
   display: none;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__dl-icon {
      margin-left: -20px;
      display: flex;
      align-items: center;
      width: 69px;
      aspect-ratio: 1/1;
   }
}

#inhouse-support .sec11__dl {
   position: absolute;
   display: flex;
   align-items: center;
   gap: 12px;
   bottom: 16px;
   right: 16px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__dl {
      gap: 22px;
      bottom: 20px;
      right: 19px;
   }
}

#inhouse-support .sec11__dl-text {
   font-size: 14px;
   font-weight: 400;
   line-height: 120%;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__dl-text {
      font-size: 20px;
   }
}

#inhouse-support .sec11__dl-arrow {
   width: 12px;
   aspect-ratio: 5/4;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__dl-arrow {
      width: 19px;
   }
}

#inhouse-support .sec11__bg-text {
   position: absolute;
   color: #e3f3fa;
   font-family: Montserrat;
   font-size: 120px;
   font-weight: 400;
   line-height: 100%;
   left: -6px;
   bottom: -18px;
   z-index: 0;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec11__bg-text {
      font-size: 192px;
      left: 25px;
      bottom: -26px;
   }
}

#inhouse-support .sec11__bg-img {
   width: 92%;
   position: absolute;
   bottom: 0;
   right: 1.8%;
}

#inhouse-support .sec12 {
   background-color: #F8F9FA;
   padding-block: 60px 70px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec12 {
      padding-block: 110px;
   }
}

#inhouse-support .sec12__inner {
   max-width: 1063px;
   margin: 0 auto;
}

#inhouse-support .sec12__items {
   margin-top: 43px;
   display: flex;
   flex-direction: column;
   gap: 15px;
}

#inhouse-support .sec12__item {
   padding: 16px;
   background: #fff;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec12__item {
      padding: 27px 30px;
   }
}

#inhouse-support .sec12__head {
   display: flex;
   justify-content: space-between;
   align-items: start;
   gap: 14px;
}

#inhouse-support .sec12__head-inner {
   display: flex;
   align-items: start;
   gap: 20px;
}

#inhouse-support .sec12__head-text {
   color: #000;
   font-size: 14px;
   font-weight: 400;
   line-height: 150%;
   letter-spacing: -0.01em;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec12__head-text {
      padding-top: 6px;
      font-size: 16px;
   }
}

#inhouse-support .sec12__head-icon {
   margin-top: 16px;
   width: 13px;
   height: -moz-fit-content;
   height: fit-content;
   flex-shrink: 0;
   aspect-ratio: 12/8;
   display: flex;
   transition: 0.3s;
}

#inhouse-support .sec12__head-icon.is-open {
   transform: rotate(180deg);
}

#inhouse-support .sec12__num {
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   width: 40px;
   aspect-ratio: 1/1;
   background: #2aa0d0;
   flex-shrink: 0;
}

#inhouse-support .sec12__num-text {
   color: #fff;
   font-family: Montserrat;
   font-size: 24px;
   font-weight: 400;
   line-height: normal;
}

#inhouse-support .sec12__body {
   padding-top: 16px;
}

#inhouse-support .sec12__body-text {
   color: #666;
   font-size: 14px;
   font-weight: 400;
   line-height: 150%;
}

@keyframes infinity-scroll-right-pc {
   0% {
      background-position: 0 0;
   }

   100% {
      background-position: 2461px 0;
   }
}

@keyframes infinity-scroll-right-sp {
   0% {
      background-position: 0 0;
   }

   100% {
      background-position: 1987px 0;
   }
}

@keyframes infinity-scroll-left-pc {
   0% {
      background-position: 0 0;
   }

   100% {
      background-position: -2461px 0;
   }
}

@keyframes infinity-scroll-left-sp {
   0% {
      background-position: 0 0;
   }

   100% {
      background-position: -1987px 0;
   }
}

#inhouse-support .sec13 {
   padding-block: 60px 65px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec13 {
      padding-block: 83px 117px;
   }
}

#inhouse-support .sec13__wrap {
   display: flex;
   flex-direction: column;
   align-items: center;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec13__wrap {
      max-width: 1131px;
   }
}

#inhouse-support .sec13__items {
   margin-top: 46px;
   display: flex;
   flex-direction: column;
   gap: 32px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec13__items {
      margin-top: 50px;
   }
}

#inhouse-support .sec13__item {
   display: flex;
   flex-direction: column;
   gap: 9px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec13__item {
      flex-direction: row;
      align-items: center;
      gap: 30px;
   }
}

#inhouse-support .sec13__img {
   overflow: hidden;
   border-radius: 2px;
   background: #d9d9d9;
   aspect-ratio: 531/283;
   width: 100%;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec13__img {
      width: 51.5033947624%;
      flex-shrink: 0;
   }
}

#inhouse-support .sec13__img img {
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center;
   object-position: center;
   width: 100%;
   height: 100%;
}

#inhouse-support .sec13__body {
   display: flex;
   flex-direction: column;
   gap: 8px;
}

#inhouse-support .sec13__time {
   color: #888;
   font-size: 14px;
   font-weight: 400;
   line-height: normal;
}

#inhouse-support .sec13__title {
   color: #333;
   font-size: 16px;
   font-weight: 400;
   line-height: normal;
   letter-spacing: -0.01em;
}

@media screen and (min-width: 768px) {
   #inhouse-support .sec13__title {
      font-size: 20px;
   }
}

#inhouse-support .sec13__button {
   margin-top: 56px;
}

#inhouse-support .m-scroll {
   margin-top: 50px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .m-scroll {
      margin-top: 146px;
   }
}

#inhouse-support .m-scroll_top {
   position: relative;
   z-index: 10;
   width: 100%;
   height: 88px;
   background-image: url("../images/page-inhouse-support/loop-img-top-sp.webp");
   background-size: 1908px;
   background-repeat: repeat-x;
   animation: infinity-scroll-right-sp 80s infinite linear 0.5s both;
}

@media screen and (min-width: 768px) {
   #inhouse-support .m-scroll_top {
      width: 100%;
      height: 113px;
      background-image: url("../images/page-inhouse-support/loop-img-top-pc.webp");
      background-size: 2461px;
      animation: infinity-scroll-right-pc 80s infinite linear 0.5s both;
   }
}

#inhouse-support .m-scroll_bottom {
   position: relative;
   z-index: 10;
   width: 100%;
   height: 88px;
   background-image: url("../images/page-inhouse-support/loop-img-bottom-sp.webp");
   background-size: 1908px;
   background-repeat: repeat-x;
   animation: infinity-scroll-left-sp 80s infinite linear 0.5s both;
}

@media screen and (min-width: 768px) {
   #inhouse-support .m-scroll_bottom {
      width: 100%;
      height: 113px;
      background-image: url("../images/page-inhouse-support/loop-img-bottom-pc.webp");
      background-size: 2461px;
      animation: infinity-scroll-left-pc 80s infinite linear 0.5s both;
   }
}

/* ========== Fixed CTA bar / header catch (グロナビ施策) ========== */
#inhouse-support .c-fixed-cta {
   display: none;
   position: fixed;
   top: auto;
   left: 0;
   right: 0;
   bottom: 0;
   width: auto;
   max-width: none;
   z-index: 98;
   pointer-events: auto;
}

#inhouse-support .c-fixed-cta__list {
   display: flex;
   align-items: stretch;
   flex-direction: row;
   margin: 0;
   padding: 0;
}

#inhouse-support .c-fixed-cta__item {
   flex: 1;
   list-style: none;
}

#inhouse-support .c-fixed-cta__button {
   display: flex;
   align-items: center;
   justify-content: center;
   color: #fff;
   font-size: 1.5rem;
   padding: 8px;
   background: #2aa0d0;
   width: auto;
   height: 48px;
   border-radius: 0;
   text-decoration: none;
   box-sizing: border-box;
}

#inhouse-support .c-fixed-cta__inner {
   display: flex;
   align-items: center;
   gap: 8px;
   width: auto;
   overflow: hidden;
}

#inhouse-support .c-fixed-cta__icon {
   flex: 0 0 auto;
}

#inhouse-support .c-fixed-cta__icon img,
#inhouse-support .c-icon.-download {
   width: auto;
   height: 24px;
   vertical-align: middle;
}

#inhouse-support .c-fixed-cta__label {
   flex: 0 0 auto;
   white-space: nowrap;
}

#inhouse-support .c-fixed-cta__button.-accent {
   background: #fff;
   color: #2aa0d0;
   border-top: 1px solid #2aa0d0;
}

#inhouse-support .site-main {
   padding-bottom: 48px;
}

@media (max-width: 767px) {
   #inhouse-support .c-fixed-cta {
      display: block;
   }
}

#inhouse-support .br-sp {
   display: block;
}

@media screen and (min-width: 1500px) {
   #inhouse-support .br-sp {
      display: none;
   }
}

#inhouse-support .cta {
   padding: 56px 0px 72px;
   background-image: linear-gradient(to right, #B5E2FA, #DCDCFF);
}

#inhouse-support .cta .c-button1 {
   position: relative;
   display: flex;
   width: 327px;
   padding: 24px 56px;
   justify-content: center;
   align-items: center;
   gap: 8px;
   font-size: 18px;
   font-weight: 500;
   border-radius: 4px;
   line-height: 1;
}

#inhouse-support .cta .c-button1:before {
   position: absolute;
   content: "";
   top: 50%;
   right: 24px;
   transform: translateY(-50%);
}

#inhouse-support .cta .c-button__head {
   position: absolute;
   font-size: 12px;
   line-height: normal;
   font-weight: 600;
   padding: 1px 16px 4px;
   border-radius: 32px;
   top: 0;
   left: 50%;
   transform: translate(-50%, -50%);
   white-space: nowrap;
}

#inhouse-support .cta .c-button1.dl {
   background: #2aa0d0;
   color: #fff;
   border: 1px solid #fff;
}

#inhouse-support .cta .c-button1.dl:before {
   background: url(../images/page-inhouse-support/icon-dl.svg) no-repeat center center/contain;
   width: 16px;
   aspect-ratio: 1/1;
}

#inhouse-support .cta .c-button1.dl:after {
   position: absolute;
   content: "";
   top: 50%;
   left: 16px;
   transform: translateY(-50%);
   background: url(../images/page-inhouse-support/button-paper.webp) no-repeat center center/contain;
   width: 46px;
   aspect-ratio: 26/38;
}

#inhouse-support .cta .c-button1.dl .c-button__head {
   color: #2aa0d0;
   background: #fff;
}

#inhouse-support .cta .c-button1.inq {
   background: #fff;
   color: #2aa0d0;
   border: 1px solid #2aa0d0;
}

#inhouse-support .cta .c-button1.inq:before {
   background-image: url(../images/page-inhouse-support/icon-arrow-right.svg);
   background-repeat: no-repeat;
   background-size: contain;
   width: 10px;
   aspect-ratio: 10 / 8;
}

#inhouse-support .cta .c-button1.inq .c-button__head {
   color: #fff;
   background: #2aa0d0;
}

@media screen and (min-width: 768px) {
   #inhouse-support .cta {
      padding: 110px 0px 110px;
   }
}

#inhouse-support .cta__content {
   margin-top: 55px;
   display: flex;
   flex-direction: column;
   gap: 25px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .cta__content {
      margin: 50px auto 0;
      max-width: 624px;
      gap: 16px;
   }
}

#inhouse-support .cta__buttons {
   display: flex;
   flex-direction: column;
   gap: 31px;
}

@media screen and (min-width: 768px) {
   #inhouse-support .cta__buttons {
      flex-direction: row;
      gap: 16px;
   }
}

#inhouse-support .cta .c-button {
   width: 100%;
   max-width: 100%;
}

@media screen and (min-width: 768px) {
   #inhouse-support .cta .c-button {
      width: calc((100% - 16px) / 2);
   }
}

#inhouse-support .cta__item {
   padding: 21px 0px;
   display: flex;
   flex-direction: column;
   align-items: center;
   background: #fff;
}

#inhouse-support .cta__item-head {
   font-size: 20px;
   font-weight: 400;
   line-height: normal;
}

#inhouse-support .cta__item-tel {
   margin-top: 12px;
   display: flex;
   align-items: center;
   gap: 12px;
}

#inhouse-support .cta__item-icon {
   width: 12px;
   display: flex;
   align-items: center;
}

#inhouse-support .cta__item-icon img {
   aspect-ratio: 12/17;
}

#inhouse-support .cta__item-num {
   font-size: 18px;
   font-weight: 400;
   line-height: normal;
}

#inhouse-support .cta__item-data {
   margin-top: 5px;
   font-size: 13px;
   font-weight: 400;
   line-height: normal;
}

.award-number__list {
   display: flex;
   gap:20px;
   margin:30px 0 0 -38px;
}

.award-number__list li {
   padding: 10px 40px;
   position: relative;
   list-style: none;
}

.award-number__list li:before {
   background-image: url('../images/page-inhouse-support/award-number-left.svg');
   background-position: 50%;
   background-repeat: no-repeat;
   background-size: contain;
   content: "";
   height: 100%;
   left: 0;
   position: absolute;
   top: 0;
   width: 40px;
}

.award-number__list li .title {
   color: #555;
   display: block;
   font-size:16px;
   font-weight: 400;
   line-height: 1.2;
   text-align: center;
   margin-bottom: 4px;
}

.award-number__list li .number {
   color: #2aa0d0;
   display: block;
   margin: 0 auto;
   position: relative;
}

.award-number__list li .number .count {
   font-family: Inter, sans-serif;
   font-size: 40px;
   font-weight: 700;
   left: 0;
   line-height: 1.2;
}

.award-number__list li:after {
   background-image: url(../images/page-inhouse-support/award-number-right.svg);
   background-position: 50%;
   background-repeat: no-repeat;
   background-size: contain;
   content: "";
   height: 100%;
   position: absolute;
   right: 0;
   top: 0;
   width: 40px;
}

.award-number__list li .number .unit {
   font-size: 15px;
   font-weight: 400;
   line-height: 1.2;
   margin: -2px 0 0 3px;
   font-weight: 700;
}


@media screen and (max-width: 768px) {
   .award-number__list {
      display: flex;
      gap:10px;
      margin:15px 0 0 -38px;
   }

   .award-number__list li {
      padding: 10px 35px;
      position: relative;
      list-style: none;
   }

   .award-number__list li:before {
      background-image: url(../images/page-inhouse-support/award-number-left.svg);
      background-position: 50%;
      background-repeat: no-repeat;
      background-size: contain;
      content: "";
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 30px;
   }

   .award-number__list li .title {
      color: #555;
      display: block;
      font-size:13px;
      font-weight: 400;
      line-height: 1;
      text-align: center;
      margin-bottom: 4px;
   }

   .award-number__list li .number {
      color: #2aa0d0;
      display: block;
      margin: 0 auto;
      position: relative;
   }

   .award-number__list li .number .count {
      font-family: Inter, sans-serif;
      font-size: 26px;
      font-weight: 700;
      left: 0;
      line-height: 1.1;
   }

   .award-number__list li:after {
      background-image: url(../images/page-inhouse-support/award-number-right.svg);
      background-position: 50%;
      background-repeat: no-repeat;
      background-size: contain;
      content: "";
      height: 100%;
      position: absolute;
      right: 0;
      top: 0;
      width: 30px;
   }

   .award-number__list li .number .unit {
      font-size: 13px;
      font-weight: 400;
      line-height: 1.1;
      margin: -2px 0 0 2px;
   }



}