@charset "UTF-8";
#Content {
  background: none;
  padding: 0;
  margin: 0;
}

#GlobalHeader, #Content, #GlobalFooter {
  opacity: 0;
}

/*--------------------------------------------------------------------------
   Index
---------------------------------------------------------------------------*/
#Index {
  position: relative;
  background-image: url("../../images/common/bg_main.svg");
  background-repeat: no-repeat;
  background-size: 160%;
  background-position: 50% -24.999975vw;
}
#Index .contents-bgs {
  position: absolute;
  width: 99.9999vw;
  height: 100%;
  top: 121.42845vw;
  left: -49.99995vw;
  transform: skewX(-15deg);
}
@media screen and (max-width: 960px) {
  #Index .contents-bgs {
    width: 159.9999996vw;
    top: 306.6666659vw;
    left: -93.3333331vw;
  }
}
#Index .contents-bgs .contents-bg1, #Index .contents-bgs .contents-bg2, #Index .contents-bgs .contents-bg3, #Index .contents-bgs .contents-bg4 {
  position: absolute;
  display: block;
  width: 25%;
  height: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(90deg, #F23D04, #FF7200);
  background-color: #F0360D;
}
#Index .contents-bgs .contents-bg1 {
  left: 0;
  z-index: 1;
  display: none;
}
#Index .contents-bgs .contents-bg2 {
  left: 25%;
  z-index: 1;
}
#Index .contents-bgs .contents-bg3 {
  left: 50%;
  z-index: 3;
}
#Index .contents-bgs .contents-bg4 {
  left: 75%;
  z-index: 1;
}
#Index .contents-bgs:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: repeating-linear-gradient(0deg, #e61900, #e61900 2px, rgba(230, 25, 0, 0) 0, rgba(230, 25, 0, 0) 4px);
  z-index: 2;
}
#Index #Main {
  position: relative;
  width: 100%;
  height: 580px;
  z-index: 10;
}
#Index #Main .inner {
  width: 100%;
  height: 100%;
  position: relative;
  margin: 0 auto;
  z-index: 1;
  box-sizing: border-box;
}
#Index #Main .inner .kv {
  position: relative;
  width: 57.1428vw;
  height: 100%;
  overflow: hidden;
  transform: skewX(15deg);
  margin-left: 34.28568vw;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .kv {
    width: 99.99999975vw;
    margin-left: 0;
    transform: skewX(0);
  }
}
#Index #Main .inner .kv .pic {
  position: absolute;
  width: 125%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transform: skewX(-15deg);
  margin-left: -7.14285vw;
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .kv .pic {
    width: 100%;
    margin-left: 0vw;
    transform: skewX(0);
  }
}
#Index #Main .inner .kv .pic img {
  height: 100%;
  object-fit: cover;
  transform: scale(1.1);
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .kv .pic img {
    transform: scale(1);
  }
}
#Index #Main .inner .scroll {
  position: absolute;
  bottom: 0;
  right: auto;
  left: 20px;
  width: 0.7857135vw;
  min-width: 11px;
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .scroll {
    bottom: 0;
    left: auto;
    right: 0vw;
    width: 22.66666661vw;
    height: 63.99999984vw;
    min-width: 0;
  }
}
#Index #Main .inner .scroll .txt {
  color: #FFFFFF;
  transform: rotate(-90deg);
  letter-spacing: 0.1em;
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .scroll .txt {
    transform: rotate(90deg);
    position: absolute;
    left: auto;
    right: 2.66666666vw;
    bottom: 18.66666662vw;
    margin: auto;
    text-align: center;
  }
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .scroll:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    border-top: 11.99999997vw solid transparent;
    border-right: 11.99999997vw solid #EF0305;
    border-bottom: 11.99999997vw solid #EF0305;
    border-left: 11.99999997vw solid transparent;
    transform-origin: 100% 100%;
    transform: scaleX(1) scaleY(2.5);
  }
}
#Index #Main .inner .scroll:after {
  content: "";
  display: block;
  width: 1px;
  height: 3.857139vw;
  background-color: #FFFFFF;
  margin: auto;
  margin-top: 0.714285vw;
}
@media screen and (max-width: 960px) {
  #Index #Main .inner .scroll:after {
    height: 6.66666665vw;
    position: absolute;
    left: auto;
    right: 7.333333315vw;
    bottom: 6.66666665vw;
    margin: auto;
  }
}
#Index #Strength {
  position: relative;
  width: 100%;
  z-index: 11;
}
#Index #Strength .inner {
  position: absolute;
  top: -29.99997vw;
  left: 8.57142vw;
  width: 22.85712vw;
  margin: 0 auto;
}
@media screen and (max-width: 960px) {
  #Index #Strength .inner {
    width: 73.33333315vw;
    top: -99.99999975vw;
    left: 4.666666655vw;
  }
}
#Index #Strength .inner .ttl {
  color: #FFFFFF;
  font-size: 2.142855vw;
  margin-bottom: 1.42857vw;
  line-height: 1.3;
}
@media screen and (max-width: 960px) {
  #Index #Strength .inner .ttl {
    font-size: 3.99999999vw;
    margin-bottom: 2.66666666vw;
    display: inline-block;
    background-color: rgba(0, 0, 0, 0.3);
  }
}
@media screen and (max-width: 640px) {
  #Index #Strength .inner .ttl {
    font-size: 6.266666651vw;
    margin-bottom: 2.66666666vw;
  }
}
#Index #Strength .inner .txt {
  color: #FFFFFF;
}
@media screen and (max-width: 960px) {
  #Index #Strength .inner .txt {
    background-color: rgba(0, 0, 0, 0.3);
  }
}
#Index #Strength .inner .bt {
  margin-top: 2.142855vw;
  width: 21.42855vw !important;
}
@media screen and (max-width: 960px) {
  #Index #Strength .inner .bt {
    top: 3.99999999vw;
    width: 49.33333321vw !important;
  }
}
#Index #Nspress {
  position: relative;
  width: 100%;
  z-index: 12;
  transform: skewX(-20deg);
  background-color: #FFFFFF;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  margin-left: 9.285705vw;
  margin-bottom: 4.999995vw;
}
@media screen and (max-width: 960px) {
  #Index #Nspress {
    margin-left: 10.66666664vw;
    margin-bottom: 13.3333333vw;
  }
}
#Index #Nspress .inner {
  position: relative;
  width: 64.999935vw;
  margin: 0 auto;
  padding-top: 2.85714vw;
  padding-bottom: 2.85714vw;
  box-sizing: border-box;
  transform: skewX(20deg);
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner {
    width: 75.99999981vw;
    padding-top: 5.33333332vw;
    padding-bottom: 5.33333332vw;
  }
}
#Index #Nspress .inner .ttl {
  padding-bottom: 3.571425vw;
  font-size: 3.9285675vw;
  text-align: center;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .ttl {
    text-align: left;
    padding-bottom: 2.66666666vw;
    font-size: 7.333333315vw;
    margin-left: 5.33333332vw;
  }
}
#Index #Nspress .inner .slide {
  width: 100%;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide {
    width: 73.33333315vw;
  }
}
#Index #Nspress .inner .slide .swiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
#Index #Nspress .inner .slide .list {
  width: 18.57141vw;
}
#Index #Nspress .inner .slide .list:hover .pic {
  filter: contrast(1.2) brightness(1.2);
  transition: contrast 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000), brightness 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .list {
    width: 100%;
  }
}
#Index #Nspress .inner .slide .list a {
  display: inline-block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .list a {
    display: flex;
    flex-wrap: nowrap;
  }
}
#Index #Nspress .inner .slide .list .tags {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.7857135vw;
  margin-top: 1.42857vw;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .list .tags {
    margin-top: 2.66666666vw;
    font-size: 2.933333326vw;
  }
}
#Index #Nspress .inner .slide .list .tags li {
  margin-right: 1.0714275vw;
  margin-bottom: 0.714285vw;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .list .tags li {
    margin-right: 1.999999995vw;
    margin-bottom: 1.33333333vw;
  }
}
#Index #Nspress .inner .slide .list .tags li a {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50px;
  background-color: #EEEEEE;
  box-sizing: border-box;
  transition: all 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
  color: #313131;
  padding: 0.142857vw 0.714285vw;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .list .tags li a {
    padding: 0.266666666vw 1.33333333vw;
  }
}
#Index #Nspress .inner .slide .list .tags li a:hover {
  color: #FFFFFF;
  background-color: #E81305;
  transition: color 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
