@charset "utf-8";

main {
  overflow-x: hidden;
}

/*===============
fv
================*/
.fv {
  margin-top: 89px;
  background: url("../imgs/index/fv.png") center center / cover no-repeat;
  width: 100%;
  /* max-height: 913px; */
  padding: 83px 0 312px;
  position: relative;
  opacity: 0;
  /* 初期状態は非表示 */
}

.fv__text {
  /* color: #fff;
  font-size: 18px;
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  line-height: 1.75;
  letter-spacing: 0.1em; */
  width: 100%;
  max-width: 632px;
  margin: 0 auto;
  opacity: 0;
}

.fv__text--sp {
  display: none;
}

.eachTextAnime span {
  opacity: 0;
}

.eachTextAnime.appeartext span {
  animation: text_anime_on 0.3s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fv__figure {
  width: 100%;
  max-width: 1366px;
  margin: 0 auto;
  position: absolute;
  bottom: -1.5%;
  left: 50%;
  z-index: 3;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  opacity: 0;
  /* 初期状態は非表示 */
}

/*===============
service
================*/
.service {
  padding-top: 15vw;
  position: relative;
}

.bg__img01 {
  background: url("../imgs/index/bg_01.png") top center / cover no-repeat;
  width: 100%;
  height: 63.402vw;
  /* max-height: 913px; */
  position: absolute;
  top: 0;
  z-index: 0;
}

.service__subTitle {
  font-size: 36px;
  text-align: center;
  margin-bottom: 68px;
  line-height: 2.18;
  letter-spacing: 0.2em;
}

.service__subTitle--type02 {
  text-align: left;
  margin-bottom: 24px;
}

.service__list {
  width: 100%;
  max-width: 1095px;
  padding-bottom: 100px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 44px 0;
}

.service__list--item {
  width: calc(92.2% / 3);
  max-width: 336px;
  margin-right: 3.9%;
}

.service__list--item:nth-child(3n) {
  margin-right: 0;
}

.service__list--img {
  display: block;
  margin-bottom: 23px;
}

.service__list--heading {
  font-size: 28px;
  margin-bottom: 10px;
  line-height: 1.14;
  letter-spacing: 0.14em;
}

.service__list--text {
  font-size: 20px;
  line-height: 2.06;
  letter-spacing: 0.05em;
}

.figure__wrap {
  width: 92%;
  max-width: 938px;
  margin: 0 auto;
  padding-bottom: 184px;
}

.deco__img1 {
  width: 484px;
  position: absolute;
  top: -13px;
  left: -242px;
}

.contents-wrap__type02 {
  width: 100%;
  max-width: 680px;
  margin: 0 auto 0 0;
}

.service__supportWrap {
  /* background: url("../imgs/index/bg_02.png") bottom 60px center / cover no-repeat;
  width: 100%;
  height: 152.083vw;
  max-height: 2190px;
  position: relative; */
  position: relative;
}

.service__support--bg {
  width: 100%;
}

.deco__img2 {
  width: 264px;
  position: absolute;
  bottom: 128px;
  right: 0;
  z-index: 1;
}

.service__support--figure {
  position: relative;
}

.service__support--img {
  position: absolute;
}

.service__support--illust01 {
  /* width: 433px;
  top: 297px;
  right: 220px; */
  width: 30.069vw;
  top: 20.625vw;
  right: 15.277vw;
  z-index: 1;
}

.service__support--illust02 {
  /* width: 188px;
  top: 666px;
  left: 570px; */
  width: 13.055vw;
  top: 46.25vw;
  left: 39.583vw;
}

.service__support--illust03 {
  /* width: 202px;
  top: 890px;
  left: 248px; */
  width: 14.027vw;
  top: 61.805vw;
  left: 17.222vw;
  z-index: 1;
}

.service__support--illust04 {
  /* width: 633px;
  bottom: 267px;
  left: 232px; */
  width: 43.958vw;
  bottom: 18.541vw;
  left: 16.111vw;
  z-index: 1;
}

.service__support--text01 {
  /* width: 291px;
  top: 64px;
  right: 216px; */
  width: 20.208vw;
  top: 4.444vw;
  right: 15vw;
}

.service__support--text02 {
  /* width: 256px;
  top: 620px;
  left: 221px; */
  width: 17.777vw;
  top: 43.055vw;
  left: 15.347vw;
}

.service__support--text03 {
  /* width: 219px;
  top: 880px;
  left: 560px; */
  width: 15.208vw;
  top: 61.111vw;
  left: 38.888vw;
}

.service__support--text04 {
  /* width: 203px;
  bottom: 526px;
  right: 394px; */
  width: 14.097vw;
  bottom: 36.527vw;
  right: 26.361vw;
}

.service__support--text05 {
  /* width: 229px;
  bottom: 176px;
  left: 472px; */
  width: 15.902vw;
  bottom: 12.222vw;
  left: 32.777vw;
  z-index: 2;
}

/*===============
design
================*/
.contents-wrap__textWrap--type02 {
  padding-bottom: 7%;
}

.photo__frame {
  padding-bottom: 88px;
}

.case-slide {
  padding-top: 265px;
  padding-bottom: 252px;
  position: relative;
}

/* スライド */
.case-swiper__pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: -40px;
}

