@charset "UTF-8";

/*===================================================================
reset*/
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after {
  content: "";
  content: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

html {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, verdana sans-serif;

  -webkit-text-size-adjust: none;
}

body {
  overflow-x: hidden;
  padding-top: 130px;
  color: #333;
  font-weight: 500;
  line-height: 1.6;
}

body.rcrt {
  padding-top: 80px;
}

main {
  display: block;
}

a {
  color: #333;
  text-decoration: none;
  outline: none;
}

img {
  vertical-align: top;
}

.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

.is-sp {
  display: none !important;
}

.is-pc {
  display: block !important;
}

.hero {
  position: relative;
}

.hero_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 700px;
  color: #fff;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.hero_ttl {
  opacity: 0;
  font: bold 60px proxima-nova, sans-serif;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.hero_txt {
  opacity: 0;
  margin-top: 30px;
  font-size: 20px;
  font-weight: bold;
  line-height: 2;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .2s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.is-inview .hero_ttl,
.is-inview .hero_txt {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.bread_list {
  padding: 0 50px;
}

.bread_list_item {
  display: inline-block;
  margin-right: 5px;
  color: #999;
  font-size: 11px;
}

.bread_list_item:before {
  padding-right: 5px;
  content: "\FF1E";
}

.bread_list_item:first-child:before {
  display: none;
}

.bread_list_item a {
  color: #999;
}

.contactArea {
  padding: 80px 0 100px;
  text-align: center;
}

.contactArea_ttl {
  color: #333;
  font: 50px/1.4 proxima-nova, sans-serif;
  letter-spacing: 3px;
}

.contactArea_txt {
  margin-top: 20px;
  color: #333;
  font-size: 16px;
  text-align: center;
}

.contactArea_btn {
  width: 540px;
  margin: 55px auto 0;
  font-size: 20px;
  font-weight: bold;
  line-height: 80px;
}

.contactArea_btn a {
  color: #fff;
}

.contactArea_btn a:before {
  background: rgba(181, 23, 37, .8);
  -webkit-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
}

.contactArea_btn a:after {
  background: #000;
}

.contactArea.-lower {
  background: #1f1f1f;
}

.contactArea.-lower .contactArea_ttl {
  color: #fff;
}

.contactArea.-lower .contactArea_txt {
  color: #fff;
}

.contactArea.-lower .contactArea_btn a:after {
  border: 1px solid white;
  background: none;
}

.btn a {
  display: block;
  position: relative;
  text-align: center;
}

.btn a:before,
.btn a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  transition: all .3s;
}

.btn a:before {
  opacity: 0;
}

.btn a:after {
  box-sizing: border-box;
  transition: all .3s;
}

.btn a:hover:before {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.btn a:hover:after {
  opacity: 0;
  -webkit-transform: scale(0, 0);
  transform: scale(0, 0);
}

.btn span {
  position: relative;
  z-index: 1;
  transition: all .3s;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.form_radio {
  margin-top: 15px;
}

.form_radio:first-child {
  margin: 0;
}

.form_radio input[type="radio"] {
  display: none;
}

.form_radio .radioTxt {
  display: inline-block;
  position: relative;
  padding-left: 40px;
  line-height: 26px;
}

.form_radio .radioTxt:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 26px;
  height: 26px;
  border: 1px solid #666;
  border-radius: 50%;
  content: "";
}

.form_radio input[type="radio"]:checked+.radioTxt:after {
  position: absolute;
  top: 5px;
  left: 5px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #b51725;
  content: "";
}

.form_input {
  box-sizing: border-box;
  width: 100%;
  padding: 10px 20px;
  border: 1px solid #ccc;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
}

.form_txtArea {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  padding: 10px 20px;
  border: 1px solid #ccc;
  font-family: inherit;
  font-size: 16px;
}

.form_btn {
  position: relative;
}

.form_btn input[type="submit"] {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  border: none;
  background: transparent;
  color: #fff;
  font-family: inherit;
  font-size: 16px;
  font-weight: bold;
  line-height: 50px;
  cursor: pointer;
}

.form_btn input[type="submit"]:hover+span:before {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.form_btn input[type="submit"]:hover+span:after {
  opacity: 0;
  -webkit-transform: scale(0, 0);
  transform: scale(0, 0);
}

.form_btn span:before {
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(181, 23, 37, .8);
  content: "";
  transition: all .3s;
  -webkit-transform: scale(1.1, 1.3);
  transform: scale(1.1, 1.3);
}

.form_btn span:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  content: "";
  transition: all .3s;
}

.vegas-wrapper,
.vegas-slide,
.vegas-slide-inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  margin: auto;
}

.vegas-slide,
.vegas-slide-inner {
  background: transparent center no-repeat;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);

  will-change: transform, opacity;
}

.vegas-transition-fade2 {
  opacity: 0;
}

.vegas-transition-fade2-in {
  opacity: 1;
}

.vegas-transition-fade2-out {
  opacity: 0;
}

.vegas-animation-kenburns {
  -webkit-animation: kenburns linear;
  animation: kenburns linear;
}

@-webkit-keyframes kenburns {
  0% {
    -webkit-transform: scale(1) rotate(.1deg);
    transform: scale(1) rotate(.1deg);
  }

  100% {
    -webkit-transform: scale(1.15) rotate(.1deg);
    transform: scale(1.15) rotate(.1deg);
  }
}

@keyframes kenburns {
  0% {
    -webkit-transform: scale(1) rotate(.1deg);
    transform: scale(1) rotate(.1deg);
  }

  100% {
    -webkit-transform: scale(1.15) rotate(.1deg);
    transform: scale(1.15) rotate(.1deg);
  }
}

/**
 * Swiper 4.0.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2017 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 27, 2017
 */
.swiper-container {
  position: relative;
  /* Fix of Webkit flickering */
  z-index: 1;
  overflow: hidden;
  margin-right: auto;
  margin-left: auto;
}

.swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.swiper-container-vertical>.swiper-wrapper {
  flex-direction: column;
  -ms-flex-direction: column;
}

.swiper-wrapper {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
  box-sizing: content-box;
  width: 100%;
  height: 100%;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow>.swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.swiper-container-free-mode>.swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.swiper-slide {
  position: relative;
  width: 100%;
  height: 100%;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.swiper-invisible-blank-slide {
  visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
  -ms-flex-align: start;
  align-items: flex-start;
}

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, .5), transparent);
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, .5), transparent);
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, .5), transparent);
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), transparent);
}

/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal>.swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical>.swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  z-index: 10;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 27px 44px;
  cursor: pointer;
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  right: auto;
  left: 10px;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}

.swiper-pagination {
  position: absolute;
  z-index: 10;
  text-align: center;
  transition: 300ms opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal>.swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  position: relative;
  -webkit-transform: scale(.33);
  transform: scale(.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(.66);
  transform: scale(.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(.33);
  transform: scale(.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(.66);
  transform: scale(.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(.33);
  transform: scale(.33);
}

.swiper-pagination-bullet {
  display: inline-block;
  opacity: .2;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background: #000;
}

button.swiper-pagination-bullet {
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: none;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff;
}

.swiper-container-vertical>.swiper-pagination-bullets {
  top: 50%;
  right: 10px;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  display: block;
  margin: 6px 0;
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  width: 8px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top, 200ms -webkit-transform;
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  white-space: nowrap;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left, 200ms -webkit-transform;
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right, 200ms -webkit-transform;
}

/* Progress */
.swiper-pagination-progressbar {
  position: absolute;
  background: rgba(0, 0, 0, .25);
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #007aff;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  transform-origin: right top;
}

.swiper-container-horizontal>.swiper-pagination-progressbar {
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
}

.swiper-container-vertical>.swiper-pagination-progressbar {
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
}

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff;
}

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, .25);
}

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #fff;
}

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000;
}

.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, .25);
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000;
}

/* Scrollbar */
.swiper-scrollbar {
  position: relative;
  border-radius: 10px;
  background: rgba(0, 0, 0, .1);

  -ms-touch-action: none;
}

.swiper-container-horizontal>.swiper-scrollbar {
  position: absolute;
  z-index: 50;
  bottom: 3px;
  left: 1%;
  width: 98%;
  height: 5px;
}

