@charset "utf-8";
/* CSS Document */

/*video{display: none!important;}*/

.is-hide{
 opacity: 0!important;
 transition: all .3s linear!important;
}
.is-hide02{
 opacity: 0!important;
 transition: all .2s linear!important;
}
.h-about--container{
 opacity: 1;
 transition: all .2s linear;
}
.mv--container{
 opacity: 1;
 transition: all .5s linear;
}

.main-content-wrapper{
 padding-bottom: 1500px;
}
.bgFixed-content-wrapper{
 position: relative;
 z-index: 5;
}
.bgFixed-content-wrapper::before {
  content: "";
  width: 100%;
  height: 1600px; 
  display: block;
  background: linear-gradient(to top, rgba(0,0,0,0), #000, rgba(0,0,0,0));
  background: -webkit-linear-gradient(to top, rgba(0,0,0,0), #000, rgba(0,0,0,0));
  position: absolute;
  top: 0;
  left: 0;
}

main{
 position: relative;
 overflow: hidden;
 padding: 0 0 150px 0;
}
main p{
 line-height: 250%;
 font-weight: 200;
}

.flex{
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
.a-center{
 align-items: center;
}

section{
 position: relative;
}
.insert{
 width: 1200px;
 margin: 0 auto;
}

.mv--container{
 position: relative;
}
.mv--container .pic{
 height: 100vh;
}
.mv--container .pic img{
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: 50% 50%;
}
.mv--container .pic video{
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: 50% 50%;
}
.mv--insert{
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 width: 84%;
 min-width: 1100px;
 max-width: 1600px;
 z-index:2;
 text-align: center;
 vertical-align: middle;
 
}
.mv--insert h1{
 font-size: 10rem;
 font-weight: 100;
 text-align: justify;
 text-justify: inter-ideograph;
 text-align-last: justify;
 position: relative;
}
.mv--insert h1::before{
 content: '';
 display: inline-block;
 width: 880px;
 height: 120px;
 background-image: url(../../img/l-line.png);
 background-size: contain;
 background-repeat: no-repeat;
 vertical-align: middle;
 position: absolute;
 top: -40px;
 left: -30px;
 z-index: 2;
}
.mv--insert h1::after{
 content: '';
 display: inline-block;
 width: 880px;
 height: 120px;
 background-image: url(../../img/r-line.png);
 background-size: contain;
 background-repeat: no-repeat;
 vertical-align: middle;
 position: absolute;
 bottom: -50px;
 right: -30px;
 z-index: 2;
}

.h-about--container{
 padding: 0 100px;
 height: 100vh;
 position: relative;
 background-color: rgba(0,0,0,1);
}
.h-about--container .bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
    overflow: hidden;
}
.h-about--container .bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    opacity: 1;
}
.h-about--container .insert{
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 z-index:1;
 vertical-align: middle;
 display: flex;
 align-items: center;
 flex-wrap: wrap;
 z-index: 1;
 width: 1000px;
}
/*.h-about--container .insert::after{
 content: '';
 display: block;
 width: 100%;
 height: 100%;
 position: absolute;
 z-index: 1;
 background-image: url(../../img/stripe.png);
 background-size: contain;
 background-repeat: no-repeat;
 background-position: center center;
 transform: scale(1.18, 1.18);
}*/

.h-about--container .insert h2,
.h-about--container .insert h1{
 font-size: 8.0rem;
 font-weight: 100;
 letter-spacing: 0.2em;
 line-height: 180%;
 width: 100%;
 position: relative;
 z-index: 2;
 margin: 0;
}
.h-about--container .insert p{
 font-size: 2.0rem;
 /*font-weight: 500;*/
 line-height: 250%;
 margin: 30px 0 0 0;
 width: 100%;
 position: relative;
 z-index: 2;
}
.h-about--container .insert .bt{
 margin: 30px 0 0 0;
 position: relative;
 z-index: 8000;
}

.tri {
 position: absolute;
 z-index: 2;
}
.tri img{
 width: 100px;
 height: 100px;
}
.l-tri{
 top: 0px;
 left: -150px;
}
.r-tri{
 bottom: 0px;
 right: -150px;
}

.bg-movie {
    position:fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: -1;
}
.bg-movie video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    opacity: 1;
}
.bizreach--container{
 padding: 0px 100px;
 margin: 0 0 0 0;
}
.msk-top{
 position: absolute;
 top: 0px;
 left: 0;
 right: 0;
 height: 1000px;
 z-index: 1;
 background: -webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
 background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
 pointer-events: none;
}
.msk-bottom{
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 height: 2000px;
 z-index: 1;
 background: -webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
 background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
 pointer-events: none;
}
.bizreach--container .insert{
 padding: 350px 0;
}
.bizreach--container .insert .box{
 width: 560px;
 height: 560px;
 display: flex;
 align-items: center;
 margin: 200px 0;
 position: relative;
}
.bizreach--container .insert .box.research{
 margin: 0 0 0 calc(100% - 560px);
}
.bizreach--container .insert .box .inn{
 text-align: center;
 margin: 0 auto;
}
.bizreach--container .insert .box .inn .robo{
 font-size: 2.1rem;
}
.bizreach--container .insert .box .inn h2{
 font-size: 3.9rem;
 letter-spacing: 0.1em;
 margin: 10px 0 25px 0
}