#Index #Nspress .inner .slide .pic {
  overflow: hidden;
  width: 100%;
  height: 11.42856vw;
  margin-bottom: 1.0714275vw;
  filter: contrast(1) brightness(1);
  transition: contrast 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000), brightness 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .pic {
    width: 41.33333323vw;
    height: auto;
    margin-right: 2.66666666vw;
    margin-bottom: 0;
  }
}
#Index #Nspress .inner .slide .category {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  color: #E91001;
  font-size: 0.9285705vw;
  margin-bottom: 1.0714275vw;
  box-sizing: border-box;
  padding-left: 0.2em;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .category {
    font-size: 3.066666659vw;
    margin-bottom: 1.999999995vw;
  }
}
#Index #Nspress .inner .slide .category span {
  padding-left: 1em;
  padding-right: 1em;
}
#Index #Nspress .inner .slide .category:before, #Index #Nspress .inner .slide .category:after {
  content: "";
  position: relative;
  display: block;
  width: 1px;
  height: 1em;
  border-left: 1px solid #E91001;
  transform: rotate(10deg);
  box-sizing: border-box;
}
#Index #Nspress .inner .slide .catch {
  font-size: 1.142856vw;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .catch {
    font-size: 3.333333325vw;
  }
}
#Index #Nspress .inner .slide .txt {
  font-size: 0.9285705vw;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .slide .txt {
    display: none;
  }
}
#Index #Nspress .inner .swiper-button-next, #Index #Nspress .inner .swiper-button-prev {
  background: none;
  box-shadow: none;
  display: none;
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .swiper-button-next, #Index #Nspress .inner .swiper-button-prev {
    font-size: 3.333333325vw;
    display: block;
  }
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .swiper-button-next {
    position: absolute;
    top: 10.66666664vw;
    left: auto;
    right: 3.99999999vw;
    bottom: auto;
  }
}
@media screen and (max-width: 960px) {
  #Index #Nspress .inner .swiper-button-prev {
    position: absolute;
    top: 10.66666664vw;
    left: auto;
    right: 13.3333333vw;
    bottom: auto;
  }
}
#Index #Business {
  z-index: 10;
  position: relative;
  width: 100%;
  background-color: #FFFFFF;
}
@media screen and (max-width: 960px) {
  #Index #Business {
    background: none;
  }
}
#Index #Business .inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner {
    display: block;
  }
  #Index #Business .inner:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    top: -39.9999999vw;
    height: 39.9999999vw;
    z-index: -1;
    background-color: #ef0305;
  }
}
#Index #Business .inner .pic {
  width: 59vw;
  margin-left: -20vw;
  transform: skewX(-20deg);
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .pic {
    position: absolute;
    width: 93.3333331vw;
    margin-left: -19.99999995vw;
    top: -39.9999999vw;
    left: 0;
    z-index: 2;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
  }
}
#Index #Business .inner .pic img {
  display: inline-block;
  width: 100%;
  transform: skewX(20deg);
  padding-left: 10.714275vw;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .pic img {
    padding-left: 19.99999995vw;
  }
}
#Index #Business .inner .box {
  box-sizing: border-box;
  width: 49.99995vw;
  padding-top: 7.14285vw;
  padding-bottom: 7.14285vw;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .box {
    position: relative;
    width: 100%;
    background-color: #FFFFFF;
    margin-top: 40vw;
    padding-top: 50.66666654vw;
    padding-bottom: 13.3333333vw;
    z-index: 1;
  }
}
#Index #Business .inner .box .ttl {
  padding-bottom: 3.571425vw;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .box .ttl {
    padding-bottom: 4.666666655vw;
    margin-left: 9.999999975vw;
  }
}
#Index #Business .inner .box .ttl dl dt {
  position: relative;
  font-size: 9.285705vw;
  line-height: 0.8;
  margin-left: -0.6428565vw;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .box .ttl dl dt {
    font-size: 23.99999994vw;
    position: absolute;
    top: 49.33333321vw;
    right: -39.9999999vw;
    transform: rotate(90deg);
  }
}
#Index #Business .inner .box .ttl dl dd {
  font-size: 1.2142845vw;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .box .ttl dl dd {
    font-size: 3.99999999vw;
  }
}
#Index #Business .inner .box .txt {
  padding-bottom: 2.142855vw;
  width: 30.714255vw;
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .box .txt {
    width: 57.33333319vw;
    padding-bottom: 9.33333331vw;
    margin-left: 9.999999975vw;
  }
}
@media screen and (max-width: 960px) {
  #Index #Business .inner .box .bt {
    margin-left: 9.999999975vw;
  }
}
#Index #Case {
  position: relative;
  width: 100%;
  z-index: 10;
}
#Index #Case .inner {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-top: 4.999995vw;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner {
    padding-top: 9.33333331vw;
  }
}
#Index #Case .inner .ttl {
  margin-left: 21.42855vw;
  color: #FFFFFF;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .ttl {
    margin-left: 9.999999975vw;
    margin-bottom: 7.99999998vw;
  }
}
#Index #Case .inner .ttl dl dt {
  position: relative;
  font-size: 9.285705vw;
  line-height: 0.8;
  margin-left: -0.6428565vw;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .ttl dl dt {
    font-size: 16.666666625vw;
  }
}
#Index #Case .inner .ttl dl dd {
  font-size: 1.2142845vw;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .ttl dl dd {
    font-size: 3.99999999vw;
  }
}
#Index #Case .inner .txt {
  color: #FFFFFF;
}
#Index #Case .inner .bt {
  margin-left: 18.285696vw;
  margin-top: 2.85714vw;
  z-index: 3;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .bt {
    margin: auto;
    margin-top: 9.33333331vw;
  }
}
#Index #Case .inner .slide {
  position: absolute;
  left: 37.857105vw;
  bottom: 0;
  width: 100%;
  height: 29.99997vw;
  overflow: visible;
  z-index: 1;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide {
    position: relative;
    left: 0;
    height: 53.3333332vw;
  }
}
#Index #Case .inner .slide .list {
  position: relative;
  width: 42.8571vw;
  height: 29.99997vw;
}
#Index #Case .inner .slide .list:hover .pic:after {
  background-color: rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .list {
    width: 67.99999983vw;
    height: 53.3333332vw;
  }
}
#Index #Case .inner .slide .list a {
  display: inline-block;
  width: 100%;
  height: 100%;
}
#Index #Case .inner .slide .list a:hover img {
  opacity: 1;
  transition: opacity 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
