@charset "UTF-8";

@-webkit-keyframes shooting {
  0% {
    opacity: 0;
    width: 0
  }

  50% {
    opacity: 1
  }

  100% {
    opacity: 0;
    width: 100%
  }
}

@keyframes shooting {
  0% {
    opacity: 0;
    width: 0
  }

  50% {
    opacity: 1
  }

  100% {
    opacity: 0;
    width: 100%
  }
}

@-webkit-keyframes shooting2 {
  0% {
    opacity: 0;
    width: 0
  }

  100% {
    opacity: 0.3;
    width: 100%
  }
}

@keyframes shooting2 {
  0% {
    opacity: 0;
    width: 0
  }

  100% {
    opacity: 0.3;
    width: 100%
  }
}

@-webkit-keyframes shooting3 {
  0% {
    opacity: 0
  }

  90% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@keyframes shooting3 {
  0% {
    opacity: 0
  }

  90% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

.black_title {
      background: black;
      color: white;
      
}



@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?5mdyf2');
  src:  url('../fonts/icomoon.eot?5mdyf2#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?5mdyf2') format('truetype'),
    url('../fonts/icomoon.woff?5mdyf2') format('woff'),
    url('../fonts/icomoon.svg?5mdyf2#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arw1_t:before {
  content: "\e100";
}
.icon-arw1_r:before {
  content: "\e101";
}
.icon-arw1_b:before {
  content: "\e102";
}
.icon-arw1_l:before {
  content: "\e103";
}
.icon-arw2_t:before {
  content: "\e104";
}
.icon-arw2_r:before {
  content: "\e105";
}
.icon-arw2_b:before {
  content: "\e106";
}
.icon-arw2_l:before {
  content: "\e107";
}
.icon-arw3_b:before {
  content: "\e108";
}
.icon-arw3_l:before {
  content: "\e109";
}
.icon-arw3_r:before {
  content: "\e110";
}
.icon-arw3_t:before {
  content: "\e111";
}
.icon-arw4_l:before {
  content: "\e112";
}
.icon-arw4_r:before {
  content: "\e113";
}
.icon-blank:before {
  content: "\e500";
}
.icon-twitter:before {
  content: "\e900";
}
.icon-facebook:before {
  content: "\e901";
}
.icon-instagram:before {
  content: "\e902";
}
.icon-youtube:before {
  content: "\e903";
}
.icon-movie-arw:before {
  content: "\e904";
}
.icon-facebook1:before {
  content: "\e905";
}
.icon-instagram1:before {
  content: "\e906";
}
.icon-twitter1:before {
  content: "\e907";
}
.icon-dot:before {
  content: "\e908";
}
.icon-index:before {
  content: "\e909";
}
.icon-line:before {
  content: "\e910";
}
.icon-checkbox:before {
  content: "\e911";
}
.icon-download:before {
  content: "\e912";
}
.icon-close:before {
  content: "\e913";
}
.icon-camera:before {
  content: "\eaf2";
}
.icon-film:before {
  content: "\eaf3";
}
.icon-microphone:before {
  content: "\eaf4";
}
.icon-diamond:before {
  content: "\eaf5";
}
.icon-yingyang:before {
  content: "\eaf6";
}
.icon-fiber_new:before {
  content: "\eaf7";
}
.icon-external-link:before {
  content: "\eaf8";
}
.icon-cc-visa:before {
  content: "\eaf9";
}
.icon-cc-mastercard:before {
  content: "\eaf10";
}
.icon-cc-amex:before {
  content: "\eaf11";
}
.icon-cc-jcb:before {
  content: "\eaf12";
}
.icon-cc-diners-club:before {
  content: "\eaf13";
}
.icon-yin-yang:before {
  content: "\eaf14";
}

body {
  margin: 0;
  padding: 0;
  border: none
}

img,
div,
p,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
dl,
dt,
dd,
form,
fieldset,
textarea,
address,
main,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  text-decoration: none;
  list-style-type: none
}

main,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: inherit
}

table {
  border: none;
  border-collapse: collapse;
  border-spacing: 0
}

th {
  text-align: left;
  vertical-align: top
}

caption {
  text-align: left
}

a,
a:focus,
a:hover,
a:active {
  outline: none
}

input,
input:focus,
input:hover,
input:active,
textarea,
textarea:focus,
textarea:hover,
textarea:active {
  outline: none
}

img {
  vertical-align: top
}

.clearfix {
  zoom: 1
}

.clearfix:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: none
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:before,
.slick-track:after {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir="rtl"] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1
}

.swiper-container-no-flexbox .swiper-slide {
  float: left
}

.swiper-container-vertical>.swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.swiper-container-multirow>.swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.swiper-container-free-mode>.swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto
}

.swiper-slide {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-property: transform, -webkit-transform
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto
}

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform
}

.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.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-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.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-next,
.swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  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");
  left: 10px;
  right: auto
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  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");
  right: 10px;
  left: auto
}

.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-button-lock {
  display: none
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: .3s opacity;
  transition: .3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
  position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
  transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
  transform: scale(0.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
  transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
  transform: scale(0.33)
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: 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 {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0)
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: .2s top, .2s -webkit-transform;
  transition: .2s top, .2s -webkit-transform;
  -webkit-transition: .2s transform, .2s top;
  transition: .2s transform, .2s top;
  -webkit-transition: .2s transform, .2s top, .2s -webkit-transform;
  transition: .2s transform, .2s top, .2s -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%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s left, .2s -webkit-transform;
  transition: .2s left, .2s -webkit-transform;
  -webkit-transition: .2s transform, .2s left;
  transition: .2s transform, .2s left;
  -webkit-transition: .2s transform, .2s left, .2s -webkit-transform;
  transition: .2s transform, .2s left, .2s -webkit-transform
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s right, .2s -webkit-transform;
  transition: .2s right, .2s -webkit-transform;
  -webkit-transition: .2s transform, .2s right;
  transition: .2s transform, .2s right;
  -webkit-transition: .2s transform, .2s right, .2s -webkit-transform;
  transition: .2s transform, .2s right, .2s -webkit-transform
}

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -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,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0
}

.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical>.swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0
}

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff
}

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.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, 0.25)
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000
}

.swiper-pagination-lock {
  display: none
}

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1)
}

.swiper-container-horizontal>.swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%
}

.swiper-container-vertical>.swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0
}

.swiper-scrollbar-cursor-drag {
  cursor: move
}

.swiper-scrollbar-lock {
  display: none
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain
}

.swiper-slide-zoomed {
  cursor: move
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -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;
  content: '';
  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-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat
}

.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)
  }
}

.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  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 {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%
}

.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-next+.swiper-slide,
.swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}

.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0
}

.swiper-container-flip {
  overflow: visible
}

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1
}

.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-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-container-coverflow .swiper-wrapper {
  -ms-perspective: 1200px
}

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden
}

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden
}

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0
}

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}

.modaal-wrapper * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden
}

.modaal-wrapper .modaal-close {
  border: none;
  background: transparent;
  padding: 0;
  -webkit-appearance: none
}

.modaal-wrapper.modaal-start_none {
  display: none;
  opacity: 1
}

.modaal-wrapper.modaal-start_fade {
  opacity: 0
}

.modaal-wrapper *[tabindex="0"] {
  outline: none !important
}

.modaal-wrapper.modaal-fullscreen {
  overflow: hidden
}

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%
}

.modaal-fullscreen .modaal-outer-wrapper {
  display: block
}

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px
}

.modaal-fullscreen .modaal-inner-wrapper {
  padding: 0;
  display: block;
  vertical-align: top
}

.modaal-container {
  position: relative;
  display: block;
  width: auto;
  margin: 0 auto;
  text-align: left;
  color: #000;
  max-width: 725px;
  border-radius: 0px;
  cursor: auto
}

@media only screen and (min-width: 1500px) {
  .modaal-container {
    max-width: 906px
  }
}

.modaal-container.is_loading {
  height: 100px;
  width: 100px;
  overflow: hidden
}

.modaal-fullscreen .modaal-container {
  max-width: none;
  height: 100%;
  overflow: auto
}

.modaal-close {
  display: none;
  position: absolute;
  right: -5rem;
  top: 0px;
  color: #ffffff;
  cursor: pointer;
  opacity: 1;
  width: 5rem;
  height: 5rem;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out
}

.modaal-close:focus,
.modaal-close:hover {
  outline: none
}

.modaal-close span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden
}

.modaal-close:before,
.modaal-close:after {
  display: block;
  content: " ";
  position: absolute;
  top: 0;
  right: 1.5rem;
  width: 1px;
  height: 3rem;
  background: #fff;
  -webkit-transition: background .2s ease-in-out;
  transition: background .2s ease-in-out
}

.modaal-close:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.modaal-close:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.modaal-fullscreen .modaal-close {
  background: #afb7bc;
  right: 10px;
  top: 10px
}

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0
}

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent
}

.modaal-confirm-btn.modaal-ok {
  padding: 10px 15px;
  color: #fff;
  background: #555;
  border-radius: 3px;
  -webkit-transition: background .2s ease-in-out;
  transition: background .2s ease-in-out
}

.modaal-confirm-btn.modaal-ok:hover {
  background: #2f2f2f
}

.modaal-confirm-btn.modaal-cancel {
  text-decoration: underline
}

.modaal-confirm-btn.modaal-cancel:hover {
  text-decoration: none;
  color: #2f2f2f
}

@keyframes instaReveal {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-webkit-keyframes instaReveal {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  -webkit-box-shadow: none !important;
  box-shadow: none !important
}

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent
}

.modaal-instagram .modaal-content-container>blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important
}

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
  animation: instaReveal 1s linear forwards
}

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px
}

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%
}

.modaal-gallery-wrap {
  position: relative;
  color: #fff
}

.modaal-gallery-item {
  display: none
}

.modaal-gallery-item img {
  display: block
}

.modaal-gallery-item.is_active {
  display: block
}

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff
}

.modaal-gallery-label:focus {
  outline: none
}

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: 100%;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out
}

.modaal-gallery-control.is_hidden {
  opacity: 0;
  cursor: default
}

.modaal-gallery-control:focus,
.modaal-gallery-control:hover {
  outline: none;
  background: #fff
}

.modaal-gallery-control:focus:before,
.modaal-gallery-control:focus:after,
.modaal-gallery-control:hover:before,
.modaal-gallery-control:hover:after {
  background: #afb7bc
}

.modaal-gallery-control span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden
}

.modaal-gallery-control:before,
.modaal-gallery-control:after {
  display: block;
  content: " ";
  position: absolute;
  top: 16px;
  left: 25px;
  width: 4px;
  height: 18px;
  border-radius: 4px;
  background: #fff;
  -webkit-transition: background .2s ease-in-out;
  transition: background .2s ease-in-out
}

.modaal-gallery-control:before {
  margin: -5px 0 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.modaal-gallery-control:after {
  margin: 5px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px
}

.modaal-gallery-next-outer {
  right: 45px
}

.modaal-gallery-prev:before,
.modaal-gallery-prev:after {
  left: 22px
}

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px
}

.modaal-gallery-prev-outer {
  left: 45px
}

.modaal-video-wrap {
  margin: auto 50px;
  position: relative
}

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto
}

.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%
}

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block
}

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px
  }
}

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px
  }

  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    -webkit-transform: none;
    transform: none;
    background: rgba(0, 0, 0, 0.7)
  }

  .modaal-gallery-control:before,
  .modaal-gallery-control:after {
    background: #fff
  }

  .modaal-gallery-next {
    left: auto;
    right: 20px
  }

  .modaal-gallery-prev {
    left: 20px;
    right: auto
  }
}

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important
  }
}

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important
  }
}

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px
  }

  .modaal-instagram iframe {
    width: 600px !important
  }
}

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important
  }

  .modaal-video-container {
    max-width: 900px;
    max-height: 510px
  }
}

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important
  }
}

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none
  }
}

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  -webkit-transform: scale(0.25);
  transform: scale(0.25)
}

@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5)
  }

  100% {
    opacity: .1;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5)
  }

  100% {
    opacity: .1;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

.modaal-loading-spinner>div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute
}

.modaal-loading-spinner>div>div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff
}

.modaal-loading-spinner>div:nth-of-type(1)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s
}

.modaal-loading-spinner>div:nth-of-type(2)>div,
.modaal-loading-spinner>div:nth-of-type(3)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite
}

.modaal-loading-spinner>div:nth-of-type(1) {
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(2)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .12s;
  animation-delay: .12s
}

.modaal-loading-spinner>div:nth-of-type(2) {
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(3)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .25s;
  animation-delay: .25s
}

.modaal-loading-spinner>div:nth-of-type(4)>div,
.modaal-loading-spinner>div:nth-of-type(5)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite
}

.modaal-loading-spinner>div:nth-of-type(3) {
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(4)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .37s;
  animation-delay: .37s
}

.modaal-loading-spinner>div:nth-of-type(4) {
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(5)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .5s;
  animation-delay: .5s
}

.modaal-loading-spinner>div:nth-of-type(6)>div,
.modaal-loading-spinner>div:nth-of-type(7)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite
}

.modaal-loading-spinner>div:nth-of-type(5) {
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(6)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .62s;
  animation-delay: .62s
}

.modaal-loading-spinner>div:nth-of-type(6) {
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(7)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .75s;
  animation-delay: .75s
}

.modaal-loading-spinner>div:nth-of-type(7) {
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0)
}

.modaal-loading-spinner>div:nth-of-type(8)>div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .87s;
  animation-delay: .87s
}

.modaal-loading-spinner>div:nth-of-type(8) {
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0)
}

html {
  font-size: 10px;
  background: #000
}

@media only screen and (min-width: 1500px) {
  html {
    font-size: 12.5px
  }
}

@media only screen and (max-width: 768px) {
  html {
    font-size: 20px
  }
}

@media only screen and (max-width: 639px) {
  html {
    font-size: 10px
  }
}

body {
  -ms-scroll-chaining: none;
  overscroll-behavior: none;
  position: relative;
  z-index: 1;
  background: #ffffff;
  color: #333;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 1.4rem;
  line-height: 1.86;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-feature-settings: 'palt'1;
  font-feature-settings: 'palt'1
}

@-webkit-keyframes bg-animation {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes bg-animation {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

.sticky:before,
.sticky:after {
  content: '';
  display: table
}

::-moz-selection {
  background: #333;
  color: #ffffff
}

::selection {
  background: #333;
  color: #ffffff
}

a {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: color, border-color, background;
  transition-property: color, border-color, background;
  color: #333;
  text-decoration: underline
}

html.notouch a:hover {
  text-decoration: none
}

html.notouch a[href^="tel:"] {
  text-decoration: none
}

a.blank {
  text-decoration: none
}

a.blank:after {
  content: '\eaf8';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-left: 1rem;
  font-size: 2rem;
  vertical-align: middle;
  position: relative;
  top: -0.2rem;

}

a.blank.white:after {
  color: #ffffff
}

@media only screen and (max-width: 768px) {
  [data-sp-boxlink] {
    cursor: pointer
  }
}

.pc-hidden {
  display: none
}

@media only screen and (max-width: 768px) {
  .pc-hidden {
    display: block
  }

  br.pc-hidden {
    display: inline-block
  }

  .sp-hidden {
    display: none
  }
}

.inlineblock {
  display: inline-block
}

.attention {
  color: #333
}

.url-text {
  word-wrap: break-word
}

.visible-obj {
  -webkit-transition: opacity .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  transition: opacity .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  opacity: 0
}

.is-show .visible-obj {
  opacity: 1
}

.parallax {
  overflow: hidden
}

html.notouch .parallax__obj {
  -webkit-transform: translateY(-7.5rem);
  transform: translateY(-7.5rem)
}

@media only screen and (max-width: 768px) {
  html.notouch .parallax__obj {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@-webkit-keyframes mymove {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg)
  }
}

@keyframes mymove {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg)
  }
}



.pointer {
  -webkit-transform: translate(-10px, -10px);
  transform: translate(-10px, -10px);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  pointer-events: none;
  mix-blend-mode: exclusion
}

.pointer.is-hidden {
  visibility: hidden
}

.pointer.foot {
  z-index: 0;
  opacity: 0;
  -webkit-transition: all .4s linear 0.2s;
  transition: all .4s linear 0.2s;
  -webkit-transition-property: opacity;
  transition-property: opacity
}

.pointer.foot.is-show {
  opacity: 1;
  visibility: visible
}

.pointer .pointer__cursor {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: top, left, width, height;
  transition-property: top, left, width, height;
  position: absolute;
  top: -5px;
  left: -5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ffffff
}

.pointer .pointer__cursor.is-mouseon {
  top: -20px;
  left: -20px;
  width: 40px;
  height: 40px
}

.pointer .pointer__cursor.is-mouseon_icon {
  opacity: 0.25
}

.pointer .pointer__cursor.is-mouseon_circle {
  top: -25px;
  left: -25px;
  width: 50px;
  height: 50px;
  background: #333 !important;
  opacity: 1 !important;
  color: #ffffff;
  font-family: "heebo", sans-serif;
  font-size: 12px;
  line-height: 1;
  text-align: center
}

.pointer .pointer__cursor.is-mouseon_circle .txt {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%
}

.pointer .pointer__cursor.is-mouseon_big {
  top: -50px;
  left: -50px;
  width: 100px;
  height: 100px;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  text-align: center
}

.pointer .pointer__cursor.is-mouseon_big .txt {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  white-space: nowrap
}

.pointer .pointer__cursor.is-mouseon_white {
  top: -35px;
  left: -35px;
  width: 70px;
  height: 70px;
  background: #ffffff !important;
  opacity: 0.8 !important;
  color: #333;
  font-family: "heebo", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  text-align: center
}

.pointer .pointer__cursor.is-mouseon_white .txt {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%
}

.pointer .pointer__cursor.is-mouseon_drag {
  top: -35px;
  left: -35px;
  width: 70px;
  height: 70px;
  background: rgba(255, 255, 255, 0.8) !important;
  opacity: 1 !important
}

.pointer .pointer__cursor.is-mouseon_drag .left,
.pointer .pointer__cursor.is-mouseon_drag .right {
  display: block;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  margin-top: 0.1rem;
  font-size: 1.2rem;
  line-height: 1
}

.pointer .pointer__cursor.is-mouseon_drag .left {
  left: 1.8rem
}