.bt{
 width: 400px;
 margin: 50px auto 0;
}
.bt span{
 font-weight: 200;
 display: block;
 height: 50px;
 line-height: 50px;
 text-align: center;
 color: #fff;
 border: 1px solid #fff;
 background-color: rgba(255,255,255,0);
 position: relative;
 transition: all .3s ease-in-out;
 font-size: 18px;
 box-sizing: initial;
}
.arrow-b{
    padding-right: 40px;
}
.layout-en .bt span{
 font-size: 12px;
 height: auto;
 text-align: left;
}
.h-contact--insert.layout-en .bt span{
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.bt:hover span{
 background-color: rgba(255,255,255,1);
 color: #000;
}
.bt span img{
 height: 9px;
 width: auto;
 position: absolute;
 z-index:2;
 text-align: center;
 vertical-align: middle;
 pointer-events: none;
 transition: all .3s ease-in-out;
}
.bt span.arrow::after {
 content: '';
 position: absolute;
 width: 40px;
 height: 8px;
 border-bottom: 1px solid #fff;
 border-right: 1px solid #fff;
 transform: skew(45deg) translateY(-45%) ;
 z-index: 2;
 top: 45%;
 right: 15px;
 transition: all .3s ease-in-out;
}
.bt:hover span.arrow::after {
 border-bottom: 1px solid #fff;
 border-right: 1px solid #fff;
 right: -20px;
}

.business .bt:hover span{
 background-color: #f6a700;
 border: 1px solid #f6a700;
 color: #fff;
}

.research .bt:hover span{
 background-color: #00a8e7;
 border: 1px solid #00a8e7;
 color: #fff;
}
.bt:hover span.arrow-o::after {
 border-bottom: 1px solid #f6a700;
 border-right: 1px solid #f6a700;
 right: -20px;
}
.bt:hover span.arrow-b::after {
 border-bottom: 1px solid #00a8e7;
 border-right: 1px solid #00a8e7;
 right: -20px;
}

.bt.orange:hover span{
 background-color: #f6a700;
 border: 1px solid #f6a700;
 color: #fff;
}
.bt.blue:hover span{
 background-color: #00a8e7;
 border: 1px solid #00a8e7;
 color: #fff;
}

.box.business .robo,
.box.business h2{
 color: #f6a700;
}
.box.research .robo,
.box.research h2{
 color: #00a8e7;
}

.bizreach--container .insert .box::before{
 content: '';
 width: 1080px;
 height: 1080px;
 border-radius: 100%;
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 z-index:1;
 text-align: center;
 vertical-align: middle;
/* box-shadow:0px 4px 20px rgb(255 255 255 / 50%);*/
 pointer-events: none;
}
.bizreach--container .insert .box::after{
 content: '';
 width: 1020px;
 height: 1020px;
 border-radius: 100%;
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 z-index:1;
 text-align: center;
 vertical-align: middle;
 /*box-shadow:4px 4px 20px rgb(255 255 255 / 50%);*/
 pointer-events: none;
}
/*.bizreach--container .insert .box.business::before{
 border: 1px solid #f6a700;
}*/
.bizreach--container .insert .box.business::after{
 border: 2px solid #f6a700;
}
.bizreach--container .insert .box.research::before{
 /*border: 1px solid #00a8e7;*/
 /*box-shadow:-2px 0px 20px rgb(255 255 255 / 50%);*/
}
.bizreach--container .insert .box.research::after{
 border: 2px solid #00a8e7;
 /*box-shadow:-2px 0px 20px rgb(255 255 255 / 50%);*/
}

.h-project--container{
 padding: 120px 100px 250px;
}

.title{
 text-align: center;
 margin: 0 0 40px 0;
}
.title .robo{
 font-size: 21px;
}
.title h2{
 font-size: 4.8rem;
 letter-spacing: 0.04em;
 margin: 18px 0 0 0;
}
.title-min{
 margin: 0 0 70px 0;
}
.title-min h2{
 font-size: 3.6rem;
 font-weight: 600;
 letter-spacing: 0.1em;
 line-height: 150%;
}
.title.left{
 text-align: left;
}
.h-project--insert{
 max-width: 1200px;
 width: 100%;
 margin: 0 auto;
}
.h-project--insert .list{
 gap:70px 0;
}
.h-project--insert .list .item{
 position: relative;
 width: 23%;
}
.h-project--insert .list .item .pic img{
 width: 100%;
 height: auto;
 transition: all .5s ease-in-out;
}
.h-project--insert .list .item:hover .pic img{
 transform: scale(1.2, 1.2) 
}
.h-project--insert .list .item .pic{
 height: auto;
 position: relative;
 overflow: hidden;
}
.h-project--insert .list .item .pic .layer{
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 z-index: 1;
 mix-blend-mode: multiply;
 opacity: 1;
 transition: all .3s ease-in-out;
}
.h-project--insert .list .item:hover .pic .layer{
 opacity: 0;
}
.h-project--insert .list .item .pic .overlay{
 transition: all .3s ease-in-out;
}
.h-project--insert .list .item:hover .pic .overlay{
 opacity: 0;
}
.h-project--insert .cat{
 position: absolute;
 z-index: 2;
 pointer-events: none;
 top: 10px;
 left: 10px;
}
.cat span{
 display: inline-block;
 line-height: 1;
 border: 1px solid #fff;
 background-color: rgba(0,0,0,5);
 font-size: 14px;
 padding: 7px 12px;
}
.cat span.exercise{
  border: 1px solid #f6a700;
  color: #f6a700;
}
.cat span.dev{
  border: 1px solid #00a8e7;
  color: #00a8e7;
}
.cat span.introduce{
  border: 1px solid #92db43;
  color: #92db43;
}

.h-project--insert .list .item p{
 position: absolute;
 bottom: 0px;
 left: 0px;
 right: 0px;
 padding: 20px 10px 10px;
 z-index: 3;
 pointer-events: none;
 font-weight: 500;
 line-height: 150%;
 font-size: 1.5rem;
 background: -webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
 background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
}

.h-project--insert .bt{
 margin-top: 80px;
}

.h-company--container{
 padding: 400px 100px 320px;
 position: relative;
}
.h-company--container::before{
 content: '';
 display: inline-block;
 width: 11523px;
 height: 190px;
 background-image: url(../../img/h-line.png);
 background-size: contain;
 background-repeat: no-repeat;
 background-position: center center;
 vertical-align: middle;
 position: absolute;
 top: 0px;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 z-index: 0;
}
.h-company--container::after{
 content: '';
 display: inline-block;
 width: 11520px;
 height: 180px;
 background-image: url(../../img/b-line.png);
 background-size: contain;
 background-repeat: no-repeat;
 background-position: center center;
 vertical-align: middle;
 position: absolute;
 bottom: 0px;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 z-index: 0;
}
.h-company--container .insert .box{
 width: 50%;
 position: relative;
}
.h-company--container .insert .box .title{
 margin: 0 0 30px 0;
}
.h-company--container .insert .box .bt{
 margin: 50px 0 70px 0;
}

.h-contact--container{
    padding: 215px 100px 100px 100px;
}

.h-contact--container .title h2{
   font-size: 3rem;
   font-weight: 600;
}

.h-contact--container p{
    text-align: center;
    margin-bottom: 80px;
}

.h-contact--insert{
    width: 100%;
    margin: 0 auto;
}

.h-contact--insert .list{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
}

.h-contact--insert .bt{
    margin: 0;
}

.h-contact--insert .bt span{
    padding: 14px;
    line-height: 1.5;
    letter-spacing: 0.2em;
    font-weight: 700;
}

.wall01 img{
 height: 520px;
 width: auto;
}
.wall01{
 position: absolute;
 top: -270px;
 left: -260px;
 z-index: 3;
}
.wall02 img{
 height: 450px;
 width: auto;
}
.wall02 {
 position: absolute;
 bottom: -300px;
 left: -130px;
 z-index: 3;
}
.wall03 img{
 height: 410px;
 width: auto;
}
.wall03{
 position: absolute;
 top: -460px;
 right: -900px;
 z-index: 3;
}

.h-news--container{
 padding: 100px 100px 120px;
}
.h-news--container .blk{
 display: flex;
 justify-content: space-between;
}
.h-news--container .blk .title{
 width: 300px;
}
.h-news--container .blk .group{
 width: calc(100% - 400px);
 margin: 0 100px 0 0;
}
.h-news--container .blk .group .bt{
 width: 30%;
}
.h-news--container .blk .group .bt span{
 font-size: 21px;
}
.h-news--container .bt span.arrow::after {
    right: 8px;
}
.h-news--container .bt:hover span.arrow::after {
    right: -20px;
}
.bt-news span{
 border: 1px solid #f6a700;
 color: #f6a700;
}
.bt-news span.arrow::after {
 border-bottom: 1px solid #f6a700;
 border-right: 1px solid #f6a700;
}
.bt-news:hover span{
 border: 1px solid #f6a700;
 background-color: #f6a700;
 color: #fff;
}
.bt-event span{
 border: 1px solid #00a8e7;
 color: #00a8e7;
}
.bt-event span.arrow::after {
 border-bottom: 1px solid #00a8e7;
 border-right: 1px solid #00a8e7;
}
.bt-event:hover span{
 border: 1px solid #00a8e7;
 background-color: #00a8e7;
 color: #fff;
}
.bt-media span{
 border: 1px solid #92db43;
 color: #92db43;
}
.bt-media span.arrow::after {
 border-bottom: 1px solid #92db43;
 border-right: 1px solid #92db43;
}
.bt-media:hover span{
 border: 1px solid #92db43;
 background-color: #92db43;
 color: #fff;
}

.h-news--container dl{
 background-color: rgba(255,255,255,0.3);
 position: relative;
 width: calc(100% - 110px);
 padding: 0 40px;
 margin: 0 0 20px 0;
 transition: all .3s ease-in-out;
}
.h-news--container dl:hover {
 background-color: rgba(255,255,255,1);
 color: #000;
}
.h-news--container dl:hover a{
 color: #000;
}

.h-news--container dl::after{
 content: "";
 position: absolute;
 top: 0;
 right: -30px;
 width: 0;
 height: 0;
 border-left: 30px solid rgba(255,255,255,0.3);
 border-top: 55px solid transparent;
 border-bottom: 55px solid transparent;
 transition: all .3s ease-in-out;
}
.h-news--container dl:hover::after{
 border-left: 30px solid rgba(255,255,255,1);
}
.h-news--container dl:nth-child(2){
 width: calc(100% - 110px);
 margin-left: 30px;
}
.h-news--container dl:nth-child(3){
 width: calc(100% - 110px);
 margin-left: 60px;
}
.h-news--container dl:nth-child(4){
 width: calc(100% - 110px);
 margin-left: 90px;
}
.h-news--container dl:nth-child(5){
 width: calc(100% - 110px);
 margin-left: 120px;
}
.h-news--container dl a{
 display: flex;
 justify-content: space-between;
 align-items: center;
 height: 110px;
}
.h-news--container dl dt{
 width: 140px;
}
.h-news--container dl dt .cat span{
 background-color: rgba(0,0,0,0);
 font-size: 15px;
}
.cat span.news{
 border: 1px solid #f6a700;
 color: #f6a700;
}
.cat span.event{
 border: 1px solid #00a8e7;
 color: #00a8e7;
}
.cat span.media{
 border: 1px solid #92db43;
 color: #92db43;
}
.h-news--container dl dd{
 width: calc(100% - 140px);
 padding: 0 100px 0 0;
 position: relative;
}
.h-news--container dl dd::after{
 content: 'Read More';
 font-family: 'Roboto', sans-serif;
 font-weight: 500;
 position: absolute;
 right: -40px;
 top: 50%;
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
}

.h-news--container > .bt{
 margin-top: 80px;
}

.h-recruit--container p{
 text-align: center;
 margin: 0 0 30px 0;
}
.h-recruit--container .pic{
 background-color: #000;
}
.h-recruit--container .pic img{
 width: 100%;
 height: auto;
}
.h-recruit--container .bt{
 margin-top: 80px;
}
.r-box{
 background-color: #000;
 border: 1px solid #fff;
 position: relative;
}
.r-box:hover{
 background-color: #222;
}
.r-box .pic{
 width: 485px;
 height: 400px;
}
.r-box .pic img{
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: 50% 50%;
}
.r-box .copy{
 width: calc(100% - 485px);
 text-align: center;
}
.r-box .copy img{
 height: 185px;
 width: auto;
}

.h-about--container__mv .insert{
 width: 900px;
}
.h-about--container__mv .insert p {
    font-size: 2.2rem;
    line-height: 250%;
    margin: 30px 0 0 0;
}

.aboutFeatures--container{
 padding: 120px 100px 120px;
}
.aboutTitle--insert{
 text-align: center;
 margin: 0 0 50px 0;
}
.aboutTitle--insert .robo{
 position: relative;
 height: 130px;
 display: flex;
 align-items: center;
 justify-content: center;
}
.aboutTitle--insert .robo::before{
 content: '';
 display: inline-block;
 font-size: 22px;
 letter-spacing: 0.05em;
 height: 80px;
 background-image: url(../../img/about/bg-md-blue.png);
 background-position: center center;
 background-repeat: no-repeat;
 background-size: contain;
 width: 3980px;
 height: 130px;
 position: absolute;
 top: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 0;
}

.aboutTitle--insert h2{
 color: #00a8e7;
 font-size: 4.2rem;
 font-weight: 500;
 letter-spacing: 0.1em;
 line-height: 150%;
 margin: 0!important;
}
.aboutTitle--insert p{
 letter-spacing: 0.08em;
 line-height: 300%;
 margin: 20px 0 0 0;
}
.aboutFeatures--insert{
 max-width: 1350px;
 margin: 0 auto;
}
.aboutFeatures--insert .list{
 display: flex!important;
 justify-content: space-between;
}
.aboutFeatures--insert .list.sp{
 display: none!important;
}
.aboutFeatures--insert .list .feature{
 width: 31%;
}
.aboutFeatures--insert .list .feature .pic img{
 width: 100%;
 height: auto;
}
.aboutFeatures--insert .list .feature h3{
 color: #00a8e7;
 font-size: 2.8rem;
 font-weight: 500;
 line-height: 150%;
 margin: 15px 0!important;
}
.aboutFeatures--insert .list .feature p{
 margin: 0;
 font-size: 1.6rem;
 line-height: 200%;
}
.aboutFeatures--insert .list.col2{
 justify-content: center;
 margin: 0 0 50px 0;
}
.aboutFeatures--insert .list.col2 .feature{
 margin: 0 1.7%;
}

.aboutFlow--container{
 padding: 0px 100px 120px;
}
.aboutFlow--container .aboutTitle--insert .robo::before{
 background-image: url(../../img/about/bg-md-orange.png);
}
.aboutFlow--container .aboutTitle--insert h2{
 color: #f6a700;
}
.aboutFlow--insert{
 max-width: 1350px;
 margin: 0 auto;
}
.flow img{
 width: 100%;
 height: auto;
}

.aboutFlow--insert .bt{
    margin: 80px auto 0 auto;
}

.aboutFlow--insert .bt span{
    padding: 14px;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.2em;
    font-weight: 700;
}

.aboutFlow--insert.layout-en .bt {
    width: 650px;
}

.record--container{
 position: relative;
 z-index: 10;
}
.record--insert{
 position: relative;
 display: flex;
 margin: 0px 0 100px 0;
}
.record--insert:last-child{
 margin-bottom: 0;
}
.record--insert .spacer{
 background-color: rgba(255,255,255,0.3);
 height: 340px;
 width: calc( calc(100% - 1000px) / 2 );
}
.record--insert .insert{
 width: 1250px;
 padding: 0px 0 0 0;
 margin: 0 auto;
 position: relative;
}
.record--insert .insert .hdrBox{
 background-color: rgba(255,255,255,0.3);
  padding: 50px 0 30px 0;
  margin: 0 0 25px 0;
}

.record--insert .md{
 text-align: center;
 font-size: 3.0rem;
 font-weight: 700;
 position: relative;
 margin: 0 0 50px 0;
}
.record--insert .md::before{
 content: '';
 display: inline-block;
 background-image: url(../../img/about/bg-md-record.png);
 background-position: center center;
 background-repeat: no-repeat;
 background-size: contain;
 width: 3596px;
 height: 80px;
 position: absolute;
 top: 0px;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 z-index: 0;
}
.record--insert p.lead{
 text-align: center;
 margin: 0 0 0px 0;
}

.record--insert .insert .list{
 background-color: rgba(255,255,255,0.8);
 margin: 0 25px;
 padding: 25px 35px;
 position: relative;
}
.lt img,
.rt img,
.lb img,
.rb img{
 width: 45px;
 height: auto;
}
.lt {
 position: absolute;
 top: -25px;
 left: -25px;
}
.rt {
 position: absolute;
 top: -25px;
 right: -25px;
}
.lb {
 position: absolute;
 bottom: -25px;
 left: -25px;
}
.rb {
 position: absolute;
 bottom: -25px;
 right: -25px;
}
.record--insert .insert .list .marks img{
 width: 100%;
 height: auto;
}
.record--insert .insert .list .memo{
 text-align: right;
 color: #000;
 font-size: 1.5rem;
}
.award-list{
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 padding: 0 0 25px 0;
 gap:20px 0;
} 
.award-list .item{
 text-align: center;
 width: 32%;
 color: #000;
}
.award-list .item .mark img{
 width: 100%;
 height: auto;
}
.award-list .item p{
 font-size: 1.6rem;
 font-weight: 500;
 line-height: 180%;
 margin: 15px 0 0 0;
}

.nv--insert .link{
 width: 50%;
 text-align: center;
 height: 600px;
 position: relative;
}
.nv--insert .link img{
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: 50% 50%;
}
.nv--insert .link .inn{
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 width: 95%;
 z-index:1;
 text-align: center;
 vertical-align: middle;
}
.nv--insert .link .robo{
 font-size: 2.1rem;
 color: #f6a700;
}
.nv--insert .link h2{
 font-size: 4.2rem;
 letter-spacing: 0.2em;
 margin: 10px 0 25px 0
}
.nv--insert .link p{
 line-height: 280%;
}
.link-business .robo,
.link-business h2{
 color: #f6a700!important;
}
.link-research .robo,
.link-research h2{
 color: #00a8e7!important;
}
.link-business .bt:hover span{
 background-color: #f6a700;
 border: 1px solid #f6a700;
 color: #fff;
}

.link-research .bt:hover span{
 background-color: #00a8e7;
 border: 1px solid #00a8e7;
 color: #fff;
}

.mvBusiness--container{
 padding: 0 100px;
 height: 100vh;
 position: relative;
 background-color: rgba(0,0,0,1);
}
.mvBusiness--container .bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
    overflow: hidden;
}
.mvBusiness--container .bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    opacity: 1;
}
.mvBusiness--container .insert{
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 z-index:1;
 text-align: center;
 vertical-align: middle;
}