.case-container {
  width: 100%;
  max-width: 100%;
  position: relative;
}

.case-swiper .swiper-wrapper {
  transition-timing-function: linear;
}

.case-swiper .swiper-slide {
  height: auto;
  padding: 59px 5% 36px;
  background-color: #fff;
}

.case-slide .splide__slide {
  height: auto;
  padding: 59px 5% 36px;
  background-color: #fff;
}

.case-swiper__pagination.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px 0;
}

/* ページネーションのサイズと色 */
.case-swiper__pagination .swiper-pagination-bullet {
  background-color: #fff;
  height: 13px;
  width: 13px;
  opacity: 0.4;
}

.case-swiper__pagination .swiper-pagination-bullet-active {
  background-color: #fff;
  opacity: 1;
}

/* スライド */

.splide {
  z-index: 2;
}

.splide__pagination {
  margin-top: 24px;
  gap: 0 8px;
}

.splide__pagination__page {
  display: block;
  height: 13px;
  width: 13px;
  border-radius: 90%;
  background-color: #fff;
  opacity: 0.4;
}

.splide__pagination__page.is-active {
  opacity: 1;
}

.case-slide__num {
  color: #fff;
  font-size: 54px;
  font-family: "OptimaLTPro-Roman";
  line-height: 1;
  letter-spacing: 0.05em;
}

.case-swiper__wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 100%;
  max-width: 1296px;
  margin: 0 auto;
  height: 100%;
}

.case-swiper__textWrap {
  width: 500px;
}

.case-swiper__text--num {
  font-size: 24px;
  font-family: "OptimaLTPro-Roman";
  margin-bottom: 30px;
  line-height: 1;
  letter-spacing: 0.05em;
}

.case-swiper__text--heading {
  font-size: 30px;
  margin-bottom: 15px;
  line-height: 1.44;
  letter-spacing: 0.2em;
}

.case-swiper__text--text {
  font-size: 18px;
  margin-bottom: 31px;
  line-height: 1.68;
  letter-spacing: 0.05em;
}

.case__listWrap {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.case__list {
  width: 100%;
}

.case__listWrap .case__list {
  width: 330px;
}

.case__list--item {
  display: flex;
}

.case__list--item:not(:last-child) {
  margin-bottom: 2px;
}

.case__list--heading,
.case__list--text {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  line-height: 1.35;
  letter-spacing: 0.05em;
}

.case__list--heading {
  width: 130px;
}

.case__list--text {
  width: calc(100% - 130px);
}

.case__logo {
  width: calc(100% - 330px);
  max-width: 170px;
  display: flex;
  justify-content: space-between;
}
.case__logo-img {
  width: 81px;
}

.case-swiper__imgWrap {
  width: calc(100% - 520px);
  max-width: 467px;
  position: relative;
}

/* スライド */
.case__imgSwiper {
  position: relative;
  padding-bottom: 26px;
}

.case__imgSwiper--pagination {
  bottom: 0;
}

.case__imgSwiper--pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 0;
  left: 0;
  text-align: left;
}