.pointer .pointer__cursor.is-mouseon_drag .left:before {
  content: '\e107';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.pointer .pointer__cursor.is-mouseon_drag .right {
  right: 1rem
}

.pointer .pointer__cursor.is-mouseon_drag .right:before {
  content: '\e105';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.pointer .pointer__cursor.is-mouseon_video {
  top: -50px;
  left: -50px;
  width: 100px;
  height: 100px;
  background: rgba(255, 255, 255, 0.25) !important;
  opacity: 1 !important;
  text-align: center
}

.pointer .pointer__cursor.is-mouseon_video .arw {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%
}

.pointer .pointer__cursor.is-mouseon_video .arw:before {
  content: '\e904';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #ffffff
}

.pointer .pointer__cursor.is-mouseon_video .spin {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -6.5rem;
  margin-top: -6.5rem;
  width: 13rem;
  height: 13rem;
  background: url("../imgs/common/view-video_txt.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  -webkit-animation: spin 10s linear infinite;
  animation: spin 10s linear infinite
}

.pointer .pointer__cursor.is-mouseon_close {
  top: -50px;
  left: -50px;
  width: 100px;
  height: 100px;
  background: rgba(255, 255, 255, 0.25) !important;
  opacity: 1 !important;
  text-align: center
}

.pointer .pointer__cursor.is-mouseon_close .close:before,
.pointer .pointer__cursor.is-mouseon_close .close:after {
  content: "";
  width: 4rem;
  height: 1px;
  background: #ffffff;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -2rem
}

.pointer .pointer__cursor.is-mouseon_close .close:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.pointer .pointer__cursor.is-mouseon_close .close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.pointer .pointer__cursor.is-mouseon_learnmore {
  top: -50px;
  left: -50px;
  width: 100px;
  height: 100px;
  background: rgba(255, 255, 255, 0.25) !important;
  opacity: 1 !important;
  color: #ffffff;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  text-align: center
}

.pointer .pointer__cursor.is-mouseon_learnmore .txt {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  white-space: nowrap
}

.pointer .pointer__cursor.is-mouseon_learnmore .spin {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -6.5rem;
  margin-top: -6.5rem;
  width: 13rem;
  height: 13rem;
  background: url("../imgs/common/lerne-more_txt.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  -webkit-animation: spin 10s linear infinite;
  animation: spin 10s linear infinite
}

.pointer .pointer__cursor.is-mouseon_footnav {
  top: -50px;
  left: -75px;
  width: 150px;
  height: 100px;
  border-radius: 0;
  background: no-repeat center center;
  background-size: cover
}

.pointer .pointer__cursor.is-mouseon_footnav:before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5)
}

.pointer .pointer__cursor.is-mouseon_footnav.service {
  background-image: url("../imgs/services/common/foot_nav_service_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.youtube {
  background-image: url("../imgs/services/common/foot_nav_youtube_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.sns {
  background-image: url("../imgs/services/common/foot_nav_sns_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.live {
  background-image: url("../imgs/services/common/foot_nav_live_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.company {
  background-image: url("../imgs/company/common/foot_nav_company_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.profile {
  background-image: url("../imgs/company/common/foot_nav_profile_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.history {
  padding-top: 0;
  background-image: url("../imgs/company/common/foot_nav_history_s.jpg")
}

.pointer .pointer__cursor.is-mouseon_footnav.presskit {
  background-image: url("../imgs/company/common/foot_nav_presskit_s.jpg")
}

.pointer .pointer__cursor.is-hidden {
  top: 0;
  left: 0;
  width: 0;
  height: 0
}

.pointer .pointer__cursor.is-mousedown {
  top: -30px;
  left: -30px;
  width: 60px;
  height: 60px
}

html.isMS .pointer .pointer__cursor {
  background: #000000;
  opacity: 0.25
}

html.isMS .pointer .pointer__cursor.is-mouseon_footnav {
  top: -20px;
  left: -20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #000000
}

html.isMS .pointer .pointer__cursor.is-mouseon_footnav:before {
  display: none
}

.pointer.no-blend {
  mix-blend-mode: normal
}

html:not(.notouch) .pointer {
  display: none
}

html.is-loading .pointer .pointer__cursor {
  top: -30px;
  left: -30px;
  width: 60px;
  height: 60px;
  background: none;
  -webkit-box-shadow: 0px 1px 0px #ffffff;
  box-shadow: 0px 1px 0px #ffffff;
  background: transparent;
  -webkit-animation: mymove .5s linear infinite;
  animation: mymove .5s linear infinite
}

@media only screen and (max-width: 1023px) {
  .pointer {
    display: none
  }
}

.c-texteffect {
  opacity: 0
}

.c-texteffect__text {
  overflow: hidden;
  display: inline-block
}

.c-texteffect__char {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: transform, opacity, filter;
  transition-property: transform, opacity, filter, -webkit-transform, -webkit-filter;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  display: inline-block;
  opacity: 0
}

.c-texteffect.is-built {
  opacity: 1
}

.c-texteffect.is-visible .c-texteffect__char {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

@media only screen and (max-width: 1023px) {
  .c-texteffect[data-texteffect-scroll] {
    opacity: 1
  }

  .c-texteffect[data-texteffect-scroll] .c-texteffect__text {
    display: inline
  }

  .c-texteffect[data-texteffect-scroll] .c-texteffect__char {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    display: inline;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0)
  }
}

@-webkit-keyframes linelink {
  0% {
    background-position: right bottom;
    background-size: 100% 1px
  }

  50% {
    background-position: right bottom;
    background-size: 0 1px
  }

  51% {
    background-position: left bottom;
    background-size: 0 1px
  }

  100% {
    background-position: left bottom;
    background-size: 100% 1px
  }
}

@keyframes linelink {
  0% {
    background-position: right bottom;
    background-size: 100% 1px
  }

  50% {
    background-position: right bottom;
    background-size: 0 1px
  }

  51% {
    background-position: left bottom;
    background-size: 0 1px
  }

  100% {
    background-position: left bottom;
    background-size: 100% 1px
  }
}

.c-linelink {
  display: inline-block;
  color: #333;
  line-height: 1.5;
  text-decoration: none
}

.c-linelink__txt {
  will-change: background-size;
  background: url("../imgs/common/line.png") no-repeat left bottom;
  background-size: 100% 1px
}

.c-linelink__txt.white {
  background-image: url("../imgs/common/line-white.png")
}

.c-linelink__txt.gray {
  background-image: url("../imgs/common/line-gray.png")
}

html.ie11 .c-linelink__txt {
  background: none !important;
  text-decoration: underline
}

html.notouch .c-linelink:hover .c-linelink__txt,
html.notouch a:hover .c-linelink .c-linelink__txt {
  -webkit-animation: linelink .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  animation: linelink .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s
}

html.ie11.notouch .c-linelink:hover .c-linelink__txt,
html.ie11.notouch a:hover .c-linelink .c-linelink__txt {
  -webkit-animation: none;
  animation: none;
  text-decoration: none
}

.c-linelink--hidden .c-linelink__txt {
  -webkit-transition: background-size .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: background-size .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  background-position: right bottom;
  background-size: 0 1px
}

html.ie11 .c-linelink--hidden .c-linelink__txt {
  text-decoration: none
}

html.notouch .c-linelink--hidden:hover .c-linelink__txt,
html.notouch a:hover .c-linelink--hidden .c-linelink__txt {
  -webkit-animation: none;
  animation: none;
  background-position: left bottom;
  background-size: 100% 1px
}

html.ie11.notouch .c-linelink--hidden:hover .c-linelink__txt,
html.ie11.notouch a:hover .c-linelink--hidden .c-linelink__txt {
  -webkit-transition: none;
  transition: none;
  text-decoration: underline
}

@media only screen and (max-width: 768px) {
  .c-linelink__txt {
    text-decoration: underline;
    background: none !important
  }

  .c-linelink--hidden .c-linelink__txt {
    text-decoration: none
  }
}

@-webkit-keyframes fv-scroll-dot {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }

  75% {
    opacity: 0
  }

  100% {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    opacity: 0
  }
}

@keyframes fv-scroll-dot {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }

  75% {
    opacity: 0
  }

  100% {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    opacity: 0
  }
}

.globalHeader {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: height, background-color;
  transition-property: height, background-color;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 12rem;
  mix-blend-mode: exclusion;
  pointer-events: none
}

.globalHeader__logo {
  position: relative;
  z-index: 3;
  float: left;
  height: 12rem
}

/*ロングロゴ*/
.globalHeader__logo a {
  display: block;
  overflow: hidden;
  text-indent: -5260px;
  -webkit-transition-property: width, height;
  transition-property: width, height;
  position: relative;
  /*left: 5rem;*/
  left: 9rem;
 /* width: 4.4rem;*/
  width: 26rem;
  height: 100%;
  pointer-events: auto
}

/*ロングロゴ*/
.globalHeader__logo a:before {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: top, opacity, -webkit-transform;
  transition-property: top, opacity, -webkit-transform;
  transition-property: transform, top, opacity;
  transition-property: transform, top, opacity, -webkit-transform;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  will-change: transform;
  content: '';
  display: block;
  position: absolute;
  top: 1rem;
  left: 0;
  width: 25rem;
  height: 100%;
  background: url("../imgs/common/logo_white.svg") no-repeat center center;
  background-size: 25rem auto;
  opacity: 0
}

.globalHeader__menu {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  width: 16rem;
  height: 16rem;
  text-decoration: none
}

.globalHeader__menu:before {
  -webkit-transform: scale(1);
  transform: scale(1);
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  width: 8rem;
  height: 8rem;
  margin: -4rem 0 0 -4rem;
  border-radius: 50%;
  background: #333;
  opacity: 0
}

.globalHeader__menu .arrow-button {
  background: #000000;
  border-radius: 50%
}

.globalHeader__menu.is-move .arrow-button {
  -webkit-transform: scale(1.2);
  transform: scale(1.2)
}

.globalHeader__menu .menu__inner {
  width: 8rem;
  height: 8rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.globalHeader__menu .menu__inner .arrow-button {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.globalHeader__menu .menu__inner .arrow-button__border svg {
  stroke-width: 1px
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .globalHeader__menu .menu__inner .arrow-button__border svg {
    stroke-width: 0.5px
  }
}

.globalHeader__menu .menu__txt {
  color: #ffffff;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  border-radius: 1rem
}

.globalHeader__menu .menu__txt .text-ov {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: block;
  -webkit-transform: translateY(100%);
  transform: translateY(100%)
}

.globalHeader__menu .menu__txt .close {
  display: none
}

.globalHeader__menu .line-1,
.globalHeader__menu .line-2 {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: width, margin, background-color, -webkit-transform;
  transition-property: width, margin, background-color, -webkit-transform;
  transition-property: transform, width, margin, background-color;
  transition-property: transform, width, margin, background-color, -webkit-transform;
  display: block;
  position: absolute;
  top: 50%;
  right: 50%;
  width: 2.4rem;
  height: 0;
  border-top: 1px solid #333;
  margin-right: -1.2rem;
  margin-top: 0;
  opacity: 0;
  visibility: hidden
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {

  .globalHeader__menu .line-1,
  .globalHeader__menu .line-2 {
    border-width: 0.5px
  }
}

.globalHeader__nav {
  display: table;
  float: right;
  padding-right: 14.5rem;
  pointer-events: auto;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: padding, -webkit-transform;
  transition-property: padding, -webkit-transform;
  transition-property: transform, padding;
  transition-property: transform, padding, -webkit-transform;
  padding-top: 7.2rem
}

.globalHeader__nav .nav>li {
  float: left;
  margin: 0 1.5rem
}

.globalHeader__nav .nav>li>a {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  display: block;
  position: relative;
  padding: 0 0 3.8rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  color: #ffffff;
  font-size: 1.6rem;
  line-height: 1;
  text-decoration: none;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: color, padding, -webkit-transform;
  transition-property: color, padding, -webkit-transform;
  transition-property: transform, color, padding;
  transition-property: transform, color, padding, -webkit-transform
}

.globalHeader__nav .nav>li>a .text-ov {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: block;
  -webkit-transform: translateY(100%);
  transform: translateY(100%)
}

.globalHeader__nav .nav>li>a .total {
  position: absolute;
  right: -0.8rem;
  top: -1rem;
  font-size: 1rem;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: top, opacity, -webkit-transform;
  transition-property: top, opacity, -webkit-transform;
  transition-property: top, transform, opacity;
  transition-property: top, transform, opacity, -webkit-transform;
  opacity: 0
}

.globalHeader__nav .nav>li>a:before {
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: background-color, width, opacity, -webkit-transform;
  transition-property: background-color, width, opacity, -webkit-transform;
  transition-property: transform, background-color, width, opacity;
  transition-property: transform, background-color, width, opacity, -webkit-transform;
  content: '';
  display: block;
  position: absolute;
  bottom: 3.2rem;
  width: 0;
  right: 0;
  height: 1px;
  background: #ffffff;
  opacity: 0
}

.globalHeader__nav .nav>li>a:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -0.5rem;
  bottom: -0.1rem;
  border-right: 0.5rem solid transparent;
  border-bottom: 0.8rem solid #ffffff;
  border-left: 0.5rem solid transparent;
  opacity: 0
}

.globalHeader__nav .nav>li>a.label.is-visible .text-ov {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  -webkit-transform: translateY(0%);
  transform: translateY(0%)
}

.globalHeader__nav .nav>li>a.label.is-visible:before {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
  opacity: 1
}

.globalHeader__nav .nav>li>a.label.is-visible .total {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
  opacity: 1
}

.globalHeader__nav .nav>li.is-current>a:before {
  width: 100%
}

html.notouch .globalHeader__nav .nav>li>a:hover:before {
  left: 0;
  width: 100%
}

.globalHeader__nav .nav>li.is-open>a {
  color: #ffffff !important
}

.globalHeader__nav .nav>li.is-open>a:before {
  left: 0;
  width: 100%
}

.globalHeader__nav .nav>li.is-open>a:after {
  opacity: 1
}

.globalHeader__nav .nav>li .dropdownBg {
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: visibility, opacity;
  transition-property: visibility, opacity;
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.3);
  visibility: hidden;
  opacity: 0;
  pointer-events: none
}

.globalHeader__nav .nav>li .dropdown {
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: visibility, opacity, top;
  transition-property: visibility, opacity, top;
  visibility: hidden;
  position: absolute;
  top: 12.6rem;
  width: 100%;
  right: 0;
  left: 0;
  -webkit-box-sizing: border_color;
  box-sizing: border_color;
  opacity: 0;
  max-width: 100rem;
  margin: 0 auto;
  overflow: hidden;
  pointer-events: none;
  background: #ffffff
}

.globalHeader__nav .nav>li .dropdown .container {
  padding: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.globalHeader__nav .nav>li .dropdown__index {
  width: 26%
}

.globalHeader__nav .nav>li .dropdown__ttl {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 2.2rem;
  line-height: 1;
  margin-bottom: 2rem
}

.globalHeader__nav .nav>li .dropdown__txt {
  font-size: 1.2rem;
  margin-bottom: 2rem
}

.globalHeader__nav .nav>li .dropdown__btn .arrow-button {
  width: 4rem;
  height: 4rem
}

.globalHeader__nav .nav>li .dropdown__list {
  width: 39%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 5rem;
  border-left: rgba(0, 0, 0, 0.1) solid 1px
}

.globalHeader__nav .nav>li .dropdown__list .item+.item {
  margin-top: 2.8rem
}

.globalHeader__nav .nav>li .dropdown__list .item a {
  display: block;
  text-decoration: none
}

.globalHeader__nav .nav>li .dropdown__list .item__txt {
  font-family: "heebo", sans-serif;
  font-weight: 400;
  line-height: 1
}

.globalHeader__nav .nav>li .dropdown__img {
  width: 35%;
  height: 0;
  padding-bottom: 30%;
  background: #000;
  position: relative;
  opacity: 0
}

.globalHeader__nav .nav>li .dropdown__img a {
  position: absolute;
  width: 100%;
  height: 100%;
  text-decoration: none
}

.globalHeader__nav .nav>li .dropdown__img .img__bg {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

.globalHeader__nav .nav>li .dropdown__img .img__bg .bg {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
  -webkit-transition: all .4s linear 0s;
  transition: all .4s linear 0s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0
}

.globalHeader__nav .nav>li .dropdown__img .img__bg .bg img {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  opacity: 0
}

.globalHeader__nav .nav>li .dropdown__img .img__bg .bg.index {
  -webkit-transition: none;
  transition: none;
  z-index: 0;
  opacity: 1
}

.globalHeader__nav .nav>li .dropdown__img .img__bg .bg.is-on {
  -webkit-transition: opacity .4s linear 0s;
  transition: opacity .4s linear 0s;
  z-index: 2;
  opacity: 1
}

.globalHeader__nav .nav>li .dropdown__imglist {
  width: 74%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0
}

.globalHeader__nav .nav>li .dropdown__imglist .item {
  width: 33%
}

.globalHeader__nav .nav>li .dropdown__imglist .item img {
  width: 100%;
  height: auto
}

.globalHeader__nav .nav>li .dropdown__imglist .item .thumbnail {
  padding-bottom: 66%
}

.globalHeader__nav .nav>li .dropdown__imglist .item__img {
  margin-bottom: 1rem
}

.globalHeader__nav .nav>li .dropdown__imglist .item__txt {
  font-family: "heebo", sans-serif;
  font-weight: 400;
  line-height: 1
}

.globalHeader__drawerMenu {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: visibility, opacity;
  transition-property: visibility, opacity;
  visibility: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  background: #ffffff;
  color: #333;
  opacity: 0;
  pointer-events: auto
}

.globalHeader__drawerMenu .drawerMenu {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%
}

.globalHeader__drawerMenu .drawerMenu__logo {
  visibility: hidden
}

.globalHeader__drawerMenu .drawerMenu__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 33.33%;
  height: 100%;
  opacity: 0
}

.globalHeader__drawerMenu .drawerMenu__bg .bg {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0
}

.globalHeader__drawerMenu .drawerMenu__bg .bg img {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  opacity: 0
}

.globalHeader__drawerMenu .drawerMenu__bg .bg.is-current {
  -webkit-transition: none;
  transition: none;
  z-index: 0;
  opacity: 1
}

.globalHeader__drawerMenu .drawerMenu__bg .bg.is-on {
  opacity: 1
}

.globalHeader__drawerMenu .drawerMenu__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin-left: auto;
  width: 66.67%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.globalHeader__drawerMenu .drawerMenu__nav {
  /*width: 100%;*/
  width: 70%;
  padding-left: 10%;
  padding-right: 10%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.globalHeader__drawerMenu .drawerMenu__nav a {
  text-decoration: none;
  font-family: "heebo", sans-serif
}

.globalHeader__drawerMenu .drawerMenu__nav .block {
  width: 25%
}

.globalHeader__drawerMenu .drawerMenu__nav .block.block2 {
  width: 30%
}

.globalHeader__drawerMenu .drawerMenu__nav .block.block3 {
  width: 20%
}

.globalHeader__drawerMenu .drawerMenu__nav .item+.item {
  margin-top: 1.5rem
}

.globalHeader__drawerMenu .drawerMenu__nav .item .easing-up {
  overflow: hidden
}

.globalHeader__drawerMenu .drawerMenu__nav .item .easing-up__txt {
  display: block;
  -webkit-transform: translateY(200%);
  transform: translateY(200%)
}

.globalHeader__drawerMenu .drawerMenu__nav .item__label {
  font-family: "heebo", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1
}

.globalHeader__drawerMenu .drawerMenu__nav .item__children {
  margin-top: 1.5rem;
  margin-bottom: 3rem
}

.globalHeader__drawerMenu .drawerMenu__nav .item__children li a {
  font-size: 1.2rem;
  opacity: 0.4
}

.globalHeader__drawerMenu .drawerMenu .sns-list {
  position: absolute;
  top: 50%;
  right: 6.5rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.globalHeader__drawerMenu .drawerMenu .sns-list>li {
  display: block
}

.globalHeader__drawerMenu .drawerMenu .sns-list>li+li {
  margin-top: 0.5rem;
  padding-left: 0
}

.globalHeader__drawerMenu .drawerMenu .sns-list>li .icon:after {
  color: rgba(0, 0, 0, 0.1)
}

.globalHeader__drawerMenu .drawerMenu__foot {
  position: absolute;
  right: 8rem;
  bottom: 3rem;
  font-family: "heebo", sans-serif;
  font-size: 1rem;
  line-height: 1;
  opacity: 0.4
}

.globalHeader__drawerMenu .drawerMenu__copyright {
  display: inline-block;
  margin-right: 1rem
}

.globalHeader__drawerMenu .drawerMenu__privacy {
  display: inline-block;
  text-decoration: none
}

.globalHeader.is-visible .globalHeader__logo a:before {
  opacity: 1
}

.globalHeader.is-visible .globalHeader__menu {
  pointer-events: auto
}

.globalHeader.is-visible .globalHeader__menu:before {
  -webkit-animation: fv-scroll-dot 3s linear 0.5s normal;
  animation: fv-scroll-dot 3s linear 0.5s normal
}

.globalHeader.is-visible .globalHeader__menu .menu__txt .text-ov {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  -webkit-transform: translateY(0%);
  transform: translateY(0%)
}

.globalHeader.is-visible .globalHeader__menu .menu__inner .arrow-button {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  -webkit-transform: scale(1);
  transform: scale(1)
}

.globalHeader.is-scrolled .globalHeader__logo a:before {
  -webkit-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: translateY(-1rem) scale(0.57);
  transform: translateY(-1rem) scale(0.57)
}

.globalHeader.is-scrolled .globalHeader__menu {
  -webkit-transform: translateY(-2.5rem) scale(0.75);
  transform: translateY(-2.5rem) scale(0.75)
}

.globalHeader.is-scrolled .globalHeader__nav {
  padding-top: 5rem
}

.globalHeader.is-scrolled .globalHeader__nav .nav>li .dropdown {
  top: 10.4rem
}

html.isMS .globalHeader {
  mix-blend-mode: normal
}

html.isMS .globalHeader__logo a:before {
  background-image: url("../imgs/common/logo.svg")
}

html.isMS .globalHeader__menu .arrow-button {
  background: transparent
}

html.isMS .globalHeader__menu .menu__inner .arrow-button__border svg {
  stroke: #000000
}

html.isMS .globalHeader__menu .menu__txt {
  color: #333
}

html.isMS .globalHeader__nav .nav>li>a {
  color: #333
}

html.isMS .globalHeader__nav .nav>li.is-current>a:before {
  background: #333
}

html.isMS .globalHeader.is-white .globalHeader__logo a:before {
  background-image: url("../imgs/common/logo_white.svg")
}

html.isMS .globalHeader.is-white .globalHeader__menu .menu__inner .arrow-button__border svg {
  stroke: #ffffff
}

html.isMS .globalHeader.is-white .globalHeader__menu .menu__txt {
  color: #ffffff
}

html.isMS .globalHeader.is-white .globalHeader__nav .nav>li>a {
  color: #ffffff
}

html.isMS .globalHeader.is-white .globalHeader__nav .nav>li.is-current>a:before {
  background: #ffffff
}

html.nav-open #wrapper:after {
  visibility: visible;
  opacity: 1
}

html.nav-open .globalHeader {
  mix-blend-mode: normal
}

html.nav-open .globalHeader__menu .arrow-button {
  background: transparent;
  -webkit-transition: none;
  transition: none
}

html.nav-open .globalHeader__nav .nav>li:not(.is-open)>a,
html.nav-open .globalHeader__nav .nav>li.is-current:not(.is-open)>a {
  color: #999999 !important
}

html.nav-open .globalHeader__nav .nav>li:not(.is-open)>a:before,
html.nav-open .globalHeader__nav .nav>li.is-current:not(.is-open)>a:before {
  background-color: #999999 !important
}

html.nav-open .globalHeader__nav .nav>li.is-open .dropdown {
  visibility: visible;
  opacity: 1;
  background: #ffffff;
  pointer-events: auto
}

html.nav-open .globalHeader__nav .nav>li.is-open .dropdown__img {
  opacity: 1
}

html.nav-open .globalHeader__nav .nav>li.is-open .dropdown__imglist {
  opacity: 1
}

html.nav-open .globalHeader__nav .nav>li .dropdownBg {
  visibility: visible;
  opacity: 1
}

html.drawerMenu-open .globalHeader {
  mix-blend-mode: normal
}

html.drawerMenu-open .globalHeader__logo {
  opacity: 0
}

html.drawerMenu-open .globalHeader__menu .arrow-button {
  background: transparent;
  -webkit-transition: none;
  transition: none
}

html.drawerMenu-open .globalHeader__menu .menu__txt {
  opacity: 0;
  visibility: hidden
}

html.drawerMenu-open .globalHeader__menu .arrow-button__border svg {
  stroke: #ccc
}

html.drawerMenu-open .globalHeader__menu .line-1,
html.drawerMenu-open .globalHeader__menu .line-2 {
  opacity: 1;
  visibility: visible
}

html.drawerMenu-open .globalHeader__menu .line-1 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

html.drawerMenu-open .globalHeader__menu .line-2 {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

html.drawerMenu-open .globalHeader__nav .nav li.is-current a:before {
  background: none
}

html.drawerMenu-open .globalHeader__drawerMenu {
  visibility: visible;
  opacity: 1
}

html.drawerMenu-open .globalHeader .drawerMenu__bg {
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  opacity: 1
}

html.drawerMenu-open .globalHeader .drawerMenu__nav .item .easing-up__txt {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

html.drawerMenu-open .globalHeader .drawerMenu__nav .item__children .easing-up__txt {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s
}

@media only screen and (max-width: 768px) {
  .globalHeader {
    height: 11rem
  }

  .globalHeader__logo a {
    left: -0.5rem;
    width: 30rem;
    height: 8rem
  }

  .globalHeader__logo a:before {
    top: 0.3rem;
    width: 28rem;
    background-size: 20rem auto
  }

  .globalHeader__logo.is-hidden {
    opacity: 0
  }

  .globalHeader__menu {
    width: 8rem;
    height: 8rem
  }

  .globalHeader__menu:before {
    width: 5rem;
    height: 5rem;
    margin: -2.5rem 0 0 -2.5rem
  }

  .globalHeader__menu .line-1,
  .globalHeader__menu .line-2 {
    -webkit-transition: none;
    transition: none
  }

  .globalHeader__menu .menu__inner {
    width: 5rem;
    height: 5rem
  }

  .globalHeader__menu .menu__inner .arrow-button {
    background: #ffff;
  }


  .globalHeader__menu .menu__txt {
    font-size: 0.9rem;
    color: #000000;
    line-height: 1;
  }

  .globalHeader__nav {
    display: none
  }

  .globalHeader__drawerMenu {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 2.5rem 4rem 0;
    background: #f7f7f7
  }

  .globalHeader .drawerMenu__logo {
    visibility: visible;
    margin-bottom: 5rem
  }

  .globalHeader .drawerMenu__logo a {
    display: block;
    overflow: hidden;
    text-indent: -5260px;
    width: 5rem;
    height: 7rem;
    background: url("../imgs/common/logo.svg") no-repeat center center;
    background-size: contain;
    margin-left: 2rem
  }

  .globalHeader .drawerMenu__bg {
    display: none
  }

  .globalHeader .drawerMenu__inner {
    display: block;
    height: auto;
    margin-left: 0;
    width: auto;
    padding: 2.5rem 0;
    border-top: 1px solid #dedede;
    border-bottom: 1px solid #dedede;
    margin-bottom: 4rem
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .globalHeader .drawerMenu__inner {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .globalHeader .drawerMenu__nav {
    width: auto;
    padding-left: 0;
    padding-right: 0;
    display: block;
    counter-reset: header-sitemap-number 0
  }

  .globalHeader .drawerMenu__nav .block {
    width: auto
  }

  .globalHeader .drawerMenu__nav .block.block2 {
    width: auto
  }

  .globalHeader .drawerMenu__nav .block.block3 {
    width: auto
  }

  .globalHeader .drawerMenu__nav .item {
    counter-increment: header-sitemap-number 1
  }

  .globalHeader .drawerMenu__nav .item.top {
    display: none
  }

  .globalHeader .drawerMenu__nav .item+.item {
    margin-top: 0
  }

  .globalHeader .drawerMenu__nav .item .easing-up__txt {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  .globalHeader .drawerMenu__nav .item__label {
    font-size: 1.5rem;
    line-height: 1;
    padding-left: 3rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    position: relative;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
  }

  .globalHeader .drawerMenu__nav .item__label .icon {
    top: 50%;
    margin-top: -1.6rem;
    background: #ededed
  }

  .globalHeader .drawerMenu__nav .item__label .icon:before,
  .globalHeader .drawerMenu__nav .item__label .icon:after {
    background: #999999
  }

  .globalHeader .drawerMenu__nav .item__label:before {
    content: counter(header-sitemap-number, decimal-leading-zero);
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -0.5rem;
    left: 0;
    color: #cccccc;
    font-size: 0.9rem;
    font-weight: 700
  }

  .globalHeader .drawerMenu__nav .item__children {
    margin-top: -0.2rem;
    margin-bottom: 1rem;
    margin-left: 3rem
  }

  .globalHeader .drawerMenu__nav .item__children li+li {
    margin-top: 0.7rem
  }

  .globalHeader .drawerMenu__nav .item__children li a {
    font-size: 1.2rem;
    opacity: 1;
    color: #cccccc
  }

  .globalHeader .drawerMenu .sns-list {
    position: static;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    margin-bottom: 4rem;
    margin-top: 2rem;
    

  }

  .globalHeader .drawerMenu .sns-list>li {
    display: inline-block
  }

  .globalHeader .drawerMenu .sns-list>li+li {
    margin-top: 0;
    padding-left: 1rem
  }

  .globalHeader .drawerMenu .sns-list>li a {
    width: 3rem;
    height: 3rem
  }

  .globalHeader .drawerMenu .sns-list>li .icon:after {
    font-size: 3rem;
    color: #333
  }

  .globalHeader .drawerMenu__foot {
    position: static;
    font-size: 1.2rem;
    padding-bottom: 10rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
  }

  .globalHeader .drawerMenu__copyright {
    display: block;
    margin-right: 0
  }

  .globalHeader .drawerMenu__privacy {
    display: block;
    text-decoration: none;
    margin-bottom: 1rem
  }

  .globalHeader.is-scrolled .globalHeader__logo a:before {
    -webkit-transform: translateY(0) scale(0.75);
    transform: translateY(0) scale(0.75)
  }

  .globalHeader.is-scrolled .globalHeader__menu {
    -webkit-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1)
  }

  .globalHeader.is-scrolled .globalHeader__nav .nav>li>a {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  html.drawerMenu-open .globalHeader {
    z-index: 12
  }

  html.drawerMenu-open .globalHeader__logo {
    opacity: 0;
    pointer-events: none
  }

  html.drawerMenu-open .globalHeader__menu .menu__txt {
    opacity: 1;
    visibility: visible;
    z-index: 1;
    font-size: 0.7rem;
    color: #333;
    background: #f7f7f7;
    padding: 0.5rem
  }

  html.drawerMenu-open .globalHeader__menu .menu__txt .open {
    display: none
  }

  html.drawerMenu-open .globalHeader__menu .menu__txt .close {
    display: block
  }

  html.drawerMenu-open .globalHeader__menu .arrow-button__border svg {
    stroke: none
  }

  html.drawerMenu-open .globalHeader__menu .line-1,
  html.drawerMenu-open .globalHeader__menu .line-2 {
    opacity: 1;
    visibility: visible;
    width: 4rem;
    margin-right: -2rem
  }
}

.globalFooter {
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: fixed;
  bottom: 0;
  z-index: -1;
  padding: 10rem 0;
  background: #0d0d0d
}

.globalFooter__sitemap {
  font-family: "heebo", sans-serif;
  float: right
}

.globalFooter__sitemap .sitemap {
  display: table
}

.globalFooter__sitemap .sitemap>li {
  display: table-cell
}

.globalFooter__sitemap .sitemap>li>a {
  font-size: 1.6rem;
  font-weight: 500
}

.globalFooter__sitemap .sitemap__whoweare {
  width: 17rem
}

.globalFooter__sitemap .sitemap__service {
  width: 21rem
}

.globalFooter__sitemap .sitemap__news {
  width: 13rem
}

.globalFooter__sitemap .sitemap__recruit {
  width: 14.5rem
}

.globalFooter__sitemap .sitemap__company {
  width: 15rem
}

.globalFooter__sitemap .sitemap__contact {
  width: 12rem
}

.globalFooter__sitemap .sitemap a {
  color: #ffffff;
  text-decoration: none
}

.globalFooter__sitemap .sitemap__children {
  margin-top: 2rem;
  font-size: 1.2rem
}

.globalFooter__sitemap .sitemap__children>li a {
  color: rgba(255, 255, 255, 0.4)
}

.globalFooter__sitemap .sitemap__children>li+li {
  margin-top: 1.5rem
}

.globalFooter__logo {
  position: absolute;
  top: 6rem
}

.globalFooter__logo a {
  display: block;
  overflow: hidden;
  text-indent: -5260px;
  width: 9.3rem;
  height: 9rem;
  background: url("../imgs/common/logo_white2.svg") no-repeat center center;
  background-size: contain
}

.globalFooter .sns-list {
  position: absolute;
  right: 4rem;
  bottom: 0
}

.globalFooter .sns-list>li .icon:after {
  color: rgba(255, 255, 255, 0.2)
}

.globalFooter__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  clear: both;
  padding-top: 12rem;
  color: rgba(255, 255, 255, 0.2);
  justify-content: flex-end;
}

.globalFooter__links {
  font-family: "heebo", sans-serif;
  font-size: 1rem;
  margin-left: 2rem
}

.globalFooter__links a {
  color: rgba(255, 255, 255, 0.2);
  text-decoration: none
}

.globalFooter__copyright {
  font-family: "heebo", sans-serif;
  font-size: 1rem
}

@media only screen and (max-width: 768px) {
  .globalFooter {
    position: relative;
    z-index: 1;
    padding: 10rem 3rem 10rem
  }

  .globalFooter__sitemap {
    float: none;
    margin-bottom: 4.4rem;
    padding-bottom: 4.4rem;
    padding-top: 4.4rem;
    border-top: rgba(255, 255, 255, 0.1) solid 1px;
    border-bottom: rgba(255, 255, 255, 0.1) solid 1px
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .globalFooter__sitemap {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .globalFooter__sitemap .sitemap {
    counter-reset: footer-sitemap-number 0;
    font-size: 1.5rem;
    display: block
  }

  .globalFooter__sitemap .sitemap>li {
    width: auto;
    counter-increment: footer-sitemap-number 1;
    zoom: 1;
    display: block
  }

  .globalFooter__sitemap .sitemap>li:after {
    content: '';
    display: block;
    clear: both;
    height: 0
  }

  .globalFooter__sitemap .sitemap>li:after {
    display: block !important
  }

  .globalFooter__sitemap .sitemap>li+li {
    margin-top: 3rem;
    padding-left: 0
  }

  .globalFooter__sitemap .sitemap>li>a {
    display: block;
    position: relative;
    float: none;
    padding-left: 3rem
  }

  .globalFooter__sitemap .sitemap>li>a .icon {
    top: 0.5rem
  }

  .globalFooter__sitemap .sitemap>li>a:before {
    font-family: "heebo", sans-serif;
    content: counter(footer-sitemap-number, decimal-leading-zero);
    display: block;
    position: absolute;
    top: 0.5rem;
    left: 0;
    color: #666666;
    font-size: 0.9rem;
    font-weight: 700
  }

  .globalFooter__sitemap .sitemap__whoweare {
    width: auto
  }

  .globalFooter__sitemap .sitemap__service {
    width: auto
  }

  .globalFooter__sitemap .sitemap__news {
    width: auto
  }

  .globalFooter__sitemap .sitemap__recruit {
    width: auto
  }

  .globalFooter__sitemap .sitemap__company {
    width: auto
  }

  .globalFooter__sitemap .sitemap__contact {
    width: auto
  }

  .globalFooter__sitemap .sitemap__children {
    margin-left: 3rem;
    padding-top: 0.3rem
  }

  .globalFooter__logo {
    position: static;
    margin-bottom: 5rem
  }

  .globalFooter__logo a {
    width: 8rem;
    height: 9rem
  }

  .globalFooter .sns-list {
    position: static
  }

  .globalFooter .sns-list li+li {
    padding-left: 1rem
  }

  .globalFooter .sns-list>li a {
    width: 3rem;
    height: 3rem
  }

  .globalFooter .sns-list>li .icon:after {
    color: rgba(255, 255, 255, 0.1);
    font-size: 3rem
  }

  .globalFooter__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    padding-top: 5rem
  }

  .globalFooter__links {
    font-size: 1.2rem;
    margin-left: 0
  }

  .globalFooter__copyright {
    font-size: 1.2rem
  }
}

#wrapper {
  min-width: 1100px;
  background: #ffffff
}

@media only screen and (max-width: 768px) {
  #wrapper {
    min-width: 0
  }
}

.container {
  zoom: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  max-width: 128rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 4rem;
  padding-left: 4rem
}

.container:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

@media only screen and (max-width: 768px) {
  .container {
    width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem
  }
}

.container-s {
  zoom: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  max-width: 128rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 4rem;
  padding-left: 4rem;
  max-width: 88rem
}

.container-s:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

@media only screen and (max-width: 768px) {
  .container-s {
    width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem
  }
}

.router {
  position: relative;
  background: #f7f7f7
}

.router img {
  width: 100%;
  height: auto
}

@media only screen and (max-width: 768px) {
  .router {
    margin-bottom: 0 !important
  }
}

.content {
  position: relative;
  z-index: 0;
  padding: 30rem 0 13rem;
  background: #f7f7f7
}

.content__head {
  position: relative;
  overflow: hidden
}

.has-mainImage .content__ttl:before,
.has-mainImage .content__ttl:after {
  display: none
}

.content__mainImage {
  position: relative;
  z-index: 1
}

.content__mainImage .imgArea {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: width .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: width .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 100%;
  overflow: hidden;
  position: relative
}

.content__mainImage .imgAreaBg {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 0;
  height: 100%;
  left: 0
}

.content__mainImage .imgAreaBg.bg1 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  background: #dfdfdb
}

.content__mainImage .imgAreaBg.bg2 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  background: #302f2e
}

.content__mainImage .imgArea .img,
.content__mainImage .imgArea .video {
  position: relative;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s
}

.content__mainImage.is-visible .imgAreaBg {
  width: 100%
}

.content__mainImage.is-visible .imgArea .img,
.content__mainImage.is-visible .imgArea .video {
  opacity: 1
}

.content__label {
  font-family: "heebo", sans-serif;
  font-size: 1rem;
  position: absolute;
  z-index: 3;
  top: 15rem;
  left: calc(50% + 56rem);
  white-space: nowrap;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  opacity: 0
}

.content__label.is-visible {
  opacity: 0.2
}

.content__txtBg {
  overflow: hidden;
  position: absolute;
  z-index: 2;
  top:26rem;
  width: 100%;
  display: block;
  mix-blend-mode: overlay
}

html.isMS .content__txtBg {
  mix-blend-mode: normal
}

html.isMS .content__txtBg .txt {
  color: rgba(0, 0, 0, 0.05)
}

.content__txtBg .txt {
  font-size: 25rem;
  line-height: 0.9;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  white-space: nowrap;
  color: #000;
  margin-left: calc((100% - 114rem) / 2 + 4rem);
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  transition: all 1.1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 0
}


/*.content__txtBg .txt {
    font-size: 30rem;
    line-height: 0.9;
    font-family: "heebo", sans-serif;
    font-weight: 500;
    white-space: nowrap;
    color: #2af1c0;
    margin-left: calc((100% - 114rem) / 2 + 4rem);
    transition: opacity 2s cubic-bezier(0.165, 0.84, 0.44, 1) 1s;
    transform: none;
    transform: translateY(60%);
    opacity: 0;
}
*/


.content__txtBg.is-visible .txt {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.content__body {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  position: relative;
  z-index: 1;
  opacity: 0
}

.content__body.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.content__body.already-visible {
  -webkit-transition: none;
  transition: none;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.content__ttl {
  position: relative;
  z-index: 3
}

.content__ttl:before,
.content__ttl:after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
 /* bottom: -10px;*/
}

.content__ttl:before {
  width: 100%;
  background: #e5e5e5
}

.content__ttl:after {
  width: 0;
  background: #333
}

.content__ttlWrap {
  zoom: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  max-width: 128rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 4rem;
  padding-left: 4rem;
  position: relative;
  z-index: 2;
  max-width: 114rem;
  padding-bottom: 9rem;
  line-height: 1
}

.content__ttlWrap:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

@media only screen and (max-width: 768px) {
  .content__ttlWrap {
    width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem
  }
}

.content__ttl .ttl .en {
  font-size: 4rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  display: block;
  
}

.content__ttl .ttl .jp {
  font-size: 1.2rem;
  display: block;
  margin-bottom: 1rem
}

.content__ttl .ttl .cat {
  position: relative;
  top: 0.1rem;
  font-size: 1.2rem;
  display: block;
  font-family: "heebo", sans-serif;
  padding-left: 1rem;
  margin-left: 1rem;
  border-left: 1px solid #e5e5e5;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.content__ttl .ttl .cat.is-hidden {
  -webkit-transform: translateY(105%);
  transform: translateY(105%)
}

.content__ttl .ttl .cat__name {
  display: block;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.content__ttl .ttl .cat__name.is-hidden {
  -webkit-transform: translateY(105%);
  transform: translateY(105%)
}

.content__ttl .ttl__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.content__ttl .b-texteffect {
  display: inline-block;
  overflow: hidden
}

html.ie11 .content__ttl .b-texteffect {
  padding-top: 0.5rem
}

.content__ttl .b-texteffect__text {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateY(105%);
  transform: translateY(105%);
  display: inline-block
}

.content__ttl .b-texteffect.is-visible .b-texteffect__text {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.content__ttl.lowerpage-ttl {
  padding-top: 0
}

.content__ttl.lowerpage-ttl .ttl {
  margin-left: 0;
  font-size: 3.6rem;
  line-height: 1.34;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  padding-left: 4rem;
  position: relative
}

.content__ttl.lowerpage-ttl .ttl:before {
  content: "";
  position: absolute;
  left: 0;
  top: 1rem;
  width: 1px;
  background: #333;
  height: 0;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  -webkit-transition-property: height;
  transition-property: height
}

.content__ttl.lowerpage-ttl .meta .label {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 3rem;
  display: inline-block
}

.content__ttl.lowerpage-ttl .meta .label a {
  line-height: 1
}

.content__ttl.lowerpage-ttl .meta .label+.date {
  padding-left: 1.5rem;
  margin-left: 1.5rem;
  position: relative
}

.content__ttl.lowerpage-ttl .meta .label+.date:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  background: #cccccc;
  height: 0;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  -webkit-transition-property: height;
  transition-property: height
}

.content__ttl.lowerpage-ttl .meta .date {
  display: inline-block;
  color: rgba(51, 51, 51, 0.5);
  font-family: "heebo", sans-serif;
  font-weight: 500
}

.content__ttl.lowerpage-ttl .c-linelink__txt {
  -webkit-transition: background-size .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: background-size .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  background-position: right bottom;
  background-size: 0 1px
}

html.ie11 .content__ttl.lowerpage-ttl .c-linelink__txt {
  text-decoration: none
}

.content__ttl.lowerpage-ttl.is-visible .ttl:before {
  height: calc(100% - 1.2rem);
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s
}

.content__ttl.lowerpage-ttl.is-visible .meta .date:before {
  height: 100%;
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s
}

.content__ttl.lowerpage-ttl.is-visible .c-linelink__txt {
  -webkit-animation: none;
  animation: none;
  background-position: left bottom !important;
  background-size: 100% 1px !important;
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s
}

.content__ttl:not(.already-visible).is-visible:after {
  -webkit-animation: shooting 0.5s ease-in-out normal;
  animation: shooting 0.5s ease-in-out normal
}

.content__col2 {
  padding: 15rem 0 15rem;
  background: #f7f7f7
}

.content__col2 .col2__wrap {
  zoom: 1
}

html.edge .content__col2 .col2__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

html.edge .content__col2 .col2__wrap:after {
  display: none
}

.content__col2 .col2__wrap:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.content__col2 .col2__aside {
  position: -webkit-sticky;
  position: sticky;
  z-index: 2;
  top: 8rem;
  float: left;
  width: 20rem;
  margin-left: calc((100% - 128rem) / 2 + 4rem)
}

html.edge .content__col2 .col2__aside {
  float: none;
  height: 100%
}

@media only screen and (max-width: 1280px) {
  .content__col2 .col2__aside {
    margin-left: calc((100% - 128rem) / 2 + 8rem)
  }
}

@media only screen and (max-width: 1200px) {
  .content__col2 .col2__aside {
    margin-left: calc((100% - 128rem) / 2 + 13rem)
  }
}

.content__col2 .col2__aside .aside__nav {
  padding: 4rem 0;
  position: relative
}

.content__col2 .col2__aside .aside__nav .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 1px;
  left: 0;
  top: 0;
  background: #e6e6e6
}

.content__col2 .col2__aside .aside__nav .shooting-line.bottom {
  top: auto;
  bottom: 0
}

.content__col2 .col2__aside .aside__nav .shooting-line:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #333;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.content__col2 .col2__aside .aside__nav .item+.item {
  margin-top: 2.5rem
}

.content__col2 .col2__aside .aside__nav .item a {
  text-decoration: none;
  color: #999999;
  display: block
}

html.notouch .content__col2 .col2__aside .aside__nav .item a:hover {
  color: #333;
  font-weight: 700
}

.content__col2 .col2__aside .aside__nav .item a.is-current {
  color: #333;
  font-weight: 700
}

.content__col2 .col2__aside .aside__nav .item .inner {
  display: inline-block;
  padding-right: 3rem;
  position: relative
}

.content__col2 .col2__aside .aside__nav .item .inner span {
  display: block
}

.content__col2 .col2__aside .aside__nav .item .inner .icon {
  position: absolute;
  right: 0;
  top: 0rem;
  width: 1.8rem;
  height: 1.8rem;
  border: 1px solid #cbcbcb;
  border-radius: 2rem;
  background: #ffffff
}

.content__col2 .col2__aside .aside__nav .item .inner .icon:before {
  position: absolute;
  top: 0.5rem;
  left: 0rem;
  content: '\e106';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #333;
  font-size: 1rem;
  display: block;
  -webkit-transform: scale(0.4);
  transform: scale(0.4)
}

.content__col2 .col2__aside .aside__nav.is-show .shooting-line:before {
  -webkit-animation: shooting 0.5s ease-in-out normal 0.5s;
  animation: shooting 0.5s ease-in-out normal 0.5s
}

.content__col2 .col2__aside .aside__bnr {
  margin-top: 4rem
}

.content__col2 .col2__aside .aside__bnr .item+.item {
  margin-top: 1.5rem
}

.content__col2 .col2__aside .aside__bnr .item__txt {
  font-size: 1.2rem;
  margin-bottom: 1rem
}

.content__col2 .col2__aside .aside__bnr .item__bnr {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #e5e5e5
}

.content__col2 .col2__aside .aside__bnr .item__bnr a {
  display: block;
  position: relative
}

.content__col2 .col2__aside .aside__bnr .item__bnr a.blank:after {
  display: block;
  content: '\e500';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1rem;
  right: 0.4rem;
  bottom: 0.4rem;
  position: absolute
}

html.edge .content__col2 .col2__main {
  width: 100%;
  margin-left: calc(-1 * (100% - 128rem) / 2 - 30rem)
}

@media only screen and (max-width: 1200px) {
  html.edge .content__col2 .col2__main {
    margin-left: calc(-1 * (100% - 128rem) / 2 - 35rem)
  }
}

.content__col2 .col2__main section {
  padding-left: calc((100% - 128rem) / 2 + 30rem);

}

@media only screen and (max-width: 1200px) {
  .content__col2 .col2__main section {
    padding-left: calc((100% - 128rem) / 2 + 35rem)
  }
}

.content__col2 .col2__main .section__body {
  max-width: 98rem
}

@media only screen and (max-width: 1200px) {
  .content__col2 .col2__main .section__body {
    max-width: 88rem
  }
}

.content__intro {
  background: #ffffff;
  padding: 15rem 0;
  position: relative
}

.content__intro:before {
  position: absolute;
  z-index: -1;
  top: -14rem;
  height: 14rem;
  width: 100%;
  content: '';
  background: #ffffff
}

.content__intro .intro__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.content__intro .intro__body .ttl {
  width: 20rem;
  font-size: 2.4rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  padding-top: 4rem;
  position: relative
}

.content__intro .intro__body .ttl .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 10rem;
  height: 1px;
  left: 0;
  top: 0
}

.content__intro .intro__body .ttl .shooting-line:before,
.content__intro .intro__body .ttl .shooting-line:after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: #333
}

.content__intro .intro__body .ttl .shooting-line:before {
  opacity: 0.3
}

.content__intro .intro__body .ttl .shooting-line:after {
  width: 100%;
  opacity: 0
}

.content__intro .intro__body .ttl .shooting-line {
  top: 1rem
}

.content__intro .intro__body .txt {
  width: calc(100% - 20rem);
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.content__intro .intro__body .txt p+p {
  margin-top: 3rem
}

.content__intro.is-show .intro__body .ttl .shooting-line:before {
  -webkit-animation: shooting2 0.4s ease-in-out normal forwards;
  animation: shooting2 0.4s ease-in-out normal forwards
}

.content__intro.is-show .intro__body .ttl .shooting-line:after {
  -webkit-animation: shooting3 0.4s ease-in-out normal 0.2s forwards;
  animation: shooting3 0.4s ease-in-out normal 0.2s forwards
}

.content__intro.is-show .intro__body .txt {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s
}

.content__foot {
  background: #ffffff
}

.content__foot .section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.content__foot .foot__links {
  padding-top: 10rem;
  padding-bottom: 20rem;
  width: 34%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: calc((100% - 128rem) / 2 + 4rem);
  position: relative;
  z-index: 1;
  background: transparent;
  mix-blend-mode: screen
}

@media only screen and (max-width: 1280px) {
  .content__foot .foot__links {
    padding-left: calc((100% - 128rem) / 2 + 8rem)
  }
}

@media only screen and (max-width: 1200px) {
  .content__foot .foot__links {
    padding-left: calc((100% - 128rem) / 2 + 14rem)
  }
}

.content__foot .foot__links .item {
  counter-increment: footer-sitemap-number 1
}

.content__foot .foot__links .item.is-current a {
  color: #333
}

html.notouch .content__foot .foot__links .item.is-current a:hover {
  color: #ffffff
}

html.notouch .content__foot .foot__links .item.is-current a:hover .item__txt:before {
  background: #ffffff
}

html.isMS .content__foot .foot__links .item.is-current a:hover {
  color: #333
}

html.isMS .content__foot .foot__links .item.is-current a:hover .item__txt:before {
  background: #333
}

.content__foot .foot__links .item.is-current .item__txt {
  font-weight: 500;
  position: relative
}

.content__foot .foot__links .item.is-current .item__txt:before {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  width: 100%;
  height: 1px;
  background: #333
}

.content__foot .foot__links .item a {
  display: inline-block;
  padding: 1.5rem 0;
  text-decoration: none;
  padding-left: 4.5rem;
  position: relative;
  color: #cccccc
}

.content__foot .foot__links .item a:before {
  font-family: "heebo", sans-serif;
  content: counter(footer-sitemap-number, decimal-leading-zero);
  display: block;
  position: absolute;
  top: 1.2rem;
  left: 0;
  color: #cccccc;
  font-size: 1.1rem
}

.content__foot .foot__links .item__txt {
  font-family: "heebo", sans-serif;
  line-height: 1;
  white-space: nowrap
}

.content__foot .foot__nextArea {
  width: 66%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative
}

.content__foot .foot__nextArea:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #e6e6e6
}

.content__foot .foot__nextArea a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: block;
  text-decoration: none;
  position: relative
}

html.notouch .content__foot .foot__nextArea a:hover {
  color: #ffffff
}

html.notouch .content__foot .foot__nextArea a:hover .nextArea__bg {
  opacity: 1
}

.content__foot .foot__nextArea .nextArea__bg {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: red;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  opacity: 0;
  background: no-repeat center center;
  background-size: cover
}

.content__foot .foot__nextArea .nextArea__bg.news {
  background-image: url("../imgs/common/foot_nav_news.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.service {
  background-image: url("../imgs/services/common/foot_nav_service.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.youtube {
  background-image: url("../imgs/services/common/foot_nav_youtube.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.sns {
  background-image: url("../imgs/services/common/foot_nav_sns.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.live {
  background-image: url("../imgs/services/common/foot_nav_live.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.company {
  background-image: url("../imgs/company/common/foot_nav_company.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.profile {
  background-image: url("../imgs/company/common/foot_nav_profile.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.history {
  background-image: url("../imgs/company/common/foot_nav_history.jpg")
}

.content__foot .foot__nextArea .nextArea__bg.presskit {
  background-image: url("../imgs/company/common/foot_nav_presskit.jpg")
}

.content__foot .foot__nextArea .body {
  text-align: right;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  box-sizing: border-box;
  padding-right: calc((100% - 128rem) / 2 + 26%)
}

.content__foot .foot__nextArea .bodyInner {
  padding-right: 4rem
}

.content__foot .foot__nextArea .body .next {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 1.5rem
}

.content__foot .foot__nextArea .body .ttl {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 3.6rem;
  line-height: 1
}

.content__fixedMenu {
  display: none
}

@media only screen and (max-width: 768px) {
  .content {
    padding: 17rem 0 7rem
  }

  .content__mainImage .imgArea {
    width: 100%;
  }

  .content__label {
    display: none
  }

  .content__txtBg {
    top: 12rem
  }

  .content__txtBg .txt {
    margin-left: 1.5rem;
    font-size: 20rem
  }

  .content__fixedMenuWrap .container-2colMain {
    padding-right: 2rem
  }

  .content__ttl:before,
  .content__ttl:after {
    height: 0.5px
  }

  .content__ttlWrap {
    padding-bottom: 4.5rem
  }

  .content__ttl .ttl .en {
    font-size: 3rem;
    margin-bottom: 0.8rem
  }

  .content__ttl .ttl .jp {
    font-size: 1rem
  }

  .content__ttl .ttl .cat {
    top: 0rem;
    font-size: 1rem
  }

  .content__ttl.lowerpage-ttl .ttl {
    font-size: 2.4rem;
    padding-left: 0
  }

  .content__ttl.lowerpage-ttl .ttl:before {
    display: none
  }

  .content__ttl.lowerpage-ttl .meta .label {
    font-size: 1rem;
    margin-bottom: 2rem
  }

  .content__ttl.lowerpage-ttl .meta .date {
    font-size: 1rem
  }

  .content__ttl.lowerpage-ttl .c-linelink__txt {
    background: url("../imgs/common/line.png") no-repeat left bottom !important;
    background-position: right bottom !important;
    background-size: 0 1px !important
  }

  .content__col2 {
    padding: 7.5rem 0 0
  }

  .content__col2 .col2__wrap {
    display: block
  }

  .content__col2 .col2__aside {
    display: none
  }



  .content__col2 .col2__main section {
    padding-left: 0
  }

  .content__intro {
    padding: 7.5rem 0
  }

  .content__intro:before {
    top: -7.5rem;
    height: 7.5rem
  }

  .content__intro .intro__body {
    display: block
  }

  .content__intro .intro__body .ttl {
    width: auto;
    font-size: 2.1rem;
    padding-top: 3rem;
    margin-bottom: 3.5rem
  }

  .content__intro .intro__body .ttl .shooting-line {
    width: 5rem;
    top: 0
  }

  .content__intro .intro__body .txt {
    width: auto
  }

  .content__intro .intro__body .txt p+p {
    margin-top: 3rem
  }

  .content__foot .section {
    display: block
  }

  .content__foot .foot__links {
    display: none
  }

  .content__foot .foot__nextArea {
    width: auto;
    display: block;
    position: relative;
    height: 25rem
  }

  .content__foot .foot__nextArea:before {
    display: none
  }

  .content__foot .foot__nextArea a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  .content__foot .foot__nextArea .nextArea__bg {
    opacity: 1
  }

  .content__foot .foot__nextArea .body {
    text-align: right;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    top: auto;
    right: auto;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    width: 100%;
    box-sizing: border-box;
    padding-right: 0;
    color: #ffffff
  }

  .content__foot .foot__nextArea .bodyInner {
    padding-right: 0;
    padding: 0 1.5rem
  }

  .content__foot .foot__nextArea .body .next {
    font-size: 1rem
  }

  .content__foot .foot__nextArea .body .ttl {
    font-size: 2.1rem
  }

  .content__fixedMenu {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 11;
    width: 100%;
    pointer-events: none;
    -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    -webkit-transition-property: visibility, opacity;
    transition-property: visibility, opacity;
    opacity: 0;
    visibility: hidden
  }

  .content__fixedMenu.is-scrolled {
    visibility: visible;
    opacity: 1
  }

  .content__fixedMenu.is-open {
    height: 100%;
    pointer-events: auto
  }

  .content__fixedMenu.is-open .fixedMenu__menu {
    background: #232426;
    border-color: rgba(255, 255, 255, 0.3);
    color: #ffffff
  }

  .content__fixedMenu.is-open .fixedMenu__menu:before {
    border: 0.5px solid transparent;
    background: #4c4d4e
  }

  .content__fixedMenu.is-open .fixedMenu__menu:after {
    left: 1.2rem;
    content: '\e913';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-decoration: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
  }

  .content__fixedMenu.is-open .fixedMenu__menu .txt {
    display: none
  }

  .content__fixedMenu.is-open .fixedMenu__menu .close {
    display: block
  }

  .content__fixedMenu.is-open .fixedMenu__nav {
    pointer-events: auto;
    opacity: 1
  }

  .content__fixedMenu .fixedMenu__menu {
    position: relative;
    z-index: 1;
    top: 2rem;
    left: 1.5rem;
    text-decoration: none;
    background: #ffffff;
    padding: 1.2rem 1.2rem 1.2rem 3.2rem;
    border: 0.5px solid transparent;
    line-height: 1;
    font-family: "heebo", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    border-radius: 3.5rem;
    display: inline-block;
    pointer-events: auto;
    -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
  }

  .content__fixedMenu .fixedMenu__menu:before {
    content: "";
    position: absolute;
    left: 0.6rem;
    top: 0.6rem;
    width: 2rem;
    height: 2rem;
    border: 0.5px solid #dedede;
    border-radius: 50%;
    background: #efefef
  }

  .content__fixedMenu .fixedMenu__menu:after {
    position: absolute;
    left: 1rem;
    top: 1.2rem;
    content: '\e909';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-decoration: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1rem;
    -webkit-transform: scale(0.6);
    transform: scale(0.6)
  }

  .content__fixedMenu .fixedMenu__menu .txt {
    display: block
  }

  .content__fixedMenu .fixedMenu__menu .close {
    display: none
  }

  .content__fixedMenu .fixedMenu__nav {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: auto;
    background: #17181a;
    padding-top: 10rem;
    padding-bottom: 7rem;
    -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    -webkit-transition-property: opacity;
    transition-property: opacity;
    opacity: 0
  }

  .content__fixedMenu .fixedMenu__nav .nav {
    margin: 0 1.5rem;
    border-left: 0.5px solid #5d5e5f
  }

  .content__fixedMenu .fixedMenu__nav .nav .item {
    padding-left: 2.5rem
  }

  .content__fixedMenu .fixedMenu__nav .nav .item+.item {
    margin-top: 2.5rem
  }

  .content__fixedMenu .fixedMenu__nav .nav .item.is-current a {
    font-weight: 500;
    color: #fff
  }

  .content__fixedMenu .fixedMenu__nav .nav .item a {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.2);
    line-height: 1;
    font-family: "heebo", sans-serif;
    font-size: 1.4rem
  }
}

.section {
  position: relative;
  z-index: 0
}

.section .container {
  z-index: 1
}

.section .b-texteffect {
  overflow: hidden;
  display: inline-block;
  line-height: 1
}

html.ie11 .section .b-texteffect {
  padding-top: 0.5rem
}

.section .b-texteffect__text {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  display: inline-block
}

.section .wh_line{
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  display: inline-block
}




.section__ttl {
  position: relative;
  margin-bottom: 5rem
}

.section__ttl .jp,
.section__ttl .en {
  line-height: 1;
  display: block
}

.section__ttl .jp {
  font-size: 1.2rem;
  margin-bottom: 2rem
}

.section__ttl .en {
  font-family: "heebo", sans-serif;
  font-size: 3rem;
  font-weight: 500
}

/*サービス一覧*/

.item__ttl .jp {
  font-size: 1.2rem;
  margin-bottom: 1rem
}

.item__ttl .jp{
  line-height: 1;
  display: block
}

.section__ttl .en .b-texteffect__text:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #333;
}

.section__ttl .en .wh_line:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 1px solid #fff;
}


.section__sttl {
  position: relative;
  padding: 5.5rem 0 6rem;
  font-size: 3rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  line-height: 1.63;
  position: relative
}

.section__sttl .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 10rem;
  height: 1px;
  left: 0;
  top: 0
}

.section__sttl .shooting-line:before,
.section__sttl .shooting-line:after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: #333
}

.section__sttl .shooting-line:before {
  opacity: 0.3
}

.section__sttl .shooting-line:after {
  width: 100%;
  opacity: 0
}

.section__ssttl {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.3;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  margin-bottom: 2rem;
  padding-left: 1.4rem
}

.section__ssttl:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #333
}

.section__label {
  position: relative;
  width: 10rem
}

.section__label .lbl {
  font-family: "heebo", sans-serif;
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  -webkit-transform-origin: left center;
  transform-origin: left center;
  position: absolute;
  top: 0;
  left: 50%;
  padding-left: 3rem;
  color: rgba(0, 0, 0, 0.3);
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap
}

.section__label .lbl:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 2rem;
  height: 1px;
  background: rgba(0, 0, 0, 0.3)
}

.section__menu {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: border-color;
  transition-property: border-color
}

.section__menu .list {
  display: table
}

.section__menu .list li {
  display: table-cell;
  vertical-align: top
}

.section__menu .list li+li {
  padding-left: 3rem
}

.section__menu .list li label {
  display: block;
  position: relative;
  cursor: pointer
}

.section__menu .list li label input[type="radio"] {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  opacity: 0
}

.section__menu .list li a,
.section__menu .list li label .txt {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: border-color, background-color, color;
  transition-property: border-color, background-color, color;
  display: block;
  padding: 0 1rem;
  text-decoration: none
}

.section__menu .list li a .line,
.section__menu .list li label .txt .line {
  padding: 0 0 2.8rem;
  display: inline-block;
  position: relative
}

.section__menu .list li a .line:after,
.section__menu .list li label .txt .line:after {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  background-color: #333
}

.section__menu .list li a .line:before,
.section__menu .list li a .line:after,
.section__menu .list li label .txt .line:before,
.section__menu .list li label .txt .line:after {
  content: '';
  position: absolute;
  bottom: 0;
  width: 0;
  right: 0;
  height: 1px
}

html.notouch .section__menu .list li a .line:hover,
html.notouch .section__menu .list li label .txt .line:hover {
  text-decoration: none
}

html.notouch .section__menu .list li a .line:hover:after,
html.notouch .section__menu .list li a .line:hover:before,
html.notouch .section__menu .list li label .txt .line:hover:after,
html.notouch .section__menu .list li label .txt .line:hover:before {
  left: 0;
  width: 100%
}

.section__menu .list li.is-current a .line:after,
.section__menu .list li label input[type="radio"].selected+.txt .line:after,
.section__menu .list li label input[type="radio"]:checked+.txt .line:after {
  left: 0;
  width: 100%
}

.section.is-show .b-texteffect__text {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.section.is-show .wh_line{
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.section.is-show .section__sttl .shooting-line:before {
  -webkit-animation: shooting2 0.4s ease-in-out normal forwards;
  animation: shooting2 0.4s ease-in-out normal forwards
}

.section.is-show .section__sttl .shooting-line:after {
  -webkit-animation: shooting3 0.4s ease-in-out normal 0.2s forwards;
  animation: shooting3 0.4s ease-in-out normal 0.2s forwards
}

@media only screen and (max-width: 768px) {
  .section__ttl {
    margin-bottom: 4rem
  }

  .section__ttl .jp {
    font-size: 1rem;
    margin-bottom: 1.2rem
  }

  .section__ttl .en {
    font-size: 2.1rem
  }

  .section__sttl {
    padding: 3rem 0 3rem;
    font-size: 2.1rem
  }

  .section__sttl .shooting-line {
    width: 5rem
  }

  .section__ssttl {
    font-size: 1.7rem
  }

  .section__label {
    display: none
  }

  .section__menu {
    position: relative;
    margin: 0 -1.5rem
  }

  .section__menu:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #e6e6e6
  }

  .section__menu .list {
    padding: 0 0.7rem
  }

  .section__menu .list li+li {
    padding-left: 0rem
  }

  .section__menu .list li label {
    font-size: 1.2rem
  }

  .section__menu .list li a .line,
  .section__menu .list li label .txt .line {
    padding: 2.8rem 0 0
  }

  .section__menu .list li a .line:before,
  .section__menu .list li a .line:after,
  .section__menu .list li label .txt .line:before,
  .section__menu .list li label .txt .line:after {
    top: 0;
    bottom: auto
  }

  .section.is-show .section__menu dt:after {
    opacity: 1
  }

  .section.is-show .section__menu dd:before {
    opacity: 1
  }

  .section.is-show .section__menu dd .list li.is-current a,
  .section.is-show .section__menu dd .list li label input[type="radio"]:checked+.txt {
    border-top-color: #333;
    background: none
  }
}

.loader {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 20;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-style: preserve-3d
}

/*.loader__logo {
  display: block;
  overflow: hidden;
  text-indent: -5260px;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 9rem;
  height: 9rem;
  margin: -2.2rem 0 0 -2.2rem;
  background: url("../imgs/common/logo_white2.svg") no-repeat center center;
  background-size: contain;
  opacity: 0
}*/


/*.loader__logo.is-hidden {
  opacity: 0;
  -webkit-transform: scale(1.2);
  transform: scale(1.2)
}*/

.loader__logo {
  display: block;
  overflow: hidden;
  text-indent: -5260px;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 9rem;
  height: 9rem;
  transform: translate(-50%, -50%);
  background: url(../imgs/common/logo_white2.svg) no-repeat center center;
  background-size: contain;
  opacity: 1;
  transition: opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.loader__logo.is-hidden {
  opacity: 0;
  transform: translate(-50%, -50%);
}

.loader__cursor {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  width: 60px;
  height: 60px;
  background: transparent;
  box-shadow: 0px 1px 0px #000;
  animation: mymove 0.5s linear infinite;
  display: none;
}




.loader__progress {
  -webkit-transition: width .4s linear 0s;
  transition: width .4s linear 0s;
  -webkit-transition-property: width;
  transition-property: width;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 0;
  height: 0.3rem;
  background: #ffffff
}

.loader__cover {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity, background;
  transition-property: opacity, background;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background: #f7f7f7;
  opacity: 0
}

/*.loader__cursor {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: top, left, width, height;
  transition-property: top, left, width, height;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  margin-left: -30px;
  margin-top: -30px;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  background: none;
  -webkit-box-shadow: 0px 1px 0px #000;
  box-shadow: 0px 1px 0px #000;
  background: transparent;
  -webkit-animation: mymove .5s linear infinite;
  animation: mymove .5s linear infinite;
  display: none
}*/

@media only screen and (max-width: 768px) {
  .loader__cursor {
    display: block
  }
}

.loader.is-first .loader__cover {
  background: url("../imgs/common/bg.gif") repeat center center
}

.loader.is-first .loader__cursor {
  opacity: 0
}

.loader.is-black .loader__cover {
  background: #161618
}

.loader.is-black .loader__cursor {
  -webkit-box-shadow: 0px 1px 0px #ffffff;
  box-shadow: 0px 1px 0px #ffffff
}

.loader.is-hidden {
  opacity: 0;
  visibility: hidden
}

.loader.is-show {
  z-index: 101 !important;
  display: block !important
}

html.is-loading .loader__logo {
  opacity: 1
}

html.is-loading .loader__cover {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  opacity: 1
}

html.is-loaded .loader__logo {
  opacity: 0;
  -webkit-transform: scale(1.2);
  transform: scale(1.2)
}

html.is-loaded .loader__cover {
  opacity: 0
}

html.is-loaded .loader__cursor {
  opacity: 0
}

.pageCover {
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 100;
  width: 100%;
  height: 100vh;
  visibility: hidden;
  background: rgba(255, 255, 255, 0.8);
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity;
  transition-property: opacity;
  opacity: 0
}

.pageCover.is-show {
  visibility: visible;
  opacity: 1
}

.fContact {
  padding: 15rem 0;
  z-index: 1;
  background: #222426;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: perspective(0);
  transform: perspective(0)
}

.fContact a {
  color: #ffffff;
  text-decoration: none;
  display: block
}

html.notouch .fContact a:hover .item__border:after,
html.notouch .fContact a:hover .item__border:before {
  left: 0;
  width: 100%
}

.fContact:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  /*width: 50%;*/
  height: 100%;
  background: #17181a
}

.fContact__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.fContact__inner .item {
  /*width: 50%;*/
  width: 100%;
  padding-right: 8rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative
}

.fContact__inner .item+.item {
  padding-right: 0;
  padding-left: 8rem
}

.fContact__inner .item+.item .item__btn {
  right: 0
}

.fContact__inner .item__ttl {
  margin-bottom: 3rem;
  padding-bottom: 3rem;
  position: relative
}

.fContact__inner .item__ttl .jp,
.fContact__inner .item__ttl .en {
  display: block;
  line-height: 1
}

.fContact__inner .item__ttl .jp {
  font-size: 1.2rem;
  margin-bottom: 1rem;
  color: rgba(255, 255, 255, 0.6)
}

.fContact__inner .item__ttl .en {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 3rem
}

.fContact__inner .item__border {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0
}

.fContact__inner .item__border:before {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
  background: #fff;
  width: 0
}

.fContact__inner .item__border:after {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  background-color: rgba(255, 255, 255, 0.1);
  width: 100%
}

.fContact__inner .item__border:before,
.fContact__inner .item__border:after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  height: 1px
}

.fContact__inner .item__txt {
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.6)
}

.fContact__inner .item__btn {
  position: absolute;
  top: 1.5rem;
  right: 8rem
}

@media only screen and (max-width: 768px) {
  .fContact {
    padding: 7rem 0;
    background: #17181a
  }

  .fContact:before {
    display: none
  }

  .fContact__inner {
    display: block
  }

  .fContact__inner .item {
    width: auto;
    padding-right: 0;
    margin: 0 3rem;
    padding: 3rem 0
  }

  .fContact__inner .item+.item {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-right: 0;
    padding-left: 0
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .fContact__inner .item+.item {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .fContact__inner .item+.item .item__btn {
    right: 0
  }

  .fContact__inner .item__ttl {
    text-align: center;
    margin-bottom: 2rem;
    padding-bottom: 0
  }

  .fContact__inner .item__ttl .jp {
    font-size: 1rem
  }

  .fContact__inner .item__ttl .en {
    font-size: 2.1rem
  }

  .fContact__inner .item__border {
    display: none
  }

  .fContact__inner .item__txt {
    text-align: center;
    margin-bottom: 2rem
  }

  .fContact__inner .item__btn {
    text-align: center;
    position: static
  }

  .fContact__inner .item__btn .arrow-button {
    display: inline-block
  }
}

.fBnr {
  overflow: hidden;
  padding: 6rem 0;
  z-index: 2;
  background: #000000;
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: perspective(0);
  transform: perspective(0)
}

.fBnr .container {
  max-width: 100rem
}

.fBnr:before {
  position: absolute;
  display: block;
  content: "";
  top: -1px;
  left: 0;
  width: 100%;
  height: calc(100% + 2px);
  background: #000000
}

.fBnr__list .item a.blank {
  display: block;
  padding-bottom: 1px
}

.fBnr__list .item a.blank:after {
  position: absolute;
  z-index: 1;
  right: 0.6rem;
  bottom: 0.6rem
}

@media only screen and (max-width: 768px) {
  .fBnr {
    padding: 5rem 0
  }

  .fBnr .swiper-container {
    width: 24.5rem;
    overflow: inherit
  }
}

.wysiwyg-editor {
  zoom: 1
}

.wysiwyg-editor:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.wysiwyg-editor *:first-child {
  margin-top: 0 !important
}

.wysiwyg-editor a[target="_blank"]:after {
  content: '\e500';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-left: 0.5rem;
  font-size: 1rem
}

.wysiwyg-editor *:first-child,
.wysiwyg-editor h1+*,
.wysiwyg-editor h2+*,
.wysiwyg-editor h3+*,
.wysiwyg-editor h4+*,
.wysiwyg-editor h5+*,
.wysiwyg-editor h6+*,
.wysiwyg-editor img+* {
  margin-top: 0 !important
}

.wysiwyg-editor img {
  width: auto !important;
  max-width: 100%
}

.wysiwyg-editor p {
  font-size: 1.6rem;
  margin-top: 4rem
}

.wysiwyg-editor h2 {
  margin-top: 10rem;
  margin-bottom: 8rem;
  position: relative;
  padding: 5.5rem 0 0;
  font-size: 3rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  line-height: 1.4
}

.wysiwyg-editor h2:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 10rem;
  height: 1px;
  background: #333
}

.wysiwyg-editor h3 {
  margin-top: 8rem;
  margin-bottom: 6rem;
  position: relative;
  padding: 5rem 0 0;
  font-size: 2.4rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  line-height: 1.4
}

.wysiwyg-editor h3:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 4rem;
  height: 1px;
  background: #333
}

.wysiwyg-editor h4 {
  margin-top: 6rem;
  margin-bottom: 3rem;
  position: relative;
  padding-left: 1.8rem;
  font-size: 2rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  line-height: 1.4
}

.wysiwyg-editor h4:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #333
}

.wysiwyg-editor h5 {
  margin-top: 4rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 1rem
}

.wysiwyg-editor ul {
  margin-top: 3rem
}

.wysiwyg-editor ul li {
  padding-left: 2rem;
  line-height: 1.4;
  position: relative
}

.wysiwyg-editor ul li:before {
  position: absolute;
  top: 0.4rem;
  left: 0;
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #333
}

.wysiwyg-editor ul li+li {
  margin-top: 1rem
}

.wysiwyg-editor ol {
  margin-top: 3rem
}

.wysiwyg-editor ol li {
  line-height: 1.4;
  counter-increment: number;
  padding-left: 2rem;
  position: relative
}

.wysiwyg-editor ol li:before {
  position: absolute;
  left: 0;
  content: counter(number) ".";
  margin-right: 0.6rem;
  color: #333
}

.wysiwyg-editor ol li+li {
  margin-top: 1rem
}

.wysiwyg-editor .wp-caption-text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  color: #666666
}

.wysiwyg-editor .alignleft {
  float: left;
  width: 35.5rem;
  margin: 0 4rem 2rem 0
}

.wysiwyg-editor .alignright {
  float: right;
  width: 35.5rem;
  margin: 0 0 2rem 4rem
}

.wysiwyg-editor hr.clear {
  display: block;
  clear: both;
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0;
  border: none;
  background: none
}

.wysiwyg-editor .video {
  margin-top: 4rem;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden
}

.wysiwyg-editor .video iframe,
.wysiwyg-editor .video object,
.wysiwyg-editor .video embed {
  border: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.wysiwyg-editor .instagram-media {
  margin: 4rem auto 0 auto !important
}

@media only screen and (max-width: 768px) {
  .wysiwyg-editor p {
    font-size: 1.4rem;
    margin-top: 3rem
  }

  .wysiwyg-editor h2 {
    margin-top: 7.5rem;
    margin-bottom: 3.5rem;
    padding: 3rem 0 0;
    font-size: 2.1rem
  }

  .wysiwyg-editor h2:before {
    width: 5rem
  }

  .wysiwyg-editor h3 {
    margin-top: 6rem;
    margin-bottom: 2.5rem;
    padding: 2.5rem 0 0;
    font-size: 1.9rem
  }

  .wysiwyg-editor h3:before {
    width: 2.5rem
  }

  .wysiwyg-editor h4 {
    margin-top: 4rem;
    margin-bottom: 2rem;
    padding-left: 1.4rem;
    font-size: 1.6rem
  }

  .wysiwyg-editor h5 {
    margin-top: 3rem;
    font-size: 1.4rem;
    margin-bottom: 0.5rem
  }

  .wysiwyg-editor .alignleft {
    float: none;
    width: 100%;
    margin: 0
  }

  .wysiwyg-editor .alignright {
    float: none;
    width: 100%;
    margin: 0
  }
}

.post-block .iframe-wrap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden
}

.post-block .iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.post-block__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -2.5rem
}

.post-block__col2 .col {
  width: 47.5%;
  padding-bottom: 2.5rem
}

.post-block__col2 .col *:first-child {
  margin-top: 0 !important
}

.post-block__col2 .col .cap {
  margin-top: 1.2rem;
  font-size: 1.2rem
}

.post-block__col2 .col .txt {
  margin-top: 3rem
}

.post-block__related {
  border: 1px solid #eaeaea;
  background: #ffffff;
  padding: 4rem
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .post-block__related {
    border-width: 0.5px
  }
}

.post-block__related .ttl {
  margin-bottom: 3rem;
  position: relative;
  padding-left: 1.8rem;
  font-size: 2rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  line-height: 1.4
}

.post-block__related .ttl:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #333
}

.post-block__related .txt {
  font-size: 1.4rem
}

.post-block+.post-block {
  margin-top: 10rem
}

@media only screen and (max-width: 768px) {
  .post-block__col2 {
    display: block;
    margin-bottom: 0
  }

  .post-block__col2 .col {
    width: auto;
    padding-bottom: 0
  }

  .post-block__col2 .col+.col {
    margin-top: 5rem
  }

  .post-block__related {
    padding: 2rem
  }

  .post-block__related .ttl {
    margin-bottom: 1.5rem;
    padding-left: 1.6rem;
    font-size: 2rem
  }

  .post-block__related .txt {
    font-size: 1.2rem
  }

  .post-block+.post-block {
    margin-top: 5rem
  }
}

.thumbnail {
  overflow: hidden;
  position: relative;
  padding-bottom: 65%
}

.thumbnail img {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: absolute;
  top: 0;
  left: 0
}

html.notouch a[href]:hover .thumbnail img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.caption-txt {
  font-size: 1.2rem
}

.mod-list>li {
  padding-left: 1em
}

.mod-list>li:before {
  content: '・';
  display: inline-block;
  width: 1em;
  margin-left: -1em
}

.sns-list {
  display: table
}

.sns-list>li {
  display: table-cell;
  vertical-align: top
}

.sns-list>li+li {
  padding-left: 0.5rem
}

.sns-list>li a {
  width: 2.2rem;
  height: 2.2rem;
  display: block;
  position: relative
}

.sns-list>li a.twitter .icon:after {
  content: '\e907';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.sns-list>li a.facebook .icon:after {
  content: '\e905';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.sns-list>li a.instagram .icon:after {
  content: '\e906';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.sns-list>li .icon {
  display: block;
  overflow: hidden;
  text-indent: -5260px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1
}

.sns-list>li .icon:after {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  text-indent: 0;
  text-align: center;
  color: #ffffff;
  font-size: 2.2rem
}

.accordion__body {
  display: none
}

.accordion.is-open .accordion__body {
  display: block
}

@media only screen and (max-width: 768px) {
  .sp-accordion__label {
    position: relative;
    padding-right: 4.5rem;
    cursor: pointer
  }

  .sp-accordion__label .icon {
    display: block;
    position: absolute;
    top: 50%;
    right: 0rem;
    width: 3rem;
    height: 3rem;
    margin-top: -0.7rem;
    border-radius: 3rem;
    border: 1px solid #e6e6e6;
    background: #f7f7f7
  }

  .sp-accordion__label .icon_bk {
    display: block;
    position: absolute;
    top: 50%;
    right: 0rem;
    width: 3rem;
    height: 3rem;
    margin-top: -0.7rem;
    border-radius: 3rem;
    border: 1px solid #e6e6e6;
    background: #000
  }

}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .sp-accordion__label .icon {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .sp-accordion__label .icon.white {
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(247, 247, 247, 0.1)
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .sp-accordion__label .icon.white {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .sp-accordion__label .icon.white:before {
    border-color: #ffffff
  }

  .sp-accordion__label .icon.white:after {
    border-color: #ffffff
  }

  .sp-accordion__label .icon:before,
  .sp-accordion__label .icon:after {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%
  }

    .sp-accordion__label .icon_bk:before,
  .sp-accordion__label .icon_bk:after {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%
  }

  .sp-accordion__label .icon:before {
    width: 0.9rem;
    height: 0;
    border-top: 1px solid #333
  }

    .sp-accordion__label .icon_bk:before {
    width: 0.9rem;
    height: 0;
    border-top: 1px solid #fff
  }

}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .sp-accordion__label .icon:before {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .sp-accordion__label .icon:after {
    width: 0;
    height: 0.9rem;
    border-right: 1px solid #333
  }

  .sp-accordion__label .icon_bk:after {
    width: 0;
    height: 0.9rem;
    border-right: 1px solid #fff
  }

}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .sp-accordion__label .icon:after {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .sp-accordion__body {
    display: none
  }

  .sp-accordion:after {
    display: none !important
  }

  .sp-accordion.is-open .sp-accordion__label .icon:after {
    visibility: hidden
  }

  .sp-accordion.is-open .sp-accordion__label .icon_bk:after {
    visibility: hidden
  }

  .sp-accordion.is-open .sp-accordion__body {
    display: block
  }

  .sp-accordion.is-open:after {
    display: block !important
  }
}

.entry-share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 7rem;
  background: #ffffff
}

.entry-share li {
  width: 100%
}

.entry-share li+li a {
  border-left: 1px solid #f7f7f7
}

.entry-share li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 15rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.entry-share li a .txt {
  display: block;
  position: relative;
  padding-top: 3rem
}

.entry-share li a .txt:after {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  margin-top: 0;
  font-size: 2.2rem;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: color;
  transition-property: color
}

.entry-share li a.facebook .txt:after {
  content: '\e905';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #4263b1
}

.entry-share li a.twitter .txt:after {
  content: '\e907';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #279ff1
}

.entry-share li a.line .txt:after {
  content: '\e910';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #00c500
}

html.notouch .entry-share li a:hover {
  background: #17181a;
  color: #ffffff
}

html.notouch .entry-share li a:hover .txt:after {
  color: #ffffff
}

@media only screen and (max-width: 768px) {
  .entry-share {
    margin-top: 5rem
  }

  .entry-share li {
    width: 100%
  }

  .entry-share li+li a {
    border-left: 1px solid #f7f7f7
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .entry-share li+li a {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .entry-share li a {
    height: 10rem;
    font-size: 0.8rem
  }
}

:placeholder-shown {
  color: #999999
}

::-webkit-input-placeholder {
  color: #999999
}

:-moz-placeholder {
  color: #999999
}

::-moz-placeholder {
  color: #999999
}

:-ms-input-placeholder {
  color: #999999
}

/*radio_botann style*/


.wpcf7 form.sent .wpcf7-response-output {
    color: #10d39e!important;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    color: #dd3939 !important;
}

.wpcf7 form .wpcf7-response-output {
    border: none !important;
  }

.wpcf7-list-item {

    display: inline-block;
    position: relative;
    padding: 1.2rem 0 1.2rem 3.5rem;
}

.wpcf7-list-item input {
    content: '';
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    position: absolute;
    top: 1.2rem;
    left: 0;
    width: 2.6rem;
    height: 2.6rem;
    border: #cccccc solid 1px;
    border-radius: 1.3rem;
    background: #ffffff;
}


input[type="radio"] {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.wpcf7-list-item.first {
  margin-left: 0;
}

span.wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
}

span.wpcf7-list-item-label::before {
  display: block;
  content: "";
  border-radius: 50%;
  border: 1px solid black;
  width: 30px;
  height: 30px;
  margin-right: 10px;
}

span.wpcf7-list-item-label::after {
  display: block;
  position: absolute;
  content: "";
  border-radius: 50%;
  width: 20px;
  height: 20px;
  background-color: black;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}

input[type="radio"]:checked + span.wpcf7-list-item-label::after {
  display: block;
}


@media only screen and (max-width: 768px) {
  
.wpcf7-list-item {
    display: flex!important;
    margin: unset!important; 
}
  
/*部分的にカスタマイズをしたい場合*/
.contact_flex .wpcf7-list-item {
    display: inline-block!important;

}

}

/*finish*/

.form-input-wrap {
  position: relative
}

.form-input-wrap .icon {
  display: block;
  position: absolute;
  top: 2rem;
  right: 1.6rem;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain
}

.form-input-wrap .form-valid+.icon {
  background-image: url("../imgs/common/valid.svg")
}

.form-input-wrap .form-invalid+.icon {
  background-image: url("../imgs/common/invalid.svg")
}

input.form-text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 6rem;
  margin: 0;
  padding: 1.1rem 6rem 1.1rem 1.5rem;
  border: 1px solid #ffffff;
  background: #ffffff;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 1.6rem;
  line-height: 1.86;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

input.form-text:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 50px #ffffff inset;
  box-shadow: 0 0 0px 50px #ffffff inset
}

textarea.form-textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 21.5rem;
  margin: 0;
  padding: 1.1rem 6rem 1.1rem 1.5rem;
  border: 1px solid #ffffff;
  background: #ffffff;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 1.6rem;
  line-height: 1.86;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

label.form-radio {
  display: inline-block;
  position: relative;
  cursor: pointer
}

label.form-radio input {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  opacity: 0
}

label.form-radio input:checked+.txt:after {
  opacity: 1
}

label.form-radio .txt {
  display: inline-block;
  position: relative;
  padding: 1.2rem 0 1.2rem 3.5rem
}

label.form-radio .txt:before {
  content: '';
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: absolute;
  top: 1.2rem;
  left: 0;
  width: 2.6rem;
  height: 2.6rem;
  border: #cccccc solid 1px;
  border-radius: 1.3rem;
  background: #ffffff
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  label.form-radio .txt:before {
    border-width: 0.5px
  }
}

label.form-radio .txt:after {
  content: '';
  display: block;
  position: absolute;
  top: 1.6rem;
  left: 0.4rem;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 0.9rem;
  background: #333;
  opacity: 0
}

.form-select {
  position: relative;
  border: #e5e5e5 solid 1px;
  background: #f0f0f0
}

.form-select:after {
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  right: 2rem;
  bottom: 50%;
  z-index: 0;
  width: 0.5rem;
  height: 0.5rem;
  margin-bottom: -0.2rem;
  border-bottom: #000000 solid 1px;
  border-right: #000000 solid 1px
}

.form-select select {
  font-family: "heebo", sans-serif;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 3.8rem;
  margin: 0;
  padding: 0 3rem 0 0.9rem;
  border: none;
  border-radius: 0;
  background: none;
  font-size: 1.2rem;
  line-height: 1;
  outline: 0;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.form-select select::-ms-expand {
  display: none
}

input.form-text.form-valid,
textarea.form-textarea.form-valid {
  background: #ffffff
}

input.form-text.form-invalid,
textarea.form-textarea.form-invalid {
  border-color: #c1141b;
  background: #ffffff
}

input.form-text:-webkit-autofill.form-valid,
textarea.form-textarea:-webkit-autofill.form-valid {
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
  box-shadow: 0 0 0px 1000px #ffffff inset
}

input.form-text:-webkit-autofill.form-invalid,
textarea.form-textarea:-webkit-autofill.form-invalid {
  border-color: #c1141b;
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
  box-shadow: 0 0 0px 1000px #ffffff inset
}

label.form-invalid {
  color: #c6001e;
  font-size: 1.2rem
}

.form-horizontal-list {
  zoom: 1
}

.form-horizontal-list:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.form-horizontal-list li {
  float: left;
  margin-right: 1.5rem
}

.form-checkbox-list {
  zoom: 1;
  padding-top: 0.5rem
}

.form-checkbox-list:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.form-checkbox-list li {
  float: left;
  margin-right: 1.5rem;
  margin-bottom: 1rem
}

.form-checkbox-list li .form-checkbox {
  padding-top: 0;
  padding-left: 3rem
}

.form-checkbox-list li .form-checkbox .checkbox {
  left: 0;
  margin-left: 0;
  top: 0.3rem
}

.form-checkbox-list li .form-checkbox .icon {
  left: 0;
  margin-left: 0;
  top: 0.3rem
}

.form-checkbox-list li .form-checkbox .icon:before {
  left: 0.3rem
}

.form-checkbox {
  display: inline-block;
  position: relative;
  padding-top: 3rem;
  cursor: pointer
}

.form-checkbox .checkbox {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -1rem;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  opacity: 0
}

.form-checkbox .checkbox:checked+.icon:after {
  width: 0
}

.form-checkbox .icon {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -1rem;
  width: 2.1rem;
  height: 2.1rem;
  border: #e6e6e6 solid 1px;
  background: #ffffff
}

.form-checkbox .icon:before {
  content: '\e911';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  position: absolute;
  top: 0.5rem;
  left: 0.1rem;
  width: 100%;
  color: #333;
  font-size: 1rem
}

.form-checkbox .icon:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1.9rem;
  height: 1.9rem;
  background: #ffffff
}

.form-privacy {
  margin-top: 5rem;
  padding: 5rem 0;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  text-align: center
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .form-privacy {
    border-width: 0.5px
  }
}

.form-privacy .txt {
  font-weight: 700
}

.form-privacy a {
  display: block
}

.form-btns {
  margin-top: 5rem;
  padding: 5rem 0;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .form-btns {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .form-input-wrap .icon {
    top: 1.2rem;
    right: 1.1rem;
    width: 1.6rem;
    height: 1.6rem
  }

  input.form-text {
    height: 4rem;
    padding: 0.6rem 4rem 0.6rem 1rem;
    font-size: 1.4rem
  }

  textarea.form-textarea {
    height: 18.5rem;
    padding: 0.6rem 4rem 0.6rem 1rem;
    font-size: 1.4rem
  }

  label.form-radio .txt {
    padding: 0.7rem 0 0.7rem 2.5rem
  }

  label.form-radio .txt:before {
    top: 1rem;
    width: 2rem;
    height: 2rem;
    border-radius: 1rem
  }

  label.form-radio .txt:after {
    top: 1.4rem;
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 0.6rem
  }

  label.form-invalid {
    padding-bottom: 0.5rem;
    font-size: 1rem
  }

  .form-horizontal-list li {
    float: none;
    margin-right: 0
  }

  .form-checkbox-list li {
    float: none;
    margin-right: 0;
    margin-bottom: 0
  }

  .form-checkbox-list li+li {
    margin-top: 1rem
  }

  .form-privacy {
    margin-top: 3;
    padding: 2.5rem 0
  }

  .form-btns {
    margin-top: 3;
    padding: 2.5rem 0
  }
}

.sortEntries__sort.is-hidden {
  display: none
}

.sortEntries__more.is-hidden {
  display: none !important
}

@-webkit-keyframes up {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }

  30% {
    -webkit-transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -130%);
    transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -130%)
  }

  30.1% {
    -webkit-transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%);
    transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%)
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }
}

@keyframes up {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }

  30% {
    -webkit-transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -130%);
    transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -130%)
  }

  30.1% {
    -webkit-transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%);
    transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%)
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }
}

