@charset "UTF-8";
/*============================================================
  編集時注意:アニメーション、概要セクション、各要素の共通スタイルはここから下
  ※下記スタイルは必ず影響範囲を把握した上で編集するようお願いします
*/
.p-under .p-under_top {
  padding-top: 164px;
}
.p-under .p-under_top_inner {
  width: 1080px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.p-under .p-under_top_title {
  width: 500px;
  line-height: 1.2;
  font-size: 3.6rem;
}
.p-under .p-under_top_title:before {
  content: "";
  width: 29px;
  height: 2px;
  background: #000;
  display: block;
  margin-bottom: 13px;
}
.p-under .p-under_top_title small {
  font-size: 2.4rem;
  display: block;
  margin-top: 6px;
}
@media screen and (max-width: 1080px) {
  .p-under .p-under_top_inner {
    width: 768px;
  }
  .p-under .p-under_top_title {
    width: 346px;
  }
}
@media screen and (min-width: 481px) and (max-width: 1023px) {
  .p-under .p-under_top {
    padding-top: 21.484375vw;
  }
  .p-under .p-under_top_inner {
    width: 75vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-under .p-under_top_title {
    width: 100%;
  }
  .p-under .p-under_top_title:before {
    margin-bottom: 1.6927083333vw;
  }
  .p-under .p-under_top_title small {
    font-size: 2.4rem;
    display: block;
    margin-top: 0.6510416667vw;
  }
}
@media screen and (max-width: 480px) {
  .p-under .p-under_top {
    padding-top: 24.6153846154vw;
  }
  .p-under .p-under_top_inner {
    width: 83.5897435897vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-under .p-under_top_title {
    width: 100%;
    line-height: 1.5;
    font-size: 7.6923076923vw;
  }
  .p-under .p-under_top_title:before {
    content: "";
    width: 7.6923076923vw;
    height: 0.5128205128vw;
    margin-bottom: 4.6153846154vw;
  }
  .p-under .p-under_top_title small {
    font-size: 5.3846153846vw;
    margin-top: 2.0512820513vw;
  }
}
.js-trigger.fade-top {
  opacity: 0;
}
.js-trigger.fade-right {
  opacity: 0;
}
.js-effect {
  opacity: 0;
  will-change: letter-spacing, opacity;
}
.effect {
  opacity: 1;
}
.preEffect {
  letter-spacing: -0.5em !important;
}
.inEffect {
  -webkit-transition: opacity 0.5s linear, letter-spacing 1.05s ease-out;
  transition: opacity 0.5s linear, letter-spacing 1.05s ease-out;
  letter-spacing: 0em !important;
  opacity: 1;
}
.preEffect span {
  mix-blend-mode: multiply;
}
.preEffect .t0 {
  color: red;
}
.preEffect .t1 {
  color: green;
}
.preEffect .t2 {
  color: blue;
}
.preEffect .t3 {
  color: aqua;
}
.preEffect .t4 {
  color: #f0f;
}
.preEffect .t5 {
  color: #ff0;
}
.inEffect .t0,
.inEffect .t1,
.inEffect .t2,
.inEffect .t3,
.inEffect .t4,
.inEffect .t5 {
  color: #000;
  -webkit-transition: color 3s linear;
  transition: color 3s linear;
}
@-webkit-keyframes fade-top {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
  }
}
@keyframes fade-top {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
  }
}
.js-active.fade-top {
  -webkit-animation: fade-top 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  animation: fade-top 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  -webkit-animation-delay: 0.75s;
  animation-delay: 0.75s;
}
@-webkit-keyframes fade-right {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }
}
@keyframes fade-right {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }
}
.js-active.fade-right {
  -webkit-animation: fade-right 2s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  animation: fade-right 2s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  -webkit-animation-delay: 0.75s;
  animation-delay: 0.75s;
}
.bg-gray-f4 {
  background: #f4f4f4;
}
.bg-gray-ec {
  background: #ececec;
}
.p-capabilities_sec_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;text-align: center;
}
.p-capabilities_sec_title .en-head {
  color: #c9c9c9;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.3;
}
.p-capabilities_sec_title .en-head > span {
  color: #c9c9c9;
}
.p-capabilities_sec_title strong {
  font-size: 3.6rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 1.1rem 0 0 0;
}
br.visible-pc {
  display: inline;
}
br.visible-sp {
  display: none;
}
@media (max-width: 780px) {
  br.visible-pc {
    display: none;
  }
  br.visible-sp {
    display: inline;
  }
}
@media (max-width: 1023px) {
  .p-capabilities_sec_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .p-capabilities_sec_title .en-head {
    color: #c9c9c9;
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 1;
  }
  .p-capabilities_sec_title strong {
    font-size: 3.6rem;
    line-height: 1.5;
    font-weight: 700;
  }
}
@media (max-width: 780px) {
  .p-capabilities_sec_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .p-capabilities_sec_title .en-head {
    color: #c9c9c9;
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 1;
  }
  .p-capabilities_sec_title strong {
    font-size: 3.6rem;
    line-height: 1.5;
    font-weight: 700;
  }
}
@media (max-width: 480px) {
  .p-capabilities_sec_title .en-head {
    font-size: 3.3333333333vw;
  }
  .p-capabilities_sec_title strong {
    font-size: 5vw;
    margin: 2.2916666667vw 0 0 0;
  }
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-capabilitiesTop {
  padding-bottom: 120px;
}
.p-capabilitiesTop .p-under_top_title {
  width: 100%;
}
.p-capabilitiesTop .p-under_top_title br {
  display: none;
}
.p-capabilitiesTop .p-under_top_title div {
  font-size: 3.6rem;
  line-height: 1.5;
}
.p-capabilitiesTop .p-under_top_title p {
  font-size: 2.4rem;
  line-height: 0.5;
  margin: 0.9rem 0 0 0;
}
.p-capabilitiesTop .p-under_top_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.p-capabilitiesTop .top {
  overflow: hidden;
  margin-top: 0.6rem;
  padding-top: 120px;
  padding-bottom: 84px;
  text-align: left;
  color: #fff;
  letter-spacing: -0.035em;
  font-size: 2rem;
}
.p-capabilitiesTop .top .head {
  color: #000000;
  font-size: 3rem;
  line-height: 1.5;
}
.p-capabilitiesTop .top .text {
  margin: 1.7rem 0 0 0;
  line-height: 2;
  color: #646464;
}
.p-capabilitiesTop .top .top_mv {
  background-image: url(../images/shared/bg_media.png);
  background-repeat: repeat;
  background-position: 0 0;
  padding: 7.4rem 0 6.5rem;position: relative;
}

.p-capabilitiesTop .top_inner::before {
  display: block;
  content: "";
  position: absolute;
  width: 138.2%;
  height: 1px;
  background: #c9c9c9;
  top: -156px;
  left: 0;
}
.p-capabilitiesTop .company-logo .company-logo_text-desc {
  font-size: 3rem;
  line-height: 1.5;
  letter-spacing: 0;
}

/* 編集時注意:アニメーション、概要セクション、各要素の共通スタイルはここから上
※下記スタイルは必ず影響範囲を把握した上で編集するようお願いします
============================================================ */

/* 各コンテンツ幅 *******************/
.top_inner,
.address_inner,
.solution_inner,
.approach_inner,
.services_inner {
  width: 1080px;
  margin: 0 auto;
}
@media (max-width: 1080px) {
  .top_inner,
  .address_inner,
  .solution_inner,
  .approach_inner,
  .services_inner {
    width: 768px;
  }
}
@media (max-width: 1023px) {
  .top_inner,
  .address_inner,
  .solution_inner,
  .approach_inner,
  .services_inner {
    width: 75.073313783vw;
  }
}
@media (max-width: 780px) {
  .top_inner {
    width: 100%;
  }
}
@media (max-width: 480px) {
  .address_inner,
  .solution_inner,
  .approach_inner,
  .services_inner {
    width: 83.3333333333vw;
  }
}
/* XICAが解決する課題セクション:address *******************/
.p-capabilitiesTop .address {
  padding: 65px 0;
  margin: 80px 0 0 0;
}
.p-capabilitiesTop .address_head_wrapp {
  font-size: 1.6rem;
  letter-spacing: -0.035em;
  line-height: 1.875;
  padding: 4.7rem 0 0 0;text-align: center;
}
.p-capabilitiesTop .address_head_wrapp p{margin: 1.5rem 0 0 0;}
.p-capabilitiesTop .address_wrapp {
  margin: 5rem 0 0 0;
  display: flex;
  justify-content: space-between;
  gap: 5%;
}
.p-capabilitiesTop .address .item {
  width: 40%;
  padding: 20px;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border-radius:6px;
}
.p-capabilitiesTop .address .item img {
  width: 80px;
  padding: 20px 0;
}
.p-capabilitiesTop .address .item h3,
.p-capabilitiesTop .address .item p {
  letter-spacing: -0.035em;
  line-height: 1.875;
}
.p-capabilitiesTop .address .item h3 {
  font-size: 2rem;
}
.p-capabilitiesTop .address .item p {
  font-size: 1.6rem;font-weight: bold;
  margin: 0.5rem 0 0 0;
}
/* XICAのソリューション概要セクション:solution *******************/
.p-capabilitiesTop .solution_img_sp {
  display: none;
}
.p-capabilitiesTop .solution_img_pc {
  display: block;
}
.p-capabilitiesTop .solution {
  margin: 80px 0 0;
}
.p-capabilitiesTop .solution_head_wrapp,.books .head_wrapp {
  font-size: 1.6rem;text-align: center;
  letter-spacing: -0.035em;
  line-height: 1.875;
  padding: 4.7rem 0 0 0;
}
.p-capabilitiesTop .solution_wrapp {
  margin: 5rem 0 0 0;
  justify-content: center;
  flex-wrap: wrap;
  gap: 60px;
  display: flex;
}
.p-capabilitiesTop .solution_img_wrapp {
  width: 540px;
  margin: auto;
}

.p-capabilitiesTop a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 23px 20px 23px 30px;
  width: 300px;
  justify-content: space-between;
}
.p-capabilitiesTop .btn-arrow-r:after {
  position: static;
  display: inline-block;
  transform: translate(0, 0);
  transition: transform ease 0.5s;
}
.p-capabilitiesTop .btn-arrow-r:hover::after {
  transform: translate(10px, 0);
}

