/****************************
variable
*****************************/
/*
* Roboto *
100 thin
300 light
400 regular
500 medium
700 bold
900 black
---
* Roboto Condensed *
300 light
400 regular
700 bold
*/
/****************************
mixin
*****************************/
/********************************************************
index
**********************************************************/
/*

- base
- responsive
- utility

- common elements
- header
- footer
- menuBox
- content

- contents - home
- home-kv
- home-vision
- home-service
- home-products
- home-ph
- home-news

- contents - page module
- page module

- contents - company
- company index
- company page common
- company president
- company staff
- company profile
- company philosophy
- company access

- contents - service
- service index
- service page common
- service staffing

- contents - products
- products index
- products page common
- products page leap-work
- products page imatch
- products page rakuden
- products page go-app
- products page wp-app
- products page wp-app-lp
- products page smart-speaker
- products page promon

- contents - case
- case index
- case page common

- contents - recruit
- recruit index
- recruit page common
- recruit about
- recruit vision
- recruit guideline

- contents - privacy
- privacy index

- contents - contact
- contact index
- contact form error

- contents - news
- news index
- news page

*/
/********************************************************
base
**********************************************************/
* {
  cursor: auto !important;
}

/****************************
responsive
*****************************/
.pc {
  display: none !important;
}

/****************************
utility
*****************************/
.u-ttl01 .u-ttl01En,
.u-ttl01 .u-ttl01Ja {
  margin-left: 15px;
  margin-right: 15px;
}
.u-ttl01 .u-ttl01En {
  font-size: 27px;
  line-height: 1.2;
  letter-spacing: 0.125em;
}
.u-ttl01 .u-ttl01Ja {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.075em;
}

.u-ttl02 .u-ttl02En {
  font-size: 21px;
  line-height: 1.5;
}
.u-ttl02 .u-ttl02Ja {
  font-size: 10px;
  line-height: 1.4;
}

.u-copy01 {
  font-size: 16px;
  line-height: 1.8;
}

.u-commonTxt h2 {
  margin-top: 1em;
}

.u-text24 {
  font-size: 20px;
  line-height: 1.5;
}

.u-text21 {
  font-size: 18px;
  line-height: 1.8;
}

.u-text18 {
  font-size: 16px;
  line-height: 1.8;
}

.u-text15 {
  font-size: 13px;
  line-height: 1.8;
}

.u-text14 {
  font-size: 12px;
  line-height: 1.7;
}

.u-text13 {
  font-size: 11px;
  line-height: 1.6;
}