@-webkit-keyframes up2 {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }

  30% {
    -webkit-transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -190%);
    transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -190%)
  }

  30.1% {
    -webkit-transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%);
    transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%)
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }
}

@keyframes up2 {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }

  30% {
    -webkit-transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -190%);
    transform: matrix(1, -0.15, 0.15, 1, 0, 0) translate(0%, -190%)
  }

  30.1% {
    -webkit-transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%);
    transform: matrix(1, 0.15, 0.15, 1, 0, 0) translate(0%, 100%)
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%)
  }
}

.fv__modal {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 0;
  opacity: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden
}

.fv__modal.is-show {
  opacity: 1
}

.fv__modal .modalClose {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block
}

.fv__modal .video {
  position: absolute;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden
}

.fv__modal .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top
}

.fv__modal .video video {
  width: 100%;
  vertical-align: top
}

@media only screen and (max-width: 768px) {
  .fv__modal .video {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
    padding-bottom: 36%
  }

  .fv__modal .modalClose {
    top: auto;
    right: auto;
    bottom: 3rem;
    margin-left: -4.25rem;
    left: 50%;
    width: 8.5rem;
    height: 8.5rem;
    background: rgba(255, 255, 255, 0.25) !important;
    opacity: 1 !important;
    text-align: center;
    border-radius: 50%
  }

  .fv__modal .modalClose:before,
  .fv__modal .modalClose:after {
    content: "";
    width: 3rem;
    height: 1px;
    background: #ffffff;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -1.5rem
  }

  .fv__modal .modalClose:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
  }

  .fv__modal .modalClose:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
  }
}

