@media screen and (max-width: 750px) {
  body {
    padding-bottom: 10vw;
  }
}

.cp-wrap {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  color: #333333;
  position: relative;
  width: 100%;
  color: #000;
}
.cp-wrap *,
.cp-wrap *::before,
.cp-wrap *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.cp-wrap.fixed {
  height: 100vh;
  overflow: hidden;
}
.cp-wrap li {
  list-style: none;
}
.cp-wrap img {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.cp-wrap p {
  margin: 0 auto;
}
.cp-wrap .bebas {
  font-family: "Bebas Neue", Helvetica, Arial, Roboto, sans-serif;
  font-weight: 400;
}
@media screen and (max-width: 1064px) {
  .cp-wrap {
    font-size: 1.503759398vw;
  }
}
@media screen and (max-width: 750px) {
  .cp-wrap {
    font-size: 3vw;
  }
}

@media screen and (min-width: 751px) {
  .sp {
    display: none;
  }
}
@media screen and (max-width: 750px) {
  .pc {
    display: none;
  }
}
.common-inner {
  max-width: calc(1000px + 4em);
  padding: 0 2em;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 750px) {
  .common-inner {
    padding: 0 1em;
  }
}

.info--red {
  color: red;
  margin: 0 auto 48px auto;
}

.fb {
  position: fixed;
  right: 0;
  top: calc(50% - 4.46875em);
  z-index: 100;
}
.fb a {
  display: block;
  width: 8.875em;
}
@media screen and (max-width: 750px) {
  .fb {
    right: 0;
    bottom: 0;
    top: auto;
  }
  .fb a {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .anc {
    margin-top: -62px;
    height: 62px;
    pointer-events: none;
  }
}

#mymodal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  padding: 2em 3em 2em;
  transition: 0.3s;
  opacity: 0;
  z-index: -1;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto;
}
#mymodal.on {
  opacity: 1;
  z-index: 1000000;
}
#mymodal .mymodalbg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: rgba(0, 0, 0, 0.8);
}
#mymodal .mymodalcwrap {
  position: relative;
  width: 100%;
  max-width: 920px;
  max-height: calc(100vh - 4em);
}
#mymodal .mymodalcontent {
  position: relative;
  overflow: auto;
}
#mymodal .mymodalclosebtn {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  width: 9em;
  height: 4em;
  background: url(../images/modal_close.svg) center center no-repeat;
  background-size: 6em auto;
}
#mymodal .mymodal-next,
#mymodal .mymodal-prev {
  position: absolute;
  top: calc(50% - 3em);
  width: 3em;
  height: 6em;
}
#mymodal .mymodal-next:before,
#mymodal .mymodal-prev:before {
  content: "";
  display: block;
  position: absolute;
  left: 0.8em;
  top: calc(50% - 0.5em);
  width: 1em;
  height: 1em;
  border-style: solid;
  border-width: 2px;
  border-color: #fff #fff transparent transparent;
  transform: scale(1, 2) rotate(45deg);
}
#mymodal .mymodal-prev {
  right: 100%;
  transform: scale(-1, 1);
}
#mymodal .mymodal-next {
  left: 100%;
}
@media screen and (max-width: 750px) {
  #mymodal {
    padding: 3.6em 1.5em 0;
    height: 100vh;
    top: 0;
    width: 100%;
  }
  #mymodal .mymodalbg {
    background-color: none;
  }
  #mymodal .mymodalcwrap {
    width: 100%;
    transition: 0.3s;
  }
  #mymodal .mymodalcontent {
    max-height: calc(100vh - 4.6em);
  }
  #mymodal.on {
    z-index: 120;
  }
}

.temps {
  display: none;
}

.bread {
  padding: 0.8em 0;
}
.bread ul {
  display: flex;
  font-size: 0.875em;
}
.bread ul > li:before {
  content: ">";
  display: inline-block;
  margin-left: 1em;
  margin-right: 1em;
}
.bread ul > li:first-child:before {
  display: none;
}
.bread ul > li a {
  color: #0c237e;
  text-decoration: underline;
}
@media screen and (max-width: 750px) {
  .bread {
    display: none;
    padding: 0.8em 1.5em;
  }
}

.grad1, .thanks h2, .sect-hd:before, .anchors .btn-menu {
  background: rgb(0, 199, 164);
  background: linear-gradient(90deg, rgb(0, 199, 164) 0%, rgb(220, 245, 53) 100%);
}