.case__imgContainer {
  width: 100%;
  max-width: 1260px;
  position: relative;
}

.case-swiper {
}

.case__imgSwiper .swiper-slide {
  padding: 0;
}

.case__imgSwiper--pagination.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px 0;
}

/* ページネーションのサイズと色 */
.case__imgSwiper--pagination .swiper-pagination-bullet {
  background-color: #e6e6e6;
  height: 13px;
  width: 13px;
  opacity: 0.4;
}

.case__imgSwiper--pagination .swiper-pagination-bullet-active {
  background-color: #454649;
  opacity: 1;
}

/* スライド */

.bg__img02 {
  width: 100%;
  max-width: 37.986vw;
  height: 100%;
  /* Occupy full height of parent */
  background: url("../imgs/index/bg_03.jpg") top center / cover repeat-y;
  position: absolute;
  top: 0;
  right: 0;
}

/*===============
msg
================*/

#msg {
  padding-top: 228px;
  padding-bottom: 95px;
}

#msg .section-title {
  margin-bottom: 10px;
}

.msg__title-ja {
  font-size: 23px;
  color: #fff;
  letter-spacing: 0.1em;
}

.msg__title-ja.clr--black {
  color: #231815;
}

.msg__title {
  margin-bottom: 45px;
}

.msg__round {
  max-width: 1225px;
  width: 94%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 100px;
  position: relative;
  font-size: 0;
}

.msg__round-parts1 {
  position: absolute;
  z-index: 1;
  top: 9.23%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 15.4%;
}

.msg__round-parts2 {
  position: absolute;
  z-index: 1;
  top: 26.4%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 38.3%;
}

.msg__round-area1 {
  display: flex;
  justify-content: center;
  position: absolute;
  z-index: 1;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  bottom: 16.3%;
  width: 67.2%;
}

.msg__round-parts3 {
  width: 29.3%;
}

.msg__round-parts3--1 {
  width: 51.4%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8%;
}

.msg__round-parts3--2 {
  width: 40.2%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 16%;
}

.msg__round-parts3--3 {
  width: 100%;
}

.msg__round-parts4 {
  width: 26%;
  margin-left: 9%;
  margin-right: 10.3%;
}

.msg__round-parts4--1 {
  width: 72%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8%;
}

.msg__round-parts4--2 {
  width: 39.4%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20.1%;
}

.msg__round-parts5 {
  width: 24%;
}

.msg__round-parts5--1 {
  width: 59%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8%;
}

.msg__round-parts5--2 {
  width: 42.6%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20.1%;
}

.msg__txt {
  font-size: 24px;
  line-height: 2.15;
  color: #fff;
  letter-spacing: 0.09em;
  margin-bottom: 30px;
  text-align: justify;
}

.msg__name {
  letter-spacing: 0.1em;
  line-height: 2;
  color: #fff;
  font-size: 28px;
  display: inline-block;
  text-align: left;
}

.msg__round-parts3 {
  width: 30%;
}

/*===============
result
================*/

#result {
  padding-top: 200px;
  padding-bottom: 200px;
  position: relative;
}

.result__bk {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../imgs/index/result_bk.png);
  background-size: 100% 100%;
  background-position-y: top;
  background-repeat: no-repeat;
}

#result .contents-wrap {
  margin-bottom: 290px;
}

.result__list {
  color: #fff;
}

.result__list--1 {
  margin-bottom: 120px;
}

.result__list--1 .result__list-item:not(:last-child) {
  margin-bottom: 84px;
}

.result__list--2 {
  display: flex;
  justify-content: space-between;
}

