@charset "UTF-8";
@keyframes loop {
  0% {
      transform: translateX(100%);
  }
  to {
      transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
      transform: translateX(0);
  }
  to {
      transform: translateX(-200%);
  }
}



@media screen and (min-width: 768px),print {  

header{position: absolute;top: 0;left: 50%;z-index: 6;transform: translateX(-50%);max-width: 1920px;}
#contentsmain {margin: 0 auto 1px;position: relative;max-width: 1920px;z-index: 5;}
#contentsmain .inner-Box { margin: 0 auto; position: relative; }
#contentsmain .inner-Box .mainbox{background-color:#030a09;width: 100%;height: 1500px;position:relative;background-image:url(../images/index/main/contentsmain-ttl01.png);background-position:center top 0px;background-repeat:no-repeat;background-size:contain;}
#contentsmain .inner-Box .mainbox .mainttl{position: relative;z-index: 10;text-align: center;padding: 325px 0 85px 0;}
.pc-lineframe{width: 1170px;max-width: 1920px;margin: 0 auto;}
.pc-line{mix-blend-mode: screen;position: absolute;top: 637px;z-index: 15;margin: 0 auto;left:0;width: 1170px;right: 0;/* overflow: hidden; */}
#contentsmain .inner-Box .mainbox .subttl{position: relative;  z-index: 10;text-align: center}
#contentsmain .inner-Box .mainbox .mainphoto{position: absolute; top:0; left:0; z-index: 5;}

#contentsmain .inner-Box .mainbox .entxt{position: absolute;bottom: -30px;left: 310px;z-index: 10;}
.top-photo-slide{position: absolute;top: 1074px;max-width: 1920px;z-index: 6;}
.top-photo-slide .loop {padding-top: 30px;padding-bottom: 30px;overflow: hidden;}
.top-photo-slide .loop__box {display: flex;width: 100vw;}
.top-photo-slide .loop__box img {min-width: 100vw;}
.top-photo-slide .loop__box img:first-child {animation: loop 50s -25s linear infinite;}
.top-photo-slide .loop__box img:last-child {animation: loop2 50s linear infinite;}

#contentsmain .inner-Box h1 {  }
#contentsmain .inner-Box h1 img{}

#contentsmain .inner-Box span.icon01 {display: block;line-height: 1;position: absolute;bottom: -30px;right: 646px;width: 268px;height: 310px;z-index: 15;}
#contentsmain .inner-Box span.icon02 {display: block;line-height: 1;position: absolute;bottom: -30px;right: 358px;width: 268px;height: 310px;z-index: 15;}
#contentsmain .inner-Box span.icon03 {display: block;line-height: 1;position: absolute;bottom: -30px;right: 71px;width: 268px;height: 310px;z-index: 15;}
#contents01 {margin: -2px auto -352px;position: relative;background: url('../images/index/contents01-back01.png')no-repeat top center;padding: 126px 0 460px;z-index: 4;}
#contents01 .inner-Box {margin: 0 auto;position: relative;max-width: 1424px;padding: 0 30px;width: 100%;min-width: 1280px;}
#contents01 .inner-Box figure.img01 {position: absolute;top: -10px;right: 112px;}
#contents01 .inner-Box h2 {padding: 0 0 85px 29px;}
#contents01 .inner-Box h2 img{  }
#contents01 .inner-Box h3 {margin-bottom: 39px;}
#contents01 .inner-Box h3 img{  }
#contents01 .inner-Box p.text {font-size: 18px;line-height: 40px;font-weight: 500;letter-spacing: 0.9px;margin-bottom: 95px;margin-left: 27px;}
#contents01 .inner-Box p.btn{margin-left: 17px;}
#contents01 .inner-Box p.btn img{  }


#contents02 {margin: 0 auto -201px;position: relative;background: url('')no-repeat top center;background-image:url(../images/index/contents02-back01.png);background-position:center top 0px;padding-bottom: 201px;z-index: 4;}
#contents02 h2{font-size: 36px;line-height: 1.6;font-weight: 700;letter-spacing: 11.16px;margin-bottom: -74px;text-align: center;left: 5px;position: relative;}
#contents02 h3 {text-align: center;position: relative;left: -5px;margin-bottom: 44px;z-index: 5;}
#contents02 h3 img{  }
#contents02 .inner-Box1 {margin: 0 auto -4px;position: relative;max-width: 1420px;padding: 0 20px;width: 100%;min-width: 1280px;}
#contents02 .inner-Box1 span.arr {display: block;line-height: 1;position: absolute;bottom: -2px;right: -2px;}
#contents02 .inner-Box2 {margin: 0 auto;position: relative;text-align: center;}
#contents02 .inner-Box2 h4{font-size: 32px;line-height: 1.6;font-weight: 500;letter-spacing: 1.6px;margin-bottom: 22px;}
#contents02 .inner-Box2 p.text {font-size: 24px;line-height: 40px;font-weight: 500;letter-spacing: 1.2px;margin-bottom: 48px;}
#contents02 .inner-Box2 ul{width: 989px;margin: 0 auto 27px;}
#contents02 .inner-Box2 ul li {text-align: center;}
#contents02 .inner-Box2 ul li:nth-child(2) {right: -71px;position: relative;}
#contents02 .inner-Box2 ul li figure{  }

#contents02 .inner-Box2 p.text2 {font-size: 16px;line-height: 1.6;font-weight: 500;letter-spacing: 1.28px;margin-bottom: 30px;}
#works ul{ display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#works li{border: 2px solid #FFFFFF;width: 30.4%;margin-right: 4.4%;position: relative;margin-bottom: 60px;}
#works li a{display: block;padding: 20px 10px 10px 10px;}
#works  ul li:nth-child(3n) { margin-right: 0px; }
#works .postno {
  background-image:url(../images/index/works-num.svg);
  background-position:0px 0px;
  background-repeat:no-repeat;
  padding: 9px 28px 6px 16px;
  display: inline-block;
  color: #191919;
  position: absolute;
  top: -25px;
  left: -3px;
  font-size: 18px;
  letter-spacing: 1.08px;
  font-weight: 500;
  line-height: 1;
  }
#works .wkstext{font-size: 14px;line-height: 30px;letter-spacing: 0.7px;font-weight: 500;}
#works .system-ttl-01{font-size: 18px;line-height: 32px;letter-spacing: 0.9px;font-weight: 700;margin-bottom: 10px;padding: 0 10px 0 10px;}
#works .arr{ }
#works .system-pic{height: 240px;/* overflow: hidden; */margin-bottom: 4px;}
#works .system-pic img{width: 400px;height: 241px;}



#contents03 {margin: 0 auto;position: relative;background: url('../images/index/contents03-back01.png')no-repeat top center;padding: 92px 0 40px 0;z-index: 5;}
#contents03 h2{font-size: 26px;line-height: 48px;font-weight: 700;letter-spacing: 5.98px;margin-bottom: -130px;text-align: center;left: 3px;position: relative;}
#contents03 h3 {max-width: 1920px;width: 100%;min-width: 1280px;margin-bottom: 32px;text-align: center;margin: 0 auto 32px;}
#contents03 h3 img{ width: 100%; height: auto; }
#contents03 .inner-Box { margin: 0 auto; position: relative; }
#contents03 .inner-Box ul.slide-case {}
#contents03 .inner-Box ul li {position: relative;box-shadow: 8px 8px 16px #19191966;margin: 0 40px;}
#contents03 .inner-Box ul li a{  }
#contents03 .inner-Box figure.img {position: relative;top: 0;left: 0;}
#contents03 .inner-Box h4{position: absolute;font-size: 20px;line-height: 1.6;font-weight: 700;letter-spacing: 1px;top: 14px;left: 0;width: 544px;text-align: center;}
#contents03 .inner-Box h5{position: absolute;font-size: 25px;line-height: 40px;font-weight: 700;letter-spacing: 1px;top: 455px;left: 32px;width: 424px;text-align: left;text-decoration: underline;}
#contents03 .inner-Box h5 span{  }
#contents03 .inner-Box p.text {position: absolute;font-size: 16px;line-height: 32px;font-weight: 500;letter-spacing: 0.8px;margin-bottom: 30px;width: 476px;top: 559px;left: 34px;}
#contents03 .inner-Box p.btn{text-align: center;margin-top: 37px;}
#contents03 .inner-Box p.btn img{  }
#contents03 .prev-arrow{position: absolute;top: -125px;left: 50%;margin-left: 358px;}
#contents03 .next-arrow{position: absolute;top: -125px;left: 50%;margin-left: 458px;}