.kv {
  position: relative;
  overflow: hidden;
}
.kv .bg {
  max-width: 1280px;
  margin: 0 auto;
  overflow: hidden;
}
.kv .bg .bg-inner {
  padding-top: 46.875%;
  position: relative;
}
.kv .bg .bg-inner > div {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv .bg .bg-inner > div.fadeout {
  opacity: 0;
  transform: scale(1.1);
  transition: 1s;
}
.kv .inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
}
.kv .inner h1 {
  width: 100%;
  text-align: center;
  color: #fff;
  line-height: 1.25;
}
.kv .inner h1 .bebas {
  text-shadow: 0 0 0.5em rgb(0, 0, 0), 0 0 1em rgb(0, 0, 0);
  font-size: 4em;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.kv .inner h1 .min {
  display: inline-block;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 0.25em 0.5em;
  font-size: 1.25em;
  font-weight: 400;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 750px) {
  .kv {
    margin: 0 auto 3em;
    padding-top: 4em;
  }
  .kv .bg .bg-inner {
    padding-top: 100%;
  }
  .kv .bg .bg-inner > div img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .kv .inner {
    top: 4em;
    height: calc(100% - 4em);
  }
  .kv .inner h1 .bebas {
    font-size: 3.2em;
  }
}

.anchors {
  position: relative;
  margin: 0 auto 3em;
  background-color: #000;
}
.anchors .btn-menu {
  display: none;
}
.anchors ul {
  display: flex;
  justify-content: center;
  padding: 1em 0;
}
.anchors ul > li {
  padding: 0 2em;
}
.anchors ul a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 0.875em;
  padding: 0.75em 1em;
  letter-spacing: 0.1em;
  line-height: 1.5;
  height: 100%;
}
@media screen and (max-width: 750px) {
  .anchors {
    margin: 0 auto;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background: none;
  }
  .anchors .common-inner {
    padding: 0;
  }
  .anchors .btn-menu {
    display: block;
    padding: 1.25em 0;
    text-align: center;
    color: #fff;
    font-size: 1em;
    letter-spacing: 0.1em;
    position: relative;
  }
  .anchors .btn-menu:before {
    content: "";
    display: block;
    position: absolute;
    right: 1em;
    top: calc(50% - 0.3em);
    width: 0.6em;
    height: 0.6em;
    border-style: solid;
    border-width: 1px 1px 0 0;
    border-color: #000 #000 transparent transparent;
    transform: scale(1, -1) rotate(-45deg);
    transition: 0.3s;
  }
  .anchors .btn-menu + ul {
    max-height: 0;
    overflow: hidden;
    transition: 0.3s;
  }
  .anchors .btn-menu.on:before {
    transform: rotate(-45deg);
    top: calc(50% - 0.1em);
  }
  .anchors .btn-menu.on + ul {
    max-height: 100vh;
  }
  .anchors ul {
    flex-wrap: wrap;
    padding: 0;
  }
  .anchors ul > li {
    width: 100%;
    padding: 0;
    border-bottom: 1px solid #fff;
  }
  .anchors ul a {
    font-size: 1em;
    white-space: nowrap;
    background-color: rgba(0, 0, 0, 0.7);
    text-align: center;
    padding: 1.25em 0;
  }
  .anchors ul a:before {
    content: "";
    display: block;
    position: absolute;
    right: 1em;
    top: calc(50% - 0.3em);
    width: 0.6em;
    height: 0.6em;
    border-style: solid;
    border-width: 1px 1px 0 0;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
  }
}

.sect-hd {
  position: relative;
}
.sect-hd:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: calc((100% - 1000px) / 2 + 600px);
  height: 100%;
}
.sect-hd h2 {
  color: #fff;
  font-size: 1.25em;
  font-weight: 400;
  letter-spacing: 0.1em;
  padding: 1.5em 0;
}
@media screen and (max-width: 750px) {
  .sect-hd:before {
    width: calc(100% - 2em);
  }
}

.cp-body-c1 {
  margin: -1.25em auto 1em;
}
.cp-body-c1 h3 {
  color: #000;
  font-size: 3em;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 750px) {
  .cp-body-c1 h3 {
    font-size: 2.5em;
  }
}

