@charset "UTF-8";
/* ========================================================================
* 変数
======================================================================== */
/* ========================================================================
* mixin
======================================================================== */
/* ========================================================================
* styles
======================================================================== */
#wrapper {
  text-align: center;
}

#share {
  padding-bottom: 100px;
}
@media (max-width: 767px) {
  #share {
    padding-bottom: 70px;
  }
}
#share h2 {
  font-size: 62.85px;
  font-family: "HelveticaNeueLTPro-Bd";
  line-height: 100%;
  border-bottom: #000 1px solid;
  line-height: 44%;
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  #share h2 {
    font-size: 31px;
    margin-bottom: 50px;
  }
}
#share ul li {
  display: inline-block;
  padding: 0 60px;
}
@media (max-width: 767px) {
  #share ul li {
    padding: 0 10px;
  }
}
@media (max-width: 767px) {
  #share ul li img {
    width: 50%;
  }
}

br.sp {
  display: none;
}
@media (max-width: 767px) {
  br.sp {
    display: block;
  }
}

footer {
  background-color: #000;
  width: 100%;
}
footer .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 50px;
  padding-bottom: 66px;
  color: #fff;
  margin: 0 auto;
}
@media (max-width: 767px) {
  footer .inner {
    flex-direction: column;
    width: 84%;
    padding-top: 21px;
    padding-bottom: 18px;
  }
}
footer .inner .left-cols {
  text-align: left;
}
@media (max-width: 767px) {
  footer .inner .left-cols {
    text-align: center;
    margin-bottom: 18px;
  }
}
footer .inner .left-cols img {
  width: 214px;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  footer .inner .left-cols img {
    width: 150px;
    margin-bottom: 10px;
  }
}
footer .inner .left-cols span {
  font-size: 10px;
  line-height: 100%;
}
@media (max-width: 767px) {
  footer .inner .left-cols span {
    font-size: 5px;
    transform: scale(0.8);
    display: block;
  }
}
footer .inner .right-cols {
  text-align: right;
}
@media (max-width: 767px) {
  footer .inner .right-cols {
    text-align: center;
    padding-right: 0px;
  }
}
footer .inner .right-cols ul {
  display: flex;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  footer .inner .right-cols ul {
    flex-direction: column;
  }
}
footer .inner .right-cols ul li {
  font-size: 17px;
}
footer .inner .right-cols ul li::before {
  content: "|";
  margin: 0 20px;
}
footer .inner .right-cols ul li:nth-child(1)::before {
  content: "";
}
@media (max-width: 767px) {
  footer .inner .right-cols ul li:nth-child(1)::before {
    font-size: 6px;
    content: "＞＞ ";
  }
}
@media (max-width: 767px) {
  footer .inner .right-cols ul li::before {
    font-size: 6px;
    content: "＞＞ ";
    margin: 0 0px;
  }
}
footer .inner .right-cols ul li a {
  color: #fff;
  letter-spacing: 0.13em;
}
@media (max-width: 767px) {
  footer .inner .right-cols ul li a {
    font-size: 6px;
  }
}
footer .inner .right-cols span {
  font-family: "HelveticaNeueLTPro-UltLt";
  font-size: 12px;
  letter-spacing: 0.05rem;
}
@media (max-width: 767px) {
  footer .inner .right-cols span {
    font-size: 5px;
    transform: scale(0.8);
    display: block;
  }
}

/* ========================================================================
* effects
======================================================================== */
.text-animation {
  display: inline-block;
  position: relative;
  color: transparent;
  text-transform: uppercase;
}
.text-animation:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 1.2em;
  -webkit-transform: translate(-50%, -55%);
  -ms-transform: translate(-50%, -55%);
  transform: translate(-50%, -55%);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.text-animation.circle:before {
  background-image: url(../images/circle.svg);
}
.text-animation.square:before {
  background-image: url(../images/square.svg);
}
.text-animation.triangle:before {
  background-image: url(../images/triangle.svg);
}
.text-animation.state-1:before {
  width: 1px;
}
.text-animation.state-2:before {
  width: 0.9em;
}
.text-animation.state-3 {
  color: black;
}
.text-animation.state-3:before {
  width: 0;
}

