
/*　home 共通
------------------------------------------------------------------------------------------------*/

.fv{
  width: 100%;
  height: 100svh;
  min-height: 70rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.fv::before,
.fv::after{
  content: "";
  display: block;
  width: 100%;
  height: 50%;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: opacity 0.3s;
  z-index: 1;
}
.fv::before{
  background: linear-gradient(to bottom,rgba(14,22,33,0),rgba(14,22,33,1));
  opacity: 1;
}
.fv::after{
  background: linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,1));
  opacity: 0;
}
.fv:has( + .anchor + .home-products.active)::before{
  opacity: 0;
}
.fv:has( + .anchor + .home-products.active)::after{
  opacity: 1;
}
.fv h1 img{
  width: 56rem;
  margin: 0 auto 0.5rem;
}
.fv .copy{
  font-size: 1.2rem;
  line-height: 1;
  white-space: nowrap;
  opacity: 0.5;
  position: absolute;
}
.fv .copy.le{
  writing-mode: sideways-lr;
  left: 2.4rem;
  top: 50%;
  transform: translateY(-50%);
}
.fv .copy.ri{
  writing-mode: sideways-rl;
  right: 2.4rem;
  top: 50%;
  transform: translateY(-50%);
}
.fv .scroll{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 13.3rem;
  aspect-ratio: 1 / 1;
  border-radius: 100%;
  border: 1px solid #fff;
  color: #fff;
  font-size: 2.4rem;
  letter-spacing: 0.02em;
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  z-index: 2;
  mix-blend-mode: difference;
}


#fl-bnr{
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 997;
}
#fl-bnr img.close{
  width: 1.7rem;
  position: absolute;
  right: 0.9rem;
  top: 0.9rem;
  z-index: 1;
  cursor: pointer;
  transition: opacity 0.3s;
}
#fl-bnr img.close:hover{
  opacity: 0.7;
}
#fl-bnr a{
  width: 28.7rem;
  display: block;
  background: rgba(255,255,255,0.2);
  backdrop-filter: blur(2rem);
  -webkit-backdrop-filter: blur(2rem);
  opacity: 1;
  color: #fff;
  text-align: center;
  font-weight: 700;
}
#fl-bnr a .inner{
  display: block;
  padding: 1.5rem 1.5rem 1.2rem;
}
#fl-bnr a .inner img.txt{
  width: 23.7rem;
}
#fl-bnr a .inner .box{
  display: block;
  line-height: 1.4;
  letter-spacing: 0.1em;
  padding: 0.4em 0;
  background: rgba(0,0,0,0.2);
  margin-top: 1rem;
}
#fl-bnr a .detail{
  display: block;
  line-height: 3rem;
  background-color: #16365F;
}


.home-products{
  position: relative;
  padding-top: 13rem;
  background-color: #0E1621;
  color: #fff;
  transition: background-color 0.3s, color 0.3s;
}
/*.home-products::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/common/bg-2.png) left calc(100% + 32.7rem) no-repeat #0E1621;
  background-size: 53rem auto;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  opacity: 0;
  transition: opacity 0.3s;
}*/
.home-products.active{
  background-color: #fff;
  color: #16365F;
}
.home-products.active::before{
  opacity: 1;
}
.products-swiper{
  margin-top: 4rem;
}
@media screen and (min-width: 769px){
.products-swiper .swiper-wrapper{
  display: grid;
  grid-template-columns: repeat(2, 32.8rem);
  gap: 2rem;
  justify-content: flex-end;
  transform: unset !important;
}
}
.products-swiper .swiper-slide{
  display: block;
  padding: 2.4rem;
}
.products-swiper .swiper-slide:nth-child(6n-5){
  background: url(../images/home/products-1-bg.png) center center no-repeat;
  background-size: cover;
}
.products-swiper .swiper-slide:nth-child(6n-4){
  background: url(../images/home/products-2-bg.png) center center no-repeat;
  background-size: cover;
}
.products-swiper .swiper-slide:nth-child(6n-3){
  background: url(../images/home/products-3-bg.png) center center no-repeat;
  background-size: cover;
}
.products-swiper .swiper-slide:nth-child(6n-2){
  background: url(../images/home/products-4-bg.png) center center no-repeat;
  background-size: cover;
}
.products-swiper .swiper-slide:nth-child(6n-1){
  background: url(../images/home/products-5-bg.png) center center no-repeat;
  background-size: cover;
}
.products-swiper .swiper-slide:nth-child(6n){
  background: url(../images/home/products-6-bg.png) center center no-repeat;
  background-size: cover;
}
.products-swiper .swiper-slide h3{
  width: fit-content;
  font-size: 2rem;
  font-weight: 700;
  border-bottom: 0.2rem solid;
  margin-bottom: 0.8em;
}