.cp-body-c2 {
  margin: 1em auto 4em;
  display: flex;
}
.cp-body-c2 .img img {
  width: 26.875em;
  border-radius: 0.875em;
  box-shadow: 1.25em 1.25em 0 #f4f4f4;
}
.cp-body-c2 .movie_script {
  width: 50%;
  min-height: 300px;
}
.cp-body-c2 .movie_script iframe {
  max-width: 48%;
  max-height: 300px;
  width: 100%;
  height: auto;
}
.cp-body-c2 .text {
  width: 50%;
  flex: 1;
  padding-left: 3em;
  position: relative;
}
.cp-body-c2 .text.mt {
  top: -5em;
}
.cp-body-c2 .text p {
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .cp-body-c2 {
    flex-wrap: wrap;
    justify-content: center;
  }
  .cp-body-c2 .img {
    width: 70%;
    margin: 1em 0;
  }
  .cp-body-c2 .img img {
    width: 100%;
  }
  .cp-body-c2 .movie_script {
    width: 100%;
  }
  .cp-body-c2 .movie_script iframe {
    max-width: 95%;
    max-height: 300px;
    width: 100%;
    height: auto;
  }
  .cp-body-c2 .text {
    flex: 1 0 auto;
    padding: 2em 0 0 0;
    width: 100%;
  }
  .cp-body-c2 .text.mt {
    top: auto;
  }
}

.bg-gray {
  position: relative;
  background-color: #f4f4f4;
  overflow: hidden;
}
.bg-gray.top-w:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 3em;
  background-color: #fff;
}
.bg-gray.mb {
  margin-bottom: 4em;
}
.bg-gray.pb {
  padding-bottom: 4em;
}

.cp-body-c3 {
  width: 90%;
  margin: 0 auto;
  position: relative;
}
.cp-body-c3.tb:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: -3em;
  width: 2.6875em;
  height: 100%;
}
.cp-body-c3.tb.tb1:before {
  background: url(../images/text-floor-stacking.png) right top no-repeat;
  background-size: 100% auto;
}
.cp-body-c3.tb.tb2:before {
  background: url(../images/text-location-analytics.png) right top no-repeat;
  background-size: 100% auto;
}
.cp-body-c3.tb.tb3:before {
  background: url(../images/text-infection-control.png) right top no-repeat;
  background-size: 100% auto;
}
.cp-body-c3.tb.tb4:before {
  background: url(../images/text-3-zero.png) right top no-repeat;
  background-size: 100% auto;
}
.cp-body-c3 .cap1 {
  line-height: 1.8;
  width: 93.3333333333%;
  margin-left: 0;
}
.cp-body-c3 .caution1 {
  margin-top: 1em;
  font-size: 0.875em;
}
.cp-body-c3 .img-c1 {
  margin: 1.5em auto 2em 0;
  width: 93.3333333333%;
}
.cp-body-c3 .img-c1 img {
  border-radius: 0.875em;
}
.cp-body-c3 .img-c2 {
  margin: 1.5em auto 0;
}
.cp-body-c3 .img-c2 img {
  border-radius: 0.875em;
}
.cp-body-c3 .img-c3 {
  margin: 1.5em auto 0;
  width: 26.8%;
}
.cp-body-c3 .list1 {
  margin: 2em -1em 3em;
  display: flex;
  flex-wrap: wrap;
}
.cp-body-c3 .list1 > li {
  width: 50%;
  padding: 0.75em 1em;
}
.cp-body-c3 .list1 > li > div {
  background-color: #f4f4f4;
  text-align: center;
  padding: 1.5em;
  border-radius: 3em;
}
.cp-body-c3 .list1 h3 {
  font-size: 1.25em;
  letter-spacing: 0.1em;
}
.cp-body-c3 .list1 h4 {
  font-size: 4em;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: #22ca38;
}
.cp-body-c3 .list1 p {
  border-top: 1px solid #ccc;
  padding-top: 1em;
  font-size: 0.875em;
  line-height: 1.8;
}
.cp-body-c3 .mvinfo {
  margin: 1em auto;
  display: flex;
  font-size: 0.875em;
}
.cp-body-c3 .mvinfo > div:nth-child(odd) {
  background-color: #525d63;
  color: #fff;
  width: 5em;
  text-align: center;
}
.cp-body-c3 .mvinfo > div:nth-child(even) {
  padding: 0 1em;
}
.cp-body-c3 .mvbtn {
  margin: 3em auto 4em;
}
.cp-body-c3 .mvbtn img {
  width: 50%;
  margin: 0.5em auto;
}
.cp-body-c3 .mvbtn a {
  display: block;
  background-color: #22ca38;
  color: #fff;
  text-align: center;
  width: 26em;
  margin: 0 auto;
  border-radius: 3em;
  font-size: 1.125em;
  letter-spacing: 0.1em;
  padding: 0.75em 0;
  position: relative;
}
.cp-body-c3 .mvbtn a:before {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: calc(50% - 0.625em);
  width: 1.25em;
  height: 1.25em;
  background: url(../images/btn-icon1.png) center center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 750px) {
  .cp-body-c3 {
    width: 100%;
  }
  .cp-body-c3.tb:before {
    display: none;
  }
  .cp-body-c3 .cap1 {
    width: 100%;
  }
  .cp-body-c3 .list1 {
    margin: 2em auto;
    width: 90%;
  }
  .cp-body-c3 .list1 > li {
    width: 100%;
  }
  .cp-body-c3 .img-c1 {
    width: 100%;
  }
  .cp-body-c3 .img-c3 {
    width: 48%;
  }
  .cp-body-c3 .mvbtn img {
    width: 100%;
  }
  .cp-body-c3 .mvbtn a {
    font-size: 1em;
  }
}