#Index #Case .inner .slide .list .catchs {
  position: absolute;
  z-index: 2;
  top: 2.142855vw;
  left: 14.2857vw;
  color: #FFFFFF;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .list .catchs {
    top: 3.99999999vw;
    left: 23.99999994vw;
  }
}
#Index #Case .inner .slide .list .catchs .case {
  font-size: 0.999999vw;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .list .catchs .case {
    font-size: 3.333333325vw;
  }
}
#Index #Case .inner .slide .list .catchs .catch {
  font-size: 1.714284vw;
  line-height: 1.1;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .list .catchs .catch {
    font-size: 3.99999999vw;
  }
}
#Index #Case .inner .slide .list .pic {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 29.99997vw;
  transform: skewX(-20deg);
  margin-left: 7.14285vw;
  overflow: hidden;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .list .pic {
    height: 53.3333332vw;
    margin-left: 13.3333333vw;
  }
}
#Index #Case .inner .slide .list .pic:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
#Index #Case .inner .slide .list .pic img {
  display: inline-block;
  width: 100%;
  transform-origin: 0 0;
  transform: skewX(20deg) scale(1.3);
  margin-left: -12.142845vw;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .list .pic img {
    margin-left: -19.99999995vw;
  }
}
#Index #Case .inner .slide .next {
  cursor: pointer;
  width: 4.999995vw;
  height: 7.14285vw;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 48vw;
  margin: auto;
  display: block;
  z-index: 3;
}
#Index #Case .inner .slide .next:hover:before, #Index #Case .inner .slide .next:hover:after {
  border-top: 2px solid #000000;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .next {
    left: 82vw;
    width: 3.99999999vw;
    height: 13.3333333vw;
  }
}
#Index #Case .inner .slide .next:before, #Index #Case .inner .slide .next:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  border-top: 2px solid #FFFFFF;
  z-index: 3;
}
#Index #Case .inner .slide .next:before {
  width: 4.999995vw;
  height: 1px;
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .next:before {
    width: 9.33333331vw;
  }
}
#Index #Case .inner .slide .next:after {
  width: 2.142855vw;
  height: 1px;
  transform-origin: 100% 50%;
  transform: rotate(45deg);
}
@media screen and (max-width: 960px) {
  #Index #Case .inner .slide .next:after {
    width: 3.99999999vw;
  }
}
#Index #Products {
  z-index: 10;
  position: relative;
  width: 100%;
  margin-top: 7.14285vw;
  padding-bottom: 17.857125vw;
}
@media screen and (max-width: 960px) {
  #Index #Products {
    margin-top: 13.3333333vw;
    padding-bottom: 13.3333333vw;
  }
}
#Index #Products .inner .box {
  padding: 3.571425vw;
  padding-top: 7.857135vw;
  padding-bottom: 14.2857vw;
  background-color: #FFFFFF;
  width: 71.4285vw;
  margin: auto;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .box {
    width: 89.33333311vw;
    padding: 9.33333331vw;
  }
}
#Index #Products .inner .box .ttl {
  padding-bottom: 3.571425vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .box .ttl {
    padding-bottom: 7.99999998vw;
  }
}
#Index #Products .inner .box .ttl dl {
  text-align: center;
}
#Index #Products .inner .box .ttl dl dt {
  position: relative;
  font-size: 9.285705vw;
  line-height: 0.8;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .box .ttl dl dt {
    font-size: 16.666666625vw;
  }
}
#Index #Products .inner .box .ttl dl dd {
  font-size: 1.2142845vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .box .ttl dl dd {
    font-size: 3.99999999vw;
  }
}
#Index #Products .inner .box .txt-box {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .box .txt-box {
    display: block;
  }
}
#Index #Products .inner .box .txt-box .txt {
  padding-bottom: 2.142855vw;
  width: 38.57139vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .box .txt-box .txt {
    padding-bottom: 7.99999998vw;
    width: 100%;
  }
}
#Index #Products .inner .box .txt-box .bt {
  margin: auto;
}
#Index #Products .inner .slide {
  position: absolute;
  width: 85.7142vw;
  bottom: 8.57142vw;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide {
    position: relative;
    width: 100%;
    bottom: 0;
  }
}
#Index #Products .inner .slide ul {
  display: flex;
  flex-wrap: nowrap;
  counter-reset: number;
  justify-content: space-between;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide ul {
    display: block;
  }
}
#Index #Products .inner .slide .list {
  position: relative;
  width: 32.7%;
}
#Index #Products .inner .slide .list:hover .pic:after {
  background-color: rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list {
    width: 100%;
    margin-right: 0;
  }
}
#Index #Products .inner .slide .list:before {
  content: counter(number,decimal-leading-zero);
  counter-increment: number;
  display: block;
  font-size: 2.142855vw;
  opacity: 0.6;
  font-family: "din-condensed", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
  color: #FFFFFF;
  position: absolute;
  top: 1.5vw;
  right: auto;
  left: 4.5vw;
  z-index: 3;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list:before {
    font-size: 8vw;
    position: absolute;
    top: 4vw;
    right: auto;
    left: 4vw;
    opacity: 0.3;
  }
}
#Index #Products .inner .slide .list:last-child {
  margin-right: 0;
}
#Index #Products .inner .slide .list a {
  box-sizing: border-box;
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #FFFFFF;
}
#Index #Products .inner .slide .list .txts-box {
  z-index: 2;
  position: absolute;
  left: 2.142855vw;
  bottom: 1.42857vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box {
    width: 89.33333311vw;
    left: 0;
    right: 0;
    bottom: 3.99999999vw;
    margin: auto;
  }
}
#Index #Products .inner .slide .list .txts-box .catchs {
  position: relative;
}
#Index #Products .inner .slide .list .txts-box .catchs .catch {
  position: absolute;
  top: -11.5vw;
  left: 2.5vw;
  font-size: 1.42857vw;
  line-height: 1.3;
  margin-bottom: 1.42857vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box .catchs .catch {
    top: -34vw;
    left: 0;
    font-size: 3.99999999vw;
    margin-bottom: 2.66666666vw;
  }
}
#Index #Products .inner .slide .list .txts-box .catchs .txt {
  width: 21.42855vw;
  margin-bottom: 1.42857vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box .catchs .txt {
    position: absolute;
    top: -11vw;
    left: 0;
    width: 70.66666649vw;
    font-size: 3.333333325vw;
    margin-bottom: 0;
  }
}
#Index #Products .inner .slide .list .txts-box .link {
  position: relative;
  text-align: right;
  padding-right: 2.142855vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box .link {
    font-size: 3.99999999vw;
    position: absolute;
    right: 0;
    bottom: 0;
    padding-right: 6.66666665vw;
    line-height: 0.7;
  }
}
#Index #Products .inner .slide .list .txts-box .link:before, #Index #Products .inner .slide .list .txts-box .link:after {
  position: absolute;
  top: auto;
  bottom: 0.0714285vw;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  height: 1px;
  border-top: 2px solid #FFFFFF;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box .link:before, #Index #Products .inner .slide .list .txts-box .link:after {
    right: 0;
  }
}
#Index #Products .inner .slide .list .txts-box .link:before {
  width: 1.42857vw;
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box .link:before {
    width: 4.799999988vw;
  }
}
#Index #Products .inner .slide .list .txts-box .link:after {
  width: 0.6428565vw;
  transform-origin: 100% 50%;
  transform: rotate(45deg);
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .txts-box .link:after {
    width: 1.999999995vw;
  }
}
#Index #Products .inner .slide .list .pic {
  z-index: 1;
  width: 100%;
  height: 21.42855vw;
  transform: skewX(-20deg);
  overflow: hidden;
}
#Index #Products .inner .slide .list .pic:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .pic {
    height: auto;
    transform: skewX(0deg);
  }
}
#Index #Products .inner .slide .list .pic img {
  width: 100%;
  transform-origin: 50% 0;
  transform: skewX(20deg) scale(1.6);
}
@media screen and (max-width: 960px) {
  #Index #Products .inner .slide .list .pic img {
    height: auto;
    transform: skewX(0deg) scale(1);
  }
}
#Index #News {
  z-index: 10;
  position: relative;
  width: 100%;
  margin-bottom: 7.14285vw;
}
@media screen and (max-width: 960px) {
  #Index #News {
    margin-bottom: 14.66666663vw;
  }
}
#Index #News .inner {
  width: 71.4285vw;
  margin: auto;
}
@media screen and (max-width: 960px) {
  #Index #News .inner {
    width: 78.66666647vw;
  }
}
#Index #News .inner .ttl {
  color: #FFFFFF;
  padding-bottom: 3.571425vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .ttl {
    padding-bottom: 5.33333332vw;
  }
}
#Index #News .inner .ttl dl {
  text-align: center;
}
#Index #News .inner .ttl dl dt {
  position: relative;
  font-size: 3.7857105vw;
  line-height: 0.8;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .ttl dl dt {
    font-size: 10.66666664vw;
  }
}
#Index #News .inner .ttl dl dd {
  font-size: 1.2142845vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .ttl dl dd {
    font-size: 2.933333326vw;
  }
}
#Index #News .inner .navi {
  color: #FFFFFF;
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 2.85714vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .navi {
    margin-bottom: 10.66666664vw;
    flex-wrap: wrap;
  }
}
#Index #News .inner .navi li {
  position: relative;
  box-sizing: border-box;
  padding-right: 3.571425vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .navi li {
    padding-right: 6.66666665vw;
    margin-bottom: 2.66666666vw;
  }
}
#Index #News .inner .navi li a {
  position: relative;
  color: #FFFFFF;
}
#Index #News .inner .navi li:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.0714275vw;
  left: auto;
  margin: auto;
  display: block;
  width: 1.0714275vw;
  height: 1px;
  border-top: 1px solid #FFFFFF;
  transform-origin: 50% 50%;
  transform: rotate(-40deg);
}
@media screen and (max-width: 960px) {
  #Index #News .inner .navi li:after {
    width: 3.733333324vw;
    height: 3.733333324vw;
    right: 0.266666666vw;
  }
}
@media screen and (max-width: 960px) {
  #Index #News .inner .navi li:first-child {
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  #Index #News .inner .navi li:first-child:after {
    display: none;
  }
}
#Index #News .inner .navi li:last-child {
  padding-right: 0;
}
#Index #News .inner .navi li:last-child:after {
  display: none;
}
#Index #News .inner .navi .current a:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #FFFFFF;
  bottom: -0.714285vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .navi .current a:before {
    bottom: -0.666666665vw;
  }
}
#Index #News .inner .lists {
  color: #FFFFFF;
}
#Index #News .inner .lists li {
  margin-bottom: 2.85714vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li {
    margin-bottom: 7.99999998vw;
  }
}
#Index #News .inner .lists li .article {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article {
    display: block;
  }
}
#Index #News .inner .lists li .article .dates {
  width: 14.2857vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article .dates {
    width: 100%;
  }
}
#Index #News .inner .lists li .article .dates dl {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article .dates dl {
    margin-bottom: 3.99999999vw;
  }
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article .dates dl dt {
    font-size: 2.933333326vw;
  }
}
#Index #News .inner .lists li .article .dates dl dd {
  border: 1px solid #FFFFFF;
  box-sizing: border-box;
  border-radius: 50px;
  padding: 0.3571425vw 0.714285vw;
  line-height: 1;
  font-size: 0.714285vw;
  margin-left: 1.0714275vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article .dates dl dd {
    padding: 0.666666665vw 1.33333333vw;
    font-size: 2.66666666vw;
    margin-left: 2.66666666vw;
  }
}
#Index #News .inner .lists li .article .txt {
  width: 57.1428vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article .txt {
    width: 100%;
  }
}
#Index #News .inner .lists li .article .txt a {
  padding-top: 0.714285vw;
  color: #FFFFFF;
  text-decoration: underline;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .lists li .article .txt a {
    padding-top: 0;
  }
}
#Index #News .inner .lists li:last-child {
  margin-bottom: 0;
}
#Index #News .inner .bt {
  margin: auto;
  margin-top: 2.85714vw;
}
@media screen and (max-width: 960px) {
  #Index #News .inner .bt {
    margin-top: 10.66666664vw;
  }
}
#Index #Others {
  position: relative;
  z-index: 10;
}
#Index #Others .inner {
  display: flex;
}
@media screen and (max-width: 960px) {
  #Index #Others .inner {
    display: block;
  }
}
#Index #Others .inner .company {
  position: relative;
  width: 100%;
}
#Index #Others .inner .company:hover .pic:after {
  background-color: rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