/* ソリューション提供のアプローチセクション:approach *******************/
.p-capabilitiesTop .approach {
  margin: 80px 0;
}
.p-capabilitiesTop .approach .step-area_inner,
.p-capabilitiesTop .approach .position-area_inner {
  padding: 0 0 0 0;
  margin: 5rem 0 0 0;
}
.p-capabilitiesTop .approach .step-area_subtitle,
.p-capabilitiesTop .approach .position-area_subtitle {
  margin: 5rem 0 0 0;
  font-size: 2.4rem;
  letter-spacing: -0.035em;
  line-height: 1.5833;
}
.p-capabilitiesTop .approach .step-area_subtext,
.p-capabilitiesTop .approach .position-area_subtext {
  margin: 1rem 0 0 0;
  font-size: 1.6rem;
  letter-spacing: -0.035em;
  line-height: 1.875;
}
.p-capabilitiesTop .approach .sec_title strong {
  font-size: 3rem;
  line-height: 1.2;
}
.p-capabilitiesTop .approach .sec_title strong br {
  display: none;
}
.p-capabilitiesTop .approach .approach_desc {
  margin: 3.6rem 0 0 0;
  line-height: 1.88;
  letter-spacing: -0.035em;
  font-size: 1.6rem;
}
.p-capabilitiesTop .approach .approach_wrapp {
  margin: 4.3rem 0 0 0;
}
.p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img {
  width: 75%;
  margin: auto;
}
.p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img img {
  width: 100%;
}
.p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img img.visible-pc {
  display: block;
}
.p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img img.visible-sp {
  display: none;
}