.black-line1 {
  background-color: #000;
  color: #fff;
  padding: 1.5em 0;
  text-align: center;
}
.black-line1 h3 {
  font-size: 1.5em;
  font-weight: 400;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 750px) {
  .black-line1 h3 {
    font-size: 1.125em;
  }
}

.sect-hd2 {
  position: relative;
}
.sect-hd2:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: calc((100% - 1000px) / 2 + 12em);
  height: 100%;
  border-bottom: 1px solid #000;
}
.sect-hd2 h2 {
  width: 90%;
  margin: 0 auto 0.75em;
  padding: 1.5em 0 0.25em;
  font-size: 1.5em;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1064px) {
  .sect-hd2:before {
    width: 12em;
  }
}
@media screen and (max-width: 750px) {
  .sect-hd2 h2 {
    width: 100%;
    font-size: 1.25em;
  }
}

.cp-floor {
  display: flex;
  justify-content: space-between;
  width: 52.375em;
  margin: 2em auto 3em 0;
}
.cp-floor .left {
  width: 8.5em;
}
.cp-floor .left ul li:first-child {
  position: relative;
}
.cp-floor .left ul li:first-child::after {
  content: "";
  background-image: url(../images/syouryaku.png);
  background-size: cover;
  background-repeat: no-repeat;
  vertical-align: middle;
  position: absolute;
  z-index: 100;
  top: 30%;
  width: 100%;
  height: 100%;
}
.cp-floor .left ul a {
  display: block;
  background-color: #919ba5;
  color: #fff;
  padding: 1em 0.5em 4em;
  position: relative;
}
.cp-floor .left ul a:hover {
  opacity: 0.8;
}
.cp-floor .left ul a img {
  position: absolute;
  right: 0.5em;
  bottom: 0;
  width: 2.8125em;
  height: auto;
}
.cp-floor .left ul a.on {
  background-color: #22ca38;
}
.cp-floor .left ul a.on:after {
  content: "";
  display: block;
  position: absolute;
  left: calc(100% + 1.25em);
  border-style: solid;
  border-width: 0.625em 0 0.625em 1em;
  border-color: transparent transparent transparent #22ca38;
  transform: scale(1.2);
}
.cp-floor .right {
  width: 40.625em;
  background-color: #fff;
  padding: 0.9375em;
  border-radius: 0.875em;
}
.cp-floor .right .flr {
  height: 0;
  overflow: hidden;
}
.cp-floor .right .flr .img img {
  border-radius: 0.75em;
  display: block;
}
.cp-floor .right .flr.on {
  height: auto;
}
.cp-floor .right .text p {
  line-height: 1.8;
  font-size: 0.875em;
  padding: 1em 0;
}
.cp-floor .right .slick-prev,
.cp-floor .right .slick-next {
  font-size: 1em;
  top: calc(50% - 1em);
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background: url(../images/arrow.svg) center center no-repeat;
  background-size: contain;
  z-index: 1;
}
.cp-floor .right .slick-prev:before,
.cp-floor .right .slick-next:before {
  display: none;
}
.cp-floor .right .slick-prev {
  left: 0.5em;
  transform: scale(-1, 1);
}
.cp-floor .right .slick-next {
  right: 0.5em;
  transform: scale(1, 1);
}
@media screen and (max-width: 750px) {
  .cp-floor {
    width: 100%;
  }
  .cp-floor .left {
    width: 18%;
  }
  .cp-floor .left ul a {
    padding: 0.5em 0.5em 3em;
    font-size: 0.75em;
  }
  .cp-floor .left ul a img {
    width: 2.5em;
  }
  .cp-floor .right {
    width: 75%;
    padding: 0.5em;
  }
  .cp-floor .right .text p {
    font-size: 0.8em;
  }
}