#Index #Others .inner .company .ttl {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%);
  margin: auto;
  color: #FFFFFF;
  z-index: 2;
}
#Index #Others .inner .company .ttl dl dt {
  position: relative;
  font-size: 5.3571375vw;
  line-height: 0.8;
}
@media screen and (max-width: 960px) {
  #Index #Others .inner .company .ttl dl dt {
    line-height: 0.9;
    font-size: 10.66666664vw;
  }
}
#Index #Others .inner .company .ttl dl dd {
  font-size: 1.2142845vw;
}
@media screen and (max-width: 960px) {
  #Index #Others .inner .company .ttl dl dd {
    font-size: 2.933333326vw;
  }
}
#Index #Others .inner .company .pic {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  #Index #Others .inner .company .pic {
    height: 39.9999999vw;
    overflow: visible;
  }
  #Index #Others .inner .company .pic img {
    position: relative;
    width: auto;
    height: 100%;
    transform: translateX(-20%);
  }
}
#Index #Others .inner .company .pic:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
#Index #Others .inner .company .pic:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  border-top: 6.428565vw solid transparent;
  border-right: 6.428565vw solid #000000;
  border-bottom: 6.428565vw solid #000000;
  border-left: 6.428565vw solid transparent;
  box-sizing: border-box;
  transform-origin: 0 0;
  transform: scaleX(1) scaleY(2.5);
  opacity: 0.5;
}
@media screen and (max-width: 960px) {
  #Index #Others .inner .company .pic:before {
    border-top: 11.99999997vw solid transparent;
    border-right: 11.99999997vw solid #000000;
    border-bottom: 11.99999997vw solid #000000;
    border-left: 11.99999997vw solid transparent;
    z-index: 2;
  }
}