span.effect-pic {
  display: inline-block;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  span.effect-pic {
    width: 100%;
  }
}
span.effect-pic:after {
  display: block;
  content: "";
  background: #000;
  width: 200%;
  height: 100%;
  position: absolute;
  top: 0;
  left: -200%;
}
span.effect-pic.effect-scroll::after {
  animation-name: slideInCover;
  animation-timing-function: ease-out;
  animation-duration: 0.7s;
  animation-fill-mode: forwards;
}
span.effect-pic img {
  opacity: 0;
}
span.effect-pic.effect-scroll img {
  animation-name: showOutPic;
  animation-timing-function: ease-out;
  animation-duration: 0.7s;
  animation-fill-mode: forwards;
}

@keyframes showOutPic {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes slideInCover {
  0% {
    left: -200%;
  }
  50% {
    left: 0%;
  }
  100% {
    left: 200%;
  }
}
.text-effect {
  transform: skew(15deg, 15deg) translate(15px, 10px);
  transform-origin: top left;
  opacity: 0;
  transition: all 0.7s ease-in-out;
}
.text-effect.effect-scroll {
  transform: skew(0deg, 0deg) translate(0px, 0px);
  opacity: 1;
}

* {
  padding: 0;
  margin: 0;
  line-height: 100%;
  box-sizing: border-box;
  font-feature-settings: "palt";
  list-style: none;
  position: relative;
  font-weight: normal;
}

body {
  text-align: center;
  font-family: "a-otf-futo-go-b101-pr6n", sans-serif;
}
body a {
  text-decoration: none;
}

header {
  display: inline-block;
  width: 100%;
  min-width: 1400px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 23px 0;
}
@media (max-width: 767px) {
  header {
    min-width: 100%;
    padding: 0;
    background-color: rgba(255, 255, 255, 0);
  }
}
header .menu {
  z-index: 100;
  position: fixed;
  top: 25px;
  left: 17px;
  display: none;
}
header .menu img {
  width: 32px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.5s ease-out;
}
header .menu img.opened {
  opacity: 0;
}
header .menu.opened img.opened {
  opacity: 1;
}
header .menu.opened img.closed {
  opacity: 0;
}
@media (max-width: 767px) {
  header .menu {
    display: block;
  }
}
header .inner {
  display: inline-flex;
  max-width: 1400px;
  width: 100%;
  justify-content: space-between;
}
@media (max-width: 767px) {
  header .inner {
    display: none;
    flex-direction: column;
    justify-content: space-around;
    max-width: 100%;
    height: 100vh;
    background-color: white;
  }
}
@media (max-width: 767px) {
  header .inner.opened {
    display: inline-flex;
    padding-bottom: 60px;
  }
}
header .inner h1 {
  display: inline-flex;
}
@media (max-width: 767px) {
  header .inner h1 {
    display: block;
  }
}
header .inner h1 img {
  height: 29px;
}
@media (max-width: 767px) {
  header .inner h1 img {
    width: 105px;
    height: auto;
  }
}
header .inner ul {
  display: inline-flex;
}
@media (max-width: 767px) {
  header .inner ul {
    display: block;
    order: -1;
    margin-top: 50px;
  }
}
header .inner ul li {
  font-family: "HelveticaNeueLTPro-UltLt";
  font-size: 23px;
  padding-left: 29px;
  line-height: normal;
}
header .inner ul li:nth-child(1) {
  display: none;
}
@media (max-width: 767px) {
  header .inner ul li:nth-child(1) {
    display: inherit;
  }
}
@media (max-width: 767px) {
  header .inner ul li {
    text-align: left;
    padding-left: 0;
    font-size: 6vh;
    white-space: nowrap;
  }
}
header .inner ul li a {
  display: inline-block;
  height: 100%;
  color: #000000;
  letter-spacing: 0.05rem;
  vertical-align: sub;
  position: relative;
}
@media (max-width: 767px) {
  header .inner ul li a::after {
    content: "";
    position: relative;
    background-color: #ced0d2;
    height: 4px;
    width: 100%;
    display: block;
    bottom: 3.3vh;
  }
}
@media (max-width: 767px) {
  header .inner ul li a {
    color: #b4b4b4;
    line-height: 1.4;
  }
}

/* ========================================================================
* main
======================================================================== */
#top #particles-js {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#top #particles-js:after {
  content: "";
  width: 422px;
  height: 247px;
  background-repeat: no-repeat;
  background-image: url(../images/xrx_logo.svg);
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -151px;
  margin-left: -212px;
  pointer-events: none;
}
@media (max-width: 767px) {
  #top #particles-js:after {
    content: "";
    width: 182px;
    height: 107px;
    margin-top: -52px;
    margin-left: -91px;
  }
}
#top .label {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0%;
  margin-top: -140px;
  margin-left: 0;
  width: auto;
  background-color: #000;
  color: #fff;
  font-family: "HelveticaNeueLTPro-UltLt";
  padding: 10px;
  letter-spacing: 0.05rem;
  font-size: 18px;
  z-index: 10;
  white-space: nowrap;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -webkit-text-orientation: mixed;
  text-orientation: mixed;
}
@media (max-width: 767px) {
  #top .label {
    top: auto;
    bottom: 0px;
    margin-top: 0px;
    left: -28px;
  }
}
#top .scroll {
  display: inline-block;
  position: absolute;
  overflow: hidden;
  left: 125px;
  bottom: 50px;
  z-index: 20;
  height: 303px;
}
#top .scroll img {
  position: relative;
  top: -100%;
  transition: top 0.5s ease-in;
}
#top .scroll.show img {
  top: 0;
}
@media (max-width: 767px) {
  #top .scroll {
    display: none;
  }
}
#top .inner {
  background-color: #fff;
  min-height: 1080px;
  transition: opacity 1s ease-in;
  opacity: 1;
}
@media (max-width: 767px) {
  #top .inner {
    min-height: 87vh;
    overflow: hidden;
    width: 100%;
  }
}
#top .inner.hide {
  opacity: 0;
}
#top .inner .video-js {
  display: inline-block;
  width: 100% !important;
  min-width: 1400px !important;
  background-color: #ffffff;
}
@media (max-width: 767px) {
  #top .inner .video-js {
    height: 87vh;
    min-width: 100% !important;
  }
}
#top .inner .video-js video {
  width: 100%;
  pointer-events: none;
}
#top .inner .pc-video {
  width: 100%;
  display: inline;
}
#top .inner .sp-video {
  width: 100%;
  display: none;
}
@media (max-width: 767px) {
  #top .inner .pc-video {
    display: none;
  }
  #top .inner .sp-video {
    display: inline;
  }
}