.sec-share{
  background: url(../images/home/share-bg.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
  padding: 11rem 0;
  position: relative;
  z-index: 1;
}
.sec-share h2{
  width: fit-content;
  font-size: 2rem;
  font-weight: 700;
  margin: 0 auto 0.5em;
}
.sec-share .h2-en{
  width: fit-content;
  font-size: 5.6rem;
  line-height: 1.14;
  margin: 0 auto;
}
.sec-share a.view-more{
  margin: 3rem auto 0;
}
.sec-share2{
  padding: 8rem 0;
}
.sec-share2 .ttl-1{
  margin: 0 auto 1em;
}
.sec-share2 .ttl-1-en{
  line-height: 1;
  margin: 0.2em auto;
}
.sec-share2 .content{
  max-width: 78rem;
}
.sec-share2 p{
  text-align: left;
}
.sec-share2 a.view-more{
  margin: 2rem 0 0 auto;
}


.home-features{
  background: url(../images/common/bg-1.jpg) center center no-repeat;
  background-size: cover;
  position: relative;
}
.home-features p.p-1{
  width: 47.2rem;
  margin: 4rem 0 0 auto;
}
.home-features .features-swiper{
  margin-top: 8rem;
}
@media screen and (min-width: 769px){
.features-swiper .swiper-wrapper{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.7rem;
  color: #fff;
  transform: unset !important;
}
}
.features-swiper .swiper-slide{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 48rem;
  text-align: center;
  position: relative;
}
.features-swiper .swiper-slide:nth-child(1){
  background: url(../images/home/features-1-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper .swiper-slide:nth-child(2){
  background: url(../images/home/features-2-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper .swiper-slide:nth-child(3){
  background: url(../images/home/features-3-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper .swiper-slide .num{
  font-size: 8rem;
  line-height: 1.15;
  border-bottom: 0.4rem solid;
  position: absolute;
  left: 2.8rem;
  top: 1rem;
}
.features-swiper .swiper-slide .ttl{
  opacity: 0.5;
  position: absolute;
  right: 2rem;
  bottom: 2rem;
}
.features-swiper .swiper-slide p{
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
}
.features-swiper .swiper-slide small{
  display: block;
  font-size: 1.2rem;
  margin-top: 0.2em;
}


.home-case .content{
  position: unset;
}
.home-case .ttl-1-en{
  margin-bottom: 4rem;
}
.partner-ttl{
  width: fit-content;
  font-size: 1.8rem;
  line-height: 3.2rem;
  padding: 0 0.8em;
  margin: 0 auto 0.5em;
}
.partner-ttl + p{
  text-align: center;
}
img.partner{
  margin-top: 3rem;
  mix-blend-mode: multiply;
}
.home-case .case-swiper{
  margin-top: 4rem;
}


.home-column-news{
  background-color: #fff;
  padding: 10rem 0;
}
.home-column-news .content{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8rem;
}
.home-column-news section{
  padding: 0;
}


.home-company{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  aspect-ratio: 1440 / 660;
  max-height: 66rem;
  background: transparent;
  position: relative;
}
.home-company::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/home/company-bg.jpg) center center no-repeat;
  background-size: cover;
  position: fixed;
  left: 0;
  top: 0;
  z-index: -1;
}
.home-company .wrap{
  width: fit-content;
  margin-left: auto;
}




/*　features 共通
------------------------------------------------------------------------------------------------*/

.features .video-header{
  padding-bottom: 23rem;
}
.features .video-header .img-wrap{
  display: grid;
  grid-template-columns: 1fr 1fr 24.6%;
  width: calc(50% + 51.2rem);
  position: absolute;
  right: 0;
  bottom: -14.2rem;
  z-index: 1;
}
.features .video-header .img-wrap img{
  width: 100%;
  height: 28.4rem;
  object-fit: cover;
}


.worries{
  padding: 5rem 0;
  position: relative;
}
.worries::before{
  content: "";
  display: block;
  width: 12rem;
  height: 4rem;
  background-color: #0E1621;
  position: absolute;
  clip-path: polygon(0 0,100% 0,50% 100%);
  bottom: -3.8rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.features .worries{
  padding-top: 19.4rem;
}
.worries ul{
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(2, 44rem);
  grid-template-rows: repeat(4, auto);
  column-gap: 4rem;
  justify-content: center;
}
.worries ul li{
  display: block;
  padding: 1em 0;
  font-size: 1.6rem;
  border-bottom: 1px solid rgba(196,196,196,0.3);
  position: relative;
}
.worries ul li:nth-child(4n-3){
  border-top: 1px solid rgba(196,196,196,0.3);
}


.why{
  background: url(../images/features/why-bg.jpg) center top no-repeat;
  background-size: 100% auto;
  padding-bottom: 9rem;
}
.why ul.reason-li{
  margin-top: 6rem;
}
.why ul.reason-li li{
  display: grid;
  grid-template-columns: 1fr 44rem;
  align-items: flex-start;
}
.why ul.reason-li li + li{
  margin-top: 6rem;
}
.why ul.reason-li li .ttl{
  position: relative;
  padding-left: 8rem;
}
.why ul.reason-li li .ttl .num{
  font-size: 8rem;
  line-height: 0.7;
  padding-bottom: 0.2em;
  border-bottom: 0.4rem solid;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.why ul.reason-li li .ttl h3{
  font-size: 3.2rem;
}
.why a.n-btn{
  margin: 7rem auto 0;
}
.why ul.point-li{
  margin-top: 6rem;
}
.why ul.point-li li{
  display: block;
}
.why ul.point-li li + li{
  margin-top: 4rem;
}
.why ul.point-li li .num{
  font-size: 2.4rem;
  line-height: 1.5;
}
.why ul.point-li li h3{
  font-size: 3.2rem;
  margin-bottom: 0.4em;
}


.coaris{
  background: url(../images/features/coaris-bg.jpg) center center no-repeat;
  background-size: cover;
  color: #fff;
  padding: 11rem 0 12rem;
}
.coaris .content{
  display: grid;
  grid-template-columns: 1fr 44rem;
  align-items: center;
}
.coaris h2{
  font-size: 3.2rem;
}
.coaris img.logo-coaris{
  width: 20rem;
  margin-top: 2rem;
}
.coaris .ext-btn{
  width: 100%;
  margin-top: 2rem;
}


.faq .content{
  display: grid;
  grid-template-columns: 1fr 63rem;
}
.faq ul{
  border-top: 1px solid #C4C4C4;
}
.faq ul li{
  display: block;
  padding: 2.4rem 0;
  border-bottom: 1px solid #C4C4C4;
}
.faq ul li h3{
  font-size: 1.8rem;
  margin-bottom: 0.7em;
  padding-left: 1.6em;
  position: relative;
}
.faq ul li h3::before{
  content: "Q.";
  position: absolute;
  left: 0;
  top: 0;
}




/*　products 共通
------------------------------------------------------------------------------------------------*/

.products .sec{
  background: url(../images/products/products-bg.jpg) center top no-repeat;
  background-size: 100% auto;
}
.products .sec .ttl-2,
.products .sec .ttl-2 + p{
  text-align: center;
}
.products .sec img.img-1{
  margin-top: 8rem;
}


ul.scene-li{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.2rem;
  row-gap: 4rem;
}
ul.scene-li li{
  display: block;
}
ul.scene-li li a{
  display: block;
  padding: 3rem 2rem;
  border: 1px solid #C4C4C4;
  position: relative;
}
ul.scene-li li a::before{
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-color: #16365F;
  clip-path: polygon(0 0,100% 0,100% 100%);
  position: absolute;
  right: 0.7rem;
  top: 0.7rem;
}
ul.scene-li li a .ttl{
  font-size: 2rem;
  margin-bottom: 0.5em;
}


ul.solution-li{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.2rem;
  row-gap: 4rem;
}
ul.solution-li li,
ul.solution-li li a{
  display: block;
}
ul.solution-li li a .thumb{
  aspect-ratio: 320 / 200;
  object-fit: cover;
}
ul.solution-li li .ttl{
  font-size: 2rem;
  margin: 0.8em 0 0.6em;
}




/*　single-products 共通
------------------------------------------------------------------------------------------------*/

.sec-check{
  padding-top: 10rem;
}
.sec-check ul{
  display: grid;
  justify-content: center;
}
.sec-check ul li{
  display: block;
  min-height: 3.9rem;
  padding-top: 0.5rem;
  font-size: 1.8rem;
  font-weight: 700;
  padding-left: 5.1rem;
  position: relative;
}
.sec-check ul li::before{
  content: "";
  display: block;
  width: 3.9rem;
  aspect-ratio: 1 / 1;
  background: url(../images/common/ico-check_w.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
}
.sec-check ul li + li{
  margin-top: 2rem;
}


.sec-solution ul.overview-li{
  margin-top: 6rem;
}
.sec-solution ul.overview-li li{
  display: grid;
  grid-template-columns: 1fr 52rem;
  gap: 8rem;
}
.sec-solution ul.overview-li li + li{
  margin-top: 6rem;
}
.sec-solution ul.overview-li li .ttl .h3-top{
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 700;
  gap: 2rem;
  margin-bottom: 1rem;
}
.sec-solution ul.overview-li li .ttl .h3-top::after{
  content: "";
  display: block;
  flex-grow: 1;
  height: 0;
  border-top: 1px solid;
}
.sec-solution ul.overview-li li .ttl h3{
  font-size: 3.2rem;
}


.subsidy-box{
  display: flex;
}
img.partner + .subsidy-box{
  margin-top: 5rem;
}
.subsidy-box .txt{
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 4rem 5.6rem;
}
.subsidy-box img.img{
  width: 44rem;
  min-height: 29.3rem;
  object-fit: cover;
}
.subsidy-box .txt h3{
  font-size: 2.4rem;
  margin-bottom: 0.6em;
}


ul.function-li{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
}
ul.function-li li{
  display: block;
}
ul.function-li li img.img{
  margin-bottom: 2rem;
}
ul.function-li li .ttl{
  font-size: 2.4rem;
  margin-bottom: 0.5em;
}
.alignment-box{
  padding: 4.8rem;
  border: 1px solid #C4C4C4;
  margin-top: 7rem;
}
.alignment-box ul{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
}
.alignment-box ul li{
  display: block;
}
.alignment-box ul li p{
  margin-top: 1em;
}


.flow-box{
  background: url(../images/products/flow-bg.jpg) center center no-repeat;
  background-size: cover;
  padding: 5rem 14rem 8rem;
}
ul.flow-li li{
  display: block;
  padding-left: 4rem;
  position: relative;
}
ul.flow-li li::before{
  content: "";
  display: block;
  width: 1rem;
  aspect-ratio: 1 / 1;
  border-radius: 100%;
  background-color: #16365F;
  position: absolute;
  left: 0;
  top: 0.7rem;
}
ul.flow-li li::after{
  content: "";
  display: block;
  width: 1px;
  height: calc(100% + 2rem);
  background-color: #C4C4C4;
  position: absolute;
  left: calc(0.5rem - 0.5px);
  bottom: -4.7rem;
}
ul.flow-li li:last-child::after{
  content: none;
}
ul.flow-li li + li{
  margin-top: 5rem;
}
ul.flow-li li .ttl{
  font-size: 1.8rem;
  margin-bottom: 0.8em;
}


.support .content{
  display: grid;
  grid-template-columns: 1fr 62rem;
}
ul.support-li{
  border-top: 1px solid #C4C4C4;
}
ul.support-li li{
  display: block;
  padding: 3rem 0;
  border-bottom: 1px solid #C4C4C4;
}
ul.support-li li .ttl{
  font-size: 1.8rem;
  margin-bottom: 0.8em;
}


ul.testimonial-li{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
}
.more ul.testimonial-li{
  margin-top: 3rem;
}
ul.testimonial-li li{
  display: block;
  padding: 4rem 2rem;
  border: 1px solid #C4C4C4;
}
ul.testimonial-li li .ttl{
  font-size: 2.4rem;
  margin-bottom: 0.6em;
}
ul.testimonial-li li .name{
  font-weight: 700;
  margin-top: 1em;
}


.price .img{
  width: 100%;
  aspect-ratio: 1024 / 480;
  background: #F2F2F2;
}




/*　case 共通
------------------------------------------------------------------------------------------------*/

.sec-sort{
  padding-bottom: 3rem;
  background: #F2F4F5;
}
.sort-box{
  background: #fff;
}
.sort-box .accttl{
  font-size: 1.6rem;
  font-weight: 700;
  padding: 1.6rem 2rem;
  position: relative;
  cursor: pointer;
}
.sort-box .accttl::after{
  content: "";
  display: block;
  width: 0.6rem;
  height: 1rem;
  background: url(../images/common/btn-arrow.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: 2.2rem;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transition: transform 0.3s;
}
.sort-box .accttl.active::after{
  transform: translateY(-50%) rotate(270deg);
}
.sort-box .accshow{
  display: none;
  border-top: 1px solid #C4C4C4;
}


.nav-links ul{
  font-family: 'Chillax Variable', 'LINESeedJP', sans-serif;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  gap: 1rem;
  margin-top: 8rem;
}
.nav-links ul li{
  display: block;
}
.nav-links ul li .page-numbers{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 4rem;
  height: 4rem;
  border: 1px solid #C4C4C4;
  transition: background-color 0.3s, color 0.3s, border 0.3s;
}
.nav-links ul li .page-numbers.current,
.nav-links ul li a.page-numbers:hover{
  background-color: #16365F;
  color: #fff;
  border: 1px solid #16365F;
  opacity: 1;
}


.case-post h2{
  display: block;
  width: fit-content;
  line-height: 1.86;
  font-weight: 700;
  padding: 0 0.8em;
  margin: 2rem 0 0.6em;
}
.case-post h3{
  font-size: 2.4rem;
  margin: 5rem 0 0.8em;
}
.case-post hr{
  border-top: 1px solid #C4C4C4;
  margin: 5rem 0;
}
.case-post img{
  margin: 4rem auto;
}
.case-post p + p{
  margin-top: 1.5em;
}
.case-post ul,
.case-post ol{
  margin: 1.5em 0 1.5em 1.4em;
}


.recommend{
  margin-top: 8rem;
}
.recommend .ttl-wrap{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.4rem;
  margin-bottom: 2.4rem;
}
.recommend .ttl-wrap h2{
  font-size: 3.2rem;
}
.recommend .ttl-wrap a.bd-link{
  margin-top: 0;
}




/*　news 共通
------------------------------------------------------------------------------------------------*/

ul.year-archive{
  display: flex;
  column-gap: 1em;
  flex-wrap: wrap;
  margin-bottom: 1.2rem;
}
ul.year-archive li{
  display: block;
  font-size: 2rem;
}
ul.year-archive li a{
  opacity: 0.3;
}
ul.year-archive li a:hover,
ul.year-archive li a[aria-current="page"]{
  opacity: 1;
  pointer-events: none;
}


ul.news-li{
  border-top: 1px solid #C4C4C4;
}
ul.news-li li{
  display: grid;
  grid-template-columns: 10rem auto 1fr;
  padding: 1.4rem 0;
  align-items: center;
  border-bottom: 1px solid #C4C4C4;
}
ul.news-li li .date{
  font-size: 1.6rem;
}
ul.news-li li .ttl{
  font-weight: 400;
  margin-left: 2rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}


.news-post img{
  margin: 4rem auto;
}
.news-post p + p{
  margin-top: 1.5em;
}
.news-post ul,
.news-post ol{
  margin: 1.5em 0 1.5em 1.4em;
}


.share-wrap{
  display: flex;
  align-items: center;
  margin-top: 6rem;
}
ul.share{
  display: flex;
  gap: 1.6rem;
}
ul.share li{
  display: block;
}
ul.share li a{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 14rem;
  line-height: 4.4rem;
  border-radius: 2.2rem;
  gap: 1rem;
  border: 1px solid #DADADA;
  font-weight: 700;
}
ul.share li a img{
  width: 1.8rem;
}
.share-wrap .bd-link{
  margin-top: 0;
}




/*　company 共通
------------------------------------------------------------------------------------------------*/

dl.company-dl{
  display: grid;
  grid-template-columns: 1fr 72rem;
  row-gap: 8rem;
}
dl.company-dl > dt h2{
  font-size: 2.8rem;
}
dl.n-dl{
  display: grid;
  grid-template-columns: 19rem 1fr;
  border-top: 1px solid #C4C4C4;
}
dl.n-dl dt,
dl.n-dl dd{
  padding: 2rem 0;
  border-bottom: 1px solid #C4C4C4;
}
dl.n-dl dt{
  font-weight: 700;
}
dl.company-dl > dd .map{
  display: block;
  width: 100%;
  aspect-ratio: 720 / 300;
  margin: 1.2rem 0 4rem;
}
dl.company-dl > dd .map:last-child{
  margin-bottom: 0;
}




/*　contact 共通
------------------------------------------------------------------------------------------------*/

.form-sec h2{
  font-size: 4rem;
  text-align: center;
  margin-bottom: 2rem;
}
.form-sec h2 + p{
  text-align: center;
}
.form-sec .form{
  max-width: 80rem;
  margin: 4rem auto 0;
}
.form-sec .form .fieldLabelTxt{
  color: red;
}




/*　resources 共通
------------------------------------------------------------------------------------------------*/

ul.resources-li{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.2rem;
  row-gap: 5rem;
}
ul.resources-li li,
ul.resources-li li a{
  display: block;
}
ul.resources-li li a .zoom{
  aspect-ratio: 320 / 200;
}
ul.resources-li li a .ttl{
  font-size: 1.8rem;
  margin-top: 0.8em;
}
ul.resources-li li a p{
  margin-top: 0.5em;
}


.resources-post img{
  margin: 4rem auto;
}
.resources-post p + p{
  margin-top: 1.5em;
}
.resources-post ul,
.resources-post ol{
  margin: 1.5em 0 1.5em 1.4em;
}




/*　low 共通
------------------------------------------------------------------------------------------------*/

.low-sec h2{
  font-size: 2.4rem;
  margin-bottom: 2.4rem;
}
.low-sec h3{
  font-size: 1.8rem;
  margin: 2.4rem 0 1.2rem;
}




/*　revenue-profit 共通
------------------------------------------------------------------------------------------------*/

.features-swiper.revenue-profit .swiper-slide:nth-child(1){
  background: url(../images/revenue-profit/why-1-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.revenue-profit .swiper-slide:nth-child(2){
  background: url(../images/revenue-profit/why-2-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.revenue-profit .swiper-slide:nth-child(3){
  background: url(../images/revenue-profit/why-3-bg.jpg) center center no-repeat;
  background-size: cover;
}


.our-solution{
  background: url(../images/revenue-profit/solution-bg.jpg) center center no-repeat;
  background-size: cover;
}




/*　development 共通
------------------------------------------------------------------------------------------------*/

.development .sec{
  background: url(../images/development/sec-1-bg.jpg) center top no-repeat;
  background-size: 100% auto;
}


@media screen and (min-width: 769px){
.point-swiper{
  margin-top: -11rem;
}
.point-swiper .swiper-wrapper{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.2rem;
  transform: unset !important;
}
}
.point-swiper .swiper-slide{
  background-color: rgba(255,255,255,0.5);
}
.point-swiper .swiper-slide .inner{
  padding: 2.4rem 2rem 3rem;
  text-align: center;
}
.point-swiper .swiper-slide .num{
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 3.2rem;
  padding: 0 0.6em;
  margin-bottom: 1.2rem;
}
.point-swiper .swiper-slide .ttl{
  font-size: 2.4rem;
  line-height: 1.33;
  margin-bottom: 0.3em;
}


.flow-box.process{
  background: rgba(255,255,255,0.5);
  margin-top: 3.2rem;
}


.governance-box{
  background: url(../images/development/governance-bg.jpg) center center no-repeat;
  background-size: cover;
  padding: 5rem 14.5rem;
  margin-top: 2rem;
}
.governance-box .box-1,
.governance-box .box-2{
  background: rgba(255,255,255,0.9);
}
.governance-box .box-1{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 3rem 0;
}
.governance-box .box-1 .do,
.governance-box .box-1 .dont{
  display: grid;
  justify-content: center;
}
.governance-box .box-1 .dont{
  border-left: 1px solid #C4C4C4;
}
.governance-box .box-1 h3{
  font-size: 1.6rem;
  margin-bottom: 0.5em;
}
.governance-box .box-1 .do h3{
  color: #15BF6B;
}
.governance-box .box-1 .dont h3{
  color: #E0066A;
}
.governance-box .box-1 h3 big{
  font-size: 3.6rem;
}
.governance-box ul.check-li li{
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  padding-left: 3rem;
  position: relative;
}
.governance-box ul.check-li li::before{
  content: "";
  display: block;
  width: 2.2rem;
  height: 1.6rem;
  background: url(../images/common/ico-check_g.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0.3em;
}
.governance-box .box-1 .dont ul.check-li li::before{
  background: url(../images/common/ico-check_r.svg) center center no-repeat;
  background-size: contain;
}
.governance-box .box-1 ul.check-li{
  display: grid;
  row-gap: 0.4em;
}
.governance-box .box-2{
  padding: 3rem;
  margin-top: 2rem;
}
.governance-box .box-2 h3{
  font-size: 1.6rem;
  text-align: center;
  padding: 0.2em;
  border: 1px solid;
  margin-bottom: 1.6rem;
}
.governance-box .box-2 ul.check-li{
  display: grid;
  grid-template-columns: repeat(3, auto);
  justify-content: space-between;
  row-gap: 0.4em;
}


.technical{
  background: url(../images/development/technical-bg.jpg) center top no-repeat;
  background-size: cover;
}
.technical .ttl-1-en + p{
  text-align: center;
  margin-bottom: 4rem;
}
.technical .box{
  background-color: rgba(255,255,255,0.5);
  padding: 4rem 7rem;
}
.technical .box ul.cando-li{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  column-gap: 2rem;
  row-gap: 1.3rem;
}
.technical .box ul.cando-li li{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 3.6rem;
  border-radius: 1.8rem;
  background: #fff;
  text-align: center;
  font-weight: 700;
}
.technical .box h3{
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  padding: 1rem;
  margin-top: 4rem;
}
.technical .box dl{
  display: grid;
  grid-template-columns: 14.5rem 1fr;
}
.technical .box dl dt,
.technical .box dl dd{
  padding: 1.8rem 0;
  border-bottom: 1px solid #C4C4C4;
}
.technical .box dl dt{
  font-weight: 700;
}




/*　ai-blog 共通
------------------------------------------------------------------------------------------------*/

.features-swiper.ai-blog .swiper-slide:nth-child(1){
  background: url(../images/ai-blog/why-1-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.ai-blog .swiper-slide:nth-child(2){
  background: url(../images/ai-blog/why-2-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.ai-blog .swiper-slide:nth-child(3){
  background: url(../images/ai-blog/why-3-bg.jpg) center center no-repeat;
  background-size: cover;
}




/*　meo 共通
------------------------------------------------------------------------------------------------*/

.features-swiper.meo .swiper-slide:nth-child(1){
  background: url(../images/meo/why-1-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.meo .swiper-slide:nth-child(2){
  background: url(../images/meo/why-2-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.meo .swiper-slide:nth-child(3){
  background: url(../images/meo/why-3-bg.jpg) center center no-repeat;
  background-size: cover;
}




/*　suggest 共通
------------------------------------------------------------------------------------------------*/

.features-swiper.suggest .swiper-slide:nth-child(1){
  background: url(../images/suggest/why-1-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.suggest .swiper-slide:nth-child(2){
  background: url(../images/suggest/why-2-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.suggest .swiper-slide:nth-child(3){
  background: url(../images/suggest/why-3-bg.jpg) center center no-repeat;
  background-size: cover;
}




/*　pos 共通
------------------------------------------------------------------------------------------------*/

.features-swiper.pos .swiper-slide:nth-child(1){
  background: url(../images/pos/why-1-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.pos .swiper-slide:nth-child(2){
  background: url(../images/pos/why-2-bg.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.pos .swiper-slide:nth-child(3){
  background: url(../images/pos/why-3-bg.jpg) center center no-repeat;
  background-size: cover;
}




/*　 共通
------------------------------------------------------------------------------------------------*/




/*　 共通
------------------------------------------------------------------------------------------------*/




/*　スマホ
------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 768px){


/*　home SP
------------------------------------------------------------------------------------------------*/

.fv{
  min-height: 54rem;
}
.fv h1 img{
  width: 24rem;
  margin: 0 auto 3.6rem;
}
.fv .copy{
  font-size: 1rem;
}
.fv .copy.le{
  writing-mode: unset;
  left: 2rem;
  top: unset;
  transform:  unset;
  bottom: 2rem;
}
.fv .scroll{
  width: 8rem;
  font-size: 1.4rem;
  bottom: 1.7rem;
  right: 1.7rem;
}


#fl-bnr{
  width: 100%;
}
#fl-bnr img.close{
  right: unset;
  left: 0.7rem;
  top: -2.4rem;
}
#fl-bnr a{
  width: 100%;
}
#fl-bnr a .inner{
  padding: 0.8rem 1.6rem 0.8rem;
}
#fl-bnr a .inner img.txt{
  width: 34.7rem;
}
#fl-bnr a .inner .box{
  line-height: 1.9rem;
  font-size: 1.2rem;
  text-align: center;
  padding: 0;
  margin-top: 0.6rem;
}
#fl-bnr a .detail{
  line-height: 2.4rem;
}


.home-products{
  padding-top: 8rem;
}
.home-products::before{
  background: url(../images/common/bg-2.png) left calc(100% + 15.5rem) no-repeat #0E1621;
  background-size: 25.3rem auto;
}
.products-swiper{
  overflow: unset;
}
.products-swiper .swiper-slide{
  width: 28.8rem;
  margin-right: 1.2rem;
}
.products-swiper .swiper-slide:last-child{
  margin-right: 0;
}
.products-swiper .swiper-slide h3{
  font-size: 1.6rem;
}


.sec-share{
  background: url(../images/home/share-bg_sp.jpg) center center no-repeat;
  background-size: cover;
  padding: 8rem 0;
}
.sec-share h2{
  font-size: 1.6rem;
}
.sec-share .h2-en,
.sec-share2 .ttl-1-en{
  font-size: 3.2rem;
  line-height: 1.2;
}
.sec-share a.view-more{
  margin: 2rem auto 0;
}
.sec-share2 .ttl-1-en{
  margin: 0.2em auto 2rem;
}
.sec-share2 a.view-more{
  margin: 1.2rem 0 0 auto;
}


.home-features p.p-1{
  width: 100%;
  margin: 6rem 0 0;
}
.home-features .features-swiper{
  margin-top: 5rem;
}
.features-swiper{
  overflow: unset;
}
.features-swiper .swiper-slide{
  width: 28.8rem;
  height: 20rem;
  margin-right: 1.2rem;
  color: #fff;
}
.features-swiper .swiper-slide:last-child{
  margin-right: 0;
}
.features-swiper .swiper-slide .num{
  font-size: 3.6rem;
  border-bottom: 0.2rem solid;
  left: 1.4rem;
  top: 0.4rem;
}
.features-swiper .swiper-slide p{
  font-size: 1.8rem;
}
.features-swiper .swiper-slide small{
  font-size: 1rem;
  margin-top: 0.2em;
}


.home-case{
  padding-bottom: 6.4rem;
}
.partner-ttl{
  font-size: 1.4rem;
  line-height: 2.6rem;
  padding: 0 1em;
}
img.partner{
  margin-top: 2rem;
}
.home-case .case-swiper{
  margin-top: 3rem;
}


.home-column-news{
  padding-bottom: 3.2rem;
}
.home-column-news .content{
  grid-template-columns: 100%;
  gap: 3.2rem;
}


.home-company{
  aspect-ratio: 390 / 435;
  max-height: unset;
}
.home-company::before{
  background: url(../images/home/company-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.home-company .view-more{
  margin-left: 0;
}




/*　features SP
------------------------------------------------------------------------------------------------*/

.features .video-header{
  padding-bottom: 16rem;
}
.features .video-header .img-wrap{
  grid-template-columns: 1fr 1fr 20.5%;
  width: calc(100% - 2rem);
  bottom: -10rem;
}
.features .video-header .img-wrap img{
  height: 20rem;
}
.features .video-header .img-wrap img:last-child{
  object-position: left center;
}


.worries{
  padding: 3rem 0;
}
.worries::before{
  width: 8rem;
  height: 3rem;
  bottom: -3rem;
}
.features .worries{
  padding-top: 13rem;
}
.worries ul{
  grid-template-columns: repeat(2, 1fr);
  column-gap: 1.2rem;
}
.worries ul li{
  font-size: 1.4rem;
}
.worries ul li{
  padding: 0.8em 0;
}


.why{
  background: url(../images/features/why-bg_sp.jpg) center top no-repeat;
  background-size: 100% auto;
  padding-bottom: 8rem;
}
.why ul.reason-li{
  margin-top: 4rem;
}
.why ul.reason-li li{
  grid-template-columns: 100%;
  gap: 2rem;
}
.why ul.reason-li li + li{
  margin-top: 4rem;
}
.why ul.reason-li li .ttl{
  padding-left: 4rem;
}
.why ul.reason-li li .ttl .num{
  font-size: 3.6rem;
  border-bottom: 0.2rem solid;
}
.why ul.reason-li li .ttl h3{
  font-size: 1.8rem;
}
.why a.n-btn{
  margin: 4rem auto 0;
}
.why ul.point-li{
  margin-top: 4rem;
}
.why ul.point-li li + li{
  margin-top: 2.4rem;
}
.why ul.point-li li .num{
  font-size: 1.6rem;
  margin-bottom: 0.3em;
}
.why ul.point-li li h3{
  font-size: 1.8rem;
  margin-bottom: 0.7em;
}


.coaris{
  background: url(../images/features/coaris-bg_sp.jpg) center center no-repeat;
  background-size: cover;
  padding: 8rem 0;
}
.coaris .content{
  grid-template-columns: 100%;
  gap: 2.4rem;
}
.coaris h2{
  font-size: 2.4rem;
  text-align: center;
  transform: translateX(0.3em);
}
.coaris img.logo-coaris{
  width: 16rem;
  margin: 0.8rem auto 0;
}


.faq .content{
  grid-template-columns: 100%;
}
.faq .ttl-1,
.faq .ttl-1-en{
  margin-left: auto;
}
.faq ul li h3{
  font-size: 1.6rem;
}




/*　products SP
------------------------------------------------------------------------------------------------*/

.products .sec{
  background: url(../images/products/products-bg_sp.jpg) center top no-repeat;
  background-size: 100% auto;
}
.products .sec .ttl-2 + p{
  text-align: left;
}
.products .sec img.img-1{
  margin-top: 6rem;
}


ul.scene-li{
  grid-template-columns: 100%;
  row-gap: 1.2rem;
}
ul.scene-li li a{
  padding: 1.6rem;
}
ul.scene-li li a .ttl{
  font-size: 1.6rem;
}


ul.solution-li{
  grid-template-columns: 100%;
  row-gap: 2rem;
}
ul.solution-li li .ttl{
  font-size: 1.6rem;
}




/*　single-products SP
------------------------------------------------------------------------------------------------*/

/*.sec-check{
  padding-top: 10rem;
}
.sec-check ul{
  display: grid;
  justify-content: center;
}
.sec-check ul li{
  display: block;
  min-height: 3.9rem;
  padding-top: 0.5rem;
  font-size: 1.8rem;
  font-weight: 700;
  padding-left: 5.1rem;
  position: relative;
}
.sec-check ul li::before{
  content: "";
  display: block;
  width: 3.9rem;
  aspect-ratio: 1 / 1;
  background: url(../images/common/ico-check_w.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
}
.sec-check ul li + li{
  margin-top: 2rem;
}


.sec-solution ul.overview-li{
  margin-top: 6rem;
}
.sec-solution ul.overview-li li{
  display: grid;
  grid-template-columns: 1fr 52rem;
  gap: 8rem;
}
.sec-solution ul.overview-li li + li{
  margin-top: 6rem;
}
.sec-solution ul.overview-li li .ttl .h3-top{
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 700;
  gap: 2rem;
  margin-bottom: 1rem;
}
.sec-solution ul.overview-li li .ttl .h3-top::after{
  content: "";
  display: block;
  flex-grow: 1;
  height: 0;
  border-top: 1px solid;
}
.sec-solution ul.overview-li li .ttl h3{
  font-size: 3.2rem;
}


.subsidy-box{
  display: flex;
}
img.partner + .subsidy-box{
  margin-top: 5rem;
}
.subsidy-box .txt{
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 4rem 5.6rem;
}
.subsidy-box img.img{
  width: 44rem;
  min-height: 29.3rem;
  object-fit: cover;
}
.subsidy-box .txt h3{
  font-size: 2.4rem;
  margin-bottom: 0.6em;
}*/


ul.function-li{
  grid-template-columns: 100%;
  gap: 2.4rem;
}
ul.function-li li img.img{
  margin-bottom: 1.6rem;
}
ul.function-li li .ttl{
  font-size: 1.8rem;
}
/*.alignment-box{
  padding: 4.8rem;
  border: 1px solid #C4C4C4;
  margin-top: 7rem;
}
.alignment-box ul{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
}
.alignment-box ul li{
  display: block;
}
.alignment-box ul li p{
  margin-top: 1em;
}*/


.flow-box{
  background: url(../images/products/flow-bg_sp.jpg) center center no-repeat;
  background-size: cover;
  padding: 4rem 2rem 3rem;
}
ul.flow-li li{
  padding-left: 2rem;
}
ul.flow-li li::before{
  width: 0.8rem;
  top: 0.9rem;
}
ul.flow-li li::after{
  height: calc(100% + 2.2rem);
  left: calc(0.4rem - 0.5px);
  bottom: -4.8rem;
}
ul.flow-li li + li{
  margin-top: 3rem;
}
ul.flow-li li .ttl{
  font-size: 1.6rem;
}


.support .content{
  grid-template-columns: 100%;
}
.support .ttl-1,
.support .ttl-1-en{
  margin-left: auto;
}
ul.support-li li{
  padding: 2.4rem 0;
}
ul.support-li li .ttl{
  font-size: 1.8rem;
  margin-bottom: 0.6em;
}


ul.testimonial-li{
  grid-template-columns: 100%;
  gap: 2rem;
}
.more-btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 12rem;
  line-height: 4rem;
  border-radius: 2rem;
  background: rgba(22,54,95,0.1);
  color: #16365F;
  border: 0;
  font-size: 1.4rem;
  font-weight: 700;
  margin: 2rem auto 0;
}
.more-btn.off,
.more-btn + .more{
  display: none;
}
.more ul.testimonial-li{
  margin-top: 2rem;
}
ul.testimonial-li li{
  padding: 2.4rem 2rem;
}
ul.testimonial-li li .ttl{
  font-size: 1.8rem;
  margin-bottom: 0.8em;
}


/*.price .img{
  width: 100%;
  aspect-ratio: 1024 / 480;
  background: #F2F2F2;
}*/




/*　case SP
------------------------------------------------------------------------------------------------*/

/*.sec-sort{
  padding-bottom: 3rem;
  background: #F2F4F5;
}
.sort-box{
  background: #fff;
}
.sort-box .accttl{
  font-size: 1.6rem;
  font-weight: 700;
  padding: 1.6rem 2rem;
  position: relative;
  cursor: pointer;
}
.sort-box .accttl::after{
  content: "";
  display: block;
  width: 0.6rem;
  height: 1rem;
  background: url(../images/common/btn-arrow.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  right: 2.2rem;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transition: transform 0.3s;
}
.sort-box .accttl.active::after{
  transform: translateY(-50%) rotate(270deg);
}
.sort-box .accshow{
  display: none;
  border-top: 1px solid #C4C4C4;
}*/


.nav-links ul{
  font-size: 1.4rem;
  margin-top: 6rem;
}
.nav-links ul li .page-numbers{
  width: 3.6rem;
  height: 3.6rem;
}


.case-post h3{
  font-size: 1.8rem;
  margin: 4rem 0 0.8em;
}
.case-post hr{
  border-top: 1px solid #C4C4C4;
  margin: 4rem 0;
}
.case-post img{
  margin: 3rem auto;
}


.recommend{
  margin-top: 6rem;
}
.recommend .ttl-wrap{
  gap: 1rem;
  margin-bottom: 2.4rem;
}
.recommend .ttl-wrap h2{
  font-size: 2.2rem;
}




/*　news SP
------------------------------------------------------------------------------------------------*/

ul.news-li li{
  display: flex;
  flex-wrap: wrap;
  padding: 1.2rem 0;
}
ul.news-li li .date{
  font-size: 1.6rem;
}
ul.news-li li .cat-wrap{
  flex-grow: 1;
  margin-left: 1.2rem;
}
ul.news-li li .ttl{
  width: 100%;
  margin: 0.2em 0 0;
  -webkit-line-clamp: 2;
}


.news-post img{
  margin: 2.4rem auto;
}


.share-wrap{
  display: block;
  margin-top: 6rem;
}
ul.share{
  justify-content: center;
}
.share-wrap .bd-link{
  margin: 3rem auto 0;
}




/*　company SP
------------------------------------------------------------------------------------------------*/

dl.company-dl{
  grid-template-columns: 100%;
  row-gap: 0;
}
dl.company-dl > dt h2{
  font-size: 2rem;
  margin-bottom: 0.9em;
}
dl.company-dl > dd + dt{
  margin-top: 8rem;
}
dl.n-dl{
  grid-template-columns: 10rem 1fr;
}
dl.n-dl dt,
dl.n-dl dd{
  padding: 1.2rem 0;
}
dl.n-dl dt{
  padding-right: 2rem;
}
dl.company-dl > dd .map{
  aspect-ratio: 350 / 240;
  margin: 1.2rem 0 3rem;
}




/*　contact SP
------------------------------------------------------------------------------------------------*/

.form-sec h2{
  font-size: 2rem;
  white-space: nowrap;
}
.form-sec h2 + p{
  text-align: left;
}
.form-sec .form{
  margin: 2rem auto 0;
}




/*　resources SP
------------------------------------------------------------------------------------------------*/

ul.resources-li{
  grid-template-columns: 100%;
  row-gap: 4rem;
}
ul.resources-li li a .ttl{
  font-size: 1.6rem;
}


.resources-post img{
  margin: 2.4rem auto;
}




/*　low SP
------------------------------------------------------------------------------------------------*/

.low-sec h2{
  font-size: 1.8rem;
  margin-bottom: 1.2rem;
}
.low-sec h3{
  font-size: 1.6rem;
}




/*　revenue-profit SP
------------------------------------------------------------------------------------------------*/

.our-solution{
  background: url(../images/revenue-profit/solution-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}




/*　development 共通
------------------------------------------------------------------------------------------------*/

.development .sec{
  background: url(../images/development/sec-1-bg_sp.jpg) center top no-repeat;
  background-size: 100% auto;
  padding: 2rem 0 0;
}


.point-swiper{
  overflow: unset;
}
.point-swiper .swiper-slide{
  width: 28rem;
  margin-right: 2rem;
}
.point-swiper .swiper-slide:last-child{
  margin-right: 0;
}
.point-swiper .swiper-slide .inner{
  padding: 2rem 2rem 3rem;
}
.point-swiper .swiper-slide .num{
  font-size: 1.4rem;
  line-height: 2.8rem;
}
.point-swiper .swiper-slide .ttl{
  font-size: 2rem;
  margin-bottom: 0.3em;
}


.flow-box.process{
  margin-top: 2rem;
}


.governance-box{
  background: url(../images/development/governance-bg_sp.jpg) center center no-repeat;
  background-size: cover;
  padding: 4rem 2rem;
  margin-top: 0;
}
.governance-box .box-1{
  grid-template-columns: 100%;
  padding: 0;
}
.governance-box .box-1 .do,
.governance-box .box-1 .dont{
  grid-template-columns: 12.5rem 1fr;
  justify-content: unset;
  padding: 2rem 1.4rem;
}
.governance-box .box-1 .dont{
  border-left: 0;
  border-top: 1px solid #C4C4C4;
}
.governance-box .box-1 h3{
  font-size: 1.4rem;
}
.governance-box .box-1 h3 big{
  display: block;
  font-size: 3.2rem;
  line-height: 1;
}
.governance-box ul.check-li li{
  padding-left: 2.8rem;
  line-height: 1.25;
}
.governance-box ul.check-li li::before{
  width: 1.8rem;
  height: 1.4rem;
  top: 0.15em;
}
.governance-box .box-1 ul.check-li{
  display: grid;
  row-gap: 0.8em;
}
.governance-box .box-2{
  padding: 2rem 2.4rem;
}
.governance-box .box-2 h3{
  font-size: 1.4rem;
}
.governance-box .box-2 ul.check-li{
  grid-template-columns: 100%;
  row-gap: 0.7em;
}


.technical{
  background: url(../images/development/technical-bg_sp.jpg) center top no-repeat;
  background-size: cover;
}
.technical .ttl-1-en + p{
  text-align: left;
  margin-bottom: 2.4rem;
}
.technical .box{
  padding: 1.6rem;
}
.technical .box ul.cando-li{
  grid-template-columns: repeat(2, 1fr);
  column-gap: 1.4rem;
  row-gap: 0.8rem;
}
.technical .box h3{
  font-size: 1.4rem;
  padding: 0.5em;
  margin-top: 2rem;
}
.technical .box dl{
  grid-template-columns: 100%;
}
.technical .box dl dt{
  padding: 1.2rem 0 0.1em;
  border-bottom: 0;
}
.technical .box dl dd{
  padding: 0 0 1.2rem;
}




/*　ai-blog SP
------------------------------------------------------------------------------------------------*/

.features-swiper.ai-blog .swiper-slide:nth-child(1){
  background: url(../images/ai-blog/why-1-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.ai-blog .swiper-slide:nth-child(2){
  background: url(../images/ai-blog/why-2-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.ai-blog .swiper-slide:nth-child(3){
  background: url(../images/ai-blog/why-3-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}




/*　meo SP
------------------------------------------------------------------------------------------------*/

.features-swiper.meo .swiper-slide:nth-child(1){
  background: url(../images/meo/why-1-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.meo .swiper-slide:nth-child(2){
  background: url(../images/meo/why-2-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.meo .swiper-slide:nth-child(3){
  background: url(../images/meo/why-3-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}




/*　suggest SP
------------------------------------------------------------------------------------------------*/

.features-swiper.suggest .swiper-slide:nth-child(1){
  background: url(../images/suggest/why-1-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.suggest .swiper-slide:nth-child(2){
  background: url(../images/suggest/why-2-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.suggest .swiper-slide:nth-child(3){
  background: url(../images/suggest/why-3-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}




/*　pos SP
------------------------------------------------------------------------------------------------*/

.features-swiper.pos .swiper-slide:nth-child(1){
  background: url(../images/pos/why-1-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.pos .swiper-slide:nth-child(2){
  background: url(../images/pos/why-2-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}
.features-swiper.pos .swiper-slide:nth-child(3){
  background: url(../images/pos/why-3-bg_sp.jpg) center center no-repeat;
  background-size: cover;
}




/*　 SP
------------------------------------------------------------------------------------------------*/




/*　 SP
------------------------------------------------------------------------------------------------*/




/*　 SP
------------------------------------------------------------------------------------------------*/




}/*　スマホここまで */