/*--------------------------------------------------------------------------
    globalHeaderIndex
 ---------------------------------------------------------------------------*/
.globalHeader-Index .inner {
  height: auto;
  background: none;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .inner {
    position: relative;
    height: auto;
  }
}
.globalHeader-Index .logo {
  position: relative;
  width: 14.2857vw;
  top: auto;
  left: auto;
  transform: translateY(0);
  display: block;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .logo {
    display: block;
    width: 23.99999994vw;
    top: auto;
    left: auto;
    transform: translateY(0);
  }
}
.globalHeader-Index .logo a {
  display: block;
  width: 4.6428525vw;
  position: absolute;
  top: 2.4999975vw;
  left: 2.142855vw;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .logo a {
    width: 10.66666664vw;
    top: 3.99999999vw;
    left: 2.66666666vw;
  }
}
.globalHeader-Index .logo:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-top: 6.428565vw solid #FFFFFF;
  border-right: 6.428565vw solid transparent;
  border-bottom: 6.428565vw solid transparent;
  border-left: 6.428565vw solid #FFFFFF;
  box-sizing: border-box;
  transform-origin: 0 0;
  transform: scaleX(1) scaleY(2.5);
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .logo:before {
    border-top: 11.99999997vw solid #FFFFFF;
    border-right: 11.99999997vw solid transparent;
    border-bottom: 11.99999997vw solid transparent;
    border-left: 11.99999997vw solid #FFFFFF;
    transform: scaleX(1) scaleY(2.5);
  }
}
.globalHeader-Index .logo2 {
  display: none;
}
.globalHeader-Index .navi-sub-acordion {
  display: none;
}
.globalHeader-Index .navis .navi-subs {
  display: none;
}
.globalHeader-Index .navis .menu {
  display: block;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .navis .menu {
    display: block;
  }
}
.globalHeader-Index .request-doc, .globalHeader-Index .request-estimation {
  top: 5.857137vw;
  right: 0;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .request-doc, .globalHeader-Index .request-estimation {
    display: none;
  }
}
.globalHeader-Index .request-estimation {
  top: 11.714274vw;
}
.globalHeader-Index .links {
  top: 17.857125vw;
  right: 0;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .links {
    top: 0;
    right: 13.3333333vw;
  }
}
.globalHeader-Index .link-search, .globalHeader-Index .link-contact, .globalHeader-Index .link-english {
  position: relative;
  right: 0;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .link-search, .globalHeader-Index .link-contact, .globalHeader-Index .link-english {
    position: absolute;
  }
}
.globalHeader-Index .link-search a, .globalHeader-Index .link-contact a, .globalHeader-Index .link-english a {
  width: 100%;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .link-search a, .globalHeader-Index .link-contact a, .globalHeader-Index .link-english a {
    width: 13.3333333vw;
  }
}
.globalHeader-Index .link-search a:before, .globalHeader-Index .link-contact a:before, .globalHeader-Index .link-english a:before {
  color: #FFFFFF;
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .link-search {
    right: 0vw;
  }
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .link-contact {
    right: 13.3333333vw;
  }
}
@media screen and (max-width: 960px) {
  .globalHeader-Index .link-english {
    right: 26.6666666vw;
  }
}