.p-capabilitiesTop .approach a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 23px 20px 23px 30px;
  width: 300px;
}
.p-capabilitiesTop .approach .btn-arrow-r:after {
  position: static;
  display: inline-block;
  transform: translate(0, 0);
  transition: transform ease 0.5s;
}
.p-capabilitiesTop .approach .btn-arrow-r:hover::after {
  transform: translate(10px, 0);
}
/* サービス内容セクション:services *******************/
.p-capabilitiesTop .services {
  margin: 80px 0 0;
}
.p-capabilitiesTop .services strong {
  margin: 1.5rem 0 0 0;
}
.p-capabilitiesTop .services .services_wrapp {
  margin: 4.6rem 0 0 0;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 4rem 3.7%;
}
/* 各flex-item共通スタイル */
.p-capabilitiesTop .services .services_wrapp .item {
  display: flex;
  flex-direction: column;
  padding: 3rem 2rem 4rem;
  text-align: left;
  letter-spacing: -0.035em;
  font-weight: 400;
  line-height: 1.75;
  border-radius:6px;
}
/* セクション上部 計2つのflex-item */
.p-capabilitiesTop .services .services_wrapp_top .item {
  width: 48.1%;text-align: center;
}
.p-capabilitiesTop .services .services_wrapp_top .item img{width: 80px;padding: 20px 0;margin: 0 auto;}
.p-capabilitiesTop .services .services_wrapp_top .item p.item_title{font-weight: bold;margin-bottom: .5em;}
.p-capabilitiesTop .services .services_wrapp_top .item p{}
/* セクション下部 計6つのflex-item */
.p-capabilitiesTop .services .services_wrapp_bottom .item {
  min-height: 41.3rem;
  width: 30.83333%;
}
.p-capabilitiesTop .services .services_wrapp_bottom .item_top {
  margin: 0 0 30px 0;
}
/* 各itemのheadとdescの共通スタイル */
.p-capabilitiesTop .services .services_wrapp .item .item_head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
.p-capabilitiesTop .services .services_wrapp .item .item_desc {
  font-size: 1.6rem;
  margin: 16px 0 0 0;
}
.p-capabilitiesTop .services .services_wrapp_top {
  justify-content: space-between;
}
.p-capabilitiesTop .services_wrapp_top .item_top {
  margin: 0 0 30px 0;
}
.p-capabilitiesTop .services_wrapp_top .item_top .item_desc {
  margin: 16px 0 0 0;
}
/* 上側2item内の色付きテキスト */
.p-capabilitiesTop .services .services_wrapp_top .compass {
  color: #e97132;
}
.p-capabilitiesTop .services .services_wrapp_top .magellan {
  color: #139999;
}
.p-capabilitiesTop .services_wrapp_top .item_bottom {
  margin: 0 0 30px 0;
}
.p-capabilitiesTop .services_wrapp_top .item_bottom .services_list {
  padding: 16px;
}
.p-capabilitiesTop .services_wrapp_top .item_bottom .services_list_item {
  position: relative;
  font-size: 1.4rem;
}
.p-capabilitiesTop .services_wrapp_top .item_bottom .services_list_item:not(:last-of-type) {
  margin: 0 0 6px 0;
}
.p-capabilitiesTop .services_wrapp_top .item_bottom .services_list_item::before {
  position: absolute;
  content: "";
  background: currentColor;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  top: 11px;
  left: -10px;
}