.result__list--2 .result__list-item {
  width: 45%;
}

.result__list-name {
  font-size: 31px;
  letter-spacing: 0.15em;
  margin-bottom: 14px;
}

.result__list-content {
  display: block;
}

.result__list-thum {
  margin-bottom: 15px;
}

.result__list-more {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  line-height: 1;
  font-family: "OptimaLTPro-Roman";
}

.result__list-more--txt {
  margin-right: 6px;
  font-size: 25px;
  padding-top: 0.5%;
  letter-spacing: 0.05em;
}

.result__list-content {
  cursor: pointer;
}

.result__list-content:hover {
}

#company {
  padding-top: 90px;
  padding-bottom: 228px;
}

#company .section-title {
  margin-bottom: 80px;
}

.company__contents:not(:last-child) {
  margin-bottom: 80px;
}

.company__head {
  font-size: 33px;
  letter-spacing: 0.19em;
  padding-bottom: 20px;
  margin-bottom: 30px;
  border-bottom: 1px #231815 solid;
}

.company__listWrap:not(:last-child) {
  margin-bottom: 38px;
}

.company__list--heading,
.company__list--text {
  font-size: 25px;
  font-weight: 400;
  line-height: 1.5;
}

.company__listWrap--sml {
  display: flex;
}

.company__list--heading.sml {
  width: 152px;
}

/*===============
contact
================*/
.contact__companyName {
  font-size: 49px;
  font-family: "OptimaLTPro-Roman";
  padding-top: 63px;
  margin-bottom: 140px;
  line-height: 1.35;
  letter-spacing: 0.05em;
}

#contact .msg__title-ja {
  margin-bottom: 80px;
}

.contact__contents {
  margin-bottom: 100px;
}

.contact__listTitle {
  font-size: 33px;
  padding-bottom: 31px;
  margin-bottom: 41px;
  line-height: 1.37;
  letter-spacing: 0.15em;
  border-bottom: 1px solid #231815;
}

.contact__list {
  margin-bottom: 26px;
}

.contact__listWrap:not(:last-child) {
  margin-bottom: 10px;
}

.contact__list.flex {
  display: flex;
  flex-wrap: wrap;
}

.contact__listWrap.flex {
  display: flex;
}

.contact__listWrap.flex:not(:last-child) {
  margin-right: 40px;
}

.contact__list--heading,
.contact__list--text {
  font-size: 25px;
  font-weight: 400;
  line-height: 1.5;
}

.contact__list.flex .contact__list--heading {
  margin-right: 15px;
}

.contact__access {
  font-size: 21px;
  line-height: 1.75;
}

.contact__gmap {
  height: 352px;
  margin-bottom: 30px;
}

.contact__gmap iframe {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 1440px) {
  /*===============
service
================*/
  /* .service__support--bg img {
    height: 1898px;
    object-fit: cover;
  } */
  /* .service__support--illust01 {
    width: 433px;
    top: 297px;
    right: 220px;
  }
  .service__support--illust02 {
    width: 188px;
    top: 666px;
    left: 570px;
  }
  .service__support--illust03 {
    width: 202px;
    top: 890px;
    left: 248px;
  }
  .service__support--illust04 {
    width: 633px;
    bottom: 267px;
    left: 232px;
  }

  .service__support--text01 {
    width: 291px;
    top: 64px;
    right: 216px;
  }
  .service__support--text02 {
    width: 256px;
    top: 620px;
    left: 221px;
  }
  .service__support--text03 {
    width: 219px;
    top: 880px;
    left: 560px;
  }
  .service__support--text04 {
    width: 203px;
    bottom: 526px;
    right: 394px;
  }
  .service__support--text05 {
    width: 229px;
    bottom: 176px;
    left: 472px;
  } */
}

@media screen and (max-width: 1220px) {
  .deco__img1 {
    width: 39.672vw;
    top: -1.065vw;
    left: -19.836vw;
  }

  .deco__img2 {
    width: 21.639vw;
    bottom: 10.491vw;
  }
}