#contents04 {margin: 0 auto 0;position: relative;background-image:url(../images/index/contents04-back01.png);background-position:0px 0px;background-repeat:repeat;padding: 125px 0 207px 0;z-index: 3;}
#contents04 .inner-Box{margin: 0 auto 137px;position: relative;background: url('../images/index/contents04-back02.png')no-repeat bottom center;max-width: 1400px;min-width: 1280px;width: 100%;padding-bottom: 46px;}
#contents04 .inner-Box h2 {margin-bottom: 71px;}
#contents04 .inner-Box h2 img{ width: 100%; height: auto; }
#contents04 .inner-Box ul{display: -webkit-box;display: -moz-flex;display: -ms-flex;display: -o-flex;display: -ms-flexbox;display: flex;-webkit-box-lines: multiple;-moz-box-lines: multiple;-ms-flex-wrap: wrap;flex-wrap: wrap;width: 1090px;margin: 0 auto 33px;}
#contents04 .inner-Box ul li{position: relative;text-align: center;}
#contents04 .inner-Box ul li:nth-child(2){right: -36px;top: -7px;}
#contents04 .inner-Box figure{position: relative;top: 0;left: 0;height: 178px;}
#contents04 .inner-Box ul li:nth-child(1) .btn{ position: relative; top: -7px; left: -5px; }
#contents04 .inner-Box p.btn{  }
#contents04 .inner-Box p.btn img{  }
#contents04 .inner-Box p.text {font-size: 24px;line-height: 1.6;font-weight: 700;letter-spacing: 1.2px;margin-bottom: 30px;text-align: center;}
#contents04 .inner-Box2 {margin: 0 auto;position: relative;width: 1176px;}
#contents04 .inner-Box2 figure{position: relative;top: 0;left: 0;margin-bottom: -55px;}
#contents04 .inner-Box2 p.text2 {font-size: 20px;line-height: 2;font-weight: 700;letter-spacing: 1px;margin-bottom: 30px;margin-left: 736px;}
#contents04 .inner-Box2 p.btn.bt01 {position: absolute;top: 526px;}
#contents04 .inner-Box2 p.btn.bt01 img {  }
#contents04 .inner-Box2 p.btn.bt02 {position: absolute;top: 661px;}
#contents04 .inner-Box2 p.btn.bt02 img {  }

#contents05 {margin: -190px auto -418px;padding: 0 0 0 0;position: relative;background: url('../images/index/contents05-back01.png')no-repeat top -60px center;padding-top: 240px;padding-bottom: 425px;position: relative;z-index: 5;}
#contents05 h2 {position: absolute;z-index: 3;left: 50%;transform: translateX(-50%);width: 100%;text-align: center;}
#contents05 h2 img{  }
#contents05 .inner-Box {margin: 0 auto;position: relative;padding: 320px 0 0 0;width: 1280px;}
#contents05 .inner-Box ul{display: -webkit-box;display: -moz-flex;display: -ms-flex;display: -o-flex;display: -ms-flexbox;display: flex;-webkit-box-lines: multiple;-moz-box-lines: multiple;-ms-flex-wrap: wrap;flex-wrap: wrap;margin-bottom: -60px;}
#contents05 .inner-Box ul li:nth-child(1){}
#contents05 .inner-Box ul li:nth-child(2){top: -60px;}
#contents05 .inner-Box ul li:nth-child(3){top: -10px;}
#contents05 .inner-Box ul li:nth-child(4){top: -80px;}
#contents05 .inner-Box ul li:nth-child(5){top: -85px;}
#contents05 .inner-Box ul li:nth-child(6){top: -105px;left: 0px;}
#contents05 .inner-Box ul li {position: relative;width: 605px;}
#contents05 .inner-Box ul li:nth-child(1) h3{ top: 140px; left: 170px; }
#contents05 .inner-Box ul li:nth-child(1) p{top: 270px;left: 140px;width: 360px;}
#contents05 .inner-Box ul li:nth-child(1) p.icon{top: -40px;left: 240px;width: 360px;position: absolute;}
#contents05 .inner-Box ul li:nth-child(2) h3{top: 140px;left: 205px;}
#contents05 .inner-Box ul li:nth-child(2) p{top: 270px;left: 155px;width: 350px;}
#contents05 .inner-Box ul li:nth-child(2) p.icon{top: -40px;left: 230px;width: 350px;position: absolute;}
#contents05 .inner-Box ul li:nth-child(3) h3{top: 140px;left: 135px;}
#contents05 .inner-Box ul li:nth-child(3) p{top: 280px;left: 145px;width: 360px;}
#contents05 .inner-Box ul li:nth-child(3) p.icon{top: -45px;left: 240px;width: 360px;position: absolute;}
#contents05 .inner-Box ul li:nth-child(4) h3{top: 160px;left: 169px;}
#contents05 .inner-Box ul li:nth-child(4) p{top: 355px;left: 140px;width: 360px;}
#contents05 .inner-Box ul li:nth-child(4) p.icon{top: -30px;left: 230px;width: 360px;position: absolute;}
#contents05 .inner-Box ul li:nth-child(5) h3{top: 165px;left: 145px;}
#contents05 .inner-Box ul li:nth-child(5) p{top: 300px;left: 145px;width: 360px;}
#contents05 .inner-Box ul li:nth-child(5) p.icon{top: -15px;left: 235px;width: 360px;position: absolute;}
#contents05 .inner-Box ul li:nth-child(6) h3{top: 145px;left: 200px;}
#contents05 .inner-Box ul li:nth-child(6) p{top: 287px;left: 140px;width: 360px;}
#contents05 .inner-Box ul li:nth-child(6) p.icon{top: -35px;left: 235px;width: 360px;position: absolute;}
#contents05 .inner-Box ul li a{  }
#contents05 .inner-Box figure.img {position: relative;top: 0;left: 0;}
#contents05 .inner-Box h3{font-size: 36px;text-align: center;line-height: 59px;font-weight: 700;letter-spacing: 1.8px;z-index: 3;position: absolute;top: 0;left: 0;text-decoration: underline;}
#contents05 .inner-Box p.litext {font-size: 16px;line-height: 32px;font-weight: 500;letter-spacing: 0.8px;margin-bottom: 30px;position: absolute;top: 0;left: 0;}
#contents05 .inner-Box p.text {text-align: center;color: #fff;font-size: 24px;line-height: 40px;font-weight: 700;letter-spacing: 1.2px;margin-bottom: 12px;}
#contents05 .inner-Box p.btn{text-align: center;position: relative;z-index: 10;}
#contents05 .inner-Box p.btn img{  }


#contents06 {margin: 0 auto -370px;position: relative;background: url('../images/index/contents06-back01.png')no-repeat top center;padding: 551px 0 750px;z-index: 6;}
#contents06 .inner-Box {margin: 0px auto 155px;position: relative;width: 1169px;}
#contents06 .inner-Box h2 {margin-bottom: 89px;}
#contents06 .inner-Box h2 img{  }
#contents06 .inner-Box p.text1 {font-size: 42px;line-height: 58px;font-weight: 400;letter-spacing: 2.4px;margin-bottom: 20px;margin-left: 458px;}
#contents06 .inner-Box p.text2 {font-size: 42px;line-height: 58px;font-weight: 400;letter-spacing: 2.4px;margin-bottom: 28px;margin-left: 458px;}
#contents06 .inner-Box p.text3 {font-size: 44px;line-height: 50px;font-weight: 400;letter-spacing: 2.4px;margin-bottom: 30px;margin-left: 458px;}
#contents06 .inner-Box2 {margin: 0 auto 0;position: relative;text-align: center;}
#contents06 .inner-Box2 h3{font-size: 48px;line-height: 77px;font-weight: 700;letter-spacing: 4.48px;margin-bottom: 37px;padding: 50px 0 0 0;}
#contents06 .inner-Box2 h4 span{font-weight: 400;}
#contents06 .inner-Box2 h4{font-size: 22px;line-height: 1.6;font-weight: 700;letter-spacing: 2.2px;margin-bottom: 30px;}
#contents06 .inner-Box2 p.text {font-size: 18px;line-height: 35px;font-weight: 500;letter-spacing: 1.8px;margin-bottom: 34px;}
#contents06 .inner-Box2 p.btn{position: relative;z-index: 4;}
#contents06 .inner-Box2 p.btn img{  }



#contents07 {margin: 0 auto -270px;position: relative;background: url('../images/index/contents07-back01.png') no-repeat top center;padding: 563px 0 247px;}
#contents07 .inner-Box1 {margin: 0 auto 127px;position: relative;}
#contents07 .inner-Box1 .textm {text-align: center;font-size: 24px;line-height: 40px;letter-spacing: 1.2px;font-weight: 700;margin: 46px 0 46px;}
#contents07 .prev-arrow {position: absolute;top: 255px;left: 50%;margin-left: -655px;z-index: 3;}
#contents07 .next-arrow {position: absolute;top: 255px;left: 50%;margin-left: 464px;}

#resident {}
#resident li {width: 320px;margin: 0 40px;position: relative;cursor: pointer;}
#resident li .system-pic {}
#resident li .system-pic img {width: 100%;height: auto;filter: drop-shadow(0px 8px 24px #19191999);}
#resident li .wkstext {font-size: 14px;line-height: 1.6;letter-spacing: 0.7px;font-weight: 500;position: absolute;top: 421px;text-align: center;width: 320px;}
#resident li .system-ttl-01 {font-size: 24px;line-height: 1.6;letter-spacing: 0.8px;font-weight: 500;position: absolute;top: 447px;width: 320px;text-align: center;}
#resident li .system-ttl-01::before {content: "";background: #fff;width: 24px;height: 1px;position: absolute;left: 50%;bottom: -7px;transform: translateX(-50%);}
#resident li .wkstext2 {font-size: 16px;line-height: 30px;letter-spacing: 0.8px;font-weight: 500;width: 260px;position: absolute;top: 508px;left: 30px;}
#resident li .wkstext2 span {display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;}
#resident li a:hover {text-decoration: none;}
#resident li .arr {color: #00B7FF;font-size: 16px;line-height: 1.6;letter-spacing: -0.96px;font-weight: 600;font-style: italic;text-decoration: underline;position: absolute;top: 623px;left: 119px;}
#resident .open-box {display: none;z-index: 100;position: fixed;top: 10%; /* 上部からの余白を調整 */left: 50%;transform: translate(-50%, 0);max-height: 70vh; /* 高さの最大値を設定 */background: rgba(0,0,0,0.84);padding: 20px;max-width: 1400px;width: 100%;/* overflow-y: auto; */ /* スクロールを有効化 */}