.p-capabilitiesTop .services .item_link {
  text-align: left;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0;
  text-decoration: none;
  display: flex;
  padding: 23px 20px 23px 30px;
  margin: auto auto 0;
  position: relative;
  font-weight: 400;
  background: #000;
  color: #fff;
  width: 100%;
  max-width: 25rem;
  -webkit-transition: background-color ease 0.5s;
  transition: background-color ease 0.5s;
  justify-content: space-between;
}
.p-capabilitiesTop .services .item_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2rem;
  height: 2rem;
  background: url(../images/capabilities/arrow-white.svg) no-repeat center center/1.4rem 1.2rem;
  -webkit-transition: -webkit-transform ease 0.5s;
  transition: -webkit-transform ease 0.5s;
  transition: transform ease 0.5s;
  transition: transform ease 0.5s, -webkit-transform ease 0.5s;
}
.p-capabilitiesTop .services .item_link:hover {
  background-color: #646464;
  color: #fff;
}
.p-capabilitiesTop .services .item_link:hover:after {
  -webkit-transform: translate(10px, -50%);
  transform: translate(10px, -50%);
}
@media (max-width: 1080px) {
  /* サービス内容セクション:services *******************/
  .p-capabilitiesTop .services .services_wrapp {
    justify-content: space-between;
    gap: 2rem 2.5%;
  }
  .p-capabilitiesTop .services .services_wrapp_bottom {
    margin: 2rem 0 0 0;
  }
  .p-capabilitiesTop .services .item {
    width: 45%;
    padding: 4rem 2rem 4rem;
  }
}
@media (max-width: 1023px) {
  .p-capabilitiesTop {
    padding-bottom: 15.6402737048vw;
  }
  /* XICAが解決する課題セクション:address *******************/
  .p-capabilitiesTop .address a {
    gap: 10px;
    padding: 19px;
    width: 200px;
  }
  /* サービス内容セクション:services *******************/
  .p-capabilitiesTop .services .item_link {
    font-size: 1.4rem;
    padding: 23px 10px 23px 20px;
  }
} /* max-width:1023px */
@media (max-width: 780px) {
  .p-capabilitiesTop .company-logo .company-logo_text-desc br {
    display: none;
  }
  /* XICAが解決する課題セクション:address *******************/
  .p-capabilitiesTop .address_wrapp {
    justify-content: space-between;
    flex-direction: column;
    gap: 20px;
  }
  .p-capabilitiesTop .address .item {
    width: 100%;
    padding: 20px;
  }
  /* XICAのソリューション概要:solution *******************/
  .p-capabilitiesTop .solution_img_sp {
    display: block;
  }
  .p-capabilitiesTop .solution_img_pc {
    display: none;
  }
  .p-capabilitiesTop a {
    padding: 2.35rem 2.564103vw 2.35rem;
    width: 240px;
  }
  /* ソリューション提供のアプローチ:approach *******************/
  .p-capabilitiesTop .approach a {
    gap: 10px;
    padding: 2.35rem 2.564103vw 2.35rem;
    width: 240px;
  }
  /* サービス内容セクション:services *******************/
  .p-capabilitiesTop .services .services_wrapp {
    justify-content: space-between;
    gap: 2rem;
  }
  .p-capabilitiesTop .services .item {
    width: 47.5%;
    padding: 4rem 3% 4rem;
  }
  .p-capabilitiesTop .services .services_wrapp_bottom .item {
    min-height: unset;
  }
  .p-capabilitiesTop .services .item_link {
    gap: 10px;
    padding: 2.35rem 2.564103vw 2.35rem;
    max-width: 24rem;
  }
  .p-capabilitiesTop .services .item_link::after {
    right: 10px;
  }
  .p-capabilitiesTop .services .services_wrapp_top {
    flex-direction: column;
  }
  /* セクション上部 計2つのflex-item */
  .p-capabilitiesTop .services .services_wrapp_top .item {
    width: 100%;
  }
  /* セクション下部 計6つのflex-item */
  .p-capabilitiesTop .services .services_wrapp_bottom .item {
    width: calc(50% - 1rem);
  }
} /* max-width: 780px */
@media (max-width: 480px) {
  .p-capabilitiesTop {
    padding-bottom: 20.4166666667vw;
  }
  .p-capabilitiesTop .p-under_top_title br {
    display: block;
  }
  .p-capabilitiesTop .p-under_top_title div {
    font-size: 7.5vw;
    letter-spacing: 0.02em !important;
  }
  .p-capabilitiesTop .p-under_top_title p {
    font-size: 5.2083333333vw;
    margin: 0.9rem 0 0 0;
  }
  .p-capabilitiesTop .top {
    padding-top: 16.25vw;
    padding-bottom: 8.75vw;
    font-size: 4.5833333333vw;
  }
  .p-capabilitiesTop .top .head {
    font-size: inherit;
    line-height: 1.5;
  }
  .p-capabilitiesTop .top .text {
    margin: 3.5416666667vw 0 0 0;
    font-size: 3.75vw;
    line-height: 1.8333333333;
    letter-spacing: -0.07em;
  }
  .p-capabilitiesTop .top .top_mv {
    padding: 8.5416666667vw 0 10vw;
  }
  .p-capabilitiesTop .top_inner::before {
    width: 100%;
    top: -17.0833333333vw;
  }
  .p-capabilitiesTop .company-logo {
    margin: 0.1rem 0 0 0;
  }
  .p-capabilitiesTop .company-logo .company-logo_text-desc {
    margin: 1.4rem 0 0 0;
    font-size: 5vw;
    line-height: 1.375;
  }
  .p-capabilitiesTop .company-logo .company-logo_text-desc br {
    display: inline;
  }
  /* XICAが解決する課題セクション:address *******************/
  .p-capabilitiesTop .address {
    padding: 9.1666666667vw 0;
    margin: 10.8333333333vw 0 0 0;
  }
  .p-capabilitiesTop .address_head_wrapp {
    font-size: 3.75vw;
    line-height: 1.83333;
    padding: 4.7083333333vw 0 0 0;
  }
  .p-capabilitiesTop .address_wrapp {
    margin: 10.416666vw 0 0 0;
    gap: 4.16666vw;
  }
  .p-capabilitiesTop .address .item {
    padding: 4.16666vw;
  }
  .p-capabilitiesTop .address .item img {
    width: 16.66666vw;
    padding: 4.16666vw 0;
  }
  .p-capabilitiesTop .address .item h3 {
    font-size: 4.1666666667vw;
  }
  .p-capabilitiesTop .address .item p {
    font-size: 3.33333vw;
    margin: 1.04166vw 0 0 0;
  }
  /* XICAのソリューション概要:solution *******************/
  .p-capabilitiesTop .solution {
    margin: 8.3333333333vw 0 0;
  }
  .p-capabilitiesTop .solution strong {
    font-size: 5vw;
    margin: 3.9583333333vw 0 0 0;
  }
  .p-capabilitiesTop .solution_head_wrapp,.books .head_wrapp {
    font-size: 3.75vw;
    line-height: 1.83333;
    padding: 4.7083333333vw 0 0 0;
  }
	.books .book_prompt p{    font-size: 3.75vw;
    line-height: 1.83333;}
  .p-capabilitiesTop .solution .solution_wrapp {
    margin: 5.2083333333vw 0 0 0;
    gap: 3.9583333333vw 2.5%;
  }
  .p-capabilitiesTop .solution_img_wrapp {
    width: 100%;
  }
  .p-capabilitiesTop .solution .link_wrapper {
    /*padding: 0 4.16666vw;*/
    margin: 12.5vw 0 0 0;
    gap: 4.16666vw;
  }
  .p-capabilitiesTop .top .link_wrapper {
    /*padding: 0 4.16666vw;*/
    margin: 7.5vw 0 0 0;
    gap: 4.16666vw;
  }

  .p-capabilitiesTop a {
    gap: 2.08333vw;
    padding: 3.2291666667vw 3.3333333333vw;
    width: 60vw;
    justify-content: center;
  }
  .p-capabilitiesTop .solution .btn-arrow-r:after {
    position: static;
    display: inline-block;
    transform: translate(0, 0);
    transition: transform ease 0.5s;
  }
  .p-capabilitiesTop .solution .btn-arrow-r:hover::after {
    transform: translate(10px, 0);
  }
  /* ソリューション提供のアプローチセクション:approach *******************/
  .p-capabilitiesTop .approach {
    margin: 8.3333333333vw 0;
  }
  .p-capabilitiesTop .approach .sec_title strong,
  .p-capabilitiesTop .approach .sec_title strong span {
    margin: 1.2rem 0 0 0;
    font-size: 5vw;
    line-height: 1.5;
  }
  .p-capabilitiesTop .approach .approach_desc {
    margin: 3.5416666667vw 0 0 0;
    line-height: 1.83;
    letter-spacing: -0.07em;
    font-size: 3.75vw;
  }
  .p-capabilitiesTop .approach .approach_desc br {
    display: none;
  }
  .p-capabilitiesTop .approach .approach_wrapp {
    margin: 4.5833333333vw 0 0 0;
  }
  .p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img {
    width: 100%;
  }
  .p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img img.visible-pc {
    display: none;
  }
  .p-capabilitiesTop .approach .approach_wrapp .approach_wrapp_img img.visible-sp {
    display: block;
  }
  .p-capabilitiesTop .approach .step-area_inner,
  .p-capabilitiesTop .approach .position-area_inner {
    margin: 10.42vw 0 0 0;
  }
  .p-capabilitiesTop .approach .step-area_subtext,
  .p-capabilitiesTop .approach .position-area_subtext {
    letter-spacing: -0.07em;
    font-size: 3.75vw;
    margin: 3.3333333333vw 0 0 0;
    line-height: 1.83333;
  }
  .p-capabilitiesTop .approach .step-area_subtitle,
  .p-capabilitiesTop .approach .position-area_subtitle {
    margin: 5vw 0 0 0;
    font-size: 5vw;
  }
  .p-capabilitiesTop .approach .link_wrapper {
    padding: 0 4.16666vw;
    margin: 12.5vw 0 0 0;
    gap: 4.16666vw;
  }
  .p-capabilitiesTop .approach a {
    gap: 2.08333vw;
    padding: 3.2291666667vw 3.3333333333vw;
    width: 60vw;
    font-size: 3.5897435897vw;
  }
  /* サービス内容:services *******************/
  .p-capabilitiesTop .services {
    margin: 8.3333333333vw 0 0;
  }
  .p-capabilitiesTop .services strong {
    margin: 1.2rem 0 0 0;
  }
  .p-capabilitiesTop .services .services_wrapp {
    margin: 5.2083333333vw 0 0 0;
    gap: 3.9583333333vw 2.5%;
  }
  /* flex-item共通 */
  .p-capabilitiesTop .services .services_wrapp .item {
    padding: 8.3333333333vw 3.125vw 4.1666666667vw;
    font-size: 3.75vw;
  }
  /* 各itemのheadとdescの共通スタイル */
  .p-capabilitiesTop .services .services_wrapp .item .item_head {
    font-size: inherit;
  }
  .p-capabilitiesTop .services .services_wrapp .item .item_desc {
    font-size: 3.33vw;
    margin: 3.33vw 0 0 0;
  }
  .p-capabilitiesTop .services_wrapp_top .item_top,
  .p-capabilitiesTop .services_wrapp_top .item_bottom {
    margin: 0 0 6.25vw 0;
  }
  .p-capabilitiesTop .services_wrapp_top .item_bottom .services_list {
    padding: 3.33vw;
  }
  .p-capabilitiesTop .services_wrapp_top .item_bottom .services_list_item {
    position: relative;
    font-size: 2.92vw;
  }
  .p-capabilitiesTop .services_wrapp_top .item_bottom .services_list_item:not(:last-of-type) {
    margin: 0 0 1.25vw 0;
  }
  .p-capabilitiesTop .services_wrapp_top .item_bottom .services_list_item::before {
    width: 0.83vw;
    height: 0.83vw;
    top: 2.29vw;
    left: -2.08vw;
  }
  .p-capabilitiesTop .services .item_link {
    max-width: 52.08vw;
    padding: 3.2291666667vw 3.3333333333vw;
    font-size: 3.5897435897vw;
  }
  .p-capabilitiesTop .services .item_link::after {
    background: url(../images/capabilities/arrow-white.svg) no-repeat center center / 2.92vw 2.5vw;
    right: 2.08vw;
    width: 4.17vw;
    height: 4.17vw;
  }
} /* max-width:480px */