.cp-zero1 {
  display: flex;
  margin: 1em auto 2em 0;
  justify-content: center;
}
.cp-zero1 > li {
  padding: 1.5em 2em;
}
.cp-zero1 > li img {
  width: 13.125em;
}
@media screen and (max-width: 750px) {
  .cp-zero1 > li {
    width: 33.333333%;
    padding: 1em;
  }
  .cp-zero1 > li img {
    width: 100%;
  }
}

.cp-body-c4 {
  width: 90%;
  margin: 0 auto 4em;
}
.cp-body-c4 .hd {
  background-color: #000;
  color: #fff;
  padding: 1em 0;
  text-align: center;
  border-radius: 0.875em 0.875em 0 0;
}
.cp-body-c4 .hd h3 {
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 1.5em;
}
.cp-body-c4 .body {
  background-color: #fff;
  padding: 2em 3em;
  border-radius: 0 0 0.875em 0.875em;
}
.cp-body-c4 .body .cap1 {
  line-height: 1.8;
  font-size: 0.9375em;
}
.cp-body-c4 .body .tools {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #ccc;
  margin: 2em auto 0;
}
.cp-body-c4 .body .tools > div {
  width: 22.5em;
}
.cp-body-c4 .body .tools .img {
  border-bottom: 1px solid #ccc;
  margin-bottom: 0.75em;
}
.cp-body-c4 .body .tools .text {
  text-align: center;
}
.cp-body-c4 .body .tools .text h4 {
  letter-spacing: 0.15em;
  font-size: 1.25em;
  margin-bottom: 0.5em;
}
.cp-body-c4 .body .tools .text p {
  font-size: 0.875em;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .cp-body-c4 {
    width: 100%;
  }
  .cp-body-c4 .hd h3 {
    font-size: 1.25em;
  }
  .cp-body-c4 .body {
    padding: 1.5em;
  }
  .cp-body-c4 .body .tools {
    flex-wrap: wrap;
    justify-content: center;
  }
  .cp-body-c4 .body .tools > div {
    width: 70%;
  }
  .cp-body-c4 .body .tools .text p {
    font-size: 0.75em;
  }
}

.cp-faq {
  background-color: #fff;
  padding: 1.5em;
  border-radius: 0.875em;
}
.cp-faq + .cp-faq {
  margin-top: 1.5em;
}
.cp-faq .faq-q {
  display: flex;
  color: #000;
  position: relative;
}
.cp-faq .faq-q:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0.5em;
  width: 2em;
  height: 2em;
  background: url(../images/faq-icon1.png) center center no-repeat;
  background-size: 100%;
  transform: scale(1, -1);
  transition: 0.3s;
}
.cp-faq .faq-q .num {
  font-size: 2em;
  width: 3em;
  letter-spacing: 0.05em;
}
.cp-faq .faq-q .title {
  flex: 1;
  margin-top: 0.25em;
  font-size: 1.25em;
  padding-right: 3em;
}
.cp-faq .faq-q + div {
  max-height: 0;
  padding-left: 6em;
  overflow: hidden;
  transition: 0.3s;
  opacity: 0;
}
.cp-faq .faq-q + div p {
  font-size: 0.875em;
  line-height: 1.8;
}
.cp-faq .faq-q + div p + p {
  margin-top: 1em;
}
.cp-faq .faq-q.on:before {
  transform: scale(1, 1);
}
.cp-faq .faq-q.on + div {
  margin-top: 1em;
  max-height: 100em;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .cp-faq {
    padding: 1em;
  }
  .cp-faq .faq-q {
    align-items: center;
  }
  .cp-faq .faq-q:before {
    top: calc(50% - 0.75em);
    width: 1.5em;
    height: 1.5em;
  }
  .cp-faq .faq-q .num {
    font-size: 1.5em;
    width: 2em;
  }
  .cp-faq .faq-q .title {
    font-size: 1em;
  }
  .cp-faq .faq-q + div {
    padding-left: 0;
    font-size: 0.875em;
  }
}