.mvBusiness--container .insert p{
 font-size: 2.2rem;
 line-height: 380%;
 margin: 0px 0 0 0;
 letter-spacing: 0.1em;
}
.mvBusiness--container .insert h1{
 font-size: 8.7rem;
 color: #f6a700;
 font-weight: 100;
 letter-spacing: 0.1em;
 position: relative;
 margin: 0 0 70px 0;
 display: inline-block;
}
.mvBusiness--container .insert h1::before {
    content: '';
    display: inline-block;
    width: 621px;
    height: 100px;
    background-image: url(../../img/business/l-line.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    top: -20px;
    left: -50px;
    z-index: 2;
}
.mvBusiness--container .insert h1::after {
    content: '';
    display: inline-block;
    width: 621px;
    height: 100px;
    background-image: url(../../img/business/r-line.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    bottom: -30px;
    right: -50px;
    z-index: 2;
}

.mvBusiness--container__research .insert h1{color: #00a8e7;font-size: 8.0rem;}
.mvBusiness--container__research .insert h1::before {
    background-image: url(../../img/research/l-line.png)!important;
}
.mvBusiness--container__research .insert h1::after {
    background-image: url(../../img/research/r-line.png)!important;
}

.anchor--container{
 margin: 100px 0;
}
.anchor--insert{
 width: 950px;
 margin: 0 auto;
}
.anchor--insert .anchor{
 width: 25%;
 text-align: center;
 color: #f6a700;
 border-left: 1px solid #fff;
 position: relative;
}
.anchor--insert .anchor:hover{
 color: #fff;
}
.anchor--insert .anchor:last-child{
 border-right: 1px solid #fff;
}
.anchor--insert .anchor p{
 margin: 0 0 15px 0;
 font-size: 2.3rem;
 line-height: 150%;
 font-weight: 500;
 height: 70px;
 display: flex;
 justify-content: center;
 align-items: center;
}
.anchor--insert .anchor .down img{
 width: 40px;
 height: auto;
}
.business--container {
 margin: 150px 0;
 padding: 0 100px;
}
.business--container .title{
 color: #f6a700;
 margin: 0 0 20px 0!important;
}
.business--container__pro .title{
 margin: 0 0 50px 0!important;
}
.business--container .title h2{
 margin: 0;
 font-size: 4.0rem;
 font-weight: 500;
 letter-spacing: 0.1em;
 line-height: 150%;
}
.business--container .lead{
 text-align: center;
 letter-spacing: 0.2em;
 margin: 0 0 60px 0;
}
.business--insert{
 max-width: 1350px;
 margin: 0 auto;
}
.business--container .h-project--insert{
 max-width: 1350px;
}
.business-list{
 gap:40px 0;
}
.business-list::after{
 content: '';
 display: block;
 width: 31.5%;
}
.business-list .item{
 width: 31.5%;
 position: relative;
 background-color: rgba(255,255,255,0.2);
 border-radius: 10px;
}
.business-list .item .pic{
 position: relative;
 overflow: hidden;
 border-radius: 10px 10px 0 0;
}
.business-list .item .pic img{
 width: 100%;
 height: auto;
 border-radius: 10px 10px 0 0;
 transition: all .5s ease-in-out;
 
}
.business-list .item:hover .pic img{
 transform: scale(1.2, 1.2);
}
.business-list .item .txt{
 padding: 20px 30px;
}
.business-list .item .txt h3{
 font-weight: 600;
 font-size: 2.6rem;
 line-height: 130%;
 letter-spacing: 0.1em;
 margin-top: 0!important;
}
.business-list .item .txt p{
 margin: 10px 0 0 0;
 line-height: 180%;
 font-size: 1.7rem;
 letter-spacing: 0.2em;
}
.business-list .item .layer{
 color: #fff;
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 background-color: rgba(0,0,0,0.7);
 display: flex;
 justify-content: center;
 align-items: center;
 opacity: 0;
 transition: all .3s ease-in-out;
 z-index: 10;
 pointer-events: none;
}
.business-list .item .layer span{
 position: relative;
 display: inline-block;
 font-size: 2.2rem;
 font-weight: 500;
}
.business-list .item .layer span::after {
    content: '';
    position: absolute;
    width: 40px;
    height: 8px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: skew(45deg) translateY(-45%);
    z-index: 2;
    top: 45%;
    right: -50px;
    transition: all .3s ease-in-out;
}

.business-list .item:hover .layer{
 opacity: 1;
}

.business-list .item-industry p{
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateY(-50%) translateX(-50%);
 transform: translateY(-50%) translateX(-50%);
 width: 95%;
 z-index:2;
 text-align: center;
 vertical-align: middle;
 margin: 0;
 pointer-events: none;
 color: #fff;
 font-size: 2.4rem;
 font-weight: 500;
}
.business-list .item-industry .overlay{
 background-color: rgba(0,0,0,0.7);
 transition: all .3s ease-in-out;
 border-radius: 10px;
}
.business-list .item-industry:hover .overlay{
 background-color: rgba(0,0,0,0.3);
}
.business-list .item-industry img{
 border-radius: 10px!important;
}

.researchLead--container{
 padding: 100px 0 50px 0;
}
.researchLead--insert{
 width: 1100px;
 height: auto;
 margin: 0 auto;
 background-image: url(../../img/research/bg-lead.png);
 background-size: cover;
 background-repeat: no-repeat;
 background-position: center center;
 padding: 40px 20px;
 position: relative;
}
.researchLead--insert .wrap{
 align-items: center;
 flex-direction: row-reverse;
 border: 1px solid #00a8e7;
 height: 430px;
 padding: 0 60px;
}
.researchLead--insert .pic{
 width: 280px;
 height: 350px;
}
.researchLead--insert .pic img{
 width: 100%;
 height: auto;
}
.researchLead--insert .txt{
 width: calc(100% - 300px);
}
.researchLead--insert .txt h2{
 font-size: 2.4rem;
 color: #00a8e7;
 font-weight: 200;
 line-height: 150%;
 letter-spacing: 0.1em;
 margin: 0!important;
}
.researchLead--insert .txt p{
 line-height: 180%;
 font-size: 1.7rem;
 margin: 15px 0 0 0;
 letter-spacing: 0.1em;
}
.researchLead--insert .txt p span{
 display: block;
 font-size: 1.4rem;
}
.researchLead--insert .txt p span a:link,
.researchLead--insert .txt p span a:hover,
.researchLead--insert .txt p span a:visited,
.researchLead--insert .txt p span a:active{
 text-decoration: underline;
}
.l-corner{
 position: absolute;
}
.l-corner img{
 width: 40px;
 height: 40px;
}
.l-lt{
 top: 20px;
 left: 0;
}
.l-rt{
 top: 20px;
 right: 0;
}
.l-rb{
 bottom: 20px;
 right: 0;
}
.l-lb{
 bottom: 20px;
 left: 0;
}
.mission--container{
 position: relative;
 padding: 170px 0;
}
.mission--container::before{
 content: '';
 display: block;
 position: absolute;
 top: 0;
 bottom: 0;
 left: 50%;
 -webkit-transform:translateX(-50%);
 transform:translateX(-50%);
 width: 1px;
 z-index:1;
 background-color: #bbb;
}
span.m-circle{
 display: inline-block;
 width: 24px;
 height: 24px;
 background-color: #bbb;
 border-radius: 100px;
 position: absolute;
 left: 50%;
 -webkit-transform:translateX(-50%);
 transform:translateX(-50%);
}
.circle-top{
 top: 0;
}
.circle-bottom{
 bottom: 0;
}

.l-misson{
 position: relative;
 margin: 0 0 50px 0;
}

.l-misson::before {
    content: '';
    display: inline-block;
    width: 5000px;
    height: 110px;
    background-image: url(../../img/research/l-mission.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
    z-index:1;
    text-align: center;
    vertical-align: middle;
}
.r-misson{
 position: relative;
}
.r-misson::before {
    content: '';
    display: inline-block;
    width: 5000px;
    height: 110px;
    background-image: url(../../img/research/r-mission.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
    z-index:1;
    text-align: center;
    vertical-align: middle;
}

.misson{
 width: 1100px;
 margin: 0 auto;
}
.misson .inn{
 width: 50%;
 text-align: right;
 padding: 0 20px 0 0;
}
.misson.even .inn{
 width: 50%;
 text-align: left;
 padding: 0 0 0 20px;
 margin: 0 0 0 50%;
}
.misson .robo{
 padding: 30px 0px 0 0;
 margin: 0 0 50px 0;
}
.misson h2{
 color: #00a8e7;
 font-size: 4.5rem;
 letter-spacing: 0.1em;
 line-height: 150%;
 margin: 0 0 10px 0;
 
}
.misson.even h2{
 width: 1000px;
}

.researchLink--container{
 padding: 0 100px;
 margin: 50px 0 0 0;
}
.researchLink--insert{
 max-width: 1350px;
 margin: 0 auto;
}
.researchLink--insert .item .top img{
 height: 30px;
 width: 135px;
}
.researchLink--insert .item .top {
 position: absolute;
 top: -11px;
 left: 50%;
 -webkit-transform:translateX(-50%);
 transform:translateX(-50%);
 width: 135px;
 z-index:1;
 text-align: center;
 vertical-align: middle;
}
.researchLink--insert .item .bottom img{
 height: 30px;
 width: 135px;
}
.researchLink--insert .item .bottom {
 position: absolute;
 bottom: -10px;
 left: 50%;
 -webkit-transform:translateX(-50%);
 transform:translateX(-50%);
 width: 135px;
 z-index:1;
 text-align: center;
 vertical-align: middle;
}
.corner{
 position: absolute;
 z-index: 2;
}
.corner img{
 width: 82px;
 height: auto;
}
.corner.lt{
 top: 0;
 left: 0;
 width: 50%;
}
.corner.lt::before{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 top: 1.5px;
 left: 82px;
 width: calc(100% - 148px);
 height: 0.5px;
}
.corner.lt::after{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 top: 82px;
 left: 1.5px;
 width: 0.5px;
 height: 110px;
}
.corner.rt{
 top: 0;
 right: 0;
 width: 50%;
 text-align: right;
}
.corner.rt::before{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 top: 1.5px;
 right: 82px;
 width: calc(100% - 148px);
 height: 0.5px;
}
.corner.rt::after{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 top: 82px;
 right: 1.5px;
 width: 0.5px;
 height: 110px;
}

.corner.rb{
 bottom: 0;
 right: 0;
 width: 50%;
 text-align: right;
}
.corner.rb::before{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 bottom: 1px;
 right: 82px;
 width: calc(100% - 148px);
 height: 0.5px;
}
.corner.rb::after{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 bottom: 82px;
 right: 1.5px;
 width: 0.5px;
 height: 110px;
}
.corner.lb{
 bottom: 0;
 left: 0;
 width: 50%;
}
.corner.lb::before{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 bottom: 1px;
 left: 82px;
 width: calc(100% - 148px);
 height: 0.5px;
}
.corner.lb::after{
 content: '';
 display: block;
 position: absolute;
 background-color: rgba(255,255,255,0.7);
 bottom: 82px;
 left: 1.5px;
 width: 0.5px;
 height: 110px;
}

.researchLink--insert .item{
 background-image: url(../../img/research/bg-link.png);
 background-position: center center;
 background-repeat: repeat;
 position: relative;
 padding: 50px;
 margin: 0 0 120px 0;
}
.researchLink--insert .item:last-child{
 margin: 0;
}
.researchLink--insert .item .inn{
 flex-direction: row-reverse;
}
.researchLink--insert .item .inn .pic{
 width: 50%;
 height: 450px;
 position: relative;
}
.researchLink--insert .item .inn .pic .wrap {
 position: absolute;
 top: 0;
 left: 0;
 bottom: 0;
 right: 0px;
}
.researchLink--insert .item .inn .pic .wrap img{
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: 50% 50%;
}
.researchLink--insert .item .inn .txt{
 width: 48%;
 text-align: right;
}
.researchLink--insert .item .inn .txt h2{
 color: #00a8e7;
 font-size: 4.5rem;
 line-height: 130%;
 margin: 0!important;
}
.researchLink--insert .item .inn .txt h2.rsch{
 font-family: 'Roboto', sans-serif;
 letter-spacing: 0.20em;
}
.researchLink--insert .item .inn .txt .robo{
 color: #00a8e7;
 font-size: 2.1rem;
}
.researchLink--insert .item .inn .txt p{
 margin: 20px 0 0 0;
 font-size: 1.7rem;
}
.researchLink--insert .item .inn .txt .bt{
 margin: 30px 0 0 calc(100% - 400px);
 
}

.researchLink--insert .item.even .inn{
 flex-direction:row;
}
.researchLink--insert .item.even .inn .pic .wrap {
    position: absolute;
    top: 0;
    left: 0px;
    bottom: 0;
    right: 0;
}
.researchLink--insert .item.even .inn .txt{
 text-align: left;
}
.researchLink--insert .item.even .inn .txt .bt{
 margin-left: 0;
}