@media screen and (max-width: 1245px) {
  /*===============
fv
================*/
  .fv {
    margin-top: 58px;
  }
}

@media screen and (max-width: 900px) {
  /*===============
fv
================*/
  .fv {
    padding: 83px 0 34.666vw;
  }

  /* .fv__text {
    font-size: 2vw;
  } */
}

@media screen and (max-width: 980px) {
  /*===============
fv
================*/
  .fv {
    margin-top: 57px;
  }

  /*===============
service
================*/
  .service__subTitle {
    font-size: 30px;
    margin-bottom: 58px;
  }

  .service__list {
    gap: 34px 0;
  }

  .service__list--item {
    width: calc(95% / 3);
    margin-right: 2.5%;
  }

  .service__list--heading {
    font-size: 24px;
  }

  .service__list--text {
    font-size: 18px;
  }

  .service__subTitle--type02 {
    margin-bottom: 24px;
  }

  /*===============
design
================*/
  .case-slide__num {
    font-size: 44px;
  }

  .case-swiper__textWrap {
    width: 47%;
    max-width: 380px;
  }

  .case-swiper__text--num {
    font-size: 22px;
  }

  .case-swiper__text--heading {
    font-size: 25px;
  }

  .case__listWrap {
    display: block;
  }
  .case__logo {
    width: 100%;
    padding-top: 20px;
  }
  .case__logo-img {
    width: 48.5%;
    max-width: 81px;
  }

  .case-swiper__imgWrap {
    width: 50%;
  }
}

@media screen and (max-width: 960px) {
  /*===============
service
================*/
  /* .service__support--illust01 {
    width: 90.208vw;
    top: 61.875vw;
    right: 5.416vw;
  }
  .service__support--illust02 {
    width: 39.166vw;
    top: 128.125vw;
    left: 29.166vw;
  }
  .service__support--illust03 {
    width: 42.083vw;
    top: 283.333vw;
    left: 18.333vw;
  }
  .service__support--illust04 {
    width: 98.958vw;
    bottom: 43.125vw;
    left: 0;
  }

  .service__support--text01 {
    width: 60.624vw;
    top: 13.333vw;
    right: 5.416vw;
  }
  .service__support--text02 {
    width: 53.333vw;
    top: 227.083vw;
    left: 5.416vw;
  }
  .service__support--text03 {
    width: 45.625vw;
    top: 170.833vw;
    left: 5.416vw;
  }
  .service__support--text04 {
    width: 42.291vw;
    bottom: 110.75vw;
    right: 5.416vw;
  }
  .service__support--text05 {
    width: 47.708vw;
    bottom: 11.666vw;
    left: auto;
    right: 5.416vw;
  } */

  .service__support--bg img {
    height: 2670px;
    object-fit: cover;
  }

  .service__support--illust01 {
    width: 433px;
    top: 297px;
    right: 26px;
  }

  .service__support--illust02 {
    width: 188px;
    top: 615px;
    left: 38.541vw;
  }

  .service__support--illust03 {
    width: 202px;
    top: 1360px;
    left: 88px;
  }

  .service__support--illust04 {
    width: 515px;
    bottom: 207px;
    left: 26px;
    z-index: 3;
  }

  .service__support--text01 {
    width: 291px;
    top: 64px;
    right: 26px;
  }

  .service__support--text02 {
    width: 256px;
    top: 1090px;
    left: 26px;
  }

  .service__support--text03 {
    width: 219px;
    top: 820px;
    left: 37.083vw;
  }

  .service__support--text04 {
    width: 203px;
    bottom: 546px;
    right: 19.791vw;
  }

  .service__support--text05 {
    width: 229px;
    bottom: 56px;
    left: auto;
    right: 9.166vw;
  }
}