.mod-modalBtn {
  display: none
}

@media only screen and (max-width: 768px) {
  .mod-modalBtn {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    display: block;
    pointer-events: none;
    -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
  }

  .mod-modalBtn.is-hide {
    opacity: 0
  }

  .mod-modalBtn .mod-modalBtn__cursor {
    -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    -webkit-transition-property: top, left, width, height;
    transition-property: top, left, width, height;
    position: absolute;
    border-radius: 50%;
    background: #ffffff
  }

  .mod-modalBtn .mod-modalBtn__cursor.is-mouseon_video {
    top: -4.25rem;
    left: -4.25rem;
    width: 8.5rem;
    height: 8.5rem;
    background: rgba(255, 255, 255, 0.25) !important;
    opacity: 1 !important;
    text-align: center
  }

  .mod-modalBtn .mod-modalBtn__cursor.is-mouseon_video .arw {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: block;
    position: absolute;
    top: 50%;
    left: 50%
  }

  .mod-modalBtn .mod-modalBtn__cursor.is-mouseon_video .arw:before {
    content: '\e904';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-decoration: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #ffffff
  }

  .mod-modalBtn .mod-modalBtn__cursor.is-mouseon_video .spin {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -5.6rem;
    margin-top: -5.6rem;
    width: 11.2rem;
    height: 11.2rem;
    background: url("../imgs/common/view-video_txt.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    -webkit-animation: spin 10s linear infinite;
    animation: spin 10s linear infinite
  }
}

.mod-btn {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  background-size: contain;
  text-decoration: none;
  position: relative;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #333;
  font-size: 1.4rem;
  font-family: "heebo", sans-serif;
  width: 17rem;
  padding: 1.3rem 0;
  background: #ffffff;
  line-height: 1;
  border: 1px solid #e6e6e6;
  box-sizing: border-box;
  text-align: center
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .mod-btn {
    border-width: 0.5px
  }
}

html.notouch .mod-btn:hover {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
  border-color: #333
}

.mod-btn .arw {
  padding-right: 2rem;
  display: inline-block;
  position: relative
}

.mod-btn .arw:before {
  position: absolute;
  right: -0.2rem;
  top: 50%;
  margin-top: -0.5rem;
  content: '\e110';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #cccccc;
  font-size: 1rem;
  -webkit-transform: scale(0.8);
  transform: scale(0.8)
}

.mod-btn.white {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.3)
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .mod-btn.white {
    border-width: 0.5px
  }
}

html.notouch .mod-btn.white:hover {
  border-color: #fff
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  html.notouch .mod-btn.white:hover {
    border-width: 0.5px
  }
}

.mod-btn.secondary {
  display: block;
  width: 100%;
  max-width: 33rem;
  margin: 0 auto;
  padding: 2.8rem 2rem;
  border-color: transparent;
  background: #333;
  color: #ffffff;
  font-size: 1.6rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif
}

.mod-btn.secondary .arw {
  padding-right: 0
}

.mod-btn.secondary .arw:before {
  display: none
}

.mod-btn.secondary.blank:after {
  display: none
}

.mod-btn.secondary.blank .arw:before {
  margin-top: -0.3rem;
  color: #fff
}

html.notouch .mod-btn.secondary:hover .text-container .text-ov {
  -webkit-animation: up2 0.9s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
  animation: up2 0.9s cubic-bezier(0.215, 0.61, 0.355, 1) forwards
}

.mod-btn[target="_blank"] .arw {
  padding-right: 1.2rem
}

.mod-btn[target="_blank"] .arw:before {
  display: block;
  right: 0;
  margin-top: -0.5rem;
  content: '\e500';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.8rem;
  -webkit-transform: none;
  transform: none;
  color: #333
}

.mod-btn.download .arw {
  padding-right: 1.8rem
}

.mod-btn.download .arw:before {
  display: block;
  right: 0;
  margin-top: -0.5rem;
  content: '\e912';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.8rem;
  -webkit-transform: none;
  transform: none;
  color: #ccc
}

@media only screen and (max-width: 768px) {
  .mod-btn {
    font-size: 1.2rem;
    font-weight: 500;
    width: 13rem;
    padding: 1.5rem 0
  }

  .mod-btn .arw {
    padding-right: 2.5rem
  }

  .mod-btn .arw:before {
    position: absolute;
    right: -0.6rem;
    top: 50%;
    margin-top: -0.5rem;
    content: '\e101';
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-decoration: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1rem;
    -webkit-transform: scale(0.5);
    transform: scale(0.5)
  }

  .mod-btn.white {
    border-color: rgba(255, 255, 255, 0.2)
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-btn.white {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .mod-btn.secondary {
    width: 30rem;
    padding: 2.5rem 0;
    font-size: 1.5rem
  }

  .mod-btn.secondary.blank .arw:before {
    margin-top: -0.3rem
  }
}

.line-link {
  display: inline-block;
  position: relative;
  padding-bottom: 0.2rem;
  text-decoration: none
}

.line-link:after {
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: #000000
}

html.notouch .line-link:hover:after {
  opacity: 0
}

.btn-link {
  font-family: "heebo", sans-serif;
  display: block;
  padding: 2rem 2rem 1.9rem;
  border: #000000 solid 1px;
  border-radius: 3.5rem;
  font-size: 1.6rem;
  text-align: center;
  text-decoration: none
}

html.notouch .btn-link:hover {
  border-color: #333;
  background: #333;
  color: #ffffff
}

@-webkit-keyframes icon-link-before_on {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }

  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0
  }
}

@keyframes icon-link-before_on {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }

  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0
  }
}

@-webkit-keyframes icon-link-after_on {
  0% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }
}

@keyframes icon-link-after_on {
  0% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }
}

@-webkit-keyframes icon-link-before_out {
  0% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }
}

@keyframes icon-link-before_out {
  0% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }
}

@-webkit-keyframes icon-link-after_out {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }

  100% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0
  }
}

@keyframes icon-link-after_out {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }

  100% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0
  }
}

@-webkit-keyframes icon-more-dot_on {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }

  100% {
    -webkit-transform: translateX(1rem);
    transform: translateX(1rem);
    opacity: 0
  }
}

@keyframes icon-more-dot_on {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }

  100% {
    -webkit-transform: translateX(1rem);
    transform: translateX(1rem);
    opacity: 0
  }
}

@-webkit-keyframes icon-more-arw_on {
  0% {
    -webkit-transform: translate(-1rem, -50%);
    transform: translate(-1rem, -50%);
    opacity: 0
  }

  100% {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    opacity: 1
  }
}

@keyframes icon-more-arw_on {
  0% {
    -webkit-transform: translate(-1rem, -50%);
    transform: translate(-1rem, -50%);
    opacity: 0
  }

  100% {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    opacity: 1
  }
}

@-webkit-keyframes icon-more-dot_out {
  0% {
    -webkit-transform: translateX(-1rem);
    transform: translateX(-1rem);
    opacity: 0
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@keyframes icon-more-dot_out {
  0% {
    -webkit-transform: translateX(-1rem);
    transform: translateX(-1rem);
    opacity: 0
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@-webkit-keyframes icon-more-arw_out {
  0% {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    opacity: 1
  }

  100% {
    -webkit-transform: translate(1rem, -50%);
    transform: translate(1rem, -50%);
    opacity: 0
  }
}

@keyframes icon-more-arw_out {
  0% {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    opacity: 1
  }

  100% {
    -webkit-transform: translate(1rem, -50%);
    transform: translate(1rem, -50%);
    opacity: 0
  }
}

a.icon-link {
  -webkit-transition: color 0s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  transition: color 0s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  width: 3.2rem;
  height: 3.2rem;
  color: rgba(0, 0, 0, 0.2);
  text-decoration: none
}

a.icon-link:before,
a.icon-link:after {
  -webkit-transition: opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  transition: opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  transition: transform, opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform, opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  border-radius: 1.6rem
}

a.icon-link:before {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation: icon-link-before_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  animation: icon-link-before_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  -webkit-transform: scale(1);
  transform: scale(1);
  border: rgba(0, 0, 0, 0.2) solid 1px;
  opacity: 1
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  a.icon-link:before {
    border-width: 0.5px
  }
}

a.icon-link:after {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: icon-link-after_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-link-after_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  background: #333;
  opacity: 0
}

a.icon-link .icon {
  display: block;
  overflow: hidden;
  text-indent: -5260px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1
}

a.icon-link .icon:after {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  text-indent: 0;
  text-align: center
}

html.notouch a.icon-link:hover {
  color: #ffffff
}

html.notouch a.icon-link:hover:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: icon-link-before_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-link-before_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  opacity: 0
}

html.notouch a.icon-link:hover:after {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation: icon-link-after_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  animation: icon-link-after_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1
}

a.icon-link.more:before {
  -webkit-transition-delay: .3s;
  transition-delay: .3s;
  -webkit-animation-delay: .3s;
  animation-delay: .3s
}

a.icon-link.more:after {
  -webkit-transition-delay: .1s;
  transition-delay: .1s;
  -webkit-animation-delay: .1s;
  animation-delay: .1s
}

a.icon-link.more .icon:after {
  content: '\e105';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  transition: opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  transition: transform, opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform, opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  -webkit-animation: icon-more-arw_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-more-arw_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transform: translate(1rem, -50%);
  transform: translate(1rem, -50%);
  font-size: 1.2rem;
  opacity: 0
}

a.icon-link.more .icon .dot {
  -webkit-transition: opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  transition: opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  transition: transform, opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform, opacity 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform;
  -webkit-animation: icon-more-dot_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-more-dot_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.4rem;
  height: 0.4rem;
  margin-top: -0.2rem;
  border-radius: 0.2rem;
  background: rgba(0, 0, 0, 0.2);
  opacity: 1
}

a.icon-link.more .icon .dot:first-child {
  -webkit-transition-delay: .6s;
  transition-delay: .6s;
  -webkit-animation-delay: .6s;
  animation-delay: .6s;
  margin-left: -0.8rem
}

a.icon-link.more .icon .dot:nth-child(2) {
  -webkit-transition-delay: .5s;
  transition-delay: .5s;
  -webkit-animation-delay: .5s;
  animation-delay: .5s;
  margin-left: -0.2rem
}

a.icon-link.more .icon .dot:nth-child(3) {
  -webkit-transition-delay: .4s;
  transition-delay: .4s;
  -webkit-animation-delay: .4s;
  animation-delay: .4s;
  margin-left: 0.4rem
}

html.notouch a.icon-link.more:hover:before {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation-delay: .2s;
  animation-delay: .2s
}

html.notouch a.icon-link.more:hover:after {
  -webkit-transition-delay: .4s;
  transition-delay: .4s;
  -webkit-animation-delay: .4s;
  animation-delay: .4s
}

html.notouch a.icon-link.more:hover .icon:after {
  -webkit-transition-delay: .6s;
  transition-delay: .6s;
  -webkit-animation: icon-more-arw_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .5s;
  animation: icon-more-arw_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .5s;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  opacity: 1
}

html.notouch a.icon-link.more:hover .icon .dot {
  -webkit-transform: translateX(1rem);
  transform: translateX(1rem);
  -webkit-animation: icon-more-dot_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-more-dot_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  opacity: 0
}

html.notouch a.icon-link.more:hover .icon .dot:first-child {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation-delay: .2s;
  animation-delay: .2s
}

html.notouch a.icon-link.more:hover .icon .dot:nth-child(2) {
  -webkit-transition-delay: .1s;
  transition-delay: .1s;
  -webkit-animation-delay: .1s;
  animation-delay: .1s
}

html.notouch a.icon-link.more:hover .icon .dot:nth-child(3) {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s
}

a.icon-link.white {
  color: #ffffff
}

a.icon-link.white:before {
  border-color: #ffffff
}

a.icon-link.white:after {
  background: #ffffff
}

a.icon-link.white.more .icon .dot {
  background: #ffffff
}

html.notouch a.icon-link.white:hover {
  color: #333
}

a.icon-link.navy {
  color: rgba(255, 255, 255, 0.3)
}

a.icon-link.navy:before {
  border-color: rgba(255, 255, 255, 0.3)
}

a.icon-link.navy.more .icon .dot {
  background: rgba(255, 255, 255, 0.3)
}

@media only screen and (max-width: 768px) {
  a.icon-link {
    width: 2.6rem;
    height: 2.6rem
  }

  a.icon-link:before,
  a.icon-link:after {
    border-radius: 1.3rem
  }

  a.icon-link.more .icon .dot {
    width: 0.3rem;
    height: 0.3rem;
    margin-top: -0.15rem;
    border-radius: 0.15rem
  }

  a.icon-link.more .icon .dot:first-child {
    margin-left: -0.6rem
  }

  a.icon-link.more .icon .dot:nth-child(2) {
    margin-left: -0.15rem
  }

  a.icon-link.more .icon .dot:nth-child(3) {
    margin-left: 0.3rem
  }

  a.icon-link.sp-red:before {
    border-color: #333
  }

  a.icon-link.sp-red.more .icon .dot {
    background: #333
  }
}

.text-container {
  display: block;
  overflow: hidden
}

html.notouch a:hover .text-container .text-ov,
html.notouch button:hover .text-container .text-ov {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: block;
  -webkit-animation: up 0.9s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
  animation: up 0.9s cubic-bezier(0.215, 0.61, 0.355, 1) forwards
}

@-webkit-keyframes arrow-button__border-over {
  0% {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
  }

  to {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    stroke-dashoffset: 0
  }
}

@keyframes arrow-button__border-over {
  0% {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
  }

  to {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    stroke-dashoffset: 0
  }
}

@-webkit-keyframes arrow-button__border-out {
  0% {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    stroke-dashoffset: 0
  }

  to {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
    stroke-dashoffset: -207.34512px
  }
}

@keyframes arrow-button__border-out {
  0% {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    stroke-dashoffset: 0
  }

  to {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
    stroke-dashoffset: -207.34512px
  }
}

@-webkit-keyframes icon-list-before_on {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    opacity: 1
  }

  100% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    opacity: 0
  }
}

@keyframes icon-list-before_on {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    opacity: 1
  }

  100% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    opacity: 0
  }
}

@-webkit-keyframes icon-list-after_on {
  0% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    opacity: 0
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    opacity: 1
  }
}

@keyframes icon-list-after_on {
  0% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    opacity: 0
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    opacity: 1
  }
}

@-webkit-keyframes icon-list-before_out {
  0% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    opacity: 0
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    opacity: 1
  }
}

@keyframes icon-list-before_out {
  0% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, -140%) scale(0.3);
    opacity: 0
  }

  100% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.3);
    opacity: 1
  }
}

@-webkit-keyframes icon-list-after_out {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    opacity: 1
  }

  100% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    opacity: 0
  }
}

@keyframes icon-list-after_out {
  0% {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    transform: matrix(1, 0, 0, 1, 0, 0) translate(0%, 0%) scale(0.5);
    opacity: 1
  }

  100% {
    -webkit-transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    transform: matrix(1, -0.17, 0.17, 1, 0, 0) translate(0%, 140%) scale(0.5);
    opacity: 0
  }
}

.arrow-button {
  position: relative;
  width: 8rem;
  height: 8rem;
  visibility: inherit
}

.arrow-button.black .arrow-button__border svg {
  stroke: #333
}

.arrow-button.black .list__icon:before,
.arrow-button.black .list__icon:after {
  color: #333
}

.arrow-button.black.more .more__txt {
  color: #333
}

.arrow-button__border {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.arrow-button__border svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  stroke: #ffffff;
  stroke-width: 1px;
  fill: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .arrow-button__border svg {
    stroke-width: 0.5px
  }
}

.arrow-button__border svg:first-child {
  opacity: .2
}

.arrow-button__border svg:last-child {
  stroke-dasharray: 207.34512px 207.34512px;
  stroke-dashoffset: 207.34512px;
  visibility: hidden;
  -webkit-transition: visibility 0s 1.5s;
  transition: visibility 0s 1.5s;
  -webkit-animation: arrow-button__border-out 1.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: arrow-button__border-out 1.5s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.arrow-button.list {
  width: 3.6rem;
  height: 3.6rem
}

.arrow-button.list .list__icon {
  position: absolute;
  text-align: center;
  line-height: 1;
  color: #ffffff;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%
}

.arrow-button.list .list__icon:before,
.arrow-button.list .list__icon:after {
  font-size: 1rem;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: all 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  margin-top: -0.5rem
}

.arrow-button.list .list__icon:before {
  content: '\e908';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: scale(0.3);
  transform: scale(0.3);
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation: icon-list-before_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  animation: icon-list-before_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  margin-left: -2.2rem;
  opacity: 1;
  transition-delay: .2s
}

.arrow-button.list .list__icon:after {
  content: '\e101';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: icon-list-after_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-list-after_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  margin-left: -1.5rem;
  opacity: 0;
  -webkit-transition-delay: 0;
  transition-delay: 0
}

html.notouch a:hover .arrow-button.list .list__icon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: icon-list-before_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-list-before_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  opacity: 0
}

html.notouch a:hover .arrow-button.list .list__icon:after {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation: icon-list-after_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  animation: icon-list-after_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  opacity: 1
}

.arrow-button.index {
  width: 4rem;
  height: 4rem;
  background: #efefef;
  border-radius: 4rem
}

.arrow-button.index .list__icon {
  position: absolute;
  text-align: center;
  line-height: 1;
  color: #333;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%
}

.arrow-button.index .list__icon:before,
.arrow-button.index .list__icon:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: all 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  margin-top: -0.5rem
}

.arrow-button.index .list__icon:before {
  font-size: 1.2rem;
  content: '\e909';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation: icon-list-before_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  animation: icon-list-before_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  margin-left: -0.7rem;
  opacity: 1;
  transition-delay: .2s
}

.arrow-button.index .list__icon:after {
  font-size: 1rem;
  content: '\e103';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: icon-list-after_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-list-after_out .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  margin-left: -1.5rem;
  opacity: 0;
  -webkit-transition-delay: 0;
  transition-delay: 0
}

html.notouch a:hover .arrow-button.index .list__icon:before {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-animation: icon-list-before_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  animation: icon-list-before_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  opacity: 0
}

html.notouch a:hover .arrow-button.index .list__icon:after {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-animation: icon-list-after_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  animation: icon-list-after_on .2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  opacity: 1
}

.arrow-button.more .more__txt {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #ffffff;
  line-height: 1;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  white-space: nowrap
}

html.notouch a:hover .arrow-button .arrow-button__border svg:last-child {
  visibility: inherit;
  -webkit-transition: none;
  transition: none;
  -webkit-animation: arrow-button__border-over 1.5s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
  animation: arrow-button__border-over 1.5s cubic-bezier(0.215, 0.61, 0.355, 1) forwards
}

@media only screen and (max-width: 768px) {
  .arrow-button.list {
    width: 3rem;
    height: 3rem
  }
}

.mod-jobList {
  border-bottom: 1px solid #e5e5e5
}

.mod-jobList .item {
  border-top: 1px solid #e5e5e5
}

.mod-jobList .item.is-open .item__ttl a .btn {
  background: #333
}

.mod-jobList .item.is-open .item__ttl a .btn:before {
  background: #ffffff
}

.mod-jobList .item.is-open .item__ttl a .btn:after {
  opacity: 0
}

html.notouch .mod-jobList .item.is-open .item__ttl a:hover {
  background: transparent;
  padding-left: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transform: scale(1);
  transform: scale(1)
}

html.notouch .mod-jobList .item.is-open .item__ttl a:hover .btn {
  right: 0
}