#resident .open-box .mi-box {height: 64vw;}
#resident .open-box .m-box {border: #00B7FF 1px solid;padding: 54px 69px;max-height: 64vh; /* コンテンツの最大高さを設定 */overflow-y: auto; /* コンテンツが多い場合のスクロール */}
#resident .open-box .close {position: absolute;top: 42px;left: 41px;z-index: 3;}
#resident .open-box .popimg {position: absolute;top: 110px;right: 120px;width: 440px;overflow: hidden;}
#resident .open-box .popimg img {width: 100%;height: 320px;}
#resident .open-box .optext1 {font-size: 18px;line-height: 23px;letter-spacing: 0.9px;font-weight: 500;color: #fff;margin: 36px 0 39px 30px;}
#resident .open-box .optext2 {font-size: 12px;line-height: 1.6;letter-spacing: 0.8px;font-weight: 500;color: #fff;margin: 0px 0 0 30px;}

#resident .open-box .optext2 span {display: inline-block;border-top: #fff 1px solid;border-bottom: #fff 1px solid;padding: 2px 14px;}
#resident .open-box .optext3 {font-size: 70px;line-height: 1.6;letter-spacing: 3.5px;font-weight: 700;color: #fff;margin: 0px 0 0 30px;}
#resident .open-box .optext4 {font-size: 16px;line-height: 30px;letter-spacing: 0.8px;font-weight: 500;color: #fff;margin: 20px 0 0 30px;width: 640px;}
#resident .open-box .snsbox {margin: 50px 0 0 30px;}  

#resident .open-box .snsbox ul {display: flex;flex-wrap: wrap;}
#resident .open-box .snsbox ul li{margin:0px 0 0 0;}
#resident .open-box .snsbox ul li.sns01, 
#resident .open-box .snsbox ul li.sns02 {margin-right: 10px;background: #191919;width: 80px;height: 80px;padding: 25px 0 0 25px;}
#resident .open-box .snsbox ul li.sns03 {height: 80px;width: 980px;padding: 24px 0 0 22px;background: #191919;margin: 0;}
#resident .open-box .snsbox ul li.sns03 img{display: inline-block;padding: 0 0px 0px 0;}
#resident .open-box .snsbox ul li.sns03 span{margin: 0px 0 0 15px;}
#resident .open-box .snsbox ul li.sns03 a span {text-decoration: underline;}
#resident .open-box .snsbox ul li.sns03 a{
    text-decoration: underline;
}

/* スクロールバーのカスタマイズ */
#resident .open-box .m-box::-webkit-scrollbar {width: 8px;}
#resident .open-box .m-box::-webkit-scrollbar-track {background-color: #004CFF;border-radius: 10px;}
#resident .open-box .m-box::-webkit-scrollbar-thumb {background-color: #555;border-radius: 10px;border: 2px solid #f1f1f1;}
#resident .open-box .m-box::-webkit-scrollbar-thumb:hover {background-color: #333;}


#contents07 .inner-Box1 p.btn{text-align: center;}
#contents07 .inner-Box1 p.btn img{  }
#contents07 .inner-Box2 {margin: 0 auto;position: relative;width: 1200px;background: #191919;border: #fff 2px solid;padding: 53px 78px 50px 78px;}
#contents07 .inner-Box2 h2 {margin-bottom: 33px;}
#contents07 .inner-Box2 h2 img{  }
#contents07 .inner-Box2 p.btn{position: absolute;top: 104px;right: 75px;}
#contents07 .inner-Box2 p.btn img{  }

#keijiban .system-list{background: url(../images/index/contents07-line01.png)no-repeat top center,url(../images/index/contents07-line01.png)no-repeat bottom center;padding: 32px 0;}
#keijiban .system-list li{ border-bottom: 1px dotted #fff; padding: 0 0 17px; margin-bottom: 18px; }
#keijiban .system-list li:last-child{border-bottom: none;margin: 0 0 -6px;padding: 0;}
#keijiban .system-list li .system-date{ position: relative; }
#keijiban .system-list li .system-date span.date{ position: absolute; top: 0; left: 09; }
#keijiban .system-list li .system-date span.ttln{ display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; margin-left: 117px; }

footer{ padding-top: 546px; }
footer .f-home-link{margin-bottom: 24px;}

}


@media screen and (min-width: 768px) and (max-width: 1919px){
  header{position: absolute;top: 0;left: 50%;z-index: 6;transform: translateX(-50%);}
  #contentsmain {margin: 0 auto 1px;position: relative;max-width: 100vw;z-index: 5;}
  #contentsmain .inner-Box {margin: 0 auto;position: relative;}
  #contentsmain .inner-Box .mainbox{background-color:#030a09;width: 100%;height: 78.13vw;position:relative;background-image:url(../images/index/main/contentsmain-ttl01.png);background-position:center top;background-repeat:no-repeat;background-size:contain;}
  #contentsmain .inner-Box .mainbox .mainttl{position: relative;z-index: 10;text-align: center;padding: 16.93vw 0 1.43vw 0;margin: 0 auto;width: 56vw;}
  .pc-lineframe{width: 60.94vw;}
  .pc-line{mix-blend-mode: screen;position: absolute;top: 36.5vw;z-index: 15;margin: 0 auto;left:0;width: 60.94vw;right: 0;}
  #contentsmain .inner-Box .mainbox .subttl{position: relative;z-index: 10;text-align: center;width: 46vw;margin: 0 auto;}
  #contentsmain .inner-Box .mainbox .mainphoto{position: absolute;top:0;left:0;z-index: 5;width: 100%;}
  #contentsmain .inner-Box .mainbox .entxt{position: absolute;bottom: -0.56vw;left: 13.15vw;z-index: 10;width: 30vw;}
  .top-photo-slide{position: absolute;top: 55.94vw;z-index: 6;width: 100%;}
  .top-photo-slide .loop {padding-top: 1.56vw;padding-bottom: 1.56vw;overflow: hidden;}
  .top-photo-slide .loop__box {display: flex;width: 100vw;}
  .top-photo-slide .loop__box img {min-width: 100vw;}
  .top-photo-slide .loop__box img:first-child {animation: loop 50s -25s linear infinite;}
  .top-photo-slide .loop__box img:last-child {animation: loop2 50s linear infinite;}
  #contentsmain .inner-Box span.icon01 {display: block;line-height: 1;position: absolute;bottom: -1.56vw;right: 33.65vw;width: 13.96vw;height: 16.15vw;z-index: 15;}
  #contentsmain .inner-Box span.icon02 {display: block;line-height: 1;position: absolute;bottom: -1.56vw;right: 18.65vw;width: 13.96vw;height: 16.15vw;z-index: 15;}
  #contentsmain .inner-Box span.icon03 {display: block;line-height: 1;position: absolute;bottom: -1.56vw;right: 3.7vw;width: 13.96vw;height: 16.15vw;z-index: 15;}
  #contents01 {margin: -0.1vw auto -18.33vw;position: relative;
    padding: 10.56vw 0 53.96vw;/* height: 125vw; */background-color: #02110e;z-index: 4;}
  #contents01 .inner-Box {margin: 0 auto;position: relative;max-width: 74.17vw;padding: 0 1.56vw;width: 100%;min-width: 80.67vw;}
  #contents01 .inner-Box figure.img01 {position: absolute;top: -0.52vw;right: 5.83vw;width: 13vw;}
  #contents01 .inner-Box h2 {padding: 0 0 4.43vw 1.51vw;}
  #contents01 .inner-Box h3 {margin-bottom: 2.03vw;width: 74vw;}
  #contents01 .inner-Box p.text {font-size: 16px;line-height: 2.2;font-weight: 500;letter-spacing: 1px;margin-bottom: 4.95vw;margin-left: 1.41vw;}
  #contents01 .inner-Box p.btn{margin-left: 0.89vw;}
}