@media screen and (max-width: 750px) {
  /*===============
fv
================*/

  /* .fv__text {
    font-size: 18px;
  } */

  /*===============
service
================*/
  .service {
    padding-top: 100px;
  }

  .service__subTitle {
    font-size: 24px;
    margin-bottom: 58px;
  }

  .service__list {
    gap: 30px 0;
  }

  .service__list--item {
    width: calc(97.5% / 2);
  }

  .service__list--item:nth-child(3n) {
    margin-right: 2.5%;
  }

  .service__list--item:nth-child(2n) {
    margin-right: 0;
  }

  .service__list--heading {
    font-size: 20px;
  }

  .service__subTitle--type02 {
    margin-bottom: 24px;
  }

  /*===============
design
================*/
  .design {
    padding-top: 40px;
  }

  .case-slide {
    padding-top: 115px;
    padding-bottom: 160px;
  }

  .photo__frame {
    padding-bottom: 68px;
  }

  .case-slide__num {
    font-size: 34px;
  }

  .case-swiper__wrap {
    display: block;
  }

  .case-swiper__wrap .swiper-slide {
    padding: 30px 5%;
  }

  .case-slide .splide__slide {
    width: 100%;
  }

  .case-swiper__imgWrap {
    width: 100%;
    max-width: 310px;
    margin: 0 auto;
  }

  .case-swiper__textWrap {
    width: 100%;
    max-width: 100%;
  }

  .case__listWrap {
    max-width: 450px;
  }

  .case-swiper__text--num {
    font-size: 20px;
    margin-bottom: 20px;
  }

  .case-swiper__text--heading {
    font-size: 21px;
  }

  .case-swiper__text--text {
    margin-bottom: 21px;
  }

  .case__imgSwiper--pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 28px;
    left: 8px;
  }

  /*===============
msg
================*/
  /*===============
msg
================*/

  .msg__title-ja {
    font-size: 22px;
  }

  .msg__round {
    width: 100%;
    margin-bottom: 50px;
    height: 170vw;
    overflow: hidden;
  }

  .msg__round-bk {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 170vw;
  }

  .msg__round-parts1 {
    width: 25%;
  }

  .msg__round-parts2 {
    width: 47%;
  }

  .msg__txt {
    font-size: 18px;
  }

  .msg__name {
    font-size: 22px;
  }

  .msg__round-area1 {
    flex-wrap: wrap;
    bottom: 6.3%;
    width: 80%;
  }

  .msg__round-parts3 {
    width: 44%;
  }

  .msg__round-parts4 {
    margin-right: 0;
    width: 38%;
  }

  .msg__round-parts5 {
    width: 36%;

    margin-top: 10%;
  }

  /*===============
result
================*/

  #result {
    padding-top: 140px;
    padding-bottom: 140px;
  }

  #result .contents-wrap {
    margin-bottom: 100px;
  }

  .result__bk {
    background-size: auto 100%;
    background-position-x: 7.7%;
  }

  .result__list--2 {
    flex-direction: column;
  }

  .result__list--2 .result__list-item {
    width: 100%;
  }

  .result__list-name {
    font-size: 26px;
  }

  .result__list-more--txt {
    font-size: 23px;
  }

  .result__list-more img {
    display: block;
    width: 20px;
    height: 20px;
  }

  .result__list--1 .result__list-item:not(:last-child),
  .result__list--2 .result__list-item:not(:last-child) {
    margin-bottom: 60px;
  }

  /*===============
company
================*/
  .company__head {
    font-size: 27px;
    padding-bottom: 20px;
    margin-bottom: 30px;
  }

  .company__listWrap:not(:last-child) {
    margin-bottom: 18px;
  }

  .company__list--heading,
  .company__list--text {
    font-size: 22px;
  }

  .company__list--heading.sml {
    width: 110px;
  }

  /*===============
contact
================*/
  #contact .msg__title-ja {
    margin-bottom: 60px;
  }

  .contact__companyName {
    font-size: 39px;
    margin-bottom: 100px;
  }

  .contact__listTitle {
    font-size: 27px;
    padding-bottom: 21px;
    margin-bottom: 31px;
  }

  .contact__list--heading,
  .contact__list--text {
    font-size: 22px;
  }

  .contact__access {
    font-size: 20px;
  }
}