/* ========================================================================
* about
======================================================================== */
#about {
  padding-top: 160px;
  padding-bottom: 396px;
  overflow: hidden;
}
@media (max-width: 767px) {
  #about {
    padding-top: 42px;
    padding-bottom: 117px;
  }
}
#about h1 {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 767px) {
  #about h1 img {
    width: 100%;
  }
}
#about .inner {
  width: 1400px;
  display: inline-block;
  text-align: left;
}
@media (max-width: 767px) {
  #about .inner {
    width: 84%;
  }
}
#about .inner h2 {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 60px;
  letter-spacing: 1.5rem;
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  #about .inner h2 {
    font-size: 30px;
    letter-spacing: 0.4em;
    line-height: 1.3;
    margin-bottom: 38px;
  }
}
#about .inner h3 {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 34px;
  letter-spacing: 1rem;
  line-height: 1.7647;
}
@media (max-width: 767px) {
  #about .inner h3 {
    font-size: 16px;
    letter-spacing: 0.36em;
    line-height: 1.625;
  }
}
#about .inner p {
  font-size: 22px;
  line-height: 250%;
  letter-spacing: 0.3rem;
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  #about .inner p {
    font-size: 12px;
    letter-spacing: 0.17em;
    margin-bottom: 50px;
  }
}