.mod-jobList .item__ttl a {
  display: block;
  text-decoration: none;
  padding: 4rem 4rem 4rem 0;
  line-height: 1;
  font-size: 2.4rem;
  font-family: "heebo", sans-serif;
  line-height: 1;
  font-weight: 500;
  color: #333;
  position: relative;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.mod-jobList .item__ttl a .btn {
  position: absolute;
  right: 0;
  top: 3.2rem;
  display: block;
  width: 3.8rem;
  height: 3.8rem;
  border-radius: 3.8rem;
  border: 1px solid rgba(51, 51, 51, 0.2);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #ffffff;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.mod-jobList .item__ttl a .btn:before,
.mod-jobList .item__ttl a .btn:after {
  content: "";
  display: block;
  position: absolute;
  background: #333;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.mod-jobList .item__ttl a .btn:before {
  width: 1.4rem;
  height: 2px;
  top: 50%;
  left: 50%;
  margin-top: -1px;
  margin-left: -0.7rem
}

.mod-jobList .item__ttl a .btn:after {
  width: 2px;
  height: 1.4rem;
  top: 50%;
  left: 50%;
  margin-left: -1px;
  margin-top: -0.7rem
}

html.notouch .mod-jobList .item__ttl a:hover {
  background: #ffffff;
  padding-left: 4rem;
  -webkit-box-shadow: 0 0.5rem 3rem rgba(0, 0, 0, 0.05);
  box-shadow: 0 0.5rem 3rem rgba(0, 0, 0, 0.05);
  -webkit-transform: scale(1.02);
  transform: scale(1.02)
}

html.notouch .mod-jobList .item__ttl a:hover .btn {
  right: 4rem
}

.mod-jobList .item__content {
  padding: 2rem 0 5rem
}

.mod-jobList .item__content .container-2colMain .txtArea dl {
  margin-bottom: 3rem;
  padding-left: 3rem;
  border-left: 1px solid #e5e5e5
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .mod-jobList .item__content .container-2colMain .txtArea dl {
    border-width: 0.5px
  }
}

.mod-jobList .item__content .container-2colMain .txtArea dl>dt {
  margin-top: 3rem;
  font-size: 1.6rem;
  margin-bottom: 0.8rem;
  font-family: "heebo", sans-serif;
  font-weight: 500
}

.mod-jobList .item__content .container-2colMain .txtArea dl>dt a {
  text-decoration: none
}

.mod-jobList .item__content .container-2colMain .txtArea dl>dt:first-child {
  margin-top: 0
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-jobList {
    border-bottom: 0.5px solid #e5e5e5
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-jobList .item {
    border-top: 0.5px solid #e5e5e5
  }
}

@media only screen and (max-width: 768px) {
  .mod-jobList .item__ttl a {
    font-size: 1.5rem;
    padding: 3rem 3rem 3rem 0
  }

  .mod-jobList .item__ttl a .btn {
    top: 2rem;
    width: 3rem;
    height: 3rem;
    border-radius: 3rem
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-jobList .item__ttl a .btn {
    border: 0.5px solid rgba(51, 51, 51, 0.2)
  }
}

@media only screen and (max-width: 768px) {
  .mod-jobList .item__ttl a .btn:before {
    width: 0.8rem;
    height: 1px;
    margin-top: 0;
    margin-left: -0.4rem
  }

  .mod-jobList .item__ttl a .btn:after {
    width: 1px;
    height: 0.8rem;
    margin-left: 0;
    margin-top: -0.4rem
  }

  .mod-jobList .item__content {
    padding: 1rem 0 4rem
  }

  .mod-jobList .item__content .container-2colMain .txtArea {
    width: auto
  }

  .mod-jobList .item__content .container-2colMain .txtArea dl {
    margin-bottom: 0rem;
    padding-left: 2.5rem
  }

  .mod-jobList .item__content .container-2colMain .txtArea dl>dt {
    margin-top: 2.5rem;
    font-size: 1.3rem;
    padding-left: 0.8rem;
    border-left: 1px solid #000;
    line-height: 1;
    margin-bottom: 1rem
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-jobList .item__content .container-2colMain .txtArea dl>dt {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .mod-jobList .item__content .container-2colMain .txtArea dl dd {
    font-size: 1.1rem
  }
}

.mod-interviewList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -6rem
}

.mod-interviewList:after {
  content: "";
  display: block;
  width: 30%
}

.mod-interviewList .item {
  width: 30%;
  padding-bottom: 6rem;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) .4s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.mod-interviewList .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.mod-interviewList .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.mod-interviewList .item.is-visible .item__body {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.mod-interviewList .item a {
  display: block;
  text-decoration: none
}

.mod-interviewList .item a.is-none {
  pointer-events: none
}

.mod-interviewList .item__img {
  position: relative;
  margin-bottom: 2.5rem;
  overflow: hidden
}

.mod-interviewList .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.mod-interviewList .item__img .thumbnail {
  padding-bottom: 100%
}

.mod-interviewList .item__pos {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  color: #cccccc;
  font-size: 1.2rem;
  line-height: 1;
  margin-bottom: 1.5rem
}

.mod-interviewList .item__txt {
  line-height: 1.7;
  text-align: justify;
  text-justify: inter-ideograph
}

.mod-interviewList .item__body {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

@media only screen and (max-width: 768px) {
  .mod-interviewList {
    margin-bottom: -3rem
  }

  .mod-interviewList:after {
    display: none
  }

  .mod-interviewList .item {
    width: 47.8%;
    padding-bottom: 3rem
  }

  .mod-interviewList .item__img {
    margin-bottom: 2rem
  }

  .mod-interviewList .item__pos {
    font-size: 1.1rem;
    margin-bottom: 1rem
  }

  .mod-interviewList .item__txt {
    font-size: 1.2rem;
    line-height: 1.5
  }
}

.mod-cliantList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -2.5rem
}

.mod-cliantList:after {
  content: "";
  display: block;
  width: 32%
}

.mod-cliantList .item {
  width: 32%;
  padding-bottom: 2.5rem;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  opacity: 0
}

.mod-cliantList .item.is-visible {
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .mod-cliantList {
    margin-bottom: 0;
    border-left: 1px solid #e6e6e6;
    border-top: 1px solid #e6e6e6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-cliantList {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .mod-cliantList:after {
    display: none
  }

  .mod-cliantList .item {
    width: 50%;
    border-right: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 0
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .mod-cliantList .item {
    border-width: 0.5px
  }
}

.mod-backto {
  background: #ffffff
}

.mod-backto a {
  display: block;
  padding: 21rem 0;
  text-decoration: none;
  position: relative
}

.mod-backto a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: red;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  opacity: 0;
  background: no-repeat top center;
  background-size: cover;
  background-repeat: no-repeat
}

html.notouch .mod-backto a:hover {
  color: #ffffff
}

html.notouch .mod-backto a:hover:before {
  opacity: 1
}

.mod-backto .backto__wrap {
  padding-left: 6rem;
  position: relative
}

.mod-backto .backto__wrap .arrow-button {
  position: absolute;
  top: -0.5rem;
  left: 0
}

.yarpp-related h3 {
  font-family: "heebo", sans-serif;
  font-weight: 500!important;
  font-size: 3rem!important;
  line-height: 1!important;
  margin: 0;
 
}

.mod-backto .backto__wrap .ttl {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 3rem;
  line-height: 1
}

.mod-backto.recruit a:before {
  background-image: url("../imgs/recruit/backto.jpg")
}

.mod-backto.news a:before {
  background-image: url("../imgs/news/backto.jpg")
}

.mod-backto.works a:before {
  background-image: url("../imgs/works/backto.jpg")
}

@media only screen and (max-width: 768px) {
  .mod-backto a {
    padding: 11rem 0
  }

  .mod-backto .backto__wrap .arrow-button {
    top: -1rem
  }

  .mod-backto .backto__wrap .ttl {
    font-size: 2.1rem
  }
}

.mod-table {
  width: 100%
}

.mod-table th,
.mod-table td {
  padding: 2rem 0;
  vertical-align: top
}

.mod-table th {
  font-weight: 700;
  width: 15rem
}

@media only screen and (max-width: 768px) {

  .mod-table {
    font-size: 1.2rem;
    
  }

  .mod-table th,
  .mod-table td {
    padding: 1rem 0;
    vertical-align: top;

  }


  .mod-table th {
    width: 6rem;
    padding-left: 5rem;

  }
}

.interactive-scroller {
  position: fixed;
  z-index: 9;
  top: 0;
  right: 0;
  bottom: 0;
  width: 15rem;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #fff;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  mix-blend-mode: exclusion;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  opacity: 0
}

.interactive-scroller.is-visible {
  opacity: 1
}

.interactive-scroller.is-first .interactive-scroller__cursor {
  top: -40% !important
}

.interactive-scroller.is-first .interactive-scroller__line-container {
  top: 50%
}

.interactive-scroller.is-first .interactive-scroller__line:before {
  background: rgba(255, 255, 255, 0.3)
}

.interactive-scroller.is-first .interactive-scroller__line:after {
  display: block
}

.interactive-scroller.is-bottom {
  opacity: 0
}

.interactive-scroller__layout,
.interactive-scroller__layout-inner {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%
}

.interactive-scroller__layout {
  overflow: hidden
}

.interactive-scroller__over-area,
.interactive-scroller__cursor,
.interactive-scroller__cursor-container,
.interactive-scroller__line-container,
.interactive-scroller__label {
  position: absolute;
  left: 0
}

.interactive-scroller__cursor-container,
.interactive-scroller__line-container {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  height: 16.4rem;
  top: 45%;
  right: 0
}

.interactive-scroller__over-area {
  top: 0;
  bottom: 0;
  right: 0
}

.interactive-scroller__cursor-container {
  z-index: 2
}

.interactive-scroller__line-container {
  -webkit-transition: top .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: top .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.interactive-scroller__cursor {
   -webkit-transition: all .4s linear 0s;
    transition: all .4s linear 0s;
    top: 0;
    left: 50%;
    margin-left: -0.5rem; /* 幅の半分 */
    margin-top: -0.5rem; /* 高さの半分 */
    width: 1rem;
    height: 1rem;
    background-color: currentColor;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    cursor: pointer;
    pointer-events: auto;
    -webkit-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;

    transform: rotate(45deg);
}

.interactive-scroller__label {
  bottom: 100%;
  left: 50%;
  color: currentColor;
  -webkit-transform: scale(-1) translateX(50%) rotateZ(-90deg);
  transform: scale(-1) translateX(50%) rotateZ(-90deg);
  margin-bottom: 2rem;
  font-size: 1.2rem;
  font-family: "heebo", sans-serif
}

@-webkit-keyframes scrollLine {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }

  15% {
    -webkit-transform: translateY(0%);
    transform: translateY(0%)
  }

  30% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }

  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
}

@keyframes scrollLine {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }

  15% {
    -webkit-transform: translateY(0%);
    transform: translateY(0%)
  }

  30% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }

  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
}

.interactive-scroller__line {
  position: relative;
  bottom: 0;
  left: 50%;
  height: 16.4rem;
  width: 1px;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  overflow: hidden
}

.interactive-scroller__line:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  width: 1px;
  height: 100%;
  background: #ffffff
}

.interactive-scroller__line:after {
  -webkit-animation: scrollLine 3s ease-in-out infinite normal;
  animation: scrollLine 3s ease-in-out infinite normal;
  content: '';
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #ffffff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

@media only screen and (max-width: 768px) {
  .interactive-scroller {
    display: none
  }
}

.page-top {
  background: #161618
}

.page-top.content {
  padding-top: 0
}

.page-top .fv {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: relative;
  z-index: 3;
  color: #ffffff;
  background-image: url("../imgs/common/bg.gif");
  background-repeat: repeat;
  background-position: center center;
  padding-bottom: 36rem
}

.page-top .fv .container {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  height: 100%;
  pointer-events: none;
  max-width: 100%;
  padding: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: opacity .4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  will-change: opacity
}

.page-top .fv .container.is-hide {
  opacity: 0
}

.page-top .fv__text {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  /*top: 50%;*/
  top: 30%;
  position: fixed;
  margin-top: -9rem;
  left: 10rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0)
}

@media only screen and (min-width: 1500px) {
  .page-top .fv__text {
    left: 9.5rem
  }
}

.page-top .fv__copy {
  font-size: 10rem;
  line-height: 1;
  color: #ffffff;
  position: relative;
  letter-spacing: 0.12em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal
}

.page-top .fv__copy .en {
  font-size: 2rem;
  font-weight: 500;
  font-family: "heebo", sans-serif;
  letter-spacing: 0.2em;
  position: relative;
  left: 1rem;
  margin-bottom: 1.5rem
}

.page-top .fv__copy .en .c-texteffect__char {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transform: translateY(1rem);
  transform: translateY(1rem)
}

.page-top .fv__copy.is-visible .en .c-texteffect__char {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-top .fv__copy .line {
  position: absolute;
  left: 0.5rem;
  bottom: 0.3rem;
  width: 13.5rem;
  height: 3px;
  opacity: 0; 
}

.page-top .fv__copy .line.is-visible:before {
  width: 100%
}

.page-top .fv__copy .line:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 0;
  height: 100%;
  background: #ffffff;
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s
}

.page-top .fv__copyinner {
  -webkit-transform: translateX(-9rem);
  transform: translateX(-9rem);
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .fv__copyinner.is-visible {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}

.page-top .fv__sub {
  -webkit-transform: rotate(90deg) translateY(-9rem);
  transform: rotate(90deg) translateY(-9rem);
  position: absolute;
  top: 5rem;
  left: -12.8rem;
  z-index: 1;
  font-family: "heebo", sans-serif;
  color: #666666;
  font-size: 1.2rem;
  line-height: 2;
  letter-spacing: 0.1em;
  opacity: 0;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .fv__sub.is-visible {
  opacity: 1;
  -webkit-transform: rotate(90deg) translateY(0rem);
  transform: rotate(90deg) translateY(0rem)
}

.page-top .fv .sns-list {
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  display: block;
  position: absolute;
  top: calc(100vh - 12rem);
  right: 6.3rem;
  z-index: 1;
  opacity: 0
}

.page-top .fv .sns-list>li {
  display: block;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s
}

.page-top .fv .sns-list>li+li {
  margin-top: 0.8rem;
  padding-left: 0
}

.page-top .fv .sns-list.is-visible {
  opacity: 1
}

.page-top .fv .sns-list.is-visible li {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.page-top .fv .sns-list.is-visible.is-hide {
  opacity: 0
}

.page-top .fv__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background-image: url("../imgs/common/bg.gif");
  background-repeat: repeat;
  background-position: center center;
  height: calc(50vh + 3.5rem);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .fv__intro {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #ffffff;
  z-index: 1;
  display: block;
  text-align: center;
  font-size: 4.8rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 0.9;
  opacity: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden
}

.page-top .fv__intro .line {
  display: inline-block;
  position: relative
}

.page-top .fv__intro .line:before {
  content: "";
  bottom: 0rem;
  position: absolute;
  content: "";
  right: 0;
  width: 0;
  height: 1px;
  background: #fff;
  -webkit-transition: width .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: width .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-top .fv__intro.is-visible {
  opacity: 1
}

html.notouch .page-top .fv__intro:hover.is-hover .line:before {
  width: 100%;
  left: 0
}

.page-top .fv__video {
  top: auto;
  bottom: 0;
  position: absolute;
  left: 0;
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: width .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: width .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 0%;
  overflow: hidden;
  background: #17181a
}

.page-top .fv__videoBg {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 100%;
  right: 0
}

.page-top .fv__videoBg.bg1 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  background: #000000
}

.page-top .fv__videoBg.bg2 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  background: #0d0d0d
}

.page-top .fv__video.is-hidden {
  top: auto;
  bottom: 0;
  position: absolute
}

.page-top .fv__video.is-visible {
  width: 100%
}

.page-top .fv__video.is-visible .fv__videoBg {
  width: 0
}

.page-top .fv__video.is-visible .fv__videoWrap {
  opacity: 1
}

.page-top .fv__videoWrap {
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  opacity: 0;
  position: relative;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  pointer-events: none
}

.page-top .fv__video .videolink {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 3
}

.page-top .fv__video iframe {
  position: absolute;
  top: -10%;
  left: -10%;
  right: 0;
  bottom: 0;
  width: 120%;
  height: 120%;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top;
  opacity: 0.5
}

@media only screen and (max-width: 768px) {
  .page-top .fv {
    z-index: 0;
    padding-bottom: 15rem
  }

  .page-top .fv__text {
    top: 20rem;
    margin-top: 0;
    left: 2.5rem;
    width: 100%
  }

  .page-top .fv__copy {

    font-size: 4.1rem;
    line-height: 1.1;
  }

  .page-top .fv__copy .en {

    font-size: 1.1rem;
    letter-spacing: 0.3em;
    left: 0.5rem;
    margin-bottom: 1rem
  }

  .page-top .fv__copy .line {
    left: 0.5rem;
    bottom: -0.3rem;
    width: 7.2rem;
    height: 2px
  }

  .page-top .fv__copyinner {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }

  .page-top .fv__sub {
    top: 5rem;
    left: auto;
    right: 5rem;
    font-size: 1.1rem;
    line-height: 2
  }

  .page-top .fv__intro {
    display: none
  }

  .page-top .fv .sns-list {
    display: none
  }

  .page-top .fv .mod-modalBtn {
    top: auto;
    bottom: 23rem;
    left: 50%;
    display: none
  }

  .page-top .fv__bg {
    height: 28rem
  }

  .page-top .fv__video {
    position: fixed;
    top: 0;
    z-index: 0
  }
}

.page-top .whoweare {
  z-index: 2;
  padding: 20rem 0;
  background-image: url("../imgs/common/bg.gif");
  background-repeat: repeat;
  background-position: center center;
  color: #ffffff;
  overflow: hidden
}

.page-top .whoweare .container {
  max-width: 100rem;
  z-index: 2;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .whoweare__label {
  position: absolute;
  z-index: 1;
  right: 0;
  top: 4.6rem;
  text-decoration: underline;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.page-top .whoweare__txt {
  max-width: 80rem;
  margin: 0 auto;
  text-align: center;
  text-justify: inter-ideograph
}

.page-top .whoweare__txt .txt {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 3.6rem;
  line-height: 1.8;
  letter-spacing: -0.03em
}

.page-top .whoweare__txt .txt .en {
  letter-spacing: -0.03em
}

.page-top .whoweare__txt .txt .stroke {
  color: #333;
  -webkit-text-stroke: 1px #FFF;
  text-stroke: 1px #FFF
}

html.ie11 .page-top .whoweare__txt .txt .stroke {
  text-shadow: #ffffff 1px 1px 0px, #ffffff -1px 1px 0px, #ffffff 1px -1px 0px, #ffffff -1px -1px 0px
}

.page-top .whoweare__txt .txt .item {
  display: inline-block;
  overflow: hidden;
  line-height: 1;
  -webkit-transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .whoweare__txt .txt .item:first-child {
  letter-spacing: 0.02em
}

.page-top .whoweare__txt .txt .item:nth-child(5) {
  letter-spacing: 0.02em
}

.page-top .whoweare__txt .txt .item:nth-child(6) {
  letter-spacing: -0.04em
}

.page-top .whoweare__txt .txt .item:nth-child(7) {
  letter-spacing: 0.02em
}

.page-top .whoweare__txt .txt .item__inner {
  display: inline-block;
  -webkit-transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem)
}

.page-top .whoweare__txt .txt .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .whoweare__txt .txt .item.is-visible .item__inner {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-top .whoweare__txt .txt.sp {
  display: none
}

.page-top .whoweare__btn {
  margin-top: 8rem;
  text-align: center;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-top .whoweare__btn a {
  text-decoration: none;
  font-size: 3.6rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  color: #ffffff;
  line-height: 1
}

.page-top .whoweare__btn a span {
  display: block
}

.page-top .whoweare__bg {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 38rem;
  margin-top: -25rem;
  opacity: 0.5
}

.page-top .whoweare__bg.is-stop {
  position: absolute
}

.page-top .whoweare__bg .bg {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 38rem
}

.page-top .whoweare__bg .bg:before {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 100vw;
  width: 388.8rem;
  height: 38rem;
  background: url("../imgs/top/logo_bg.svg") no-repeat center center;
  background-size: auto 38rem
}



.page-top .whoweare__bg.is-visible .bg:before {
  -webkit-animation: bg-animation 90s linear infinite normal;
  animation: bg-animation 90s linear infinite normal;
}



.page-top .whoweare.is-show .container {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

.page-top .whoweare.is-show .whoweare__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 1s;
  transition-delay: 1s
}

@media only screen and (max-width: 768px) {
  .page-top .whoweare {
    padding: 10rem 0;
    background: #151617
  }

  .page-top .whoweare__label {
    display: none
  }

  .page-top .whoweare__txt {
    margin: 0 2.5rem
  }

  .page-top .whoweare__txt .txt {
    font-size: 2rem;
    position: relative;
    overflow: hidden;
    height: 28rem
  }

  .page-top .whoweare__txt .txt:before {
    content: "";
    left: -10%;
    display: block;
    width: 120%;
    height: 100%;
    position: absolute;
    z-index: 1;
    -webkit-box-shadow: 0px -4rem 4rem 0 #151617 inset;
    box-shadow: 0px -4rem 4rem 0 #151617 inset
  }

  .page-top .whoweare__txt .txt .item {
    display: inline;
    opacity: 1
  }

  .page-top .whoweare__txt .txt .item__inner {
    display: inline
  }

  .page-top .whoweare__txt .txt.sp {
    display: block
  }

  .page-top .whoweare__txt .txt.pc {
    display: none
  }

  .page-top .whoweare__btn {
    margin-top: 4.5rem
  }

  /*.page-top .whoweare__btn a {
    text-decoration: none;
    font-size: 1rem;
    font-family: "heebo", sans-serif;
    font-weight: 500;
    color: #ffffff;
    line-height: 1;
    text-decoration: none;
    width: 8.5rem;
    height: 8.5rem;
    display: block;
    border-radius: 8.5rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.05);
    position: relative;
    margin: 0 auto
  }*/

  .page-top .whoweare__btn a {
    text-decoration: none;
    font-size: 1rem;
    font-family: "heebo", sans-serif;
    font-weight: 500;
    color: #ffffff;
    line-height: 1;
    text-decoration: none;
    width: 9.9rem;
    height: 9.3rem;
    display: block;
   clip-path: polygon(50% 0%, 83% 12%, 100% 43%, 94% 78%, 68% 100%, 32% 100%, 6% 78%, 0% 43%, 17% 12%);
    background: rgba(255, 255, 255, 0.05);
    position: relative;
    margin: 0 auto
}

}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .whoweare__btn a {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .whoweare__btn a span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-decoration: none;
    white-space: nowrap
  }

  .page-top .whoweare__bg {
    display: none
  }

  .page-top .whoweare.is-show .whoweare__btn {
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s
  }
}

.page-top .project {
  z-index: 1;
  display: block;
  padding: 20rem 0;
  text-decoration: none;
  color: #ffffff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden
}

.page-top .project .container {
  max-width: 116rem;
  pointer-events: none
}

.page-top .project__sub {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1;
  margin-bottom: 2rem
}

.page-top .project__ttl {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 4.8rem;
  line-height: 1;
  margin-bottom: 2rem
}

.page-top .project__txt {
  margin-bottom: 2rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-top .project__btn {
  display: inline-block;
  pointer-events: auto;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-top .project__video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  height: 100%;
  background-image: url("../imgs/top/project.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat
}

.page-top .project__video.is-stop {
  position: absolute
}

.page-top .project__video .videolink {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 2
}

.page-top .project__video .video {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 0;
  padding-bottom: 72%
}

.page-top .project__video .video:before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1
}

.page-top .project__video .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top
}

.page-top .project.is-show .project__txt,
.page-top .project.is-show .project__btn {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-top .project {
    z-index: 1;
    padding: 14rem 0;
    background-image: url("../imgs/top/project_sp.jpg");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat
  }

  .page-top .project__sub {
    font-size: 1.2rem;
    margin-bottom: 1.5rem
  }

  .page-top .project__ttl {
    font-size: 2.6rem;
    margin-bottom: 2rem
  }

  .page-top .project__txt {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    color: rgba(255, 255, 255, 0.6)
  }

  .page-top .project__video {
    display: none
  }

  .page-top .project__video .video {
    padding-bottom: 134%
  }
}

.page-top .service {
  z-index: 1;
  overflow: hidden;
  padding: 15rem 0;
  background: #f7f7f7;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: perspective(0);
  transform: perspective(0)
}

.page-top .service .section__ttl {
  margin-bottom: 0
}

.page-top .service__head {
  position: relative
}

.page-top .service__head .head__btn {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.page-top .service__head .head__btn a {
  display: block
}

.page-top .service__head .head__nextback {
  position: absolute;
  right: 9rem;
  bottom: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0
}

.page-top .service__head .head__nextback .service-prev,
.page-top .service__head .head__nextback .service-next {
  outline: none;
  padding: 0 1rem;
  text-decoration: none
}

.page-top .service__head .head__nextback .service-prev:before,
.page-top .service__head .head__nextback .service-next:before {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  font-size: 0.9rem
}

.page-top .service__head .head__nextback .service-prev.swiper-button-disabled,
.page-top .service__head .head__nextback .service-next.swiper-button-disabled {
  pointer-events: none
}

.page-top .service__head .head__nextback .service-prev.swiper-button-disabled:before,
.page-top .service__head .head__nextback .service-next.swiper-button-disabled:before {
  color: rgba(51, 51, 51, 0.2)
}

.page-top .service__head .head__nextback .service-prev:before {
  content: '\e103';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.page-top .service__head .head__nextback .service-next:before {
  content: '\e101';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.page-top .service__slide {
  width: 100rem;
  overflow: inherit;
  margin-left: 0;
  padding-top: 6rem;
  padding-bottom: 9rem;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-top .service__slide.is-next {
  -webkit-transform: translateX(-1rem);
  transform: translateX(-1rem)
}

.page-top .service__slide .tips {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100vw;
  cursor: pointer
}

.page-top .service__slide .slideNext {
  position: absolute;
  z-index: 3;
  right: -100%;
  top: 0;
  display: block;
  width: 100%;
  height: 100%
}

.page-top .service__slide .slidePrev {
  position: absolute;
  z-index: 3;
  left: -100%;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.page-top .service__slide .slideNext.swiper-button-disabled {
  pointer-events: none
}

.page-top .service__slide .slidePrev.swiper-button-disabled {
  pointer-events: none
}

.page-top .service__list {
  zoom: 1;
  position: relative;
  z-index: 2
}

.page-top .service__list:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-top .service__list .item {
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  opacity: 0
}

.page-top .service__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .service__list .item.is-visible .item__txt {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .service__list .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.page-top .service__list .item.is-visible .item__imgInner.is-show {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.page-top .service__list .item a {
  display: block;
  text-decoration: none
}

html.notouch .page-top .service__list .item a:hover .item__img {
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

html.notouch .page-top .service__list .item a:hover .item__imgInner {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.page-top .service__list .item__img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden;
  margin-bottom: 3rem;
  position: relative
}

.page-top .service__list .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-top .service__list .item__imgInner {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: relative;
  z-index: 0;
  padding-bottom: 66.6666%;
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

.page-top .service__list .item__imgInner img {
  position: absolute;
  top: 0;
  left: 0
}

.page-top .service__list .item__txt {
  font-size: 1.4rem;
  line-height: 1.67;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .service__list .item__ttl {
  font-family: "heebo", sans-serif;
  margin-bottom: 2.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
  padding-bottom: 0.3rem;
  position: relative;
  display: inline-block
}

/*.page-top .service__list .item__ttl:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  border-top: 1px solid #333
}*/

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .service__list .item__ttl:before {
    border-width: 0.5px
  }
}

.page-top .service__inner {
  position: relative;
  margin-bottom: 6rem
}

.page-top .service__pagination {
  width: 100%;
  height: 2px;
  background: #e5e5e5;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .service__pagination .swiper-pagination-progressbar-fill {
  background: #161719
}

.page-top .service__btn {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .service.is-show .service__head .head__nextback {
  opacity: 1
}

.page-top .service.is-show .service__head .head__btn {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.page-top .service.is-show .service__pagination {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .service.is-show .service__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-top .service {
    padding: 10rem 0
  }

  .page-top .service .section__ttl {
    margin-bottom: 0
  }

  .page-top .service__head {
    position: relative
  }

  .page-top .service__head .head__btn a {
    background: #ffffff;
    border-radius: 50%
  }

  .page-top .service__head .head__nextback {
    right: 5rem;
    bottom: 0.3rem
  }

  .page-top .service__head .head__nextback .service-prev,
  .page-top .service__head .head__nextback .service-next {
    padding: 0 1rem
  }

  .page-top .service__head .head__nextback .service-prev:before,
  .page-top .service__head .head__nextback .service-next:before {
    font-size: 0.7rem
  }

  .page-top .service__slide {
    width: 25rem;
    margin-left: 0;
    padding-top: 4rem;
    padding-bottom: 4.5rem;
    overflow: inherit
  }

  .page-top .service__slide .tips {
    display: none
  }

  .page-top .service__list .item__img {
    margin-bottom: 1.5rem
  }

  .page-top .service__list .item__txt {
    font-size: 1.2rem
  }

  .page-top .service__list .item__ttl {
    margin-bottom: 1.5rem;
    font-size: 1.5rem
  }

  .page-top .service__list .item__ttl:before {
    height: 1px
  }

  .page-top .service__inner {
    margin-bottom: 4rem
  }

  .page-top .service__pagination {
    height: 1px
  }
}

.page-top .numbersour {
  z-index: 1;
  padding-top: 5rem;
  background: #f7f7f7;
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  padding-bottom: 8rem;/*追加*/

}

.page-top .numbersour__bg {
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 1;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-top .numbersour__bgWrap {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background: url("../imgs/top/ourstrength_bg.jpg") no-repeat top center;
  background-size: cover
}

/*.page-top .numbersour:before {
  position: absolute;
  content: "";
  display: block;
  width: 100rem;
  top: 0;
  left: 50%;
  margin-left: -50rem;
  height: 100%;
  background: #ffffff;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}*/

.page-top .numbersour:after {
  position: absolute;
  z-index: 0;
  content: "";
  display: block;
  width: 100%;
  bottom: 0;
  left: 0;
  height: 15rem;
  /*background: #ffffff*/
}

.page-top .numbersour__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.page-top .numbersour__inner>div {
  width: 50%
}

.page-top .numbersour .numbers {
  padding-right: 6rem
}

.page-top .numbersour .numbers__head {
  position: relative
}

.page-top .numbersour .numbers__head .head__btn {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.page-top .numbersour .numbers__head .head__btn a {
  display: block
}

.page-top .numbersour .numbers__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 4rem
}

.page-top .numbersour .numbers__list .item {
  width: 46.2962%;
  padding: 8rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  position: relative
}

.page-top .numbersour .numbers__list .item .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 1px;
  left: 0;
  background: #ccc
}

.page-top .numbersour .numbers__list .item .shooting-line.top {
  top: 0
}

.page-top .numbersour .numbers__list .item .shooting-line.bottom {
  bottom: 0
}

.page-top .numbersour .numbers__list .item .shooting-line:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #333;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .numbersour .numbers__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .numbersour .numbers__list .item.is-visible .shooting-line:before {
  -webkit-animation: shooting 0.6s ease-in-out normal 0.5s;
  animation: shooting 0.6s ease-in-out normal 0.5s
}

.page-top .numbersour .numbers__list .item.reach .item__icon:before {
  width: 3.6rem;
  height: 3.6rem;
  background-image: url("../imgs/common/seen_icon1.svg")
}

.page-top .numbersour .numbers__list .item.likes .item__icon:before {
  width: 5.2rem;
  height: 4.2rem;
  background-image: url("../imgs/common/seen_icon2.svg")
}

.page-top .numbersour .numbers__list .item.engagement .item__icon:before {
  width: 3.6rem;
  height: 3.5rem;
  background-image: url("../imgs/common/seen_icon3.svg")
}

.page-top .numbersour .numbers__list .item.followers .item__icon:before {
  width: 3.5rem;
  height: 3.5rem;
  background-image: url("../imgs/common/seen_icon4.svg")
}

.page-top .numbersour .numbers__list .item .item__icon {
  width: 8.4rem;
  height: 8.4rem;
  border-radius: 8.4rem;
  background: #000;
  -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
  margin-right: 1.5rem;
  position: relative
}

.page-top .numbersour .numbers__list .item .item__icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain
}

.page-top .numbersour .numbers__list .item__ttl {
  width: calc(100% - 9.9rem);
  letter-spacing: -0.02em;
  line-height: 1
}

.page-top .numbersour .numbers__list .item__ttl .num {
  font-family: "heebo", sans-serif;
  font-size: 2rem;
  font-weight: bold;
}

.page-top .numbersour .numbers__list .item__ttl .num span {
  font-family: "heebo", sans-serif;
  font-size: 1.4rem;
  padding-left: 0.3rem
}

.page-top .numbersour .numbers__list .item__ttl .ttl {
  margin-top: 0.5rem;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1.4
}

.page-top .numbersour .numbers__txt {
  margin-bottom: 5rem;
  color: #333333;
  font-size: 1.2rem
}

.page-top .numbersour .numbers__txt .ttl{
    margin-top: 0.5rem;
    font-weight: 700;
    font-size: 1.4rem;
  
}

.card_box{
    display: flex;
    margin-top: 2rem;
}

.credit1:after {
  content: '\eaf9';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-right: 1rem;
  font-size: 3rem;
  vertical-align: middle;
  position: relative;
  top: -0.8rem;

}

.credit2:after {
  content:'\eaf10';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-right: 1rem;
  font-size: 3rem;
  vertical-align: middle;
  position: relative;
  top: -0.8rem;

}

.credit3:after {
  content: '\eaf11';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-right: 1rem;
  font-size: 3rem;
  vertical-align: middle;
  position: relative;
  top: -0.8rem;

}

.credit4:after {
  content: '\eaf12';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-right: 1rem;
  font-size: 3rem;
  vertical-align: middle;
  position: relative;
  top: -0.8rem;

}

.credit5:after {
  content: '\eaf13';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  margin-right: 1rem;
  font-size: 3rem;
  vertical-align: middle;
  position: relative;
  top: -0.8rem;

}


.page-top .numbersour .numbers__btn {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .numbersour .ourstrength {
  position: relative;
  z-index: 1;
  padding-left: 6rem;
  padding-top: 15rem;
  padding-bottom: 15rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .numbersour .ourstrength .section__ttl {
  color: #ffffff
}

.page-top .numbersour .ourstrength__head {
  position: relative
}

.page-top .numbersour .ourstrength__head .head__btn {
  position: absolute;
  right: 0;
  bottom: 0
}

.page-top .numbersour .ourstrength__head .head__btn a {
  display: block
}

.page-top .numbersour .ourstrength__content {
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(0, 0, 0, 0.3);
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  color: #ffffff;
  padding: 7rem
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .numbersour .ourstrength__content {
    border-width: 0.5px
  }
}

.page-top .numbersour .ourstrength__list .item+.item {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  margin-top: 4rem;
  padding-top: 4rem
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .numbersour .ourstrength__list .item+.item {
    border-width: 0.5px
  }
}

.page-top .numbersour .ourstrength__list .item__ttl {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1rem;
  line-height: 1.4
}

.page-top .numbersour .ourstrength__list .item__txt {
  line-height: 1.7
}

.page-top .numbersour.is-show:before {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .numbersour.is-show .numbersour__bg {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .numbersour.is-show .ourstrength__content {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .numbersour.is-show .head__btn {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.page-top .numbersour.is-show .numbers__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-top .numbersour {
    padding-top: 0;
    background: #ffffff;
    position: relative;
    padding-bottom: 10rem;
  }

  .page-top .numbersour__bg {
    display: none
  }

  .page-top .numbersour:before {
    display: none
  }

  .page-top .numbersour:after {
    display: none
  }

  .page-top .numbersour__inner {
    display: block
  }

  .page-top .numbersour__inner>div {
    width: auto
  }

  .page-top .numbersour .numbers {
    padding: 10rem 0 10rem
  }

  .page-top .numbersour .numbers__head {
    position: relative
  }

  .page-top .numbersour .numbers__head .section__ttl {
    margin-bottom: 0;
    position: relative;
    margin-top: -1rem
  }

  .page-top .numbersour .numbers__head .head__btn {
    display: none
  }

  .page-top .numbersour .numbers__head .icon {
    -webkit-transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
    transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
    transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
    transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
    -webkit-transform: scale(0);
    transform: scale(0)
  }

  .page-top .numbersour .numbers__head .icon {
    top: 0.7rem
  }

  .page-top .numbersour .numbers__body {
    padding-top: 4rem
  }

  .page-top .numbersour .numbers__list {
    display: block;
    margin-bottom: 2rem
  }

  .page-top .numbersour .numbers__list .item {
    width: 100%;
    padding: 3rem 0
  }

  .page-top .numbersour .numbers__list .item:nth-child(2) .shooting-line.top {
    display: none
  }

  .page-top .numbersour .ourstrength {
    margin: -1.5rem;
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 0
  }

  .page-top .numbersour .ourstrength__inner {
    padding: 10rem 1.5rem 10rem;
    background: url("../imgs/top/ourstrength_bg.jpg") no-repeat top center;
    background-size: cover
  }

  .page-top .numbersour .ourstrength__head .head__btn {
    display: none
  }

  .page-top .numbersour .ourstrength__content {
    padding: 2.5rem 2.5rem
  }

  .page-top .numbersour .ourstrength__list .item+.item {
    margin-top: 2rem;
    padding-top: 2rem
  }

  .page-top .numbersour .ourstrength__list .item__ttl {
    font-size: 1.6rem
  }

  .page-top .numbersour .ourstrength__list .item__txt {
    font-size: 1.2rem
  }

  .page-top .numbersour.is-show .icon {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

.page-top .news {
  z-index: 3;
  background: #fff
}

.page-top .news .container {
  padding-top: 15rem;
  padding-bottom: 15rem
}

.page-top .news__head {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 9rem
}

.page-top .news__head .section__ttl {
  margin-right: 12rem;
  margin-bottom: 0
}

.page-top .news__head .section__menu {
  position: relative;
  top: 4rem;
  -webkit-transition: opacity .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: opacity .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  opacity: 0
}

.page-top .news__head .head__btn {
  position: absolute;
  right: 0;
  top: 4rem;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.page-top .news__head .head__btn a {
  display: block
}

.page-top .news__listWrap {
  position: relative
}

.page-top .news__more {
  width: 48%;
  margin-left: auto;
  position: relative;
  text-align: center
}

.page-top .news__more a {
  display: inline-block
}

.page-top .news__list {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  zoom: 1
}

.page-top .news__list:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-top .news__list>.item {
  width: 47.5%;
  -webkit-transition: none;
  transition: none;
  margin-right: 0;
  margin-bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: -webkit-sticky;
  position: sticky;
  z-index: 1;
  top: 7rem;
  float: left
}

html.isMS .page-top .news__list>.item {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-top .news__list>.item .item__ttl {
  font-size: 3.8rem;
  line-height: 1.26
}

@media only screen and (max-height: 767px) {
  .page-top .news__list>.item .item__ttl {
    font-size: 3rem
  }
}

.page-top .news__list>.item .item__date {
  font-size: 1.2rem
}

.page-top .news__list>.item .item__cat {
  font-size: 1.2rem
}

.page-top .news__list>.item .item__imgInner.first {
  display: block
}

.page-top .news__list>.item .item__imgInner.select {
  display: none
}

.page-top .news__list .rightWrapList {
  width: 47.5%;
  float: right
}

.page-top .news__list .rightWrapList .item.width {
  width: 45%;
  margin: 0 5% 6rem 0
}

.page-top .news__list .item {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  display: block
}

.page-top .news__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .news__list .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.page-top .news__list .item.is-visible .item__imgInner.is-show {
  -webkit-transform: scale(1.01);
  transform: scale(1.01)
}

.page-top .news__list .item.is-visible .item__body {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-top .news__list .item a {
  display: block;
  width: 100%;
  text-decoration: none
}

html.notouch .page-top .news__list .item a:hover .item__img {
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

html.notouch .page-top .news__list .item a:hover .item__imgInner {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.page-top .news__list .item__imgInner.first {
  display: none
}

.page-top .news__list .item__img {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.page-top .news__list .item__imgInner {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: relative;
  z-index: 0;
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

.page-top .news__list .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-top .news__list .item__body {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .news__list .item__ttl {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 3rem
}

.page-top .news__list .item__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.page-top .news__list .item__date {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1;
  color: #999999
}

.page-top .news__list .item__cat {
  zoom: 1;
  font-family: "heebo", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  padding-right: 1.8rem;
  margin-right: 1.8rem;
  border-right: 1px solid #cccccc
}

.page-top .news__list .item__cat:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .news__list .item__cat {
    border-width: 0.5px
  }
}

.page-top .news__list .item__cat li {
  float: left;
  color: #333;
  position: relative;
  line-height: 1
}

.page-top .news__list .item__cat li:before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #333;
  bottom: -0.6rem
}

.page-top .news__list .item__cat li+li {
  margin-left: 1rem
}

.page-top .news.is-show .news__head .head__btn {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.page-top .news.is-show .section__menu {
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-top .news .container {
    padding-top: 10rem;
    padding-bottom: 10rem
  }

  .page-top .news__head {
    display: block;
    margin-bottom: 4rem
  }

  .page-top .news__head .section__ttl {
    margin-right: 0;
    margin-bottom: 2.5rem
  }

  .page-top .news__head .section__menu {
    position: relative;
    top: 0
  }

  .page-top .news__head .head__btn {
    background: #f7f7f7;
    border-radius: 50%;
    top: 1rem
  }

  .page-top .news__more {
    margin-top: 5rem;
    width: auto;
    margin-left: 0
  }

  .page-top .news__more a {
    background: #f7f7f7;
    border-radius: 50%;
    display: inline-block;
    border: 1px solid #e6e6e6
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .news__more a {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .news__more a .arrow-button__border svg {
    display: none
  }

  .page-top .news__list {
    width: auto;
    margin-left: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 -1.5rem;
    display: block
  }

  .page-top .news__list .rightWrapList {
    float: none;
    width: auto;
    height: auto !important
  }

  .page-top .news__list .rightWrapList .item {
    width: auto !important;
    position: static !important
  }

  .page-top .news__list .rightWrapList .item.width {
    margin: 0 1.5rem
  }

  .page-top .news__list .item {
    padding: 2.4rem 0;
    margin: 0 1.5rem;
    border-bottom: 1px solid #e6e6e6
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .news__list .item {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .news__list .item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .page-top .news__list .item__img {
    border: none;
    margin-bottom: 0;
    width: 10rem
  }

  .page-top .news__list .item__img img {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid rgba(51, 51, 51, 0.1)
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .news__list .item__img img {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .news__list .item__body {
    width: calc(100% - 11.5rem)
  }

  .page-top .news__list .item__ttl {
    font-size: 1.6rem;
    line-height: 1.18;
    margin-bottom: 1.2rem
  }

  .page-top .news__list .item__date {
    font-size: 0.9rem
  }

  .page-top .news__list .item__cat {
    font-size: 0.9rem;
    padding-right: 0.9rem;
    margin-right: 0.9rem
  }

  .page-top .news__list .item__cat li:before {
    bottom: -0.3rem
  }

  .page-top .news__list>.item {
    width: auto;
    margin: 0;
    padding: 0;
    border-bottom: none;
    height: auto;
    position: static;
    float: none
  }

  .page-top .news__list>.item .item__ttl {
    font-size: 3.1rem;
    line-height: 1.1;
    margin-bottom: 2rem
  }

  .page-top .news__list>.item .item__body {
    margin: 0 1.5rem;
    padding-bottom: 4rem;
    width: 100%;
    box-sizig: border-box;
    border-bottom: 1px solid #e6e6e6
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .news__list>.item .item__body {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .news__list>.item .item__img {
    width: auto;
    margin-bottom: 2rem
  }

  .page-top .news__bg {
    display: none
  }
}

.page-top .officeOuter {
  position: relative;
  z-index: 2;
  overflow: hidden
}

.page-top .office {
  z-index: 2;
  margin-bottom: 4rem;
  background: #fff
}

.page-top .office:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: 100%;
  right: 0;
  bottom: -1px;
  height: 15rem;
  background: #222326
}

.page-top .office .container {
  width: 80rem;
  padding: 0;
  position: relative
}

.page-top .office .container:before,
.page-top .office .container:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 100%
}

.page-top .office .container:before {
  height: 100%;
  background: #ffffff;
  top: -2px;
  left: -100%
}

.page-top .office .container:after {
  z-index: 3;
  left: -100%;
  bottom: -1px;
  height: 15rem;
  background: #222326
}

.page-top .office__slide {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: inherit;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-top .office__slide.is-next {
  -webkit-transform: translateX(-1rem);
  transform: translateX(-1rem)
}

.page-top .office__slide .office-next {
  position: absolute;
  z-index: 4;
  right: -100%;
  width: 100%;
  height: 100%
}

.page-top .office__slide .office-next.swiper-button-disabled {
  pointer-events: none
}

.page-top .office__pagination {
  position: absolute;
  text-align: right;
  z-index: 3;
  right: 0;
  bottom: -3rem;
  color: #ffffff;
  line-height: 1;
  font-size: 1rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 5rem;
  opacity: 0.5
}

.page-top .office__pagination:before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -0.6rem;
  content: "";
  display: block;
  width: 1.2rem;
  margin-top: -1px;
  height: 1px;
  background: #ffffff
}

.page-top .office__pagination .pagination__current {
  width: 50%
}

.page-top .office__pagination .pagination__current .num {
  position: absolute;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .office__pagination .pagination__current .num.is-show {
  opacity: 1
}

.page-top .office__pagination .pagination__total {
  width: 50%
}

.page-top .office__cap {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1;
  position: absolute;
  z-index: 3;
  left: -2rem;
  top: 0;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .office__cap .cap {
  position: absolute;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .office__cap .cap.is-show {
  opacity: 1
}

.page-top .office__list {
  zoom: 1;
  position: relative;
  z-index: 3
}

.page-top .office__list:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-top .office__list .item {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden
}

.page-top .office__list .item__img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden
}

.page-top .office__list .item__imgInner {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: relative;
  z-index: 0;
  padding-bottom: 66.6666%
}

.page-top .office__list .item__imgInner img {
  position: absolute;
  top: 0;
  left: 0
}

@media only screen and (max-width: 768px) {
  .page-top .officeOuter {
    z-index: 3;
    top: -2px
  }

  .page-top .office {
    margin-bottom: 5rem;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    background: #ffffff;
    position: relative
  }

  .page-top .office:before {
    height: 5rem
  }

  .page-top .office .container {
    width: 75%
  }

  .page-top .office .container:after {
    height: 5rem
  }

  .page-top .office__pagination {
    bottom: -1.5rem;
    font-size: 0.6rem;
    width: 5rem;
    opacity: 1
  }

  .page-top .office__pagination:before {
    margin-left: -0.3rem;
    margin-top: -1px;
    width: 0.75rem;
    height: 1px;
    background: rgba(255, 255, 255, 0.1)
  }

  .page-top .office__pagination .pagination__total {
    color: rgba(255, 255, 255, 0.1)
  }

  .page-top .office__cap {
    font-size: 0.8rem;
    left: -1rem
  }
}

.page-top .join {
  background: #222326;
  z-index: 1
}

.page-top .join:before {
  content: '';
  display: block;
  position: absolute;
 /* top: -20.9rem;*/
  right: 0;
  left: 0;
  z-index: -1;
  height: 100%;
  background-color: #222326
}

.page-top .joinInner {
  overflow: hidden
}

.page-top .join .container {
  padding-top: 10rem;
  padding-bottom: 15rem
}

.page-top .join__head {
  z-index: 3;
  width: 20.5rem;
  color: #ffffff;
  position: absolute;
  top: 0;
  padding-top: 10rem;
  padding-bottom: 15rem
}

.page-top .join__head.is-fixed {
  position: fixed
}

.page-top .join__head.is-bottom {
  position: absolute;
  top: auto;
  bottom: 0
}

.page-top .join .section__ttl {
  margin-bottom: 2rem
}

.page-top .join__txt {
  font-size: 1.2rem;
  margin-bottom: 3rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-top .join__btn {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-top .join__btn .mod-btn {
  height: 4rem
}

.page-top .join__body {
  /*padding-top: 6.5rem;*/
  width: 89.5rem;
  margin-left: auto;
  position: relative;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

@media only screen and (max-width: 1200px) {
  .page-top .join__body {
    width: 80rem
  }
}

.page-top .join__body:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  top: 0;
  left: -100%
}

.page-top .join__body .acArea {
  padding-bottom: 3rem;
  border-bottom: 1px solid #ffffff;
  margin-bottom: 5rem
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .join__body .acArea {
    border-width: 0.5px
  }
}

.page-top .join__body .acArea .item.is-open .item__ttl a .btn {
  background: #4a4b4d;
  border-color: #4a4b4d
}

.page-top .join__body .acArea .item.is-open .item__ttl a .btn:after {
  visibility: hidden
}

.page-top .join__body .acArea .item__ttl a {
  display: inline-block;
  text-decoration: none;
  padding: 2rem 3rem 2rem 0;
  line-height: 1;
  font-size: 1.6rem;
  color: #ffffff;
  position: relative;
  font-family: "heebo", sans-serif;
  font-weight: 500
}

.page-top .join__body .acArea .item__ttl a .btn {
  position: absolute;
  right: 0;
  top: 1.8rem;
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .join__body .acArea .item__ttl a .btn {
    border-width: 0.5px
  }
}

.page-top .join__body .acArea .item__ttl a .btn:before,
.page-top .join__body .acArea .item__ttl a .btn:after {
  content: "";
  display: block;
  position: absolute;
  background: #ffffff
}

.page-top .join__body .acArea .item__ttl a .btn:before {
  width: 0.8rem;
  height: 1px;
  top: 50%;
  left: 50%;
  margin-left: -0.4rem
}

.page-top .join__body .acArea .item__ttl a .btn:after {
  width: 1px;
  height: 0.8rem;
  top: 50%;
  left: 50%;
  margin-left: -1px;
  margin-top: -0.4rem
}

.page-top .join__body .acArea .item__content {
  color: #ffffff
}

.page-top .join__body .acArea .item__content .optionList {
  margin-top: 3rem;
  margin-bottom: 3rem;
  padding-left: 3rem;
  border-left: 1px solid #333333
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-top .join__body .acArea .item__content .optionList {
    border-width: 0.5px
  }
}

.page-top .join__body .acArea .item__content .optionList li+li {
  margin-top: 3rem
}

.page-top .join__body .acArea .item__content .optionList li .ttl {
  font-size: 1.2rem;
  margin-bottom: 0.8rem;
  font-family: "heebo", sans-serif;
  font-weight: 500
}

.page-top .join__body .acArea .item__content .optionList li .ttl a {
  color: #ffffff;
  text-decoration: none
}

.page-top .join__body .acArea .item__content .optionList li .body {
  font-size: 1.2rem;
  color: #b6b0b0

}

.page-top .join__body .interview .swiper-container {
  overflow: inherit
}

.page-top .join__body .interview .interview-next {
  position: absolute;
  z-index: 2;
  right: -100%;
  width: 100%;
  height: 100%
}

.page-top .join__body .interview .interview-next.swiper-button-disabled {
  pointer-events: none
}

.page-top .join__body .interview__ttl {
  font-family: "heebo", sans-serif;
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 3rem
}

.page-top .join__body .interview__slide {
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-top .join__body .interview__slide.is-next {
  -webkit-transform: translateX(-1rem);
  transform: translateX(-1rem)
}

.page-top .join__body .interview__list .item {
  width: 22.3rem
}

.page-top .join__body .interview__list .item a {
  display: block;
  text-decoration: none;
  color: #ffffff
}

.page-top .join__body .interview__list .item a.is-none {
  pointer-events: none
}

.page-top .join__body .interview__list .item__img {
  margin-bottom: 1.7rem
}

.page-top .join__body .interview__list .item__img .thumbnail {
  padding-bottom: 100%
}

.page-top .join__body .interview__list .item__body {
  padding-right: 2rem
}

.page-top .join__body .interview__list .item__pos {
  font-size: 1rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  color: #666666;
  line-height: 1;
  margin-bottom: 1rem
}

.page-top .join__body .interview__list .item__txt {
  font-size: 1.2rem;
  line-height: 1.6
}

.page-top .join.is-show .join__txt,
.page-top .join.is-show .join__btn,
.page-top .join.is-show .join__body {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-top .join:before {
    top: -10rem
  }

  .page-top .join .container {
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 10rem;
    display: block
  }

  .page-top .join__head {
    position: static;
    width: auto;
    padding: 0;
    margin-bottom: 6rem
  }

  .page-top .join__head.is-fixed {
    position: static
  }

  .page-top .join__head.is-bottom {
    position: static
  }

  .page-top .join .section__ttl {
    margin-bottom: 2.5rem
  }

  .page-top .join__txt {
    margin-bottom: 2.5rem;
    font-size: 1.2rem;
    color: rgba(255, 255, 255, 0.6)
  }

  .page-top .join__btn .mod-btn {
    height: auto
  }

  .page-top .join__body {
    padding-top: 0;
    width: auto
  }

  .page-top .join__body .acArea {
    padding-top: 3rem;
    padding-bottom: 3rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    margin-bottom: 5rem
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .join__body .acArea {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .join__body .acArea .item__ttl a {
    display: block;
    padding: 2rem 3rem 2rem 0;
    font-size: 1.5rem;
    font-weight: 700
  }

  .page-top .join__body .acArea .item__ttl a .btn {
    position: absolute;
    right: 0;
    top: 1.5rem;
    display: block;
    width: 3rem;
    height: 3rem;
    border-radius: 3rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.1)
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .join__body .acArea .item__ttl a .btn {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .join__body .acArea .item__content .optionList {
    margin-top: 2rem;
    margin-bottom: 2rem;
    padding-left: 2.5rem
  }

  .page-top .join__body .acArea .item__content .optionList li+li {
    margin-top: 2rem
  }

  .page-top .join__body .acArea .item__content .optionList li .ttl {
    font-size: 1.3rem;
    padding-left: 0.8rem;
    border-left: 1px solid #ffffff;
    line-height: 1;
    margin-bottom: 1rem
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-top .join__body .acArea .item__content .optionList li .ttl {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-top .join__body .interview {
    width: 25rem;
    overflow: inherit
  }

  .page-top .join__body .interview__ttl {
    font-size: 1.5rem;
    margin-bottom: 3rem
  }

  .page-top .join__body .interview__list .item {
    width: auto
  }

  .page-top .join__body .interview__list .item__img {
    margin-bottom: 2rem
  }

  .page-top .join__body .interview__list .item__body {
    padding-right: 0
  }

  .page-top .join__body .interview__list .item__pos {
    font-size: 0.9rem;
    margin-bottom: 1.2rem
  }

  .page-top .join__body .interview__list .item__txt {
    font-size: 1.3rem;
    line-height: 1.38
  }
}

.page-top .company {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 2;
  position: relative;
  border-bottom: 1px solid rgba(51, 51, 51, 0.1);
  background: #fff;
  overflow: hidden
}

.page-top .company:before,
.page-top .company:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 1px;
  height: 100%;
  background: rgba(51, 51, 51, 0.1)
}

.page-top .company:before {
  left: 33.3333%
}

.page-top .company:after {
  left: 66.6666%
}

.page-top .company .section__ttl {
  margin-bottom: 3rem
}

.page-top .company>.section {
  width: 33.3333%;
  text-align: center;
  height: 70rem
}

.page-top .company .section.profile .company__bg {
  background-image: url("../imgs/top/profile_bg.jpg")
}

.page-top .company .section.history .company__bg {
  background-image: url("../imgs/top/history_bg.jpg")
}

.page-top .company .section.presskit .company__bg {
  background-image: url("../imgs/top/presskit_bg.jpg")
}

.page-top .company a {
  height: 100%;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: block;
  text-decoration: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-top .company a:hover .company__content {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  top: 50%
}

.page-top .company a:hover .section__ttl {
  color: #ffffff
}

.page-top .company a:hover .arrow-button {
  display: none
}

.page-top .company a:hover .company__txt {
  color: #ffffff;
  display: block
}

.page-top .company a:hover .company__bg {
  opacity: 1
}

.page-top .company__content {
  position: absolute;
  z-index: 1;
  width: 100%;
  top: calc(50% - 6.8rem);
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: margin-top, -webkit-transform;
  transition-property: margin-top, -webkit-transform;
  transition-property: margin-top, transform;
  transition-property: margin-top, transform, -webkit-transform
}

.page-top .company .arrow-button {
  display: inline-block
}

.page-top .company__txt {
  font-size: 1.2rem;
  line-height: 2;
  display: none;
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.page-top .company__bg {
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover
}

@media only screen and (max-width: 768px) {
  .page-top .company {
    display: none
  }
}

.page-top .cliant {
  background: #fff;
  z-index: 2
}

.page-top .cliant .container {
  padding-top: 15rem;
  padding-bottom: 8rem;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-top .cliant__head {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  z-index: 3;
  top: 0;
  left: 7rem;
  width: 20.5rem;
  position: -webkit-sticky;
  position: sticky;
  top: 10rem;
  height: 100%;
  float: left
}

html.ie11 .page-top .cliant__head {
  height: auto
}

.page-top .cliant .section__ttl {
  margin-bottom: 2rem
}

.page-top .cliant__txt {
  margin-bottom: 3rem;
  font-size: 1.2rem;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .cliant__btn {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-top .cliant__body {
  margin-top: -7rem;
  width: 89.5rem;
  margin-left: auto;
  position: relative
}

.page-top .cliant.is-show .cliant__txt,
.page-top .cliant.is-show .cliant__btn,
.page-top .cliant.is-show .container {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-top .cliant .container {
    padding-top: 10rem;
    padding-bottom: 10rem
  }

  .page-top .cliant__head {
    position: static;
    width: auto;
    padding: 0;
    float: none
  }

  .page-top .cliant .section__ttl {
    margin-bottom: 3rem
  }

  .page-top .cliant__txt {
    display: none
  }

  .page-top .cliant__btn {
    display: none
  }

  .page-top .cliant__body {
    margin-top: 0;
    width: auto;
    margin-left: auto;
    position: relative
  }

  .page-top .cliant__body .img {
    width: auto;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #e5e5e5
  }
}

.page-newsIndex .content__body {
  padding-bottom: 8rem;
  position: relative;
  z-index: 3
}

.page-newsIndex .section__menu .list {
  display: block
}

.page-newsIndex .section__menu .list li {
  display: block;
  font-weight: normal;
  color: rgba(51, 51, 51, 0.3)
}

.page-newsIndex .section__menu .list li+li {
  margin-top: 1.4rem;
  padding-left: 0
}

.page-newsIndex .section__menu .list li a,
.page-newsIndex .section__menu .list li label .txt {
  line-height: 1;
  padding: 0
}

.page-newsIndex .section__menu .list li a .line,
.page-newsIndex .section__menu .list li label .txt .line {
  padding: 0 0 0.2rem 0
}

.page-newsIndex .section__menu .list li.is-current a,
.page-newsIndex .section__menu .list li label input[type="radio"].selected+.txt,
.page-newsIndex .section__menu .list li label input[type="radio"]:checked+.txt {
  font-weight: 500;
  color: #333
}

.page-newsIndex .side__category {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #333
}

.page-newsIndex .side .selectbox {
  display: block;
  zoom: 1;
  position: relative;
  height: 3.4rem;
  font-size: 1.3rem;
  font-family: "heebo", sans-serif;
  font-weight: 400
}

.page-newsIndex .side .selectbox .selectbox__select {
  width: 100%;
  height: 3.4rem;
  border: solid #e6e6e6 1px;
  background: #f7f7f7;
  display: inline-block;
  zoom: 1;
  color: #262626;
  text-decoration: none;
  cursor: default;
  margin: 0;
  line-height: 3.4rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 1rem;
  border-radius: 1rem
}

.page-newsIndex .side .selectbox .selectbox__select .selectbox__select__text {
  cursor: default
}

.page-newsIndex .side .selectbox .selectbox__select .icon {
  position: absolute;
  right: 0.7rem;
  top: 0.6rem;
  width: 1.9rem;
  height: 1.9rem;
  border: solid #e6e6e6 1px;
  border-radius: 2rem;
  background: #ffffff
}

.page-newsIndex .side .selectbox .selectbox__select .icon:before,
.page-newsIndex .side .selectbox .selectbox__select .icon:after {
  position: absolute;
  content: "";
  display: block;
  background: #333;
  left: 50%;
  top: 50%
}

.page-newsIndex .side .selectbox .selectbox__select .icon:before {
  width: 7px;
  height: 1px;
  margin-left: -3px;
  margin-top: -1px
}

.page-newsIndex .side .selectbox .selectbox__select .icon:after {
  width: 1px;
  height: 7px;
  margin-top: -4px
}

.page-newsIndex .side .selectbox .selectbox__select.select_focus {
  border: solid #f7f7f7 1px
}

.page-newsIndex .side .selectbox .selectbox__select.select_focus .icon:after {
  opacity: 0
}

.page-newsIndex .side .selectbox .selectbox__pulldown {
  border: solid #e6e6e6 1px;
  border-radius: 2rem;
  width: calc(100% + 2rem);
  height: auto;
  position: absolute;
  left: -1rem;
  top: -1rem;
  background: #f7f7f7;
  overflow: auto;
  padding-top: 4.5rem;
  padding-bottom: 1rem;
  z-index: -1
}

.page-newsIndex .side .selectbox .selectbox__pulldown .selectbox__pulldown__list {
  line-height: 1;
  width: auto;
  height: auto;
  display: block;
  color: #cccccc;
  padding: 0.8rem 2.4rem
}

.page-newsIndex .side .selectbox .selectbox__pulldown .selectbox__pulldown__list.selectbox__pulldown__list {
  margin-top: 0
}

.page-newsIndex .side .selectbox .selectbox__pulldown .selectbox__pulldown__list.last-child {
  border: none
}

.page-newsIndex .side .selectbox .selectbox__pulldown .selectbox__pulldown__list:hover,
.page-newsIndex .side .selectbox .selectbox__pulldown .selectbox__pulldown__list label input[type="radio"].selected+.list__txt {
  cursor: pointer;
  color: #333
}

.page-newsIndex .side .side__category .selectbox {
  display: none
}

.page-newsIndex .newsIndex__body {
  zoom: 1
}

.page-newsIndex .newsIndex__body:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-newsIndex .newsIndex__side {
  margin-top: -24rem;
  width: 18rem;
  padding: 5rem 4rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 1rem;
  background: #cccccc;
  top: 10rem;
  position: -webkit-sticky;
  position: sticky;
  z-index: 2;
  float: right;
  right: calc((100% - 128rem) / 2 + 4rem);
  margin-left: calc(-1 * ((100% - 128rem) / 2 + 4rem + 18rem));
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

@media only screen and (max-width: 1200px) {
  .page-newsIndex .newsIndex__side {
    right: calc((100% - 128rem) / 2 + 10rem);
    margin-left: calc(-1 * ((100% - 128rem) / 2 + 10rem + 18rem))
  }
}

.page-newsIndex .newsIndex__side.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-newsIndex .newsIndex__side .form-select {
  display: none
}

.page-newsIndex .newsIndex__list .item {
  position: relative;
  z-index: 0;
  border-bottom: rgba(0, 0, 0, 0.1) solid 1px
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-newsIndex .newsIndex__list .item {
    border-width: 0.5px
  }
}

.page-newsIndex .newsIndex__list .item.noPost {
  padding-top: 4rem;
  text-align: center;
  border-bottom: none
}

html.notouch .page-newsIndex .newsIndex__list .item.noPost:hover {
  -webkit-box-shadow: none;
  box-shadow: none
}

.page-newsIndex .newsIndex__list .item:after {
  display: block;
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  height: 1px
}

.page-newsIndex .newsIndex__list .item:after {
  width: 0;
  background: #000
}

.page-newsIndex .newsIndex__list .item.section:first-child .container {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-newsIndex .newsIndex__list .item.section:first-child:before,
.page-newsIndex .newsIndex__list .item.section:first-child:after {
  display: none
}

.page-newsIndex .newsIndex__list .item.is-visible .container,
.page-newsIndex .newsIndex__list .item.is-show .container {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-newsIndex .newsIndex__list .item.is-visible:after,
.page-newsIndex .newsIndex__list .item.is-show:after {
  -webkit-animation: shooting 0.5s ease-in-out normal;
  animation: shooting 0.5s ease-in-out normal
}

.page-newsIndex .newsIndex__list .item a {
  display: block;
  overflow: hidden;
  padding: 8rem 0;
  text-decoration: none
}

.page-newsIndex .newsIndex__list .item .container {
  z-index: 1;
  max-width: 80rem;
  margin-left: calc((100% - 88rem) / 2);
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) .4s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) .4s;
  -webkit-transition-property: opacity, border, -webkit-transform;
  transition-property: opacity, border, -webkit-transform;
  transition-property: transform, opacity, border;
  transition-property: transform, opacity, border, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

@media only screen and (max-width: 1200px) {
  .page-newsIndex .newsIndex__list .item .container {
    margin-left: calc((100% - 80rem) / 2)
  }
}

.page-newsIndex .newsIndex__list .item__inner {
  display: table;
  position: relative;
  width: 100%
}

.page-newsIndex .newsIndex__list .item__img {
  display: table-cell;
  width: 26.5rem
}

.page-newsIndex .newsIndex__list .item__img .noimage {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: rgba(0, 0, 0, 0.1) solid 1px
}

.page-newsIndex .newsIndex__list .item__body {
  display: table-cell;
  padding-left: 5rem;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.page-newsIndex .newsIndex__list .item__meta {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  position: absolute;
  top: 1rem;
  left: -20rem;
  font-size: 1rem;
  line-height: 1
}

@media only screen and (max-width: 1300px) {
  .page-newsIndex .newsIndex__list .item__meta {
    left: -16rem
  }
}

.page-newsIndex .newsIndex__list .item__cat {
  margin-bottom: 2rem
}

.page-newsIndex .newsIndex__list .item__cat li {
  font-size: 1.2rem;
  color: #333;
  position: relative;
  line-height: 1;
  display: inline-block
}

.page-newsIndex .newsIndex__list .item__cat li:before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #333;
  bottom: -0.5rem
}

.page-newsIndex .newsIndex__list .item__date {
  color: rgba(51, 51, 51, 0.5);
  font-size: 1.2rem
}

.page-newsIndex .newsIndex__list .item__ttl {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 2.6rem;
  line-height: 1.38
}

.page-newsIndex .newsIndex__list .item__bg {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: #c331e2;
  opacity: 0
}

.page-newsIndex .newsIndex__list .item__bg img {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: 0;
  opacity: 0.15
}

html.notouch .page-newsIndex .newsIndex__list .item:hover {
  z-index: 1;
  -webkit-box-shadow: 0 0.5rem 3rem rgba(0, 0, 0, 0.4);
  box-shadow: 0 0.5rem 3rem rgba(0, 0, 0, 0.4);
  border-bottom: none
}

html.notouch .page-newsIndex .newsIndex__list .item:hover a {
  color: #ffffff
}

html.notouch .page-newsIndex .newsIndex__list .item:hover .item__cat li {
  color: #ffffff
}

html.notouch .page-newsIndex .newsIndex__list .item:hover .item__cat li:before {
  background: #ffffff
}

html.notouch .page-newsIndex .newsIndex__list .item:hover .item__date {
  color: #ffffff
}

html.notouch .page-newsIndex .newsIndex__list .item:hover .item__bg {
  opacity: 1
}

.page-newsIndex .newsIndex__btn {
  margin-top: 10rem;
  text-align: center
}

.page-newsIndex .newsIndex__btn a {
  display: block;
  margin: 0 auto;
  width: 10.5rem
}

.page-newsIndex .newsIndex__btn .arrow-button {
  background: #ffffff;
  border-radius: 10rem;
  width: 10rem;
  height: 10rem
}

@media only screen and (max-width: 768px) {
  .page-newsIndex .content__body {
    padding-bottom: 8rem
  }

  .page-newsIndex .section__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 2.5rem 1.5rem 0;
    position: relative
  }

  .page-newsIndex .section__menu:after {
    position: absolute;
    display: block;
    content: "";
    left: 50%;
    top: 3px;
    margin-left: -0.5px;
    height: calc(100% - 6px);
    width: 0.5px;
    background: #e6e6e6
  }

  .page-newsIndex .section__menu:before {
    display: none
  }

  .page-newsIndex .section__menu .side__category {
    position: relative;
    z-index: 1;
    width: 47%
  }

  .page-newsIndex .section__menu .side__archive {
    position: relative;
    z-index: 1;
    width: 47%
  }

  .page-newsIndex .section__menu .side__archive .selectbox .selectbox__pulldown {
    left: -0.5rem
  }

  .page-newsIndex .section__menu .list {
    display: table
  }

  .page-newsIndex .section__menu .list li {
    display: table-cell;
    vertical-align: top;
    font-weight: normal;
    color: #333;
    font-weight: 500
  }

  .page-newsIndex .section__menu .list li+li {
    margin-top: 0;
    padding-left: 0
  }

  .page-newsIndex .section__menu .list li a,
  .page-newsIndex .section__menu .list li label .txt {
    padding: 0 1rem
  }

  .page-newsIndex .section__menu .list li a .line,
  .page-newsIndex .section__menu .list li label .txt .line {
    padding: 2.8rem 0 0
  }

  .page-newsIndex .side__category {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none
  }

  .page-newsIndex .side .selectbox {
    width: 100%
  }

  .page-newsIndex .side .selectbox .selectbox__select {
    background: #ffffff;
    padding-left: 1.2rem;
    border-width: 0.5px;
    height: 3rem;
    line-height: 3rem
  }

  .page-newsIndex .side .selectbox .selectbox__select .icon {
    position: absolute;
    right: 0.7rem;
    top: 50%;
    margin-top: -0.9rem;
    width: 1.4rem;
    height: 1.4rem;
    border: solid #e6e6e6 0.5px;
    border-radius: 2rem;
    background: #f7f7f7
  }

  .page-newsIndex .side .selectbox .selectbox__select .icon:before {
    width: 6px;
    height: 1px;
    margin-left: -3px;
    margin-top: -0.5px
  }

  .page-newsIndex .side .selectbox .selectbox__select .icon:after {
    width: 1px;
    height: 6px;
    margin-left: -0.5px;
    margin-top: -3px
  }

  .page-newsIndex .side .selectbox .selectbox__select__text {
    font-size: 1.2rem
  }

  .page-newsIndex .side .selectbox .selectbox__select.select_focus {
    border: solid #ffffff 1px
  }

  .page-newsIndex .side .selectbox .selectbox__pulldown {
    background: #ffffff;
    border-width: 0.5px;
    width: 100%;
    left: -0.5rem
  }

  .page-newsIndex .side .selectbox .selectbox__pulldown .selectbox__pulldown__list {
    padding: 0.8rem 1rem
  }

  .page-newsIndex .side .side__category .list-category {
    display: none
  }

  .page-newsIndex .side .side__category .selectbox {
    display: block;
    right: auto;
    left: 0
  }

  .page-newsIndex .newsIndex__side {
    margin-top: 0;
    width: auto;
    padding: 0;
    border-radius: 0;
    background: none;
    top: auto;
    position: relative;
    float: none;
    right: auto;
    margin-left: 0;
    margin-bottom: 5rem;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  .page-newsIndex .newsIndex__main {
    margin: 0 1.5rem
  }

  .page-newsIndex .newsIndex__list {
    border-top: rgba(0, 0, 0, 0.1) solid 1px
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-newsIndex .newsIndex__list {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-newsIndex .newsIndex__list .item.noPost {
    font-size: 1.2rem
  }

  .page-newsIndex .newsIndex__list .item:before,
  .page-newsIndex .newsIndex__list .item:after {
    top: -0.5px
  }

  .page-newsIndex .newsIndex__list .item a {
    padding: 4rem 0
  }

  .page-newsIndex .newsIndex__list .item .container {
    margin-left: 0
  }

  .page-newsIndex .newsIndex__list .item__img {
    width: 10rem
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-newsIndex .newsIndex__list .item__img .noimage {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-newsIndex .newsIndex__list .item__body {
    padding-left: 2rem
  }

  .page-newsIndex .newsIndex__list .item__meta {
    position: static;
    font-size: 0.9rem
  }

  .page-newsIndex .newsIndex__list .item__cat {
    margin-bottom: 0;
    display: inline-block;
    padding-right: 1.5rem;
    margin-right: 1.5rem;
    border-right: 1px solid #cccccc
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-newsIndex .newsIndex__list .item__cat {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-newsIndex .newsIndex__list .item__cat li {
    font-size: 1.2rem;
    color: #333;
    position: relative;
    line-height: 1
  }

  .page-newsIndex .newsIndex__list .item__cat li:before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #333;
    bottom: -0.5rem
  }

  .page-newsIndex .newsIndex__list .item__date {
    color: rgba(51, 51, 51, 0.5);
    font-size: 0.9rem;
    display: inline-block
  }

  .page-newsIndex .newsIndex__list .item__ttl {
    font-size: 1.6rem;
    line-height: 1.38;
    margin-bottom: 1.5rem
  }

  .page-newsIndex .newsIndex__list .item__bg {
    -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: #c331e2;
  opacity: 0
  }


  .page-newsIndex .newsIndex__btn {
    margin-top: 5rem
  }

  .page-newsIndex .newsIndex__btn a {
    display: block;
    margin: 0 auto;
    width: 8.5rem
  }

  .page-newsIndex .newsIndex__btn .arrow-button {
    width: 8.5rem;
    height: 8.5rem;
    border: 0.5px solid rgba(51, 51, 51, 0.2)
  }

  .page-newsIndex .newsIndex__btn .arrow-button__border {
    display: none
  }
}

.page-newsDetail>.content {
  padding-bottom: 0
}

.page-newsDetail .newsDetail__head {
  max-width: 108rem;
  margin: 0 auto;
  padding: 0 4rem
}

.page-newsDetail .newsDetail__img {
  margin-bottom: 8rem;
  position: relative
}

.page-newsDetail .newsDetail__img .imgAreaBg {
  position: absolute;
  z-index: 0;
  bottom: 0;
  width: 0;
  height: 100%;
  left: 0
}

.page-newsDetail .newsDetail__img .imgAreaBg.bg1 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  background: #dfdfdb
}

.page-newsDetail .newsDetail__img .imgAreaBg.bg2 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  background: #302f2e
}

.page-newsDetail .newsDetail__img .img {
  position: relative;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s
}

.page-newsDetail .newsDetail__img.is-visible .imgAreaBg {
  width: 100%
}

.page-newsDetail .newsDetail__img.is-visible .img {
  opacity: 1
}

.page-newsDetail .newsDetail__main {
  margin-bottom: 15rem
}

.page-newsDetail .newsDetail__related {
  border-top: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
  padding: 10rem 0;
  background: #efefef
}

.page-newsDetail .newsDetail__related .related__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-newsDetail .newsDetail__related .related__ttl {
  width: 20rem;
  font-size: 1.8rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  position: relative
}

.page-newsDetail .newsDetail__related .related__content {
  width: 90rem
}

.page-newsDetail .newsDetail__related .related__btn {
  display: none;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-newsDetail .newsDetail__related .related__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -5rem
}

.page-newsDetail .newsDetail__related .related__list:after {
  content: "";
  display: block;
  width: 30%
}

.page-newsDetail .newsDetail__related .related__list .item {
  width: 30%;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  display: block;
  padding-bottom: 5rem
}

.page-newsDetail .newsDetail__related .related__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-newsDetail .newsDetail__related .related__list .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.page-newsDetail .newsDetail__related .related__list .item.is-visible .item__body {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-newsDetail .newsDetail__related .related__list .item a {
  display: block;
  width: 100%;
  text-decoration: none
}

.page-newsDetail .newsDetail__related .related__list .item__img {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden
}

.page-newsDetail .newsDetail__related .related__list .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-newsDetail .newsDetail__related .related__list .item__body {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-newsDetail .newsDetail__related .related__list .item__ttl {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 3rem
}

.page-newsDetail .newsDetail__related .related__list .item__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.page-newsDetail .newsDetail__related .related__list .item__date {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1;
  color: #999999
}

.page-newsDetail .newsDetail__related .related__list .item__cat {
  zoom: 1;
  font-family: "heebo", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  padding-right: 1.8rem;
  margin-right: 1.8rem;
  border-right: 1px solid #cccccc
}

.page-newsDetail .newsDetail__related .related__list .item__cat:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-newsDetail .newsDetail__related .related__list .item__cat {
    border-width: 0.5px
  }
}

.page-newsDetail .newsDetail__related .related__list .item__cat li {
  float: left;
  color: #333;
  position: relative;
  line-height: 1
}

.page-newsDetail .newsDetail__related .related__list .item__cat li:before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #333;
  bottom: -0.6rem
}

.page-newsDetail .newsDetail__related .related__list .item__cat li+li {
  margin-left: 1rem
}

.page-newsDetail .newsDetail__related.is-show .related__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-newsDetail .newsDetail__head {
    padding: 0
  }

  .page-newsDetail .newsDetail__img {
    margin: 0 -1.5rem 5rem
  }

  .page-newsDetail .newsDetail__main {
    padding: 0;
    margin-bottom: 7.5rem
  }

  .page-newsDetail .newsDetail__related {
    padding: 7.5rem 0;
    border: none
  }

  .page-newsDetail .newsDetail__related .related__body {
    display: block
  }

  .page-newsDetail .newsDetail__related .related__ttl {
    width: auto;
    font-size: 2.1rem;
    font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
    line-height: 1.4;
    padding-top: 3rem;
    position: relative;
    margin-bottom: 4rem
  }

  .page-newsDetail .newsDetail__related .related__ttl:before {
    position: absolute;
    top: 0;
    content: "";
    left: 0;
    width: 5rem;
    height: 1px;
    background: #333
  }

  .page-newsDetail .newsDetail__related .related__content {
    width: auto
  }

  .page-newsDetail .newsDetail__related .related__btn {
    margin-top: 5rem;
    text-align: center;
    display: block
  }

  .page-newsDetail .newsDetail__related .related__btn a {
    display: block;
    margin: 0 auto;
    width: 8.5rem
  }

  .page-newsDetail .newsDetail__related .related__btn .arrow-button {
    background: #ffffff;
    border-radius: 8rem;
    border: 0.5px solid rgba(51, 51, 51, 0.2)
  }

  .page-newsDetail .newsDetail__related .related__btn .arrow-button__border {
    display: none
  }

  .page-newsDetail .newsDetail__related .related__list {
    display: block;
    margin-bottom: 0;
    border-top: 1px solid #e6e6e6
  }

  .page-newsDetail .newsDetail__related .related__list:after {
    display: block
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-newsDetail .newsDetail__related .related__list {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-newsDetail .newsDetail__related .related__list .item {
    padding-bottom: 0;
    width: auto;
    border-bottom: 1px solid #e6e6e6
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-newsDetail .newsDetail__related .related__list .item {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-newsDetail .newsDetail__related .related__list .item a {
    width: 100%;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 2rem 0
  }

  .page-newsDetail .newsDetail__related .related__list .item__img {
    width: 10rem;
    border: none;
    margin-bottom: 0
  }

  .page-newsDetail .newsDetail__related .related__list .item__img .thumbnail {
    padding-bottom: 0;
    height: auto
  }

  .page-newsDetail .newsDetail__related .related__list .item__img .thumbnail img {
    position: static
  }

  .page-newsDetail .newsDetail__related .related__list .item__body {
    width: calc(100% - 12rem)
  }

  .page-newsDetail .newsDetail__related .related__list .item__ttl {
    font-size: 1.6rem;
    margin-bottom: 1.5rem
  }

  .page-newsDetail .newsDetail__related .related__list .item__date {
    font-size: 0.9rem
  }

  .page-newsDetail .newsDetail__related .related__list .item__cat {
    font-size: 0.9rem;
    padding-right: 1.5rem;
    margin-right: 1.5rem
  }

  .page-newsDetail .newsDetail__related .related__list .item__cat li:before {
    bottom: -0.2rem
  }
}

.page-contact .req {
  color: #f03161
}

.page-contact .container {
  padding-top: 8rem;
  max-width: 114rem;
  zoom: 1
}

.page-contact .container:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-contact .container-2colMain {
  width: 70rem;
  float: left
}

.page-contact .container-2colSide {
  position: -webkit-sticky;
  position: sticky;
  top: 10rem;
  width: 22rem;
  float: right
}

.page-contact .contact__step {
  top: 0;
  right: 0;
  width: auto
}

.page-contact .contact__step .step {
  position: relative
}



.page-contact .contact__step .step li {
  padding-left: 3rem;
  position: relative;
  line-height: 1
}

.page-contact .contact__step .step li:before {
  content: "";
  background: #e5e5e5;
  position: absolute;
  top: 0.5rem;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 10rem
}

.page-contact .contact__step .step li+li {
  margin-top: 2rem
}

.page-contact .contact__step .step li.is-current:before {
  background: #333
}

.page-contact .contact__step .step li.is-current .txt {
  font-weight: 700;
  opacity: 1
}

.page-contact .contact__step .step li .txt {
  font-size: 1.2rem;
  color: #333;
  opacity: 0.4;
  line-height: 1
}

.page-contact .contact__form {
  margin-top: 6rem
}

.page-contact .contact__form#planningform .is-planning {
  display: none
}

.page-contact .contact__items .item+.item {
  margin-top: 4rem
}

.page-contact .contact__items .item dt {
  margin-bottom: 1rem;
  font-weight: 700
}

.page-contact .contact__items .item dt:first-child {
  margin-top: 0
}

.page-contact .contact__items .item dt .caption {
  display: inline-block;
  color: #999999;
  font-size: 1.2rem;
  font-weight: 400
}

.page-contact .contact__items .item dt .form-invalid {
  margin-left: 2rem
}

.page-contact .contact__confirm .item+.item {
  margin-top: 3rem
}

.page-contact .contact__confirm .item dt {
  margin-bottom: 0.5rem;
  color: rgba(0, 0, 0, 0.5);
  font-size: 1.2rem
}

.page-contact .contact__confirm .item dd {
  font-size: 1.8rem
}

.page-contact .contact__complete {
  margin-bottom: 23rem
}

.page-contact .contact__complete p+p {
  margin-top: 1.5rem
}

.page-contact .contact__error {
  margin-bottom: 23rem
}

@media only screen and (max-width: 768px) {
  .page-contact .container {
    padding-top: 4rem
  }

  .page-contact .container-2colMain {
    width: auto;
    float: none
  }

  .page-contact .container-2colSide {
    display: none
  }

  .page-contact .contact__step {
    display: none
  }

  .page-contact .contact__message {
    font-size: 1.2rem;
    line-height: 1.75
  }

  .page-contact .contact__form {
    margin-top: 4rem
  }

  .page-contact .contact__items .item+.item {
    margin-top: 3rem
  }

  .page-contact .contact__items .item dt {
    font-size: 1.2rem;
    margin-bottom: 0.5rem
  }

  .page-contact .contact__items .item dt:first-child {
    margin-top: 0
  }

  .page-contact .contact__items .item dt .caption {
    font-size: 1rem
  }

  .page-contact .contact__items .item dt .form-invalid {
    display: block;
    margin-left: 0
  }

  .page-contact .contact__confirm .item dt {
    margin-bottom: 0.5rem;
    font-size: 1rem
  }

  .page-contact .contact__confirm .item dd {
    font-size: 1.5rem
  }

  .page-contact .contact__complete {
    margin-bottom: 0
  }

  .page-contact .contact__complete p+p {
    margin-top: 1rem
  }

  .page-contact .contact__error {
    margin-bottom: 0
  }
}

.page-policy .policy {
  margin-top: 9rem
}

.page-policy .policy p {
  font-size: 1.6rem;
  margin-top: 1.86em
}

.page-policy .policy p:first-child {
  margin-top: 0
}

.page-policy .policy__body {
  margin-top: 10rem
}

.page-policy .policy__body .section+.section {
  margin-top: 10rem
}

.page-policy .policy__body .section dd {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-policy .policy__body .section.is-show dd {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

.page-policy .policy__num {
  margin-top: 1.86em
}

.page-policy .policy__num:first-child {
  margin-top: 0
}

.page-policy .policy__num>li {
  position: relative
}

.page-policy .policy__num>li+li {
  margin-top: 0.5em
}

@media only screen and (max-width: 768px) {
  .page-policy .policy {
    margin-top: 5rem
  }

  .page-policy .policy p {
    font-size: 1.4rem;
    margin-top: 1em
  }

  .page-policy .policy__body {
    margin-top: 7.5rem
  }

  .page-policy .policy__body .section+.section {
    margin-top: 7.5rem
  }

  .page-policy .policy__num {
    margin-top: 1em
  }

  .page-policy .policy__num>li+li {
    margin-top: 0.25em
  }
}

.page-recruitIndex .content__index {
  padding-bottom: 0
}

.page-recruitIndex .content__col2 {
  background: #ffffff;
  padding-bottom: 0
}

.page-recruitIndex .col2__aside {
  padding-bottom: 13rem
}

.page-recruitIndex .recruitIndex__message {
  background: #222326;
  color: #ffffff
}

.page-recruitIndex .recruitIndex__message:before {
  background: #222326
}

.page-recruitIndex .recruitIndex__message .intro__body .ttl .shooting-line:before,
.page-recruitIndex .recruitIndex__message .intro__body .ttl .shooting-line:after {
  background: #ffffff
}

.page-recruitIndex .recruitIndex__body .mod-list {
  margin-top: 1rem
}

.page-recruitIndex .recruitIndex__body .section.interview {
  background: #ffffff;
  padding-bottom: 14rem
}

.page-recruitIndex .recruitIndex__body .section.interview .section__sttl {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.interview .interview__btn {
  margin-top: 8rem;
  text-align: center;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.interview .interview__btn .arrow-button {
  display: inline-block;
  width: 10rem;
  height: 10rem
}

.page-recruitIndex .recruitIndex__body .section.interview .interview__btn.is-hidden {
  display: none
}

.page-recruitIndex .recruitIndex__body .section.interview.is-show .section__sttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.interview.is-show .interview__btn {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.job {
  margin-top: 12rem;
  padding-bottom: 12rem;
  background: #f7f7f7;
  position: relative
}

.page-recruitIndex .recruitIndex__body .section.job .section__sttl {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.job .mod-jobList {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.job:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 100%
}

.page-recruitIndex .recruitIndex__body .section.job:after {
  z-index: 3;
  left: 0;
  top: -29rem;
  height: 29rem;
  background: #f7f7f7
}

.page-recruitIndex .recruitIndex__body .section.job.is-show .section__sttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.job.is-show .mod-jobList {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.point {
  padding-bottom: 12rem;
  background: #f7f7f7
}

.page-recruitIndex .recruitIndex__body .section.point .section__sttl {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.point .mod-table {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.point .point__btn {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  margin-top: 9rem;
  padding: 5rem 0;
  text-align: center;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6
}

.page-recruitIndex .recruitIndex__body .section.point .point__btn .text-container {
  line-height: 1.4
}

.page-recruitIndex .recruitIndex__body .section.point.is-show .section__sttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.point.is-show .mod-table {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.point.is-show .point__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.welfare {
  background: #f7f7f7;
  padding-bottom: 13rem
}

.page-recruitIndex .recruitIndex__body .section.welfare .section__sttl {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.welfare .welfare__body {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-recruitIndex .recruitIndex__body .section.welfare .welfare__body .imgArea {
  width: 47.5%
}

.page-recruitIndex .recruitIndex__body .section.welfare .welfare__body .txtArea {
  width: 47.5%
}

.page-recruitIndex .recruitIndex__body .section.welfare .welfare__body .txtArea p+p {
  margin-top: 3rem
}

.page-recruitIndex .recruitIndex__body .section.welfare .welfare__btn {
  margin-top: 9rem;
  padding: 5rem 0;
  text-align: center;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitIndex .recruitIndex__body .section.welfare .welfare__btn .text-container {
  line-height: 1.4
}

.page-recruitIndex .recruitIndex__body .section.welfare.is-show .section__sttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.welfare.is-show .welfare__body {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .section.welfare.is-show .welfare__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .officeOuter {
  position: relative;
  z-index: 2;
  overflow: hidden
}

.page-recruitIndex .recruitIndex__body .office {
  z-index: 2;
  margin-bottom: 4rem
}

.page-recruitIndex .recruitIndex__body .office .container {
  width: 60rem;
  margin-left: 0;
  padding: 0;
  margin-left: 4rem;
  position: relative
}

.page-recruitIndex .recruitIndex__body .office .container:before,
.page-recruitIndex .recruitIndex__body .office .container:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 100%
}

.page-recruitIndex .recruitIndex__body .office .container:before {
  height: 100%;
  background: #ffffff;
  top: -1px;
  left: -100%
}

.page-recruitIndex .recruitIndex__body .office .container:after {
  z-index: 3;
  left: -100%;
  bottom: -1px;
  height: 25rem;
  background: #f7f7f7
}

.page-recruitIndex .recruitIndex__body .office__slide {
  margin: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: inherit;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-recruitIndex .recruitIndex__body .office__slide.is-next {
  -webkit-transform: translateX(-1rem);
  transform: translateX(-1rem)
}

.page-recruitIndex .recruitIndex__body .office__slide .office-next {
  position: absolute;
  z-index: 4;
  right: -100%;
  width: 100%;
  height: 100%
}

.page-recruitIndex .recruitIndex__body .office__slide .office-next.swiper-button-disabled {
  pointer-events: none
}

.page-recruitIndex .recruitIndex__body .office__pagination {
  position: absolute;
  text-align: right;
  z-index: 3;
  right: 0;
  bottom: -3rem;
  color: rgba(51, 51, 51, 0.2);
  line-height: 1;
  font-size: 1rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 5rem
}

.page-recruitIndex .recruitIndex__body .office__pagination:before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -0.6rem;
  content: "";
  display: block;
  width: 1.2rem;
  margin-top: -1px;
  height: 1px;
  background: rgba(51, 51, 51, 0.2)
}

.page-recruitIndex .recruitIndex__body .office__pagination .pagination__current {
  width: 50%;
  color: #333
}

.page-recruitIndex .recruitIndex__body .office__pagination .pagination__current .num {
  position: absolute;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-recruitIndex .recruitIndex__body .office__pagination .pagination__current .num.is-show {
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .office__pagination .pagination__total {
  width: 50%
}

.page-recruitIndex .recruitIndex__body .office__cap {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1;
  position: absolute;
  z-index: 3;
  left: -2rem;
  top: 0;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-recruitIndex .recruitIndex__body .office__cap .cap {
  position: absolute;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: opacity .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-recruitIndex .recruitIndex__body .office__cap .cap.is-show {
  opacity: 1
}

.page-recruitIndex .recruitIndex__body .office__list {
  zoom: 1;
  position: relative;
  z-index: 3
}

.page-recruitIndex .recruitIndex__body .office__list:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-recruitIndex .recruitIndex__body .office__list .item {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden
}

.page-recruitIndex .recruitIndex__body .office__list .item__img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden
}

.page-recruitIndex .recruitIndex__body .office__list .item__imgInner {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: relative;
  z-index: 0;
  padding-bottom: 66.6666%
}

.page-recruitIndex .recruitIndex__body .office__list .item__imgInner img {
  position: absolute;
  top: 0;
  left: 0
}

@media only screen and (max-width: 768px) {
  .page-recruitIndex .recruitIndex__body .office {
    margin-bottom: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
  }

  .page-recruitIndex .recruitIndex__body .office .container {
    width: 75%
  }

  .page-recruitIndex .recruitIndex__body .office .container:after {
    height: 5rem
  }

  .page-recruitIndex .recruitIndex__body .office__pagination {
    display: none
  }

  .page-recruitIndex .recruitIndex__body .office__cap {
    font-size: 0.8rem;
    left: -1rem
  }
}

@media only screen and (max-width: 768px) {
  .page-recruitIndex .content__col2 {
    padding-top: 0
  }

  .page-recruitIndex .recruitIndex__message {
    padding: 7.5rem 0
  }

  .page-recruitIndex .recruitIndex__message:before {
    top: -7.5rem;
    height: 7.5rem
  }

  .page-recruitIndex .recruitIndex__message .message__body {
    display: block
  }

  .page-recruitIndex .recruitIndex__message .message__body .ttl {
    width: auto;
    font-size: 2.1rem;
    padding-top: 3rem;
    margin-bottom: 3.5rem
  }

  .page-recruitIndex .recruitIndex__message .message__body .ttl .shooting-line {
    width: 5rem;
    top: 0
  }

  .page-recruitIndex .recruitIndex__message .message__body .txt {
    width: auto
  }

  .page-recruitIndex .recruitIndex__message .message__body .txt p+p {
    margin-top: 3rem
  }

  .page-recruitIndex .recruitIndex__body .section.interview {
    padding-top: 7.5rem;
    margin-bottom: 7.5rem;
    padding-bottom: 0
  }

  .page-recruitIndex .recruitIndex__body .section.interview .interview__btn {
    margin-top: 5rem
  }

  .page-recruitIndex .recruitIndex__body .section.interview .interview__btn .arrow-button {
    width: 8.5rem;
    height: 8.5rem
  }

  .page-recruitIndex .recruitIndex__body .section.job {
    padding-top: 7.5rem;
    margin-top: 0;
    padding-bottom: 0
  }

  .page-recruitIndex .recruitIndex__body .section.job:after {
    top: -10rem;
    height: 10rem
  }

  .page-recruitIndex .recruitIndex__body .section.point {
    padding-top: 7.5rem;
    padding-bottom: 0
  }

  .page-recruitIndex .recruitIndex__body .section.point .point__btn {
    margin-top: 5rem;
    padding: 4rem 0
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-recruitIndex .recruitIndex__body .section.point .point__btn {
    border-top: 0.5px solid #e6e6e6;
    border-bottom: 0.5px solid #e6e6e6
  }
}

@media only screen and (max-width: 768px) {
  .page-recruitIndex .recruitIndex__body .section.welfare {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem
  }

  .page-recruitIndex .recruitIndex__body .section.welfare .welfare__body {
    display: block
  }

  .page-recruitIndex .recruitIndex__body .section.welfare .welfare__body .imgArea {
    width: auto;
    margin-bottom: 3rem
  }

  .page-recruitIndex .recruitIndex__body .section.welfare .welfare__body .txtArea {
    width: auto
  }

  .page-recruitIndex .recruitIndex__body .section.welfare .welfare__body .txtArea p+p {
    margin-top: 2rem
  }

  .page-recruitIndex .recruitIndex__body .section.welfare .welfare__btn {
    margin-top: 5rem;
    padding: 4rem 0
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-recruitIndex .recruitIndex__body .section.welfare .welfare__btn {
    border-top: 0.5px solid #e6e6e6;
    border-bottom: 0.5px solid #e6e6e6
  }
}

.page-recruitDetail>.content {
  padding-bottom: 0
}

.page-recruitDetail .recruitDetail__head {
  max-width: 108rem;
  margin: 0 auto;
  padding: 0 4rem
}

.page-recruitDetail .recruitDetail__img {
  margin-bottom: 8rem;
  position: relative
}

.page-recruitDetail .recruitDetail__img .imgAreaBg {
  position: absolute;
  z-index: 0;
  bottom: 0;
  width: 0;
  height: 100%;
  left: 0
}

.page-recruitDetail .recruitDetail__img .imgAreaBg.bg1 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  background: #dfdfdb
}

.page-recruitDetail .recruitDetail__img .imgAreaBg.bg2 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  background: #302f2e
}

.page-recruitDetail .recruitDetail__img .img {
  position: relative;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s
}

.page-recruitDetail .recruitDetail__img.is-visible .imgAreaBg {
  width: 100%
}

.page-recruitDetail .recruitDetail__img.is-visible .img {
  opacity: 1
}

.page-recruitDetail .recruitDetail__main {
  margin-bottom: 15rem
}

.page-recruitDetail .recruitDetail__profile {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  padding: 3rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 14rem
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-recruitDetail .recruitDetail__profile {
    border-top: 0.5px solid #e5e5e5;
    border-bottom: 0.5px solid #e5e5e5
  }
}

.page-recruitDetail .recruitDetail__profile .profile__photo .thumb {
  width: 6rem;
  height: 6rem;
  overflow: hidden;
  border-radius: 6rem;
  margin-right: 2rem
}

.page-recruitDetail .recruitDetail__profile .profile__txt .head {
  margin-bottom: 0.5rem
}

.page-recruitDetail .recruitDetail__profile .profile__txt .head .name {
  font-weight: 700
}

.page-recruitDetail .recruitDetail__profile .profile__txt .head .job {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  color: rgba(51, 51, 51, 0.5);
  padding-left: 1.4rem;
  margin-left: 1.4rem;
  border-left: 1px solid #e6e6e6
}

.page-recruitDetail .recruitDetail__profile .profile__txt p {
  font-size: 1.2rem;
  line-height: 1.4
}

.page-recruitDetail .recruitDetail__jobList {
  margin-top: 10rem;
  background: #ffffff;
  padding: 5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #e5e5e5
}

.page-recruitDetail .recruitDetail__jobList .ttl {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 3rem;
  line-height: 1.4;
  margin-bottom: 4rem
}

.page-recruitDetail .recruitDetail__related {
  border-top: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
  padding: 10rem 0;
  background: #efefef
}

.page-recruitDetail .recruitDetail__related .related__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-recruitDetail .recruitDetail__related .related__ttl {
  width: 20rem;
  font-size: 1.8rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  padding-top: 3rem;
  position: relative;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-recruitDetail .recruitDetail__related .related__ttl:before {
  position: absolute;
  top: 0;
  content: "";
  left: 0;
  width: 13.5rem;
  height: 1px;
  background: #333
}

.page-recruitDetail .recruitDetail__related .related__content {
  width: 90rem
}

.page-recruitDetail .recruitDetail__related .related__btn {
  display: none
}

.page-recruitDetail .recruitDetail__related.is-show .related__ttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-recruitDetail .recruitDetail__head {
    padding: 0
  }

  .page-recruitDetail .recruitDetail__img {
    margin: 0 -1.5rem 5rem
  }

  .page-recruitDetail .recruitDetail__main {
    margin-bottom: 0;
    padding: 0
  }

  .page-recruitDetail .recruitDetail__profile {
    margin-bottom: 7rem
  }

  .page-recruitDetail .recruitDetail__profile .profile__txt .head {
    margin-bottom: 0.5rem
  }

  .page-recruitDetail .recruitDetail__profile .profile__txt .head .name {
    font-weight: 700
  }

  .page-recruitDetail .recruitDetail__profile .profile__txt .head .job {
    font-size: 1rem;
    padding-left: 0;
    margin-left: 0;
    border: none;
    display: block
  }

  .page-recruitDetail .recruitDetail__profile .profile__txt p {
    font-size: 1rem
  }

  .page-recruitDetail .recruitDetail__jobList {
    padding: 4.5rem 1.5rem;
    margin: 7rem -1.5rem 0;
    border: none
  }

  .page-recruitDetail .recruitDetail__jobList .ttl {
    font-size: 2.1rem;
    margin-bottom: 3rem
  }

  .page-recruitDetail .recruitDetail__related {
    padding: 9rem 0
  }
}

@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .page-recruitDetail .recruitDetail__related {
    border-width: 0.5px
  }
}

@media only screen and (max-width: 768px) {
  .page-recruitDetail .recruitDetail__related .related__body {
    display: block
  }

  .page-recruitDetail .recruitDetail__related .related__ttl {
    width: auto;
    font-size: 2.1rem;
    font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
    line-height: 1.4;
    padding-top: 3rem;
    position: relative;
    margin-bottom: 4rem
  }

  .page-recruitDetail .recruitDetail__related .related__ttl:before {
    width: 5rem
  }

  .page-recruitDetail .recruitDetail__related .related__content {
    width: auto
  }

  .page-recruitDetail .recruitDetail__related .related__btn {
    margin-top: 5rem;
    text-align: center;
    display: block
  }

  .page-recruitDetail .recruitDetail__related .related__btn a {
    display: block;
    margin: 0 auto;
    width: 8.5rem
  }

  .page-recruitDetail .recruitDetail__related .related__btn .arrow-button {
    background: #ffffff;
    border-radius: 8rem;
    border: 0.5px solid rgba(51, 51, 51, 0.2)
  }

  .page-recruitDetail .recruitDetail__related .related__btn .arrow-button__border {
    display: none
  }
}

.page-servicesIndex>.content {
  padding-bottom: 0
}

.page-servicesIndex .content__ttl:before,
.page-servicesIndex .content__ttl:after {
  display: none
}

.page-servicesIndex .index__list .item {
  position: relative;
  color: #ffffff;
  padding: 16rem 0;
  opacity: 0;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-property: opacity;
  transition-property: opacity;
  opacity: 0
}

.page-servicesIndex .index__list .item .container {
  z-index: 1;
  max-width: 114rem;
  pointer-events: none
}

.page-servicesIndex .index__list .item__ttl {
  font-size: 3rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 2rem
}

.page-servicesIndex .index__list .item__txt {
  margin-bottom: 3rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesIndex .index__list .item__btn {
  display: inline-block;
  pointer-events: auto;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesIndex .index__list .item__video {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0
}

.page-servicesIndex .index__list .item__video .videolink {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0
}

.page-servicesIndex .index__list .item__video .video {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: no-repeat center center;
  background-size: cover;
  pointer-events: none;
  overflow: hidden
}

.page-servicesIndex .index__list .item__video .videoInner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 0;
  padding-bottom: 62%;
  position: relative
}

.page-servicesIndex .index__list .item__video .videoInner:before {
  position: absolute;
  z-index: 1;
  content: "";
  display: block;
  background: rgba(0, 0, 0, 0.8);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

.page-servicesIndex .index__list .item__video .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top
}

.page-servicesIndex .index__list .item__video .video video {
  width: 100%;
  vertical-align: top
}

.page-servicesIndex .index__list .item.youtube {
  opacity: 1
}

.page-servicesIndex .index__list .item.youtube .imgAreaBg {
  position: absolute;
  z-index: 0;
  bottom: 0;
  width: 0;
  height: 100%;
  left: 0
}

.page-servicesIndex .index__list .item.youtube .imgAreaBg.bg1 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  background: #dfdfdb
}

.page-servicesIndex .index__list .item.youtube .imgAreaBg.bg2 {
  -webkit-transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: width .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  background: #302f2e
}

.page-servicesIndex .index__list .item.youtube .sectionInner {
  opacity: 0;
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s
}

.page-servicesIndex .index__list .item.youtube .item__video .video {
  background-image: url("../imgs/services/index/img_youtube.jpg")
}

.page-servicesIndex .index__list .item.youtube.is-visible .imgAreaBg {
  width: 100%
}

.page-servicesIndex .index__list .item.youtube.is-visible .sectionInner {
  opacity: 1
}

.page-servicesIndex .index__list .item.sns .item__video .video {
  background-image: url("../imgs/services/index/img_sns.jpg")
}

.page-servicesIndex .index__list .item.live .item__video .video {
  background-image: url("../imgs/services/index/img_live.jpg")
}

.page-servicesIndex .index__list .item.is-show {
  opacity: 1
}

.page-servicesIndex .index__list .item.is-show .item__txt,
.page-servicesIndex .index__list .item.is-show .item__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-servicesIndex .index__list .item.is-show .item__txt {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.page-servicesIndex .index__list .item.is-show .item__btn {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.page-servicesIndex .index__view {
  padding: 15rem 0 12rem
}

.page-servicesIndex .index__view .container {
  max-width: 114rem
}

.page-servicesIndex .index__view .view__ttl {
  text-align: center;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 3rem;
  line-height: 1;
  margin-bottom: 6rem;
  width: 100%
}

.page-servicesIndex .index__view .view__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 6rem
}

.page-servicesIndex .index__view .view__list .item {
  width: 22.5%;
  text-align: center;
  position: relative;
  padding: 4rem 0;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesIndex .index__view .view__list .item .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 1px;
  left: 0;
  top: 0;
  background: #e6e6e6
}

.page-servicesIndex .index__view .view__list .item .shooting-line.bottom {
  top: auto;
  bottom: 0
}

.page-servicesIndex .index__view .view__list .item .shooting-line:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #333;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-servicesIndex .index__view .view__list .item__icon {
  display: block;
  margin: 0 auto 2rem;
  width: 8.4rem;
  height: 8.4rem;
  border-radius: 8.4rem;
  background: #ffffff;
  -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
  position: relative
}

.page-servicesIndex .index__view .view__list .item__icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain
}

.page-servicesIndex .index__view .view__list .item__ttl {
  line-height: 1
}

.page-servicesIndex .index__view .view__list .item__ttl .num {
  font-family: "heebo", sans-serif;
  font-size: 3.6rem;
  font-weight: 700
}

.page-servicesIndex .index__view .view__list .item__ttl .num span {
  font-size: 1.4rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  padding-left: 0.3rem
}

.page-servicesIndex .index__view .view__list .item__ttl .ttl {
  margin-top: 1rem;
  font-weight: 700;
  line-height: 1.4
}

.page-servicesIndex .index__view .view__list .item.reach .item__icon:before {
  width: 3.6rem;
  height: 3.6rem;
  background-image: url("../imgs/common/seen_icon1.svg")
}

.page-servicesIndex .index__view .view__list .item.likes .item__icon:before {
  width: 5.2rem;
  height: 4.2rem;
  background-image: url("../imgs/common/seen_icon2.svg")
}

.page-servicesIndex .index__view .view__list .item.engagement .item__icon:before {
  width: 3.6rem;
  height: 3.5rem;
  background-image: url("../imgs/common/seen_icon3.svg")
}

.page-servicesIndex .index__view .view__list .item.engagement .item__ttl .ttl {
  font-size: 1.2rem
}

.page-servicesIndex .index__view .view__list .item.followers .item__icon:before {
  width: 3.5rem;
  height: 3.5rem;
  background-image: url("../imgs/common/seen_icon4.svg")
}

.page-servicesIndex .index__view .view__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-servicesIndex .index__view .view__list .item.is-visible .shooting-line:before {
  -webkit-animation: shooting 0.4s ease-in-out normal 0.5s;
  animation: shooting 0.4s ease-in-out normal 0.5s
}

.page-servicesIndex .index__view .view__txt {
  max-width: 80rem;
  margin: 0 auto 5rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesIndex .index__view .view__txt p+p {
  margin-top: 2rem
}

.page-servicesIndex .index__view .view__btn {
  text-align: center;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesIndex .index__view.is-show .view__txt,
.page-servicesIndex .index__view.is-show .view__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-servicesIndex .index__view.is-show .view__txt {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s
}

.page-servicesIndex .index__view.is-show .view__btn {
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s
}

@media only screen and (max-width: 768px) {
  .page-servicesIndex .index__list .item {
    padding: 8rem 0
  }

  .page-servicesIndex .index__list .item__ttl {
    font-size: 2.1rem;
    margin-bottom: 1rem
  }

  .page-servicesIndex .index__list .item__txt {
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
    line-height: 1.6
  }

  .page-servicesIndex .index__list .item__video .videoInner {
    padding-bottom: 90%
  }

  .page-servicesIndex .index__list .item.sns .item__video .video {
    background-image: url("../imgs/services/index/img_sns_sp.jpg")
  }

  .page-servicesIndex .index__list .item.youtube .item__video .video {
    background-image: url("../imgs/services/index/img_youtube_sp.jpg")
  }

  .page-servicesIndex .index__list .item.live .item__video .video {
    background-image: url("../imgs/services/index/img_live_sp.jpg")
  }

  .page-servicesIndex .index__view {
    padding: 7rem 0
  }

  .page-servicesIndex .index__view .view__ttl {
    text-align: left;
    font-size: 2.1rem;
    margin-bottom: 3rem
  }

  .page-servicesIndex .index__view .view__list {
    margin-bottom: 3rem
  }

  .page-servicesIndex .index__view .view__list .item {
    width: 47%;
    padding: 3rem 0
  }

  .page-servicesIndex .index__view .view__list .item__icon {
    margin: 0 auto 1rem;
    width: 6rem;
    height: 6rem;
    border-radius: 6rem
  }

  .page-servicesIndex .index__view .view__list .item__ttl .num {
    font-size: 2.4rem
  }

  .page-servicesIndex .index__view .view__list .item__ttl .ttl {
    font-size: 1.2rem;
    margin-top: 0.5rem
  }

  .page-servicesIndex .index__view .view__list .item.reach .item__icon:before {
    width: 2.5rem;
    height: 2.5rem
  }

  .page-servicesIndex .index__view .view__list .item.reach .shooting-line.bottom {
    display: none
  }

  .page-servicesIndex .index__view .view__list .item.likes .item__icon:before {
    width: 3.6rem;
    height: 2.9rem
  }

  .page-servicesIndex .index__view .view__list .item.engagement .item__icon:before {
    width: 2.5rem;
    height: 2.5rem
  }

  .page-servicesIndex .index__view .view__list .item.engagement .item__ttl .ttl {
    font-size: 1.1rem
  }

  .page-servicesIndex .index__view .view__list .item.engagement .shooting-line.bottom {
    display: none
  }

  .page-servicesIndex .index__view .view__list .item.followers .item__icon:before {
    width: 2.5rem;
    height: 2.5rem
  }

  .page-servicesIndex .index__view .view__txt {
    margin: 0 auto 3rem
  }

  .page-servicesIndex .index__view .view__btn {
    text-align: left
  }
}

.page-servicesDetail>.content {
  padding-bottom: 0
}

.page-servicesDetail .content__mainImage .imgArea .video {
  width: 100%;
  height: 60rem;
  overflow: hidden
}

.page-servicesDetail .content__mainImage .imgArea .videoInner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 0;
  padding-bottom: 62%
}

.page-servicesDetail .content__mainImage .imgArea .videoInner .videolink {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 2
}

.page-servicesDetail .content__mainImage .imgArea .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top
}

.page-servicesDetail .flow {
  padding-bottom: 15rem
}

.page-servicesDetail .flow__img {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesDetail .flow.is-show .flow__img {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s
}

.page-servicesDetail .works {
  padding-bottom: 15rem
}

.page-servicesDetail .works__list .item+.item {
  border-top: 1px solid #e5e5e5;
  margin-top: 7rem;
  padding-top: 5rem
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-servicesDetail .works__list .item+.item {
    border-width: 0.5px
  }
}

.page-servicesDetail .works__list .item__img {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  margin-bottom: 3rem
}

.page-servicesDetail .works__list .item__ttl {
  font-size: 2.4rem;
  line-height: 1.4;
  margin-bottom: 2.5rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesDetail .works__list .item__ttl.en {
  font-family: "heebo", sans-serif;
  font-weight: 500
}

.page-servicesDetail .works__list .item__txt {
  line-height: 2;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesDetail .works__list .item__btn {
  display: none;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesDetail .works__list .item.is-show .item__img,
.page-servicesDetail .works__list .item.is-show .item__ttl,
.page-servicesDetail .works__list .item.is-show .item__txt,
.page-servicesDetail .works__list .item.is-show .item__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-servicesDetail .works__list .item.is-show .item__img {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s
}

.page-servicesDetail .works__list .item.is-show .item__ttl {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s
}

.page-servicesDetail .works__list .item.is-show .item__txt {
  -webkit-transition-delay: 0.7s;
  transition-delay: 0.7s
}

.page-servicesDetail .works__list .item.is-show .item__btn {
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s
}

.page-servicesDetail .contact__txt {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-servicesDetail .contact__btn {
  margin-top: 10rem;
  padding: 5rem 0;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-servicesDetail .contact__btn {
    border-width: 0.5px
  }
}

.page-servicesDetail .contact.is-show .contact__txt,
.page-servicesDetail .contact.is-show .contact__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-servicesDetail .contact.is-show .contact__txt {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.page-servicesDetail .contact.is-show .contact__btn {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

@media only screen and (max-width: 768px) {
  .page-servicesDetail .content__mainImage .imgArea .video {
    height: 30rem
  }

  .page-servicesDetail .content__mainImage .imgArea .videoInner {
    padding-bottom: 100%
  }

  .page-servicesDetail .content__intro .intro__body .txt {
    font-size: 1.4rem
  }

  .page-servicesDetail .flow {
    padding-bottom: 7.5rem
  }

  .page-servicesDetail .works {
    padding-bottom: 7.5rem
  }

  .page-servicesDetail .works__list .item+.item {
    margin-top: 4rem;
    padding-top: 3rem
  }

  .page-servicesDetail .works__list .item__img {
    margin-bottom: 2rem
  }

  .page-servicesDetail .works__list .item__ttl {
    font-size: 1.9rem;
    line-height: 1.4;
    margin-bottom: 2rem
  }

  .page-servicesDetail .works__list .item__btn {
    margin-top: 3rem;
    text-align: center;
    display: block
  }

  .page-servicesDetail .works__list .item__btn a {
    display: inline-block;
    background: #ffffff;
    border-radius: 50%
  }

  .page-servicesDetail .contact {
    margin-bottom: 7.5rem
  }

  .page-servicesDetail .contact__btn {
    margin-top: 4rem;
    padding: 4rem 0
  }
}

.page-companyIndex>.content {
  padding-bottom: 0
}

.page-companyIndex>.content .content__ttl:before,
.page-companyIndex>.content .content__ttl:after {
  display: none
}

.page-companyIndex .content__body .container {
  max-width: 114rem
}

.page-companyIndex .index__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 15rem
}

.page-companyIndex .index__list .item {
  padding-top: 7rem;
  width: 30.6%;
  position: relative;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyIndex .index__list .item .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 1px;
  left: 0;
  top: 0;
  background: #e6e6e6
}

.page-companyIndex .index__list .item .shooting-line.bottom {
  top: auto;
  bottom: 0
}

.page-companyIndex .index__list .item .shooting-line:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #333;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-companyIndex .index__list .item__img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden;
  margin-bottom: 3rem;
  position: relative
}

.page-companyIndex .index__list .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-companyIndex .index__list .item__imgInner {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: relative;
  z-index: 0;
  padding-bottom: 153.9%;
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

.page-companyIndex .index__list .item__imgInner img {
  position: absolute;
  top: 0;
  left: 0
}

.page-companyIndex .index__list .item__sub {
  font-size: 1rem;
  margin-bottom: 1rem
}

.page-companyIndex .index__list .item__ttl {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1;
  font-size: 2.4rem;
  margin-bottom: 2rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyIndex .index__list .item__ttl .c-linelink__txt {
  display: inline-block
}

.page-companyIndex .index__list .item__txt {
  font-size: 1.2rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyIndex .index__list .item a {
  display: block
}

html.notouch .page-companyIndex .index__list .item a:hover .item__img {
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

html.notouch .page-companyIndex .index__list .item a:hover .item__imgInner {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.page-companyIndex .index__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-companyIndex .index__list .item.is-visible .shooting-line:before {
  -webkit-animation: shooting 0.5s ease-in-out normal 0.2s;
  animation: shooting 0.5s ease-in-out normal 0.2s
}

.page-companyIndex .index__list .item.is-visible .item__ttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s
}

.page-companyIndex .index__list .item.is-visible .item__txt {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s
}

.page-companyIndex .index__list .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.page-companyIndex .index__list .item.is-visible .item__imgInner.is-show {
  -webkit-transform: scale(1);
  transform: scale(1)
}

@media only screen and (max-width: 768px) {
  .page-companyIndex .index__list {
    display: block;
    padding-bottom: 7.5rem
  }

  .page-companyIndex .index__list .item {
    padding-top: 4rem;
    width: auto
  }

  .page-companyIndex .index__list .item+.item {
    margin-top: 4.5rem
  }

  .page-companyIndex .index__list .item__img {
    margin-bottom: 2rem
  }

  .page-companyIndex .index__list .item__imgInner {
    padding-bottom: 100%
  }

  .page-companyIndex .index__list .item__sub {
    margin-bottom: 1rem
  }

  .page-companyIndex .index__list .item__ttl {
    font-size: 1.9rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #333;
    display: inline-block
  }

  .page-companyIndex .index__list .item__txt {
    font-size: 1.2rem
  }

  .page-companyIndex .index__list .item.is-show {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
  }

  .page-companyIndex .index__list .item.is-show .shooting-line:before {
    -webkit-animation: shooting 0.5s ease-in-out normal 0.2s;
    animation: shooting 0.5s ease-in-out normal 0.2s
  }

  .page-companyIndex .index__list .item.is-show .item__ttl {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s
  }

  .page-companyIndex .index__list .item.is-show .item__txt {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s
  }

  .page-companyIndex .index__list .item.is-show .item__img:before {
    -webkit-transform: translateY(-101%);
    transform: translateY(-101%)
  }

  .page-companyIndex .index__list .item.is-show .item__imgInner {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

.page-companyProfile>.content {
  padding-bottom: 0
}

.page-companyProfile .content__mainImage .imgArea {
  width: auto
}

.page-companyProfile .content__mainImage .profileSlide {
  background: #f7f7f7;
  position: relative;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: opacity .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s
}

.page-companyProfile .content__mainImage .profileSlide:before {
  content: "";
  position: absolute;
  bottom: 0;
  height: 7rem;
  background: #ffffff;
  width: 100%
}

.page-companyProfile .content__mainImage .fv__slide {
  max-width: 80rem;
  margin: 0 auto;
  overflow: visible;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-companyProfile .content__mainImage .fv__slide.is-next {
  -webkit-transform: translateX(-1rem);
  transform: translateX(-1rem)
}

.page-companyProfile .content__mainImage .fv__slide.is-prev {
  -webkit-transform: translateX(1rem);
  transform: translateX(1rem)
}

.page-companyProfile .content__mainImage .fv__slide .fv-next,
.page-companyProfile .content__mainImage .fv__slide .fv-prev {
  position: absolute;
  z-index: 4;
  width: 100%;
  height: 100%
}

.page-companyProfile .content__mainImage .fv__slide .fv-next.swiper-button-disabled,
.page-companyProfile .content__mainImage .fv__slide .fv-prev.swiper-button-disabled {
  pointer-events: none
}

.page-companyProfile .content__mainImage .fv__slide .fv-next {
  right: -100%
}

.page-companyProfile .content__mainImage .fv__slide .fv-prev {
  left: -100%
}

.page-companyProfile .content__mainImage .fv__slide .list .item {
  padding: 0 2.5rem
}

.page-companyProfile .content__mainImage.is-visible .profileSlide {
  opacity: 1
}

.page-companyProfile .content__col2 {
  background: #ffffff;
  padding-bottom: 0
}

.page-companyProfile .message {
    margin-bottom: 12rem;
}

.page-companyProfile .info {
  margin-bottom: 12rem
}

.page-companyProfile .info__table {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyProfile .info.is-show .info__table {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.page-companyProfile .access {
  position: relative
}

.page-companyProfile .access:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 35rem;
  background: #f7f7f7
}

.page-companyProfile .access__txt {
  margin-bottom: 5rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyProfile .access__map {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyProfile .access__map .ggmap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden
}

.page-companyProfile .access__map .ggmap iframe,
.page-companyProfile .access__map .ggmap object,
.page-companyProfile .access__map .ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.page-companyProfile .access.is-show .access__txt,
.page-companyProfile .access.is-show .access__map {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-companyProfile .access.is-show .access__txt {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.page-companyProfile .access.is-show .access__map {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.page-companyProfile .client {
  padding-top: 16rem;
  background: #fff;
  padding-bottom: 16rem
}

.page-companyProfile .office {
  padding-bottom: 16rem;
  background: #f7f7f7
}

/*2133*/

.page-about .container .is-show .mission__copy {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
    -webkit-transform: translateY(0rem);
    transform: translateY(0rem);
    opacity: 1;
}

.page-about .container .mission__copy {
    font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
    font-size: 7rem;
    line-height: 1.2;
    padding-left: 15rem;
    margin-top: -3rem;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transform: translateY(5rem);
    transform: translateY(5rem);
    opacity: 0;
    will-change: transform, opacity;
    white-space: nowrap;
}
/**/
.page-companyProfile .office__slide {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyProfile .office__slide * {
  outline: none
}

.page-companyProfile .office__slide .office__main {
  position: relative
}

.page-companyProfile .office__slide .office__main .slick-prev,
.page-companyProfile .office__slide .office__main .slick-next {
  position: absolute;
  top: 0;
  z-index: 4;
  width: 13%;
  height: 100%
}

.page-companyProfile .office__slide .office__main .slick-next {
  right: 0
}

.page-companyProfile .office__slide .office__main .slick-prev {
  left: 0
}

.page-companyProfile .office__slide .office__main .slick-dots {
  display: none !important
}

.page-companyProfile .office__slide .office__thumb {
  position: relative
}

.page-companyProfile .office__slide .slide__main {
  margin-bottom: 3rem;
  overflow: hidden
}

.page-companyProfile .office__slide .slide__main .slick-track {
  -webkit-transition: left .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: left .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-companyProfile .office__slide .slide__main .slick-track.is-next {
  left: -1rem
}

.page-companyProfile .office__slide .slide__main .slick-track.is-prev {
  left: 1rem
}

.page-companyProfile .office__slide .slide__main .slick-list {
  overflow: visible
}

.page-companyProfile .office__slide .slide__main .slick-list .slick-slide {
  padding: 0 2rem
}

.page-companyProfile .office__slide .slide__main .slick-list .cap {
  margin-top: 1.5rem;
  text-align: center;
  font-size: 1.2rem;
  font-family: "heebo", sans-serif;
  font-weight: 500
}

.page-companyProfile .office__slide .slide__nav {
  width: 50rem;
  margin: 0 auto;
  cursor: pointer
}

.page-companyProfile .office__slide .slide__nav .slick-slide {
  padding: 0 0.5rem
}

.page-companyProfile .office__slide .slide__navPager {
  position: absolute;
  width: 50rem;
  left: 50%;
  margin-left: -25rem;
  height: 100%
}

.page-companyProfile .office__slide .slide__navPager .slick-navPrev,
.page-companyProfile .office__slide .slide__navPager .slick-navNext {
  text-decoration: none;
  position: absolute;
  height: 100%;
  width: 7rem;
  cursor: pointer
}

.page-companyProfile .office__slide .slide__navPager .slick-navPrev:before,
.page-companyProfile .office__slide .slide__navPager .slick-navNext:before {
  position: absolute;
  top: 50%;
  margin-top: -1rem;
  color: #cccccc;
  font-size: 2rem
}

.page-companyProfile .office__slide .slide__navPager .slick-navPrev {
  left: -7rem
}

.page-companyProfile .office__slide .slide__navPager .slick-navPrev:before {
  content: '\e112';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.page-companyProfile .office__slide .slide__navPager .slick-navNext {
  right: -7rem
}

.page-companyProfile .office__slide .slide__navPager .slick-navNext:before {
  right: 0;
  content: '\e113';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.page-companyProfile .office.is-show .office__slide {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

@media only screen and (max-width: 768px) {
  .page-companyProfile .content__mainImage .profileSlide:before {
    display: none
  }

  .page-companyProfile .content__mainImage .fv__slide {
    max-width: 29rem;
    margin: 0
  }

  .page-companyProfile .content__mainImage .fv__slide .list .item {
    padding: 0
  }

  .page-companyProfile .content__col2 {
    background: #f7f7f7
  }

  .page-companyProfile .info {
    margin-bottom: 7.5rem
  }

  .page-companyProfile .access:before {
    display: none
  }

  .page-companyProfile .access__txt {
    margin-bottom: 2rem
  }

  .page-companyProfile .client {
    padding-top: 0rem;
    padding-bottom: 0rem
  }

  .page-companyProfile .office {
    padding-bottom: 8rem;
    overflow: hidden
  }

  .page-companyProfile .office__slide {
    margin: 0 -1.5rem
  }

  .page-companyProfile .office__slide .office__main .slide__pager {
    display: none
  }

  .page-companyProfile .office__slide .office__thumb {
    display: none
  }

  .page-companyProfile .office__slide .slide__main {
    width: 29rem;
    margin-bottom: 3rem;
    overflow: visible
  }

  .page-companyProfile .office__slide .slide__main .slick-track {
    -webkit-transition: left .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: left .4s cubic-bezier(0.215, 0.61, 0.355, 1)
  }

  .page-companyProfile .office__slide .slide__main .slick-track.is-next {
    left: auto
  }

  .page-companyProfile .office__slide .slide__main .slick-track.is-prev {
    left: auto
  }

  .page-companyProfile .office__slide .slide__main .slick-list {
    overflow: visible !important
  }

  .page-companyProfile .office__slide .slide__main .slick-list .slick-slide {
    padding: 0;
    padding-right: 25px
  }

  .page-companyProfile .office__slide .slide__main .slick-list .thumbnail {
    padding-bottom: 100%
  }

  .page-companyProfile .office__slide .slide__main .slick-list .thumbnail img {
    height: 100%;
    width: auto;
    left: 50%;
    margin-left: -20rem
  }

  .page-companyProfile .office__slide .slide__main .slick-list .cap {
    text-align: left;
    padding: 0 1.5rem
  }

  .page-companyProfile .office__slide .slide__navPager {
    display: none
  }
}

.page-companyHistory>.content {
  padding-bottom: 0
}

.page-companyHistory .content__intro {
  padding: 0
}

.page-companyHistory .content__col2 {
  background: #ffffff;
  padding-bottom: 0
}

.page-companyHistory .view {
  padding-bottom: 8rem
}

.page-companyHistory .view__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-companyHistory .view__list .item {
  width: 47.7777%;
  padding: 6rem 0 8rem;
  text-align: center;
  position: relative;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyHistory .view__list .item:before {
  position: absolute;
  z-index: -1;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 37rem;
  background: #f7f7f7
}

.page-companyHistory .view__list .item.played .icon:before {
  width: 6rem;
  height: 6rem;
  background-image: url("../imgs/common/seen_icon1.svg")
}

.page-companyHistory .view__list .item.productions .icon:before {
  width: 7.9rem;
  height: 6.3rem;
  background-image: url("../imgs/common/seen_icon2.svg")
}

.page-companyHistory .view__list .item.influencer .icon:before {
  width: 5.7rem;
  height: 5.7rem;
  background-image: url("../imgs/common/seen_icon3.svg")
}

.page-companyHistory .view__list .item.influencer .item__img .ttl {
  font-size: 1.2rem
}

.page-companyHistory .view__list .item.followers .icon:before {
  width: 5.7rem;
  height: 5.7rem;
  background-image: url("../imgs/common/seen_icon4.svg")
}

.page-companyHistory .view__list .item__img {
  width: 21rem;
  height: 21rem;
  border-radius: 21rem;
  background: #ffffff;
  margin: 0 auto;
  -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 4rem
}

.page-companyHistory .view__list .item__imgInner .icon {
  margin-bottom: 1rem
}

.page-companyHistory .view__list .item__imgInner .icon:before {
  content: "";
  display: block;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain
}

.page-companyHistory .view__list .item__imgInner .ttl {
  line-height: 1.4;
  font-weight: 700
}

.page-companyHistory .view__list .item__ttl {
  padding-bottom: 3rem;
  margin-bottom: 3.5rem;
  position: relative
}

.page-companyHistory .view__list .item__ttl:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -1.5rem;
  width: 3rem;
  height: 1px;
  background: #333
}

.page-companyHistory .view__list .item__ttl .txt {
  font-family: "heebo", sans-serif;
  color: #999999;
  line-height: 1;
  margin-bottom: 1.5rem
}

.page-companyHistory .view__list .item__ttl .num {
  font-size: 6rem;
  font-family: "heebo", sans-serif;
  font-weight: 700;
  line-height: 1
}

.page-companyHistory .view__list .item__ttl .num span {
  font-size: 4rem
}

.page-companyHistory .view__list .item__ttl .num span.jp {
  font-size: 1.4rem
}

.page-companyHistory .view__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-companyHistory .history {
  padding-top: 15rem;
  background: #f7f7f7
}

.page-companyHistory .history__list {
  margin-bottom: 20rem
}

.page-companyHistory .history__list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyHistory .history__list .item+.item {
  margin-top: 8rem
}

.page-companyHistory .history__list .item__year {
  width: 14rem;
  line-height: 1.4;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 3rem;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  font-weight: 700
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  .page-companyHistory .history__list .item__year {
    border-width: 0.5px
  }
}

.page-companyHistory .history__list .item__detail {
  width: calc(100% - 18rem)
}

.page-companyHistory .history__list .item__detail dl dt {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 1.5rem;
  margin-top: 5rem
}

.page-companyHistory .history__list .item__detail dl dt:first-child {
  margin-top: 0
}

.page-companyHistory .history__list .item__detail dl dd {
  line-height: 1.5
}

.page-companyHistory .history__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

@media only screen and (max-width: 768px) {
  .page-companyHistory .view {
    padding-bottom: 7.5rem
  }

  .page-companyHistory .view__list {
    display: block
  }

  .page-companyHistory .view__list .item {
    width: auto;
    padding: 5rem 0 5rem
  }

  .page-companyHistory .view__list .item:before {
    height: 30rem
  }

  .page-companyHistory .view__list .item.played .icon:before {
    width: 4.8rem;
    height: 4.8rem
  }

  .page-companyHistory .view__list .item.productions .icon:before {
    width: 6.3rem;
    height: 5rem
  }

  .page-companyHistory .view__list .item.influencer .icon:before {
    width: 4.5rem;
    height: 4.5rem
  }

  .page-companyHistory .view__list .item.influencer .item__img .ttl {
    font-size: 1.1rem
  }

  .page-companyHistory .view__list .item.followers .icon:before {
    width: 4.5rem;
    height: 4.5rem
  }

  .page-companyHistory .view__list .item__img {
    width: 16.8rem;
    height: 16.8rem;
    margin-bottom: 3.5rem
  }

  .page-companyHistory .view__list .item__imgInner .ttl {
    font-size: 1.2rem
  }

  .page-companyHistory .view__list .item__ttl {
    padding-bottom: 2rem;
    margin-bottom: 2.5rem
  }

  .page-companyHistory .view__list .item__ttl:before {
    margin-left: -1.2rem;
    width: 2.4rem
  }

  .page-companyHistory .view__list .item__ttl .txt {
    margin-bottom: 1rem;
    font-size: 1.1rem
  }

  .page-companyHistory .view__list .item__ttl .num {
    font-size: 4.8rem
  }

  .page-companyHistory .view__list .item__ttl .num span {
    font-size: 2.8rem
  }

  .page-companyHistory .view__list .item.is-show {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
  }

  .page-companyHistory .history {
    padding-top: 7.5rem
  }

  .page-companyHistory .history__list {
    margin-bottom: 7.5rem
  }

  .page-companyHistory .history__list .item+.item {
    margin-top: 4rem
  }

  .page-companyHistory .history__list .item__year {
    width: 6.5rem;
    padding-left: 0;
    border-left: none
  }

  .page-companyHistory .history__list .item__detail {
    width: calc(100% - 8.5rem)
  }

  .page-companyHistory .history__list .item__detail dl dt {
    font-size: 1.4rem;
    margin-bottom: 1rem;
    margin-top: 3rem
  }
}

.page-companyPresskit>.content {
  padding-bottom: 0
}

.page-companyPresskit>.content .content__ttl:before,
.page-companyPresskit>.content .content__ttl:after {
  display: none
}

.page-companyPresskit .content__body .container {
  max-width: 114rem
}

.page-companyPresskit .presskit {
  margin-bottom: 5rem
}

.page-companyPresskit .presskit__lead {
  margin-bottom: 6rem
}

.page-companyPresskit .presskit__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-companyPresskit .presskit__list .item {
  padding-top: 7rem;
  width: 47%;
  margin-bottom: 9rem;
  position: relative;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyPresskit .presskit__list .item .shooting-line {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 1px;
  left: 0;
  top: 0;
  background: #e6e6e6
}

.page-companyPresskit .presskit__list .item .shooting-line.bottom {
  top: auto;
  bottom: 0
}

.page-companyPresskit .presskit__list .item .shooting-line:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #333;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.page-companyPresskit .presskit__list .item__img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  overflow: hidden;
  margin-bottom: 3rem;
  position: relative
}

.page-companyPresskit .presskit__list .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-companyPresskit .presskit__list .item__imgInner {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  position: relative;
  z-index: 0;
  padding-bottom: 68%;
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

.page-companyPresskit .presskit__list .item__imgInner img {
  position: absolute;
  top: 0;
  left: 0
}

.page-companyPresskit .presskit__list .item__sub {
  font-size: 1rem;
  margin-bottom: 1rem
}

.page-companyPresskit .presskit__list .item__ttl {
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1;
  font-size: 2.4rem;
  margin-bottom: 2rem;
  display: inline-block;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyPresskit .presskit__list .item__ttl .c-linelink__txt {
  display: inline-block
}

.page-companyPresskit .presskit__list .item__btn {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyPresskit .presskit__list .item a {
  display: block
}

html.notouch .page-companyPresskit .presskit__list .item a:hover .item__img {
  -webkit-transform: scale(0.95);
  transform: scale(0.95)
}

html.notouch .page-companyPresskit .presskit__list .item a:hover .item__imgInner {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, -webkit-transform .4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.page-companyPresskit .presskit__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-companyPresskit .presskit__list .item.is-visible .shooting-line:before {
  -webkit-animation: shooting 0.5s ease-in-out normal 0.2s;
  animation: shooting 0.5s ease-in-out normal 0.2s
}

.page-companyPresskit .presskit__list .item.is-visible .item__ttl {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s
}

.page-companyPresskit .presskit__list .item.is-visible .item__ttl .c-linelink__txt {
  -webkit-animation: none;
  animation: none;
  background-position: left bottom;
  background-size: 100% 1px
}

.page-companyPresskit .presskit__list .item.is-visible .item__btn {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s
}

.page-companyPresskit .presskit__list .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.page-companyPresskit .presskit__list .item.is-visible .item__imgInner.is-show {
  -webkit-transform: scale(1);
  transform: scale(1)
}

@media only screen and (max-width: 768px) {
  .page-companyPresskit .presskit {
    margin-bottom: 9rem
  }

  .page-companyPresskit .presskit__lead {
    font-size: 1.2rem;
    margin-bottom: 4rem
  }

  .page-companyPresskit .presskit__list {
    display: block
  }

  .page-companyPresskit .presskit__list .item {
    padding-top: 4rem;
    width: auto;
    margin-bottom: 5rem
  }

  .page-companyPresskit .presskit__list .item__img {
    margin-bottom: 2rem
  }

  .page-companyPresskit .presskit__list .item__sub {
    margin-bottom: 0.5rem
  }

  .page-companyPresskit .presskit__list .item__ttl {
    font-size: 1.9rem;
    margin-bottom: 2rem
  }

  .page-companyPresskit .presskit__list .item__ttl .c-linelink__txt {
    background: url("../imgs/common/line.png") no-repeat left bottom !important;
    background-size: 100% 1px !important
  }

  .page-companyPresskit .presskit__list .item.is-show {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
  }

  .page-companyPresskit .presskit__list .item.is-show .shooting-line:before {
    -webkit-animation: shooting 0.5s ease-in-out normal 0.2s;
    animation: shooting 0.5s ease-in-out normal 0.2s
  }

  .page-companyPresskit .presskit__list .item.is-show .item__ttl {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s
  }

  .page-companyPresskit .presskit__list .item.is-show .item__ttl .c-linelink__txt {
    -webkit-animation: none;
    animation: none;
    background-position: left bottom;
    background-size: 100% 1px
  }

  .page-companyPresskit .presskit__list .item.is-show .item__btn {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s
  }

  .page-companyPresskit .presskit__list .item.is-show .item__img:before {
    -webkit-transform: translateY(-101%);
    transform: translateY(-101%)
  }

  .page-companyPresskit .presskit__list .item.is-show .item__imgInner {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

.page-about>.content {
  padding-bottom: 0
}

.page-about .content__mainImage .imgArea .video {
  width: 100%;
  height: 60rem;
  overflow: hidden;
  pointer-events: none
}

.page-about .content__mainImage .imgArea .videoInner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 0;
  padding-bottom: 62%
}

.page-about .content__mainImage .imgArea .videoInner .videolink {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 2
}

.page-about .content__mainImage .imgArea .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top
}

.page-about .content__col2 {
  padding-top: 0
}

.page-about .content__intro {
  padding-top: 0
}

.page-about .col2__aside .aside__navList .item {
  /*letter-spacing: -0.1em;*/
  font-family: "heebo", sans-serif;
  text-transform: uppercase;
}

.page-about .statement {
  background: #ffffff;
  padding-bottom: 20rem
}

.page-about .statement__copy {
  width: 63.7rem;
  margin-bottom: 8rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  margin-left: 10rem
}

.page-about .statement__txt {
  max-width: 70rem;
  margin-left: 10rem
}

.page-about .statement__txt .txt {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 2.3rem;
  line-height: 2.5
}

.page-about .statement__txt .txt .tittle{
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 4rem;
  line-height: 2;
  margin-bottom: 3rem;

}

.page-about .statement__txt .txt .item {
  display: inline-block;
  overflow: hidden;
  line-height: 1;
  -webkit-transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-about .statement__txt .txt .item__inner {
  display: inline-block;
  -webkit-transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem)
}

.page-about .statement__txt .txt .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-about .statement__txt .txt .item.is-visible .item__inner {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-about .statement.is-show .statement__copy {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

.page-about .statement.is-show .statement__copy:before {
  width: 35rem
}

.page-about .mvv {
  padding: 15rem 0;
  overflow: hidden
}

.page-about .mvv__item {
  padding-left: 20rem;
  position: relative
}

.page-about .mvv__item .section__sttl {
  font-size: 1.4rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  padding-top: 4rem;
  padding-bottom: 0;
  text-transform: uppercase;
}

.about_v{
  font-size: 1.4rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  padding-top: 4rem;
  padding-bottom: 0;
  text-transform: uppercase;
}

.page-about .mvv__itemInner {
  position: relative;
  z-index: 1
}

.page-about .mvv__item.is-show .mvv__bg {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

.page-about .mvv__item.value {
  padding-left: 0
}

.page-about .mvv__item.info {
  padding-left: 0;
  margin-top: 20rem;

}

.page-about .mvv__bg {
  position: absolute;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .mvv__bg .bg__txt {
  font-size: 15rem;
  font-family: "heebo", sans-serif;
  font-weight: bolder;
  color: #07f1cb80;
  line-height: 1;
  letter-spacing: -0.3rem;
}

.page-about .mvv__bg .bg__label {
  position: absolute;
  font-size: 1.5rem;
  color: #999999
}

.page-about .mvv .mission {
  margin-bottom: 10rem
}

.page-about .mvv .mission__copy {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 7rem;
  line-height: 1.2;
  padding-left: 15rem;
  margin-top: -3rem;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  white-space: nowrap
}

html.isIE .page-about .mvv .mission__copy {
  max-height: 7em
}

.page-about .mvv .mission .mvv__bg {
  top: 12rem;
  left: -2rem
}

.page-about .mvv .mission .mvv__bg .bg__label {
  bottom: -1rem;
  left: 2rem
}

.page-about .mvv .mission.is-show .mission__copy {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1
}

.page-about .mvv .vision {
  margin-bottom: 16rem
}

.page-about .mvv .vision__copy {
  padding-left: 24rem;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 1.6rem;
  margin-top: -3.5rem;
  line-height: 2.1
}

.page-about .mvv .vision__copy .copy__list.sp {
  display: none
}

.page-about .mvv .vision__copy .item {
  display: block;
  overflow: hidden;
  -webkit-transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-about .mvv .vision__copy .item__inner {
  display: inline-block;
  -webkit-transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem)
}

.page-about .mvv .vision__copy .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-about .mvv .vision__copy .item.is-visible .item__inner {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-about .mvv .vision.is-show .mvv__bg {
  -webkit-transform: rotate(90deg) translateX(0rem);
  transform: rotate(90deg) translateX(0rem)
}

.page-about .mvv .value__copy {
  padding-left: 12rem;
  margin-top: -3rem;
  padding-bottom: 14rem
}

.page-about .mvv .value__copy .item+.item {
  margin-top: 2rem
}

.page-about .mvv .value__copy .item .txt {
  -webkit-transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  overflow: hidden;
  line-height: 1
}

.page-about .mvv .value__copy .item .txtInner {
  display: inline-block;
  -webkit-transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem)
}

.page-about .mvv .value__copy .item .en {
  margin-bottom: 2rem
}

.page-about .mvv .value__copy .item .en .img.capture {
  width: 14rem
}

.page-about .mvv .value__copy .item .en .img.connect {
  width: 14.8rem
}

.page-about .mvv .value__copy .item .en .img.construct {
  width: 16rem
}

.page-about .mvv .value__copy .item .jp {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 4rem;
  line-height: 1.4;
  -webkit-transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s
}

.page-about .mvv .value__copy .item.is-visible .txt {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-about .mvv .value__copy .item.is-visible .txtInner {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-about .mvv .value .mvv__bg {
  bottom: -9rem;
  left: 0
}

.page-about .mvv .value .mvv__bg .bg__label {
  top: 16rem
}

.page-about .message {
  background: #ffffff;
  padding: 15rem 0 20rem
}

.page-about .message__img {
  margin-bottom: 5rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .message__txt {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .message__txt dl dt {
  margin-top: 3rem;
  font-size: 2.4rem;
  font-weight: 700
}

.page-about .message__txt dl dd {
  margin-top: 1rem;
  font-size: 1.6rem
}

.page-companyProfile .message__img {
  margin-bottom: 5rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyProfile .message__txt {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-companyProfile .message.is-show .message__img {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.page-companyProfile .message.is-show .message__txt {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s
}

.page-companyProfile .message__txt dt{
  display: flex;
  align-items: center;
  height: 100%; /* 必要に応じて高さを指定 */
}

.page-companyProfile .message__txt dl dt span{
  margin-left: 1rem;
  font-size: 1.3rem;
}

.page-companyProfile .message__txt dl dt {
  margin-top: 3rem;
  font-size: 2.4rem;
  font-weight: 700
}

.page-companyProfile .message__txt dl dd {
  margin-top: 1rem;
  font-size: 1.6rem
}


.page-about .message__sign {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity;
  margin-top: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.page-about .message__sign .img {
  width: 6.2rem;
  margin-left: 0.8rem
}

.page-about .message.is-show .message__img {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.page-about .message.is-show .message__txt {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s
}

.page-about .message.is-show .message__sign {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s
}

.page-about .identity {
  padding: 15rem 0
}

.page-about .identity .identity__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.page-about .identity .identity__content .img {
  width: 46%;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .identity .identity__content .txt {
  width: 46%;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .identity .identity__content .txt dt {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 2.4rem;
  line-height: 1.4;
  margin-bottom: 3rem
}

.page-about .identity.is-show .identity__content .img {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.page-about .identity.is-show .identity__content .txt {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.page-about .blog {
  padding: 15rem 0 0
}

.page-about .blog__txt {
  margin-bottom: 4rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .blog__btn {
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0;
  will-change: transform, opacity
}

.page-about .blog.is-show .blog__txt {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.page-about .blog.is-show .blog__btn {
  -webkit-transform: translateY(0rem);
  transform: translateY(0rem);
  opacity: 1;
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.page-about .content__foot .foot__nextArea {
  height: 50rem;
  width: 100%
}

.page-about .content__foot .foot__nextArea .container {
  height: 100%
}

.page-about .content__foot .foot__nextArea .body {
  padding-right: 0
}

@media only screen and (max-width: 768px) {
  .page-about .content__mainImage .imgArea .video {
    height: 30rem
  }

  .page-about .content__mainImage .imgArea .videoInner {
    padding-bottom: 100%
  }

  .page-about .content__mainImage .imgArea .video .mod-modalBtn {
    display: none
  }

  .page-about .statement {
    padding: 0 2rem 10rem !important
  }

  .page-about .statement__copy {
    width: 100%;
    margin-left: 0;
    margin-bottom: 6rem
  }


.page-about .mvv__item.info {

  margin-top: 6rem;

}

  .page-about .statement__txt {
    margin-left: 0
  }

  .page-about .statement__txt .txt {
    font-size: 2.1rem;
    line-height: 1.8
  }

  .page-about .statement__txt .txt .item {
  
  line-height: 2
  }

 /* .page-about .statement__txt .txt .item__inner {
    display: inline
  }*/

  .page-about .statement__txt .txt .tittle {
    font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
    font-size: 3.6rem;
    line-height: 1.3;
    margin-bottom: 4rem;
}

.down_title{

  margin-top: 1.5rem;
  margin-left: -1rem;

}

  .page-about .statement.is-show .statement__copy:before {
    width: 16rem
  }

  .page-about .mvv {
    padding: 10rem 0
  }

  .page-about .mvv__item {
    padding-left: 2.5rem
  }

  .page-about .mvv__item .section__sttl {
    font-size: 1.2rem;
    font-weight: 400;
    padding-top: 4rem;
    padding-bottom: 0;
    color: #cccccc
  }

  .about_v {
    font-size: 1.2rem;
    font-weight: 400;
    padding-top: 4rem;
    padding-bottom: 0;
    color: #cccccc
  }

   .about_v.b-texteffect__text{

    transform: rotate(90deg);
    position: relative;
    left: -1.2rem;

  }

  .section .is-show .b-texteffect__text{

    transform: rotate(90deg);
    position: relative;
    left: -1.2rem;

  }


  .is-show .b-texteffect {
    overflow: inherit
  }


  .page-about .mvv__item .section__sttl .b-texteffect {
    overflow: inherit
  }

  .page-about .mvv__item .section__sttl .b-texteffect__text {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    position: relative;
    left: -1.2rem
  }

   .page-about .mvv__item .section__sttl .b-texteffect__text {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    position: relative;
    left: -1.2rem
  }




  .page-about .mvv__bg .bg__txt {
    font-size: 12rem
  }

  .page-about .mvv__bg .bg__label {
    display: none
  }

  .page-about .mvv .mission {
    margin-bottom: 8rem
  }

  .page-about .mvv .mission__copy {
    font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
    font-size: 3.6rem;
    line-height: 1.5;
    padding-left: 5.5rem;
    margin-top: -4.5rem;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    -o-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    white-space: inherit
  }

  .page-about .mvv .mission .mvv__bg {
    top: 3.5rem;
    left: -1.5rem
  }

  .page-about .mvv .vision {
    margin-bottom: 6rem
  }

  .page-about .mvv .vision__copy {
    padding-left: 6.5rem;
    padding-right: 2rem;
    font-size: 1.4rem;
    margin-top: -3.5rem;
    line-height: 2
  }

  .page-about .mvv .vision__copy .copy__list.pc {
    display: none
  }

  .page-about .mvv .vision__copy .copy__list.sp {
    display: block
  }

  .page-about .mvv .vision .mvv__bg {
    top: 4.2rem;
    right: auto;
    left: 0rem;
    -webkit-transform: rotate(0deg) translate(0, 5rem);
    transform: rotate(0deg) translate(0, 5rem)
  }

  .page-about .mvv .vision.is-show .mvv__bg {
    -webkit-transform: rotate(0deg) translate(0, 0);
    transform: rotate(0deg) translate(0, 0)
  }

  .page-about .mvv .value__copy {
    padding-bottom: 0;
    padding-left: 6.5rem;
    margin-top: -3rem
  }

  .page-about .mvv .value__copy .item+.item {
    margin-top: 3rem
  }

  .page-about .mvv .value__copy .item .en .img.capture {
    width: 7rem
  }

  .page-about .mvv .value__copy .item .en .img.connect {
    width: 7.4rem
  }

  .page-about .mvv .value__copy .item .en .img.construct {
    width: 8rem
  }

  .page-about .mvv .value__copy .item .jp {
    font-size: 3rem;
    margin-bottom: -3rem;
  }

  .page-about .mvv .value .mvv__bg {
    top: 4.4rem;
    bottom: auto;
    left: 0
  }

  .page-about .message {
    padding: 7.5rem 0
  }

  .page-about .message__img {
    margin-bottom: 2.5rem
  }

  .page-about .message__txt dl dt {
    font-size: 1.8rem
  }

  .page-about .message__txt dl dd {
    margin-top: 0.5rem;
    font-size: 1.4rem
  }

  .page-about .message__sign {
    margin-top: 2rem
  }

  .page-about .identity {
    padding: 7.5rem 0
  }

  .page-about .identity .identity__content {
    display: block
  }

  .page-about .identity .identity__content .img {
    width: auto;
    margin-bottom: 2rem
  }

  .page-about .identity .identity__content .txt {
    width: auto
  }

  .page-about .identity .identity__content .txt dt {
    font-size: 1.9rem;
    margin-bottom: 2rem
  }

  .page-about .identity .identity__content .txt dd {
    font-size: 1.4rem
  }

  .page-about .blog {
    padding: 7.5rem 0
  }

  .page-about .blog__txt {
    font-size: 1.2rem;
    margin-bottom: 2.5rem
  }

  .page-about .content__foot .foot__nextArea {
    height: 25rem
  }

  .page-about .content__foot .foot__nextArea .container {
    height: auto
  }
}

.page-worksIndex .content__ttl:before,
.page-worksIndex .content__ttl:after {
  display: none
}

.page-worksIndex .worksIndex__main {
  zoom: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  max-width: 128rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 4rem;
  padding-left: 4rem
}

.page-worksIndex .worksIndex__main:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

@media only screen and (max-width: 768px) {
  .page-worksIndex .worksIndex__main {
    width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem
  }
}

.page-worksIndex .worksIndex__mainInner {
  max-width: 96rem
}

.page-worksIndex .worksIndex__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -5rem
}

.page-worksIndex .worksIndex__list:after {
  content: "";
  display: block;
  width: 30.5208%
}

.page-worksIndex .worksIndex__list .item {
  width: 30.5208%;
  margin-bottom: 5rem;
  -webkit-transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) .4s;
  transition: all .8s cubic-bezier(0.215, 0.61, 0.355, 1) .4s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-worksIndex .worksIndex__list .item:nth-child(1),
.page-worksIndex .worksIndex__list .item:nth-child(2) {
  width: 47.9166%
}

.page-worksIndex .worksIndex__list .item:nth-child(1) .item__img,
.page-worksIndex .worksIndex__list .item:nth-child(2) .item__img {
  margin-bottom: 2.5rem
}

.page-worksIndex .worksIndex__list .item:nth-child(1) .item__cat,
.page-worksIndex .worksIndex__list .item:nth-child(2) .item__cat {
  font-size: 1.4rem;
  margin-bottom: 1.2rem
}

.page-worksIndex .worksIndex__list .item:nth-child(1) .item__ttl,
.page-worksIndex .worksIndex__list .item:nth-child(2) .item__ttl {
  font-size: 1.8rem
}

.page-worksIndex .worksIndex__list .item.section:nth-child(1),
.page-worksIndex .worksIndex__list .item.section:nth-child(2) {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-worksIndex .worksIndex__list .item.noPost {
  padding-top: 4rem
}

.page-worksIndex .worksIndex__list .item.is-visible,
.page-worksIndex .worksIndex__list .item.is-show {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-worksIndex .worksIndex__list .item a {
  display: block;
  overflow: hidden;
  text-decoration: none
}

.page-worksIndex .worksIndex__list .item__img {
  margin-bottom: 2rem
}

.page-worksIndex .worksIndex__list .item__img.noimage {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: rgba(0, 0, 0, 0.1) solid 1px
}

.page-worksIndex .worksIndex__list .item__cat {
  margin-bottom: 0.8rem;
  font-size: 1.2rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1;
  color: #cccccc;
  position: relative
}

.page-worksIndex .worksIndex__list .item__ttl {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 1.4rem;
  line-height: 1.38
}

@media only screen and (max-width: 768px) {

  .page-worksIndex .content__ttl:before,
  .page-worksIndex .content__ttl:after {
    display: block
  }

  .page-worksIndex .worksIndex__list {
    display: block;
    margin-bottom: 0
  }

  .page-worksIndex .worksIndex__list:after {
    display: none
  }

  .page-worksIndex .worksIndex__list .item {
    width: 100%;
    margin-bottom: 0
  }

  .page-worksIndex .worksIndex__list .item+.item {
    margin-top: 5rem
  }

  .page-worksIndex .worksIndex__list .item:nth-child(1),
  .page-worksIndex .worksIndex__list .item:nth-child(2) {
    width: 100%
  }

  .page-worksIndex .worksIndex__list .item:nth-child(1) .item__img,
  .page-worksIndex .worksIndex__list .item:nth-child(2) .item__img {
    margin-bottom: 2rem
  }

  .page-worksIndex .worksIndex__list .item:nth-child(1) .item__cat,
  .page-worksIndex .worksIndex__list .item:nth-child(2) .item__cat {
    font-size: 1.1rem;
    margin-bottom: 0.8rem
  }

  .page-worksIndex .worksIndex__list .item:nth-child(1) .item__ttl,
  .page-worksIndex .worksIndex__list .item:nth-child(2) .item__ttl {
    font-size: 1.4rem
  }

  .page-worksIndex .worksIndex__list .item.noPost {
    text-align: center;
    font-size: 1.2rem
  }

  .page-worksIndex .worksIndex__list .item__img {
    margin-bottom: 2rem
  }

  .page-worksIndex .worksIndex__list .item__cat {
    margin-bottom: 0.8rem;
    font-size: 1.1rem
  }

  .page-worksIndex .worksIndex__list .item__ttl {
    font-size: 1.4rem;
    line-height: 1.38
  }
}

.img-ov {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  position: relative;
  z-index: 0
}

.img-ov img {
  -webkit-transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transform: scale(1.005);
  transform: scale(1.005)
}

html.notouch a:hover .img-ov img {
  -webkit-transform: scale(1.05) !important;
  transform: scale(1.05) !important
}

.page-worksDetail .worksDetail__related {
  border-top: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
  padding: 10rem 0;
  background: #efefef;
  overflow: hidden
}

.page-worksDetail .worksDetail__related .related__ttl {
  font-size: 1.8rem;
  font-family: "heebo", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  position: relative
}

.page-worksDetail .worksDetail__related .related__head {
  position: relative
}

.page-worksDetail .worksDetail__related .related__head .head__btn {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.page-worksDetail .worksDetail__related .related__head .head__btn a {
  display: block
}

.page-worksDetail .worksDetail__related .related__head .head__nextback {
  position: absolute;
  right: 9rem;
  bottom: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0
}

.page-worksDetail .worksDetail__related .related__head .head__nextback .related-prev,
.page-worksDetail .worksDetail__related .related__head .head__nextback .related-next {
  outline: none;
  padding: 0 1rem;
  text-decoration: none
}

.page-worksDetail .worksDetail__related .related__head .head__nextback .related-prev:before,
.page-worksDetail .worksDetail__related .related__head .head__nextback .related-next:before {
  -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
  font-size: 0.9rem
}

.page-worksDetail .worksDetail__related .related__head .head__nextback .related-prev.swiper-button-disabled,
.page-worksDetail .worksDetail__related .related__head .head__nextback .related-next.swiper-button-disabled {
  pointer-events: none
}

.page-worksDetail .worksDetail__related .related__head .head__nextback .related-prev.swiper-button-disabled:before,
.page-worksDetail .worksDetail__related .related__head .head__nextback .related-next.swiper-button-disabled:before {
  color: rgba(51, 51, 51, 0.2)
}

.page-worksDetail .worksDetail__related .related__head .head__nextback .related-prev:before {
  content: '\e103';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.page-worksDetail .worksDetail__related .related__head .head__nextback .related-next:before {
  content: '\e101';
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.page-worksDetail .worksDetail__related .related__slide {
  width: 100rem;
  overflow: inherit;
  margin-left: 0;
  padding-top: 5rem;
  -webkit-transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.page-worksDetail .worksDetail__related .related__slide.is-next {
  -webkit-transform: translateX(-1rem);
  transform: translateX(-1rem)
}

.page-worksDetail .worksDetail__related .related__slide.is-prev {
  -webkit-transform: translateX(1rem);
  transform: translateX(1rem)
}

.page-worksDetail .worksDetail__related .related__slide .tips {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100vw;
  cursor: pointer
}

.page-worksDetail .worksDetail__related .related__slide .slideNext {
  position: absolute;
  z-index: 3;
  right: -100%;
  top: 0;
  display: block;
  width: 100%;
  height: 100%
}

.page-worksDetail .worksDetail__related .related__slide .slideNext.swiper-button-disabled {
  pointer-events: none
}


.page-worksDetail .worksDetail__related .related__list .item {
  -webkit-transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transform: translateY(5rem);
  transform: translateY(5rem);
  opacity: 0
}

.page-worksDetail .worksDetail__related .related__list .item.is-visible {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.page-worksDetail .worksDetail__related .related__list .item.is-visible .item__img:before {
  -webkit-transform: translateY(-101%);
  transform: translateY(-101%)
}

.page-worksDetail .worksDetail__related .related__list .item a {
  display: block;
  width: 100%;
  text-decoration: none
}

.page-worksDetail .worksDetail__related .related__list .item__img {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden
}

.page-worksDetail .worksDetail__related .related__list .item__img:before {
  position: absolute;
  z-index: 1;
  background: #333;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  -webkit-transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s, -webkit-transform .8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.page-worksDetail .worksDetail__related .related__list .item__ttl {
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  line-height: 1.4;
  font-size: 1.4rem
}

.page-worksDetail .worksDetail__related .related__list .item__cat {
  zoom: 1;
  font-family: "heebo", sans-serif;
  font-size: 1.2rem;
  color: #cccccc;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 1rem
}

.page-worksDetail .worksDetail__related .related__list .item__cat:after {
  content: '';
  display: block;
  clear: both;
  height: 0
}

.page-worksDetail .worksDetail__related .related__list .item__cat li {
  float: left;
  position: relative;
  line-height: 1
}

.page-worksDetail .worksDetail__related .related__list .item__cat li+li {
  margin-left: 1rem
}

.page-worksDetail .worksDetail__related.is-show .related__head .head__nextback {
  opacity: 1
}

.page-worksDetail .worksDetail__related.is-show .related__head .head__btn {
  -webkit-transform: scale(1);
  transform: scale(1)
}

@media only screen and (max-width: 768px) {
  .page-worksDetail .worksDetail__related {
    padding: 7.5rem 0;
    border: none
  }

  .page-worksDetail .worksDetail__related .related__ttl {
    width: auto;
    font-size: 2.1rem;
    font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
    line-height: 1.4;
    padding-top: 3rem;
    position: relative
  }

  .page-worksDetail .worksDetail__related .related__ttl:before {
    position: absolute;
    top: 0;
    content: "";
    left: 0;
    width: 5rem;
    height: 1px;
    background: #333
  }

  .page-worksDetail .worksDetail__related .related__head .head__btn .arrow-button__border svg {
    fill: #ffffff
  }

  .page-worksDetail .worksDetail__related .related__head .head__btn .arrow-button__border svg:first-child {
    opacity: 1;
    stroke: rgba(51, 51, 51, 0.2)
  }

  .page-worksDetail .worksDetail__related .related__head .head__nextback {
    right: 5rem;
    bottom: 0.3rem
  }

  .page-worksDetail .worksDetail__related .related__head .head__nextback .service-prev,
  .page-worksDetail .worksDetail__related .related__head .head__nextback .service-next {
    padding: 0 1rem
  }

  .page-worksDetail .worksDetail__related .related__head .head__nextback .service-prev:before,
  .page-worksDetail .worksDetail__related .related__head .head__nextback .service-next:before {
    font-size: 0.7rem
  }

  .page-worksDetail .worksDetail__related .related__slide {
    width: 25rem;
    margin-left: 0;
    padding-top: 4rem;
    padding-bottom: 0;
    overflow: inherit
  }

  .page-worksDetail .worksDetail__related .related__slide .tips {
    display: none
  }

  .page-worksDetail .worksDetail__related .related__list .item__img {
    margin-bottom: 2rem
  }

  .page-worksDetail .worksDetail__related .related__list .item__ttl {
    font-size: 1.2rem
  }

  .page-worksDetail .worksDetail__related .related__list .item__cat {
    font-size: 1rem
  }
}