/*--------------------------------------------------------------------------
     globalHeader-Fixed
  ---------------------------------------------------------------------------*/
.globalHeader-Fixed .inner {
  position: fixed;
  height: 5.71428vw;
  background-color: #FFFFFF;
  box-sizing: border-box;
  box-shadow: 0 0.714285vw 0.714285vw rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner {
    height: 13.3333333vw;
    box-shadow: 0 1.33333333vw 1.33333333vw rgba(0, 0, 0, 0.05);
  }
}
.globalHeader-Fixed .inner .logo {
  display: none;
}
.globalHeader-Fixed .inner .logo2 {
  display: block;
}
.globalHeader-Fixed .inner .navis .navi-sub {
  position: absolute;
  bottom: 1.999998vw;
  right: 30.714255vw;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .navis .navi-sub {
    display: none;
  }
}
.globalHeader-Fixed .inner .links {
  top: 0vw;
  right: 17.857125vw;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .links {
    top: 0;
    right: 13.3333333vw;
  }
}
.globalHeader-Fixed .inner .request-doc, .globalHeader-Fixed .inner .request-estimation {
  top: 0;
  right: 0;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .request-doc, .globalHeader-Fixed .inner .request-estimation {
    display: none;
  }
}
.globalHeader-Fixed .inner .request-doc {
  right: 5.857137vw;
}
.globalHeader-Fixed .inner .request-estimation {
  right: 11.714274vw;
}
.globalHeader-Fixed .inner .link-search, .globalHeader-Fixed .inner .link-contact, .globalHeader-Fixed .inner .link-english {
  position: absolute;
  right: 0;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .link-search, .globalHeader-Fixed .inner .link-contact, .globalHeader-Fixed .inner .link-english {
    position: absolute;
  }
}
.globalHeader-Fixed .inner .link-search a:before, .globalHeader-Fixed .inner .link-contact a:before, .globalHeader-Fixed .inner .link-english a:before {
  color: #000000;
}
.globalHeader-Fixed .inner .link-search {
  position: absolute;
  right: 1.42857vw;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .link-search {
    right: 0vw;
  }
}
.globalHeader-Fixed .inner .link-contact {
  position: absolute;
  right: 5.142852vw;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .link-contact {
    right: 13.3333333vw;
  }
}
.globalHeader-Fixed .inner .link-english {
  position: absolute;
  right: 8.857134vw;
}
@media screen and (max-width: 960px) {
  .globalHeader-Fixed .inner .link-english {
    right: 26.6666666vw;
  }
}