@media screen and (max-width: 550px) {
  .service__support--illust04 {
    width: 455px;
  }
}

@media screen and (max-width: 480px) {
  /*===============
fv
================*/
  .fv {
    margin-top: 50px;
    padding: 40px 0 34.666vw;
  }

  .fv__text--pc {
    display: none;
  }

  .fv__text--sp {
    display: block;
  }

  /*===============
service
================*/
  .service__subTitle {
    font-size: 22px;
  }

  .service__list {
    display: block;
  }

  .service__list--item {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
  }

  .service__list--item:not(:last-child) {
    margin-bottom: 40px;
  }

  .service__list--item:nth-child(3n) {
    margin-right: 0;
  }

  .figure__wrap {
    padding-bottom: 135px;
  }

  .case__listWrap {
    display: block;
    max-width: 100%;
  }

  .case__listWrap .case__list {
    width: 100%;
  }

  /*===============
service
================*/
  /* .service__support--illust01 {
    width: 433px;
    top: 297px;
    right: 26px;
  }
  .service__support--illust02 {
    width: 188px;
    top: 615px;
    left: 140px;
  }
  .service__support--illust03 {
    width: 202px;
    top: 1360px;
    left: 88px;
  }
  .service__support--illust04 {
    width: 475px;
    bottom: 207px;
    left: 0;
  }

  .service__support--text01 {
    width: 291px;
    top: 64px;
    right: 26px;
  }
  .service__support--text02 {
    width: 256px;
    top: 1090px;
    left: 26px;
  }
  .service__support--text03 {
    width: 219px;
    top: 820px;
    left: 26px;
  }
  .service__support--text04 {
    width: 203px;
    bottom: 546px;
    right: auto;
    left: 26px;
  }
  .service__support--text05 {
    width: 229px;
    bottom: 56px;
    left: auto;
    right: 26px;
  } */

  .service__support--bg img {
    height: 556.25vw;
  }

  .service__support--illust01 {
    width: 90.208vw;
    top: 61.875vw;
    right: 5.416vw;
  }

  .service__support--illust02 {
    width: 39.166vw;
    top: 128.125vw;
    left: 38.541vw;
  }

  .service__support--illust03 {
    width: 42.083vw;
    top: 283.333vw;
    left: 18.333vw;
  }

  .service__support--illust04 {
    width: 94.791vw;
    bottom: 43.125vw;
  }

  .service__support--text01 {
    width: 60.624vw;
    top: 13.333vw;
    right: 5.416vw;
  }

  .service__support--text02 {
    width: 53.333vw;
    top: 227.083vw;
    left: 5.416vw;
  }

  .service__support--text03 {
    width: 45.625vw;
    top: 170.833vw;
    left: 37.083vw;
  }

  .service__support--text04 {
    width: 42.291vw;
    bottom: 113.75vw;
    right: 19.791vw;
  }

  .service__support--text05 {
    width: 47.708vw;
    bottom: 11.666vw;
    left: auto;
    right: 9.166vw;
  }

  /*===============
result
================*/
  .result__list-name {
    font-size: 21px;
  }

  .result__list-more--txt {
    font-size: 21px;
  }

  .result__list-more img {
    width: 16px;
    height: 16px;
  }

  /*===============
company
================*/
  #company {
    padding-bottom: 128px;
  }

  .company__head {
    font-size: 22px;
  }

  .company__list--heading,
  .company__list--text {
    font-size: 19px;
  }

  .company__list--heading.sml {
    width: 113px;
  }

  /*===============
contact
================*/
  .contact__companyName {
    font-size: 29px;
    margin-bottom: 80px;
  }

  .contact__listTitle {
    font-size: 22px;
  }

  .contact__list--heading,
  .contact__list--text {
    font-size: 19px;
  }

  .contact__access {
    font-size: 18px;
  }
}
