@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* regular: 400, medium: 500, semibold: 600, bold: 700, black: 900 */
/* regular: 400, medium: 500, bold: 700, black: 900 */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400 */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* 余白 */
/* 縦書き */
/* 内径 */
/* mv
---------------------------------------------------------------------------*/
.mv {
  position: relative;
  width: 100%;
  height: 830px;
  background-image: url(../img/top/mv-bg.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-position: center bottom;
}
@media screen and (max-width: 1300px) {
  .mv {
    height: 63.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .mv {
    height: 175.4666666667vw;
    background-image: url(../img/top/mv-bg-sp.png);
  }
}
.mv-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /* 1280 */
  width: 1240px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .mv-wrap {
    width: 95.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-wrap {
    width: 89.3333333333vw;
  }
}
.mv-wrap {
  position: relative;
  padding-top: 122px;
}
@media screen and (max-width: 1300px) {
  .mv-wrap {
    padding-top: 9.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.mv-tx {
  width: 540px;
  padding-top: 90px;
  font-weight: 700;
}
@media screen and (max-width: 1300px) {
  .mv-tx {
    width: 41.5384615385vw;
    padding-top: 6.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx {
    width: 100%;
    padding-top: 1.3333333333vw;
  }
}
.mv-tx-catch {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 31px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-catch {
    font-size: 2.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-catch {
    font-size: 8.2666666667vw;
  }
}
.mv-tx-catch {
  margin-bottom: 20px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-catch {
    margin-bottom: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-catch {
    font-size: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.mv-tx-ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1.2;
  margin-bottom: 20px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-ttl {
    margin-bottom: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl {
    margin-bottom: 5.3333333333vw;
  }
}
.mv-tx-ttl strong {
  font-size: 73px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-ttl strong {
    font-size: 5.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl strong {
    font-size: 19.4666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl strong {
    font-size: 12.8vw;
  }
}
.mv-tx-ttl strong span {
  position: relative;
  display: inline-block;
  padding-top: 8px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-ttl strong span {
    padding-top: 0.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl strong span {
    padding-top: 2.1333333333vw;
  }
}
.mv-tx-ttl strong span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 10px;
  height: 10px;
  background: #004AAD;
  border-radius: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 1300px) {
  .mv-tx-ttl strong span::before {
    width: 0.7692307692vw;
    height: 0.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl strong span::before {
    width: 2.4vw;
    height: 2.4vw;
  }
}
.mv-tx-ttl small {
  font-size: 57px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-ttl small {
    font-size: 4.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl small {
    font-size: 15.2vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl small {
    font-size: 10.1333333333vw;
  }
}
.mv-tx-ttl b {
  font-size: 70px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-ttl b {
    font-size: 5.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl b {
    font-size: 18.6666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ttl b {
    font-size: 12.2666666667vw;
  }
}
.mv-tx-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-list {
    gap: 0.4615384615vw;
    margin-bottom: 3.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-list {
    gap: 1.6vw;
    margin-bottom: 5.3333333333vw;
  }
}
.mv-tx-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 163px;
  height: 40px;
  line-height: 40px;
  border-radius: 20px;
  font-size: 20px;
}
@media screen and (max-width: 1300px) {
  .mv-tx-list li {
    font-size: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-list li {
    font-size: 5.3333333333vw;
  }
}
@media screen and (max-width: 1300px) {
  .mv-tx-list li {
    width: 12.5384615385vw;
    height: 3.0769230769vw;
    line-height: 3.0769230769vw;
    border-radius: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-list li {
    width: 28.2666666667vw;
    font-size: 3.4666666667vw;
    height: 6.9333333333vw;
    line-height: 6.9333333333vw;
    border-radius: 3.4666666667vw;
  }
}
.mv-tx-list li:nth-of-type(1) {
  background-color: #DFDDF9;
}
.mv-tx-list li:nth-of-type(2) {
  background-color: #C3E8FB;
}
.mv-tx-list li:nth-of-type(3) {
  background-color: #C7DBEE;
}
.mv-tx .btn-grad {
  width: 380px;
}
@media screen and (max-width: 1300px) {
  .mv-tx .btn-grad {
    width: 29.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx .btn-grad {
    width: 100%;
  }
}
.mv-tx .btn-grad a {
  height: 75px;
  line-height: 75px;
  border-radius: 37.5px;
  font-size: 22px;
}
@media screen and (max-width: 1300px) {
  .mv-tx .btn-grad a {
    font-size: 1.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx .btn-grad a {
    font-size: 5.8666666667vw;
  }
}
@media screen and (max-width: 1300px) {
  .mv-tx .btn-grad a {
    height: 5.7692307692vw;
    line-height: 5.7692307692vw;
    border-radius: 2.8846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx .btn-grad a {
    font-size: 4.5vw;
    height: 17.8666666667vw;
    line-height: 17.8666666667vw;
    border-radius: 8.9333333333vw;
  }
}
.mv-tx-ill {
  position: absolute;
  left: 407px;
  top: 534px;
  width: 286px;
  height: 142px;
  z-index: 100;
}
@media screen and (max-width: 1300px) {
  .mv-tx-ill {
    left: 31.3076923077vw;
    top: 41.0769230769vw;
    width: 22vw;
    height: 10.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-tx-ill {
    width: 37.3333333333vw;
    height: 18.6666666667vw;
    top: 63.2vw;
    left: -7.2vw;
  }
}
.mv-sl {
  width: 656px;
}
@media screen and (max-width: 1300px) {
  .mv-sl {
    width: 50.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-sl {
    width: 79.4666666667vw;
    margin-left: auto;
    margin-right: 0;
  }
}
.mv-sl {
  /* fade 下のレイヤーが透けないように */
}
.mv-sl .swiper-slide {
  opacity: 0 !important;
}
.mv-sl .swiper-slide-active {
  opacity: 1 !important;
}
.mv-animation {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 99px;
}
@media screen and (max-width: 1300px) {
  .mv-animation {
    height: 7.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .mv-animation {
    height: 12vw;
  }
}
@-webkit-keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.mv .scroll-infinity__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}
.mv .scroll-infinity__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding: 0;
}
.mv .scroll-infinity__list--left {
  -webkit-animation: infinity-scroll-left 80s infinite linear 0.5s both;
          animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.mv .scroll-infinity__item {
  width: 851px;
  padding: 0 10px;
}
@media screen and (max-width: 1300px) {
  .mv .scroll-infinity__item {
    width: 65.4615384615vw;
    padding: 0 0.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .mv .scroll-infinity__item {
    width: 100vw;
    padding: 0 2.6666666667vw;
  }
}

/* worries
---------------------------------------------------------------------------*/
.worries {
  background-color: #F5F6F8;
  padding: 80px 0;
}
@media screen and (max-width: 1300px) {
  .worries {
    padding: 6.1538461538vw 0;
  }
}
@media screen and (max-width: 480px) {
  .worries {
    padding: 16vw 0 8vw;
  }
}
.worries-ttl {
  text-align: center;
  font-size: 36px;
}
@media screen and (max-width: 1300px) {
  .worries-ttl {
    font-size: 2.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-ttl {
    font-size: 9.6vw;
  }
}
.worries-ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 46px;
}
@media screen and (max-width: 1300px) {
  .worries-ttl {
    margin-bottom: 3.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-ttl {
    font-size: 4.8vw;
    margin-bottom: 8vw;
  }
}
.worries-ttl b {
  font-weight: 900;
}
.worries-ttl span {
  font-size: 39px;
}
@media screen and (max-width: 1300px) {
  .worries-ttl span {
    font-size: 3vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-ttl span {
    font-size: 10.4vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-ttl span {
    font-size: 5.6vw;
  }
}
.worries-ttl strong {
  font-size: 52px;
}
@media screen and (max-width: 1300px) {
  .worries-ttl strong {
    font-size: 4vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-ttl strong {
    font-size: 13.8666666667vw;
  }
}
.worries-ttl strong {
  font-weight: 900;
  background-image: url(../img/top/worries-marker.png);
  background-size: 100% auto;
  background-position: center bottom;
  background-repeat: no-repeat;
}
@media screen and (max-width: 480px) {
  .worries-ttl strong {
    font-size: 7.4666666667vw;
  }
}
.worries-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 32px;
  margin-bottom: 50px;
}
@media screen and (max-width: 1300px) {
  .worries-list {
    gap: 2.4615384615vw;
    margin-bottom: 3.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8vw;
    margin-bottom: 10.6666666667vw;
  }
}
.worries-list > li {
  width: 310px;
  background-color: #ffffff;
  -webkit-box-shadow: 0px 0px 18.3486px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 18.3486px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  padding: 32px 58px 24px;
}
@media screen and (max-width: 1300px) {
  .worries-list > li {
    width: 23.8461538462vw;
    padding: 2.4615384615vw 4.4615384615vw 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list > li {
    width: 82.6666666667vw;
    padding: 8vw;
  }
}
.worries-list-ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  margin-bottom: 10px;
  font-weight: 900;
  width: calc(100% + 6em);
  margin-left: -3em;
  margin-right: -3em;
}
@media screen and (max-width: 1300px) {
  .worries-list-ttl {
    margin-bottom: 0.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-ttl {
    margin-bottom: 2.6666666667vw;
  }
}
.worries-list-ttl span {
  font-size: 32px;
}
@media screen and (max-width: 1300px) {
  .worries-list-ttl span {
    font-size: 2.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-ttl span {
    font-size: 8.5333333333vw;
  }
}
.worries-list-ttl small {
  font-size: 24px;
}
@media screen and (max-width: 1300px) {
  .worries-list-ttl small {
    font-size: 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-ttl small {
    font-size: 6.4vw;
  }
}
.worries-list-ttl small {
  margin-left: -0.5em;
}
@media screen and (max-width: 480px) {
  .worries-list-ill {
    margin-bottom: 5.3333333333vw;
  }
}
.worries-list-ill img {
  width: 157px;
  margin: 0 auto;
}
@media screen and (max-width: 1300px) {
  .worries-list-ill img {
    width: 12.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-ill img {
    width: 41.8666666667vw;
  }
}
.worries-list-hdl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 900;
  font-size: 24px;
}
@media screen and (max-width: 1300px) {
  .worries-list-hdl {
    font-size: 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-hdl {
    font-size: 6.4vw;
  }
}
.worries-list-hdl {
  text-align: center;
  margin-bottom: 10px;
}
@media screen and (max-width: 1300px) {
  .worries-list-hdl {
    margin-bottom: 0.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-hdl {
    margin-bottom: 2.6666666667vw;
  }
}
.worries-list-list li {
  position: relative;
  font-size: 16px;
}
@media screen and (max-width: 1300px) {
  .worries-list-list li {
    font-size: 1.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-list li {
    font-size: 4.2666666667vw;
  }
}
.worries-list-list li {
  font-weight: 600;
  padding: 0.4em 0 0.4em 30px;
}
@media screen and (max-width: 1300px) {
  .worries-list-list li {
    padding: 0.4em 0 0.4em 2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-list li {
    padding: 0.4em 0 0.4em 8vw;
  }
}
.worries-list-list li::before {
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url(../img/top/worries-icon-check.png);
}
@media screen and (max-width: 1300px) {
  .worries-list-list li::before {
    width: 1.6923076923vw;
    height: 1.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-list-list li::before {
    width: 5.8666666667vw;
    height: 5.8666666667vw;
  }
}
.worries-list-list li + li {
  border-top: 1px dotted #4A7FC5;
}
.worries-tx {
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5;
}
.worries-tx-desc01 {
  font-size: 24px;
}
@media screen and (max-width: 1300px) {
  .worries-tx-desc01 {
    font-size: 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-tx-desc01 {
    font-size: 6.4vw;
  }
}
.worries-tx-desc01 {
  margin-bottom: 10px;
}
@media screen and (max-width: 1300px) {
  .worries-tx-desc01 {
    margin-bottom: 0.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-tx-desc01 {
    font-size: 4.2666666667vw;
    margin-bottom: 8vw;
  }
}
.worries-tx-desc01 span {
  color: #004AAD;
}
.worries-tx-desc02 {
  font-size: 36px;
}
@media screen and (max-width: 1300px) {
  .worries-tx-desc02 {
    font-size: 2.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-tx-desc02 {
    font-size: 9.6vw;
  }
}
@media screen and (max-width: 480px) {
  .worries-tx-desc02 {
    font-size: 6.9333333333vw;
  }
}
.worries-tx-desc02 span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, rgba(153, 158, 159, 0.6)));
  background: linear-gradient(transparent 70%, rgba(153, 158, 159, 0.6) 70%);
}
.worries-tx-desc02 strong {
  font-weight: 900;
}

/* solution
---------------------------------------------------------------------------*/
.solution {
  position: relative;
  background-color: #0448A2;
  padding: 67px 0 50px;
  color: #ffffff;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 100px;
}
@media screen and (max-width: 1300px) {
  .solution {
    padding: 5.1538461538vw 0 3.8461538462vw;
    margin-bottom: 7.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .solution {
    padding: 17.8666666667vw 0 5.3333333333vw;
    margin-bottom: 16vw;
  }
}
.solution::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-top: 87px solid #F5F6F8;
  border-left: 373px solid transparent;
  border-right: 373px solid transparent;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -44px;
}
@media screen and (max-width: 1300px) {
  .solution::before {
    border-top-width: 6.6923076923vw;
    border-left-width: 28.6923076923vw;
    border-right-width: 28.6923076923vw;
    top: -3.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .solution::before {
    border-top-width: 16.8vw;
    border-left-width: 99.4666666667vw;
    border-right-width: 99.4666666667vw;
    top: -3.7333333333vw;
  }
}
.solution-ttl {
  position: relative;
  line-height: 1.2;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 700;
  text-align: center;
  font-size: 50px;
}
@media screen and (max-width: 1300px) {
  .solution-ttl {
    font-size: 3.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .solution-ttl {
    font-size: 13.3333333333vw;
  }
}
@media screen and (max-width: 480px) {
  .solution-ttl {
    font-size: 6.9333333333vw;
  }
}
.solution-ttl strong {
  font-weight: 900;
}
.solution-ttl::before, .solution-ttl::after {
  position: absolute;
  content: "";
  width: 76px;
  height: 76px;
  background-image: url(../img/top/solution-ttl-icon.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  top: 0;
}
@media screen and (max-width: 1300px) {
  .solution-ttl::before, .solution-ttl::after {
    width: 5.8461538462vw;
    height: 5.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .solution-ttl::before, .solution-ttl::after {
    width: 14.9333333333vw;
    height: 14.9333333333vw;
    top: 1.3333333333vw;
  }
}
.solution-ttl::before {
  left: -146px;
}
@media screen and (max-width: 1300px) {
  .solution-ttl::before {
    left: -11.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .solution-ttl::before {
    left: -17.6vw;
  }
}
.solution-ttl::after {
  right: -146px;
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
@media screen and (max-width: 1300px) {
  .solution-ttl::after {
    right: -11.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .solution-ttl::after {
    right: -17.6vw;
  }
}

/* aboutus
---------------------------------------------------------------------------*/
.aboutus {
  /* 1080 */
  width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .aboutus {
    width: 84.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus {
    width: 89.3333333333vw;
  }
}
.aboutus {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 120px;
}
@media screen and (max-width: 1300px) {
  .aboutus {
    margin-bottom: 9.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus {
    display: block;
    margin-bottom: 16vw;
  }
}
.aboutus-img {
  width: 536px;
}
@media screen and (max-width: 1300px) {
  .aboutus-img {
    width: 41.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus-img {
    display: none;
  }
}
.aboutus-img > div {
  width: 730px;
  margin-left: -194px;
  margin-right: 0;
}
@media screen and (max-width: 1300px) {
  .aboutus-img > div {
    width: 56.1538461538vw;
    margin-left: -14.9230769231vw;
  }
}
.aboutus-img > div img {
  border-radius: 30px;
}
@media screen and (max-width: 1300px) {
  .aboutus-img > div img {
    border-radius: 2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus-img > div img {
    border-radius: 8vw;
  }
}
.aboutus-spimg {
  display: none;
}
@media screen and (max-width: 480px) {
  .aboutus-spimg {
    display: block;
    width: 100vw;
    margin: 5.3333333333vw -5.3333333333vw 10.6666666667vw;
  }
}
.aboutus-tx {
  width: 520px;
}
@media screen and (max-width: 1300px) {
  .aboutus-tx {
    width: 40vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus-tx {
    width: 100%;
  }
}
.aboutus-tx .desc {
  width: calc(100% + 2em);
  margin-left: 0;
  margin-right: -2em;
  margin-bottom: 1.6em;
  margin-top: 1.8em;
}
@media screen and (max-width: 480px) {
  .aboutus-tx .desc {
    width: 100%;
    margin-right: 0;
  }
}
.aboutus-tx .desc strong {
  font-weight: 600;
}
.aboutus-tx .desc span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #DECDFF));
  background: linear-gradient(transparent 70%, #DECDFF 70%);
}
.aboutus-tx .btn-def {
  width: 300px;
  margin-top: 34px;
}
@media screen and (max-width: 1300px) {
  .aboutus-tx .btn-def {
    width: 23.0769230769vw;
    margin-top: 2.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus-tx .btn-def {
    width: 80vw;
    margin-top: 10.6666666667vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.aboutus-tx .btn-def a {
  height: 60px;
  line-height: 60px;
  border-radius: 30px;
  font-size: 18px;
}
@media screen and (max-width: 1300px) {
  .aboutus-tx .btn-def a {
    font-size: 1.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus-tx .btn-def a {
    font-size: 4.8vw;
  }
}
@media screen and (max-width: 1300px) {
  .aboutus-tx .btn-def a {
    height: 4.6153846154vw;
    line-height: 4.6153846154vw;
    border-radius: 2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .aboutus-tx .btn-def a {
    font-size: 4.2666666667vw;
    height: 16vw;
    line-height: 16vw;
    border-radius: 8vw;
  }
}

/* service
---------------------------------------------------------------------------*/
.service {
  background-image: url(../img/top/service-bg.png);
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 100px 0 120px;
}
@media screen and (max-width: 1300px) {
  .service {
    padding: 7.6923076923vw 0 9.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .service {
    padding: 16vw 0;
    background-image: url(../img/top/service-bg-sp.png);
  }
}
.service-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /* 980 */
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .service-main {
    width: 76.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .service-main {
    width: 89.3333333333vw;
  }
}
.service-main {
  margin-bottom: 100px;
}
@media screen and (max-width: 1300px) {
  .service-main {
    margin-bottom: 7.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .service-main {
    display: block;
    margin-bottom: 16vw;
  }
}
.service-main-spimg {
  display: none;
}
@media screen and (max-width: 480px) {
  .service-main-spimg {
    display: block;
    width: 100%;
    margin: 5.3333333333vw 0 10.6666666667vw;
  }
}
.service-main-tx {
  width: 500px;
}
@media screen and (max-width: 1300px) {
  .service-main-tx {
    width: 38.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .service-main-tx {
    width: 100%;
  }
}
.service-main-tx .catch {
  margin-top: 1.8em;
}
.service-main-tx .desc strong {
  font-weight: 700;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #DECDFF));
  background: linear-gradient(transparent 70%, #DECDFF 70%);
}
.service-main-tx .desc + .desc {
  margin-top: 1.6em;
}
@media screen and (max-width: 480px) {
  .service-main-tx .desc + .desc {
    letter-spacing: -0.04em;
  }
}
.service-main-img {
  width: 443px;
}
@media screen and (max-width: 1300px) {
  .service-main-img {
    width: 34.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .service-main-img {
    display: none;
  }
}
.service-team {
  /* 980 */
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .service-team {
    width: 76.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .service-team {
    width: 89.3333333333vw;
  }
}
.service-team {
  margin-bottom: 125px;
}
@media screen and (max-width: 1300px) {
  .service-team {
    margin-bottom: 9.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .service-team {
    margin-bottom: 13.3333333333vw;
  }
}
.service-list {
  /* 980 */
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .service-list {
    width: 76.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list {
    width: 89.3333333333vw;
  }
}
.service-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 58px;
}
@media screen and (max-width: 1300px) {
  .service-list {
    margin-bottom: 4.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 10.6666666667vw;
    gap: 10.6666666667vw 1.8666666667vw;
  }
}
.service-list li {
  position: relative;
  width: 236px;
  background-color: #ffffff;
  border-radius: 9px;
}
@media screen and (max-width: 1300px) {
  .service-list li {
    border-radius: 0.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list li {
    border-radius: 2.4vw;
  }
}
.service-list li {
  -webkit-box-shadow: 0px 0px 18.1818px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 18.1818px rgba(0, 0, 0, 0.2);
  padding: 40px 30px 30px;
  text-align: center;
}
@media screen and (max-width: 1300px) {
  .service-list li {
    width: 18.1538461538vw;
    padding: 3.0769230769vw 2.3076923077vw 2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list li {
    width: 42.6666666667vw;
    padding: 6.9333333333vw;
  }
}
.service-list li + li::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url(../img/top/service-list-arw.png);
  width: 40px;
  height: 80px;
  left: -30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 1300px) {
  .service-list li + li::before {
    width: 3.0769230769vw;
    height: 6.1538461538vw;
    left: -2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list li + li::before {
    display: none;
  }
}
.service-list-num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: absolute;
  left: 10px;
  top: -54px;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  font-style: italic;
}
@media screen and (max-width: 1300px) {
  .service-list-num {
    left: 0.7692307692vw;
    top: -4.1538461538vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-num {
    left: 2.6666666667vw;
    top: -6.9333333333vw;
  }
}
.service-list-num span {
  font-size: 21px;
}
@media screen and (max-width: 1300px) {
  .service-list-num span {
    font-size: 1.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-num span {
    font-size: 5.6vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-num span {
    font-size: 3.7333333333vw;
  }
}
.service-list-num strong {
  font-size: 58px;
}
@media screen and (max-width: 1300px) {
  .service-list-num strong {
    font-size: 4.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-num strong {
    font-size: 15.4666666667vw;
  }
}
.service-list-num strong {
  letter-spacing: -0.01em;
  color: #004AAD;
  font-weight: 500;
}
@media screen and (max-width: 480px) {
  .service-list-num strong {
    font-size: 10.6666666667vw;
  }
}
.service-list-ill {
  width: 128px;
  margin: 0 auto;
}
@media screen and (max-width: 1300px) {
  .service-list-ill {
    width: 9.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-ill {
    width: 23.2vw;
  }
}
.service-list-ttl {
  margin-top: 12px;
  margin-bottom: 20px;
  font-size: 21px;
}
@media screen and (max-width: 1300px) {
  .service-list-ttl {
    font-size: 1.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-ttl {
    font-size: 5.6vw;
  }
}
.service-list-ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 700;
}
@media screen and (max-width: 1300px) {
  .service-list-ttl {
    margin-top: 0.9230769231vw;
    margin-bottom: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-ttl {
    margin-top: 4.2666666667vw;
    margin-bottom: 4.2666666667vw;
    font-size: 4vw;
  }
}
.service-list-desc {
  font-size: 14px;
}
@media screen and (max-width: 1300px) {
  .service-list-desc {
    font-size: 1.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .service-list-desc {
    font-size: 3.7333333333vw;
  }
}
.service-list-desc {
  line-height: 1.5;
}
@media screen and (max-width: 480px) {
  .service-list-desc {
    font-size: 3.2vw;
  }
}
.service .btn-def {
  width: 300px;
  margin: 0 auto;
}
@media screen and (max-width: 1300px) {
  .service .btn-def {
    width: 23.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .service .btn-def {
    width: 80vw;
  }
}
.service .btn-def a {
  height: 60px;
  line-height: 60px;
  border-radius: 30px;
  font-size: 18px;
}
@media screen and (max-width: 1300px) {
  .service .btn-def a {
    font-size: 1.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .service .btn-def a {
    font-size: 4.8vw;
  }
}
@media screen and (max-width: 1300px) {
  .service .btn-def a {
    height: 4.6153846154vw;
    line-height: 4.6153846154vw;
    border-radius: 2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .service .btn-def a {
    font-size: 4.2666666667vw;
    height: 16vw;
    line-height: 16vw;
    border-radius: 8vw;
  }
}

/* reason
---------------------------------------------------------------------------*/
.reason {
  /* 1080 */
  width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .reason {
    width: 84.6153846154vw;
  }
}
@media screen and (max-width: 480px) {
  .reason {
    width: 89.3333333333vw;
  }
}
.reason {
  padding: 100px 0 120px;
  text-align: center;
}
@media screen and (max-width: 1300px) {
  .reason {
    padding: 7.6923076923vw 0 9.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .reason {
    padding: 16vw 0;
  }
}
.reason-ttl {
  font-size: 36px;
}
@media screen and (max-width: 1300px) {
  .reason-ttl {
    font-size: 2.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-ttl {
    font-size: 9.6vw;
  }
}
.reason-ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 700;
  margin-bottom: 40px;
}
@media screen and (max-width: 1300px) {
  .reason-ttl {
    margin-bottom: 3.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-ttl {
    font-size: 6.4vw;
    margin-bottom: 8vw;
    line-height: 1.2;
  }
}
.reason-ttl strong {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  font-weight: 700;
  color: #004AAD;
  font-size: 96px;
}
@media screen and (max-width: 1300px) {
  .reason-ttl strong {
    font-size: 7.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-ttl strong {
    font-size: 25.6vw;
  }
}
.reason-ttl strong {
  font-style: italic;
  margin-right: 0.1em;
}
@media screen and (max-width: 480px) {
  .reason-ttl strong {
    font-size: 17.0666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-ttl span {
    font-size: 8.5333333333vw;
  }
}
.reason-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 50px 58px;
}
@media screen and (max-width: 1300px) {
  .reason-list {
    gap: 3.8461538462vw 4.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-list {
    gap: 10.6666666667vw;
  }
}
.reason-list li {
  width: 328px;
}
@media screen and (max-width: 1300px) {
  .reason-list li {
    width: 25.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-list li {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .reason-list-ill img {
    width: 100%;
  }
}
.reason-list-tx {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
}
@media screen and (max-width: 1300px) {
  .reason-list-tx {
    font-size: 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .reason-list-tx {
    font-size: 6.4vw;
  }
}
.reason-list-tx {
  margin-top: 0.8em;
  margin-left: -1em;
  margin-right: -1em;
  width: calc(100% + 2em);
}
@media screen and (max-width: 480px) {
  .reason-list-tx {
    font-size: 5.3333333333vw;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

/* message
---------------------------------------------------------------------------*/
.message {
  background-image: url(../img/top/message-bg.png);
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 100px 0 120px;
  margin-bottom: 100px;
}
@media screen and (max-width: 1300px) {
  .message {
    padding: 7.6923076923vw 0 9.2307692308vw;
    margin-bottom: 7.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .message {
    padding: 16vw 0;
    margin-bottom: 16vw;
  }
}
.message-wrap {
  /* 980 */
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .message-wrap {
    width: 76.9230769231vw;
  }
}
@media screen and (max-width: 480px) {
  .message-wrap {
    width: 89.3333333333vw;
  }
}
.message-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 480px) {
  .message-wrap {
    display: block;
  }
}
.message-tx {
  width: 550px;
}
@media screen and (max-width: 1300px) {
  .message-tx {
    width: 42.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .message-tx {
    width: 100%;
  }
}
.message-tx .catch {
  margin-top: 1.8em;
}
.message-tx .desc {
  margin-bottom: 40px;
  line-height: 1.8;
}
@media screen and (max-width: 1300px) {
  .message-tx .desc {
    margin-bottom: 3.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .message-tx .desc {
    margin-bottom: 10.6666666667vw;
  }
}
.message-tx .btn-def {
  width: 300px;
}
@media screen and (max-width: 1300px) {
  .message-tx .btn-def {
    width: 23.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .message-tx .btn-def {
    width: 80vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.message-tx .btn-def a {
  height: 60px;
  line-height: 60px;
  border-radius: 30px;
  font-size: 18px;
}
@media screen and (max-width: 1300px) {
  .message-tx .btn-def a {
    font-size: 1.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .message-tx .btn-def a {
    font-size: 4.8vw;
  }
}
@media screen and (max-width: 1300px) {
  .message-tx .btn-def a {
    height: 4.6153846154vw;
    line-height: 4.6153846154vw;
    border-radius: 2.3076923077vw;
  }
}
@media screen and (max-width: 480px) {
  .message-tx .btn-def a {
    font-size: 4.2666666667vw;
    height: 16vw;
    line-height: 16vw;
    border-radius: 8vw;
  }
}
.message-img {
  width: 430px;
}
@media screen and (max-width: 1300px) {
  .message-img {
    width: 33.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .message-img {
    display: none;
  }
}
.message-img-ph {
  margin-bottom: 30px;
  padding-top: 27px;
}
@media screen and (max-width: 1300px) {
  .message-img-ph {
    margin-bottom: 2.3076923077vw;
    padding-top: 2.0769230769vw;
  }
}
@media screen and (max-width: 480px) {
  .message-img-ph {
    width: 69.3333333333vw;
    margin-left: auto;
    margin-right: auto;
    padding-top: 0;
  }
}
.message-img-ph img {
  border-radius: 20px;
}
@media screen and (max-width: 1300px) {
  .message-img-ph img {
    border-radius: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .message-img-ph img {
    border-radius: 5.3333333333vw;
  }
}
.message-img-small {
  font-size: 16px;
}
@media screen and (max-width: 1300px) {
  .message-img-small {
    font-size: 1.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .message-img-small {
    font-size: 4.2666666667vw;
  }
}
.message-img-small {
  text-align: center;
  line-height: 1.5;
  margin-bottom: 1em;
}
@media screen and (max-width: 480px) {
  .message-img-small {
    font-size: 3.7333333333vw;
  }
}
.message-img-name {
  font-size: 24px;
}
@media screen and (max-width: 1300px) {
  .message-img-name {
    font-size: 1.8461538462vw;
  }
}
@media screen and (max-width: 480px) {
  .message-img-name {
    font-size: 6.4vw;
  }
}
.message-img-name {
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .message-img-name {
    font-size: 5.3333333333vw;
  }
}
.message-spimg {
  display: none;
}
@media screen and (max-width: 480px) {
  .message-spimg {
    display: block;
    margin: 10.6666666667vw 0;
  }
}

/* case
---------------------------------------------------------------------------*/
.case {
  /* 1280 */
  width: 1240px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .case {
    width: 95.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .case {
    width: 89.3333333333vw;
  }
}
.case {
  padding: 0 0 100px;
}
@media screen and (max-width: 1300px) {
  .case {
    padding: 7.6923076923vw 0 7.6923076923vw;
  }
}
@media screen and (max-width: 480px) {
  .case {
    padding: 0 0 16vw;
  }
}
.case .hdl-en, .case .hdl-ja {
  text-align: center;
}
.case-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 45px;
  margin-top: 35px;
}
@media screen and (max-width: 1300px) {
  .case-list {
    margin-top: 2.6923076923vw;
    gap: 3.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list {
    display: none;
  }
}
.case-list li {
  width: 383px;
}
@media screen and (max-width: 1300px) {
  .case-list li {
    width: 29.4615384615vw;
  }
}
.case-list li a {
  display: block;
}
.case-list-img {
  position: relative;
  border-radius: 20px;
}
@media screen and (max-width: 1300px) {
  .case-list-img {
    border-radius: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-img {
    border-radius: 5.3333333333vw;
  }
}
.case-list-img {
  overflow: hidden;
  margin-bottom: 20px;
}
@media screen and (max-width: 1300px) {
  .case-list-img {
    margin-bottom: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-img {
    margin-bottom: 4.2666666667vw;
  }
}
.case-list-img img {
  width: 100%;
  height: 244px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}
@media screen and (max-width: 1300px) {
  .case-list-img img {
    height: 18.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-img img {
    height: 57.6vw;
  }
}
.case-list-tag {
  display: inline-block;
  font-size: 16px;
}
@media screen and (max-width: 1300px) {
  .case-list-tag {
    font-size: 1.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-tag {
    font-size: 4.2666666667vw;
  }
}
.case-list-tag {
  color: #ffffff;
  padding: 0.5em 1em;
  background-color: #38B6FF;
  border-radius: 16px;
}
@media screen and (max-width: 1300px) {
  .case-list-tag {
    border-radius: 1.2307692308vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-tag {
    border-radius: 4.2666666667vw;
  }
}
.case-list-tag {
  margin-bottom: 10px;
}
@media screen and (max-width: 1300px) {
  .case-list-tag {
    margin-bottom: 0.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-tag {
    font-size: 3.7333333333vw;
    margin-bottom: 2.6666666667vw;
  }
}
.case-list-ttl {
  font-size: 20px;
}
@media screen and (max-width: 1300px) {
  .case-list-ttl {
    font-size: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .case-list-ttl {
    font-size: 5.3333333333vw;
  }
}
.case-list-ttl {
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 480px) {
  .case-list-ttl {
    font-size: 4.8vw;
  }
}
.case-sl {
  display: none;
}
@media screen and (max-width: 480px) {
  .case-sl {
    display: block;
    position: relative;
    width: 100vw;
    margin-top: 8vw;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
  }
  .case-sl .swiper-slide a {
    display: block;
    padding: 0 5.3333333333vw;
  }
  .case-sl .casesl-pagination {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2.6666666667vw;
  }
  .case-sl .casesl-pagination .swiper-pagination-bullet {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    background-color: #D7D8DA;
    opacity: 1;
  }
  .case-sl .casesl-pagination .swiper-pagination-bullet-active {
    background-color: #004AAD;
  }
  .case-sl .casesl-next, .case-sl .casesl-prev {
    position: absolute;
    width: 6.1333333333vw;
    height: 12.5333333333vw;
    background-image: url(../img/top/case-sl-arw.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    top: 25.3333333333vw;
    z-index: 100;
  }
  .case-sl .casesl-next {
    right: 0;
  }
  .case-sl .casesl-prev {
    left: 0;
    -webkit-transform: scaleX(-1);
            transform: scaleX(-1);
  }
}

/* other
---------------------------------------------------------------------------*/
.other {
  /* 1280 */
  width: 1240px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1300px) {
  .other {
    width: 95.3846153846vw;
  }
}
@media screen and (max-width: 480px) {
  .other {
    width: 89.3333333333vw;
  }
}
.other {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 120px;
  padding-top: 20px;
}
@media screen and (max-width: 1300px) {
  .other {
    padding-bottom: 9.2307692308vw;
    padding-top: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .other {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 16vw;
    gap: 6.4vw;
  }
}
.other a {
  display: block;
  position: relative;
  width: 600px;
  height: 244px;
  border-radius: 20px;
}
@media screen and (max-width: 1300px) {
  .other a {
    border-radius: 1.5384615385vw;
  }
}
@media screen and (max-width: 480px) {
  .other a {
    border-radius: 5.3333333333vw;
  }
}
.other a {
  overflow: hidden;
}
@media screen and (max-width: 1300px) {
  .other a {
    width: 46.1538461538vw;
    height: 18.7692307692vw;
  }
}
@media screen and (max-width: 480px) {
  .other a {
    width: 100%;
    height: 36.8vw;
  }
}
.other-img {
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.other-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}
.other-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 32px;
}
@media screen and (max-width: 1300px) {
  .other-ttl {
    font-size: 2.4615384615vw;
  }
}
@media screen and (max-width: 480px) {
  .other-ttl {
    font-size: 8.5333333333vw;
  }
}
.other-ttl {
  color: #ffffff;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .other-ttl {
    font-size: 4.8vw;
  }
}