@media screen and (min-width: 768px) and (max-width: 1560px){
  #contents02{margin:0 auto -11.54vw;position:relative;background-image:url(../images/index/contents02-back01.png);background-position:center top 0;
    padding: 5vw 0px 12.88vw 0px;z-index:4;}
  #contents02 h2{font-size:2.31vw;line-height:1.6;font-weight:700;letter-spacing:0.71vw;margin-bottom:-4.74vw;text-align:center;left:0.32vw;position:relative;}
  #contents02 h3{text-align:center;position:relative;left:-0.32vw;margin-bottom:2.82vw;z-index:5;}
  #contents02 h3 img{}
  #contents02 .inner-Box1{margin:0 auto -0.26vw;position:relative;max-width:91.03vw;padding:0 1.28vw;width:100%;min-width:82.05vw;}
  #contents02 .inner-Box1 span.arr{display:block;line-height:1;position:absolute;bottom:-0.13vw;right:-0.13vw;}
  #contents02 .inner-Box2{margin:0 auto;position:relative;text-align:center;}
  #contents02 .inner-Box2 h4{font-size:2.05vw;line-height:1.6;font-weight:500;letter-spacing:0.1vw;margin-bottom:1.41vw;}
  #contents02 .inner-Box2 p.text{font-size:1.54vw;line-height:2.56vw;font-weight:500;letter-spacing:0.08vw;margin-bottom:3.08vw;}
  #contents02 .inner-Box2 ul{width:63.4vw;margin:0 auto 1.73vw;}
  #contents02 .inner-Box2 ul li{text-align:center;}
  #contents02 .inner-Box2 ul li:nth-child(2){right:-4.55vw;position:relative;}
  #contents02 .inner-Box2 ul li figure{}
  #contents02 .inner-Box2 p.text2{font-size:1.03vw;line-height:1.6;font-weight:500;letter-spacing:0.08vw;margin-bottom:1.92vw;}
  
  #works ul{display:-webkit-box;display:-moz-flex;display:-ms-flex;display:-o-flex;display:-ms-flexbox;display:flex;-webkit-box-lines:multiple;-moz-box-lines:multiple;-ms-flex-wrap:wrap;flex-wrap:wrap;}
  #works li{border:0.13vw solid #FFFFFF;width:30.4%;margin-right:2.82vw;position:relative;margin-bottom: 3.19vw;padding: 1vw 0vw 0 0vw;}
  #works li a{display:block;padding: 0.5vw 0.5vw 0.5vw 0.5vw;}
  #works ul li:nth-child(3n){margin-right:0;}
  #works .postno{
    background-image:url(../images/index/works-num.svg);
    background-position:0px 0px;
    background-repeat:no-repeat;
    padding: 9px 1vw 0.38vw 1.03vw;
    height: 34px;
    width: 117px;
    display:inline-block;
    color:#191919;
    position:absolute;
    top:-1.6vw;
    left:-0.19vw;
    /* font-size:1.15vw; */
    /* letter-spacing:0.07vw; */
    font-weight:500;
    /* line-height:1; */
    }
  #works .wkstext{/* font-size:0.9vw; *//* line-height:1.92vw; *//* letter-spacing:0.04vw; *//* font-weight:500; */}
  #works .system-ttl-01{/* font-size:1.15vw; *//* line-height:2.05vw; *//* letter-spacing:0.06vw; */font-weight:700;margin-bottom: 0.6vw;padding: 0 0.8vw 0 0.8vw;}
  #works .arr{}
  #works .system-pic{width:100%;height: 15.8vw;overflow:hidden;margin-bottom: 0;}
  #works .system-pic img{width: 25.9vw;height: 15.8vw;}
  
  }
  
  @media screen and (min-width: 768px) and (max-width: 1919px) {
    #contents03{margin:0 auto;position:relative;background:url('../images/index/contents03-back01.png')no-repeat top center;padding:4.79vw 0 2.08vw 0;z-index:5;}
    #contents03 h2{font-size:1.35vw;line-height:2.5vw;font-weight:700;letter-spacing:0.31vw;margin-bottom:-6.77vw;text-align:center;left:0.16vw;position:relative;}
    #contents03 h3{max-width:100vw;width: 98%;min-width:66.67vw;margin-bottom: 4.67vw;}
    #contents03 h3 img{width:100%;height:auto;}
    #contents03 .prev-arrow{position:absolute;top: -9.51vw;left: 41%;margin-left:18.65vw;width: 8vw;}
#contents03 .next-arrow{position:absolute;top: -9.51vw;left: 45%;margin-left:23.85vw;width: 8vw;}
    }
    
  
@media screen and (min-width: 768px) and (max-width: 1480px){
#contents04{margin:0 auto 0;position:relative;background-image:url(../images/index/contents04-back01.png);background-position:0px 0px;background-repeat:repeat;padding: 8.45vw 0 15.99vw 0;z-index:3;}
#contents04 .inner-Box{margin: 0 auto 5.25vw;position:relative;background:url('../images/index/contents04-back02.png')no-repeat bottom center;max-width:94.59vw;min-width:86.49vw;width:100%;padding-bottom:3.11vw;}
#contents04 .inner-Box h2{margin-bottom:4.79vw;}
#contents04 .inner-Box h2 img{width:100%;height:auto;}
#contents04 .inner-Box ul{display:-webkit-box;display:-moz-flex;display:-ms-flex;display:-o-flex;display:-ms-flexbox;display:flex;-webkit-box-lines:multiple;-moz-box-lines:multiple;-ms-flex-wrap:wrap;flex-wrap:wrap;width: 84.65vw;margin: 0 auto 2.23vw;}
#contents04 .inner-Box ul li{position:relative;text-align:center;width: 48%;}
#contents04 .inner-Box ul li:nth-child(2){right:-2.43vw;top:-0.47vw;}
#contents04 .inner-Box figure{position:relative;top:0;left:0;height: auto;margin: 0 0 2vw 0;}
#contents04 .inner-Box ul li:nth-child(1) .btn{position:relative;top:-0.47vw;left:-0.34vw;}
#contents04 .inner-Box p.text{font-size:1.62vw;line-height:1.6;font-weight:700;letter-spacing:0.08vw;margin-bottom:2.02vw;text-align:center;}
#contents04 .inner-Box2{margin:0 auto;position:relative;width: 80.46vw;}
#contents04 .inner-Box2 figure{position:relative;top:0;left: 3vw;margin-bottom:-3.71vw;width: 81vw;margin: 0 auto -3.71vw;}
#contents04 .inner-Box2 p.text2{font-size:1.35vw;line-height:2;font-weight:700;letter-spacing:0.07vw;margin-bottom:2.02vw;margin-left:49.73vw;}
#contents04 .inner-Box2 p.btn.bt01{position:absolute;top:35.54vw;width: 43vw;}
#contents04 .inner-Box2 p.btn.bt02{position:absolute;top:44.66vw;width: 44vw;}
}