/* ========================================================================
* xrsolution
======================================================================== */
#xrsolution {
  overflow: hidden;
}
@media (max-width: 767px) {
  #xrsolution {
    padding-top: 122px;
  }
}
#xrsolution h1 {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 767px) {
  #xrsolution h1 img {
    width: 100%;
  }
}
#xrsolution .inner {
  width: 1400px;
  display: inline-block;
}
@media (max-width: 767px) {
  #xrsolution .inner {
    width: 84%;
  }
}
#xrsolution .inner h2 span {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 44px;
  letter-spacing: 1.5rem;
  display: inline-block;
  margin-bottom: 200px;
}
@media (max-width: 767px) {
  #xrsolution .inner h2 span {
    font-size: 21px;
    letter-spacing: 0.27em;
    line-height: 1.3;
    margin-bottom: 46px;
  }
}
#xrsolution .inner h2 span div {
  background: linear-gradient(transparent 70%, #ced0d2 0%);
}
#xrsolution .inner p.leed {
  display: inline-block;
  font-size: 30px;
  line-height: 160%;
  letter-spacing: 0.3rem;
  margin-bottom: 98px;
}
#xrsolution .inner p.leed:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  margin-top: -123px;
  margin-left: -123px;
  width: 247px;
  height: 247px;
  border: #ced0d2 1px solid;
  border-radius: 50%;
  z-index: -10;
}
@media (max-width: 767px) {
  #xrsolution .inner p.leed:before {
    display: none;
  }
}
@media (max-width: 767px) {
  #xrsolution .inner p.leed {
    font-size: 13px;
    margin-bottom: 38px;
  }
}
#xrsolution .inner .solution-item {
  position: relative;
  border-top: #000 1px solid;
}
#xrsolution .inner .solution-item h3 {
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item h3 img {
    width: 100%;
  }
}
#xrsolution .inner .solution-item:nth-child(even) h3 {
  left: auto;
  right: 0;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item:nth-child(even) ul li:nth-child(even) {
    order: -1;
  }
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item:nth-of-type(1) ul {
    padding-top: 40px;
  }
}
#xrsolution .inner .solution-item ul {
  padding-top: 85px;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item ul {
    display: block;
    display: flex;
    flex-direction: column;
    padding-top: 40px;
  }
}
#xrsolution .inner .solution-item ul li {
  padding-left: 51px;
  padding-bottom: 115px;
}
#xrsolution .inner .solution-item ul li.picture {
  width: 40%;
}
#xrsolution .inner .solution-item ul li.picture img {
  width: 100%;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item ul li.picture {
    width: 100%;
  }
  #xrsolution .inner .solution-item ul li.picture img {
    width: 60%;
  }
}
#xrsolution .inner .solution-item ul li:nth-child(even) {
  margin-left: 20px;
  padding-left: 0px;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item ul li {
    text-align: center;
    width: 100%;
    padding-left: 0px;
    padding-bottom: 57px;
  }
}
#xrsolution .inner .solution-item ul li h4 {
  text-align: left;
  display: block;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 33px;
  letter-spacing: 0.5rem;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item ul li h4 {
    font-size: 16px;
    text-align: center;
    letter-spacing: 0.25rem;
    line-height: 1.5625;
  }
}
#xrsolution .inner .solution-item ul li p {
  padding-top: 66px;
  text-align: left;
  font-size: 18px;
  line-height: 240%;
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item ul li p {
    padding-top: 33px;
    text-align: center;
    font-size: 9px;
  }
}
@media (max-width: 767px) {
  #xrsolution .inner .solution-item ul li img {
    width: 50%;
  }
}
#xrsolution .inner .xr-flow {
  border-top: #000 1px solid;
  padding-top: 95px;
  margin-bottom: 400px;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow {
    margin-bottom: 148px;
  }
}
#xrsolution .inner .xr-flow h2 {
  font-size: 32px;
  letter-spacing: 0.27em;
  line-height: 1.8125;
  margin-bottom: 68px;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow h2 {
    font-size: 15px;
  }
}
#xrsolution .inner .xr-flow h2 div {
  background: linear-gradient(transparent 70%, #ced0d2 0%);
}
#xrsolution .inner .xr-flow > ul {
  display: flex;
  justify-content: center;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow > ul {
    flex-direction: column;
    align-items: center;
  }
}
#xrsolution .inner .xr-flow > ul > li {
  position: relative;
  text-align: left;
  display: flex;
  flex-direction: column;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow > ul > li {
    width: 100%;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
  }
  #xrsolution .inner .xr-flow > ul > li img {
    width: 74px;
    margin-bottom: -7px;
  }
}
#xrsolution .inner .xr-flow > ul > li:nth-child(1) {
  z-index: 40;
}
#xrsolution .inner .xr-flow > ul > li:nth-child(2) {
  z-index: 30;
}
#xrsolution .inner .xr-flow > ul > li:nth-child(3) {
  z-index: 20;
}
#xrsolution .inner .xr-flow > ul > li:nth-child(4) {
  z-index: 10;
}
#xrsolution .inner .xr-flow > ul > li h3 {
  margin-right: -7px;
  display: block;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow > ul > li h3 {
    margin-right: 33px;
  }
}
#xrsolution .inner .xr-flow > ul > li p {
  font-size: 16px;
  display: block;
  border-left: #000 4px solid;
  padding-left: 20px;
  line-height: 1.8125;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow > ul > li p {
    font-size: 8px;
    width: 50%;
    line-height: 2;
  }
}
#xrsolution .inner .xr-flow > ul > li ul {
  border-left: #000 4px solid;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow > ul > li ul {
    width: 30%;
  }
}
#xrsolution .inner .xr-flow > ul > li ul li {
  font-size: 16px;
  padding-left: 20px;
  line-height: 1.8125;
  display: block;
}
#xrsolution .inner .xr-flow > ul > li ul li:before {
  content: ">> ";
}
#xrsolution .inner .xr-flow > ul > li ul li.space:before {
  visibility: hidden;
}
@media (max-width: 767px) {
  #xrsolution .inner .xr-flow > ul > li ul li {
    font-size: 8px;
    line-height: 2;
  }
}

