/*******************************************************************************************

	- /oem/

*******************************************************************************************/
main.oem {
  width: 100%;
  padding: 0;
}
main.oem article {
  overflow: hidden;
}
main.oem img {
  max-width: 100%;
}
main.oem section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  width: 100%;
}
main.oem section > h2 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 2rem;
}
main.oem section > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
main.oem .contact {
  padding: 3rem 0 2rem;
}
main.oem .contact > h2 {
  font-size: 26px;
}
main.oem .contact > h2 > img {
  max-width: 609px;
  margin-bottom: 2rem;
}
main.oem .contact > ul {
  max-width: 1200px;
  width: 100%;
}
main.oem .contact > ul li {
  width: calc(50% - 12px);
}
main.oem .contact .btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  background: #364db0;
  color: #fff;
  padding: 20px;
  margin-bottom: 15px;
  -webkit-transition: 0.15s ease-in-out;
  transition: 0.15s ease-in-out;
  border-radius: 15px;
  text-decoration: none;
  line-height: 2;
  font-size: 23px;
  min-height: 50px;
  position: relative;
}
main.oem .contact .btn.tel {
  background: #ffc200;
  color: #111;
}
main.oem .contact .btn.tel i {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: auto;
  padding-right: 0.8rem;
}
main.oem .contact .btn.tel b {
  font-size: 32px;
  font-weight: bold;
  display: block;
  margin-bottom: 0.5rem;
}
main.oem .contact .btn.tel span {
  font-size: 13px;
  line-height: 1;
}
main.oem .contact .btn.tel:after {
  display: none !important;
}
main.oem .contact .btn:hover {
  opacity: 0.7;
}
main.oem .contact .btn:after {
  content: "";
  position: relative;
  display: inline-block;
  width: 1.5rem;
  height: 2rem;
  background: url(../img/oem/cmd/icon_arrow.png) no-repeat left center;
  background-size: contain;
  margin-left: 3rem;
  vertical-align: middle;
}
main.oem .contact.second, main.oem .contact.third {
  padding: 6rem 0 5rem;
}
main.oem .contact.second {
  background: url(../img/oem/contact_01.jpg) no-repeat top center;
  background-size: cover;
}
main.oem .contact.third {
  background: url(../img/oem/contact_02.jpg) no-repeat top center;
  background-size: cover;
}
main.oem .bg-orange {
  background: #FFF9E7;
}
main.oem .main-visual {
  height: 700px;
  overflow: hidden;
  background-size: cover !important;
  position: relative;
}
main.oem .main-visual > h1 {
  font-style: normal;
  font-weight: bold;
  color: #eee;
  font-size: 11vmin;
  letter-spacing: 0.03em;
  line-height: 1;
  text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.8);
  margin-bottom: 1px;
}
main.oem .main-visual .pankuzu, main.oem .main-visual .logo, main.oem .main-visual .logo + p {
  z-index: 11;
}
main.oem .main-visual .pankuzu {
  position: absolute;
  top: 0;
  left: 0;
}
main.oem .main-visual .logo {
  max-width: 918px;
  margin: 0 0 2rem;
}
main.oem .main-visual .logo + p {
  max-width: 1000px;
  text-align: left;
  line-height: 2;
}
main.oem .main-visual .logo + p b {
  display: block;
  font-size: 30px;
  text-align: center;
}
main.oem .main-visual .main_img {
  z-index: 10;
  opacity: 0;
  width: 100%;
  height: 700px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-animation: anime 24s 0s ease-in infinite;
  animation: anime 24s 0s ease-in infinite;
}
main.oem .main-visual .main_img:nth-of-type(2) {
  -webkit-animation-delay: 6s;
  animation-delay: 6s;
}
main.oem .main-visual .main_img:nth-of-type(3) {
  -webkit-animation-delay: 12s;
  animation-delay: 12s;
}
main.oem .main-visual .main_img:nth-of-type(4) {
  -webkit-animation-delay: 18s;
  animation-delay: 18s;
}
main.oem .cont-overview {
  padding: 4rem 0 3rem;
}
main.oem .cont-overview > h2 {
  max-width: 615px;
}
main.oem .cont-overview > ul {
  max-width: 790px;
  width: 100%;
}
main.oem .cont-overview > ul li {
  width: calc(50% - 15px);
}
main.oem .cont-feature > ul {
  width: 100%;
  max-width: 1200px;
}
main.oem .cont-feature > ul li {
  width: calc(50% - 47px);
  text-align: left;
  position: relative;
}
main.oem .cont-feature > ul li:before {
  content: "";
  position: absolute;
  z-index: -1;
}
main.oem .cont-feature > ul li:nth-of-type(1) {
  max-width: 470px;
}
main.oem .cont-feature > ul li:nth-of-type(1):before {
  width: 906px;
  height: 405px;
  background: rgb(254, 230, 135);
  background: -webkit-linear-gradient(45deg, rgb(254, 230, 135) 0%, rgb(254, 217, 74) 100%);
  background: linear-gradient(45deg, rgb(254, 230, 135) 0%, rgb(254, 217, 74) 100%);
  top: 0;
  right: 0;
  -webkit-transform: translateX(67px);
          transform: translateX(67px);
}
main.oem .cont-feature > ul li:nth-of-type(2) {
  margin-top: 3rem;
}
main.oem .cont-feature > ul li:nth-of-type(2):before {
  width: 475px;
  height: 465px;
  background: #fff1ba;
  bottom: -3rem;
  left: 0;
  -webkit-transform: translateX(422px);
          transform: translateX(422px);
}
main.oem .cont-feature > ul li h2 {
  width: 600px;
  margin: 3rem 0 2.5rem;
}
main.oem .cont-feature > ul li p {
  font-size: 20px;
  line-height: 2;
  font-weight: bold;
}
main.oem .cont-feature .bg-img {
  background: url(../img/oem/feature01_bg.jpg) no-repeat top left;
  background-size: cover;
  width: 100%;
  min-height: 590px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
  z-index: -2;
  -webkit-transform: translateY(-47px);
          transform: translateY(-47px);
  opacity: 0.8;
}
main.oem .cont-feature .bg-img h3 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 1rem;
}
main.oem .cont-feature .bg-img h3, main.oem .cont-feature .bg-img p {
  width: 100%;
  max-width: 1000px;
  line-height: 2;
}
main.oem .cont-feature:nth-child(2n+1) > ul {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
main.oem .cont-feature:nth-child(2n+1) > ul li:nth-of-type(1):before {
  -webkit-transform: translateX(350px);
          transform: translateX(350px);
}
main.oem .cont-feature:nth-child(2n+1) > ul li:nth-of-type(2):before {
  -webkit-transform: translateX(-350px);
          transform: translateX(-350px);
}
main.oem .cont-feature:nth-child(2n+1) > ul li h2 {
  -webkit-transform: translateX(-120px) !important;
          transform: translateX(-120px) !important;
}
main.oem #feature01 {
  padding: 4rem 0 0;
}
main.oem #feature01 .datafloat_block {
  width: 100%;
  max-width: 1200px;
  -webkit-transform: translateY(-7rem) !important;
          transform: translateY(-7rem) !important;
}
main.oem #feature01 .list-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 4rem 0;
  margin-bottom: 4rem;
}
main.oem #feature01 .list-box h4 {
  font-size: 23px;
  font-weight: bold;
  margin-bottom: 3rem;
}
main.oem #feature01 .list-box p {
  -webkit-columns: 3;
     -moz-columns: 3;
          columns: 3;
  -webkit-column-gap: 3em;
     -moz-column-gap: 3em;
          column-gap: 3em;
  max-width: 1000px;
  text-align: left;
  margin: 0 auto;
  line-height: 2;
}
main.oem #feature01 .lecturer {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
main.oem #feature01 .lecturer h3 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 3rem;
}
main.oem #feature01 .lecturer p {
  text-align: left;
  margin-bottom: 3rem;
  line-height: 2;
}
main.oem #feature01 .lecturer ul {
  width: 100%;
  max-width: 840px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
}
main.oem #feature01 .lecturer ul li {
  width: calc(25% - 23px);
  text-align: left;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