.faq-more {
  display: block;
  background-color: #22ca38;
  color: #fff;
  text-align: center;
  width: 26em;
  margin: 1.5em auto;
  border-radius: 3em;
  font-size: 1.125em;
  letter-spacing: 0.1em;
  padding: 0.75em 0;
  position: relative;
}
.faq-more:before {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: calc(50% - 0.625em);
  width: 1.25em;
  height: 1.25em;
  background: url(../images/btn-icon1.png) center center no-repeat;
  background-size: contain;
}
.faq-more:hover {
  color: #fff;
}
.faq-more ~ div {
  display: none;
}
@media screen and (max-width: 750px) {
  .faq-more {
    font-size: 1em;
  }
}

.outline-table {
  border-collapse: collapse;
  margin: 2em auto 4em;
  border-top: 1px solid #ccc;
}
.outline-table tr {
  border-bottom: 1px solid #ccc;
}
.outline-table tr:nth-child(odd) {
  background-color: #f4f4f4;
}
.outline-table td {
  padding: 1.5em;
}
.outline-table td:first-child {
  white-space: nowrap;
  letter-spacing: 0.1em;
  vertical-align: middle;
}
.outline-table td:last-child p {
  font-size: 0.875em;
  line-height: 1.8;
}
.outline-table td:last-child p + p {
  margin-top: 1em;
}
.outline-table td:last-child p a {
  color: #009ee7;
}
@media screen and (max-width: 750px) {
  .outline-table td {
    padding: 1em;
    font-size: 0.875em;
  }
}