/* ========================================================================
* works
======================================================================== */
#works {
  margin-bottom: 250px;
  overflow: hidden;
}
@media (max-width: 767px) {
  #works {
    padding-top: 56px;
    margin-bottom: 127px;
  }
}
#works h1 {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 767px) {
  #works h1 img {
    width: 100%;
  }
}
#works .inner {
  width: 1400px;
  display: inline-block;
}
@media (max-width: 767px) {
  #works .inner {
    width: 100%;
  }
}
#works ul li {
  display: flex;
  margin-bottom: 120px;
}
@media (max-width: 767px) {
  #works ul li {
    flex-direction: column;
    align-items: center;
    margin-bottom: 50px;
  }
}
@media (max-width: 767px) {
  #works ul li img {
    width: 100%;
  }
}
#works ul li h2 {
  padding-top: 20px;
  margin-bottom: 20px;
  font-size: 33px;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  letter-spacing: 0.13em;
  line-height: 1.4;
}
@media (max-width: 767px) {
  #works ul li h2 {
    font-size: 18px;
    padding-top: 30px;
    margin-bottom: 22px;
  }
}
#works ul li h2 span {
  font-size: 14px;
  line-height: 2;
  display: inherit;
}
#works ul li p {
  font-size: 16px;
  line-height: 1.8125;
  letter-spacing: 0.17em;
}
#works ul li p.disctiption {
  margin-bottom: 18px;
  width: 900px;
}
@media (max-width: 767px) {
  #works ul li p.disctiption {
    width: 100%;
    font-size: 8px;
    margin-bottom: 14px;
  }
}
#works ul li p.credit {
  font-size: 12px;
  margin-bottom: 18px;
}
@media (max-width: 767px) {
  #works ul li p.credit {
    font-size: 6px;
    margin-bottom: 14px;
  }
}
#works ul li p.tags {
  font-size: 14px;
}
@media (max-width: 767px) {
  #works ul li p.tags {
    font-size: 7px;
  }
}
@media (max-width: 767px) {
  #works ul li div {
    width: 100%;
  }
}
#works ul li div:nth-child(2) {
  text-align: left;
  flex-grow: 2;
  margin-left: 60px;
  border-top: #000 1px solid;
}
@media (max-width: 767px) {
  #works ul li div:nth-child(2) {
    margin: 0;
    width: 84%;
    display: inline-block;
    border-top: none;
  }
}
#works .works-footer a {
  display: inline-block;
  background-color: #000;
  font-family: "HelveticaNeueLTPro-UltLt";
  font-size: 30px;
  color: #fff;
  padding: 0px 30px;
  line-height: 140px;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  #works .works-footer a {
    font-size: 14px;
    padding: 0px 14px;
    line-height: 67px;
  }
}