@media screen and (min-width: 768px) and (max-width: 1400px){
  #contents05{margin: -15.43vw auto -37.29vw;padding:0 0 0 0;position:relative;background: url(../images/index/contents05-back01.png)no-repeat top -1.97vw center;padding-top:17.14vw;background-size: cover;padding-bottom: 29.71vw;position:relative;z-index:5;}
  #contents05 h2{/* position:absolute; *//* z-index:3; *//* left:50%; *//* transform:translateX(-50%); *//* width:100%; */}
  #contents05 h2 img{}
  #contents05 .inner-Box{margin:0 auto;position:relative;padding: 16.64vw 0 0 0;width:91.43vw;}
  #contents05 .inner-Box ul{display:-webkit-box;display:-moz-flex;display:-ms-flex;display:-o-flex;display:-ms-flexbox;display:flex;-webkit-box-lines:multiple;-moz-box-lines:multiple;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-bottom: -7.57vw;}
  #contents05 .inner-Box ul li{position:relative;width:43.21vw;}
  #contents05 .inner-Box ul li:nth-child(1) h3{top: 9.29vw;left: 13.21vw;}
  #contents05 .inner-Box ul li:nth-child(1) p{top: 17.93vw;left: 10.5vw;width:25.71vw;}
  #contents05 .inner-Box ul li:nth-child(1) p.icon{top: -0.07vw;left: 18.8vw;width:8vw;}
  #contents05 .inner-Box ul li:nth-child(2){top:-3.57vw;}
  #contents05 .inner-Box ul li:nth-child(2) h3{top: 10.3vw;left: 15.5vw;}
  #contents05 .inner-Box ul li:nth-child(2) p{top: 18.71vw;left:10.86vw;width:25vw;}
  #contents05 .inner-Box ul li:nth-child(2) p.icon{top: -0.07vw;left: 18.5vw;width:8vw;}
  #contents05 .inner-Box ul li:nth-child(3){top: -1.21vw;}
  #contents05 .inner-Box ul li:nth-child(3) h3{top: 9.57vw;left: 11.2vw;}
  #contents05 .inner-Box ul li:nth-child(3) p{top: 19.21vw;left: 9.9vw;width:25.71vw;}
  #contents05 .inner-Box ul li:nth-child(3) p.icon{top: -0.07vw;left: 19.5vw;width:8vw;}
  #contents05 .inner-Box ul li:nth-child(4){top: -5.64vw;}
  #contents05 .inner-Box ul li:nth-child(4) h3{top: 10.93vw;left: 13.36vw;}
  #contents05 .inner-Box ul li:nth-child(4) p{top: 22.93vw;left:10vw;width:25.71vw;}
  #contents05 .inner-Box ul li:nth-child(4) p.icon{top: 0.93vw;left: 18.5vw;width:8vw;}
  #contents05 .inner-Box ul li:nth-child(5){top: -7.86vw;}
  #contents05 .inner-Box ul li:nth-child(5) h3{top: 10vw;left: 11vw;}
  #contents05 .inner-Box ul li:nth-child(5) p{top: 18.43vw;left: 9.93vw;width:25.71vw;}
  #contents05 .inner-Box ul li:nth-child(5) p.icon{top: -0.07vw;left: 18.5vw;width:8vw;}
  #contents05 .inner-Box ul li:nth-child(6){top: -8.71vw;left: 0;}
  #contents05 .inner-Box ul li:nth-child(6) h3{top: 10.29vw;left: 15.2vw;}
  #contents05 .inner-Box ul li:nth-child(6) p{top: 19vw;left: 10.5vw;width:25.71vw;}
  #contents05 .inner-Box ul li:nth-child(6) p.icon{top: -0.07vw;left: 18.5vw;width:8vw;}
  #contents05 .inner-Box figure.img{position:relative;top:0;left:0;}
  #contents05 .inner-Box h3{font-size: 2.3vw;text-align:center;line-height: 1.5;font-weight:700;letter-spacing:0.13vw;z-index:3;position:absolute;top:0;left:0;text-decoration:underline;}
  #contents05 .inner-Box p.litext{font-size:1.14vw;line-height:1.8;font-weight:500;letter-spacing:0.06vw;margin-bottom:2.14vw;position:absolute;top:0;left:0;}
  #contents05 .inner-Box p.text{text-align:center;color: #111;font-size: 1.71vw;line-height:2.86vw;font-weight:700;letter-spacing:0.09vw;margin-bottom:1.57vw;}
  #contents05 .inner-Box p.btn{text-align:center;position:relative;z-index: 4;}
  #contents05 .inner-Box p.btn img{}
  }
  
  @media screen and (min-width: 768px) and (max-width: 1400px){
    #contents06{margin:0 auto -30.43vw;position:relative;background:url('../images/index/contents06-back01.png')no-repeat top center;padding:39.86vw 0 53.57vw;background-size: cover;z-index:6;}
    #contents06 .inner-Box{margin: 0 auto 14.07vw;position:relative;width:83.5vw;}
    #contents06 .inner-Box h2{margin-bottom: 6.3vw;width: 39vw;}
    #contents06 .inner-Box h2 img{}
    #contents06 .inner-Box p.text1{font-size: 2.8vw;line-height: 3.8vw;font-weight:400;letter-spacing: 0;margin-bottom: 4vw;margin-left:32.71vw;}
    #contents06 .inner-Box p.text2{font-size: 2.8vw;line-height: 3.8vw;font-weight:400;letter-spacing: 0;margin-bottom: 3.36vw;margin-left: 32.71vw;position: relative;top: -2vw;}
    #contents06 .inner-Box p.text3{font-size: 3.2vw;line-height:4.64vw;font-weight:400;letter-spacing: 0;margin-bottom:2.14vw;margin-left:32.71vw;position: relative;top: -3.4vw;}
    #contents06 .inner-Box2{margin:0 auto;position:relative;text-align:center;}
    #contents06 .inner-Box2 h3{font-size: 3.29vw;line-height: 4.71vw;font-weight:700;letter-spacing: 0;margin-bottom:2.64vw;}
    #contents06 .inner-Box2 h4 span{font-weight:400;}
    #contents06 .inner-Box2 h4{/* font-size:1.57vw; *//* line-height:1.6; */font-weight:700;/* letter-spacing:0.16vw; */margin-bottom:1.29vw;}
    #contents06 .inner-Box2 p.text{/* font-size:1.29vw; *//* line-height:2.5vw; */font-weight:500;/* letter-spacing:0.13vw; */margin-bottom:3.29vw;}
    #contents06 .inner-Box2 p.btn{position:relative;z-index:4;}
    #contents06 .inner-Box2 p.btn img{}
    }
    
    
@media screen and (min-width: 768px) and (max-width: 1400px){
#contents07{margin:0 auto -19.29vw;position:relative;background:url('../images/index/contents07-back01.png')no-repeat top center;padding: 45.21vw 0 17.64vw;}
#contents07 .inner-Box1{margin:0 auto 9.07vw;position:relative;}
#contents07 .inner-Box1 .textm{text-align:center;font-size:1.71vw;line-height:2.86vw;letter-spacing:0.09vw;font-weight:700;margin:3.29vw 0 3.29vw;}
#contents07 .prev-arrow{position:absolute;top:18.21vw;left:50%;margin-left:-46.79vw;z-index:3;}
#contents07 .next-arrow{position:absolute;top:18.21vw;left:50%;margin-left:33.14vw;}
}



@media screen and (min-width:768px) and (max-width:1540px) {
#resident .open-box {display: none;z-index: 4;position: fixed;top: 6.49vw;left: 50%;transform: translate(-50%, 0);height: 80.86vh;max-height: 74vh;background: rgba(0, 0, 0, 0.84);padding: 1.3vw;max-width: 90.91vw;width: 100%;}
#resident .open-box .mi-box {height: 577px;}
#resident .open-box .m-box {border: #00B7FF 0.07vw solid;padding: 2.51vw 4.48vw;max-height: 69vh;overflow-y: auto;}
#resident .open-box .close {position: absolute;top: 2.73vw;left: 2.66vw;z-index: 3;}
#resident .open-box .popimg {position: absolute;top: 7.14vw;right: 7.79vw;width: 28.57vw;overflow: hidden;}
#resident .open-box .popimg img {width: 100%;height: 20.78vw;}
#resident .open-box .optext1 {/* font-size: 1.17vw; *//* line-height: 1.5vw; *//* letter-spacing: 0.06vw; */font-weight: 500;color: #fff;margin: 2.34vw 0 2.53vw 1.95vw;}
#resident .open-box .optext2 {/* font-size: 0.78vw; *//* line-height: 1.6; *//* letter-spacing: 0.05vw; */font-weight: 500;color: #fff;margin: 0vw 0 0vw 1.95vw;}
#resident .open-box .optext2 span {display: inline-block;border-top: #fff 0.07vw solid;border-bottom: #fff 0.07vw solid;padding: 0.13vw 0.91vw;}
#resident .open-box .optext3 {font-size: 4.55vw;line-height: 1.6;letter-spacing: 0.23vw;font-weight: 700;color: #fff;margin: 0vw 0 0vw 1.95vw;}
#resident .open-box .optext4 {/* font-size: 1.04vw; *//* line-height: 1.95vw; *//* letter-spacing: 0.05vw; */font-weight: 500;color: #fff;margin: 1.95vw 0 0vw 1.95vw;width: 44.56vw;}
#resident .open-box .snsbox {margin: 3.58vw 0 0vw 1.95vw;}
#resident .open-box .snsbox ul {display: flex;flex-wrap: wrap;}
#resident .open-box .snsbox ul li {margin: 0px 0 0 0;}
#resident .open-box .snsbox ul li.sns01,#resident .open-box .snsbox ul li.sns02 {margin-right: 0.65vw;background: #191919;width: 5.19vw;height: 5.19vw;padding: 1.62vw 0 0 1.62vw;}
#resident .open-box .snsbox ul li.sns03 {height: 5.19vw;width: 63.64vw;padding: 1.56vw 0 0 1.43vw;background: #191919;margin: 0;}
#resident .open-box .snsbox ul li.sns03 img {display: inline-block;padding: 0 0px 0px 0;}
#resident .open-box .snsbox ul li.sns03 span {margin: 0px 0 0 1.04vw;}
#resident .open-box .snsbox ul li.sns03 a span {text-decoration: underline;}
#resident .open-box .snsbox ul li.sns03 a{
    text-decoration: underline;
}
#resident .open-box .m-box::-webkit-scrollbar {width: 0.52vw;}
#resident .open-box .m-box::-webkit-scrollbar-track {background-color: #004CFF;border-radius: 0.65vw;}
#resident .open-box .m-box::-webkit-scrollbar-thumb {background-color: #555;border-radius: 0.65vw;border: 0.13vw solid #f1f1f1;}
#resident .open-box .m-box::-webkit-scrollbar-thumb:hover {background-color: #333;}
}
  


@media screen and (min-width: 768px) and (max-width: 1400px){

  #contents07 .inner-Box1 p.btn{text-align:center;}
#contents07 .inner-Box1 p.btn img{ }
#contents07 .inner-Box2{margin:0 auto;position:relative;width:85.71vw;background:#191919;border:#fff 0.14vw solid;padding:3.79vw 5.57vw 3.57vw 5.57vw;}
#contents07 .inner-Box2 h2{margin-bottom:2.36vw;}
#contents07 .inner-Box2 h2 img{ }
#contents07 .inner-Box2 p.btn{position:absolute;top:7.43vw;right:5.36vw;}
#contents07 .inner-Box2 p.btn img{ }
  #keijiban .system-list{background:url(../images/index/contents07-line01.png)no-repeat top center,url(../images/index/contents07-line01.png)no-repeat bottom center;padding:2.29vw 0;background-size: contain;}
  #keijiban .system-list li{border-bottom:0.07vw dotted #fff;padding:0 0 1.21vw;margin-bottom:1.29vw;}
  #keijiban .system-list li:last-child{border-bottom:none;margin:0 0 -0.43vw;padding:0;}
  #keijiban .system-list li .system-date{position:relative;}
  #keijiban .system-list li .system-date span.date{position:absolute;top:0;left:0.64vw;}
  #keijiban .system-list li .system-date span.ttln{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;margin-left:8.36vw;}
  footer{padding-top:39vw;}
  footer .f-home-link{margin-bottom:1.71vw;}
  }
  