.swiper-container-vertical>.swiper-scrollbar {
  position: absolute;
  z-index: 50;
  top: 1%;
  right: 3px;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: rgba(0, 0, 0, .5);
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-zoom-container {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  text-align: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.swiper-zoom-container>img,
.swiper-zoom-container>svg,
.swiper-zoom-container>canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */
.swiper-lazy-preloader {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  width: 42px;
  height: 42px;
  margin-top: -21px;
  margin-left: -21px;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite;
}

.swiper-lazy-preloader:after {
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100%;
  content: "";
}

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* a11y */
.swiper-container .swiper-notification {
  opacity: 0;
  position: absolute;
  z-index: -1000;
  top: 0;
  left: 0;
  pointer-events: none;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube {
  overflow: visible;
}

.swiper-container-cube .swiper-slide {
  visibility: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next+.swiper-slide {
  visibility: visible;
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
  opacity: .6;
  position: absolute;
  z-index: 0;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;

  -webkit-filter: blur(50px);
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="50" /></filter></svg>#filter');
  filter: blur(50px);
}

.swiper-container-flip {
  overflow: visible;
}

.swiper-container-flip .swiper-slide {
  z-index: 1;
  pointer-events: none;

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px;
}

.head {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 130px;
  border-top: 4px solid #b51725;
  background: #fff;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.head_inner {
  position: relative;
  overflow: hidden;
  max-width: 1560px;
  height: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.head_spLogo {
  display: none;
}

.head_nav {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.head_navInner {
  display: -ms-flexbox;
  display: flex;
  float: left;
  width: 86%;
  height: 100%;
  transition: .2s linear;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.head_navBtn {
  display: none;
}

.head_navBtn_icn {
  position: absolute;
  top: 50%;
  width: 30px;
  height: 3px;
  background: #000;
  transition: .3s ease-in;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.head_navBtn_icn:before,
.head_navBtn_icn:after {
  position: absolute;
  right: 0;
  width: 30px;
  height: 3px;
  background: #000;
  content: "";
  transition: .3s ease-in;
}

.head_navBtn_icn:before {
  top: -8px;
}

.head_navBtn_icn:after {
  top: 8px;
}

.head_navBtn.is-active .head_navBtn_icn {
  background: transparent;
}

.head_navBtn.is-active .head_navBtn_icn:before,
.head_navBtn.is-active .head_navBtn_icn:after {
  top: 50%;
}

.head_navBtn.is-active .head_navBtn_icn:before {
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}

.head_navBtn.is-active .head_navBtn_icn:after {
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}

.head_langNav {
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 50%;
  right: 3%;
  width: 6%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.head_langNav_item {
  position: relative;
  box-sizing: border-box;
  width: 50%;
  color: #aeaeae;
  font: bold 16px proxima-nova, sans-serif;
  text-align: center;
  cursor: pointer;
  transition: .2s linear;
}

.head_langNav_item.is-active {
  color: #b51725;
}

.head_langNav_item:hover {
  color: #b51725;
}

.head_langNav_item.en {
  position: relative;
}

.head_langNav_item.en:before {
  position: absolute;
  top: 50%;
  left: -1px;
  width: 1px;
  height: 12px;
  margin-top: -6px;
  background: #181718;
  content: "";
}

.head_navList {
  display: -ms-flexbox;
  display: flex;
  width: 100%;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-align: center;
  align-items: center;
}

.head_navList_item {
  line-height: 1.3;
}

.head_navList_item:first-child {
  margin-left: 0;
}

.head_navList_item-en {
  font: bold 19px proxima-nova, sans-serif;
}

.head_navList_item span {
  display: inline-block;
  transition: font-size .2s linear;
}

.head_navList_item .jpBlock {
  font-size: 11px;
  font-weight: normal;
}

.head_navList_item a {
  display: block;
  color: #000;
  text-align: center;
  transition: color .2s linear;
}

.head_navList_item a:hover {
  color: #b51725;
}

.head_navList_item.-logo {
  margin-top: -13px;
}

.head_navList_item.-logo a {
  display: block;
  width: 100px;
  transition: .2s linear;
}

.head_navList_item.-logo a:hover {
  opacity: .7;
}

.head_spNavWrap {
  display: none;
}

.rcrt-head {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: #fff;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.rcrt-head_logo {
  position: absolute;
  top: 50%;
  width: 300px;
  margin-left: 3%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.rcrt-head_logo a {
  display: block;
  transition: opacity .2s linear;
}

.rcrt-head_logo a:hover {
  opacity: .7;
}

.rcrt-head_nav {
  display: -ms-flexbox;
  display: flex;
  float: right;
  width: 63%;
  font-weight: bold;
  text-align: center;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.rcrt-head_navList {
  display: -ms-flexbox;
  display: flex;
  width: 60%;
  max-width: 630px;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -ms-flex-align: center;
  align-items: center;
}

.rcrt-head_navList_item {
  width: 23%;
  margin-right: 2%;
  font-size: 17px;
  transition: .2s linear;
}

.rcrt-head_navList_item a {
  display: block;
  padding: 10px 0;
  transition: .2s ease-in;
}

.rcrt-head_navList_item a:hover {
  color: #b51725;
}

.rcrt-head_btn {
  width: 40%;
  max-width: 400px;
  font-size: 18px;
  line-height: 80px;
}

.rcrt-head_btn a {
  display: block;
  background: #b51725;
  color: #fff;
  transition: .2s ease-in;
}

.rcrt-head_btn a:hover {
  background: #cf2f3d;
}

.foot {
  background: #000;
  color: #fff;
}

.foot_inner {
  position: relative;
  max-width: 1560px;
  margin: 0 auto;
  padding: 78px 20px 50px;
}

.foot_pageTop {
  position: absolute;
  top: 20px;
  right: 20px;
  box-sizing: border-box;
  width: 34px;
  height: 34px;
  border: 1px solid #fff;
  cursor: pointer;
  transition: .2s linear;
}

.foot_pageTop:hover {
  border: 1px solid #b51725;
}

.foot_pageTop:hover:before,
.foot_pageTop:hover:after {
  background: #b51725;
}

.foot_pageTop:before,
.foot_pageTop:after {
  display: block;
  position: absolute;
  top: 50%;
  width: 8px;
  height: 3px;
  background: #fff;
  content: "";
  transition: .2s linear;
}

.foot_pageTop:before {
  left: 7px;
  -webkit-transform: skew(-40deg) rotate(-40deg);
  transform: skew(-40deg) rotate(-40deg);
}

.foot_pageTop:after {
  right: 7px;
  -webkit-transform: skew(40deg) rotate(40deg);
  transform: skew(40deg) rotate(40deg);
}

.foot_logo {
  float: left;
}

.foot_navWrap {
  float: right;
  margin-top: 10px;
}

.foot_nav {
  overflow: hidden;
}

.foot_nav_btn {
  display: none;
}

.foot_copy {
  margin-top: 22px;
  color: #999;
  font-size: 11px;
  text-align: right;
}

.foot_navList {
  overflow: hidden;
}

.foot_navList_item {
  float: left;
  margin-left: 33px;
}

.foot_navList_item a {
  color: #fff;
  font: 14px proxima-nova, sans-serif;
  transition: .2s linear;
}

.foot_navList_item a:hover {
  color: #b51725;
}

.rcrt-foot {
  position: relative;
  padding: 40px 20px 10px;
  background: #000;
}

.rcrt-foot .foot_pageTop {
  display: none;
}

.rcrt-foot_logo {
  width: 86px;
  transition: .2s linear;
}

.rcrt-foot_nav {
  display: -ms-flexbox;
  display: flex;
  max-width: 1560px;
  margin: 0 auto;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}

.rcrt-foot_nav-left {
  display: -ms-flexbox;
  display: flex;
  width: 63%;
  max-width: 700px;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}

.rcrt-foot_navList {
  display: -ms-flexbox;
  display: flex;
  width: 77%;
  padding-right: 3%;
  transition: .2s linear;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
}

.rcrt-foot_navList_item {
  width: 21%;
  margin-right: 4%;
  font-size: 16px;
  text-align: center;
  transition: .2s linear;
}

.rcrt-foot_navList_item a {
  display: block;
  padding: 10px 0;
  color: #fff;
  transition: .2s ease-in;
}

.rcrt-foot_navList_item a:hover {
  color: #b51725;
}

.rcrt-foot_btn {
  width: 300px;
  font-size: 16px;
  line-height: 50px;
  transition: .2s linear;
}

.rcrt-foot_btn a {
  border: 1px solid #fff;
  color: #fff;
  transition: .2s ease-in;
}

.rcrt-foot_btn a:hover {
  border: 1px solid #b51725;
  color: #b51725;
}

.rcrt-foot_copy {
  margin-top: 35px;
  color: #999;
  font-size: 11px;
  text-align: center;
}

.top-ovl {
  position: absolute;
  z-index: 1;
  top: 130px;
  left: 0;
  width: 100%;
  height: calc(100vh - 130px);
  background: #fff;
}

.top-ovlInner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
}

.top-ovl_logoWrap {
  position: absolute;
  top: 50%;
  width: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.top-ovl_logo {
  display: none;
  width: 402px;
  height: 300px;

  fill: none;
}

.top-mv {
  position: relative;
  overflow: hidden;
  height: calc(100vh - 130px);
}

.top-mvInner {
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 82%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.top-mv_content {
  width: 47%;
  box-shadow: 4px 4px 6px 0px rgba(0, 0, 0, .4);
  text-align: center;
}

.top-mv_content.-product a {
  background: rgba(181, 23, 37, .7);
}

.top-mv_content.-product a:hover {
  background: #b51725;
}

.top-mv_content.-service a {
  background: rgba(0, 0, 0, .8);
}

.top-mv_content.-service a:hover {
  background: black;
}

.top-mv_content a {
  display: block;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  height: 100%;
  padding: 5% 5% 12%;
  color: #fff;
  transition: .2s linear;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.top-mv_content a:before,
.top-mv_content a:after {
  position: absolute;
  background: #fff;
  content: "";
  transition: .3s cubic-bezier(.92, .16, .08, .895);
}

.top-mv_content a:before {
  right: 4%;
  bottom: 4%;
  width: 30px;
  height: 1px;
}

.top-mv_content a:after {
  right: 3%;
  bottom: 5%;
  width: 1px;
  height: 30px;
}

.top-mv_content a:hover:before {
  right: 110%;
}

.top-mv_content a:hover:after {
  bottom: 110%;
}

.top-mv_content_img {
  margin: 3% auto 0;
}

.top-mv_content_img img {
  max-width: 660px;
  margin: 0 auto;
}

.top-mv_content_ttl {
  font: bold 46px/1.4 proxima-nova, sans-serif;
  letter-spacing: 3px;
  transition: font-size .2s linear;
}

.top-mv_content_txt {
  margin-top: 3%;
  font-size: 14px;
}

.landscape .top-mv {
  background: url(../img/top/mv_bg01.jpg) no-repeat center;
  background-size: cover;
}

.landscape .top-mvInner {
  display: -ms-flexbox;
  display: flex;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.landscape .top-mv_content {
  width: 48%;
}

.landscape .top-mv_content.-service {
  margin-top: 0;
}

.top-news {
  padding: 60px 0 110px;
}

.top-newsInner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px;
}

.top-news_ttl {
  color: #000;
  font: 50px/1.4 proxima-nova, sans-serif;
  text-align: center;
  letter-spacing: 2px;
}

.top-newsList {
  margin: 40px 0 0;
}

.top-newsList_item {
  margin-top: 22px;
  font-size: 0;
}

.top-newsList_item:first-child {
  margin-top: 0;
}

.top-newsList_date {
  display: inline-block;
  width: 80px;
  font-size: 15px;
  font-weight: bold;
}

.top-newsList_label {
  display: inline-block;
  width: 60px;
  margin: 0 3% 0 2%;
  background: #b51725;
  color: #fff;
  font-size: 11px;
  line-height: 16px;
  text-align: center;
}

.top-newsList_ttl {
  display: inline-block;
  width: calc(95% - 140px);
  font-size: 16px;
  vertical-align: top;
}

.top-newsList_ttl a {
  transition: .2s linear;
}

.top-newsList_ttl a:hover {
  color: #b51725;
}

.top-news_btn {
  float: right;
  width: 170px;
  margin-top: 30px;
  font-size: 15px;
  line-height: 40px;
}

.top-news_btn a:before {
  background: rgba(181, 23, 37, .8);
  -webkit-transform: scale(1.1, 1.3);
  transform: scale(1.1, 1.3);
}

.top-news_btn a:after {
  border: 1px solid black;
}

.top-news_btn a:hover {
  color: #fff;
}

.top-rcrt {
  position: relative;
  padding-top: 600px;
  background: url(../img/top/rcrt_bg.jpg) no-repeat center;
  background-size: cover;
}

.top-rcrtInner {
  position: absolute;
  top: 25%;
  left: 49%;
  box-sizing: border-box;
  width: 100%;
  max-width: 1120px;
  padding: 0 20px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.top-rcrt_ttl {
  color: #000;
  font: 50px/1.4 proxima-nova, sans-serif;
  letter-spacing: 3px;
}

.top-rcrt_txt {
  width: 50%;
  margin-top: 25px;
  color: #000;
  font-size: 16px;
}

.top-rcrt_btn {
  width: 300px;
  height: 50px;
  margin-top: 55px;
  font-size: 16px;
  line-height: 50px;
}

.top-rcrt_btn a:before {
  background: rgba(181, 23, 37, .8);
  -webkit-transform: scale(1.1, 1.2);
  transform: scale(1.1, 1.2);
}

.top-rcrt_btn a:after {
  border: 1px solid black;
}

.top-rcrt_btn a:hover {
  color: #fff;
}

.prdct .hero {
  height: 540px;
  background: url(../img/product/hero.jpg) no-repeat center top;
  background-size: cover;
}

.prdct main {
  padding: 0 0 200px;
}

.prdct .inner {
  display: -ms-flexbox;
  display: flex;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
}

.prdct-list {
  font-size: 0;
}

.prdct-list_img {
  opacity: 0;
  width: 29%;
  margin-left: 3%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.prdct-list_item.-full .prdct-list_img {
	opacity: 0;
    width: 100%;
    margin-top: 45px;
	margin-left: 0;
    transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
    transition: opacity .7s ease-out, transform .7s ease-out;
    transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
    transition-delay: 1.0s;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
}

.prdct-list_txtBlock {
  width: 53%;
  margin-left: 15%;
}

.prdct-list_item.-full .prdct-list_txtBlock {
  width: 100%;
  margin-left: 3%;
}

.prdct-list_ttl {
  opacity: 0;
  position: relative;
  padding-top: 35px;
  color: #b51725;
  font-family: proxima-nova, sans-serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .4s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.prdct-list_ttl span {
  display: block;
  color: #000;
  font-size: 60px;
}

.prdct-list_ttl:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 2px;
  background: #b51725;
  content: "";
}

.prdct-list_copy {
  opacity: 0;
  margin-top: 23px;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .6s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.prdct-list_txt {
  opacity: 0;
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.8;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .8s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.prdct-list_item.-full .prdct-list_txt02 {
  opacity: 0;
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.8;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: 1.6s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.prdct-list_btn {
  opacity: 0;
  width: 300px;
  margin-top: 45px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: 1s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.prdct-list_item.-full .prdct-list_btn {
  transition-delay: 1.2s;
}

.prdct-list_btn a {
  font-size: 16px;
  line-height: 50px;
}

.prdct-list_btn a:before {
  background: rgba(181, 23, 37, .8);
  -webkit-transform: scale(1.1, 1.2);
  transform: scale(1.1, 1.2);
}

.prdct-list_btn a:after {
  border: 1px solid black;
}

.prdct-list_btn a:hover {
  color: #fff;
}

.prdct-list_btn.icn-pdf {
  position: relative;
}

.prdct-list_btn.icn-pdf:after {
  position: absolute;
  top: 50%;
  right: 15px;
  width: 16px;
  height: 20px;
  margin-top: -10px;
  background: url(../img/cmn/icn_pdf.png) no-repeat center;
  background-size: contain;
  content: "";
}

.prdct-list_item:first-child {
  padding: 75px 0 115px;
  background: url(../img/product/bg_rtb.png) no-repeat left top;
}

.prdct-list_item:nth-child(2) {
  padding: 100px 0 130px;
  background: url(../img/product/bg01.png) no-repeat left top;
}

.prdct-list_item:nth-child(3) .inner {
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.prdct-list_item:nth-child(3) .prdct-list_img {
  margin-left: 15%;
}

.prdct-list_item:nth-child(3) .prdct-list_txtBlock {
  margin-left: 3%;
}

.prdct-list_item:last-child {
  padding: 100px 0 130px;
  background: url(../img/product/bg03.png) no-repeat left top;
}

.is-inview .prdct-list_img,
.is-inview .prdct-list_ttl,
.is-inview .prdct-list_copy,
.is-inview .prdct-list_txt,
.is-inview .prdct-list_btn,
.prdct-list_item.-full .is-inview .prdct-list_img,
.prdct-list_item.-full .is-inview .prdct-list_copy02,
.prdct-list_item.-full .is-inview .prdct-list_txt02 {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.company .hero {
  height: 540px;
  background: url(../img/company/hero.jpg) no-repeat center top;
  background-size: cover;
}

.company .bread {
  background: #f6f6f6;
}

.company main {
  margin-bottom: 200px;
}

.company-block_ttl {
  color: #000;
  font-family: proxima-nova, sans-serif;
  font-size: 50px;
}

.company .inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.company-mission {
  padding: 50px 0;
  background: url(../img/company/bg.png) no-repeat center bottom #f6f6f6;
  background-size: cover;
}

.company-mission_inner {
  position: relative;
  max-width: 1300px;
  margin: 0 auto;
}

.company-mission_ttl {
  opacity: 0;
  font-family: proxima-nova, sans-serif;
  font-size: 50px;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.company-mission_ttl.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.company-mission_img {
  position: relative;
  margin-top: 50px;
}

.company-mission_imgInner {
  position: relative;
  width: 508px;
  height: 439px;
  margin: 0 auto;
}

.company-mission_fgL {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity .4s ease-out, -webkit-transform .4s ease-out;
  transition: opacity .4s ease-out, transform .4s ease-out;
  transition: opacity .4s ease-out, transform .4s ease-out, -webkit-transform .4s ease-out;
  transition-delay: .3s;
  -webkit-transform: translate(30px, -30px);
  transform: translate(30px, -30px);
}

.company-mission_fgR {
  opacity: 0;
  position: absolute;
  right: 0;
  bottom: 0;
  transition: opacity .4s ease-out, -webkit-transform .4s ease-out;
  transition: opacity .4s ease-out, transform .4s ease-out;
  transition: opacity .4s ease-out, transform .4s ease-out, -webkit-transform .4s ease-out;
  transition-delay: .6s;
  -webkit-transform: translate(30px, 30px);
  transform: translate(30px, 30px);
}

.company-mission_fgB {
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: opacity .4s ease-out, -webkit-transform .4s ease-out;
  transition: opacity .4s ease-out, transform .4s ease-out;
  transition: opacity .4s ease-out, transform .4s ease-out, -webkit-transform .4s ease-out;
  transition-delay: .9s;
  -webkit-transform: translate(-30px, -30px);
  transform: translate(-30px, -30px);
}

.company-mission_txt {
  opacity: 0;
  transition: opacity .3s ease-out, -webkit-transform .3s ease-out;
  transition: opacity .3s ease-out, transform .3s ease-out;
  transition: opacity .3s ease-out, transform .3s ease-out, -webkit-transform .3s ease-out;
  transition-delay: 1.5s;
}

.company-mission_txt.-btm {
  width: 24%;
  max-width: 306px;
  margin: 50px auto 0;
  -webkit-transform: translate(-30px, -30px);
  transform: translate(-30px, -30px);
}

.company-mission_txt.-btm.enBlock {
  width: 33%;
  max-width: 419px;
}

.company-mission_txt.-left {
  position: absolute;
  top: 18%;
  left: 8%;
  width: 24%;
  max-width: 304px;
  -webkit-transform: translate(30px, -30px);
  transform: translate(30px, -30px);
}

.company-mission_txt.-left.enBlock {
  max-width: 301px;
}

.company-mission_txt.-right {
  position: absolute;
  top: 18%;
  right: 8%;
  width: 24%;
  max-width: 302px;
  -webkit-transform: translate(30px, 30px);
  transform: translate(30px, 30px);
}

.company-mission_txt.-right.enBlock {
  max-width: 309px;
}

.company-mission_txt h4 {
  color: #000;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.5;
}

.company-mission_txt h4 span {
  display: block;
  color: #b51725;
  font-family: proxima-nova, sans-serif;
  font-size: 18px;
}

.company-mission_txt p {
  margin-top: 15px;
  color: #000;
  font-size: 18px;
  line-height: 1.8;
}

.company-officer {
  max-width: 1000px;
  margin: 0 auto;
  padding: 130px 20px 60px;
}

.company-officerList {
  margin-top: 15px;
}

.company-officerList_item {
  overflow: hidden;
  padding: 60px 0;
  border-top: 1px solid #ccc;
}

.company-officerList_item:first-child {
  padding-top: 0;
  border: none;
}

.company-officerList_img {
  float: left;
  width: 24%;
  margin-right: 6%;
}

.company-officerList_txtBlock {
  float: left;
  width: 63%;
}

.company-officerList_ttl {
  font-size: 14px;
}

.company-officerList_ttl span {
  font-size: 20px;
  font-weight: bold;
}

.company-officerList_txt {
  margin-top: 40px;
  font-size: 14px;
  line-height: 1.8;
}

.company-officerList_txt span {
  width: 80px;
  margin-right: 30px;
}

.company-officerList_tblWrap {
  margin-top: 35px;
}

.company-officerList_tblWrap.enBlock .company-officerList_tbl dt {
  width: 120px;
}

.company-officerList_tbl {
  display: table;
  width: 100%;
  font-size: 14px;
  line-height: 1.8;
}

.company-officerList_tbl dt {
  display: table-cell;
  width: 100px;
  padding-right: 2%;
}

.company-officerList_tbl dd {
  display: table-cell;
}

.company-info {
  padding: 35px 0 60px;
  background: #f2f2f2;
}

.company-info .company-block_ttl {
  margin-bottom: 15px;
}

.company-info_list {
  overflow: hidden;
  padding: 15px 12px;
  border-top: 1px solid #ccc;
  color: #333;
  font-size: 16px;
}

.company-info_list:last-child {
  border-bottom: 1px solid #ccc;
}

.company-info_list dt {
  float: left;
  width: 9%;
  margin-right: 3%;
  font-weight: bold;
}

.company-info_list dd {
  float: left;
  width: 88%;
}

.company-info_list li {
  padding-left: 1em;
  text-indent: -1em;
}

.company-access {
  max-width: 1000px;
  margin: 0 auto;
  padding: 100px 20px 0;
}

.company-access_mapWrap {
  position: relative;
  margin-top: 15px;
  padding-top: 50%;
}

.company-access_map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.company-access_link {
  margin-top: 15px;
  font-size: 12px;
  text-align: right;
}

.company-access_link svg {
  width: 13px;
  height: 11px;
  margin-right: 5px;

  fill: #b51725;
}

.company-access_txt {
  color: #333;
  font-size: 16px;
}

.is-inview .company-mission_fgL,
.is-inview .company-mission_fgR,
.is-inview .company-mission_fgB,
.is-inview .company-mission_txt.-left,
.is-inview .company-mission_txt.-right,
.is-inview .company-mission_txt.-btm {
  opacity: 1;
  -webkit-transform: translate(0);
  transform: translate(0);
}

.cnsl main {
  padding-bottom: 200px;
}

.cnsl .hero {
  height: 540px;
  background: url(../img/consulting/hero.jpg) no-repeat center top;
  background-size: cover;
}

.cnsl main {
  margin: 80px 0 0;
}

.cnsl-mainTtl {
  opacity: 0;
  padding: 0 20px;
  color: #000;
  font-family: proxima-nova, sans-serif;
  font-size: 50px;
  line-height: 1.2;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.cnsl-mainTxt {
  opacity: 0;
  position: relative;
  margin-top: 15px;
  padding: 0 20px;
  color: #000;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.cnsl-mainTxt:after {
  opacity: 0;
  position: absolute;
  top: 70px;
  left: 50%;
  width: 1px;
  height: 0;
  background: #000;
  content: "";
  transition: opacity .4s ease-out, height .4s ease-out;
  transition-delay: .3s;
}

.cnsl-imgArea {
  margin-top: 90px;
  padding: 90px 1% 55px;
  background: #f2f2f2;
}

.cnsl-imgArea_inner {
  position: relative;
  max-width: 1120px;
  margin: 0 auto;
}

.cnsl-imgArea_img {
  opacity: 0;
  width: 52%;
  max-width: 582px;
  margin: 0 auto;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.cnsl-imgArea_txt {
  position: absolute;
  transition: opacity .5s ease-out, -webkit-transform .5s ease-out;
  transition: opacity .5s ease-out, transform .5s ease-out;
  transition: opacity .5s ease-out, transform .5s ease-out, -webkit-transform .5s ease-out;
}

.cnsl-imgArea_txt.-top {
  opacity: 0;
  top: -5%;
  right: 8%;
  width: 40%;
  max-width: 442px;
  transition-delay: .6s;
  -webkit-transform: translate(-30px, -30px);
  transform: translate(-30px, -30px);
}

.cnsl-imgArea_txt.-right {
  opacity: 0;
  right: 0;
  bottom: 27%;
  width: 34%;
  max-width: 374px;
  transition-delay: .9s;
  -webkit-transform: translate(30px, -30px);
  transform: translate(30px, -30px);
}

.cnsl-imgArea_txt.-left {
  opacity: 0;
  bottom: 29%;
  left: 0;
  width: 34%;
  max-width: 374px;
  transition-delay: 1.2s;
  -webkit-transform: translate(-30px, -30px);
  transform: translate(-30px, -30px);
}

.cnsl-txtArea {
  display: none;
}

.cnsl-detail {
  max-width: 945px;
  margin: 0 auto;
  padding: 95px 20px 0;
}

.cnsl-detail_txt {
  color: #333;
  font-size: 20px;
  font-weight: bold;
}

.cnsl-detail_annotation {
  margin-top: 15px;
  padding-left: 1em;
  color: #333;
  font-size: 12px;
  text-indent: -1em;
}

.cnsl-table {
  margin-top: 30px;
  font-size: 15px;
}

.cnsl-table tr {
  border-top: 2px solid #fff;
}

.cnsl-table tr:first-child {
  border: none;
}

.cnsl-table th {
  box-sizing: border-box;
  width: 23%;
  padding: 15px 30px;
  background: #b51725;
  color: #fff;
  text-align: left;
  vertical-align: middle;
}

.cnsl-table td {
  box-sizing: border-box;
  padding: 15px 40px;
  border-left: 2px solid #fff;
  background: #ededed;
  color: #333;
  vertical-align: middle;
}

.cnsl-table td:nth-child(2) {
  width: 52%;
}

.cnsl-table td:last-child {
  width: 25%;
}

.cnsl-table_head th {
  padding: 8px 10px;
  border-left: 2px solid #fff;
  background: #000;
  font-size: 17px;
  text-align: center;
}

.cnsl-table_head th:first-child {
  border: none;
}

.cnsl-table_head th:nth-child(2) {
  width: auto;
}

.cnsl-table_head th:last-child {
  width: 25%;
}

.cnsl-adv {
  margin: 95px 0 0;
}

.cnsl-adv_inner {
  max-width: 945px;
  margin: 0 auto;
  padding: 0 20px;
}

.cnsl-adv_ttl {
  color: #000;
  font-family: proxima-nova, sans-serif;
  font-size: 50px;
  line-height: 1.2;
}

.cnsl-adv_heading {
  margin-top: 25px;
  padding: 6px 15px;
  background: #000;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
}

.cnsl-adv_heading.btm {
  margin-top: 60px;
}

.cnsl-adv_heading-sub {
  margin-top: 40px;
  font-weight: bold;
}

.cnsl-adv_txt {
  margin-top: 30px;
}

.cnsl-adv_menuList {
  display: -ms-flexbox;
  display: flex;
  margin-top: 25px;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
}

.cnsl-adv_menuList_item {
  position: relative;
  box-sizing: border-box;
  width: 18%;
  min-height: 40px;
  margin: 0 1%;
  padding: 0 10px;
  background: #b51725;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

.cnsl-adv_menuList_item span {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.cnsl-adv_corpList {
  margin-top: 15px;
  font-size: 0;
}

.cnsl-adv_corpList_item {
  display: inline-block;
  width: 16%;
  margin: 0 2%;
  vertical-align: middle;
}

.cnsl-adv_ptnrList_item {
  margin-top: 10px;
}

.cnsl-adv_ias {
  overflow: hidden;
  margin-top: 30px;
}

.cnsl-adv_iasImg {
  float: left;
  width: 30%;
}

.cnsl-adv_iasTxt {
  float: left;
  width: 65%;
  margin: 0 0 0 5%;
  font-size: 15px;
}

.cnsl-adv_svcList {
  margin-top: 30px;
}

.cnsl-adv_svcList_item {
  margin-top: 10px;
  padding-left: 1em;
  text-indent: -1em;
}

.cnsl-adv_annotation {
  margin-top: 30px;
  padding-left: 1em;
  font-size: 12px;
  text-indent: -1em;
}

.enBlock .cnsl-imgArea_img {
  width: 66%;
  max-width: 778px;
}

.enBlock .cnsl-imgArea_txt.-top {
  width: 39%;
}

.enBlock .cnsl-imgArea_txt.-right {
  right: 1%;
}

.enBlock .cnsl-imgArea_txt.-left {
  bottom: 28%;
}

.is-inview .cnsl-mainTtl,
.is-inview .cnsl-mainTxt,
.is-inview .cnsl-imgArea_img {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.is-inview .cnsl-mainTxt:after {
  opacity: 1;
  height: 100px;
}

.is-inview .cnsl-imgArea_txt {
  opacity: 1;
}

.is-inview .cnsl-imgArea_txt.-top,
.is-inview .cnsl-imgArea_txt.-right,
.is-inview .cnsl-imgArea_txt.-left {
  -webkit-transform: translate(0);
  transform: translate(0);
}

.news .hero {
  height: 300px;
  background: url(../img/news/hero.jpg) no-repeat center top;
  background-size: cover;
}

.news main {
  max-width: 1100px;
  margin: 70px auto 200px;
}

.news_linkTxt {
  margin-top: 50px;
  text-align: right;
}

.news_linkTxt a {
  text-decoration: underline;
  transition: color .2s linear;
}

.news_linkTxt a:hover {
  color: #b51725;
  text-decoration: none;
}

.data .hero {
  height: 300px;
  background: url(../img/data/hero.jpg) no-repeat center top;
  background-size: cover;
}

.data main {
  margin: 75px 0 0;
}

.data .inner {
  max-width: 1300px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 20px;
  padding-left: 20px;
}

.data-mainList {
  box-sizing: border-box;
  padding: 40px 8% 70px;
  background: #b51725;
}

.data-mainList_item {
  margin-top: 40px;
}

.data-mainList_item:first-child {
  margin-top: 0;
}

.data-mainList_ttl {
  color: #fff;
  font-family: proxima-nova, sans-serif;
  font-size: 50px;
}

.data-mainList_txt {
  color: #fff;
}

.data-mainList_btn {
  width: 300px;
  height: 50px;
  margin-top: 30px;
  font-size: 18px;
  line-height: 50px;
}

.data-mainList_btn a {
  color: #b51725;
  font-weight: bold;
}

.data-mainList_btn a:before {
  border: 1px solid white;
  -webkit-transform: scale(1.1, 1.2);
  transform: scale(1.1, 1.2);
}

.data-mainList_btn a:after {
  background: #fff;
}

.data-mainList_btn a:hover {
  color: #fff;
}

.data-appBlock {
  margin-top: 110px;
}

.data-appBlock_ttl {
  color: #000;
  font-size: 25px;
  font-weight: bold;
}

.data-appBlock_txt {
  max-width: 1050px;
  margin-top: 15px;
}

.data-prcsBlock.-ios {
  margin-top: 40px;
}

.data-prcsBlock.-android {
  margin-top: 80px;
}

.data-prcsBlock_ttl {
  padding: 6px 15px;
  background: #000;
  color: #fff;
  font-size: 18px;
}

.data-prcsBlock_ttl span {
  font-weight: bold;
}

.data-prcsBlock_txt {
  margin-top: 15px;
  font-size: 12px;
}

.data-prcsBlock_txt a {
  text-decoration: underline;
}

.data-prcsBlock_txt a:hover {
  text-decoration: none;
}

.data-prcsList {
  overflow: hidden;
  margin-top: 35px;
}

.data-prcsList_item {
  float: left;
  overflow: hidden;
  width: 32%;
  margin-left: 2%;
}

.data-prcsList_item:first-child {
  margin: 0;
}

.data-prcsList_img {
  float: left;
  width: 50%;
  margin-right: 5%;
}

.data-prcsList_txt {
  float: left;
  width: 45%;
  font-size: 14px;
}

.data-prcsList_txt span {
  display: block;
  width: 30px;
  margin-bottom: 10px;
  background: #b51725;
  color: #fff;
  line-height: 30px;
  text-align: center;
}

.data-about {
  margin-top: 115px;
  padding: 65px 0 100px;
  background: #f2f2f2;
  color: #000;
}

.data-about_ttl {
  font-family: proxima-nova, sans-serif;
  font-size: 30px;
}

.data-about_ttl span {
  font-size: 40px;
  font-weight: bold;
}

.data-about_txt {
  max-width: 1050px;
  margin-top: 20px;
}

.data-about_txt span {
  display: block;
  margin-bottom: 10px;
  font-weight: bold;
}

.data-about_btn {
  width: 362px;
  margin-top: 45px;
}

.data-about_btn a {
  padding-left: 10px;
  color: #000;
  font-size: 15px;
  line-height: 50px;
}

.data-about_btn a:before {
  background: #000;
  -webkit-transform: scale(1.1, 1.2);
  transform: scale(1.1, 1.2);
}

.data-about_btn a:after {
  border: 1px solid #000;
}

.data-about_btn a:hover {
  color: #fff;
}

.data-about_btn a:hover svg {
  fill: #fff;
}

.data-about_btn a svg {
  position: relative;
  z-index: 1;
  width: 13px;
  height: 11px;
  margin-left: 10px;

  fill: #b51725;
}

.data-about_txtArea {
  margin-top: 85px;
}

.data-about_detail {
  overflow-y: scroll;
  box-sizing: border-box;
  max-width: 1050px;
  height: 320px;
  margin-top: 10px;
  padding: 25px 30px;
  border: 1px solid #ccc;
  background: #fff;
  font-size: 14px;
}

.data-about_detail::-webkit-scrollbar {
  width: 20px;
}

.data-about_detail::-webkit-scrollbar-track {
  background: #e3e3e3;
}

.data-about_detail::-webkit-scrollbar-thumb {
  background: #000;
}

.data-about_detail a {
  text-decoration: underline;
}

.data-about_detail a:hover {
  opacity: .7;
  text-decoration: none;
}

.data-about_heading {
  margin-top: 25px;
  font-weight: bold;
}

.data-about_policy {
  margin-top: 10px;
}

.data-about_policy th {
  padding-right: 5px;
}

.data-about_desc {
  margin-top: 10px;
}

.data-about_msg {
  margin-top: 10px;
}

.data-privacy {
  /*margin-top: 80px;*/
  margin-top: -60px;
  padding-top: 140px;
}

.data-opt_inner {
  margin-bottom: 90px;
}

.data-opt_ttl {
  font: bold 30px proxima-nova, sans-serif;
  text-align: center;
}

.data-opt_txt {
  margin-top: 30px;
  text-align: center;
}

.contact .hero {
  height: 300px;
  background: url(../img/contact/hero.jpg) no-repeat center top;
  background-size: cover;
}

.contact_contents {
  max-width: 800px;
  margin: 80px auto 200px;
  padding: 0 20px;
}

.contact_mainTxt {
  margin-bottom: 50px;
  font-size: 17px;
  font-weight: bold;
  text-align: center;
}

.contact_form {
  margin-top: 15px;
}

.contact_form dl {
  margin-top: 35px;
}

.contact_form dl:first-child {
  margin-top: 0;
}

.contact_form dt {
  font-weight: bold;
}

.contact_form dt .reqTxt {
  margin-left: 1em;
  color: #b51725;
  font-size: 12px;
}

.contact_form dd {
  margin-top: 10px;
}

.contact_form .form_radio {
  margin-top: 15px;
}

.contact_form textarea {
  min-height: 165px;
}

.contact_form_btn {
  width: 300px;
  margin: 60px auto 0;
}

.contact_error {
  color: #b51725;
  font-size: 14px;
}

.contact_mainErr {
  font-size: 16px;
  font-weight: bold;
}

.contact_comp_btn {
  width: 300px;
  margin: 60px auto 0;
  line-height: 50px;
}

.contact_comp_btn a {
  color: #fff;
}

.contact_comp_btn a:before {
  background: rgba(181, 23, 37, .8);
  -webkit-transform: scale(1.1, 1.3);
  transform: scale(1.1, 1.3);
}

.contact_comp_btn a:after {
  background: #000;
}

.rcrt-heading {
  position: relative;
  color: #b51725;
  font-size: 20px;
  line-height: 1;
  text-align: center;
}

.rcrt-heading span {
  display: block;
  font: bold 80px proxima-nova, sans-serif;
}

.rcrt-pageTop-wrap {
  position: relative;
  height: 34px;
  margin-bottom: 30px;
}

.rcrt-pageTop {
  position: absolute;
  top: 0;
  right: 30px;
  box-sizing: border-box;
  width: 34px;
  height: 34px;
  background: #000;
  cursor: pointer;
  transition: .2s linear;
}

.rcrt-pageTop:hover:before,
.rcrt-pageTop:hover:after {
  background: #b51725;
}

.rcrt-pageTop:before,
.rcrt-pageTop:after {
  display: block;
  position: absolute;
  top: 50%;
  width: 8px;
  height: 3px;
  background: #fff;
  content: "";
  transition: .2s linear;
}

.rcrt-pageTop:before {
  left: 8px;
  -webkit-transform: skew(-40deg) rotate(-40deg);
  transform: skew(-40deg) rotate(-40deg);
}

.rcrt-pageTop:after {
  right: 8px;
  -webkit-transform: skew(40deg) rotate(40deg);
  transform: skew(40deg) rotate(40deg);
}

.rcrt-btn a {
  display: block;
  text-align: center;
}

.rcrt-hero {
  position: relative;
  height: 410px;
}

.rcrt-hero_ovl {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/recruit/mv_ovl.png) repeat left top;
}

.rcrt-hero_inner {
  position: absolute;
  top: 50%;
  width: 100%;
  text-align: center;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.rcrt-hero_ttl {
  opacity: 0;
  margin: 0 auto;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rcrt-hero_txt {
  opacity: 0;
  margin-top: 30px;
  font-size: 25px;
  font-weight: bold;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.is-inview .rcrt-hero_ttl,
.is-inview .rcrt-hero_txt {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.rcrt-link_list {
  overflow: hidden;
  height: 400px;
}

.rcrt-link_listItem {
  position: relative;
  float: left;
  width: 50%;
  height: 100%;
}

.rcrt-link_listItem:first-child a:before {
  background: url(../img/recruit/img_link01.jpg) no-repeat center;
  background-size: cover;
}

.rcrt-link_listItem:last-child a:before {
  background: url(../img/recruit/img_link02.jpg) no-repeat center;
  background-size: cover;
}

.rcrt-link_listItem a {
  display: block;
  position: relative;
  overflow: hidden;
  height: 100%;
}

.rcrt-link_listItem a:before {
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  transition: -webkit-transform .4s ease-out;
  transition: transform .4s ease-out;
  transition: transform .4s ease-out, -webkit-transform .4s ease-out;

  -webkit-backface-visibility: hidden;

  backface-visibility: hidden;
}

.rcrt-link_listItem a:hover:before {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.rcrt-link_ttl {
  opacity: 0;
  position: absolute;
  top: 50%;
  width: 100%;
  padding-bottom: 20px;
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(-25%) translate3d(0, 0, 0);
  transform: translateY(-25%) translate3d(0, 0, 0);
}

.rcrt-link_ttl:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 60px;
  height: 2px;
  margin-left: -30px;
  background: #fff;
  content: "";
}

.rcrt-link_ttl.is-inview {
  opacity: 1;
  -webkit-transform: translateY(-50%) translate3d(0, 0, 0);
  transform: translateY(-50%) translate3d(0, 0, 0);
}

.rcrt-link.-lower {
  height: 300px;
}

.rcrt-link.-lower .rcrt-link_list {
  height: 300px;
}

@-webkit-keyframes upDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
}

@keyframes upDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
}

.rt-mv {
  height: calc(100vh - 80px);
}

.rt-mv_ovl {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/recruit/mv_ovl.png) repeat left top;
}

.rt-mv_inner {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.rt-mv_ttl {
  opacity: 0;
  width: 68%;
  max-width: 822px;
  margin: 0 auto;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rt-mv_arw {
  position: absolute;
  z-index: 1;
  right: 50px;
  bottom: 70px;
  width: 13px;
  -webkit-animation: upDown 2s linear;
  animation: upDown 2s linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.rt-mv .swiper-slide {
  height: 100%;
}

/* .rt-mv .swiper-slide._01 {
  background: url(../img/recruit/hero01.jpg) no-repeat center top;
  background-size: cover;
} */

.rt-mv .swiper-slide._01 {
  background: url(../img/recruit/hero02.jpg) no-repeat center top;
  background-size: cover;
}

.rt-mv .swiper-slide._02 {
  background: url(../img/recruit/hero03.jpg) no-repeat center top;
  background-size: cover;
}

.rt-mv .swiper-slide._03 {
  background: url(../img/recruit/hero04.jpg) no-repeat center top;
  background-size: cover;
}

.rt-mv_inner.is-inview .rt-mv_ttl,
.rt-mv_inner.is-inview .rt-mv_txt {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.rt-ppl {
  position: relative;
  padding: 80px 0 120px;
}

.rt-ppl_inner {
  padding: 0 10px;
}

.rt-ppl_bg {
  position: absolute;
  top: 23%;
  left: 0;
  width: 100%;
  height: 995px;
  background: url(../img/recruit/bg_ppl.gif) repeat center;
  -webkit-transform: skewY(-15deg);
  transform: skewY(-15deg);
}

.rt-ppl_ttl {
  opacity: 0;
  z-index: 1;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rt-ppl_txt {
  opacity: 0;
  position: relative;
  z-index: 1;
  margin-top: 35px;
  font-size: 18px;
  line-height: 1.8;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rt-ppl_list {
  max-width: 1300px;
  /*margin: 90px auto 0;*/
  margin: 120px auto 0;
  display: flex;
  display: -webkit-flex;
  display: -ms-flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
}

.rt-ppl_listItem {
  opacity: 0;
  position: relative;
  /*float: left;*/
  width: 29%;
  /*margin: 0 6% 110px 0;*/
  margin: 0 5% 110px 5%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rt-ppl_listItem a {
  display: block;
  padding-top: 114%;
  box-shadow: 6px 6px 0px 1px rgba(0, 0, 0, .2);
  background: linear-gradient(to top, #e9eced 0%, #fdfafa 100%);
}

.rt-ppl_listItem:nth-child(3n) {
  margin-right: 0;
  transition-delay: .6s;
}

.rt-ppl_listItem:nth-child(2) {
  /*margin-top: 50px;*/
  /*transition-delay: .3s;*/
}

.rt-ppl_listItem:nth-child(odd) .rt-ppl_dtl {
  background: #c34646;
}

.rt-ppl_listItem:nth-child(even) .rt-ppl_dtl {
  background: #333;
}

.rt-ppl_listItem:nth-child(even) .rt-ppl_dtl:before {
  border-color: transparent transparent #333 transparent;
}

.rt-ppl_icn {
  position: absolute;
  top: 15px;
  left: 15px;
  width: 10%;
}

.rt-ppl_dtl {
  position: absolute;
  bottom: -47px;
  left: 50%;
  box-sizing: border-box;
  width: 75%;
  padding: 25px 6% 30px;
  border-radius: 4px;
  color: #fff;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.rt-ppl_dtl:before {
  position: absolute;
  top: -18px;
  right: 37px;
  border-width: 0 10px 18px 10px;
  border-style: solid;
  border-color: transparent transparent #c34646 transparent;
  content: "";
}

.rt-ppl_name {
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
}

.rt-ppl_name span {
  margin-left: 6%;
  font-size: 17px;
}

.rt-ppl_name span:before {
  display: inline-block;
  width: 3px;
  height: 20px;
  margin-right: 4%;
  background: #fff;
  content: "";
  -webkit-transform: skew(-27deg);
  transform: skew(-27deg);
}

.rt-ppl_pos {
  margin-top: 7px;
  font-size: 17px;
}

.rt-ppl_img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.rt-ppl_btn {
  position: relative;
  width: 500px;
  margin: 0 auto;
  font-size: 18px;
  font-weight: bold;
  line-height: 70px;
}

.rt-ppl_btn a {
  background: #000;
  color: #fff;
  transition: .2s ease-in;
}

.rt-ppl_btn a:hover {
  background: #4a4a4a;
}

.is-inview .rt-ppl_ttl,
.is-inview .rt-ppl_txt {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.rt-entry {
  padding: 100px 0 0;
}

.rt-entry_ttl {
  opacity: 0;
  margin-bottom: 25px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rt-entry_inner {
  padding: 120px 0;
  background: url(../img/recruit/bg_entry.jpg) no-repeat center;
  background-size: cover;
}

.rt-entry_btn {
  opacity: 0;
  width: 600px;
  margin: 0 auto;
  font-size: 20px;
  font-weight: bold;
  line-height: 100px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.rt-entry_btn a {
  background: #b51725;
  color: #fff;
  transition: .2s ease-in;
}

.rt-entry_btn a:hover {
  background: #cf2f3d;
}

.rt-entry.is-inview .rt-entry_ttl,
.rt-entry.is-inview .rt-entry_btn {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.rt-entry.-lower {
  padding: 0;
}

.rt-entry.-lower .rt-entry_inner {
  padding: 70px 0;
  background: #b51725;
}

.rt-entry.-lower .rt-entry_btn a {
  border: 2px solid #fff;
}

.ppl .rcrt-hero {
  background: url(../img/recruit/people/hero.jpg) no-repeat center top;
  background-size: cover;
}

.ppl .rcrt-hero_ttl {
  max-width: 383px;
}

.ppl main {
  box-sizing: border-box;
  max-width: 1560px;
  margin: 0 auto;
  padding: 0 25px;
}

.ppl_list {
  display: -ms-flexbox;
  display: flex;
  margin-top: 11%;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.ppl_list_item {
  opacity: 0;
  width: 49%;
  margin-bottom: 95px;
  background: url(../img/recruit/people/bg.gif) repeat left top;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.ppl_list_item:nth-child(2n) {
  transition-delay: .4s;
}

.ppl_list_item.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.ppl_list_item a {
  display: block;
  position: relative;
  box-sizing: border-box;
  height: 100%;
  padding: 40px 30px 20px;
  border: 6px solid #f2f2f2;
  transition: border-color .2s ease-in, box-shadow .2s ease-in;
}

.ppl_list_item a:hover {
  border-color: #b51725;
  box-shadow: 4px 4px 6px 0px rgba(131, 131, 131, .3);
}

.ppl_list_item a:hover .ppl_list_icn {
  width: 10%;
}

.ppl_list_item a:hover .ppl_list_icn:before {
  background: #b51725;
}

.ppl_list_item a:hover .ppl_list_icn:after {
  border-color: transparent transparent transparent #b51725;
}

.ppl_list_img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 39%;
}

.ppl_list_txtBlock {
  position: relative;
  float: right;
  width: 61%;
}

.ppl_list_txtBlock:before {
  position: absolute;
  top: -10px;
  left: -30px;
  width: 28px;
  height: 24px;
  background: url(../img/recruit/quot.png) no-repeat center;
  background-size: contain;
  content: "";
}

.ppl_list_ttl {
  min-height: 80px;
  color: #b51725;
  font-size: 25px;
  font-weight: bold;
}

.ppl_list_name {
  margin-top: 15px;
  font-size: 25px;
  font-weight: bold;
}

.ppl_list_name span {
  margin-left: 5%;
  font-size: 18px;
}

.ppl_list_name span:before {
  display: inline-block;
  width: 3px;
  height: 20px;
  margin-right: 4%;
  background: #b51725;
  content: "";
  -webkit-transform: skew(-27deg);
  transform: skew(-27deg);
}

.ppl_list_pos {
  font-size: 14px;
}

.ppl_list_icn {
  position: absolute;
  bottom: 9px;
  left: 93%;
  width: 5%;
  height: 10px;
  transition: .2s ease-in;
}

.ppl_list_icn:before,
.ppl_list_icn:after {
  position: absolute;
  content: "";
}

.ppl_list_icn:before {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #999;
}

.ppl_list_icn:after {
  top: 0;
  right: 0;
  border-width: 9px 0 0 12px;
  border-style: solid;
  border-color: transparent transparent transparent #999;
}

.ppld-hero {
  position: relative;
  height: 620px;
}

.ppld-hero._01 {
  background: url(../img/recruit/people/interview1/hero.jpg) no-repeat center;
  background-size: cover;
}

.ppld-hero._02 {
  background: url(../img/recruit/people/interview2/hero.jpg) no-repeat center;
  background-size: cover;
}

.ppld-hero._03 {
  background: url(../img/recruit/people/interview3/hero.jpg) no-repeat right 20% center;
  background-size: cover;
}

.ppld-hero._04 {
  background: url(../img/recruit/people/interview4/hero.jpg) no-repeat right 15% center;
  background-size: cover;
}

.ppld-hero._05 {
  background: url(../img/recruit/people/interview5/hero.jpg) no-repeat right 31% center;
  background-size: cover;
}

.ppld-hero_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3% 0 0 2%;
}

.ppld-hero_txtBlock {
  opacity: 0;
  max-width: 400px;
  background: #b51725;
  color: #fff;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-hero_ttl {
  padding: 11px 25px;
  background: #000;
  font: bold 22px proxima-nova, sans-serif;
}

.ppld-hero_ttl svg {
  margin-right: -15px;
}

.ppld-hero_txt {
  padding: 75px 25px 45px;
}

.ppld-hero_mainTxt {
  position: relative;
  min-height: 180px;
  font-size: 34px;
  font-weight: bold;
}

.ppld-hero_mainTxt:before {
  position: absolute;
  top: -38px;
  left: 0;
  font-size: 80px;
  line-height: 1;
  content: "”";
}

.ppld-hero_detail {
  padding: 12px 10px 5px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

.ppld-hero_pos {
  font-size: 14px;
}

.ppld-hero_name {
  font-size: 30px;
  font-weight: bold;
}

.ppld-hero_name span {
  margin-left: 12px;
  font-size: 18px;
}

.ppld-hero_name span:before {
  display: inline-block;
  width: 3px;
  height: 20px;
  margin-right: 13px;
  background: #fff;
  content: "";
  -webkit-transform: skew(-27deg);
  transform: skew(-27deg);
}

.ppld main {
  position: relative;
  margin: 80px 0 150px;
}

.ppld-bg {
  position: absolute;
  top: 15%;
  left: 0;
  width: 100%;
  height: 995px;
  background: url(../img/recruit/bg_ppl.gif) repeat center;
  -webkit-transform: skewY(-15deg);
  transform: skewY(-15deg);
}

.ppld-itvwWrap {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.ppld-itvw {
  margin-top: 100px;
}

.ppld-itvw_img {
  opacity: 0;
  float: left;
  width: 46%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-itvw_txtBlock {
  opacity: 0;
  float: left;
  width: 50%;
  margin-right: 4%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-itvw_q {
  margin-bottom: 45px;
  color: #b51725;
  font-size: 20px;
  font-weight: bold;
}

.ppld-itvw_q:before {
  display: inline-block;
  width: 20px;
  height: 1px;
  margin: 0 10px 5px 0;
  background: #b51725;
  vertical-align: middle;
  content: "";
}

.ppld-itvw_txt {
  margin-top: 30px;
  line-height: 1.9;
}

.ppld-itvw.-right .ppld-itvw_txtBlock {
  float: right;
  margin-right: 0;
  margin-left: 4%;
}

.ppld-img-full {
  opacity: 0;
  margin-top: 180px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-img-full.is-inview {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.ppld-crr {
  margin-top: 120px;
}

.ppld-crr_imgWrap {
  opacity: 0;
  position: relative;
  padding: 20px 0 0 20px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-crr_imgWrap.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.ppld-crr_ttl {
  position: absolute;
  top: 0;
  left: 0;
  padding: 10px 20px;
  background: rgba(184, 15, 30, .8);
  color: #fff;
  font-size: 25px;
}

.ppld-crr_ttl svg {
  margin-right: 23px;
}

.ppld-crr_list {
  margin-top: 40px;
  padding: 0 20px;
}

.ppld-crr_list_item {
  opacity: 0;
  margin-top: 30px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-crr_list_item.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.ppld-crr_list_item .icn {
  display: inline-block;
  width: 34px;
  margin-right: 12px;
  border-radius: 50%;
  background: #b51725;
  color: #fff;
  font: bold 18px proxima-nova, sans-serif;
  line-height: 34px;
  text-align: center;
  vertical-align: middle;
}

.ppld-crr_list_item .txt {
  display: inline-block;
  max-width: 90%;
  vertical-align: middle;
}

.ppld-link {
  padding: 65px 0 30px;
  background: url(../img/recruit/people/bg_ppld-link.png) no-repeat center bottom #f3f3f3;
  background-size: contain;
}

.ppld-linkList {
  display: -ms-flexbox;
  display: flex;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;

  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  /*justify-content: space-between;*/

  -webkit-justify-content: space-around;
  -ms-justify-content: space-around;
  justify-content: space-around;
}

.ppld-linkList_item {
  opacity: 0;
  width: 17%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.ppld-linkList_item:nth-child(2) {
  transition-delay: .2s;
}

.ppld-linkList_item:nth-child(3) {
  transition-delay: .4s;
}

.ppld-linkList_item:nth-child(4) {
  transition-delay: .6s;
}

/*.ppld-linkList_item:last-child {
  transition-delay: .8s;
}*/

.ppld-linkList_item a {
  display: block;
}

.ppld-linkList_item a:hover .ppld-link_ovl {
  border: 6px solid #b51725;
}

.ppld-link_img {
  position: relative;
  max-width: 200px;
  margin: 0 auto;
}

.ppld-link_ovl {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 6px solid transparent;
  transition: .2s linear;
}

.ppld-link_txt {
  margin-top: 7px;
}

.ppld-link_name {
  color: #000;
  font-size: 20px;
  font-weight: bold;
}

.ppld-link_name span {
  margin-left: 13px;
  color: #666;
  font-size: 16px;
}

.ppld-link_name span:before {
  display: inline-block;
  width: 3px;
  height: 17px;
  margin-right: 13px;
  background: #b51725;
  content: "";
  -webkit-transform: skew(-27deg);
  transform: skew(-27deg);
}

.ppld-link_pos {
  margin-top: 8px;
  color: #666;
  font-size: 12px;
}

.ppld .rcrt-pageTop-wrap {
  margin: 130px 0 0;
}

.is-inview .ppld-hero_txtBlock,
.is-inview .ppld-itvw_txtBlock,
.is-inview .ppld-itvw_img,
.is-inview .ppld-linkList_item {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.abt .rcrt-hero {
  background: url(../img/recruit/aboutus/hero.jpg) no-repeat center;
  background-size: cover;
}

.abt .rcrt-hero_ttl {
  max-width: 515px;
}

.abt-heading {
  opacity: 0;
  color: #b51725;
  font-family: proxima-nova, sans-serif;
  font-size: 80px;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}

.abt-data {
  max-width: 1120px;
  margin: 60px auto 120px;
  padding: 0 20px;
}

.abt-data_imgWrap {
  margin-top: 20px;
}

.abt-data_imgWrap img {
  opacity: 0;
  float: left;
  width: 48%;
  margin-left: 4%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.abt-data_imgWrap img:first-child {
  margin: 0;
}

.abt-data_imgWrap img:last-child {
  transition-delay: .3s;
}

.abt-data_img {
  opacity: 0;
  margin-top: 30px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .6s;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.abt-bnft {
  padding: 70px 0 90px;
  background: url(../img/recruit/bg_ppl.gif) repeat left top;
}

.abt-bnft_inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px;
}

.abt-bnft_txt {
  opacity: 0;
  margin-top: 10px;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
}

.abt-bnft_list {
  display: -ms-flexbox;
  display: flex;
  margin-top: 25px;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.abt-bnft_list_item {
  opacity: 0;
  width: 31%;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.abt-bnft_list_item:first-child {
  transition-delay: .3s;
}

.abt-bnft_list_item:nth-child(2) {
  transition-delay: .6s;
}

.abt-bnft_list_item:last-child {
  transition-delay: .9s;
}

.abt-bnft_list_txt {
  margin-top: 15px;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.abt-bnft_list_txt span {
  display: block;
  font-size: 25px;
}

.abt-bnft_list_txt .annotation {
  font-size: 16px;
}

.abt-env {
  max-width: 1300px;
  margin: 0 auto;
  padding: 90px 20px 185px;
}

.abt-env_txt {
  opacity: 0;
  margin: 15px 0 30px;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
}

.abt-env_list {
  overflow: hidden;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

.abt-env_list_item {
  opacity: 0;
  float: left;
  max-width: 310px;
  width: 31%;
  margin: 0 3.5% 3% 0;
  transition: opacity .5s ease-out, -webkit-transform .5s ease-out;
  transition: opacity .5s ease-out, transform .5s ease-out;
  transition: opacity .5s ease-out, transform .5s ease-out, -webkit-transform .5s ease-out;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
}

.abt-env_list_item:nth-child(2) {
  transition-delay: .2s;
}

.abt-env_list_item:nth-child(3) {
  transition-delay: .4s;
  margin-right: 0;
}

.abt-env_list_item:nth-child(4) {
  transition-delay: .6s;
}

.abt-env_list_item:nth-child(5) {
  transition-delay: .8s;
}

/*.abt-env_list_item:last-child {
  transition-delay: .9s;
}*/

.abt-env_list.is-inview .abt-env_list_item {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.is-inview .abt-heading,
.is-inview .abt-bnft_txt,
.is-inview .abt-env_txt,
.is-inview .abt-data_imgWrap img,
.is-inview .abt-data_img,
.is-inview .abt-bnft_list_item {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.crr main {
  margin: 80px 0 200px;
}

.crr .rcrt-hero {
  background: url(../img/recruit/career/hero.jpg) no-repeat center top;
  background-size: cover;
}

.crr .rcrt-hero_ttl {
  max-width: 695px;
}

.crr_inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px;
}

.crr_heading {
  opacity: 0;
  position: relative;
  color: #b51725;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.crr_txt {
  opacity: 0;
  margin-top: 20px;
  text-align: center;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  transition-delay: .3s;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.crr_listWrap {
  opacity: 0;
  margin-top: 50px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.crr_listWrap.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.crr_list {
  margin-bottom: 4px;
}

.crr_list_head {
  position: relative;
  padding: 22px 60px 22px 40px;
  background: #666;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  cursor: pointer;
  transition: background .2s ease-in;
}

.crr_list_head:hover {
  background: #a1a1a1;
}

.crr_list_head .icn {
  display: inline-block;
  width: 40px;
  margin-right: 15px;
  text-align: center;
  vertical-align: middle;
}

.crr_list_head .icn svg {
  vertical-align: middle;
}

.crr_list_head .txt {
  vertical-align: middle;
}

.crr_list_head .btn {
  position: absolute;
  top: 50%;
  right: 60px;
  width: 34px;
  height: 34px;
  margin-top: -17px;
  transition: .2s ease-in;
}

.crr_list_head .btn:before,
.crr_list_head .btn:after {
  position: absolute;
  background: #fff;
  content: "";
}

.crr_list_head .btn:before {
  top: 0;
  left: 50%;
  width: 2px;
  height: 34px;
  margin-left: -1px;
}

.crr_list_head .btn:after {
  top: 50%;
  left: 0;
  width: 34px;
  height: 2px;
  margin-top: -1px;
}

.crr_list_head .btn.active {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.crr_list_body {
  display: none;
  padding-bottom: 60px;
}

.crr_list_inner {
  margin-top: 30px;
}

.crr_list_heading {
  padding-left: 11px;
  border-left: 3px solid #b51725;
  color: #b51725;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2;
}

.crr_list_heading-sub {
  margin-top: 15px;
  font-size: 15px;
}

.crr_list_detail {
  margin-top: 10px;
  padding: 15px 25px;
  background: #f9f9f9;
}

.crr_list_detail li {
  margin-top: 10px;
  padding-left: 1em;
  text-indent: -1em;
}

.crr_list_detail li:first-child {
  margin-top: 0;
}

.crr_list_btn {
  width: 360px;
  margin: 30px auto 0;
  font-weight: bold;
  line-height: 50px;
}

.crr_list_btn a {
  background: #b51725;
  color: #fff;
  transition: .2s ease-in;
}

.crr_list_btn a:hover {
  background: #cf2f3d;
}

.crr_cond {
  margin-top: 110px;
}

.crr_cond_table {
  opacity: 0;
  width: 100%;
  margin-top: 20px;
  font-size: 15px;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.crr_cond_table tr {
  border-bottom: 1px solid #ccc;
}

.crr_cond_table tr:first-child {
  border-top: 1px solid #ccc;
}

.crr_cond_table th {
  box-sizing: border-box;
  width: 24%;
  padding: 12px 3%;
  background: #f9f9f9;
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
}

.crr_cond_table td {
  box-sizing: border-box;
  width: 76%;
  padding: 12px 3%;
  vertical-align: middle;
}

.crr_cond_table td span {
  font-size: 13px;
}

.crr_cond_table li {
  padding-left: 1em;
  text-indent: -1em;
}

.crr_flow {
  max-width: 1200px;
  margin: 120px auto 0;
  padding: 0 20px;
}

.crr_flow_inner {
  margin-top: 20px;
  padding: 4% 4% 3%;
  background: #f9f1f2;
}

.crr_flow_list {
  display: -ms-flexbox;
  display: flex;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.crr_flow_list_item {
  opacity: 0;
  position: relative;
  box-sizing: border-box;
  width: 22%;
  margin-left: 3%;
  padding: 15px 2% 30px;
  background: #fff;
  transition: opacity .7s ease-out, -webkit-transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out;
  transition: opacity .7s ease-out, transform .7s ease-out, -webkit-transform .7s ease-out;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.crr_flow_list_item:first-child {
  margin: 0;
  transition-delay: .2s;
}

.crr_flow_list_item:first-child:before {
  display: none;
}

.crr_flow_list_item:nth-child(2) {
  transition-delay: .4s;
}

.crr_flow_list_item:nth-child(3) {
  transition-delay: .6s;
}

.crr_flow_list_item:last-child {
  transition-delay: .8s;
}

.crr_flow_list_item:before {
  position: absolute;
  top: 50%;
  left: -15%;
  width: 13%;
  max-width: 30px;
  height: 13%;
  max-height: 18px;
  background: url(../img/recruit/career/arw.png) no-repeat center;
  background-size: contain;
  content: "";
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.crr_flow_list_ttl {
  padding-bottom: 10px;
  border-bottom: 1px dashed #b51725;
  color: #b51725;
  font: bold 24px proxima-nova, sans-serif;
}

.crr_flow_list_txt {
  margin-top: 23px;
  padding-left: 10px;
  font-size: 20px;
  font-weight: bold;
}

.crr_flow_annotation {
  margin-top: 20px;
  font-size: 12px;
}

.is-inview .crr_heading,
.is-inview .crr_txt,
.is-inview .crr_cond_table,
.is-inview .crr_flow_list_item {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.rcEnt .rcrt-hero {
  height: 250px;
  background: #f3f5f9;
}

.rcEnt .rcrt-hero_ttl {
  max-width: 196px;
}

.rcEnt .rcrt-hero_txt {
  font-size: 18px;
}

.rcEnt main {
  max-width: 960px;
  margin: 80px auto 200px;
  padding: 0 20px;
}

.rcEnt-pp {
  margin-top: 80px;
}

.rcEnt-pp_ttl {
  color: #000;
  font-size: 25px;
  font-weight: bold;
}

.rcEnt-pp_txtBlock {
  overflow-y: scroll;
  box-sizing: border-box;
  height: 420px;
  margin-top: 20px;
  padding: 25px 30px;
  border: 1px solid #ccc;
  font-size: 14px;
}

.rcEnt-pp_txtBlock::-webkit-scrollbar {
  width: 20px;
}

.rcEnt-pp_txtBlock::-webkit-scrollbar-track {
  background: #e3e3e3;
}

.rcEnt-pp_txtBlock::-webkit-scrollbar-thumb {
  background: #000;
}

.rcEnt-btnBlock {
  margin-top: 80px;
  text-align: center;
}

.rcEnt-btnBlock-form {
  margin-top: 55px;
  text-align: center;
}

.rcEnt-btnBlock-form .entry_form_btn {
  display: inline-block;
  margin: 0;
}

.rcEnt-btnBlock-form .entry_form_btn:first-child {
  margin-right: 40px;
}

.rcEnt-btnBlock-form .entry_form_btn:last-child input[type="submit"] {
  background: #000;
}

.rcEnt-btnBlock-form .entry_form_btn:last-child input[type="submit"]:hover {
  background: #4a4a4a;
}

.rcEnt-btn {
  display: inline-block;
  width: 300px;
  font-weight: bold;
  line-height: 50px;
}

.rcEnt-btn a {
  color: #fff;
  transition: .2s ease-in;
}

.rcEnt-btn:first-child {
  margin-right: 40px;
}

.rcEnt-btn:first-child a {
  background: #b51725;
}

.rcEnt-btn:first-child a:hover {
  background: #cf2f3d;
}

.rcEnt-btn:last-child a {
  background: #000;
}

.rcEnt-btn:last-child a:hover {
  background: #4a4a4a;
}

.entry_form dl {
  display: table;
  width: 100%;
  border-top: 2px solid #fff;
}

.entry_form dt {
  display: table-cell;
  box-sizing: border-box;
  width: 23%;
  padding: 20px 2%;
  background: #f2f2f2;
  font-weight: bold;
  vertical-align: middle;
}

.entry_form dt .reqTxt {
  margin-left: 1em;
  color: #b51725;
  font-size: 14px;
}

.entry_form .form_vat {
  vertical-align: top;
}

.entry_form dd {
  display: table-cell;
  box-sizing: border-box;
  width: 77%;
  padding: 20px 4%;
}

.entry_form dd .form_txtArea {
  min-height: 195px;
}

.entry_form_name {
  max-width: 470px;
}

.entry_form_radio {
  display: inline-block;
  margin-left: 40px;
}

.entry_form_bd {
  max-width: 260px;
}

.entry_form_tel {
  max-width: 260px;
}

.entry_form_mail {
  max-width: 470px;
  margin-right: 3%;
}

.entry_form_btn {
  width: 300px;
  margin: 55px auto 0;
}

.entry_form_btn input[type="submit"] {
  display: block;
  width: 100%;
  padding: 0;
  border: none;
  border-radius: 0;
  background: #b51725;
  color: #fff;
  font-family: inherit;
  font-size: 16px;
  font-weight: bold;
  line-height: 50px;
  cursor: pointer;
  transition: .2s ease-in;

  -webkit-appearance: button;

  -moz-appearance: button;

  appearance: button;
}

.entry_form_btn input[type="submit"]:hover {
  background: #cf2f3d;
}

.entry_comp_msg {
  padding: 40px 10px;
  border: 2px solid #b51725;
  color: #b51725;
  font-size: 25px;
  font-weight: bold;
  text-align: center;
}

.entry_comp_txt {
  margin-top: 35px;
  font-size: 17px;
}

.entry_comp_annotation {
  margin-top: 20px;
  padding-left: 1em;
  font-size: 14px;
  text-indent: -1em;
}

.entry_comp_tel {
  margin-top: 30px;
  font-size: 20px;
}

.entry_comp_tel span {
  font-size: 16px;
  font-weight: bold;
}

.entry_comp_btn {
  width: 300px;
  margin: 75px auto 0;
  font-weight: bold;
  line-height: 50px;
}

.entry_comp_btn a {
  background: #b51725;
  color: #fff;
  transition: background .2s ease-in;
}

.entry_comp_btn a:hover {
  background: #cf2f3d;
}

@media screen and (max-width: 1024px) {
  body {
    font-weight: 500;
  }

  .head_navInner {
    width: 90%;
  }

  .head_langNav_item {
    font-size: 12px;
  }

  .head_navList_item-en {
    font-size: 14px;
  }

  .head_navList_item .jpBlock {
    font-size: 10px;
  }

  .head_navList_item.-logo a {
    width: 64px;
  }

  .rcrt-head_logo {
    width: 230px;
  }

  .rcrt-head_navList_item {
    font-size: 15px;
  }

  .rcrt-foot_logo {
    width: 65px;
  }

  .rcrt-foot_navList {
    width: 80%;
    padding-right: 0;
  }

  .rcrt-foot_navList_item {
    font-size: 15px;
  }

  .rcrt-foot_btn {
    width: 35%;
    font-size: 15px;
  }

  .top-mv_content_ttl {
    font-size: 35px;
  }

  .company-mission_txt h4 {
    font-size: 22px;
  }

  .company-mission_txt h4 span {
    font-size: 14px;
  }

  .company-mission_txt p {
    font-size: 13px;
  }

  .rt-ppl_name {
    font-size: 20px;
  }

  .rt-ppl_name span {
    font-size: 14px;
  }

  .rt-ppl_name span:before {
    height: 15px;
  }

  .rt-ppl_pos {
    font-size: 14px;
  }

  .ppl_list_item {
    margin-bottom: 65px;
  }

  .ppl_list_item a {
    padding: 20px 10px;
  }

  .ppl_list_ttl {
    min-height: auto;
    font-size: 20px;
  }

  .ppl_list_name {
    margin-top: 10px;
    font-size: 18px;
  }

  .ppl_list_name span {
    font-size: 14px;
  }

  .ppl_list_name span:before {
    height: 15px;
  }

  .ppl_list_pos {
    font-size: 12px;
  }
}

@media screen and (max-width: 767px) {
  body {
    padding-top: 60px;
  }

  body.rcrt {
    padding-top: 60px;
  }

  .is-sp {
    display: block !important;
  }

  .is-pc {
    display: none !important;
  }

  .hero_inner {
    box-sizing: border-box;
    width: 100%;
    padding: 0 10px;
  }

  .hero_ttl {
    font-size: 50px;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .hero_txt {
    margin-top: 15px;
    font-size: 12px;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .is-inview .hero_ttl,
  .is-inview .hero_txt {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .bread {
    display: none;
  }

  .contactArea {
    padding: 50px 16px 75px;
  }

  .contactArea_ttl {
    font-size: 40px;
  }

  .contactArea_txt {
    margin-top: 10px;
    font-size: 13px;
  }

  .contactArea_btn {
    width: 270px;
    margin: 35px auto 0;
    font-size: 13px;
    line-height: 50px;
  }

  .form_radio .radioTxt {
    line-height: 22px;
  }

  .form_radio .radioTxt:before {
    width: 22px;
    height: 22px;
  }

  .form_radio input[type="radio"]:checked+.radioTxt:after {
    width: 12px;
    height: 12px;
  }

  .form_input {
    padding: 10px;
  }

  .form_txtArea {
    padding: 10px;
    font-size: 14px;
  }

  .form_btn input[type="submit"] {
    font-size: 13px;
  }

  .head {
    height: 60px;
    padding: 0;
    border-top: 2px solid #b51725;
    -webkit-transform: none;
    transform: none;
  }

  .head_spLogo {
    display: block;
    position: absolute;
    top: 50%;
    left: 10px;
    width: 192px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .head_nav {
    display: none;
  }

  .head_navBtn {
    display: block;
    position: absolute;
    top: 50%;
    right: 18px;
    width: 30px;
    height: 19px;
    margin-top: -12px;
  }

  .head_langNav {
    position: static;
    width: 100%;
    margin-top: 40px;
    -webkit-transform: none;
    transform: none;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .head_langNav_item {
    width: 19%;
  }

  .head_langNav_item.en:before {
    background: #fff;
  }

  .head_spNavWrap {
    display: block;
    position: fixed;
    z-index: 1;
    top: 60px;
    left: 0;
    overflow-y: scroll;
    width: 100%;
    height: calc(100% - 60px);
    transition: .3s cubic-bezier(.755, .05, .855, .06);
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

  .head_spNavWrap.is-active {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  .head_spNav {
    padding-bottom: 45px;
    background: rgba(0, 0, 0, .9);
  }

  .head_spNav_btn {
    width: 65%;
    margin: 40px auto 0;
  }

  .head_spNav_btn a {
    border: 1px solid #fff;
    color: #fff;
    font-size: 13px;
    line-height: 43px;
  }

  .head_spNavList_item {
    font-size: 16px;
  }

  .head_spNavList_item a {
    display: block;
    padding: 11px 25px;
    border-bottom: 1px solid #333;
    color: #fff;
  }

  .head_spNavList_ttl {
    position: relative;
  }

  .head_spNavList_btnL {
    position: absolute;
    top: 0;
    right: 0px;
    width: 49px;
    height: 100%;
  }

  .head_spNavList_btnL:before,
  .head_spNavList_btnL:after {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    background: #fff;
    content: "";
    transition: .23s ease-in;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .head_spNavList_btnL:before {
    width: 2px;
    height: 22px;
  }

  .head_spNavList_btnL:after {
    width: 22px;
    height: 2px;
  }

  .head_spNavList_btnL.is-active:before {
    width: 22px;
    height: 2px;
  }

  .head_spNavList_btnL.is-active:after {
    background-color: transparent;
  }

  .head_spNavList-lower {
    display: none;
    background: rgba(57, 57, 57, .9);
  }

  .head_spNavList-lower_item {
    font-size: 15px;
  }

  .head_spNavList-lower_item a {
    display: block;
    padding: 12px 25px;
    color: #fff;
  }

  .rcrt-head {
    height: 60px;
  }

  .rcrt-head_nav {
    display: none;
  }

  .rcrt-head .head_spNavWrap {
    height: auto;
  }

  .foot_inner {
    padding: 40px 8% 10px;
  }

  .foot_pageTop {
    top: 15px;
    width: 30px;
    height: 30px;
  }

  .foot_pageTop:before,
  .foot_pageTop:after {
    width: 25%;
  }

  .foot_pageTop:before {
    left: 6px;
  }

  .foot_pageTop:after {
    right: 6px;
  }

  .foot_logo {
    float: none;
    text-align: center;
  }

  .foot_logo img {
    width: 50px;
  }

  .foot_navWrap {
    float: none;
    margin-top: 50px;
  }

  .foot_nav_btn {
    display: block;
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
    text-align: center;
  }

  .foot_nav_btn a {
    display: block;
    background: #333;
    color: #fff;
    font-size: 13px;
    line-height: 50px;
  }

  .foot_copy {
    margin-top: 55px;
    font-size: 10px;
    text-align: center;
  }

  .foot_navList {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .foot_navList_item {
    float: none;
    width: 33%;
    margin: 0 0 32px;
    line-height: 1.2;
    text-align: center;
  }

  .foot_navList_item:nth-child(2),
  .foot_navList_item:nth-child(5) {
    border-right: 1px solid #333;
    border-left: 1px solid #333;
  }

  .foot_navList_item a {
    font-size: 13px;
  }

  .rcrt-foot .foot_pageTop {
    display: block;
    top: 15px;
  }

  .rcrt-foot_logo {
    width: 100%;
    text-align: center;
  }

  .rcrt-foot_logo img {
    width: 65px;
  }

  .rcrt-foot_nav-left {
    width: 100%;
  }

  .rcrt-foot_navList {
    width: 100%;
    margin-top: 30px;
  }

  .rcrt-foot_navList_item {
    width: 50%;
    margin-right: 0;
    font-size: 13px;
  }

  .rcrt-foot_btn {
    width: 100%;
    max-width: 400px;
    margin: 30px auto 0;
    font-size: 13px;
  }

  .top-ovl {
    top: 0;
    height: 100%;
  }

  .top-ovlInner {
    height: calc(100vh - 60px);
  }

  .top-ovl_logoWrap {
    top: 46%;
  }

  .top-ovl_logo {
    width: auto;
    height: 150px;
  }

  .top-mvWrap {
    position: relative;
    height: 100%;
  }

  .top-mv {
    height: auto;
    background: url(../img/top/sp/mv_bg.jpg) no-repeat center;
    background-size: cover;
  }

  .top-mvInner {
    display: block;
    position: static;
    width: 89%;
    margin: 0 auto;
    padding: 30px 0;
    -webkit-transform: none;
    transform: none;
  }

  .top-mv_content {
    width: 100%;
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, .4);
  }

  .top-mv_content.-service {
    margin-top: 5%;
  }

  .top-mv_content a {
    padding: 5% 4% 9%;
  }

  .top-mv_content a:before {
    right: 12px;
    bottom: 10px;
    width: 14px;
  }

  .top-mv_content a:after {
    right: 10px;
    bottom: 12px;
    height: 14px;
  }

  .top-mv_content a:hover:before {
    right: 12px;
  }

  .top-mv_content a:hover:after {
    bottom: 12px;
  }

  .top-mv_content_img {
    margin: 2% auto 0;
  }

  .top-mv_content_ttl {
    font-size: 25px;
  }

  .top-mv_content_txt {
    margin-top: 10px;
    padding: 0 3%;
    font-size: 12px;
  }

  .top-news {
    padding: 30px 0 60px;
  }

  .top-newsInner {
    padding: 0 10px;
  }

  .top-news_ttl {
    font-size: 40px;
  }

  .top-newsList {
    margin: 20px 0 0;
  }

  .top-newsList_item {
    margin-top: 0;
    padding-top: 15px;
    border-bottom: 1px solid #ccc;
  }

  .top-newsList_item:first-child {
    border-top: 1px solid #ccc;
  }

  .top-newsList_date {
    width: auto;
    font-size: 13px;
  }

  .top-newsList_label {
    margin: 0 0 0 3%;
  }

  .top-newsList_ttl {
    display: block;
    width: 100%;
    font-size: 13px;
  }

  .top-newsList_ttl a {
    display: block;
    padding: 10px 0 15px;
  }

  .top-news_btn {
    float: none;
    width: 270px;
    margin: 25px auto 0;
    font-size: 14px;
    line-height: 50px;
  }

  .top-rcrt {
    padding: 55px 0 80px;
    background: url(../img/top/sp/rcrt_bg.jpg) no-repeat center;
    background-size: cover;
  }

  .top-rcrtInner {
    position: static;
    -webkit-transform: none;
    transform: none;
  }

  .top-rcrt_ttl {
    font-size: 40px;
    text-align: center;
  }

  .top-rcrt_txt {
    width: 100%;
    margin-top: 5px;
    font-size: 14px;
    line-height: 1.9;
  }

  .top-rcrt_btn {
    width: 270px;
    margin: 50px auto 0;
    font-size: 14px;
  }

  .prdct .hero {
    height: auto;
    padding-top: 71%;
    background: url(../img/product/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .prdct main {
    padding: 0;
  }

  .prdct .inner {
    padding: 0 10px;
  }

  .prdct-list_img {
    width: 69%;
    margin: 0 auto;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .prdct-list_txtBlock {
    width: 100%;
    margin: 45px 0 0;
  }

  .prdct-list_item.-full .prdct-list_txtBlock {
	width: 100%;
    margin: 45px 0 0;
  }

  .prdct-list_ttl {
    padding-top: 15px;
    font-size: 13px;
    line-height: 1.2;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .prdct-list_ttl span {
    font-size: 40px;
  }

  .prdct-list_ttl:before {
    width: 27px;
  }

  .prdct-list_copy {
    margin-top: 10px;
    font-size: 15px;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .prdct-list_txt {
    font-size: 13px;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .prdct-list_btn {
    width: 83%;
    max-width: 300px;
    margin: 45px auto 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .prdct-list_btn a {
    font-size: 13px;
  }

  .prdct-list_item:first-child {
    padding: 65px 0 60px;
    background-size: 445px;
  }

  .prdct-list_item:nth-child(2) {
    padding: 60px 0;
    background-size: 445px;
  }

  .prdct-list_item:nth-child(2) .prdct-list_img {
    margin: 0 auto;
  }

  .prdct-list_item:nth-child(2) .prdct-list_txtBlock {
    margin-left: 0;
  }

  .prdct-list_item:last-child {
    padding: 55px 0 75px;
    background-size: 445px;
  }

  .is-inview .prdct-list_img,
  .is-inview .prdct-list_ttl,
  .is-inview .prdct-list_copy,
  .is-inview .prdct-list_txt,
  .is-inview .prdct-list_btn {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .company .hero {
    height: auto;
    padding-top: 71%;
    background: url(../img/company/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .company main {
    margin-bottom: 70px;
  }

  .company-block_ttl {
    font-size: 40px;
  }

  .company .inner {
    padding: 0 10px;
  }

  .company-mission {
    padding: 30px 0;
  }

  .company-mission_ttl {
    font-size: 40px;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .company-mission_ttl.is-inview {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .company-mission_imgInner {
    width: 66%;
    height: auto;
    padding-top: 57%;
  }

  .company-mission_txt.-btm {
    width: 47%;
    max-width: 100%;
    margin: 8% auto 0;
    text-align: center;
    -webkit-transform: translate(-10px, -30px);
    transform: translate(-10px, -30px);
  }

  .company-mission_txt.-btm.enBlock {
    width: 40%;
    max-width: 100%;
  }

  .company-mission_txt.-left {
    left: 10px;
    width: 31%;
    max-width: 100%;
    -webkit-transform: translate(10px, -30px);
    transform: translate(10px, -30px);
  }

  .company-mission_txt.-left.enBlock {
    width: 22%;
    max-width: 100%;
  }

  .company-mission_txt.-right {
    right: 10px;
    width: 26%;
    max-width: 100%;
    -webkit-transform: translate(10px, 30px);
    transform: translate(10px, 30px);
  }

  .company-mission_txt.-right.enBlock {
    width: 23%;
    max-width: 100%;
  }

  .company-mission_txt h4 {
    font-size: 20px;
  }

  .company-mission_txt h4 span {
    font-size: 11px;
  }

  .company-mission_txt p {
    margin-top: 10px;
    font-size: 15px;
  }

  .company-mission_btmTxt {
    padding: 40px 10px;
  }

  .company-mission_btmTxt .company-mission_txtBlock {
    width: 100%;
    margin-top: 30px;
  }

  .company-mission_btmTxt .company-mission_txtBlock:first-child {
    margin-top: 0;
  }

  .company-mission_btmTxt h4 {
    color: #000;
    font-size: 20px;
    font-weight: bold;
  }

  .company-mission_btmTxt h4 span {
    display: block;
    color: #b91e24;
    font-size: 12px;
    font-weight: normal;
  }

  .company-mission_btmTxt p {
    margin-top: 5px;
    color: #000;
    font-size: 15px;
  }

  .company-officer {
    padding: 40px 10px 80px;
  }

  .company-officerList_item {
    margin-top: 40px;
    padding: 40px 0 0;
  }

  .company-officerList_item:first-child {
    margin-top: 0;
  }

  .company-officerList_img {
    display: inline-block;
    float: none;
    width: 50%;
    margin-right: 7%;
  }

  .company-officerList_txtBlock {
    float: none;
    width: 100%;
  }

  .company-officerList_inner {
    display: -ms-flexbox;
    display: flex;
    font-size: 0;
    -ms-flex-align: center;
    align-items: center;
  }

  .company-officerList_ttl {
    margin-bottom: 25px;
    font-size: 13px;
  }

  .company-officerList_ttl span {
    font-size: 18px;
  }

  .company-officerList_txt {
    margin-top: 25px;
    font-size: 13px;
  }

  .company-officerList_txt span {
    display: block;
    width: 100%;
    margin-top: 10px;
  }

  .company-officerList_tblWrap {
    margin-top: 25px;
  }

  .company-officerList_tblWrap.enBlock .company-officerList_tbl dt {
    width: 100%;
  }

  .company-officerList_tbl {
    display: block;
    margin-top: 10px;
    font-size: 13px;
  }

  .company-officerList_tbl:first-child {
    margin-top: 0;
  }

  .company-officerList_tbl dt {
    display: block;
    width: 100%;
    padding-right: 0;
    font-weight: bold;
  }

  .company-officerList_tbl dd {
    display: block;
  }

  .company-info {
    padding: 20px 0 40px;
  }

  .company-info_list {
    padding: 12px 0;
    font-size: 13px;
  }

  .company-info_list dt {
    float: none;
    width: 100%;
  }

  .company-info_list dd {
    float: none;
    width: 100%;
  }

  .company-access {
    padding: 50px 10px 0;
  }

  .company-access_mapWrap {
    padding-top: 65%;
  }

  .company-access_link {
    margin-top: 10px;
    font-size: 11px;
  }

  .company-access_txt {
    font-size: 13px;
  }

  .cnsl main {
    padding-bottom: 60px;
  }

  .cnsl .hero {
    height: auto;
    padding-top: 71%;
    background: url(../img/consulting/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .cnsl .hero_ttl {
    font-size: 48px;
  }

  .cnsl main {
    margin: 40px 0 0;
  }

  .cnsl-mainTtl {
    padding: 0 10px;
  }

  .cnsl-mainTxt {
    padding: 0 25px;
    font-size: 12px;
  }

  .cnsl-mainTxt:after {
    top: 135%;
  }

  .cnsl-imgArea {
    margin-top: 40px;
    padding: 45px 0;
  }

  .cnsl-imgArea_inner {
    margin: 0 10px;
    padding-bottom: 9%;
  }

  .cnsl-imgArea_img {
    width: 91%;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .cnsl-imgArea_txt.-top {
    top: 0;
    right: 3%;
    width: 44%;
    -webkit-transform: translate(-20px, -20px);
    transform: translate(-20px, -20px);
  }

  .cnsl-imgArea_txt.-right {
    bottom: 0;
    width: 33%;
    -webkit-transform: translate(20px, -20px);
    transform: translate(20px, -20px);
  }

  .cnsl-imgArea_txt.-left {
    bottom: 0;
    width: 33%;
    -webkit-transform: translate(-20px, -20px);
    transform: translate(-20px, -20px);
  }

  .cnsl-txtArea {
    display: block;
    padding: 0 10px 25px;
    background: #f2f2f2;
    color: #000;
  }

  .cnsl-txtArea_inner {
    padding: 15px 0;
    border-top: 1px solid #fff;
  }

  .cnsl-txtArea_ttl {
    font-size: 18px;
    font-weight: bold;
  }

  .cnsl-txtArea_txt {
    font-size: 13px;
  }

  .cnsl-detail {
    padding: 60px 10px 0;
  }

  .cnsl-detail_annotation {
    font-size: 11px;
  }

  .cnsl-table {
    margin-top: 15px;
    font-size: 12px;
  }

  .cnsl-table th {
    width: 34%;
    padding: 10px;
  }

  .cnsl-table td {
    padding: 10px;
  }

  .cnsl-table td:nth-child(2) {
    width: 36%;
  }

  .cnsl-table td:last-child {
    width: 30%;
  }

  .cnsl-table_head th {
    font-size: 12px;
  }

  .cnsl-table_head th:last-child {
    width: 30%;
  }

  .cnsl-adv {
    margin: 60px 0 0;
  }

  .cnsl-adv_inner {
    padding: 0 10px;
  }

  .cnsl-adv_heading {
    margin-top: 15px;
    padding: 5px 10px;
    font-size: 15px;
  }

  .cnsl-adv_heading-sub {
    margin-top: 30px;
    font-size: 14px;
  }

  .cnsl-adv_txt {
    margin-top: 20px;
    font-size: 13px;
  }

  .cnsl-adv_menuList {
    margin-top: 20px;
  }

  .cnsl-adv_menuList_item {
    width: 31%;
    min-height: 38px;
    margin: 0 1% 10px;
    padding: 0 1%;
    font-size: 12px;
  }

  .cnsl-adv_corpList {
    text-align: center;
  }

  .cnsl-adv_corpList_item {
    width: 27%;
    margin: 0 3% 15px;
  }

  .cnsl-adv_ptnrList_item {
    margin-top: 5px;
    font-size: 13px;
  }

  .cnsl-adv_ias {
    margin-top: 20px;
  }

  .cnsl-adv_iasImg {
    float: none;
    width: 85%;
    max-width: 364px;
    margin: 0 auto;
  }

  .cnsl-adv_iasTxt {
    float: none;
    width: 100%;
    margin: 15px 0 0;
    font-size: 13px;
  }

  .cnsl-adv_svcList {
    margin-top: 20px;
  }

  .cnsl-adv_svcList_item {
    font-size: 13px;
  }

  .cnsl-adv_annotation {
    font-size: 10px;
  }

  .enBlock .cnsl-imgArea_img {
    width: 99%;
  }

  .enBlock .cnsl-imgArea_txt.-top {
    top: 3%;
    width: 43%;
  }

  .enBlock .cnsl-imgArea_txt.-right {
    right: 2%;
    width: 30%;
  }

  .enBlock .cnsl-imgArea_txt.-left {
    bottom: 0;
    width: 24%;
  }

  .is-inview .cnsl-mainTtl,
  .is-inview .cnsl-mainTxt,
  .is-inview .cnsl-imgArea_img {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .is-inview .cnsl-mainTxt:after {
    height: 50px;
  }

  .is-inview .cnsl-imgArea_txt.-top,
  .is-inview .cnsl-imgArea_txt.-right,
  .is-inview .cnsl-imgArea_txt.-left {
    -webkit-transform: translate(0);
    transform: translate(0);
  }

  .news .hero {
    height: auto;
    padding-top: 71%;
    background: url(../img/news/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .news main {
    margin: 35px auto 80px;
  }

  .news_linkTxt {
    margin-top: 30px;
    font-size: 13px;
  }

  .data .hero {
    height: auto;
    padding-top: 71%;
    background: url(../img/data/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .data main {
    margin: 40px 0 0;
  }

  .data .inner {
    padding-right: 10px;
    padding-left: 10px;
  }

  .data-mainList {
    padding: 25px 8% 40px;
  }

  .data-mainList_ttl {
    font-size: 30px;
  }

  .data-mainList_txt {
    font-size: 13px;
  }

  .data-mainList_btn {
    width: 85%;
    max-width: 300px;
    margin: 25px auto 0;
    font-size: 14px;
  }

  .data-appBlock {
    margin-top: 55px;
  }

  .data-appBlock_ttl {
    font-size: 20px;
  }

  .data-appBlock_txt {
    margin-top: 10px;
    font-size: 13px;
  }

  .data-prcsBlock.-ios {
    margin-top: 30px;
  }

  .data-prcsBlock.-android {
    margin-top: 40px;
  }

  .data-prcsBlock_ttl {
    padding: 5px 10px;
    font-size: 15px;
  }

  .data-prcsList {
    margin-top: 20px;
  }

  .data-prcsList_item {
    float: none;
    width: 100%;
    margin: 25px 0 0;
  }

  .data-prcsList_txt {
    font-size: 13px;
  }

  .data-about {
    margin-top: 60px;
    padding: 35px 0 50px;
  }

  .data-about_ttl {
    font-size: 20px;
  }

  .data-about_ttl span {
    font-size: 25px;
  }

  .data-about_txt {
    margin-top: 15px;
    font-size: 13px;
  }

  .data-about_btn {
    width: 83%;
    margin: 30px auto 0;
  }

  .data-about_btn a {
    padding: 5px 0;
    font-size: 13px;
    line-height: 1.6;
  }

  .data-about_txtArea {
    margin-top: 40px;
  }

  .data-about_detail::-webkit-scrollbar {
    width: 10px;
  }

  .data-privacy {
    /*margin-top: 40px;*/
	margin-top: -30px;
	padding-top: 70px;
  }

  .data-opt_inner {
    margin-bottom: 45px;
  }

  .data-opt_txt {
    font-size: 13px;
  }

  .contact .hero {
    height: auto;
    padding-top: 45%;
    background: url(../img/contact/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .contact_contents {
    margin: 40px auto 80px;
    padding: 0 10px;
  }

  .contact_mainTxt {
    margin-bottom: 30px;
    font-size: 15px;
  }

  .contact_form dl {
    margin-top: 25px;
  }

  .contact_form dd {
    margin-top: 5px;
    font-size: 14px;
  }

  .contact_form_btn {
    width: 83%;
    max-width: 400px;
    margin: 45px auto 0;
  }

  .contact_form ::-webkit-input-placeholder {
    font-size: 10px;
  }

  .contact_form :placeholder-shown {
    font-size: 10px;
  }

  .rcrt-heading {
    font-size: 16px;
  }

  .rcrt-heading span {
    font-size: 40px;
  }

  .rcrt-pageTop-wrap {
    display: none;
  }

  .rcrt-pageTop:before,
  .rcrt-pageTop:after {
    width: 25%;
  }

  .rcrt-pageTop:before {
    left: 6px;
  }

  .rcrt-pageTop:after {
    right: 6px;
  }

  .rcrt-hero {
    height: 205px;
  }

  .rcrt-hero_txt {
    margin-top: 15px;
    font-size: 20px;
  }

  .rcrt-link_list {
    height: auto;
  }

  .rcrt-link_listItem {
    float: none;
    width: 100%;
    height: 150px;
  }

  .rcrt-link_ttl {
    padding-bottom: 10px;
    font-size: 30px;
  }

  .rcrt-link_ttl:after {
    width: 40px;
    margin-left: -20px;
  }

  .rt-mv {
    height: calc(100vh - 60px);
  }

  .rt-mv_inner {
    padding: 0 10px;
  }

  .rt-mv_ttl {
    width: 100%;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  .rt-mv_arw {
    right: 10px;
    bottom: 40px;
    width: 11px;
  }

  /* .rt-mv .swiper-slide._01 {
    background: url(../img/recruit/sp/hero01.jpg) no-repeat center top;
    background-size: cover;
  } */

  .rt-mv .swiper-slide._01 {
    background: url(../img/recruit/sp/hero02.jpg) no-repeat center top;
    background-size: cover;
  }

  .rt-mv .swiper-slide._02 {
    background: url(../img/recruit/sp/hero03.jpg) no-repeat center top;
    background-size: cover;
  }

  .rt-mv .swiper-slide._03 {
    background: url(../img/recruit/sp/hero04.jpg) no-repeat center top;
    background-size: cover;
  }

  .rt-ppl {
    padding: 40px 0 60px;
  }

  .rt-ppl_txt {
    font-size: 14px;
  }

  .rt-ppl_list {
    margin-top: 20%;
    padding: 0 20px;
	display: block;
  }

  .rt-ppl_listItem {
    float: none;
    width: 100%;
    margin: 0 0 45%;
  }

  .rt-ppl_listItem.is-inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .rt-ppl_listItem:nth-child(3n) {
    transition-delay: 0s;
  }

  .rt-ppl_listItem:nth-child(2) {
    margin-top: 0;
    transition-delay: 0s;
  }

  .rt-ppl_dtl {
    padding: 15px 6%;
  }

  .rt-ppl_name span {
    margin-left: 10px;
  }

  .rt-ppl_name span:before {
    width: 2px;
    margin-right: 10px;
  }

  .rt-ppl_btn {
    width: 86%;
    max-width: 400px;
    font-size: 16px;
    line-height: 50px;
  }

  .rt-entry {
    padding: 50px 0 0;
  }

  .rt-entry_inner {
    padding: 60px 0;
  }

  .rt-entry_btn {
    width: 90%;
    max-width: 400px;
    font-size: 15px;
    line-height: 55px;
  }

  .ppl .rcrt-hero {
    background: url(../img/recruit/people/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .ppl .rcrt-hero_ttl {
    max-width: 192px;
  }

  .ppl main {
    padding: 0 10px 45px;
  }

  .ppl_list_item {
    width: 100%;
    margin-bottom: 25px;
  }

  .ppl_list_item:nth-child(2n) {
    transition-delay: 0s;
  }

  .ppl_list_img {
    width: 42%;
    max-width: 140px;
  }

  .ppl_list_txtBlock {
    width: 58%;
  }

  .ppl_list_txtBlock:before {
    width: 20px;
    height: 18px;
  }

  .ppld-hero {
    height: 350px;
    margin-bottom: 225px;
  }

  .ppld-hero._01 {
    background: url(../img/recruit/people/interview1/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .ppld-hero._02 {
    background: url(../img/recruit/people/interview2/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .ppld-hero._03 {
    background: url(../img/recruit/people/interview3/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .ppld-hero._04 {
    background: url(../img/recruit/people/interview4/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .ppld-hero._05 {
    background: url(../img/recruit/people/interview5/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .ppld-hero_txtBlock {
    position: absolute;
    bottom: -225px;
    left: 10px;
    width: 77%;
  }

  .ppld-hero_ttl {
    padding: 9px 18px;
    font-size: 16px;
  }

  .ppld-hero_ttl svg {
    width: 18px;
    height: 23px;
    margin-right: -10px;
  }

  .ppld-hero_txt {
    padding: 55px 18px 30px;
  }

  .ppld-hero_mainTxt {
    min-height: 135px;
    font-size: 25px;
  }

  .ppld-hero_mainTxt:before {
    top: -28px;
    font-size: 55px;
  }

  .ppld-hero_detail {
    padding: 8px 5px 5px;
  }

  .ppld-hero_pos {
    font-size: 12px;
  }

  .ppld-hero_name {
    font-size: 22px;
  }

  .ppld-hero_name span {
    font-size: 13px;
  }

  .ppld-hero_name span:before {
    width: 2px;
    height: 15px;
    margin-right: 10px;
  }

  .ppld main {
    margin: 0 0 75px;
  }

  .ppld-bg {
    top: 13%;
    height: 800px;
  }

  .ppld-itvwWrap {
    padding: 45px 20px 0;
  }

  .ppld-itvw {
    margin-top: 45px;
  }

  .ppld-itvw:first-child {
    margin-top: 0;
  }

  .ppld-itvw_img {
    float: none;
    width: 100%;
    margin-top: 20px;
  }

  .ppld-itvw_txtBlock {
    float: none;
    width: 100%;
    margin: 0;
  }

  .ppld-itvw_q {
    margin-bottom: 0px;
    font-size: 18px;
  }

  .ppld-itvw_q:before {
    width: 15px;
  }

  .ppld-itvw_txt {
    margin-top: 10px;
    font-size: 13px;
  }

  .ppld-itvw.-right .ppld-itvw_txtBlock {
    float: none;
    margin-left: 0;
  }

  .ppld-img-full {
    margin: 60px -20px 0;
  }

  .ppld-crr {
    margin-top: 70px;
  }

  .ppld-crr_imgWrap {
    padding: 0;
  }

  .ppld-crr_ttl {
    top: -10px;
    left: -10px;
    padding: 2px 10px;
    font-size: 17px;
  }

  .ppld-crr_ttl svg {
    width: 14px;
    height: 9px;
    margin-right: 10px;
  }

  .ppld-crr_list {
    margin: 0 -10px;
    padding: 0;
  }

  .ppld-crr_list_item {
    margin-top: 15px;
  }

  .ppld-crr_list_item .icn {
    width: 23px;
    margin-right: 7px;
    font-size: 11px;
    line-height: 23px;
    vertical-align: top;
  }

  .ppld-crr_list_item .txt {
    width: 86%;
    font-size: 12px;
  }

  .ppld-link {
    padding: 40px 0 65px;
  }

  .ppld-linkList_item {
    width: 100%;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #ccc;
  }

  .ppld-linkList_item:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
  }

  .ppld-linkList_item a {
    overflow: hidden;
  }

  .ppld-link_img {
    float: left;
    width: 29%;
    margin-right: 10%;
  }

  .ppld-link_txt {
    float: left;
    width: 61%;
  }

  .ppld-link_name {
    font-size: 17px;
  }

  .ppld-link_name span {
    font-size: 13px;
  }

  .ppld-link_name span:before {
    width: 2px;
    height: 15px;
    margin-right: 10px;
  }

  .abt .rcrt-hero {
    background: url(../img/recruit/aboutus/sp/hero.jpg) no-repeat center;
    background-size: cover;
  }

  .abt .rcrt-hero_ttl {
    max-width: 257px;
  }

  .abt-heading {
    font-size: 40px;
  }

  .abt-data {
    margin: 30px auto 45px;
    padding: 0 10px;
  }

  .abt-data_imgWrap {
    margin-top: 10px;
  }

  .abt-data_imgWrap img {
    float: none;
    width: 100%;
    margin: 25px 0 0;
  }

  .abt-data_img {
    margin-top: 25px;
  }

  .abt-bnft {
    padding: 35px 0 45px;
  }

  .abt-bnft_inner {
    padding: 0 10px;
  }

  .abt-bnft_txt {
    margin-top: 0;
    font-size: 18px;
  }

  .abt-bnft_list {
    padding: 0 42px;
  }

  .abt-bnft_list_item {
    width: 100%;
    margin-top: 20px;
  }

  .abt-bnft_list_item:first-child {
    margin-top: 0;
  }

  .abt-bnft_list_txt {
    margin-top: 5px;
    font-size: 20px;
  }

  .abt-bnft_list_txt span {
    font-size: 16px;
  }

  .abt-bnft_list_txt .annotation {
    font-size: 12px;
  }

  .abt-env {
    padding: 45px 10px 80px;
  }

  .abt-env_txt {
    margin-top: 0;
    font-size: 16px;
  }

  .abt-env_list_item {
    width: 48%;
    margin: 0 2% 2% 0;
  }

  .abt-env_list {
	max-width: inherit;
  }

  .abt-env_list_item:nth-child(2n) {
    margin-right: 0;
  }

  .abt-env_list_item:nth-child(3) {
    margin-right: 2%;
  }

  .crr main {
    margin: 40px 0 80px;
  }

  .crr .rcrt-hero {
    background: url(../img/recruit/career/sp/hero.jpg) no-repeat center top;
    background-size: cover;
  }

  .crr .rcrt-hero_ttl {
    max-width: 348px;
    padding: 0 10px;
  }

  .crr_inner {
    padding: 0 10px;
  }

  .crr_heading {
    font-size: 30px;
  }

  .crr_txt {
    font-size: 14px;
  }

  .crr_list_head {
    padding: 10px;
    font-size: 16px;
  }

  .crr_list_head .icn {
    position: absolute;
    top: 50%;
    left: 10px;
    width: 30px;
    margin-right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .crr_list_head .txt {
    display: block;
    padding: 0 30px 0 45px;
  }

  .crr_list_head .btn {
    right: 10px;
    width: 18px;
    height: 18px;
    margin-top: -9px;
  }

  .crr_list_head .btn:before {
    height: 18px;
  }

  .crr_list_head .btn:after {
    width: 18px;
  }

  .crr_list_body {
    padding: 0 10px 40px;
  }

  .crr_list_inner {
    margin-top: 20px;
  }

  .crr_list_heading {
    font-size: 16px;
  }

  .crr_list_heading-sub {
    margin-top: 10px;
    font-size: 14px;
  }

  .crr_list_detail {
    padding: 10px 15px;
    font-size: 13px;
  }

  .crr_list_btn {
    width: 86%;
    max-width: 400px;
    font-size: 13px;
  }

  .crr_list_icn._01 {
    width: 30px;
    height: 20px;
  }

  .crr_list_icn._02 {
    width: 20px;
    height: 32px;
  }

  .crr_list_icn._03 {
    width: 23px;
    height: 23px;
  }

  .crr_list_icn._04 {
    width: 28px;
    height: 25px;
  }

  .crr_cond {
    margin-top: 55px;
  }

  .crr_cond_table th {
    width: 28%;
    padding: 10px 3%;
    font-size: 13px;
  }

  .crr_cond_table td {
    padding: 10px 3%;
    font-size: 12px;
  }

  .crr_cond_table td span {
    font-size: 10px;
  }

  .crr_flow {
    margin: 60px auto 0;
    padding: 0 10px;
  }

  .crr_flow_list_item {
    width: 100%;
    margin: 35px 0 0;
    padding: 15px 5%;
  }

  .crr_flow_list_item:before {
    top: -25%;
    left: 50%;
    width: 8%;
    height: 18%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .crr_flow_list_ttl {
    font-size: 18px;
  }

  .crr_flow_list_txt {
    margin-top: 15px;
    font-size: 14px;
  }

  .rcEnt .rcrt-hero {
    height: 205px;
  }

  .rcEnt .rcrt-hero_ttl {
    max-width: 164px;
  }

  .rcEnt main {
    margin: 40px auto 80px;
    padding: 0 10px;
  }

  .rcEnt_mainTxt {
    font-size: 14px;
  }

  .rcEnt-pp {
    margin-top: 40px;
  }

  .rcEnt-pp_ttl {
    font-size: 20px;
  }

  .rcEnt-pp_txtBlock::-webkit-scrollbar {
    width: 10px;
  }

  .rcEnt-btnBlock {
    margin-top: 40px;
  }

  .rcEnt-btnBlock-form .entry_form_btn:first-child {
    margin: 0 auto 15px;
  }

  .rcEnt-btn {
    display: block;
    width: 90%;
    max-width: 400px;
    margin: 0 auto;
  }

  .rcEnt-btn:first-child {
    margin: 0 auto 15px;
  }

  .entry_form dl {
    display: block;
  }

  .entry_form dt {
    display: block;
    width: 100%;
  }

  .entry_form dd {
    display: block;
    width: 100%;
  }

  .entry_comp_msg {
    padding: 10px;
    font-size: 16px;
  }

  .entry_comp_txt {
    font-size: 14px;
  }
}

@media screen and (min-width: 768px) {
  .is-inview .rt-ppl_listItem {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