/* ========================================================================
* news
======================================================================== */
#team {
  padding-top: 150px;
  overflow: hidden;
}
@media (max-width: 767px) {
  #team {
    padding-top: 52px;
  }
}
#team h1 {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 767px) {
  #team h1 img {
    width: 100%;
  }
}
#team .inner {
  width: 1400px;
  display: inline-block;
}
@media (max-width: 767px) {
  #team .inner {
    width: 84%;
  }
}
#team .inner h2 {
  font-size: 30px;
  letter-spacing: 0.23em;
  line-height: 1.6;
  display: inline-block;
  margin-bottom: 100px;
}
#team .inner h2:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  margin-top: -143px;
  margin-left: -42px;
  width: 247px;
  height: 247px;
  border: #ced0d2 1px solid;
  border-radius: 50%;
  z-index: -10;
}
@media (max-width: 767px) {
  #team .inner h2:before {
    display: none;
  }
}
@media (max-width: 767px) {
  #team .inner h2 {
    font-size: 13px;
    margin-bottom: 39px;
  }
}
#team .inner .team {
  border-top: #000 1px solid;
  border-bottom: #000 1px solid;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 64px 0;
}
@media (max-width: 767px) {
  #team .inner .team {
    flex-direction: column;
  }
}
#team .inner .team img {
  width: 304px;
  margin-right: 67px;
}
@media (max-width: 767px) {
  #team .inner .team img {
    margin-right: 0;
    width: 185px;
    margin-bottom: 29px;
  }
}
#team .inner .team .jobs {
  display: flex;
}
#team .inner .team .jobs ul {
  text-align: left;
}
@media (max-width: 767px) {
  #team .inner .team .jobs ul:nth-child(1) li {
    padding-left: 0;
  }
}
#team .inner .team .jobs ul li {
  font-size: 18px;
  margin-bottom: 27px;
  padding-left: 70px;
  letter-spacing: 0.17em;
}
@media (max-width: 767px) {
  #team .inner .team .jobs ul li {
    font-size: 8px;
    padding-left: 43px;
    margin-bottom: 13px;
  }
}

/* ========================================================================
* about
======================================================================== */
#contact {
  padding-top: 100px;
  padding-bottom: 200px;
  overflow: hidden;
}
@media (max-width: 767px) {
  #contact {
    padding-top: 29px;
    padding-bottom: 137px;
  }
}
#contact h1 {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 767px) {
  #contact h1 {
    top: 265px;
  }
}
@media (max-width: 767px) {
  #contact h1 img {
    width: 100%;
  }
}
#contact .inner {
  width: 1400px;
  display: inline-block;
}
@media (max-width: 767px) {
  #contact .inner {
    width: 84%;
  }
}
#contact .inner h2 {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 32.18px;
  letter-spacing: 0.27rem;
  margin-bottom: 397px;
  line-height: 1.8126;
}
@media (max-width: 767px) {
  #contact .inner h2 {
    font-size: 15px;
    margin-bottom: 180px;
  }
}
#contact .inner p {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 30px;
  letter-spacing: 0.23em;
  line-height: 1.6;
  display: inline-block;
  position: relative;
  margin-bottom: 147px;
}
#contact .inner p:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  margin-top: -123px;
  margin-left: -123px;
  width: 247px;
  height: 247px;
  border: #ced0d2 1px solid;
  border-radius: 50%;
  z-index: -10;
}
@media (max-width: 767px) {
  #contact .inner p:before {
    display: none;
  }
}
@media (max-width: 767px) {
  #contact .inner p {
    font-size: 13px;
    margin-bottom: 40px;
  }
}
#contact .inner .contact_mail {
  font-family: "HelveticaNeueLTPro-Bd";
  font-size: 47px;
  letter-spacing: 0.045em;
}
@media (max-width: 767px) {
  #contact .inner .contact_mail {
    font-size: 16px;
  }
}
#contact .inner .contact_mail a {
  color: #000;
  border-bottom: #000 4px dotted;
  line-height: 1.688;
}
@media (max-width: 767px) {
  #contact .inner .contact_mail a {
    border-bottom: #000 2px dotted;
  }
}

@media (min-width: 768px) {
  header {
    min-width: auto;
    width: 100%;
  }

  #top .inner .video-js {
    min-width: auto !important;
    max-width: 1400px !important;
    width: 100% !important;
  }

  #about .inner {
    min-width: auto;
    max-width: 1400px;
    width: auto;
  }

  #xrsolution .inner {
    min-width: auto;
    max-width: 1400px;
    width: 100%;
  }

  #works .inner {
    min-width: auto;
    max-width: 1400px;
    width: 100%;
  }

  #team .inner {
    min-width: auto;
    max-width: 1400px;
    width: 100%;
  }

  #contact .inner {
    min-width: auto;
    max-width: 1400px;
    width: 100%;
  }

  footer {
    min-width: auto !important;
    width: 100%;
  }

  footer .inner {
    min-width: auto;
    max-width: 1400px;
    width: 100%;
  }

  #about, #xrsolution, #team, #works, #contact {
    overflow: hidden;
  }

  #xrsolution .inner .xr-flow ul {
    flex-wrap: wrap;
  }

  #works ul li p.disctiption {
    width: auto;
  }

  header .inner,
#about .inner,
#xrsolution .inner,
#works .inner,
#team .inner,
#contact .inner,
footer .inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/*# sourceMappingURL=style.css.map*/