.p-capabilitiesTop .top_inner {
  margin: 0 auto;width: 60%;
  position: relative;padding-right: 30px;
}

.books .link_wrapper {
  margin: 30px 0 0 0;align-items: center;
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.books .book_flex{display:flex;max-width: 1080px;margin: 0 auto;}
.books .top_img_books{width:30%;padding-right:70px;}

.books .book_message{text-align: center;max-width: 1080px;margin: 0 auto;}
.books .book_message p{font-size: 1.6rem;text-align: left;letter-spacing: -0.035em;line-height: 1.875;margin: 1.5rem 0 0 0;}
.books .book_message p:last-child{font-weight: bold; text-align:right;}
.books .method{padding: 65px 0;margin: 80px 0 0 0;}
.books .information{padding: 65px 0;}
.books .method_inner{padding: 65px 0 0;max-width: 1080px;margin: 0 auto;text-align: center;}
.books .method_inner .solution_head_wrapp p{margin: 0 0 2.5rem 0;text-align: center;}
.books .head_wrapp{text-align: center;}
.books .head_wrapp p{margin: 1.5rem 0 0 0;}
.books .book_prompt{padding: 4rem;background: #fff;border-radius: 6px;max-width: 800px;margin: 0 auto;text-align: center;}
.books .book_prompt p.prompt_title{font-weight: bold;}
.books .book_prompt p{line-height: 1.875;}
.books .book_prompt p.red{color: #D6142D;margin: 0 0 2.5rem 0;}
.books .book_prompt p.blue{color: #123F93;margin: 0 0 2.5rem 0;}
.books .book_prompt img{max-width: 50px;margin: 2.5rem 0;}

.books .guests_inner{padding: 65px 0 0;max-width: 1080px;margin: 0 auto;}

.books .guests_list{padding: 8.3333333333vw 0 0;}
.books .guests_list li{display: flex;align-items: center;gap: 24px;margin-bottom: 40px;}
.books .guest-photo {max-width: 200px;}
.books .guest-comment {background: #ececec;padding: 3rem 2rem;border-radius: 6px;width: 100%;}
.books .guest-comment p{font-style: italic;line-height: 1.875;}
.books .guest-comment p.name{font-weight: bold;margin: 2.5rem 0 0 0;font-style: normal; font-size:85%;}
.books .guest-comment p.name span{font-weight: normal;color: #7F7F7F;font-style: normal;}
.books .checklist{display: grid;grid-template-columns: 1fr 1fr;gap: 12px 32px;}
.books .checklist li{position: relative;padding-left: 24px;line-height: 1.875;}
.books .checklist li::before {content: "✓";position: absolute;left: 0;top: 0.15em;color: #3db37e;font-weight: 700;}

.books .book_information dl {display: grid;grid-template-columns: 100px 1fr;row-gap: 14px;column-gap: 24px;margin: 0;padding: 24px 0;}
.books .book_information dt {color: #7F7F7F;margin: 0 0 1.5rem 0;}

.books .information .link_wrapper{justify-content: center;} 

.books .book_information {display: flex;align-items: flex-start;justify-content: center;gap: 40px;margin:  0 0 40px 0;}
.books .book_information img{max-width: 210px;}
.books .book_about .guests_inner{display: flex;align-items: flex-start;gap: 40px;padding: 65px 0;}
.books .book_about h2{text-align: left;}
.books .book_about .guests_inner img{max-width: 700px;}
.books .book_about .guests_inner p{line-height: 1.875;margin:  0 0 1.5rem 0;}
.books .book_about .guests_inner p:last-child{margin:  0 0 0 0;}
.books .book_about .guests_inner .author_title{margin:  2.5rem 0 2.5rem 0;font-weight: bold;font-size: 1.5em;}
.books .book_about .guests_inner .author_title span{font-weight: normal;}


@media screen and (max-width: 1080px) {
    .books .book_flex{max-width: 768px;}
		.books .book_message{max-width: 768px;}
		.books .method_inner,.books .guests_inner{max-width: 768px;}
}
@media screen and (min-width: 481px) and (max-width: 1023px) {
    .books .book_flex{max-width: 75vw;}
		.p-capabilitiesTop .top_inner {padding-right: 15px;}
		.books .book_message{max-width: 75vw;}
		.books .method_inner,.books .guests_inner{max-width: 75vw;}
	
}
@media screen and (max-width: 650px) {
	.books .book_information {flex-direction: column;align-items: center;gap: 24px;}
	.books .book_about .guests_inner{flex-direction: column;align-items: center;}
}
@media screen and (max-width: 480px) {
	.books .book_flex{max-width: 83.5897435897vw;}
	.books .method{padding: 8.3333333333vw 0 ;margin: 10.8333333333vw 0 0;}
	.books .information{padding: 5.3333333333vw 0 ;}
	.books .method_inner,.books .guests_inner{max-width: 83.5897435897vw;padding: 8.3333333333vw 0 0;}
	.books .book_message{max-width: 83.5897435897vw;}
	.p-capabilitiesTop .top_inner {padding-right: 15px;}
	.books .book_message p,.books .guest-comment p,.books .checklist li,.books .book_information dl,.books .book_about .guests_inner p{font-size: 3.75vw;}
	.p-capabilitiesTop .solution_wrapp {margin: 5.8333333333vw 0 0 0;}
	.books .guests_list li{flex-direction: column;}
	.books .checklist {grid-template-columns: 1fr;  }
	.books .information .link_wrapper{margin: 30px 0 30px 0;} 
	.books .book_about .guests_inner .author_title{margin:  2.5rem 0 2.5rem 0;font-size: 1em;}
	.books .book_flex{flex-direction: column-reverse;}
	.books .top_img_books{width:100%;max-width: 250px;margin-bottom: 5.8333333333vw;}
	.p-capabilitiesTop .top_inner {
  margin: 0 auto;width: 100%;
  position: relative;padding-right: 0px;}
	.p-capabilitiesTop .top_inner::before {  top: -453px;}
}