main.oem #feature01 .lecturer ul li > img {
  display: block;
  border: 4px solid #FFCA00;
  border-radius: 90px;
  overflow: hidden;
  margin-bottom: 15px;
}
main.oem #feature02 {
  padding: 0;
}
main.oem #feature02 .bg-img {
  background: url(../img/oem/feature02_bg.jpg) no-repeat top left;
}
main.oem #feature03 {
  padding: 2rem 0 0;
}
main.oem #feature03 .bg-img {
  background: url(../img/oem/feature03_bg.jpg) no-repeat top left;
}
main.oem #feature03 .bg-img h3, main.oem #feature03 .bg-img p {
  max-width: 500px;
}
main.oem #feature04 {
  padding: 3rem 0 4rem;
}
main.oem #feature04 > ul {
  background: url(../img/oem/feature04_bg.png) no-repeat bottom right;
  background-size: 827px;
  margin-bottom: 5rem;
}
main.oem #feature04 > ul li:nth-of-type(2) {
  width: 308px;
  margin: 0 0 0 3rem;
  -webkit-transform: translateY(-30px) !important;
          transform: translateY(-30px) !important;
}
main.oem #feature04 > ul li:nth-of-type(2):before {
  bottom: -1rem;
  -webkit-transform: translateX(-400px);
          transform: translateX(-400px);
}
main.oem #feature04 .ex h3 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 3rem;
}
main.oem #feature04 .ex h3 + picture {
  width: 100%;
  max-width: 1010px;
  margin-bottom: 3rem;
  display: block;
}
main.oem #feature04 .ex ul {
  width: 100%;
  max-width: 1000px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
}
main.oem #feature04 .ex ul li {
  width: calc(25% - 23px);
  text-align: left;
  position: relative;
}
main.oem .cont-works {
  padding: 4rem 0;
}
main.oem .cont-works > h2 {
  margin-bottom: 5rem;
}
main.oem .cont-works > ul {
  width: 100%;
  max-width: 1000px;
}
main.oem .cont-works > ul li {
  width: calc(50% - 30px);
  text-align: left;
  background: #FFF9E7;
  position: relative;
}
main.oem .cont-works > ul li:nth-last-of-type(1) {
  margin-left: 15px;
}
main.oem .cont-works h3 {
  font-weight: bold;
  position: absolute;
  padding: 1rem;
  background-color: #ffdd80;
  top: -1.5rem;
  left: 0;
  z-index: 1;
  -webkit-transform: translateX(-15px);
          transform: translateX(-15px);
}
main.oem .cont-works h3:before {
  content: "";
  position: absolute;
  top: 100%;
  border-style: solid;
  border-color: transparent;
  left: 0;
  border-width: 0 15px 15px 0;
  border-right-color: #ffc200;
}
main.oem .cont-works h4 {
  font-weight: bold;
  line-height: 1.5;
  font-size: 20px;
  margin-bottom: 1rem;
}
main.oem .cont-works .text {
  padding: 3rem;
}
main.oem .cont-flow {
  padding: 4rem 0;
}
main.oem .cont-flow > h2 {
  max-width: 505px;
}
main.oem .cont-flow > h2 img {
  margin-bottom: 1rem;
}
main.oem .cont-flow > ul {
  text-align: left;
  width: 100%;
  max-width: 1000px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
main.oem .cont-flow > ul li {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  position: relative;
  width: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
main.oem .cont-flow > ul li + li {
  margin-top: 40px;
}
main.oem .cont-flow > ul li + li:after {
  background: #ddd;
  content: "";
  height: 40px;
  position: absolute;
  top: -40px;
  left: 17%;
  width: 2px;
}
main.oem .cont-flow > ul li:nth-last-of-type(1) {
  background: none;
}
main.oem .cont-flow > ul li:nth-last-of-type(1) h3:after {
  display: none;
}
main.oem .cont-flow h3 {
  background: #ffdd80;
  padding: 25px;
  position: relative;
  max-width: 285px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
main.oem .cont-flow h3:after {
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #ffdd80;
  content: "";
  position: absolute;
  top: 50%;
  right: -10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
main.oem .cont-flow p {
  width: 650px;
  margin: 0 45px;
}
main.oem .cont-flow p span {
  display: block;
  font-size: 14px;
}
main.oem .cont-faq {
  padding: 4rem 0;
}
main.oem .cont-faq > h2 {
  margin-bottom: 4rem;
}
main.oem .cont-faq dl {
  text-align: left;
  width: 100%;
  max-width: 1000px;
}
main.oem .cont-faq dl dt {
  font-weight: bold;
  margin-bottom: 10px;
  padding: 10px 0 15px 70px;
  font-size: 18px;
  background: url(../img/oem/cmd/icon_q.svg) no-repeat top left;
  background-size: 3rem;
}
main.oem .cont-faq dl dd {
  margin-bottom: 15px;
  padding: 10px 0 25px 70px;
  background: url(../img/oem/cmd/icon_a.svg) no-repeat top left;
  background-size: 3rem;
  border-bottom: 1px solid #ddd;
  font-size: 16px;
}
main.oem .cont-faq dl dd:nth-last-of-type(1) {
  border: none;
  margin: 0;
}
main.oem .cont-movie {
  padding: 4rem 0;
}
main.oem .cont-movie h2, main.oem .cont-movie h3 {
  font-weight: bold;
}
main.oem .cont-movie h2 {
  font-size: 30px;
  margin-bottom: 2rem;
}
main.oem .cont-movie h2:before {
  content: "";
  position: relative;
  display: inline-block;
  width: 2.5rem;
  height: 2rem;
  background: url(../img/oem/cmd/video-solid.svg) no-repeat left center;
  background-size: 100%;
  margin-right: 1rem;
  vertical-align: middle;
}
main.oem .cont-movie h3 {
  font-size: 20px;
  margin-bottom: 1rem;
}
main.oem .cont-movie > ul {
  width: 100%;
  max-width: 1200px;
}
main.oem .cont-movie > ul li {
  text-align: left;
}
main.oem .cont-movie > ul li p {
  line-height: 2;
}
main.oem .cont-movie > ul li:nth-of-type(1) {
  max-width: 580px;
}
main.oem .cont-movie > ul li:nth-of-type(2) {
  max-width: 540px;
  width: 100%;
}
main.oem .cont-movie .movie {
  position: relative;
  padding: 0 0 56.25% 0;
  height: 0;
  overflow: hidden;
}
main.oem .cont-movie .movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
main.oem .cont_form {
  padding: 4rem 0 0;
  text-align: left;
}
main.oem .cont_form > h2 {
  max-width: 678px;
  margin-bottom: 2rem;
}
main.oem .cont_form ._submit {
  margin: 60px 0 0;
}
main.oem .js-trigger {
  opacity: 0;
}
@media only screen and (min-width: 750px) {
  main.oem .is-show.fade-in-right {
    -webkit-animation: fade-in-right 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) both;
    animation: fade-in-right 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  }
  main.oem .is-show.fade-in-right-2 {
    -webkit-animation: fade-in-right 2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
    animation: fade-in-right 2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  }
  main.oem .is-show.fade-in-left {
    -webkit-animation: fade-in-left 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) both;
    animation: fade-in-left 0.65s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  }
  main.oem .is-show.fade-in-left-2 {
    -webkit-animation: fade-in-left 2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
    animation: fade-in-left 2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  }
}
@media only screen and (max-width: 750px) {
  main.oem section > h2 {
    font-size: 26px;
    margin-bottom: 2rem;
  }
  main.oem section > ul li {
    width: 100% !important;
  }
  main.oem .contact {
    padding: 3rem 0 2rem !important;
  }
  main.oem .contact > h2 {
    font-size: 18px;
    max-width: 80%;
  }
  main.oem .contact > h2 > img {
    max-width: 100%;
  }
  main.oem .contact > ul {
    width: 90%;
  }
  main.oem .contact .btn {
    font-size: 20px;
  }
  main.oem .contact .btn:after {
    margin-left: 1.5rem;
  }
  main.oem .contact .btn.tel b {
    font-size: 26px;
  }
  main.oem .contact.second {
    background: url(../img/oem/contact_01_sp.jpg) no-repeat top center;
    background-size: cover;
  }
  main.oem .contact.third {
    background: url(../img/oem/contact_02_sp.jpg) no-repeat top center;
    background-size: cover;
  }
  main.oem .main-visual {
    height: auto;
  }
  main.oem .main-visual .logo {
    max-width: 100%;
    margin: 4rem 0 0;
  }
  main.oem .main-visual .logo + p {
    max-width: 80%;
    margin-bottom: 2rem;
  }
  main.oem .main-visual .logo + p b {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 1rem;
  }
  main.oem .main-visual .main_img {
    background: url(../img/oem/main_bg01_sp.jpg) no-repeat top center !important;
    background-size: cover;
    -webkit-animation: none;
            animation: none;
    opacity: 1;
    display: block;
    height: 100%;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  main.oem .main-visual:nth-of-type(2) ~ main.oem .main-visual:nth-of-type(4) {
    display: none;
  }
  main.oem .cont-feature > ul {
    max-width: 100%;
  }
  main.oem .cont-feature > ul li:before {
    content: "";
    position: absolute;
    z-index: -1;
  }
  main.oem .cont-feature > ul li:nth-of-type(1) {
    max-width: 100%;
  }
  main.oem .cont-feature > ul li:nth-of-type(1) > div {
    width: 80%;
    margin: 0 auto;
  }
  main.oem .cont-feature > ul li:nth-of-type(1):before {
    width: 100%;
    height: 125%;
    -webkit-transform: translateX(-5%);
            transform: translateX(-5%);
  }
  main.oem .cont-feature > ul li:nth-of-type(2) {
    width: 70% !important;
    margin: 10% 5% 0;
  }
  main.oem .cont-feature > ul li:nth-of-type(2):before {
    width: 80%;
    height: 80%;
    -webkit-transform: translateX(60%);
            transform: translateX(60%);
  }
  main.oem .cont-feature > ul li h2 {
    max-width: 100%;
  }
  main.oem .cont-feature > ul li p {
    font-size: 18px;
    line-height: 1.8;
  }
  main.oem .cont-feature .bg-img {
    background: url(../img/oem/feature01_bg_sp.jpg) no-repeat top left;
    background-size: cover;
    min-height: 40rem;
  }
  main.oem .cont-feature .bg-img h3 {
    font-size: 24px;
    line-height: 1.5;
  }
  main.oem .cont-feature .bg-img h3, main.oem .cont-feature .bg-img p {
    max-width: 80% !important;
  }
  main.oem .cont-feature:nth-child(2n+1) > ul li:nth-of-type(1):before {
    -webkit-transform: translateX(5%);
            transform: translateX(5%);
  }
  main.oem .cont-feature:nth-child(2n+1) > ul li:nth-of-type(2):before {
    left: inherit;
    right: 0;
    -webkit-transform: translateX(-60%);
            transform: translateX(-60%);
  }
  main.oem .cont-feature:nth-child(2n+1) > ul li h2 {
    -webkit-transform: translateX(0) !important;
            transform: translateX(0) !important;
  }
  main.oem #feature01 {
    padding: 3rem 0 0;
  }
  main.oem #feature01 .datafloat_block {
    max-width: 100%;
  }
  main.oem #feature01 .list-box {
    max-width: 90%;
    margin: 0 auto 4rem;
    padding: 2.5rem 0;
  }
  main.oem #feature01 .list-box h4 {
    margin-bottom: 2.5rem;
  }
  main.oem #feature01 .list-box p {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
    max-width: 80%;
    width: 100%;
  }
  main.oem #feature01 .lecturer {
    max-width: 80%;
  }
  main.oem #feature01 .lecturer h3 {
    font-size: 24px;
    text-align: left;
    line-height: 1.5;
    margin-bottom: 2rem;
  }
  main.oem #feature01 .lecturer ul {
    max-width: 100%;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  main.oem #feature01 .lecturer ul li {
    width: calc(50% - 7px);
    margin-bottom: 1.5rem;
  }
  main.oem #feature02 .bg-img {
    background: url(../img/oem/feature02_bg_sp.jpg) no-repeat top left;
  }
  main.oem #feature03 {
    padding: 0;
  }
  main.oem #feature04 {
    padding: 0 0 4rem;
  }
  main.oem #feature04 > ul {
    background: url(../img/oem/feature04_bg_sp.png) no-repeat bottom center;
    background-size: 344px;
    padding-bottom: 360px;
    margin-bottom: 4rem;
  }
  main.oem #feature04 > ul li:nth-of-type(2) {
    margin: 0 auto;
    -webkit-transform: translateY(10%) !important;
            transform: translateY(10%) !important;
  }
  main.oem #feature04 > ul li:nth-of-type(2) > img {
    width: 50% !important;
    margin: 0 auto;
    display: block;
  }
  main.oem #feature04 > ul li:nth-of-type(2):before {
    bottom: -20%;
    -webkit-transform: translateX(20%);
            transform: translateX(20%);
    right: 50%;
  }
  main.oem #feature04 .ex h3 {
    font-size: 24px;
    margin-bottom: 2.5rem;
  }
  main.oem #feature04 .ex h3 + picture {
    max-width: 90%;
    margin: 0 auto 3rem;
  }
  main.oem #feature04 .ex ul {
    max-width: 90%;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  main.oem #feature04 .ex ul li {
    width: calc(50% - 9px);
    margin-bottom: 1.5rem;
  }
  main.oem .cont-overview {
    padding: 2rem 0 1.5rem;
  }
  main.oem .cont-overview > ul {
    max-width: 80%;
    width: 100%;
  }
  main.oem .cont-works {
    padding: 3rem 0;
  }
  main.oem .cont-works > h2 {
    margin-bottom: 6rem;
  }
  main.oem .cont-works > ul {
    width: 100%;
    max-width: 90%;
  }
  main.oem .cont-works > ul li {
    margin-left: 1rem;
  }
  main.oem .cont-works > ul li img {
    width: 100%;
  }
  main.oem .cont-works > ul li:nth-last-of-type(1) {
    margin-top: 5rem;
  }
  main.oem .cont-works h3 {
    top: -3.5rem;
  }
  main.oem .cont-works .text {
    padding: 1.5rem;
  }
  main.oem .cont-flow {
    padding: 3rem 0;
  }
  main.oem .cont-flow > h2 {
    max-width: 80%;
    width: 100%;
  }
  main.oem .cont-flow > ul {
    max-width: 90%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  main.oem .cont-flow > ul li {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  main.oem .cont-flow > ul li + li {
    margin-top: 0;
  }
  main.oem .cont-flow > ul li + li:after {
    display: none;
  }
  main.oem .cont-flow h3 {
    max-width: 100%;
    width: 100%;
    display: block;
  }
  main.oem .cont-flow h3 > img {
    max-width: 70% !important;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  main.oem .cont-flow h3:after {
    border-width: 12px 14px 0 14px;
    border-color: #ffdd80 transparent transparent transparent;
    top: calc(100% + 6px);
    right: 50%;
    -webkit-transform: translate(50%, -50%);
            transform: translate(50%, -50%);
  }
  main.oem .cont-flow p {
    width: 100%;
    margin: 1.5rem;
  }
  main.oem .cont-faq {
    padding: 3rem 0;
  }
  main.oem .cont-faq > h2 {
    margin-bottom: 3rem;
  }
  main.oem .cont-faq dl {
    text-align: left;
    width: 100%;
    max-width: 90%;
  }
  main.oem .cont-movie {
    padding: 3rem 0;
  }
  main.oem .cont-movie h2 {
    line-height: 1.5;
    font-size: 24px;
  }
  main.oem .cont-movie > ul {
    max-width: 90%;
  }
  main.oem .cont-movie > ul li {
    text-align: left;
    max-width: 100% !important;
  }
  main.oem .cont-movie > ul li p {
    margin-bottom: 1rem;
  }
  main.oem .cont_form {
    padding: 4rem 0 0;
  }
  main.oem .cont_form > h2 {
    max-width: 80%;
    margin-bottom: 2rem;
  }
  main.oem .cont_form ._submit {
    margin: 2rem 0 0;
  }
  main.oem .js-trigger {
    opacity: 1;
  }
}
@keyframes anime {
  0% {
    opacity: 0;
  }
  24% {
    opacity: 1;
  }
  31% {
    opacity: 1;
  }
  37% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
    z-index: 9;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes anime {
  0% {
    opacity: 0;
  }
  24% {
    opacity: 1;
  }
  31% {
    opacity: 1;
  }
  37% {
    opacity: 0;
    -webkit-transform: scale(1);
    z-index: 9;
  }
  100% {
    opacity: 0;
  }
}
main.oem {
  /* ----------------------------------------------
   * Generated by Animista on 2020-9-17 13:20:14
   * Licensed under FreeBSD License.
   * See http://animista.net/license for more info.
   * w: http://animista.net, t: @cssanimista
   * ---------------------------------------------- */
  /**
   * ----------------------------------------
   * animation fade-in-right
   * ----------------------------------------
   */
}
@-webkit-keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
main.oem {
  /**
   * ----------------------------------------
   * animation fade-in-left
   * ----------------------------------------
   */
}
@-webkit-keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-50px);
    transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-50px);
    transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

/* --- /oem/confirm/ （旧 contact 確認画面に準拠） --- */
main.oem-confirm h1 {
  font-size: 30px;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
  margin: 2rem 0 70px;
}
main.oem-confirm h1 i {
  font-size: 41px;
  position: relative;
  top: 2px;
  color: #ffca00;
}
main.oem-confirm #contact {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  padding: 0 1rem;
}

main.oem-confirm--empty .oem-confirm-inner {
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: 3rem 1rem 5rem;
  text-align: center;
}
main.oem-confirm--empty .oem-confirm-lead {
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 2rem;
  color: #333;
}
main.oem-confirm-backlink {
  display: inline-block;
  padding: 0.85rem 2rem;
  border-radius: 999px;
  background: #364db0;
  color: #fff !important;
  font-weight: 700;
  text-decoration: none;
}
main.oem-confirm-backlink:hover {
  opacity: 0.85;
  color: #fff !important;
}