@media screen and (max-width: 767px) {

header{position: absolute;top: 0;z-index: 6;width: 100vw;}
#contentsmain {margin: 0 auto -15.3vw;position: relative;background-color: #020404;z-index: 5;}
#contentsmain .inner-Box {position: relative;padding-bottom: 23vw;}


#contentsmain .inner-Box .mainbox{
  background-color:#030a09;
  width: 100%;
  height: 215vw;
  position:relative;
  background-image:url(../images/index/main/sp-contentsmain-ttl01.png);
  background-position:center top 0px;
  background-repeat:no-repeat;
  background-size: cover;
  }
#contentsmain .inner-Box .mainbox .mainttl{position: relative;z-index: 10;text-align: center;padding: 40vw 0 14vw 0;}
.sp-line01{position: absolute;top: 80vw;z-index: 15;margin: 0 auto;left:0;width:80%;right: 0;mix-blend-mode: screen;}
.sp-line02{position: absolute;top: 99vw;z-index: 15;margin: 0 auto;left:0;width: 67%;right: 0;mix-blend-mode: screen;}
#contentsmain .inner-Box .mainbox .subttl{position: relative;z-index: 10;text-align: center;width: 84%;margin: 0 auto;}
#contentsmain .inner-Box .mainbox .mainphoto{position: absolute;top: 7vw;left:0;z-index: 5;}
#contentsmain .inner-Box .mainbox .entxt{position: absolute;bottom: 14vw;left: 7vw;z-index: 10;}


.top-photo-slide{margin: 0 0 35vw 0;position:relative;z-index: 6;}
.top-photo-slide .loop {padding-top: 42vw;padding-bottom: 3vw;overflow: hidden;}
.top-photo-slide .loop__box {display: flex;width: 100vw;}
.top-photo-slide .loop__box img {min-width: 245vw;}
.top-photo-slide .loop__box img:first-child {animation: loop 50s -25s linear infinite;}
.top-photo-slide .loop__box img:last-child {animation: loop2 50s linear infinite;}


#contentsmain .inner-Box span.icon01 {display: block;line-height: 1;position: absolute;bottom: -0.4vw;left: 5.3vw;height: auto;width: 27.1vw;z-index: 6;}
#contentsmain .inner-Box span.icon02 {display: block;line-height: 1;position: absolute;bottom: -0.4vw;height: auto;width: 27.1vw;left: 36.4vw;z-index: 6;}
#contentsmain .inner-Box span.icon03 {display: block;line-height: 1;position: absolute;bottom: -0.4vw;right: 5.3vw;height: auto;width: 27.1vw;z-index: 6;}