.to-tokyo {
  max-width: 1280px;
  margin: 4em auto;
  padding: 3em 0;
  background: url(../images/to-tokyo-bg.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
  color: #fff;
}
.to-tokyo h2 {
  text-shadow: 0 0 0.5em #000, 0 0 1em #000;
  font-size: 4em;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.25;
}
.to-tokyo .min {
  display: inline-block;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 0.125em 0.25em;
  font-size: 1.25em;
  font-weight: 400;
  letter-spacing: 0.15em;
}
.to-tokyo a {
  display: block;
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  text-align: center;
  width: 26em;
  margin: 1.5em auto 0;
  border-radius: 3em;
  font-size: 1.125em;
  letter-spacing: 0.1em;
  padding: 0.75em 0;
  position: relative;
}
.to-tokyo a:before {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: calc(50% - 0.625em);
  width: 1.25em;
  height: 1.25em;
  background: url(../images/btn-icon2.png) center center no-repeat;
  background-size: contain;
}
.to-tokyo a:hover {
  color: #fff;
}
@media screen and (max-width: 750px) {
  .to-tokyo h2 {
    font-size: 3.2em;
  }
  .to-tokyo a {
    font-size: 1em;
  }
}

.clogos {
  width: 84%;
  margin: 5em auto 3em;
}

.experiment-c1 {
  display: flex;
  margin: 2em auto 5em;
}
.experiment-c1 .img {
  width: 28.125em;
}
.experiment-c1 .text {
  padding-right: 3em;
  flex: 1;
}
.experiment-c1 .text p {
  line-height: 1.8;
}
.experiment-c1 .text p + p {
  margin-top: 1em;
}
@media screen and (max-width: 750px) {
  .experiment-c1 {
    flex-wrap: wrap;
    justify-content: center;
  }
  .experiment-c1 .img {
    width: 80%;
    margin-bottom: 1.5em;
  }
  .experiment-c1 .text {
    order: 2;
    flex: 1 0 auto;
    width: 100%;
    padding: 0;
  }
}

.form-kv {
  overflow: hidden;
  position: relative;
}
.form-kv .inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.form-kv .inner h1 {
  font-size: 2em;
  font-weight: 500;
  letter-spacing: 0.1em;
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding: 0 0.5em;
}
@media screen and (max-width: 750px) {
  .form-kv .bg {
    width: 200%;
    margin-left: -50%;
  }
  .form-kv .inner h1 {
    text-align: center;
    font-size: 1.5em;
  }
}

.form-body {
  margin: 5em auto;
}
.form-body .form-body-inner {
  max-width: 680px;
  margin: 0 auto;
}

.thanks {
  margin: 5em auto;
}
.thanks h2 {
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 1.5em;
  font-weight: 500;
  padding: 0.5em 0;
  width: 17em;
  margin: 0 auto;
}
.thanks .cap1 {
  margin: 0.5em auto 1.5em;
  font-size: 1.25em;
  text-align: center;
  letter-spacing: 0.1em;
}
.thanks .cap2 {
  margin: 3em auto;
  text-align: center;
  line-height: 1.8;
}
.thanks .otoiawase {
  max-width: 1064px;
  padding: 0 2em;
  margin: 3em auto 5em;
}
.thanks .otoiawase p {
  background-color: #fff;
  text-align: center;
  padding: 2em;
  line-height: 1.8;
  border-radius: 0.875em;
}
.thanks .otoiawase p a {
  color: #22ca38;
}

.award {
  position: relative;
  height: 220px;
  padding-top: 1em;
  width: 80%;
}
.award img {
  padding-left: 1em;
}
.award p {
  font-weight: bold;
}
.award__logo {
  font-weight: 700;
  padding-left: 1em;
}

.img-c1 {
  position: relative;
}
.img-c1 p {
  position: absolute;
  top: 1%;
  left: 3%;
}

.bnr__title {
  font-size: 24px;
  border-left: 5px solid;
  padding-left: 0.5em;
}

.bnr__workdl {
  width: 100%;
  display: flex;
  margin-top: 12px;
  margin-bottom: 64px;
  margin-right: auto;
  margin-left: auto;
  padding: 3em 0 0 0;
  border-radius: 8px;
}
.bnr__workdl__img {
  width: 30%;
}
.bnr__workdl__img img {
  border-radius: 0.875em;
  box-shadow: 1.25em 1.25em 0 #f4f4f4;
}
.bnr__workdl__text {
  width: 70%;
}
.bnr__workdl__text p {
  padding-left: 3em;
}

.dlbtn {
  margin: 3em auto 4em;
}
.dlbtn a {
  display: block;
  background-color: #22ca38;
  color: #fff;
  text-align: center;
  max-width: 26em;
  width: 100%;
  margin: 0 auto;
  border-radius: 3em;
  font-size: 1.125em;
  letter-spacing: 0.1em;
  padding: 0.75em 0;
  position: relative;
}
.dlbtn a:before {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: calc(50% - 0.625em);
  width: 1.25em;
  height: 1.25em;
  background: url(../images/btn-icon1.png) center center no-repeat;
  background-size: contain;
}

.bnr__dlbtn {
  margin: 3em auto 4em;
}
.bnr__dlbtn a {
  display: block;
  background-color: #ff7379;
  color: #fff;
  text-align: center;
  max-width: 26em;
  width: 100%;
  margin: 0 auto;
  border-radius: 3em;
  font-size: 1.125em;
  letter-spacing: 0.1em;
  padding: 0.75em 0;
  position: relative;
}
.bnr__dlbtn a:before {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: calc(50% - 0.625em);
  width: 1.25em;
  height: 1.25em;
  background: url(../images/btn-icon3.png) center center no-repeat;
  background-size: contain;
}

@media screen and (max-width: 750px) {
  .bnr__workdl {
    flex-direction: column;
  }
  .bnr__workdl__img {
    width: 100%;
    padding-right: 1.25em;
  }
  .bnr__workdl__text {
    padding-left: 0;
    padding-top: 2em;
    width: 100%;
    text-align: justify;
  }
  .bnr__workdl__text p {
    padding-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .p-page-top {
    bottom: 14vw;
  }
}
@media screen and (max-width: 600px) {
  .p-page-top {
    left: 85%;
  }

.mContactpanel {
display: none;
}
.mContactpanel:is(._show) {
    opacity: 0;
}
}
#headBreadcrumb {
  display: none !important;
}
/*# sourceMappingURL=style.css.map */