.u-link01 {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.u-link01:hover {
  opacity: 1;
  border-bottom: #2775f6 1px solid;
}

.u-linkMore {
  font-size: 15px;
}
.u-linkMore a {
  padding-right: 32px;
}
.u-linkMore a span:before {
  top: 7px;
  right: -20px;
  width: 13px;
}
.u-linkMore a span:after {
  top: 1px;
  right: -14px;
  height: 13px;
}

.footer {
  padding: 15px 0;
}
.footer li {
  width: 100%;
}
.footer li a {
  text-align: center;
}
.footer ul {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
  text-align: center;
}
.footer .content__inner {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
}
.footer p {
  text-align: center;
  width: 100%;
  padding-top: 20px;
}

.u-btn {
  font-size: 14px;
  letter-spacing: 0.2em;
}
.u-btn a {
  padding: 14px;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.u-btn.u-btnBlack a:hover {
  background: transparent;
  color: #1b1d1f;
}
.u-btn.u-btnWhite a:hover {
  background: transparent;
  color: #fff;
}

.u-iconPlus:before, .u-iconPlus:after {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.u-iconPlus:before {
  top: 1px;
  right: 16px;
  height: 13px;
}
.u-iconPlus:after {
  top: 7px;
  right: 10px;
  width: 13px;
}

.u-btn a:hover .u-iconPlusWhite:before, .u-btn a:hover .u-iconPlusWhite:after {
  background: #fff;
}
.u-btn a:hover .u-iconPlusBlack:before, .u-btn a:hover .u-iconPlusBlack:after {
  background: #1b1d1f;
}

.u-table01 tr th,
.u-table01 tr td {
  padding: 8px;
}

.u-snsList li {
  width: 32px;
  height: 32px;
  margin-right: 15px;
}
.u-snsList li:last-child {
  margin-right: 0;
}
.u-snsList li:nth-child(1) a:hover {
  background: #fff;
}
.u-snsList li:nth-child(2) a:hover {
  background: #fff;
}
.u-snsList li:nth-child(3) a:hover {
  background: #fff;
}
.u-snsList li a {
  width: 32px;
  height: 32px;
  -webkit-border-radius: 16px;
     -moz-border-radius: 16px;
          border-radius: 16px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.u-snsList li a img {
  margin-top: 6px;
  width: 18px;
  height: auto;
}

/********************************************************
common elements
**********************************************************/
.is_login_user header {
  top: 46px !important;
}
.is_login_user .content {
  padding-top: 126px !important;
}
.is_login_user .menuBox {
  top: 46px !important;
}
.is_login_user #wpadminbar {
  position: fixed;
}

/****************************
header
*****************************/
header {
  height: 50px;
}
header .header__inner {
  margin: 0 15px;
}
header.header--white .header__logo img {
  -webkit-filter: invert(1);
          filter: invert(1);
}
header.header--white.js-active .header__logo img {
  -webkit-filter: invert(0);
          filter: invert(0);
}
header.header--white.js-active .search .search__container input[type=text] {
  border-color: #fff;
  color: #fff;
}
header.header--white.js-active .search .search__container span {
  -webkit-filter: invert(1);
          filter: invert(1);
}
header.header--white.js-active .lang ul li.active a:before {
  background-color: #fff;
}
header.header--white.js-active .lang ul li a,
header.header--white.js-active .lang ul li p {
  color: #fff;
}

.header__logo {
  width: 100px;
  margin-top: 20px;
}
.header__logo .pc {
  display: none;
}
.header__logo .sp {
  display: block;
}

.home header {
  background: rgba(27, 29, 31, 0);
}
.home header.js-active {
  background: rgba(27, 29, 31, 0.95);
}
.home .header__menu span {
  background: #fff;
}
.home .search .search__container input[type=text] {
  border-color: #fff;
  color: #fff;
}
.home .search .search__container span {
  -webkit-filter: invert(1);
          filter: invert(1);
}
.home .lang ul li.active a:before {
  background-color: #fff;
}
.home .lang ul li a,
.home .lang ul li p {
  color: #fff;
}

.search {
  margin-right: 5px;
  width: -webkit-calc(100% - 200px);
  width: -moz-calc(100% - 200px);
  width: calc(100% - 200px);
}
.search .search__container {
  margin-top: 2px;
}
.search .search__container input[type=text] {
  width: -webkit-calc(100% - 34px);
  width: -moz-calc(100% - 34px);
  width: calc(100% - 34px);
}
.search .search__container input[type=submit] {
  width: 8px;
}

.lang {
  margin-right: 23px;
  margin-top: 12px;
  width: 65px;
}
.lang.en {
  margin-top: 14px;
}
.lang ul li a,
.lang ul li p {
  font-size: 12px;
}

.header__menu {
  width: 20px;
  height: 20px;
  margin: 15px 0 0 0;
}
.header__menu a {
  width: 20px;
  height: 20px;
}
.header__menu a span {
  width: 100%;
  height: 2px;
  left: 0;
}
.header__menu a span.header__menuBd--upper {
  top: 5px;
}
.header__menu a span.header__menuBd--bottom {
  top: 13px;
}

.menuToggler {
  width: 28px;
  right: 15px;
  top: 18px;
}
.home .menuToggler::before, .home .menuToggler::after {
  background-color: #fff;
}
.is_login_user .menuToggler {
  top: 64px;
}

/****************************
footer
*****************************/
footer {
  min-width: initial;
  height: auto;
  margin-top: 30px;
}
footer.mt_0 {
  margin-top: 0;
}

.footer__map {
  width: 100%;
  height: 180px;
  float: none;
  background: url(./../images/common/sp__footer_map.png) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.footer__map a {
  height: 180px;
}

.footer__mapBlock {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.footer__mapBlock:hover {
  background: rgba(27, 29, 31, 0.85);
}
.footer__mapBlock .footer__mapBlockInner .footer__mapIcon {
  width: 92px;
}

.footer__contact {
  width: 100%;
  height: auto;
  float: none;
  padding: 20px 0 90px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.footer__contactBlock {
  position: static;
  top: auto;
  left: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  width: 100%;
}
.footer__contactBlock .footer__contactAddress {
  margin-top: 0;
  font-size: 12px;
  line-height: 1.8;
  font-weight: 400;
}
.footer__contactBlock .u-btn {
  width: 260px;
  margin: 30px auto 0;
}
.footer__contactBlock .u-btn a {
  padding: 14px;
  -webkit-border-radius: 30px;
     -moz-border-radius: 30px;
          border-radius: 30px;
}

.footer__sns {
  margin-top: 35px;
  text-align: center;
  list-style: none;
  font-size: 0;
  line-height: 0;
}
.footer__sns li {
  display: inline-block;
  width: 22px;
  margin-right: 80px;
}
.footer__sns li:last-child {
  margin-right: 0;
}
.footer__sns li img {
  width: 100%;
  height: auto;
}

.footer__contactLink {
  width: 100%;
  bottom: auto;
  padding: 0;
  position: static;
  left: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.footer__contactLink .footer__contactPrivacy {
  list-style: none;
  width: 195px;
  float: none;
  margin: 35px auto 0;
}
.footer__contactLink .footer__contactPrivacy .footer__contactPrivacyImg {
  width: 39px;
}
.footer__contactLink .footer__contactPrivacy .footer__contactPrivacyLink {
  padding-top: 3px;
  margin: 0 0 0 50px;
}
.footer__contactLink .footer__contactPrivacy .footer__contactPrivacyLink li {
  margin-bottom: 10px;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.075em;
  font-weight: 400;
}
.footer__contactLink .footer__contactPrivacy .footer__contactPrivacyLink li:last-child {
  margin-bottom: 0;
}
.footer__contactLink .footer__contactPrivacy .footer__contactPrivacyLink li a {
  color: #fff;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.footer__contactLink .footer__contactPrivacy .footer__contactPrivacyLink li a:hover {
  color: #fff;
}
.footer__contactLink .footer__contactCopy {
  border-top: rgba(255, 255, 255, 0.1) 1px solid;
  padding-top: 10px;
  margin: 20px 0 0;
  width: 100%;
  float: none;
  text-align: center;
  color: rgba(255, 255, 255, 0.6);
  font-size: 10px;
  font-weight: 300;
}

/****************************
menuBox
*****************************/
.menuBox {
  width: 100%;
  height: 100%;
  min-width: initial;
  font-family: "Roboto Condensed", sans-serif;
  -webkit-transition: all 1.5s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: all 1.5s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: all 1.5s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 1.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.menuBox__block--sp {
  position: static;
  width: 100%;
  height: -webkit-calc(100% - 50px);
  height: -moz-calc(100% - 50px);
  height: calc(100% - 50px);
  margin-top: 50px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.menuBox__block--sp .menuBox__blockInner--sp {
  margin: 18px 0;
  overflow: hidden;
}
.menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp {
  opacity: 0;
  -webkit-transform: translateY(20px);
     -moz-transform: translateY(20px);
      -ms-transform: translateY(20px);
       -o-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.menuBox__listInner--sp h3 {
  color: #fff;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.05em;
}
.menuBox__listInner--sp h3 a {
  padding: 20px 0;
  display: block;
  color: #fff;
  text-decoration: none;
}

.js-hasChild .menuBox__listInner--sp h3 {
  position: relative;
}
.js-hasChild .menuBox__listInner--sp h3:before, .js-hasChild .menuBox__listInner--sp h3:after {
  background: #fff;
  content: "";
  position: absolute;
  -webkit-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), -o-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), -moz-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), -moz-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1), -o-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}
.js-hasChild .menuBox__listInner--sp h3:before {
  top: 30px;
  right: 40px;
  width: 13px;
  height: 1px;
}
.js-hasChild .menuBox__listInner--sp h3:after {
  top: 24px;
  right: 46px;
  width: 1px;
  height: 13px;
}
.js-hasChild .menuBox__listInner--sp h3 span {
  position: relative;
}
.js-hasChild .menuBox__listInner--sp h3 span:after {
  opacity: 0;
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #fff;
  -webkit-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}
.js-hasChild .menuBox__listInner--sp h3.js-active:before, .js-hasChild .menuBox__listInner--sp h3.js-active:after {
  -webkit-transform: rotate(90deg);
     -moz-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
       -o-transform: rotate(90deg);
          transform: rotate(90deg);
}
.js-hasChild .menuBox__listInner--sp h3.js-active:before {
  opacity: 0;
}
.js-hasChild .menuBox__listInner--sp h3.js-active span:after {
  opacity: 1;
}

.menuBox__listHidden--sp {
  display: none;
  margin: 0 15px;
}
.menuBox__listHidden--sp ul {
  list-style: none;
}
.menuBox__listHidden--sp ul li {
  width: 48%;
  float: left;
  margin-right: 4%;
  text-align: center;
  color: #fff;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}
.menuBox__listHidden--sp ul li:nth-child(2n) {
  margin-right: 0;
}
.menuBox__listHidden--sp ul li a {
  display: block;
  padding: 20px 0;
  color: #fff;
  text-decoration: none;
}
.menuBox__listHidden--sp ul li a.comingSoon {
  color: #babbbb;
}

.menuBox__header .menuBox__headerInner {
  margin: 0 15px;
}

.menuBox__headerLogo {
  font-size: 0;
  line-height: 0;
  width: 100px;
  margin-top: 20px;
}

.menuBox__headerMenu {
  width: 20px;
  height: 20px;
  margin: 15px 0 0 0;
  float: right;
}
.menuBox__headerMenu a {
  width: 20px;
  height: 20px;
}
.menuBox__headerMenu a span {
  width: 100%;
  height: 2px;
  left: 0;
}
.menuBox__headerMenu a span.menuBox__headerMenuBd--upper {
  -webkit-transform: rotate(0);
     -moz-transform: rotate(0);
      -ms-transform: rotate(0);
       -o-transform: rotate(0);
          transform: rotate(0);
  top: 5px;
}
.js-active .menuBox__headerMenu a span.menuBox__headerMenuBd--upper {
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
       -o-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 8px;
}
.menuBox__headerMenu a span.menuBox__headerMenuBd--bottom {
  -webkit-transform: rotate(0);
     -moz-transform: rotate(0);
      -ms-transform: rotate(0);
       -o-transform: rotate(0);
          transform: rotate(0);
  top: 13px;
}
.js-active .menuBox__headerMenu a span.menuBox__headerMenuBd--bottom {
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 8px;
}

.menuBox.js-active {
  background-color: #000;
  -webkit-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), visibility 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), visibility 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), visibility 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1), visibility 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp {
  opacity: 1;
  -webkit-transform: translateY(0);
     -moz-transform: translateY(0);
      -ms-transform: translateY(0);
       -o-transform: translateY(0);
          transform: translateY(0);
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp:nth-child(1) {
  -webkit-transition-delay: 0.1s;
     -moz-transition-delay: 0.1s;
       -o-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp:nth-child(2) {
  -webkit-transition-delay: 0.2s;
     -moz-transition-delay: 0.2s;
       -o-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp:nth-child(3) {
  -webkit-transition-delay: 0.3s;
     -moz-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp:nth-child(4) {
  -webkit-transition-delay: 0.4s;
     -moz-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp:nth-child(5) {
  -webkit-transition-delay: 0.5s;
     -moz-transition-delay: 0.5s;
       -o-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.menuBox.js-active .menuBox__block--sp .menuBox__blockInner--sp .menuBox__list--sp:nth-child(6) {
  -webkit-transition-delay: 0.6s;
     -moz-transition-delay: 0.6s;
       -o-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

/****************************
fixedBnr
*****************************/
.fixedBnr {
  bottom: 15px;
  right: auto;
  left: 50%;
  -webkit-transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
}

/****************************
CURSOR
*****************************/
.customCursor {
  display: none;
}

/****************************
content
*****************************/
.content {
  padding-top: 50px;
}

.home .content {
  padding-top: 0;
}

.page__body {
  margin-top: 0;
}

.page__content {
  margin-top: 20px;
}

/********************************************************
contents - home
**********************************************************/
/****************************
home-kv
*****************************/
.home-kv {
  width: 100%;
  min-width: 100%;
  height: 100%;
}
.home-kv .home-kv__inner {
  margin: 0;
  height: 100%;
  background: #1b1d1f;
  position: relative;
  width: 0;
  -webkit-transition: width 0.75s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  -o-transition: width 0.75s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  -moz-transition: width 0.75s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: width 0.75s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}
.js-imagesLoaded .home-kv .home-kv__inner {
  width: 100%;
}

.home-kv_copy {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
     -moz-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
       -o-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
}
.home-kv_copy .home-kv_copyImg {
  margin-top: 20px;
  width: 260px;
  font-size: 0;
  line-height: 0;
  opacity: 0;
  -webkit-transform: translateY(15px);
     -moz-transform: translateY(15px);
      -ms-transform: translateY(15px);
       -o-transform: translateY(15px);
          transform: translateY(15px);
}
.home-kv_copy .home-kv_copyImg img {
  width: 100%;
  height: auto;
}
.js-imagesLoaded .home-kv_copy .home-kv_copyImg {
  opacity: 1;
  -webkit-transform: translateY(0);
     -moz-transform: translateY(0);
      -ms-transform: translateY(0);
       -o-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
  -o-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -o-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
  -moz-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -moz-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -moz-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s, -o-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
}
.home-kv_copy .home-kv_copyTxt01,
.home-kv_copy .home-kv_copyTxt02 {
  color: #fff;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.2em;
  opacity: 0;
  -webkit-transform: translateY(10px);
     -moz-transform: translateY(10px);
      -ms-transform: translateY(10px);
       -o-transform: translateY(10px);
          transform: translateY(10px);
}
.home-kv_copy .home-kv_copyTxt01 {
  text-align: right;
  -webkit-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  -o-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -o-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  -moz-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -moz-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -moz-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -o-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
}
.js-imagesLoaded .home-kv_copy .home-kv_copyTxt01 {
  opacity: 1;
  -webkit-transform: translateY(0);
     -moz-transform: translateY(0);
      -ms-transform: translateY(0);
       -o-transform: translateY(0);
          transform: translateY(0);
}
.home-kv_copy .home-kv_copyTxt02 {
  margin-top: 20px;
  -webkit-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  -o-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -o-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  -moz-transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -moz-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -moz-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s, -o-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
}
.js-imagesLoaded .home-kv_copy .home-kv_copyTxt02 {
  opacity: 1;
  -webkit-transform: translateY(0);
     -moz-transform: translateY(0);
      -ms-transform: translateY(0);
       -o-transform: translateY(0);
          transform: translateY(0);
}

/****************************
home-vision
*****************************/
.home-vision {
  margin-top: 60px;
}
.home-vision .home-vision__inner .home-vision__block {
  width: 260px;
  margin: 0 auto;
}

.home-vision__ttl {
  margin: 0;
  font-size: 18px;
  line-height: 1;
}
.home-vision__ttl:before {
  content: normal;
}
.home-vision__ttl span {
  position: relative;
  background: none;
  padding-right: 0;
}

.home-vision__fun {
  margin-top: 20px;
  position: relative;
}
.home-vision__fun p {
  font-size: 0;
  line-height: 0;
}
.home-vision__fun p.home-vision__funLetter {
  width: 226px;
}

.home-vision__txt {
  margin: 22px 0 0;
  font-size: 12px;
  line-height: 2.4;
  font-weight: 300;
  letter-spacing: 0.11em;
}

.home-vision__fun p.home-vision__funWater {
  bottom: 10px;
  left: 81px;
  width: 26px;
  -webkit-transition: height 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: height 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: height 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: height 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.js-wave-anime .js-imagesLoaded .home-vision__fun p.home-vision__funWater {
  height: 26px;
}
.home-vision__fun p.home-vision__funWave {
  bottom: 9px;
  left: 81px;
  width: 26px;
  height: 10px;
  -webkit-transition: bottom 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: bottom 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: bottom 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: bottom 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.home-vision__fun p.home-vision__funWave canvas {
  width: 26px;
  height: 10px;
}

.js-imagesLoaded .home-vision__fun.js-wave-anime p.home-vision__funWater {
  height: 26px;
}
.js-imagesLoaded .home-vision__fun.js-wave-anime p.home-vision__funWave {
  bottom: 35px;
}

/****************************
home-service
*****************************/
.home-service.content__inner {
  margin: 55px 0 0;
}

.home-service__ttl,
.home-service__blockItem {
  width: 100%;
  float: none;
}

.home-service__ttl {
  margin-bottom: 15px;
  text-align: center;
}
.home-service__ttl h2 {
  color: #1b1d1f;
  font-size: 30px;
}
.home-service__ttl p {
  margin: 4px 0 0 0;
  color: #1b1d1f;
  font-size: 11px;
  line-height: 1;
}
.home-service__ttl p:before {
  content: normal;
}
.home-service__ttl p span {
  padding-right: 0;
  background: transparent;
}

.home-service__blockItem {
  margin-bottom: 25px;
  position: relative;
  background: none;
  height: auto;
}
.home-service__blockItem:nth-child(2n) {
  float: none;
}
.home-service__blockItem:last-child {
  margin-bottom: 0;
}
.home-service__blockItem--web .home-service__blockItemBg {
  background: url(./../images/home/service_web.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--app .home-service__blockItemBg {
  background: url(./../images/home/service_app.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--signage .home-service__blockItemBg {
  background: url(./../images/home/service_signage.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--xr .home-service__blockItemBg {
  background: url(./../images/home/service_xr.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--system .home-service__blockItemBg {
  background: url(./../images/home/service_system.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--ai .home-service__blockItemBg {
  background: url(./../images/home/service_ai.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--iot .home-service__blockItemBg {
  background: url(./../images/home/service_iot.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--server .home-service__blockItemBg {
  background: url(./../images/home/service_server.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--ecp .home-service__blockItemBg {
  background: url(./../images/home/service_ecp-sp.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem--staffing .home-service__blockItemBg {
  background: url(./../images/home/service_staffing.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.home-service__blockItem a {
  display: block;
  width: 100%;
  height: auto;
  background: none;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  position: relative;
  text-decoration: none;
}
.home-service__blockItem a .home-service__blockItemBg {
  width: 100%;
  height: 130px;
  position: relative;
}
.home-service__blockItem a .home-service__blockItemBg:after {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(65%, rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.5)));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
}
.home-service__blockItem a .home-service__blockItemInner {
  position: static;
  top: auto;
  left: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  text-align: left;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  margin: -17px 30px 0;
  position: relative;
}
.home-service__blockItem a .home-service__blockItemInner .home-service__blockItemLabel {
  color: #1b1d1f;
  font-size: 27px;
  line-height: 1.2;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  margin-right: 30px;
}
.home-service__blockItem a .home-service__blockItemInner .home-service__blockItemTxt {
  color: #1b1d1f;
  margin-top: 4px;
  margin-right: 30px;
  font-size: 12px;
  line-height: 1.8;
  font-weight: 400;
  letter-spacing: 0.1em;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.home-service__blockItem a .home-service__blockItemInner:before, .home-service__blockItem a .home-service__blockItemInner:after {
  content: "";
  position: absolute;
  background: #1b1d1f;
}
.home-service__blockItem a .home-service__blockItemInner:before {
  bottom: 3px;
  right: 7px;
  width: 1px;
  height: 15px;
}
.home-service__blockItem a .home-service__blockItemInner:after {
  bottom: 10px;
  right: 0;
  width: 15px;
  height: 1px;
}
.home-service__blockItem a .home-service__blockItemLink {
  display: none;
}
.home-service__blockItem a:hover {
  background: none;
}
.home-service__blockItem a:hover .home-service__blockItemInner {
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.home-service__blockItem a:hover .home-service__blockItemInner .home-service__blockItemLabel {
  color: #1b1d1f;
}
.home-service__blockItem a:hover .home-service__blockItemInner .home-service__blockItemTxt {
  color: #1b1d1f;
}

/****************************
home-products
*****************************/
.home-products {
  margin-top: 60px;
  height: 450px;
  min-width: initial;
}

.home-products__slider .home-products__sliderInner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
     -moz-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
       -o-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  background: #1b1d1f;
  width: 100%;
  height: 450px;
}
.home-products__slider .home-products__sliderInner a {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.home-products__slider .home-products__sliderInner a:hover {
  background: #1b1d1f;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock {
  width: 100%;
  height: 450px;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent {
  position: absolute;
  top: auto;
  bottom: 55px;
  left: 0;
  right: 0;
  margin: 0 auto;
  opacity: 1;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent h2 {
  margin-left: auto;
  margin-right: auto;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent .home-products__sliderTxt {
  margin-top: 12px;
  font-size: 12px;
  line-height: 1.8;
  text-align: center;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent .home-products__sliderLink {
  margin-top: 10px;
  margin-right: 10px;
  font-size: 14px;
  font-weight: 300;
  text-align: center;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent .home-products__sliderLink span:before {
  top: 1px;
  right: -15px;
  height: 13px;
}
.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent .home-products__sliderLink span:after {
  top: 7px;
  right: -21px;
  width: 13px;
}
.home-products__slider .home-products__sliderInner.home-products__slider--leapWork .home-products__sliderBlock {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  background: url(./../images/home/products_leap-work_visual.png) no-repeat left 38% top 35px;
  -moz-background-size: 380px auto;
       background-size: 380px auto;
}
.home-products__slider .home-products__sliderInner.home-products__slider--leapWork .home-products__sliderBlock .home-products__sliderContent {
  left: 0;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.home-products__slider .home-products__sliderInner.home-products__slider--leapWork .home-products__sliderBlock .home-products__sliderContent h2 {
  width: 110px;
}
.home-products__slider .home-products__sliderInner.home-products__slider--imatch .home-products__sliderBlock {
  position: relative;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  background: url(./../images/home/sp__products_imatch_visual.png) no-repeat left 50% top 20px;
  -moz-background-size: 320px auto;
       background-size: 320px auto;
}
.home-products__slider .home-products__sliderInner.home-products__slider--imatch .home-products__sliderBlock .home-products__sliderContent {
  right: 0;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.home-products__slider .home-products__sliderInner.home-products__slider--imatch .home-products__sliderBlock .home-products__sliderContent h2 {
  width: 126px;
}
.home-products__slider .home-products__sliderInner.home-products__slider--chessGo .home-products__sliderBlock {
  position: relative;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  background: url(./../images/home/products_chess-go_visual.png) no-repeat left 65% top 25px;
  -moz-background-size: 340px auto;
       background-size: 340px auto;
}
.home-products__slider .home-products__sliderInner.home-products__slider--chessGo .home-products__sliderBlock .home-products__sliderContent {
  right: 0;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.home-products__slider .home-products__sliderInner.home-products__slider--chessGo .home-products__sliderBlock .home-products__sliderContent h2 {
  width: 100px;
}
.home-products__slider .home-products__sliderInner.home-products__slider--rakuden .home-products__sliderBlock {
  position: relative;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  background: url(./../images/home/sp__products_rakuden_visual.png) no-repeat left 50% top 0;
  -moz-background-size: 320px auto;
       background-size: 320px auto;
}
.home-products__slider .home-products__sliderInner.home-products__slider--rakuden .home-products__sliderBlock .home-products__sliderContent {
  left: 0;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.home-products__slider .home-products__sliderInner.home-products__slider--rakuden .home-products__sliderBlock .home-products__sliderContent h2 {
  width: 131px;
}
.home-products__slider .home-products__sliderInner.home-products__slider--wpApp .home-products__sliderBlock {
  position: relative;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  background: url(./../images/home/products_wp-app_visual.png) no-repeat left 43% top 30px;
  -moz-background-size: 300px auto;
       background-size: 300px auto;
}
.home-products__slider .home-products__sliderInner.home-products__slider--wpApp .home-products__sliderBlock .home-products__sliderContent {
  right: 0;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.home-products__slider .home-products__sliderInner.home-products__slider--wpApp .home-products__sliderBlock .home-products__sliderContent h2 {
  width: 70px;
}

.js-scrolled .swiper-slide-active.home-products__slider .home-products__sliderInner .home-products__sliderBlock .home-products__sliderContent {
  top: auto;
  opacity: 1;
}
.js-scrolled .swiper-slide-active.home-products__slider .home-products__sliderInner.home-products__slider--leapWork .home-products__sliderBlock {
  background: url(./../images/home/products_leap-work_visual.png) no-repeat left 38% top 35px;
  -moz-background-size: 380px auto;
       background-size: 380px auto;
}
.js-scrolled .swiper-slide-active.home-products__slider .home-products__sliderInner.home-products__slider--imatch .home-products__sliderBlock {
  background: url(./../images/home/sp__products_imatch_visual.png) no-repeat left 50% top 20px;
  -moz-background-size: 320px auto;
       background-size: 320px auto;
}
.js-scrolled .swiper-slide-active.home-products__slider .home-products__sliderInner.home-products__slider--chessGo .home-products__sliderBlock {
  background: url(./../images/home/products_chess-go_visual.png) no-repeat left 65% top 25px;
  -moz-background-size: 340px auto;
       background-size: 340px auto;
}
.js-scrolled .swiper-slide-active.home-products__slider .home-products__sliderInner.home-products__slider--rakuden .home-products__sliderBlock {
  background: url(./../images/home/sp__products_rakuden_visual.png) no-repeat left 50% top 0;
  -moz-background-size: 320px auto;
       background-size: 320px auto;
}
.js-scrolled .swiper-slide-active.home-products__slider .home-products__sliderInner.home-products__slider--wpApp .home-products__sliderBlock {
  background: url(./../images/home/products_wp-app_visual.png) no-repeat left 43% top 30px;
  -moz-background-size: 300px auto;
       background-size: 300px auto;
}

.swiper-pagination {
  bottom: 5px;
}
.swiper-pagination .swiper-pagination-bullet {
  width: 14px;
  font-size: 10px;
}
.swiper-pagination .swiper-pagination-bullet:before {
  left: 6px;
  bottom: 16px;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  font-size: 12px;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
  height: 10px;
}

/****************************
home-ph
*****************************/
.home-ph {
  margin-top: 40px;
}
.home-ph .home-ph__inner {
  margin: 0 auto;
  width: 100%;
  height: auto;
  padding-bottom: 246px;
  background: url(./../images/home/world_map-sp.gif) no-repeat left 50% bottom 0;
  -moz-background-size: 480px auto;
       background-size: 480px auto;
}
.home-ph .home-ph__inner h2,
.home-ph .home-ph__inner .home-ph__txt {
  margin-left: 30px;
  margin-right: 30px;
  text-align: left;
}
.home-ph .home-ph__inner h2 {
  font-size: 24px;
  line-height: 1.3;
  font-weight: 400;
}
.home-ph .home-ph__inner h2 span {
  font-weight: 400;
}
.home-ph .home-ph__inner h2 br {
  display: block;
}
.home-ph .home-ph__inner .home-ph__txt {
  margin-top: 15px;
  font-size: 12px;
  line-height: 2.4;
  font-weight: 400;
}
.home-ph .home-ph__inner .u-btn {
  margin: 20px auto 0;
  width: 260px;
}
.home-ph .home-ph__inner .u-btn a {
  display: block;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  padding: 14px;
}
.home-ph .home-ph__inner .u-btn a span {
  padding-right: 28px;
}

/****************************
home-news
*****************************/
.home-news {
  margin-top: 50px;
}
.home-news .home-news__inner {
  width: 100%;
  margin: 0 auto;
}
.home-news .home-news__inner .u-newsList {
  margin-top: 20px;
}

.home-news__ttl {
  font-size: 30px;
}

.home-news__label {
  margin-top: 4px;
  font-size: 11px;
}

/****************************
home-blog
*****************************/
.home-blog {
  margin-top: 50px;
}
.home-blog .home-blog__inner {
  margin: 0 auto;
  width: -webkit-calc(100% - 30px);
  width: -moz-calc(100% - 30px);
  width: calc(100% - 30px);
}
.home-blog .home-blog__inner .blogIndex {
  margin-top: 20px;
}
.home-blog .home-blog__inner .blogIndex .u-indexList {
  font-size: 0;
}
.home-blog .home-blog__inner .blogIndex .u-indexList .u-indexList__item {
  margin-top: 20px;
  max-width: -webkit-calc(100% - 105px);
  max-width: -moz-calc(100% - 105px);
  max-width: calc(100% - 105px);
}
.home-blog .home-blog__inner .blogIndex .u-indexList .u-indexList__item:first-child {
  margin-top: 0;
}
.home-blog .home-blog__inner .blogIndex .u-indexList .u-indexList__item .item__img {
  margin: 0 auto;
  height: 47.5vw;
}
@media screen and (max-width: 375px) {
  .home-blog .home-blog__inner .blogIndex .u-indexList .u-indexList__item .item__img {
    height: 40vw;
  }
}
.home-blog .home-blog__inner .blogIndex .u-indexList .u-indexList__item.tempSlide {
  display: none;
}
.home-blog .u-btn {
  margin: 20px auto 0;
  width: 260px;
}
.home-blog .u-btn a {
  display: block;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  padding: 14px;
}
.home-blog .u-btn a span {
  padding-right: 28px;
}

.home-blog__ttl {
  font-size: 30px;
}

.home-blog__label {
  margin-top: 4px;
  font-size: 11px;
}

/********************************************************
contents - page module
**********************************************************/
/****************************
page module
*****************************/
.content__inner {
  width: auto;
  margin-left: 15px;
  margin-right: 15px;
}

.content__block {
  width: auto;
  margin-left: 15px;
  margin-right: 15px;
}

.content__blockMore {
  width: auto;
  margin-left: 15px;
  margin-right: 15px;
}

.caseList {
  width: 100%;
}
.caseList .u-btn {
  margin: 15px auto 0;
  width: 260px;
}
.caseList .u-btn a {
  display: block;
  padding: 14px;
}
.caseList .u-btn a span {
  padding-right: 28px;
}

.caseList__block {
  margin-top: 15px;
}
.caseList__block .caseList__item {
  width: 50%;
  max-width: 300px;
  margin-bottom: 0;
}
.caseList__block .caseList__item:last-child {
  margin-bottom: 0;
}
.caseList__block .caseList__item:nth-child(n+3) {
  display: none;
}
.caseList__block .caseList__item a {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.caseList__block .caseList__item a:hover {
  opacity: 1;
}

.u-newsList {
  width: auto;
  width: -webkit-calc(100% - 60px);
  width: -moz-calc(100% - 60px);
  width: calc(100% - 60px);
  margin-left: 30px;
  margin-right: 30px;
}
.u-newsList tr {
  display: block;
  margin-bottom: 20px;
}
.u-newsList tr:last-child {
  margin-bottom: 0;
}
.u-newsList tr th,
.u-newsList tr td {
  display: block;
  letter-spacing: 0.025em;
}
.u-newsList tr th {
  width: auto;
  display: inline-block;
  background: #1b1d1f;
  padding: 5px 8px 6px;
  margin-bottom: 0;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 100;
}
.u-newsList tr td {
  width: auto;
  border-bottom: #e5e5e5 1px solid;
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 0;
  padding: 0;
}
.u-newsList tr td a {
  padding: 0;
  padding: 10px 0;
  display: block;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.u-newsList tr td a:hover {
  opacity: 1;
}

.u-indexList .u-indexList__item {
  width: auto;
  margin: 0 0 30px 0;
  text-align: center;
}
.u-indexList .u-indexList__item .u-indexList__itemImg a {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.u-indexList .u-indexList__item .u-indexList__itemLabel {
  font-size: 13px;
  line-height: 1.4;
}
.u-indexList .u-indexList__item h3 {
  font-size: 18px;
  line-height: 1.8;
  font-weight: 500;
}
.u-indexList .u-indexList__item .u-indexList__itemTxt {
  font-size: 13px;
  line-height: 1.8;
}
.u-indexList .u-indexList__item .u-indexList__itemLink {
  font-size: 14px;
  margin-right: 10px;
}
.u-indexList .u-indexList__item .u-indexList__itemLink a span:before {
  top: 7px;
  right: -16px;
  width: 11px;
}
.u-indexList .u-indexList__item .u-indexList__itemLink a span:after {
  top: 2px;
  right: -11px;
  height: 11px;
}

.u-catList {
  margin-bottom: -6px;
  list-style: none;
}
.u-catList li {
  float: left;
  margin-right: 6px;
  margin-bottom: 6px;
  font-size: 14px;
}
.u-catList li a {
  -webkit-border-radius: 19px;
     -moz-border-radius: 19px;
          border-radius: 19px;
  padding: 8px 16px 7px;
}
.u-catList li a:hover {
  background: #fff;
  border: #babbbb 1px solid;
  color: #424242;
}
.u-catList li a.is-current:hover {
  background: #2775f6;
  border: #2775f6 1px solid;
  color: #fff;
}

/********************************************************
contents - company
**********************************************************/
/****************************
company index
*****************************/
.companyIndex-president {
  position: static;
}
.companyIndex-president.content__inner {
  margin-left: 0;
  margin-right: 0;
}
.companyIndex-president .companyIndex-president__img {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.companyIndex-president__txt {
  position: static;
  bottom: auto;
  right: auto;
  background: none;
  width: auto;
  padding: 0;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  margin: 15px 15px 0;
  text-align: center;
}
.companyIndex-president__txt h2 {
  font-size: 13px;
  line-height: 1.8;
}
.companyIndex-president__txt h3 {
  margin-top: 0;
  font-size: 16px;
  line-height: 1.8;
}
.companyIndex-president__txt .u-linkMore {
  text-align: center;
  margin-top: 7px;
}

.companyIndex-staff {
  margin-top: 45px;
}
.companyIndex-staff .companyIndex-staff__img {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.companyIndex-staff .u-btn {
  margin: 15px auto 0;
  width: 260px;
}
.companyIndex-staff .u-btn a {
  display: block;
  padding: 14px;
}
.companyIndex-staff .u-btn a span {
  padding-right: 28px;
}

.companyIndex-profile {
  margin-top: 60px;
}
.companyIndex-profile .companyIndex-profile__txt {
  margin-top: 12px;
  line-height: 2.3;
  text-align: left;
}
.companyIndex-profile .companyIndex-profile__txt br {
  display: none;
}
.companyIndex-profile .u-linkMore {
  margin-top: 15px;
}

/****************************
company page common
*****************************/
/****************************
company president
*****************************/
.companyPage-president.content__inner {
  margin-left: auto;
  margin-right: auto;
}

.companyPage-president__main {
  position: static;
}
.companyPage-president__main .companyPage-president__img {
  width: auto;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.companyPage-president__main .companyPage-president__copy {
  position: static;
  bottom: auto;
  right: auto;
  background: none;
  width: auto;
  padding: 0;
  margin: 20px 15px 0;
}
.companyPage-president__main .companyPage-president__copy h2 {
  font-size: 16px;
  line-height: 1.8;
}

.companyPage-president__txt {
  margin-top: 15px;
}
.companyPage-president__txt p {
  margin-bottom: 0.75em;
}
.companyPage-president__txt .u-right {
  font-size: 16px;
}
.companyPage-president__txt .u-right span {
  font-size: 11px;
  margin-right: 8px;
}

/****************************
company staff
*****************************/
.companyPage-staff__list {
  max-width: 400px;
  margin: 15px auto 0;
}
.companyPage-staff__list .companyPage-staff__item {
  width: 33.3333%;
  float: left;
  margin-bottom: 25px;
}
.companyPage-staff__list .companyPage-staff__item h4 {
  margin-top: 7px;
  font-size: 12px;
}
.companyPage-staff__list .companyPage-staff__item p {
  margin-top: 2px;
  font-size: 10px;
}

/****************************
company profile
*****************************/
.companyPage-profile .companyPage-profile__table tr th {
  width: 25%;
}

/****************************
company philosophy
*****************************/
.companyPage-philosophy .u-text21 {
  margin-top: 1em;
  line-height: 1.6;
}
.companyPage-philosophy .u-text21 li {
  font-size: 15px;
  margin-bottom: 0.5em;
}
.companyPage-philosophy .u-text21 li br {
  display: none;
}
.companyPage-philosophy .u-text24:nth-of-type(2) {
  margin-top: 30px;
}
.companyPage-philosophy .companyPage-philosophy__chart {
  margin-top: 20px;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.companyPage-philosophy .companyPage-philosophy__chart img {
  width: 100%;
  height: auto;
}

/****************************
company access
*****************************/
.companyPage-access .companyPage-access__map {
  margin-top: 10px;
}
.companyPage-access .companyPage-access__txt {
  margin: 10px 15px 0;
}

.companyPage-access__block--tokyo .companyPage-access__txt {
  width: auto;
}
.companyPage-access__block--tokyo .companyPage-access__txt .companyPage-access__txtGroup:nth-child(1) {
  width: auto;
  float: none;
  margin-left: 0;
}
.companyPage-access__block--tokyo .companyPage-access__txt .companyPage-access__txtGroup:nth-child(2) {
  margin-top: 10px;
  width: auto;
  float: none;
}
.companyPage-access__block--tokyo .companyPage-access__txt .companyPage-access__txtGroup ul {
  padding-left: 1.7em;
}

.companyPage-access__block--ph,
.companyPage-access__block--vn {
  margin-top: 80px;
}
.companyPage-access__block--ph .companyPage-access__txt,
.companyPage-access__block--vn .companyPage-access__txt {
  width: auto;
}

.companyPage-access__block--sapporo,
.companyPage-access__block--nagoya {
  margin-top: 80px;
}
.companyPage-access__block--sapporo .companyPage-access__txt,
.companyPage-access__block--nagoya .companyPage-access__txt {
  width: auto;
}
.companyPage-access__block--sapporo .companyPage-access__txt .companyPage-access__txtGroup:nth-child(1),
.companyPage-access__block--nagoya .companyPage-access__txt .companyPage-access__txtGroup:nth-child(1) {
  width: auto;
  float: none;
  margin-left: 0;
}
.companyPage-access__block--sapporo .companyPage-access__txt .companyPage-access__txtGroup:nth-child(2),
.companyPage-access__block--nagoya .companyPage-access__txt .companyPage-access__txtGroup:nth-child(2) {
  margin-top: 10px;
  width: auto;
  float: none;
}
.companyPage-access__block--sapporo .companyPage-access__txt .companyPage-access__txtGroup ul,
.companyPage-access__block--nagoya .companyPage-access__txt .companyPage-access__txtGroup ul {
  padding-left: 1.7em;
}

/********************************************************
contents - service
**********************************************************/
/****************************
service index
*****************************/
.serviceIndex {
  min-width: initial;
}
.serviceIndex-block {
  width: 100%;
  position: relative;
  margin-bottom: 25px;
  height: auto;
  background: none !important;
}
.serviceIndex-block:last-child {
  margin-bottom: 50px;
}
.serviceIndex-block .serviceIndex-blockBg {
  width: 100%;
  height: 130px;
  position: relative;
}
.serviceIndex-block .serviceIndex-blockBg:after {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(65%, rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.5)));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0.5) 100%);
}
.serviceIndex-block:nth-child(1) {
  background: none;
}
.serviceIndex-block:nth-child(1) .serviceIndex-blockBg {
  background: url(./../images/home/service_web.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(2) {
  background: none;
}
.serviceIndex-block:nth-child(2) .serviceIndex-blockBg {
  background: url(./../images/home/service_app.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(3) {
  background: none;
}
.serviceIndex-block:nth-child(3) .serviceIndex-blockBg {
  background: url(./../images/home/service_system.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(4) {
  background: none;
}
.serviceIndex-block:nth-child(4) .serviceIndex-blockBg {
  background: url(./../images/home/service_signage.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(5) {
  background: none;
}
.serviceIndex-block:nth-child(5) .serviceIndex-blockBg {
  background: url(./../images/home/service_xr.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(6) {
  background: none;
}
.serviceIndex-block:nth-child(6) .serviceIndex-blockBg {
  background: url(./../images/home/service_ai.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(7) {
  background: none;
}
.serviceIndex-block:nth-child(7) .serviceIndex-blockBg {
  background: url(./../images/home/service_iot.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(8) {
  background: none;
}
.serviceIndex-block:nth-child(8) .serviceIndex-blockBg {
  background: url(./../images/home/service_server.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(9) {
  background: none;
}
.serviceIndex-block:nth-child(9) .serviceIndex-blockBg {
  background: url(./../images/home/service_staffing.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.serviceIndex-block:nth-child(odd) .serviceIndex-blockItem {
  left: auto;
}
.serviceIndex-block:nth-child(even) .serviceIndex-blockItem {
  right: auto;
}

.serviceIndex-blockItem {
  position: static;
  top: auto;
  background: none;
  padding: 0;
  width: auto;
  height: auto;
  position: relative;
  margin: -17px 30px 0;
}
.serviceIndex-blockItem h3 {
  color: #1b1d1f;
  font-size: 27px;
  line-height: 1.2;
}
.serviceIndex-blockItem__copy {
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 400;
}
.serviceIndex-blockItem__txt {
  margin-top: 3px;
  font-size: 12px;
  line-height: 1.6;
  font-weight: 300;
}
.serviceIndex-blockItem__txt br {
  display: none;
}
.serviceIndex-blockItem .u-btn {
  margin: 10px auto 0;
  width: 260px;
}
.serviceIndex-blockItem .u-btn a {
  display: block;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  padding: 14px;
}
.serviceIndex-blockItem .u-btn a span {
  padding-right: 28px;
}

/****************************
service page common
*****************************/
.servicePage .servicePage-block .content__block {
  margin-top: 20px;
}
.servicePage .servicePage-block .content__block .servicePage-description {
  margin-top: 15px;
}
.servicePage .servicePage-block .content__block .servicePage-process__img {
  margin: 15px auto 0;
  max-width: 400px;
}
.servicePage .servicePage-block .caseList {
  margin-top: 30px;
}

.servicePage-visual {
  margin: 0;
}
.servicePage-visual .servicePage-visualInner {
  height: 130px;
}

.servicePage-process {
  margin-top: 15px;
}

/****************************
service staffing
*****************************/
.servicePage-staffing .servicePage-staffing__areaBox {
  width: auto;
  float: none;
}
.servicePage-staffing .servicePage-staffing__areaBox:nth-child(1) {
  float: none;
}
.servicePage-staffing .servicePage-staffing__areaBox:nth-child(2) {
  float: none;
}
.servicePage-staffing .servicePage-staffing__areaBox .u-imageText {
  margin-top: 5px;
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
}
.servicePage-staffing .servicePage-staffing__areaBox .u-imageText img {
  width: 100%;
  height: auto;
}
.servicePage-staffing .servicePage-staffing__area01 {
  margin-top: 20px;
}
.servicePage-staffing .servicePage-staffing__area02 {
  margin-top: 20px;
}
.servicePage-staffing .servicePage-staffing__area02 .u-imageText {
  margin-top: 15px;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.servicePage-staffing .servicePage-staffing__area03 {
  margin-top: 20px;
  border-bottom: 0;
}
.servicePage-staffing .servicePage-staffing__area03 .clearfix {
  margin-top: 20px;
}
.servicePage-staffing .servicePage-staffing__area03 .clearfix .servicePage-staffing__areaBox {
  padding: 15px 0;
  border-bottom: #e5e5e5 1px solid;
}
.servicePage-staffing .servicePage-staffing__area03 .clearfix .servicePage-staffing__areaBox:nth-child(1) {
  padding-right: 0;
  border-right: 0;
}
.servicePage-staffing .servicePage-staffing__area03 .clearfix .servicePage-staffing__areaBox:nth-child(2) {
  padding-left: 0;
}
.servicePage-staffing .servicePage-staffing__area03 .clearfix .servicePage-staffing__areaBox .u-imageText {
  margin-top: 15px;
}
.servicePage-staffing .servicePage-staffing__area04 {
  margin-top: 15px;
}
.servicePage-staffing .servicePage-staffing__area04 .u-imageText {
  margin-top: 15px;
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
.servicePage-staffing .servicePage-staffing__area04 .u-imageText img {
  width: 100%;
  height: auto;
}

/********************************************************
contents - products
**********************************************************/
/****************************
products index
*****************************/
.productsIndex .u-indexList .u-indexList__item h3 {
  margin-top: 8px;
  font-size: 14px;
}
.productsIndex .u-indexList .u-indexList__item .u-indexList__itemTxt {
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.6;
}
.productsIndex .u-indexList .u-indexList__item .u-indexList__itemLink {
  margin-top: 5px;
}

/****************************
products page common
*****************************/
.productsPage__hidden {
  padding: 20px 0 25px;
}
.productsPage__hidden .u-snsList {
  margin-top: 20px;
}

.productsPage__visibleBtn {
  font-size: 14px;
  letter-spacing: 0.1em;
  width: 260px;
}
.productsPage__visibleBtn a {
  display: block;
  -webkit-border-radius: 23px;
     -moz-border-radius: 23px;
          border-radius: 23px;
  padding: 15px;
}
.productsPage__visibleBtn a span {
  margin-right: 3px;
  padding-left: 26px;
}
.productsPage__visibleBtn a span:before {
  top: -1px;
  left: 0;
  width: 16px;
  height: 16px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.productsPage__visibleBtn.productsPage__visibleBtn--apple a span:before {
  background: url(./../images/icon/appstore_white.png) no-repeat 0 0;
  -moz-background-size: 16px auto;
       background-size: 16px auto;
}
.productsPage__visibleBtn.productsPage__visibleBtn--google a span:before {
  background: url(./../images/icon/googleplay_white.png) no-repeat 0 0;
  -moz-background-size: 16px auto;
       background-size: 16px auto;
}
.productsPage__visibleBtn:hover.productsPage__visibleBtn--apple a span:before {
  background: url(./../images/icon/appstore_white.png) no-repeat 0 0;
  -moz-background-size: 16px auto;
       background-size: 16px auto;
}
.productsPage__visibleBtn:hover.productsPage__visibleBtn--google a span:before {
  background: url(./../images/icon/googleplay_white.png) no-repeat 0 0;
  -moz-background-size: 16px auto;
       background-size: 16px auto;
}

.productsPage__toggle--open {
  bottom: 12px;
  font-size: 12px;
}
.productsPage__toggle--open a {
  margin-right: 10px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.productsPage__toggle--open a:hover {
  opacity: 1;
}
.productsPage__toggle--open a:after {
  top: 4px;
  right: -15px;
  width: 9px;
  height: 10px;
  background: url(./../images/icon/arrow_bottom_white.png) no-repeat 0 0;
  -moz-background-size: 9px auto;
       background-size: 9px auto;
}
.productsPage__toggle--open.toggle--black a:after {
  -moz-background-size: 9px auto;
       background-size: 9px auto;
}

.productsPage__toggle--close {
  width: 30px;
  height: 30px;
}
.productsPage__toggle--close a {
  width: 30px;
  height: 30px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.productsPage__toggle--close a:hover {
  background: white;
}
.productsPage__toggle--close a:before, .productsPage__toggle--close a:after {
  top: 14px;
  width: 12px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.productsPage__toggle--close a:before {
  left: 8px;
}
.productsPage__toggle--close a:after {
  right: 8px;
}

/****************************
products page leap-work
*****************************/
.productsPage-leapWork .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  min-width: initial;
  background: url(./../images/products/sp__leap-work_01_bg.jpg) no-repeat 50% 100%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner {
  width: auto;
}
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1,
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock p {
  position: static;
}
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1 {
  width: 187px;
  left: auto;
  top: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  margin-left: auto;
  margin-right: auto;
}
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock p {
  margin-top: 20px;
  width: auto;
  height: 245px;
  top: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  background: url(./../images/products/leap-work_01_device.png) no-repeat 80% 0;
  -moz-background-size: 468px auto;
       background-size: 468px auto;
}
.productsPage-leapWork .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock p img {
  display: none;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent.content__inner {
  margin-left: 0;
  margin-right: 0;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent .productsPage__hiddenContentInner {
  margin: 0 auto;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt {
  margin: 15px 15px 0;
  color: #1b1d1f;
  font-size: 12px;
  line-height: 2;
  text-align: left;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt br {
  display: none;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg {
  width: auto;
  height: 462px;
  margin: 20px auto 0;
  background: url(./../images/products/sp__leap-work_02_flow.png) no-repeat 50% 0;
  -moz-background-size: 400px auto;
       background-size: 400px auto;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg img {
  display: none;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep {
  list-style: none;
  margin: 25px 15px 0;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep li {
  padding: 10px 15px;
  width: 100%;
  float: none;
  text-align: left;
  margin: 0 0 5px 0;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep li:last-child {
  margin-bottom: 0;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep li img {
  display: block;
  width: 65px;
  float: left;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep li p {
  margin-left: 75px;
  margin-top: 11px;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep li:nth-child(2) p, .productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenStep li:nth-child(3) p {
  margin-top: 22px;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenInfo {
  margin-top: 20px;
  text-align: center;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenInfo .productsPage__hiddenInfoImg {
  font-size: 0;
  line-height: 0;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenInfo .productsPage__hiddenInfoImg img {
  width: 95px;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenInfo .productsPage__hiddenInfoTxt {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.5;
}
.productsPage-leapWork .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenInfo .productsPage__hiddenInfoTxt br {
  display: block;
}

/****************************
products page imatch
*****************************/
.productsPage-imatch .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  width: 100%;
  min-width: initial;
  background: url(./../images/products/sp__imatch_01_visual.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner {
  width: auto;
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock {
  width: 100%;
  margin: 0;
  bottom: auto;
  right: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
     -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleDevice {
  width: 240px;
  margin: 0 auto;
  font-size: 0;
  line-height: 0;
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleDevice img {
  width: 100%;
  height: auto;
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1 {
  margin-top: -25px;
  margin-left: auto;
  margin-right: auto;
  width: 149px;
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleTxt {
  margin: 0 15px;
  font-size: 14px;
  line-height: 1.8;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-align: center;
}
.productsPage-imatch .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleBtn {
  margin: 12px auto 0;
}
.productsPage-imatch .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt {
  margin: 15px 15px 0;
  color: #666;
  font-size: 12px;
  line-height: 1.8;
  text-align: left;
}
.productsPage-imatch .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt br {
  display: none;
}
.productsPage-imatch .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent {
  margin-top: 10px;
  min-width: initial;
  width: 100%;
  height: 680px;
  background: url(./../images/products/sp__imatch_02_flow.png) no-repeat 50% 0;
  -moz-background-size: 320px auto;
       background-size: 320px auto;
}

/****************************
products page rakuden
*****************************/
.productsPage-rakuden .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  width: 100%;
  background: #1b1d1f;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner {
  margin: 0 auto;
  width: auto;
  height: 100%;
  position: relative;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleDevice {
  position: static;
  top: auto;
  left: auto;
  width: 320px;
  margin-left: auto;
  margin-right: auto;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleBlock {
  position: static;
  top: auto;
  left: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleBlock h1 {
  margin-top: -35px;
  width: 175px;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleBlock .productsPage__visibleTxt {
  margin: 12px 15px 0;
  font-size: 14px;
  line-height: 1.8;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleBlock .productsPage__visibleBtn {
  margin-left: auto;
  margin-right: auto;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleBlock .productsPage__visibleBtn.productsPage__visibleBtn--apple {
  margin-top: 10px;
}
.productsPage-rakuden .productsPage__visible .productsPage__visibleInner .productsPage__visibleWrap .productsPage__visibleBlock .productsPage__visibleBtn.productsPage__visibleBtn--google {
  margin-top: 10px;
}
.productsPage-rakuden .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent {
  width: 100%;
}
.productsPage-rakuden .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent .productsPage__hiddenContentInner {
  margin: 0 auto;
}
.productsPage-rakuden .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt {
  margin: 15px 15px 0;
  color: #1b1d1f;
  font-size: 12px;
  line-height: 2;
}
.productsPage-rakuden .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg {
  width: 100%;
  max-width: 400px;
  margin: 20px auto 0;
}

/****************************
products page go-app
*****************************/
.productsPage-goApp .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  width: 100%;
  min-width: initial;
  background: url(./../images/products/sp__go-app_01_visual.jpg) no-repeat 50% 100%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner {
  margin: 0 25px;
  width: auto;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock {
  height: auto;
  position: absolute;
  top: 42.5%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1,
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleTxt,
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleLink {
  position: static;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1 {
  width: 135px;
  top: auto;
  left: auto;
  right: auto;
  margin: 0 auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleTxt {
  margin-top: 20px;
  width: auto;
  top: auto;
  left: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  text-align: center;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleLink {
  width: 260px;
  top: auto;
  right: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  margin: 30px auto 0;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleLink .productsPage__visibleLabel {
  margin-top: 8px;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleTxt {
  font-size: 14px;
  line-height: 1.8;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.productsPage-goApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleLabel {
  font-size: 12px;
  line-height: 2;
  font-weight: 300;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent {
  width: 100%;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent .productsPage__hiddenContentInner {
  margin: 0 auto;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt {
  margin: 15px 15px 0;
  color: #1b1d1f;
  font-size: 12px;
  line-height: 2;
  text-align: left;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg {
  width: auto;
  height: 528px;
  margin: -20px auto 0;
  background: url(./../images/products/sp__go-app_02_image.png) no-repeat 50% 0;
  -moz-background-size: 335px auto;
       background-size: 335px auto;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg .productsPage__hiddenImg__ar {
  position: absolute;
  top: 50px;
  left: 0;
  right: 0;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg .productsPage__hiddenImg__ar .productsPage__hiddenImg__icon {
  width: 69px;
  margin-left: auto;
  margin-right: auto;
}
.productsPage-goApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg .productsPage__hiddenImg__ar .productsPage__hiddenImg__label {
  margin-top: 5px;
}

/****************************
products page wp-app
*****************************/
.productsPage-wpApp .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  min-width: initial;
  background: url(./../images/products/wp-app_01_visual.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-wpApp .productsPage__visible .productsPage__visibleInner {
  width: auto;
  background: rgba(0, 0, 0, 0.35);
}
.productsPage-wpApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.productsPage-wpApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1 {
  width: 140px;
  margin-left: auto;
  margin-right: auto;
}
.productsPage-wpApp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleTxt {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.8;
  font-weight: 400;
  text-align: center;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent {
  width: 100%;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenContent .productsPage__hiddenContentInner {
  margin: 0 auto;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenTxt {
  margin: 15px 15px 0;
  color: #1b1d1f;
  font-size: 12px;
  line-height: 2;
  text-align: left;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .productsPage__hiddenImg {
  width: auto;
  height: 385px;
  margin: 10px auto 0;
  background: url(./../images/products/sp__wp-app_02_flow.png) no-repeat 50% 0;
  -moz-background-size: 174px auto;
       background-size: 174px auto;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .u-btn {
  padding-bottom: 30px;
  margin: 30px auto 0;
  width: 260px;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .u-btn a {
  display: block;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  padding: 14px;
}
.productsPage-wpApp .productsPage__hidden .productsPage__hiddenBlock .u-btn a span {
  padding-right: 28px;
}

/****************************
products page wp-app-lp
*****************************/
.productsPage-wpAppLp .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  min-width: initial;
  background: url(./../images/products/wp-app_01_visual.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-wpAppLp .productsPage__visible .productsPage__visibleInner {
  width: auto;
  background: rgba(0, 0, 0, 0.35);
}
.productsPage-wpAppLp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.productsPage-wpAppLp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock h1 {
  width: 140px;
  margin-left: auto;
  margin-right: auto;
}
.productsPage-wpAppLp .productsPage__visible .productsPage__visibleInner .productsPage__visibleBlock .productsPage__visibleTxt {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.8;
  font-weight: 400;
  text-align: center;
}

.productsPage-wpAppLp__merit {
  padding: 30px 0 35px;
}
.productsPage-wpAppLp__merit .productsPage-wpAppLp__meritBg {
  background: url(./../images/products/sp__wp-app-lp_merit.png) no-repeat 50% 0;
  -moz-background-size: auto 290px;
       background-size: auto 290px;
  height: 290px;
}
.productsPage-wpAppLp__merit .content__inner {
  margin-top: -75px;
}
.productsPage-wpAppLp__merit .content__inner .productsPage-wpAppLp__meritIcon {
  width: 52px;
  margin: 0 auto;
  font-size: 0;
  line-height: 0;
}
.productsPage-wpAppLp__merit .content__inner .productsPage-wpAppLp__meritIcon img {
  width: 100%;
  height: auto;
}
.productsPage-wpAppLp__merit .content__inner .u-text15 {
  margin-top: 15px;
}
.productsPage-wpAppLp__merit .content__inner .u-btn {
  margin: 10px auto 0;
  width: 260px;
}
.productsPage-wpAppLp__merit .content__inner .u-btn a {
  display: block;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  padding: 14px;
}
.productsPage-wpAppLp__merit .content__inner .u-btn a span {
  padding-right: 28px;
}

.productsPage-wpAppLp__case {
  width: 100%;
  height: auto;
  background-image: url(./../images/products/sp__wp-app-lp_case_bg.png);
  background-repeat: no-repeat;
  background-position: right 0 top 0;
  -moz-background-size: 320px auto;
       background-size: 320px auto;
}
.productsPage-wpAppLp__case .content__inner {
  padding: 25px 0 25px;
}
.productsPage-wpAppLp__case .u-ttl02 .u-ttl02En {
  font-size: 20px;
}
.productsPage-wpAppLp__case .productsPage-wpAppLp__caseImg {
  margin: 15px auto 0;
  width: auto;
  max-width: 400px;
}

.productsPage-wpAppLp__price {
  padding: 30px 0 0;
}
.productsPage-wpAppLp__price .u-ttl02 .u-ttl02En {
  font-size: 20px;
}
.productsPage-wpAppLp__price .productsPage-wpAppLp__priceList {
  margin-top: 20px;
}
.productsPage-wpAppLp__price .u-btn {
  margin: 30px auto 0;
  width: 260px;
}
.productsPage-wpAppLp__price .u-btn a {
  display: block;
  -webkit-border-radius: 22px;
     -moz-border-radius: 22px;
          border-radius: 22px;
  padding: 14px;
}
.productsPage-wpAppLp__price .u-btn a span {
  padding-right: 28px;
}

.productsPage-wpAppLp__priceListGroup {
  width: 100%;
  max-width: 400px;
  float: none;
  margin: 0 auto 20px;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
     -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}
.productsPage-wpAppLp__priceListGroup:last-child {
  margin-right: auto;
  margin-bottom: 0;
}
.productsPage-wpAppLp__priceListGroup .priceListTop {
  padding: 25px 0 20px;
}
.productsPage-wpAppLp__priceListGroup .priceListTop h4 {
  margin: 0 20px;
  font-size: 17px;
}
.productsPage-wpAppLp__priceListGroup .priceListTop .u-text15 {
  margin: 8px 20px 0;
  line-height: 1.7;
}
.productsPage-wpAppLp__priceListGroup .priceListTop .u-text15 br {
  display: none;
}
.productsPage-wpAppLp__priceListGroup .priceListTop .priceListTop__img {
  margin: 5px auto 0;
  width: 260px;
}
.productsPage-wpAppLp__priceListGroup .priceListBottom {
  -webkit-border-radius: 0 0 3px 3px;
     -moz-border-radius: 0 0 3px 3px;
          border-radius: 0 0 3px 3px;
  background: #2775f6;
  padding: 12px 20px;
}
.productsPage-wpAppLp__priceListGroup .priceListBottom h5 {
  margin-top: 1px;
  font-size: 26px;
}
.productsPage-wpAppLp__priceListGroup .priceListBottom h5 span {
  font-size: 13px;
  margin-left: 3px;
}
.productsPage-wpAppLp__priceListGroup .priceListBottom p {
  font-size: 14px;
  line-height: 1.9;
}
.productsPage-wpAppLp__priceListGroup .priceListBottom p:nth-of-type(2) {
  margin-top: 4px;
}

/****************************
products page smart-speaker
*****************************/
.productsPage-smartSpeaker .productsPage__visible {
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  min-width: initial;
  background: url(./../images/products/sp__smart-speaker_01_visual.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-smartSpeaker .productsPage__visible .productsPage__visibleInner .productsPage__visibleDevice {
  position: absolute;
  top: 13%;
  left: 0;
  right: 0;
  width: 320px;
  height: auto;
  margin: 0 auto;
  font-size: 0;
  line-height: 0;
}
.productsPage-smartSpeaker .productsPage__visible .productsPage__visibleInner .productsPage__visibleDevice img {
  width: 100%;
  height: auto;
}

.productsPage-smartSpeaker .u-ttl02 .u-ttl02En {
  font-size: 20px;
}
.productsPage-smartSpeaker .u-ttl02 .u-ttl02Ja {
  margin-top: 0;
  font-size: 10px;
  line-height: 1.4;
}

.productsPage-smartSpeaker__demo {
  padding: 30px 0 35px;
}

.productsPage-smartSpeaker__demoDisplay {
  margin: 20px auto 0;
  width: 290px;
  height: 163px;
  background: url(./../images/products/smart-speaker_demo_display.png) no-repeat 0 0/290px auto;
}
.productsPage-smartSpeaker__demoDisplay .productsPage-smartSpeaker__demoDevice {
  bottom: -30px;
  right: 0;
  width: 60px;
}

.productsPage-smartSpeaker__demoSlide {
  top: 5px;
  left: 11px;
  width: 262px;
  height: 149px;
}
.productsPage-smartSpeaker__demoSlide ul li {
  width: 262px;
  height: 149px;
}

.productsPage-smartSpeaker__demoChat {
  margin: 15px auto 0;
  width: 290px;
}
.productsPage-smartSpeaker__demoChat .demoChat__user .demoChat__wrap {
  width: 210px;
}
.productsPage-smartSpeaker__demoChat .demoChat__speaker {
  margin-top: 12px;
}
.productsPage-smartSpeaker__demoChat .demoChat__speaker .demoChat__wrap {
  width: 230px;
}
.productsPage-smartSpeaker__demoChat .demoChat__speaker .demoChat__speakerIcon {
  margin-top: 2px;
  width: 30px;
  height: 30px;
  -webkit-border-radius: 15px;
     -moz-border-radius: 15px;
          border-radius: 15px;
  -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
     -moz-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
}
.productsPage-smartSpeaker__demoChat .demoChat__speaker .demoChat__speakerIcon img {
  padding-top: 7px;
  width: 15px;
}
.productsPage-smartSpeaker__demoChat .demoChat__speaker .demoChat__wrap {
  margin-left: 40px;
}
.productsPage-smartSpeaker__demoChat .demoChat__wrap {
  -webkit-border-radius: 5px;
     -moz-border-radius: 5px;
          border-radius: 5px;
  -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
     -moz-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);
}
.productsPage-smartSpeaker__demoChat .demoChat__wrap p {
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0.025em;
  padding: 8px 10px;
}

.productsPage-smartSpeaker__case {
  margin-top: 30px;
}

.productsPage-smartSpeaker__caseList {
  width: auto;
  margin: 20px auto 0;
}
.productsPage-smartSpeaker__caseList li {
  float: none;
  width: 180px;
  margin: 0 auto 20px;
}
.productsPage-smartSpeaker__caseList li:last-child {
  margin: 0 auto 20px;
}
.productsPage-smartSpeaker__caseList li img {
  display: block;
  width: 180px;
  height: 180px;
}
.productsPage-smartSpeaker__caseList li p {
  margin-top: 5px;
}

/****************************
products page promon
*****************************/
.productsPage-promon .productsPage__visible {
  min-width: initial;
  height: -webkit-calc(100vh - 70px);
  height: -moz-calc(100vh - 70px);
  height: calc(100vh - 70px);
  background: url(./../images/products/sp__promon_01_bg.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__visual {
  width: 320px;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-47%) translateX(-50%);
     -moz-transform: translateY(-47%) translateX(-50%);
      -ms-transform: translateY(-47%) translateX(-50%);
       -o-transform: translateY(-47%) translateX(-50%);
          transform: translateY(-47%) translateX(-50%);
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__visual img.sp {
  display: block;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon {
  width: 300px;
  position: absolute;
  bottom: -73px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon ul li {
  width: 100px;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon ul li:nth-child(1) h3 {
  padding-top: 9px;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon ul li h3 {
  font-size: 12px;
  line-height: 1.5;
  text-shadow: 0px 3px 18px 6px rgba(0, 0, 0, 0.08);
  height: 37px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon ul li h3 br {
  display: block;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon ul li p {
  margin: 8px auto 0;
  width: 80px;
  height: 80px;
  background: rgba(255, 255, 255, 0.95);
  -webkit-box-shadow: 0px 2px 4px 2px rgba(0, 0, 0, 0.08);
     -moz-box-shadow: 0px 2px 4px 2px rgba(0, 0, 0, 0.08);
          box-shadow: 0px 2px 4px 2px rgba(0, 0, 0, 0.08);
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon ul li p img {
  width: 36px;
  padding-top: 22px;
}
.productsPage-promon .productsPage__visible .productsPage__visibleInner .productsPage__icon .productsPage__iconTxt {
  margin-top: 10px;
}

.productsPage-promon__overview {
  min-width: 100%;
  padding: 90px 0 30px;
}
.productsPage-promon__overview .content__inner:nth-child(1) .productsPage-promon__overviewImg {
  width: auto;
}
.productsPage-promon__overview .content__inner:nth-child(2) {
  margin-top: 30px;
}
.productsPage-promon__overview .content__inner:nth-child(2) .productsPage-promon__overviewImg {
  width: auto;
}

.productsPage-promon__overviewTtl {
  font-size: 14px;
  line-height: 1.4;
}
.productsPage-promon__overviewTtl br {
  display: block;
}

.productsPage-promon__overviewImg {
  margin: 10px auto 0;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.productsPage-promon__overviewTxt {
  margin: 10px 0 0 0;
  width: auto;
}
.productsPage-promon__overviewTxt p,
.productsPage-promon__overviewTxt small {
  color: #1b1d1f;
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: 0.075em;
}
.productsPage-promon__overviewTxt p {
  line-height: 1.5;
}
.productsPage-promon__overviewTxt small {
  margin-top: 5px;
}
.productsPage-promon__overviewTxt .productsPage-promon__overviewTxt01,
.productsPage-promon__overviewTxt .productsPage-promon__overviewTxt02 {
  width: auto;
  float: none;
}
.productsPage-promon__overviewTxt .productsPage-promon__overviewTxt01 br,
.productsPage-promon__overviewTxt .productsPage-promon__overviewTxt02 br {
  display: none;
}
.productsPage-promon__overviewTxt .productsPage-promon__overviewTxt02 {
  margin-top: 5px;
}

.productsPage-promon__function {
  min-width: initial;
  padding: 20px 0 40px;
}
.productsPage-promon__function .content__inner .productsPage-promon__functionTtl {
  font-size: 19px;
  line-height: 1;
}
.productsPage-promon__function .content__inner .productsPage-promon__functionIcon {
  width: auto;
  margin: 18px auto 0;
  text-align: center;
  font-size: 0;
  line-height: 0;
}
.productsPage-promon__function .content__inner .productsPage-promon__functionIcon img {
  max-width: 320px;
}

.productsPage-promon__price {
  min-width: initial;
  padding: 170px 0 26px;
}

.productsPage-promon__priceList ul {
  width: auto;
}
.productsPage-promon__priceList ul li {
  width: 100%;
  float: none;
  margin-right: 0;
  margin-bottom: 45px;
}
.productsPage-promon__priceList ul li:last-child {
  margin-right: 0;
}
.productsPage-promon__priceList ul li a {
  background: #fff;
  padding: 20px 4px 30px;
  border: #ccdffc 1px solid;
  -webkit-border-radius: 5px;
     -moz-border-radius: 5px;
          border-radius: 5px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.productsPage-promon__priceList ul li a h3 {
  line-height: 1;
}
.productsPage-promon__priceList ul li a h3 br {
  display: none;
}
.productsPage-promon__priceList ul li a h4 {
  margin-top: 12px;
  font-size: 25px;
}
.productsPage-promon__priceList ul li a h4 span {
  font-size: 12px;
  margin-left: 4px;
}
.productsPage-promon__priceList ul li a .productsPage-promon__priceListImg {
  margin: 15px auto 15px;
  padding: 25px 0 20px;
}
.productsPage-promon__priceList ul li a .productsPage-promon__priceListImg img {
  width: 191px;
  height: auto;
}
.productsPage-promon__priceList ul li a small {
  font-size: 12px;
  line-height: 1.6;
}
.productsPage-promon__priceList ul li a .productsPage-promon__priceListBtn {
  width: 230px;
  bottom: -21px;
  font-size: 14px;
}
.productsPage-promon__priceList ul li a .productsPage-promon__priceListBtn span {
  width: 230px;
  color: #2775f6;
  border: #2775f6 1px solid;
  background: #fff;
  padding: 13px;
  -webkit-border-radius: 21px;
     -moz-border-radius: 21px;
          border-radius: 21px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.productsPage-promon__priceList ul li a:hover {
  border: #ccdffc 1px solid;
  -webkit-box-shadow: none;
     -moz-box-shadow: none;
          box-shadow: none;
}
.productsPage-promon__priceList ul li a:hover .productsPage-promon__priceListBtn span {
  color: #2775f6;
  background: #fff;
  -webkit-box-shadow: 0;
     -moz-box-shadow: 0;
          box-shadow: 0;
  -webkit-box-shadow: none;
     -moz-box-shadow: none;
          box-shadow: none;
}

.productsPage-promon__contact small {
  margin-top: 8px;
}
.productsPage-promon__contact h3 {
  margin-top: 10px;
}
.productsPage-promon__contact h4 {
  margin-top: 5px;
  font-size: 21px;
}

.productsPage-promon__contactBtn {
  font-size: 14px;
}
.productsPage-promon__contactBtn a {
  width: 280px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  color: #2775f6;
  background: #fff;
  padding: 13px;
  -webkit-border-radius: 21px;
     -moz-border-radius: 21px;
          border-radius: 21px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}

.productsPage-promon__function .productsPage-promon__contact {
  position: absolute;
  bottom: -193px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.productsPage-promon__function .productsPage-promon__contactBtn a {
  -webkit-box-shadow: 0px 2px 8px 2px rgba(0, 0, 0, 0.08);
     -moz-box-shadow: 0px 2px 8px 2px rgba(0, 0, 0, 0.08);
          box-shadow: 0px 2px 8px 2px rgba(0, 0, 0, 0.08);
}
.productsPage-promon__function .productsPage-promon__contactBtn a:hover {
  color: #2775f6;
  background: #fff;
  border: #fff 1px solid;
}

.productsPage-promon__price .productsPage-promon__contact {
  margin-top: 20px;
}
.productsPage-promon__price .productsPage-promon__contactBtn a:hover {
  color: #2775f6;
  background: #fff;
  border: #2775f6 1px solid;
}

/****************************
products page wphtmlp
*****************************/
.productsPage-wphtmlp__mvArea {
  height: auto;
  min-height: 100vh;
  background: url("./../images/products/wphtmlp_01_bg.jpg") no-repeat center center/cover;
}
.productsPage-wphtmlp__mvArea__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.productsPage-wphtmlp__mvArea__inner__thumb {
  width: 100%;
}
.productsPage-wphtmlp__mvArea__inner__textWrap {
  padding: 0 35px;
}
.productsPage-wphtmlp__mvArea__inner__textWrap__logo {
  width: 180px;
}
.productsPage-wphtmlp__mvArea__inner__textWrap__text {
  margin-top: 20px;
  font-size: 12px;
}
.productsPage-wphtmlp__contentArea {
  padding-top: 27px;
}
.productsPage-wphtmlp__contentArea__title {
  font-size: 23px;
}
.productsPage-wphtmlp__contentArea__text {
  margin-top: 8px;
  font-size: 12px;
}
.productsPage-wphtmlp__contentArea__anchorLinkList {
  padding: 12px 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.productsPage-wphtmlp__contentArea__anchorLinkList__item {
  width: 100%;
  padding: 13px 0;
  border-top: 1px solid #e5e5e5;
}
.productsPage-wphtmlp__contentArea__anchorLinkList__item:nth-child(1) {
  border-top: none;
}
.productsPage-wphtmlp__contentArea__anchorLinkList__item__thumb {
  width: 90px;
  margin: 0 auto;
}
.productsPage-wphtmlp__contentArea__anchorLinkList__item__title {
  margin: 13px 0;
  font-size: 16px;
  text-align: center;
}
.productsPage-wphtmlp__contentArea__anchorLinkList__item__text {
  margin-top: 7px;
  font-size: 12px;
  line-height: 1.5;
  text-align: left;
}
.productsPage-wphtmlp__contentArea__anchorLinkList__item__link {
  margin-top: 10px;
  padding-right: 17px;
  font-size: 13px;
}
.productsPage-wphtmlp__contentArea__contentList__item {
  margin-top: -50px;
  padding-top: 50px;
}
.productsPage-wphtmlp__contentArea__contentList__item__layer {
  height: auto;
}
.productsPage-wphtmlp__contentArea__contentList__item__layer__inner {
  width: 100%;
  height: 100%;
  margin: 0;
  padding-top: 0;
  padding-left: 15px;
  padding-right: 15px;
  display: block;
}
.productsPage-wphtmlp__contentArea__contentList__item__layer__inner__textBox {
  padding-top: 40px !important;
}
.productsPage-wphtmlp__contentArea__contentList__item__layer__inner__textBox::before {
  height: 30px !important;
}
.productsPage-wphtmlp__contentArea__contentList__item__layer__inner__textBox__title {
  margin-bottom: 10px;
  font-size: 16px;
}
.productsPage-wphtmlp__contentArea__contentList__item__layer__inner__textBox__text {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.5;
}
.productsPage-wphtmlp__contentArea__contentList__item:nth-child(odd) .productsPage-wphtmlp__contentArea__contentList__item__layer__inner {
  padding-left: 15px;
}
.productsPage-wphtmlp__contentArea__contentList__item:nth-child(1) .productsPage-wphtmlp__contentArea__contentList__item__layer__inner {
  padding-bottom: 53%;
  background: url("./../images/products/sp__wphtmlp_03_thumb_01.png") no-repeat center bottom 10%/100% auto;
}
.productsPage-wphtmlp__contentArea__contentList__item:nth-child(2) .productsPage-wphtmlp__contentArea__contentList__item__layer__inner {
  padding-bottom: 62%;
  background: url("./../images/products/sp__wphtmlp_03_thumb_02.png") no-repeat center bottom 10%/100% auto;
}
.productsPage-wphtmlp__contentArea__contentList__item:nth-child(3) .productsPage-wphtmlp__contentArea__contentList__item__layer__inner {
  padding-bottom: 55%;
  background: url("./../images/products/sp__wphtmlp_03_thumb_03.png") no-repeat center bottom -5%/100% auto;
}
.productsPage-wphtmlp__pageFooter {
  padding: 30px 0;
}
.productsPage-wphtmlp__pageFooter__link {
  width: 250px;
  margin-bottom: 7px;
  padding: 11px 0;
  -webkit-border-radius: 17px;
     -moz-border-radius: 17px;
          border-radius: 17px;
  font-size: 14px;
}
.productsPage-wphtmlp__pageFooter__link__icon {
  width: 13px;
  height: 13px;
  margin-left: 6px;
}
.productsPage-wphtmlp__pageFooter__link__icon::before {
  top: 6px;
}
.productsPage-wphtmlp__pageFooter__link__icon::after {
  top: 0;
}
.productsPage-wphtmlp__pageFooter .productsPage-wphtmlp__pageFooter__text-red, .productsPage-wphtmlp__pageFooter .productsPage-wphtmlp__pageFooter__text {
  margin-top: 4px;
  font-size: 12px;
}
/********************************************************
contents - case
**********************************************************/
/****************************
case index
*****************************/
.caseIndex .u-indexList {
  margin-top: 20px;
}
.caseIndex .u-indexList .u-indexList__item {
  margin-right: 0;
}
.caseIndex .u-indexList .u-indexList__item .u-indexList__itemLabel {
  margin-top: 12px;
  font-size: 12px;
}
.caseIndex .u-indexList .u-indexList__item h3 {
  margin-top: 3px;
  font-size: 16px;
  line-height: 1.5;
}
.caseIndex .u-indexList .u-indexList__item .u-indexList__itemLink {
  margin-top: 4px;
}

/****************************
case page common
*****************************/
.casePage .caseList {
  margin-top: 40px;
}

.casePage-main {
  width: 100%;
  height: 240px;
}
.casePage-main.casePage-main--compass {
  background: url(./../images/case/sp_compass_main.jpg) no-repeat 50% 50%;
  -moz-background-size: cover;
       background-size: cover;
}

.casePage-content {
  width: auto;
  margin: 30px 15px 0;
}
.casePage-content h2 {
  font-size: 14px;
  line-height: 1.8;
  font-weight: 500;
  text-align: center;
}
.casePage-content h1 {
  font-size: 21px;
  line-height: 1.5;
  font-weight: 300;
  text-align: center;
}
.casePage-content .casePage-content__txt {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.8;
}
.casePage-content .casePage-content__txt p {
  margin-bottom: 10px;
}
.casePage-content .casePage-content__txt p:last-child {
  margin-bottom: 0;
}
.casePage-content .casePage-content__txt.museum {
  display: block;
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.8;
}
.casePage-content .casePage-content__txt.museum p {
  margin-bottom: 10px;
}
.casePage-content .casePage-content__txt.museum p:first-child {
  margin-right: 0;
}
.casePage-content .casePage-content__txt.museum p:last-child {
  margin-bottom: 0;
}
.casePage-content .casePage-content__flow {
  margin: 20px auto 0;
  width: auto;
  max-width: 400px;
}
.casePage-content .casePage-content__list {
  margin-top: 15px;
}
.casePage-content .casePage-content__list li {
  width: auto;
  max-width: 400px;
  float: none;
  margin: 10px auto 0 auto;
}
.casePage-content .casePage-content__list li:nth-child(1) {
  margin-top: 0;
}
.casePage-content .casePage-content__list li:nth-child(2) {
  margin-right: auto;
}
.casePage-content .casePage-content__list li:nth-child(-n+2) {
  margin-top: 10px;
}
.casePage-content .casePage-content__list li p {
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.6;
}
.casePage-content .casePage-content__img {
  margin-top: 15px;
}
.casePage-content .casePage-content__img li {
  width: auto;
  max-width: 400px;
  float: none;
  margin: 10px auto 0 auto;
  font-size: 0;
  line-height: 0;
}
.casePage-content .casePage-content__img li:nth-child(1) {
  margin-top: 0;
}
.casePage-content .casePage-content__img li:nth-child(2) {
  margin-right: auto;
}
.casePage-content .casePage-content__img li:nth-child(-n+2) {
  margin-top: 10px;
}
.casePage-content .casePage-appBtn {
  margin: 30px auto 0;
  width: auto;
}
.casePage-content .casePage-appBtn li {
  width: auto;
  float: none;
  max-width: 300px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 15px;
}
.casePage-content .casePage-appBtn li:last-child {
  margin-right: auto;
  margin-bottom: 0;
}
.casePage-content .casePage-appBtn li a {
  padding: 12px 0;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.casePage-content .casePage-appBtn li a:hover {
  opacity: 1;
}
.casePage-content .casePage-appBtn li a img {
  width: 110px;
}
.casePage-content .casePage-content__link {
  margin-top: 20px;
  font-size: 14px;
}
.casePage-content .u-snsList {
  margin-top: 20px;
}

.casePage-content__singleImage {
  margin-top: 15px;
}

/********************************************************
contents - recruit
**********************************************************/
/****************************
recruit index
*****************************/
.recruitIndex-vision {
  height: 180px;
}
.recruitIndex-vision .u-ttl02 {
  position: absolute;
  top: 26px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
.recruitIndex-vision .u-ttl02 h2 {
  font-size: 25px;
}
.recruitIndex-vision .u-ttl02 .u-text18 {
  margin-top: 6px;
  line-height: 1.6;
  font-size: 13px;
}

.recruitIndex-vision__btn {
  width: 35px;
  height: 35px;
  margin: 10px auto 0;
}
.recruitIndex-vision__btn a {
  width: 35px;
  height: 35px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.recruitIndex-vision__btn a:hover {
  background: transparent;
}
.recruitIndex-vision__btn a:before, .recruitIndex-vision__btn a:after {
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
}
.recruitIndex-vision__btn a:before {
  top: 16px;
  left: 9px;
  width: 15px;
}
.recruitIndex-vision__btn a:after {
  top: 9px;
  left: 16px;
  height: 15px;
}

.recruitIndex-about {
  margin-top: 40px;
}
.recruitIndex-about .u-text15 {
  margin-top: 15px;
  text-align: left;
}
.recruitIndex-about .u-linkMore {
  margin-top: 10px;
}

.recruitIndex-guideline {
  margin-top: 40px;
}
.recruitIndex-guideline .u-text15 {
  margin-top: 15px;
  text-align: left;
}
.recruitIndex-guideline .u-btn {
  width: 260px;
  margin: 15px auto 0;
}
.recruitIndex-guideline .u-btn a {
  padding: 14px;
}
.recruitIndex-guideline .u-btn a span {
  padding-right: 28px;
}

/****************************
recruit page common
*****************************/
.recruitPage-common__txt h3 {
  line-height: 1.4;
}
.recruitPage-common__txt h2 {
  font-size: 18px;
  line-height: 1.6;
  font-weight: 500;
}
.recruitPage-common__txt h4 {
  line-height: 1.8;
  margin-bottom: 1.2em;
  font-weight: 400;
}
.recruitPage-common__txt .u-text15 {
  margin-bottom: 1.25em;
}

/****************************
recruit about
*****************************/
.recruitPage-about .recruitPage-about__img {
  margin-top: 30px;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

/****************************
recruit vision
*****************************/
.recruitPage-vision {
  margin-top: 20px;
}

.recruitPage-vision__goal {
  margin: 20px 0;
  height: 320px;
  position: relative;
}
.recruitPage-vision__goal .content__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin-left: 0;
  margin-right: 0;
}
.recruitPage-vision__goal .content__inner div {
  margin-top: 0;
  width: auto;
  float: none;
}
.recruitPage-vision__goal .content__inner div h5 {
  font-size: 40px;
}
.recruitPage-vision__goal .content__inner div h5 span {
  margin-left: 2px;
  font-size: 13px;
}
.recruitPage-vision__goal .content__inner div h6 {
  font-size: 24px;
}
.recruitPage-vision__goal .content__inner div:nth-child(1) p, .recruitPage-vision__goal .content__inner div:nth-child(3) p {
  margin-top: 10px;
}
.recruitPage-vision__goal .content__inner div:nth-child(2) {
  border: 0;
  border-top: rgba(255, 255, 255, 0.1) 1px solid;
  border-bottom: rgba(255, 255, 255, 0.1) 1px solid;
  padding: 20px 0;
  margin: 20px 0;
}
.recruitPage-vision__goal .content__inner div:nth-child(2) p {
  margin-top: 10px;
}

/****************************
recruit guideline
*****************************/
.recruitPage-guideline {
  margin-top: 20px;
  padding: 0 15px;
}
.recruitPage-guideline .u-btn {
  width: 100%;
  min-width: 260px;
  margin: 20px auto 0;
}
.recruitPage-guideline .u-btn a {
  display: block;
  padding: 14px;
}
.recruitPage-guideline .u-btn a span {
  padding-right: 28px;
}

.recruitPage-guideline__item {
  margin-top: 20px;
}
.recruitPage-guideline__item .u-table01 {
  margin-top: 10px;
}
.recruitPage-guideline__item .u-table01 th {
  width: 110px;
}

.recruitPage-guideline__tab {
  margin-top: 25px;
}
.recruitPage-guideline__tab li {
  float: none;
  margin-right: 0;
  letter-spacing: 0;
}

.recruitPage-guideline__tabItem {
  margin-top: 25px;
}

/********************************************************
contents - contact
**********************************************************/
/****************************
contact index
*****************************/
.contact__form {
  margin-top: 15px;
}
.contact__form table tr th,
.contact__form table tr td {
  width: 100%;
  vertical-align: top;
  display: block;
}
.contact__form table tr th {
  padding: 0;
}
.contact__form table tr td {
  position: relative;
  padding: 4px 0 12px;
}
.contact__form table tr td input[type=text],
.contact__form table tr td input[type=email],
.contact__form table tr td textarea {
  padding: 6px 8px;
  font-size: 13px;
  line-height: 1.8;
}
.contact__form table tr td textarea {
  height: 120px;
}
.contact__form .contact__check {
  margin-top: 20px;
}
.contact__form .contact__btn {
  margin-top: 20px;
}
.contact__form .contact__btn li {
  display: inline-block;
  margin-right: 6px;
}
.contact__form .contact__btn li:last-child {
  margin-right: 0;
}
.contact__form .contact__btn li input[type=submit],
.contact__form .contact__btn li input[type=button] {
  padding: 14px 18px;
  font-size: 13px;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  -webkit-border-radius: 28px;
     -moz-border-radius: 28px;
          border-radius: 28px;
  letter-spacing: 0;
}
.contact__form .contact__btn li input[type=submit]:hover {
  background: #fff;
  color: #2775f6;
}
.contact__form .contact__btn li input[type=button]:hover {
  background: #fff;
  color: #666;
}

.contactConfirm table tr th {
  margin-top: 8px;
  border-bottom: 0;
}
.contactConfirm table tr td {
  padding: 0px 0 8px;
}
.contactConfirm table tr:first-child td {
  border-top: 0;
}
.contactConfirm table tr:first-child th {
  margin-top: 0;
  padding-top: 8px;
  border-top: #e5e5e5 1px solid;
}

.contact__policy {
  margin-top: 15px;
}
.contact__policy .u-commonTxt {
  margin-top: 5px;
  height: 160px;
  padding: 10px 15px;
}
.contact__policy .u-commonTxt p {
  margin-top: 0.1em;
}

/****************************
contact form error
*****************************/
.formError {
  margin-top: 0 !important;
  opacity: 1 !important;
  top: -26px !important;
  left: auto !important;
  right: 0 !important;
}

.contact__check .formError {
  left: auto !important;
  top: -32px !important;
}

.formErrorContent {
  width: 100%;
  min-width: initial;
}

/********************************************************
contents - news
**********************************************************/
/****************************
news index
*****************************/
.newsIndex .content__inner.page__content {
  margin-left: 0;
  margin-right: 0;
}
.newsIndex .content__inner.page__content .u-newsList {
  margin-left: 15px;
  margin-right: 15px;
}

/****************************
news page
*****************************/
.newsPage .newsPage__ttl {
  text-align: left;
}
.newsPage .newsPage__ttl h2 {
  margin-top: 4px;
}
.newsPage .newsPage__ttl h2 br {
  display: none;
}
.newsPage .newsPage__post {
  margin-top: 10px;
}
.newsPage .newsPage__post p {
  margin-top: 0.75em;
  text-align: left;
}

.newsPage--privacy-mark .newsPage__post .u-imageText {
  margin-top: 20px;
  text-align: center;
}
.newsPage--privacy-mark .newsPage__post .u-imageText img {
  width: 70px;
}
.newsPage--privacy-mark .newsPage__post .u-text13 {
  margin-top: 5px;
  text-align: center;
}

.newsPage--renewal-website .newsPage__post ul {
  margin-top: 20px;
}
.newsPage--renewal-website .newsPage__post ul li {
  width: 100%;
  max-width: 400px;
  display: block;
  margin: 0 auto;
}
.newsPage--renewal-website .newsPage__post ul li:last-child {
  margin: 10px auto 0 auto;
}

.newsPage--partner-mapua .newsPage__post ul {
  margin-top: 20px;
}
.newsPage--partner-mapua .newsPage__post ul li {
  width: 160px;
  display: block;
  margin: 0 auto;
}
.newsPage--partner-mapua .newsPage__post ul li:last-child {
  margin: 10px auto 0 auto;
}

/********************************************************
contents - blog
**********************************************************/
/****************************
blog index
*****************************/
.blogIndex .blogContent {
  width: 100%;
  display: block;
}
.blogIndex .blogContent.single {
  width: -webkit-calc(100% - 30px);
  width: -moz-calc(100% - 30px);
  width: calc(100% - 30px);
}
.blogIndex .blogTitle {
  margin-bottom: 15px;
}
.blogIndex .blogTitle p {
  margin-bottom: 10px;
  font-size: 14px;
}
.blogIndex .blogTitle h3 {
  font-size: 20px;
}
.blogIndex .blog__selectCat {
  width: -webkit-calc(100% - 60px);
  width: -moz-calc(100% - 60px);
  width: calc(100% - 60px);
}
.blogIndex .u-indexList .u-indexList__item {
  margin: 0 auto;
  margin-top: 42px;
  width: 100%;
  text-align: left;
}
.blogIndex .u-indexList .u-indexList__item:first-child {
  margin-top: 0;
}
.blogIndex .u-indexList .u-indexList__item .item__img {
  margin: 0 auto;
  height: 52.5vw;
}
@media screen and (max-width: 375px) {
  .blogIndex .u-indexList .u-indexList__item .item__img {
    height: 50.5vw;
  }
}
.blogIndex .u-indexList .u-indexList__item .item__content {
  margin: 0 auto;
  width: 75vw;
}
.blogIndex .u-indexList .u-indexList__item .item__content .datecat p {
  font-size: 14px;
}
.blogIndex .u-indexList .u-indexList__item .item__content .datecat p a {
  font-size: 12px;
  color: #2E79F2;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
}
.blogIndex .u-indexList .u-indexList__item .item__content .item__txt {
  margin-top: 12px;
  height: auto;
}
.blogIndex .u-indexList .u-indexList__item .item__content .item__txt p {
  font-size: 14px;
}
.blogIndex .u-indexList .u-indexList__item .item__content .tags {
  margin-top: 21px;
}
.blogIndex .u-indexList .u-indexList__item .item__content .tags .tag {
  margin-right: 20px;
  font-size: 14px;
}
.blogIndex .sideBar {
  margin-top: 40px;
  margin-bottom: 22px;
  margin-left: 0;
  width: 100%;
  display: block;
}
.blogIndex .sideBar__section {
  margin-top: 36px;
}
.blogIndex .sideBar__section h3 {
  padding-top: 20px;
  font-size: 20px;
}
.blogIndex .sideBar__section .item__list {
  margin-top: 7px;
  padding-top: 12px;
}
.blogIndex .sideBar__section .item__list.cat .item {
  margin-top: 5px;
}
.blogIndex .sideBar__section .item__list.tag .item {
  margin-top: 5px;
}
.blogIndex .blogSinglePage .u-ttl01 {
  margin-top: 20px;
}
.blogIndex .blogSinglePage .u-ttl01 h3 {
  font-size: 18px;
}
.blogIndex .blogSinglePage .content__inner {
  margin: 0 auto;
  margin-top: 35px;
  width: 100%;
}
.blogIndex .blogSinglePage .content__inner .content__tags {
  margin-top: 40px;
  padding-top: 0px;
}
.blogIndex .blogSinglePage .content__inner .content__tags .item {
  margin-top: 5px;
}
.blogIndex .blogSinglePage .content__inner .content__sns {
  margin-top: 24px;
}
.blogIndex .blogSinglePage .content__inner .content__author {
  margin-top: 30px;
  padding: 15px 20px;
}
.blogIndex .blogSinglePage .content__inner .content__author .img {
  width: 40px;
}
.blogIndex .blogSinglePage .content__inner .content__author .text {
  margin-left: 15px;
  display: inline-block;
  vertical-align: middle;
}
.blogIndex .blogSinglePage .content__inner .content__author .text .name p {
  font-size: 14px;
}
.blogIndex .blogSinglePage .content__inner .content__author .text .position p {
  font-size: 12px;
}

/********************************************************
contents - pagination
**********************************************************/
/****************************
pagination index
*****************************/
.pagination .page {
  margin: 60px auto 54px;
}
.pagination ul {
  margin-top: 33px;
}
.pagination ul li {
  padding: 7px 5px;
}
.pagination ul li:hover {
  opacity: 0.8;
}
.pagination ul li a,
.pagination ul li p {
  font-size: 14px;
}

/********************************************************
contents - breadcrumbs
**********************************************************/
/****************************
breadcrumbs index
*****************************/
.breadcrumbs {
  margin-top: 15px;
  width: 94%;
}
.breadcrumbs ul li {
  margin-top: 5px;
}

/********************************************************
Cookie Modal
**********************************************************/
.cookieModal__inner__text {
  font-size: 13px;
  line-height: 1.92;
}
.cookieModal__inner__text.lang_en {
  font-size: 18px;
}
.cookieModal__inner__btn {
  margin-top: 20px;
}
.cookieModal__inner__agreeBtn {
  padding: 10px 15px;
  font-size: 14px;
}

.archivePage__articleCategoryList {
  margin-bottom: 20px;
}

.casePage-content__txtContTitle {
  font-size: 30px;
  padding-bottom: 0;
  margin-bottom: 20px;
}

.casePage-content__txtArea {
  margin: 30px auto;
  padding: 30px 15px 40px;
}

.casePage__pointAreaItemPixaArea {
  display: block;
}

.casePage__pointAreaItemPixaAreaPixCat {
  font-size: 12px;
}

.casePage__pointAreaItemPixaAreaPix {
  margin: 0 auto 20px;
}

.casePage__pointAreaItemText {
  font-size: 18px;
  margin-bottom: 6px;
}

.casePage__pointAreaItemPixaAreaPixImg {
  display: block;
}

.casePage__pointAreaItemTitle {
  font-size: 24px;
}

.casePage__pointAreaItem {
  margin-bottom: 40px;
}

.casePage__infoAreaCont2clm {
  display: block;
}

.casePage__infoAreaCont2clmitem {
  width: 100%;
}

.casePage__infoAreaContWrap {
  padding: 20px 15px 30px;
}

.casePage__infoAreaCont2clmPicImg {
  margin-right: 0;
  margin: 20px auto;
  max-width: 300px;
  display: block;
}
/*# sourceMappingURL=sp.css.map */