#contents01 {margin: 0vw auto -21.1vw;position: relative;
background-image:url(../images/index/sp-contents01-back01.png);
background-position:0px 0px;
background-repeat:no-repeat;
background-size:contain;
background-color:#02100B;
    padding: 40.7vw 0 67.1vw;z-index: 4;}
  #contents01 .inner-Box {margin: 0 4vw;position: relative;width: 100%;}
  #contents01 .inner-Box figure.img01 {position: absolute;top: 1.5vw;right: 9.1vw;width: 20.1vw;}
  #contents01 .inner-Box h2 { margin: 0vw 0 10.3vw 1.7vw; width: 44.2vw; }
  #contents01 .inner-Box h2 img{  }
  #contents01 .inner-Box h3 {margin: 0 15.1vw 5.5vw -1.2vw;}
  #contents01 .inner-Box h3 img{  }
  #contents01 .inner-Box p.text {font-size: 3.14vw;line-height: 7vw;font-weight: 500;letter-spacing: 0.21vw;margin-bottom: 10vw;margin-left: 1.5vw;margin-right: 10vw;}
  #contents01 .inner-Box p.btn{margin: 0 10.7vw 0 2.4vw;/* position: relative; *//* z-index: 10; */}
  #contents01 .inner-Box p.btn img{  }
  
  
  #contents02 {
    margin: -46vw auto -25.5vw;
    position: relative;
    background-size: 100% auto;
    background-image:url(../images/index/sp-contents02-back01.png);
    background-position: top -46.7vw center;
    background-repeat:no-repeat;
    padding: 18.3vw 0 25.6vw;
    z-index: 4;
    }
  #contents02 h2{font-size: 5.31vw;line-height: 7.24vw;font-weight: 700;letter-spacing: 1.16vw;margin-bottom: -36.9vw;text-align: center;left: 1.2vw;position: relative;}
  #contents02 h3 {text-align: center;position: relative;margin: 0 5.6vw 20.5vw;z-index: 5;}
  #contents02 h3 img{  }
  #contents02 .inner-Box1 {margin: 0 8.9vw -1.0vw;position: relative;}
  #contents02 .inner-Box1 span.arr {display: block;line-height: 1;position: absolute;bottom: -0.5vw;right: -0.5vw;}
  #contents02 .inner-Box2 {margin: 0 4vw;position: relative;text-align: center;}
  #contents02 .inner-Box2 h4{font-size: 5.79vw;line-height: 1.6;font-weight: 500;letter-spacing: 0.28vw;margin-bottom: 4.6vw;}
  #contents02 .inner-Box2 p.text {font-size: 4.34vw;line-height: 8.69vw;font-weight: 500;letter-spacing: 0.21vw;margin-bottom: 7vw;}
  #contents02 .inner-Box2 ul{display: -webkit-box;display: -moz-flex;display: -ms-flex;display: -o-flex;display: -ms-flexbox;display: flex;-webkit-box-lines: multiple;-moz-box-lines: multiple;-ms-flex-wrap: wrap;flex-wrap: wrap;margin: 0 2.7vw 1vw;}
  #contents02 .inner-Box2 ul li {margin-bottom: -1vw;}
  #contents02 .inner-Box2 ul li:nth-child(2) {position: relative;}
  #contents02 .inner-Box2 ul li figure{ margin-bottom: 4vw; }
  #contents02 .inner-Box2 p.text2 {font-size: 3.9vw;line-height: 7.24vw;font-weight: 500;letter-spacing: 0.3vw;margin-bottom: 2.2vw;}
  #works ul{display: -webkit-box;display: -moz-flex;display: -ms-flex;display: -o-flex;display: -ms-flexbox;display: flex;-webkit-box-lines: multiple;-moz-box-lines: multiple;-ms-flex-wrap: wrap;flex-wrap: wrap;margin-bottom: 1vw;}
  #works li{border: 0.5vw solid #FFFFFF;width: 82.2vw;position: relative;margin-bottom: 16.2vw;}
  #works li a{display: block;padding: 6.5vw 3.1vw 0;}
  #works  ul li:nth-child(3n) { margin-right: 0.0vw; }
  
  #works .postno {
    background-image:url(../images/index/sp-works-num.svg);
    background-position:0px 0px;
    background-repeat:no-repeat;
    padding: 2.5vw 3.6vw 2.8vw 4.8vw;
    color: #191919;
    position: absolute;
    top: -7.5vw;
    left: -0.7vw;
    font-size: 4.83vw;
    letter-spacing: 0.28vw;
    font-weight: 500;
    line-height: 1.1;
    height: 10vw;
    width: 39vw;
    }
  #works .wkstext{font-size: 3.38vw;line-height: 7.24vw;letter-spacing: 0.16vw;font-weight: 500;}
  #works .system-ttl-01{font-size: 4.34vw;line-height: 7.24vw;letter-spacing: 0.56vw;font-weight: 700;margin-bottom: 2.3vw;}
  #works .arr{ }
  #works .arr img{width: 8.7vw;}
  #works .system-pic{width: 100%;height: 45.4vw;/* overflow: hidden; */margin-bottom: 3.5vw;}
  #works .system-pic img{height: 45.4vw;}
  
  
  #contents03 {position: relative;background: url('../images/index/sp-contents03-back01.png') no-repeat top -24.7vw center;background-size: 100% auto;padding: 22.2vw 0 9.7vw 0;z-index: 5;}
  #contents03 h2{font-size: 4.34vw;line-height:1.6;font-weight: 700;letter-spacing: 0.56vw;margin-bottom: -1.3vw;text-align: center;left: 0.7vw;position: relative;}
  #contents03 h3 {margin-bottom: 8.7vw;margin-right: 0vw;margin-left: -6.4vw;}
  #contents03 h3 img{ width: 100%; height: auto; }
  #contents03 .inner-Box { margin: 0 4vw; position: relative; }
  #contents03 .inner-Box ul.slide-case {}
  #contents03 .inner-Box ul li {position: relative;box-shadow: 1.9vw 1.9vw 3.9vw #19191966;margin: 0 9.7vw;width: 82.12vw;}
  #contents03 .inner-Box ul li a{  }
  #contents03 .inner-Box figure.img {position: relative;top: 0;left: 0;}
  #contents03 .inner-Box h4{position: absolute;font-size: 3.86vw;line-height: 1.6;font-weight: 700;letter-spacing: 0.46vw;top: 3.8vw;text-align: center;width: 82.12vw;}
  #contents03 .inner-Box h5{position: absolute;font-size: 3.86vw;line-height: 5.79vw;font-weight: 700;letter-spacing: 0vw;top: 71vw;left: 5vw;text-align: left;text-decoration: underline;}
  #contents03 .inner-Box h5 span{  }
  #contents03 .inner-Box p.text {position: absolute;font-size: 3.38vw;line-height: 2;font-weight: 500;letter-spacing: 0.16vw;margin-bottom: 7.2vw;top: 90.6vw;left: 7.2vw;width: 67vw;}
  #contents03 .inner-Box p.btn{text-align: center;margin: 8.5vw 2.6vw 3.3vw 2.6vw;}
  #contents03 .inner-Box p.btn img{  }
  #contents03 .prev-arrow{position: absolute;top: -15vw;left: 59.6vw;margin-left: 0vw;width: 12.6vw;}
  #contents03 .next-arrow{position: absolute;top: -15vw;left: 74.6vw;margin-left: 0vw;width: 12.6vw;}
  
  #contents04 {
    margin: 0 auto 4.9vw;
    position: relative;
    background-image:url(../images/index/sp-contents04-back01.png);
    background-position:0px 0px;
    background-repeat:repeat;
    background-size: 7%;
    padding: 13.2vw 0 27vw 0;
    z-index: 5;
    }
  #contents04 .inner-Box{margin: 0 5.3vw 15.1vw;position: relative;background: url('../images/index/sp-contents04-back02.png') no-repeat bottom center;background-size: 100% auto;padding-bottom: 11.1vw;}
  #contents04 .inner-Box h2 {margin-bottom: 7.6vw;}
  #contents04 .inner-Box h2 img{ width: 100%; height: auto; }
  #contents04 .inner-Box ul{display: -webkit-box;display: -moz-flex;display: -ms-flex;display: -o-flex;display: -ms-flexbox;display: flex;-webkit-box-lines: multiple;-moz-box-lines: multiple;-ms-flex-wrap: wrap;flex-wrap: wrap;margin: 0 auto -5.2vw;}
  #contents04 .inner-Box ul li{position: relative;text-align: center;margin-bottom: 8vw;}
  #contents04 .inner-Box ul li:nth-child(2){top: -1.7vw;}
  #contents04 .inner-Box ul li:nth-child(2) figure{margin: 0 4.2vw 5.4vw 5.7vw;}
  #contents04 .inner-Box figure{margin: 0 3.3vw 2.3vw 4.8vw;}
  #contents04 .inner-Box ul li:nth-child(1) .btn{ position: relative; top: -1.7vw; left: -1.2vw; }
  #contents04 .inner-Box ul li:nth-child(2) .btn{ position: relative; top: -1.7vw; left: -1.2vw; }
  #contents04 .inner-Box p.btn{margin: 0 4.8vw 0 7.3vw;}
  #contents04 .inner-Box p.btn img{  }
  #contents04 .inner-Box p.text {font-size: 4.34vw;line-height: 8.21vw;font-weight: 700;letter-spacing: 0.43vw;margin-bottom: 4.9vw;text-align: center;}
  #contents04 .inner-Box2 {position: relative;}
  #contents04 .inner-Box2 figure{margin-bottom: -5.6vw;}
  #contents04 .inner-Box2 p.text2 {font-size: 3.86vw;line-height: 7.24vw;font-weight: 700;letter-spacing: 0.19vw;margin: 0 5.2vw;}
  #contents04 .inner-Box2 p.btn.bt01 { margin: 5vw 6.6vw 1.8vw 6.6vw; }
  #contents04 .inner-Box2 p.btn.bt01 img {  }
  #contents04 .inner-Box2 p.btn.bt02 { margin: 0vw 6.6vw; }
  #contents04 .inner-Box2 p.btn.bt02 img {  }
  
  #contents05 {
  margin: -24vw auto -43.7vw;
  z-index: 5;
  position: relative;
  background-image:url(../images/index/sp-contents05-back01.png);
  background-position: center top -20vw;
  background-repeat:no-repeat;
  background-size: 100%;
  padding-top: 24.5vw;
  padding-bottom: 26.6vw;
  }

  #contents05 h2 {margin: 0 0 9vw;}
  #contents05 h2 img{  }
  #contents05 .inner-Box {position: relative;}
  #contents05 .inner-Box ul{display: -webkit-box;display: -moz-flex;display: -ms-flex;display: -o-flex;display: -ms-flexbox;display: flex;-webkit-box-lines: multiple;-moz-box-lines: multiple;-ms-flex-wrap: wrap;flex-wrap: wrap;margin-bottom: 4.2vw;position: relative;left: -3vw;}
  #contents05 .inner-Box ul li:nth-child(1){margin-bottom: -6.7vw;}
  #contents05 .inner-Box ul li:nth-child(2){margin-bottom: -5.8vw;}
  #contents05 .inner-Box ul li:nth-child(3){margin-bottom: -8vw;}
  #contents05 .inner-Box ul li:nth-child(4){margin-bottom: -9vw;}
  #contents05 .inner-Box ul li:nth-child(5){margin-bottom: -6.8vw;}
  #contents05 .inner-Box ul li:nth-child(6){}
  #contents05 .inner-Box ul li {position: relative;}
  #contents05 .inner-Box ul li:nth-child(1) h3{top: 28.9vw;left: 29.9vw;}
  #contents05 .inner-Box ul li:nth-child(1) p{top: 49.4vw;left: 24.6vw;}
  #contents05 .inner-Box ul li:nth-child(1) p.icon{top: 1.4vw;left: 41vw;width: 25vw;position: absolute;}
  #contents05 .inner-Box ul li:nth-child(2) h3{top: 24.7vw;left: 36.7vw;}
  #contents05 .inner-Box ul li:nth-child(2) p{top: 45.7vw;left: 25.7vw;}
  #contents05 .inner-Box ul li:nth-child(2) p.icon{top: -3.6vw;left: 41vw;width: 25vw;position: absolute;}
  #contents05 .inner-Box ul li:nth-child(3) h3{top: 27.3vw;left: 24.7vw;}
  #contents05 .inner-Box ul li:nth-child(3) p{top: 49.7vw;left: 24vw;}
  #contents05 .inner-Box ul li:nth-child(3) p.icon{top: -2.6vw;left: 41vw;width: 25vw;position: absolute;}
  #contents05 .inner-Box ul li:nth-child(4) h3{top: 28.2vw;left: 21.8vw;}
  #contents05 .inner-Box ul li:nth-child(4) p{top: 49.6vw;left: 24.4vw;}
  #contents05 .inner-Box ul li:nth-child(4) p.icon{top: 0.4vw;left: 40vw;width: 25vw;position: absolute;}
  #contents05 .inner-Box ul li:nth-child(5) h3{top: 28.6vw;left: 26.7vw;}
  #contents05 .inner-Box ul li:nth-child(5) p{top: 48.8vw;left: 24.5vw;}
  #contents05 .inner-Box ul li:nth-child(5) p.icon{top: 0.4vw;left: 41vw;width: 25vw;position: absolute;}
  #contents05 .inner-Box ul li:nth-child(6) h3{top: 28vw;left: 36.5vw;}
  #contents05 .inner-Box ul li:nth-child(6) p{top: 50.6vw;left: 25vw;}
  #contents05 .inner-Box ul li:nth-child(6) p.icon{top: -1.6vw;left: 41vw;width: 25vw;position: absolute;}

  #contents05 .inner-Box ul li a{  }
  #contents05 .inner-Box figure.img {position: relative;top: 0;left: 0;}
  #contents05 .inner-Box h3{font-size: 5.55vw;text-align: center;line-height:1.6;font-weight: 700;letter-spacing: 0.27vw;z-index: 3;position: absolute;top: 0;left: 0;text-decoration: underline;}
  #contents05 .inner-Box p.litext {font-size: 3.38vw;line-height: 7.24vw;font-weight: 500;letter-spacing: 0.16vw;margin-bottom: 7.2vw;position: absolute;top: 0;left: 0;width: 60vw;}
  #contents05 .inner-Box p.text {text-align: center;font-size: 4.34vw;line-height: 8.45vw;font-weight: 700;letter-spacing: 0.21vw;margin-bottom: 6.5vw;position: relative;z-index: 4;}
  #contents05 .inner-Box p.btn{text-align: center;position: relative;z-index: 4;margin: 0 6.6vw;}
  #contents05 .inner-Box p.btn img{  }
  
  #contents06 {margin: 0 auto -20.7vw;position: relative;background: url('../images/index/sp-contents06-back01.png') no-repeat top center;background-size: 100% auto;padding: 117.7vw 0vw 0vw 0vw;z-index: 5;}
  #contents06 .inner-Box {margin: 0 auto 65.5vw;position: relative;}
  #contents06 .inner-Box h2 {margin: 0 40.3vw 21vw 5.7vw;}
  #contents06 .inner-Box h2 img{  }
  #contents06 .inner-Box p.text1 {font-size: 4.6vw;line-height: 7.4vw;font-weight: 400;letter-spacing: 0;margin-bottom: 6vw;margin-left: 42vw;}
  #contents06 .inner-Box p.text2 {font-size: 4.6vw;line-height: 7.4vw;font-weight: 400;letter-spacing: 0vw;margin-bottom: 6vw;margin-left: 42vw;}
  #contents06 .inner-Box p.text3 {font-size: 4.6vw;line-height: 7.4vw;font-weight: 400;letter-spacing: 0vw;margin-bottom: 10.1vw;margin-left: 42vw;}
  #contents06 .inner-Box2 {position: relative;text-align: center;}
  #contents06 .inner-Box2 h3{font-size: 4.83vw;line-height: 7.97vw;font-weight: 700;letter-spacing: 0.6vw;margin-bottom: 7vw;}
  #contents06 .inner-Box2 h4 span{font-weight: 400;}
  #contents06 .inner-Box2 h4{font-size: 4.34vw;line-height: 7.24vw;font-weight: 700;letter-spacing: 0.43vw;margin: 0 8.93vw 5.2vw;text-align: left;}
  #contents06 .inner-Box2 p.text {text-align: left;font-size: 3.86vw;line-height: 7.72vw;font-weight: 500;letter-spacing: 0.38vw;margin: 0 8.93vw 11.2vw;}
  #contents06 .inner-Box2 p.btn{position: relative;z-index: 4;margin: 0 6.6vw;}
  #contents06 .inner-Box2 p.btn img{  }
  


  #contents07 {
    margin: 0 auto 16vw;
    position: relative;
    background: url('../images/index/sp-contents07-back01.png') no-repeat top center;
    background-size: 100% auto;
    padding: 86.7vw 0 0 0;
}

#contents07 .inner-Box1 {
    margin: 0 auto 12.4vw;
    position: relative;
}

#contents07 .inner-Box1 .textm {
    text-align: center;
    font-size: 4.34vw;
    line-height: 7.97vw;
    letter-spacing: 0.43vw;
    font-weight: 700;
    margin: -4.9vw 2vw 6.6vw;
}

#contents07 .prev-arrow {
    position: absolute;
    top: 67.4vw;
    left: 0.5vw;
    margin-left: 0vw;
    z-index: 3;
    width: 26.2vw;
}

#contents07 .next-arrow {
    position: absolute;
    top: 67.5vw;
    right: 0.4vw;
    width: 26.2vw;
}

#resident {
}

#resident li {
    margin: 0 9.7vw;
    position: relative;
    width: 66vw;
    padding-bottom: 17vw;
}

#resident li .system-pic {
}

#resident li .system-pic img {
    width: 100%;
    height: auto;
    filter: drop-shadow(0.0vw 1.9vw 5.8vw #19191999);
}

#resident li .wkstext {
    font-size: 3.86vw;
    line-height: 1.6;
    letter-spacing: 0.3vw;
    font-weight: 500;
    position: absolute;
    top: 84.1vw;
    text-align: center;
    width: 66vw;
}

#resident li .system-ttl-01 {
    width: 66vw;
    font-size: 6.28vw;
    line-height: 1.6;
    letter-spacing: 0.3vw;
    font-weight: 500;
    position: absolute;
    top: 91.3vw;
    text-align: center;
}

#resident li .system-ttl-01::before {
    content: "";
    background: #fff;
    height: 0.2vw;
    position: absolute;
    left: 50%;
    bottom: -1.7vw;
    transform: translateX(-50%);
    width: 5vw;
}

#resident li .wkstext2 {
    font-size: 3.38vw;
    line-height: 6.28vw;
    letter-spacing: 0.16vw;
    font-weight: 500;
    position: absolute;
    padding: 0 2vw 0 0;
    top: 105.3vw;
    left: 2.9vw;
}

#resident li .wkstext2 span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

#resident li a:hover {
    text-decoration: none;
}

#resident li .arr {
    color: #00B7FF;
    font-size: 3.9vw;
    line-height: 1.6;
    letter-spacing: 0.3vw;
    font-weight: 600;
    font-style: italic;
    text-decoration: underline;
    position: absolute;
    top: 126.5vw;
    left: 20.7vw;
}

/* モーダルのスタイル */
#resident .open-box {
    display: none;
    z-index: 100;
    position: fixed;
    top: 23vw; /* 上端からの余白を調整 */
    left: 50%; /* 左右中央揃え */
    transform: translateX(-50%);
    max-height: 90vh; /* 高さを画面の90%に制限 */
    background: rgba(0, 0, 0, 0.84);
    padding: 4.8vw;
    overflow-y: auto; /* スクロールを有効化 */
    margin: 0 auto;
    width: 85vw; /* 幅をスマホ画面に合わせる */
}

#resident .open-box .mi-box {
}

#resident .open-box .m-box {
    border: #00B7FF 0.2vw solid;
    padding: 16vw 5.1vw 16vw 5.1vw;
    max-height: 76vh; /* モーダル内部のコンテンツ高さを制限 */
    overflow-y: auto; /* コンテンツが多い場合にスクロール */
}

#resident .open-box .close {
    position: absolute;
    top: 9vw; /* 上端の余白を調整 */
    left: 10vw; /* 閉じるボタンを右端に配置 */
    z-index: 3;
    display: block;
    width: 7vw;
}

#resident .open-box .popimg {
    position: relative;
    overflow: hidden;
    margin-bottom: 7.24vw;
}

#resident .open-box .popimg img {
    width: 100%;
    height: auto;
}

#resident .open-box .optext1 {
    font-size: 4.34vw;
    line-height: 1.6;
    letter-spacing: 0.3vw;
    font-weight: 500;
    color: #fff;
    text-align: center;
    margin-bottom: 5vw;
}

#resident .open-box .optext2 {
    font-size: 2.89vw;
    line-height: 1.6;
    letter-spacing: 0.3vw;
    font-weight: 500;
    color: #fff;
    text-align: center;
    margin-bottom: 3.6vw;
}

#resident .open-box .optext2 span {
    display: inline-block;
    border-top: #fff 0.2vw solid;
    border-bottom: #fff 0.2vw solid;
    padding: 0.5vw 3.4vw;
}

#resident .open-box .optext3 {
    font-size: 7.72vw;
    line-height: 1.6;
    letter-spacing: 0.3vw;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 5.5vw;
}

#resident .open-box .optext4 {
    font-size: 3.38vw;
    line-height: 2;
    letter-spacing: 0.16vw;
    font-weight: 500;
    color: #fff;
    margin-bottom: 7.17vw;
}

#resident .open-box .snsbox {
}

#resident .open-box .snsbox ul {
    justify-content: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
}

#resident .open-box .snsbox ul li {
    margin: 0;
}

#resident .open-box .snsbox ul li.sns01 {
    background: #191919;
    width: 15vw;
    height: 15vw;
    padding: 5vw 0 0 3vw;
}

#resident .open-box .snsbox ul li.sns02 {
    margin-left: 1.2vw;
    background: #191919;
    width: 15vw;
    height: 15vw;
    padding: 5vw 0 0 3vw;
}

#resident .open-box .snsbox ul li.sns03 {
    margin-left: 1.2vw;
    background: #191919;
    width: 15vw;
    height: 15vw;
    padding: 5vw 0 0 3vw;
}

#resident .open-box .snsbox ul li.sns01 img, 
#resident .open-box .snsbox ul li.sns02 img,
#resident .open-box .snsbox ul li.sns03 img {
    width: 9.62vw;
    height: 5.62vw;
}


/* スクロールバーのカスタマイズ */
#resident .open-box .m-box::-webkit-scrollbar {
    width: 8px;
}

#resident .open-box .m-box::-webkit-scrollbar-track {
    background-color: #004CFF;
    border-radius: 10px;
}

#resident .open-box .m-box::-webkit-scrollbar-thumb {
    background-color: #555;
    border-radius: 10px;
    border: 2px solid #f1f1f1;
}

#resident .open-box .m-box::-webkit-scrollbar-thumb:hover {
    background-color: #333;
}





  #contents07 .inner-Box1 p.btn{text-align: center;margin: 0 6.6vw;}
  #contents07 .inner-Box1 p.btn img{  }
  #contents07 .inner-Box2 {margin: 0 8.9vw;position: relative;background: #191919;border: #fff 0.5vw solid;padding: 8.6vw 3.6vw 11.8vw 3.6vw;}
  #contents07 .inner-Box2 h2 { margin: 0vw 10.3vw 6.8vw 3vw; }
  #contents07 .inner-Box2 h2 img{  }
  #contents07 .inner-Box2 p.btn{position: relative;margin: 5vw 0 -3.9vw 44.1vw;}
  #contents07 .inner-Box2 p.btn img{  }
  
  #keijiban .system-list{background: url(../images/index/sp-contents07-line01.png)no-repeat top center,url(../images/index/sp-contents07-line01.png)no-repeat bottom center;background-size: 100% auto;padding: 5.7vw 0;}
  #keijiban .system-list li{border-bottom: 0.2vw dotted #fff;padding: 0vw 3.9vw 4.7vw;margin-bottom: 3.5vw;}
  #keijiban .system-list li:last-child{/* border-bottom: none; *//* margin: 0 0 -1.4vw; *//* padding: 0; */}
  #keijiban .system-list li .system-date{position: relative;line-height: 7.24vw;letter-spacing: 0.19vw;font-size: 3.86vw;}
  #keijiban .system-list li .system-date span.date{display: block;letter-spacing: 0.19vw;margin-bottom: 1vw;}
  #keijiban .system-list li .system-date span.ttln{display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;font-size: 3.38vw;letter-spacing: 0.23vw;line-height: 6.28vw;}
  
  footer{padding-top: 105.1vw;height: 536.5vw;background-position: top 64vw center;}
  footer .f-home-link{margin-bottom: 5.8vw;}
  footer .seotext{font-size:2.89vw;line-height: 6.52vw;letter-spacing: 0.14vw;font-weight: 500;position: relative;top: -2.3vw;left: -1vw;margin-bottom: 46.4vw;text-align: left;}


}
