@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block;
}

ol,
ul {
  list-style: none;
}

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

*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
  font-size: 0;
  line-height: 0;
  vertical-align: bottom;
}

.u-hidden {
  display: none !important;
  visibility: hidden;
}

.u-hidden-up-sm {
  display: none !important;
  visibility: hidden;
}

.u-hidden-down-xl {
  display: none !important;
  visibility: hidden;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-pt5 {
  padding-top: 5px !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-pr5 {
  padding-right: 5px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-pb5 {
  padding-bottom: 5px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-pl5 {
  padding-left: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-pt15 {
  padding-top: 15px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-pr15 {
  padding-right: 15px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-pl15 {
  padding-left: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-pt25 {
  padding-top: 25px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-pr25 {
  padding-right: 25px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-pb25 {
  padding-bottom: 25px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-pl25 {
  padding-left: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-pt35 {
  padding-top: 35px !important;
}

.u-mr35 {
  margin-right: 35px !important;
}

.u-pr35 {
  padding-right: 35px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-pb35 {
  padding-bottom: 35px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

.u-pl35 {
  padding-left: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-pt45 {
  padding-top: 45px !important;
}

.u-mr45 {
  margin-right: 45px !important;
}

.u-pr45 {
  padding-right: 45px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-pb45 {
  padding-bottom: 45px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

.u-pl45 {
  padding-left: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-pt55 {
  padding-top: 55px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-pr55 {
  padding-right: 55px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-pb55 {
  padding-bottom: 55px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-pl55 {
  padding-left: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-pt60 {
  padding-top: 60px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-pr60 {
  padding-right: 60px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-pl60 {
  padding-left: 60px !important;
}

html {
  overflow-y: scroll;
  scrollbar-gutter: stable;
}

body {
  color: #484848;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-size: 16px;
  line-height: 1.875;
  font-family: "Noto Sans JP",sans-serif;
  font-weight: 400;
  letter-spacing: .04em;
  -webkit-text-size-adjust: 100%;
}

button {
  padding: 0;
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

a.no-link {
  pointer-events: none;
  cursor: default;
}

.l-wrapper {
  overflow: hidden;
}

.l-sec {
  background: #eeeff0;
  margin-top: -240px;
  padding: 324px 0 105px;
}

.l-sec__bg1 {
  position: fixed;
  inset: 0;
  z-index: -1;
  background: rgba(0,0,0,.6);
  opacity: 0;
  transition: 1s;
}

.l-sec__bg1.active {
  opacity: 1;
}

.l-sec__bg2 {
  background: #2e2e2e;
}

.l-sec__bg3 {
  background: rgba(171,175,183,.2);
}

.l-sec__innerS {
  width: 1100px;
  margin: 0 auto;
}

.l-sec__innerL {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

.l-bg {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100vh - 80px);
  background: rgba(0,0,0,.4);
  z-index: 10;
  opacity: 0;
  pointer-events: none;
  transition: .3s;
}

.l-bg.is-open {
  opacity: 1;
  pointer-events: all;
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-backdrop-filter: blur(8px) brightness(1.2);
  backdrop-filter: blur(8px) brightness(1.2);
  border-bottom: 1px solid rgba(199,199,199,.5);
  z-index: 100;
}

.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.l-header__logo {
  width: 108px;
  margin-left: 16px;
}

.l-header__logo img {
  width: 100%;
  height: 100%;
}

.l-nav__inner {
  display: flex;
  align-items: center;
}

.l-nav__inner ul {
  display: flex;
  align-items: center;
}

.l-nav__inner ul li {
  text-align: center;
}

.l-nav__inner ul li:nth-child(n+2) {
  margin-left: 40px;
}

.l-nav__inner ul li a span {
  display: block;
  line-height: 1.3;
  transition: .3s;
}

.l-nav__inner ul li a span.en {
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
}

.l-nav__inner ul li a span.ja {
  font-size: 10px;
  font-family: "Noto Sans JP",sans-serif;
}

.l-nav__inner ul li a.is-current,
.l-nav__inner ul li a:hover {
  color: #cc2a2f;
}

.l-lang {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 80px;
  margin-left: 42px;
  padding: 0 30px;
}

.l-lang::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: rgba(199,199,199,.5);
}

.l-lang span,
.l-lang a {
  display: block;
  font-size: 12px;
  font-family: "Montserrat",sans-serif;
  opacity: .3;
  line-height: 1;
  transition: .3s;
}

.l-lang span.is-current,
.l-lang a.is-current {
  color: #cc2a2f;
  opacity: 1;
}

.l-lang span:hover,
.l-lang a:hover {
  opacity: 1;
}

.l-lang span:nth-child(n+2),
.l-lang a:nth-child(n+2) {
  margin-top: 15px;
}

.l-entry a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #cc2a2f;
  padding-left: 27px;
  padding-right: 18px;
  height: 80px;
}

.l-entry a .txt {
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
  line-height: 1;
  padding-bottom: 5px;
  border-bottom: 1px solid #fff;
}

.l-entry a .obj {
  display: inline-block;
  margin-left: 21px;
}

.l-entry a .obj span {
  display: block;
  width: 4px;
  height: 4px;
  background: #fff;
  border-radius: 50%;
}

.l-entry a .obj span:nth-child(n+2) {
  margin-top: 6px;
}

.l-entryNav {
  background: #444e5d;
  position: absolute;
  top: 81px;
  right: 0;
  width: 416px;
  height: calc(100vh - 81px);
  padding: 92px 34px 118px;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  transition: .3s;
  color: #fff;
  overflow-y: scroll;
}

.l-entryNav.is-open {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.l-entryNav__tit {
  display: none;
}

.l-entryNav__items {
  text-align: center;
}

.l-entryNav__items:nth-child(n+2) {
  margin-top: 63px;
}

.l-entryNav__items .tit {
  position: relative;
  display: block;
  font-size: 20px;
  font-weight: 500;
  line-height: 29px;
  padding-bottom: 15px;
}

.l-entryNav__items .tit::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgba(255,255,255,.3);
}

.l-entryNav__items .obj {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 25px;
}

.l-entryNav__items .obj.center {
  justify-content: center;
}

.l-entryNav__items .btn {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 48%;
  height: 45px;
  background: #fff;
  border-radius: 29px;
  transition: .3s;
}

.l-entryNav__items .btn:hover {
  opacity: .7;
}

.l-entryNav__items .btn img {
  display: block;
  width: 90px;
}

.l-entryNav__items .btn img img {
  width: 100%;
  height: 100%;
}

.l-entryNav__items .btn .txt {
  color: #444e5d;
  font-size: 16px;
  font-weight: 500px;
  line-height: 24px;
}

.l-menu {
  position: relative;
  color: #fff;
  background: #cc2a2f;
  width: 112px;
  height: 80px;
  cursor: pointer;
}

.l-menu__wrap {
  display: none;
}

.l-menu span {
  position: absolute;
  top: 50%;
  left: calc(50% + 6px);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
}

.l-menu span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -16px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
}

.l-footer {
  padding: 83px 83px 55px;
  background: #fff;
}

.l-footer__box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.l-footer__box:nth-child(2) {
  border-top: 1px solid rgba(199,199,199,.5);
  margin-top: 96px;
  padding-top: 22px;
}

.l-footer__logo {
  width: 178px;
  margin: 0 auto;
}

.l-footer__logo img {
  width: 100%;
  height: 100%;
}

.l-footer__name {
  font-size: 12px;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
  margin-top: 22px;
}

.l-footer__pageTop a:hover .icon {
  background: #cc2a2f;
  border: none;
}

.l-footer__pageTop a:hover .icon svg {
  stroke: #fff;
}

.l-footer__pageTop a .txt {
  color: #cc2a2f;
  font-size: 12px;
  font-family: "Montserrat",sans-serif;
  margin-right: 16px;
}

.l-footer__pageTop a .icon {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  width: 68px;
  height: 68px;
  border: 1px solid #cc2a2f;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}

.l-footer__pageTop a .icon span {
  display: inline-block;
  width: 19px;
  height: 16px;
}

.l-footer__pageTop a .icon svg {
  stroke: #cc2a2f;
  transition: .3s;
  width: 100%;
  height: 100%;
  vertical-align: top;
}

.l-footer__link {
  color: #6e6e6e;
  font-size: 12px;
  letter-spacing: 0;
}

.l-footer__link a:hover {
  text-decoration: underline;
}

.l-footer__copyright {
  color: #6e6e6e;
  font-size: 12px;
  font-family: "Noto Sans JP",sans-serif;
  letter-spacing: 0;
}

.mfp-zoom-in .mfp-with-anim {
  opacity: 0;
  transition: all .2s ease-in-out;
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

.mfp-zoom-in.mfp-bg {
  opacity: 0;
  transition: all .3s ease-out;
}

.mfp-zoom-in.mfp-ready .mfp-with-anim {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: .8;
}

.mfp-zoom-in.mfp-removing .mfp-with-anim {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
  opacity: 0;
}

.mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}

.a-scroll {
  -webkit-animation: scrollImageAnime 45s linear infinite;
  animation: scrollImageAnime 45s linear infinite;
}

@-webkit-keyframes scrollImageAnime {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

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

@keyframes scrollImageAnime {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

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

@-webkit-keyframes scrollBarAnimePc {
  0% {
    background-position: 0 -300px;
  }

  50% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 300px;
  }
}

@keyframes scrollBarAnimePc {
  0% {
    background-position: 0 -300px;
  }

  50% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 300px;
  }
}

@-webkit-keyframes scrollBarAnimeSp {
  0% {
    background-position: 0 -58.6666666667vw;
  }

  50% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 58.6666666667vw;
  }
}

@keyframes scrollBarAnimeSp {
  0% {
    background-position: 0 -58.6666666667vw;
  }

  50% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 58.6666666667vw;
  }
}

.a-fadeIn {
  -webkit-animation: fadeInAnime .5s linear both;
  animation: fadeInAnime .5s linear both;
}

@-webkit-keyframes fadeInAnime {
  0% {
    opacity: 0;
    pointer-events: none;
  }

  100% {
    opacity: 1;
    pointer-events: all;
  }
}

@keyframes fadeInAnime {
  0% {
    opacity: 0;
    pointer-events: none;
  }

  100% {
    opacity: 1;
    pointer-events: all;
  }
}

.a-fadeOut {
  -webkit-animation: fadeOutAnime .5s linear both;
  animation: fadeOutAnime .5s linear both;
}

@-webkit-keyframes fadeOutAnime {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    pointer-events: none;
  }
}

@keyframes fadeOutAnime {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    pointer-events: none;
  }
}

.a-slideUp {
  -webkit-animation: slideUpAnime .4s ease both;
  animation: slideUpAnime .4s ease both;
}

@-webkit-keyframes slideUpAnime {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

@keyframes slideUpAnime {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

.a-pageAnime {
  -webkit-animation: pageAnime .6s ease-in-out forwards;
  animation: pageAnime .6s ease-in-out forwards;
}

@-webkit-keyframes pageAnime {
  0% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }

  50% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }

  50.001% {
    -webkit-transform-origin: top;
    transform-origin: top;
  }

  100% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}

@keyframes pageAnime {
  0% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }

  50% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }

  50.001% {
    -webkit-transform-origin: top;
    transform-origin: top;
  }

  100% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}

[data-aos=blur-out] {
  -webkit-filter: blur(10px);
  filter: blur(10px);
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

[data-aos=blur-out].aos-animate {
  -webkit-filter: blur(0);
  filter: blur(0);
}

[data-aos=mask-slide] {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  opacity: 0;
  transition: all .7s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-property: opacity,-webkit-transform;
  transition-property: opacity,transform;
  transition-property: opacity,transform,-webkit-transform;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transition;
}

[data-aos=mask-slide].aos-animate {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.a-rotateFade {
  -webkit-animation: rotateFadeAnime 1s ease both;
  animation: rotateFadeAnime 1s ease both;
}

@-webkit-keyframes rotateFadeAnime {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0px, 120px, 0px) rotateY(90deg);
    transform: translate3d(0px, 120px, 0px) rotateY(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3d(0px, 0px, 0px) rotateY(0deg);
    transform: translate3d(0px, 0px, 0px) rotateY(0deg);
  }
}

@keyframes rotateFadeAnime {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0px, 120px, 0px) rotateY(90deg);
    transform: translate3d(0px, 120px, 0px) rotateY(90deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3d(0px, 0px, 0px) rotateY(0deg);
    transform: translate3d(0px, 0px, 0px) rotateY(0deg);
  }
}

@-webkit-keyframes anim_point {
  0% {
    background: #b00;
  }

  100% {
    background: #cc2a2f;
  }
}

@keyframes anim_point {
  0% {
    background: #b00;
  }

  100% {
    background: #cc2a2f;
  }
}

@-webkit-keyframes anim_pointBefore {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate(-50%, -50%) scale(3);
    transform: translate(-50%, -50%) scale(3);
    opacity: 0;
  }
}

@keyframes anim_pointBefore {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate(-50%, -50%) scale(3);
    transform: translate(-50%, -50%) scale(3);
    opacity: 0;
  }
}

.c-buttonStyle1 {
  position: relative;
  display: block;
  width: 211px;
  background: rgba(0,0,0,0);
  border-radius: 39px;
  border: 1px solid #cc2a2f;
  height: 62px;
  color: #cc2a2f;
  display: flex;
  align-items: center;
  overflow: hidden;
  transition: .3s;
}

.c-buttonStyle1::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  width: 7px;
  height: 7px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  transition: .3s;
  opacity: 0;
}

.c-buttonStyle1:hover {
  border: 1px solid rgba(0,0,0,0);
}

.c-buttonStyle1:hover::after {
  opacity: 1;
}

.c-buttonStyle1:hover .txt {
  color: #fff;
}

.c-buttonStyle1:hover .obj {
  -webkit-transform: scale(35);
  transform: scale(35);
}

.c-buttonStyle1 .txt {
  position: relative;
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
  padding-left: 37px;
  transition: .3s;
  z-index: 1;
}

.c-buttonStyle1 .obj {
  position: absolute;
  top: 50%;
  right: 23px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #cc2a2f;
  transition: .3s;
}

.c-buttonStyle2 {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #fff;
  border-radius: 50%;
  width: 68px;
  height: 68px;
  transition: .3s;
}

.c-buttonStyle2 span {
  display: block;
  width: 15px;
  height: 15px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-right: 8px;
  transition: .3s;
}

.c-buttonStyle2:hover {
  border: none;
  background-color: #fff;
}

.c-buttonStyle2:hover span {
  border-bottom: 1px solid #cc2a2f;
  border-right: 1px solid #cc2a2f;
}

input,
select,
button,
textarea {
  color: #333;
  font-family: inherit;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

input,
select,
textarea {
  width: 100%;
  height: 50px;
  font-size: 16px;
  padding: 4px 20px;
  background: #f4f5f9;
  border-radius: 4px;
}

input:-webkit-autofill,
textarea:-webkit-autofill {
  box-shadow: 0 0 0 1000px #fff inset;
}

select::-ms-expand {
  display: none;
}

label,
button,
select {
  cursor: pointer;
}

input::-webkit-input-placeholder {
  color: #b6bcc4;
}

input::-moz-placeholder {
  color: #b6bcc4;
}

input:-ms-input-placeholder {
  color: #b6bcc4;
}

input::placeholder {
  color: #b6bcc4;
}

input ::-ms-input-placeholder {
  color: #b6bcc4;
}

input :-ms-input-placeholder {
  color: #b6bcc4;
}

input[type=radio],
input[type=checkbox] {
  opacity: 0;
  overflow: hidden;
  width: 0;
  height: 0;
  padding: 0;
  margin: 0;
}

input[type=checkbox]+.input_checkbox {
  position: relative;
  display: inline-block;
  width: 25px;
  height: 25px;
  border-radius: 4px;
  margin-right: 15px;
  background: #e2e2e2;
}

input[type=checkbox]:checked+.input_checkbox:after,
input[type=checkbox]:checked+.input_checkbox:before {
  content: "";
  display: block;
  height: 3px;
  border-radius: 2px;
  background: #0064b6;
  position: absolute;
}

input[type=checkbox]:checked+.input_checkbox:before {
  width: 40%;
  top: 52%;
  left: 10%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

input[type=checkbox]:checked+.input_checkbox:after {
  width: 65%;
  top: 45%;
  left: 28%;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

input[type=radio]+.input_radio {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-right: 5px;
  background: #e2e2e2;
}

input[type=radio]:checked+.input_radio::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #0064b6;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

textarea {
  resize: none;
  height: 232px;
  padding: 15px 15px;
  overflow-y: scroll;
  border-radius: 4px;
}

textarea::-webkit-input-placeholder {
  color: #b6bcc4;
}

textarea::-moz-placeholder {
  color: #b6bcc4;
}

textarea:-ms-input-placeholder {
  color: #b6bcc4;
}

textarea::placeholder {
  color: #b6bcc4;
}

:is(input,select,textarea).myError {
  color: #d90000;
  border: 1px solid #e59a9a;
  background: #ffebeb;
}

.myError:not(input,select,textarea) {
  color: #d90000;
  font-size: 14px;
  line-height: 1.4;
  margin-top: 6px;
}

.selectBox {
  position: relative;
}

.selectBox:before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 5px);
  right: 20px;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
}

.c-headingStyle1 {
  line-height: 1;
}

.c-headingStyle1 .en {
  display: block;
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
  margin-bottom: 12px;
}

.c-headingStyle1 .ja {
  display: block;
  font-size: 44px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  line-height: 65px;
}

.c-headingStyle2 {
  line-height: 1;
}

.c-headingStyle2 .wrap {
  display: block;
  overflow: hidden;
}

.c-headingStyle2 .line {
  display: inline-block;
}

.c-headingStyle2 .en {
  font-size: 66px;
  color: #cc2a2f;
  font-family: "Bruno Ace";
  letter-spacing: 0;
}

.c-headingStyle2 .ja {
  display: block;
  font-size: 20px;
  font-family: "M PLUS 1p",sans-serif;
  letter-spacing: .02em;
  font-weight: 500;
  margin-top: 15px;
}

.c-mainv {
  padding-top: 80px;
}

.c-mainv__tit {
  position: relative;
  display: flex;
  align-items: center;
  height: 360px;
}

.c-mainv__tit::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: #cc2a2f;
  width: 50px;
  height: 5px;
}

.c-mainv__tit .en {
  display: block;
  font-size: 82px;
  font-family: "Bruno Ace";
  line-height: 1;
  color: #cc2a2f;
  letter-spacing: 0;
}

.c-mainv__tit .ja {
  display: block;
  font-size: 20px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  letter-spacing: .02em;
  margin-top: 12px;
}

.c-mainv__tit .wrap {
  display: block;
  overflow: hidden;
}

.c-mainv__tit .line {
  display: inline-block;
}

.c-mainv__img {
  position: relative;
  width: 100%;
  height: 530px;
  overflow: hidden;
}

.c-mainv__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-pageNav {
  padding: 51px 0;
}

.c-pageNav ul {
  display: flex;
  align-items: center;
}

.c-pageNav ul li {
  width: 185px;
}

.c-pageNav ul li:nth-child(n+2) {
  margin-left: 42px;
}

.c-pageNav ul li a {
  font-size: 16px;
  padding: 3px 0;
  color: rgba(0,0,0,.58);
  display: block;
  width: 100%;
  position: relative;
  border-bottom: 1px solid rgba(199,199,199,.5);
  transition: .3s;
}

.c-pageNav ul li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 7px;
  height: 7px;
  border-bottom: 1px solid #cc2a2f;
  border-right: 1px solid #cc2a2f;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}

.c-pageNav ul li a:hover {
  color: #cc2a2f;
}

.c-btnNav {
  width: 100%;
  height: 480px;
}

.c-btnNav a {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  z-index: 2;
}

.c-btnNav a::after {
  opacity: 0;
  content: "";
  position: absolute;
  inset: 0;
  -webkit-backdrop-filter: blur(20px) brightness(0.7);
  backdrop-filter: blur(20px) brightness(0.7);
  z-index: -1;
  transition: .3s;
}

.c-btnNav a:hover::after {
  opacity: 1;
}

.c-btnNav a:hover .subtit::after {
  width: 165px;
}

.c-btnNav__head .subtit {
  position: relative;
  font-size: 24px;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
  padding-right: 185px;
}

.c-btnNav__head .subtit::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 85px;
  width: 0;
  height: 1px;
  background: #cc2a2f;
  transition: .3s;
}

.c-btnNav__head .tit {
  display: block;
  font-size: 78px;
  letter-spacing: 0;
  font-family: "Bruno Ace";
  color: #fff;
  margin-top: 30px;
}

.c-modal {
  position: relative;
  width: 900px;
  background: #fff;
  border-radius: 20px;
  margin: 81px auto 125px;
}

.c-modal__close {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 60px;
  height: 60px;
  padding: 0;
  background: #cc2a2f;
  border-radius: 50%;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}

.c-modal__closeInner {
  display: block;
  width: 24px;
}

.c-modal__closeInner .line {
  display: block;
  height: 1px;
  background: #fff;
  width: 100%;
  transition: .3s;
}

.c-modal__closeInner .line:nth-child(1) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-modal__closeInner .line:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-modal__close:hover {
  background: #fff;
}

.c-modal__close:hover .line {
  background: #cc2a2f;
}

.c-modal__inner {
  padding: 40px;
}

.c-modal__box {
  position: relative;
}

.c-modal__info {
  position: absolute;
  bottom: 15px;
  left: 17px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
}

.c-modal__info .carrer {
  color: #fff;
  padding: 5px 27px;
  border-radius: 24px;
  font-size: 16px;
  letter-spacing: .02em;
}

.c-modal__info .club,
.c-modal__info .name {
  font-size: 16px;
  background: #fff;
  padding: 3px 8px;
}

.c-modal__interview {
  margin-top: 42px;
}

.c-modal__interview .en {
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
}

.c-modal__interview .ja {
  position: relative;
  display: block;
  font-size: 32px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  margin-top: 12px;
  line-height: 48px;
  padding-bottom: 34px;
}

.c-modal__interview .ja::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #dedede;
}

.c-modal__interview .ja::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 199px;
  height: 1px;
  background: #cc2a2f;
}

.c-modal__qa {
  margin-top: 40px;
}

.c-modal__qa dl:nth-child(n+2) {
  margin-top: 40px;
}

.c-modal__qa dl dt {
  font-size: 20px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
}

.c-modal__qa dl dd {
  font-size: 14px;
  letter-spacing: .02em;
  margin-top: 16px;
  line-height: 26px;
}

.c-modal__intro {
  margin-top: 40px;
  background-color: #cc2a2f;
  padding: 22px 20px;
}

.c-modal__intro .tit {
  text-align: center;
  color: #fff;
  font-size: 18px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
}

.c-modal__intro .txt {
  background: #fff;
  color: #cc2a2f;
  font-size: 16px;
  font-family: "Noto Sans JP",sans-serif;
  font-weight: bold;
  line-height: 28px;
  margin-top: 20px;
  padding: 15px;
  font-weight: bold;
}

.c-subModal {
  position: relative;
  width: 800px;
  background: #fff;
  border-radius: 20px;
  margin: 81px auto 125px;
  padding: 40px;
}

.c-subModal__close {
  cursor: pointer;
  position: absolute;
  top: -20px;
  right: -20px;
  width: 60px;
  height: 60px;
  padding: 0;
  background: #cc2a2f;
  border-radius: 50%;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}

.c-subModal__closeInner {
  display: block;
  width: 24px;
}

.c-subModal__closeInner .line {
  display: block;
  height: 1px;
  background: #fff;
  width: 100%;
  transition: .3s;
}

.c-subModal__closeInner .line:nth-child(1) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-subModal__closeInner .line:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-subModal__close:hover {
  background: #fff;
}

.c-subModal__close:hover .line {
  background: #cc2a2f;
}

.c-subModal__content .tit {
  font-size: 30px;
  font-family: "M PLUS 1p",sans-serif;
}

.c-subModal__content .inner {
  display: flex;
  margin-top: 34px;
  -webkit-column-gap: 18px;
  -moz-column-gap: 18px;
  column-gap: 18px;
}

.c-subModal__content .txt {
  font-size: 14px;
  margin-top: 27px;
  line-height: 1.8571428571;
}

.c-table {
  width: 100%;
}

.c-table dl {
  position: relative;
  display: flex;
  border-bottom: 1px solid #dedede;
}

.c-table dl:nth-child(1) {
  border-top: 1px solid #dedede;
}

.c-table dl:nth-child(1)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 200px;
  height: 1px;
  background: #cc2a2f;
}

.c-table dl::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 200px;
  height: 1px;
  background: #cc2a2f;
}

.c-table dl dt {
  position: relative;
  width: 190px;
  text-align: left;
  color: #cc2a2f;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.3;
  font-family: "M PLUS 1p",sans-serif;
  padding: 33px 0 31px;
  margin-right: 10px;
}

.c-table dl dd {
  width: 600px;
  padding: 33px 0 31px;
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0;
}

.c-on {
  transition: .3s;
}

.c-on:hover {
  opacity: .7;
}

.c-slider1 {
  position: relative;
}

.c-slider1 .swiper-button-next,
.c-slider1 .swiper-button-prev {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  border: 1px solid #cc2a2f;
  top: auto;
  left: 0;
  bottom: 0;
  transition: .3s;
}

.c-slider1 .swiper-button-next::after,
.c-slider1 .swiper-button-prev::after {
  content: "";
  width: 15px;
  height: 15px;
}

.c-slider1 .swiper-button-next:hover,
.c-slider1 .swiper-button-prev:hover {
  border: 1px solid rgba(0,0,0,0);
  background: #cc2a2f;
}

.c-slider1 .swiper-button-next {
  left: 100px;
}

.c-slider1 .swiper-button-next::after {
  border-bottom: 1px solid #cc2a2f;
  border-right: 1px solid #cc2a2f;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-right: 8px;
  transition: .3s;
}

.c-slider1 .swiper-button-next:hover::after {
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
}

.c-slider1 .swiper-button-prev::after {
  border-bottom: 1px solid #cc2a2f;
  border-left: 1px solid #cc2a2f;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-left: 8px;
  transition: .3s;
}

.c-slider1 .swiper-button-prev:hover::after {
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
}

.c-pageSplash {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--vh, 1vh)*100);
  z-index: 9999;
  pointer-events: none;
}

.c-pageSplash__bg2 {
  background: #cc2a2f;
  position: absolute;
  inset: 0;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-delay: .1s;
  animation-delay: .1s;
}

.c-pageSplash__bg {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  background: #000;
}

#page_about .c-btnNav {
  background: url(/assets/img/about/btn_img.png) no-repeat center/cover;
}

#page_about .l-sec__bg3 {
  padding: 114px 0 246px;
}

#page_about .industry__txt {
  font-size: 16px;
  line-height: 30px;
  margin-top: 41px;
}

#page_about .industry__img {
  margin-top: 41px;
}

#page_about .business {
  padding-top: 121px;
}

#page_about .business__txt {
  font-size: 16px;
  line-height: 30px;
  margin-top: 28px;
}

#page_about .business__slide {
  width: 1233px;
  margin-top: 28px;
}

#page_about .business__slide .swiper {
  width: calc(100% + (100vw - 1100px)/2);
}

#page_about .business__slide .swiper-slide {
  position: relative;
}

#page_about .business__slide .swiper-slide .txt {
  position: absolute;
  bottom: 41px;
  left: 0;
  font-size: 24px;
  font-family: "M PLUS 1p",sans-serif;
  padding-left: 62px;
  font-weight: 500;
  z-index: 1;
}

#page_about .business__slide .swiper-slide .txt::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 46px;
  height: 1px;
  background: #cc2a2f;
}

#page_about .business__slide .swiper-slide .pointer {
  position: absolute;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #cc2a2f;
  box-shadow: 1px 1px 8px rgba(0,0,0,.3);
  display: block;
  transition: .4s ease;
  -webkit-animation: anim_point 1s ease .4s infinite alternate;
  animation: anim_point 1s ease .4s infinite alternate;
  cursor: pointer;
}

#page_about .business__slide .swiper-slide .pointer::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 65%;
  height: 65%;
  border-radius: 50%;
  transition: .4s ease;
  background: red;
  -webkit-transform: translate(-50%, -50%) scale(0);
  transform: translate(-50%, -50%) scale(0);
  -webkit-animation: anim_pointBefore 1s ease 1s infinite forwards;
  animation: anim_pointBefore 1s ease 1s infinite forwards;
}

#page_about .business__slide .swiper-slide .pointer::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1);
  transform: translate(-50%, -50%) scale(1);
  width: 65%;
  height: 65%;
  border-radius: 50%;
  transition: .4s ease;
}

#page_about .business__slide .swiper-slide .pointer:hover {
  background: red;
  opacity: .5;
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}

#page_about .business__slide .swiper-slide .pointer:hover::before {
  display: none;
}

#page_about .business__slide .swiper-slide .pointer:hover::after {
  width: 100%;
  height: 100%;
  opacity: 0;
}

#page_about .business__slide .swiper-slide .pointer01 {
  top: 45%;
  left: 9%;
}

#page_about .business__slide .swiper-slide .pointer02 {
  top: 41%;
  right: 26%;
}

#page_about .business__slide .swiper-slide .pointer03 {
  top: 50%;
  left: 49%;
}

#page_about .business__slide .swiper-slide .pointer04 {
  top: 27%;
  right: 31%;
}

#page_about .business__slide .swiper-button-next,
#page_about .business__slide .swiper-button-prev {
  bottom: -130px;
}

#page_about .keyword {
  background: #444e5d;
  padding: 110px 0 147px;
}

#page_about .keyword__tit .c-headingStyle1 .ja {
  color: #fff;
}

#page_about .keyword__item {
  margin-top: 73px;
}

#page_about .keyword__item li:nth-of-type(n + 2) {
  margin-top: 125px;
}

#page_about .keyword__main {
  position: relative;
}

#page_about .keyword__main--head {
  position: absolute;
  bottom: -27px;
  left: 0;
}

#page_about .keyword__main--head .num {
  font-size: 100px;
  font-family: "Montserrat",sans-serif;
  line-height: .7;
  color: #cc2a2f;
}

#page_about .keyword__main--head .inner {
  display: block;
  width: 80%;
}

#page_about .keyword__main--head .tit {
  position: relative;
  font-size: 32px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  color: #fff;
  display: inline-block;
  z-index: 2;
  padding: 12px;
  line-height: 1;
}

#page_about .keyword__main--head .tit::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #cc2a2f;
  z-index: -1;
}

#page_about .keyword__sub {
  position: relative;
  display: flex;
  justify-content: space-between;
  margin-top: 84px;
}

#page_about .keyword__sub--txt {
  width: 45%;
  font-size: 16px;
  line-height: 30px;
  color: #fff;
}

#page_about .keyword__sub--img {
  width: 45%;
}

#page_about .keyword__sub--img.positionChange {
  position: absolute;
  bottom: 0;
  right: 70px;
  width: 388px;
}

#page_concept .c-btnNav {
  background: url(/assets/img/concept/btn_img.png) no-repeat center/cover;
}

#page_concept .vision {
  background: #fff;
  padding: 144px 0 143px;
}

#page_concept .vision__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#page_concept .vision__info {
  width: 48%;
}

#page_concept .vision__img {
  width: 48%;
}

#page_concept .vision__tit--en {
  font-size: 66px;
  font-family: "Bruno Ace";
  line-height: 1.2;
  letter-spacing: 0;
  color: #cc2a2f;
}

#page_concept .vision__tit--ja {
  font-size: 44px;
  line-height: 65px;
  font-weight: 500;
  font-family: "M PLUS 1p",sans-serif;
  margin-top: 68px;
}

#page_concept .vision__subtit {
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
  line-height: 28px;
  color: #cc2a2f;
  margin-top: 20px;
}

#page_concept .vision__txt {
  font-size: 18px;
  line-height: 40px;
  margin-top: 39px;
}

#page_concept .message {
  color: #fff;
  background: #010101;
  padding: 170px 0 191px;
  position: relative;
  z-index: 2;
}

#page_concept .message::after {
  content: "";
  width: 70%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background: url(/assets/img/concept/concept_bg.png) no-repeat 3vw/100%;
  z-index: -1;
}

#page_concept .message__tit {
  font-size: 48px;
  font-family: "M PLUS 1p",sans-serif;
  line-height: 71px;
  font-weight: 500;
}

#page_concept .message__subtit {
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
  margin-top: 15px;
  color: #7f7f7f;
}

#page_concept .message__txt1 {
  font-size: 18px;
  line-height: 50px;
  margin-top: 105px;
}

#page_concept .message__txt2 {
  font-size: 32px;
  font-family: "M PLUS 1p",sans-serif;
  line-height: 47px;
  margin-top: 60px;
}

#page_concept .philosophy {
  color: #fff;
  background: #444e5d;
  padding-top: 127px;
}

#page_concept .philosophy .corporate_principles--txt {
  margin-top: 51px;
  font-size: 22px;
  line-height: 50px;
}

#page_concept .philosophy .corporate_message {
  margin-top: 82px;
}

#page_concept .philosophy .corporate_message--txt {
  margin-top: 24px;
  font-size: 22px;
  line-height: 50px;
}

#page_concept .philosophy__img {
  position: relative;
}

#page_concept .philosophy__img .comment {
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: 12px;
  line-height: 4.1666666667;
}

#page_contact.check .contact__row dd {
  width: 100%;
  min-height: 50px;
  font-size: 16px;
  padding: 10px 20px;
  background: #f4f5f9;
  border-radius: 4px;
}

#page_contact .require {
  color: #d90000;
  font-size: 13px;
  vertical-align: top;
  padding-left: 3px;
}

#page_contact label {
  display: inline-flex;
  align-items: center;
}

#page_contact input[type=checkbox]:checked+.input_checkbox::before,
#page_contact input[type=checkbox]:checked+.input_checkbox::after {
  background: #cc2a2f;
}

#page_contact input[type=radio]:checked+.input_radio::after {
  background: #cc2a2f;
}

#page_contact .contact {
  padding: 78px 0 113px;
  background: #f7f7f7;
}

#page_contact .contact__inner {
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
}

#page_contact .contact__txt {
  font-size: 14px;
  line-height: 2;
}

#page_contact .contact__box {
  background: #fff;
  padding: 55px;
  border-radius: 10px;
  margin-top: 53px;
}

#page_contact .contact__tit {
  border-bottom: 1px solid #dedede;
}

#page_contact .contact__tit span {
  position: relative;
  display: inline-block;
  font-size: 23px;
  font-weight: 500;
  font-family: "M PLUS 1p",sans-serif;
  color: #cc2a2f;
  padding-bottom: 10px;
}

#page_contact .contact__tit span::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 1px;
}

#page_contact .contact__tit span::after {
  background: #cc2a2f;
}

#page_contact .contact__item {
  margin-top: 60px;
}

#page_contact .contact__item dl:nth-child(n+2) {
  margin-top: 32px;
}

#page_contact .contact__item dl dt {
  font-size: 16px;
  font-weight: 500;
}

#page_contact .contact__item dl dd {
  margin-top: 12px;
}

#page_contact .contact__item dl dd .size-changeS {
  display: inline-block;
  width: 80px;
}

#page_contact .contact__item dl dd .size-changeM {
  display: inline-block;
  width: 160px;
}

#page_contact .contact__item dl dd .subtit {
  display: block;
  width: 210px;
}

#page_contact .contact__item dl dd .comment {
  font-size: 12px;
}

#page_contact .contact__item dl dd .sex .txt,
#page_contact .contact__item dl dd .education .txt {
  display: inline-block;
  margin-right: 10px;
}

#page_contact .contact__item dl dd .birth .txt,
#page_contact .contact__item dl dd .age .txt,
#page_contact .contact__item dl dd .post .txt {
  display: inline-block;
  margin: 0 10px;
}

#page_contact .contact__item dl dd .post,
#page_contact .contact__item dl dd .birth,
#page_contact .contact__item dl dd .age,
#page_contact .contact__item dl dd .addr,
#page_contact .contact__item dl dd .career {
  display: flex;
  align-items: baseline;
}

#page_contact .contact__item dl dd .addr__inner,
#page_contact .contact__item dl dd .career__inner {
  width: 100%;
}

#page_contact .contact__btm {
  margin-top: 68px;
}

#page_contact .contact__btm form {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 64px;
}

#page_contact .contact__btm form .contact__btn {
  margin: 0;
}

#page_contact .contact__btm form a {
  background: #999;
}

#page_contact .contact__btm form a:hover {
  background: none;
}

#page_contact .contact__privacy--tit {
  font-size: 18px;
  font-weight: 500;
}

#page_contact .contact__privacyBox--txt {
  margin-top: 24px;
  font-size: 14px;
}

#page_contact .contact__privacyBox--txt a {
  text-decoration: underline;
}

#page_contact .contact__privacyBox--txt a:hover {
  text-decoration: none;
}

#page_contact .contact__agreeBox {
  margin-top: 12px;
}

#page_contact .contact__btn {
  width: 211px;
  margin: 66px auto 0;
}

#page_contact .contact__btn button,
#page_contact .contact__btn a {
  width: 211px;
  height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #cc2a2f;
  color: #fff;
  border-radius: 39px;
  transition: .3s;
}

#page_contact .contact__btn button:hover,
#page_contact .contact__btn a:hover {
  background: rgba(0,0,0,0);
  border: 1px solid #cc2a2f;
  color: #cc2a2f;
}

#page_contact .contact__btn button span,
#page_contact .contact__btn a span {
  font-size: 16px;
  font-weight: 500;
}

#page_contact .contact__top--btn {
  margin-top: 36px;
}

#page_culture .c-btnNav {
  background: url(/assets/img/culture/btn_img.png) no-repeat center/cover;
}

#page_culture .education {
  padding: 101px 0 97px;
}

#page_culture .education__txt {
  font-size: 16px;
  margin-top: 35px;
  letter-spacing: 0;
}

#page_culture .education__img {
  margin-top: 43px;
}

#page_culture .career.l-sec {
  margin-top: 0;
  padding: 90px 0 105px;
}

#page_culture .career__txt {
  font-size: 16px;
  font-weight: 500;
  margin-top: 28px;
  letter-spacing: 0;
}

#page_culture .career__img {
  margin-top: 37px;
}

#page_culture .career__comment {
  font-size: 12px;
  line-height: 1.4166666667;
  margin-top: 40px;
}

#page_culture .welfare {
  padding-top: 121px;
}

#page_culture .welfare__slide {
  margin-top: 48px;
  width: 117%;
}

#page_culture .welfare__slide .tit {
  font-size: 32px;
  font-weight: 500;
  font-family: "M PLUS 1p",sans-serif;
  margin-top: 39px;
}

#page_culture .welfare__slide .txt {
  font-size: 16px;
  margin-top: 26px;
}

#page_culture .welfare__slide .swiper-button-next,
#page_culture .welfare__slide .swiper-button-prev {
  bottom: -130px;
}

#page_culture .work_life {
  padding-top: 224px;
}

#page_culture .work_life__slide .swiper {
  overflow: visible !important;
}

#page_culture .work_life__box {
  display: flex;
  -webkit-column-gap: 40px;
  -moz-column-gap: 40px;
  column-gap: 40px;
  margin-top: 52px;
}

#page_culture .work_life__box .swiper-slide {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  width: 340px;
  box-shadow: 0px 0px 20px rgba(0,0,0,.1);
}

#page_culture .work_life__box--inner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 334px;
}

#page_culture .work_life__box--inner .content {
  height: 257px;
}

#page_culture .work_life__box--tit {
  font-size: 24px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  letter-spacing: 0;
  color: #fff;
  background: #abafb7;
  padding: 15px;
}

#page_culture .work_life__box--img {
  width: 75px;
  margin: 0 auto;
  display: block;
}

#page_culture .work_life__box--txt {
  position: relative;
  font-size: 32px;
  line-height: 1;
  font-weight: 500;
  font-family: "M PLUS 1p",sans-serif;
  margin-top: 35px;
  color: #000;
}

#page_culture .work_life__box--txt .point {
  position: absolute;
  font-size: 18px;
}

#page_culture .work_life__box--txt .point01 {
  top: 30px;
  right: 12px;
}

#page_culture .work_life__box--txt .point03 {
  top: -10px;
}

#page_culture .work_life__box--txt .num {
  font-size: 100px;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
  font-weight: bold;
  display: inline-block;
  padding: 0 5px;
  position: relative;
  bottom: -4px;
}

#page_culture .work_life__box--txt .num span {
  font-size: 53px;
}

#page_culture .work_life__box--txt .block {
  display: block;
  margin-top: 5px;
}

#page_culture .work_life__box--comment {
  font-size: 14px;
  line-height: 1.2142857143;
  font-family: "Noto Sans JP",sans-serif;
  font-weight: 400;
  margin-top: 31px;
}

#page_culture .work_life .swiper-button-next,
#page_culture .work_life .swiper-button-prev {
  display: none;
}

#page_culture .workplace.l-sec {
  margin-top: -200px;
}

#page_culture .workplace__txt {
  font-size: 16px;
  margin-top: 47px;
  font-weight: 500;
}

#page_culture .workplace__slide {
  margin-top: 47px;
  position: relative;
}

#page_culture .workplace__slide .swiper-slide .img {
  position: relative;
}

#page_culture .workplace__slide .swiper-slide .img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.5);
  transition: .3s;
}

#page_culture .workplace__slide .swiper-slide .txt {
  padding-top: 22px;
  font-size: 18px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  line-height: 1.2777777778;
  opacity: 0;
  transition: .3s;
}

#page_culture .workplace__slide .swiper-slide-active .img::after {
  background: none;
}

#page_culture .workplace__slide .swiper-slide-active .txt {
  opacity: 1;
}

#page_culture .workplace__slide .swiper-button-next,
#page_culture .workplace__slide .swiper-button-prev {
  width: 4.6120058565vw;
  height: 4.6120058565vw;
  background: #cc2a2f;
  transition: .3s;
  z-index: 3;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

#page_culture .workplace__slide .swiper-button-next::after,
#page_culture .workplace__slide .swiper-button-prev::after {
  content: "";
  width: 1.3909224012vw;
  height: 1.1713030747vw;
  background: url(/assets/img/culture/workplace_arrow.svg) no-repeat center/100%;
}

#page_culture .workplace__slide .swiper-button-next:hover,
#page_culture .workplace__slide .swiper-button-prev:hover {
  background: #fff;
}

#page_culture .workplace__slide .swiper-button-next:hover::after,
#page_culture .workplace__slide .swiper-button-prev:hover::after {
  background: url(/assets/img/culture/workplace_arrow_red.svg) no-repeat center/100%;
}

#page_culture .workplace__slide .swiper-button-next {
  right: 9.663250366vw;
}

#page_culture .workplace__slide .swiper-button-next::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#page_culture .workplace__slide .swiper-button-prev {
  left: 9.663250366vw;
}

#page_culture .workplace__slide .swiper-pagination {
  bottom: -52px;
}

#page_culture .workplace__slide .swiper-pagination .swiper-pagination-bullet {
  background: #fff;
  opacity: 1;
  width: 11px;
  height: 11px;
  margin: 0 7px;
}

#page_culture .workplace__slide .swiper-pagination .swiper-pagination-bullet-active {
  background: #cc2a2f;
}

[lang=en] #index .hero__scroll {
  bottom: 0;
}

[lang=en] #index .hero__head {
  bottom: 73px;
}

[lang=en] #index .hero__tit {
  width: 100%;
}

[lang=en] #index .hero__tit .hero__txt {
  font-size: 54px;
  line-height: 1.3888888889;
  margin-top: 0;
}

[lang=en] #page_about .keyword__sub--img.positionChange {
  bottom: -8px;
  right: 42px;
  width: 445px;
}

[lang=en] #page_project .message__box .txt {
  min-height: 210px;
}

[lang=en] #page_person .job__imgBg {
  background: url(/assets/img/en/person/job_img.png) no-repeat left/cover;
  height: 506px;
}

[lang=en] #page_culture .work_life__box--tit {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  min-height: 100px;
}

[lang=en] #page_culture .work_life__box--txt .point01 {
  right: 88px;
}

#page_future .c-btnNav {
  background: url(/assets/img/future/btn_img.png) no-repeat center/cover;
}

#page_future .next {
  padding: 115px 0;
  background: #eeeff0;
}

#page_future .next__txt {
  margin-top: 34px;
  font-size: 16px;
  line-height: 30px;
}

#page_future .next__img {
  margin-top: 89px;
}

#page_future .next__list {
  margin-top: 66px;
}

#page_future .next__list li:nth-child(n+2) {
  margin-top: 48px;
}

#page_future .next__list li .top {
  position: relative;
  border-radius: 20px 20px 0 0;
}

#page_future .next__list li .top .tit {
  position: absolute;
  bottom: -13px;
  left: 50px;
  color: #fff;
}

#page_future .next__list li .top .tit .ja {
  display: block;
  font-size: 20px;
  font-weight: 500;
  font-family: "M PLUS 1p",sans-serif;
  letter-spacing: .02em;
  line-height: 20px;
  margin-bottom: 8px;
}

#page_future .next__list li .top .tit .en {
  display: block;
  font-size: 70px;
  font-family: "Montserrat",sans-serif;
  line-height: 72px;
  letter-spacing: .02em;
  font-weight: bold;
}

#page_future .next__list li .bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fff;
  padding: 50px;
  border-radius: 0 0 20px 20px;
}

#page_future .next__list li .bottom .info {
  width: 48%;
}

#page_future .next__list li .bottom .info .head .tit {
  font-size: 32px;
  font-weight: 500;
  line-height: 47px;
  color: #cc2a2f;
}

#page_future .next__list li .bottom .info .head .tit.subtit {
  display: inline-block;
  font-size: 18px;
  line-height: 27px;
  padding-left: 18px;
}

#page_future .next__list li .bottom .info .txt {
  font-size: 16px;
  line-height: 30px;
  margin-top: 26px;
}

#page_future .next__list li .bottom .mov {
  width: 48%;
}

#page_future .next__list li .bottom .mov video {
  width: 100%;
  height: 100%;
}

#page_future .next__bnr {
  width: 700px;
  margin: 100px auto 0;
}

#page_future .next__bnr a {
  display: block;
  transition: .3s;
}

#page_future .next__bnr a:hover {
  opacity: .7;
}

#page_future .carbon {
  padding: 145px 0 94px;
}

#page_future .carbon__inner {
  position: relative;
  display: flex;
  align-items: center;
}

#page_future .carbon__info {
  width: 45%;
}

#page_future .carbon__txt {
  margin-top: 30px;
  font-size: 16px;
  line-height: 30px;
}

#page_future .carbon__img {
  position: absolute;
  bottom: -160px;
  right: -235px;
  width: 732px;
}

#page_future .sdgs {
  background: #eeeff0;
  padding: 101px 118px;
}

#page_future .sdgs__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#page_future .sdgs__info {
  width: 48%;
}

#page_future .sdgs__img {
  width: 48%;
}

#page_future .sdgs__txt {
  margin-top: 37px;
  font-size: 16px;
  line-height: 30px;
}

#page_future .sdgs__list {
  margin-top: 67px;
}

#page_future .sdgs__list li {
  border-radius: 15px;
  overflow: hidden;
}

#page_future .sdgs__list li:nth-child(n+2) {
  margin-top: 36px;
}

#page_future .sdgs__list li .tit {
  color: #fff;
  background: #abafb7;
  text-align: center;
  padding: 18px 0;
}

#page_future .sdgs__list li .tit .ja {
  font-size: 28px;
  font-family: "M PLUS 1p",sans-serif;
  line-height: 42px;
  font-weight: 500;
}

#page_future .sdgs__list li .tit .en {
  display: block;
  font-size: 12px;
  font-family: "Montserrat",sans-serif;
  line-height: 1.2;
}

#page_future .sdgs__list .box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 60px 50px;
  background: #fff;
}

#page_future .sdgs__list .box .img {
  width: 48%;
}

#page_future .sdgs__list .box .img.sizeChange {
  margin: 0 auto;
  width: 118px;
}

#page_future .sdgs__list .box .txt {
  width: 48%;
  font-size: 16px;
  line-height: 28px;
  font-weight: 500;
}

#index {
  color: #fff;
}

#index .c-buttonStyle1 {
  border: 1px solid #fff;
}

#index .c-buttonStyle1:hover {
  border: 1px solid rgba(0,0,0,0);
}

#index .c-buttonStyle1 .txt {
  color: #fff;
}

#index .wrap {
  display: block;
  overflow: hidden;
}

#index .line {
  display: inline-block;
}

#index .l-header {
  opacity: 0;
  pointer-events: none;
  transition: .5s;
}

#index .l-header.is-loading {
  opacity: 1;
  pointer-events: all;
}

#index .splash {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--vh, 1vh)*100);
  -webkit-backdrop-filter: blur(30px);
  backdrop-filter: blur(30px);
  z-index: 9999;
  -webkit-animation-delay: 2.1s;
  animation-delay: 2.1s;
}

#index .splash__bg {
  background: #cc2a2f;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
}

#index .splash__logo {
  -webkit-animation-delay: .5s;
  animation-delay: .5s;
}

#index .splash__logo img {
  width: 100%;
  height: 100%;
}

#index .hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  height: calc(var(--vh, 1vh)*100);
}

#index .hero__bg {
  position: fixed;
  inset: 0;
  z-index: -1;
}

#index .hero__bg video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

#index .hero__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.5);
}

#index .hero__bg #hero__mov--sp {
  display: none;
}

#index .hero__scroll {
  position: fixed;
  bottom: 69px;
  right: 41px;
  opacity: 0;
  transition: .5s;
}

#index .hero__scroll.is-loading {
  opacity: 1;
  pointer-events: all;
}

#index .hero__scroll .line {
  position: relative;
  display: block;
  width: 1px;
  height: 300px;
  background: rgba(255,255,255,.5);
}

#index .hero__scroll .line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(to bottom, #CC2A2F 50%, rgba(255, 255, 255, 0) 50%);
  background-position: 0 -300px;
  background-size: 100% 200%;
  width: 1px;
  height: 100%;
  -webkit-animation: scrollBarAnimePc 2s cubic-bezier(0.76, 0, 0.3, 1) forwards infinite;
  animation: scrollBarAnimePc 2s cubic-bezier(0.76, 0, 0.3, 1) forwards infinite;
}

#index .hero__head {
  position: fixed;
  bottom: 142px;
  opacity: 1;
  transition: .5s;
}

#index .hero__head.active {
  opacity: 0;
  pointer-events: none;
}

#index .hero__head .line {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  opacity: 0;
  transition: all .7s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-property: opacity,-webkit-transform;
  transition-property: opacity,transform;
  transition-property: opacity,transform,-webkit-transform;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transition;
  transition-delay: 2.5s;
}

#index .hero__head .line.loaded {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

#index .hero__tit {
  width: 408px;
}

#index .hero__tit img {
  width: 100%;
  height: 100%;
}

#index .hero__txt {
  margin-top: 40px;
  font-size: 18px;
  font-family: "Montserrat",sans-serif;
  line-height: 32px;
}

#index .concept {
  padding: 305px 0 408px;
}

#index .concept__subtit {
  color: #cc2a2f;
  font-size: 18px;
  font-family: "Bruno Ace";
}

#index .concept__tit {
  font-size: 48px;
  line-height: 71px;
  font-weight: 500;
  font-family: "M PLUS 1p",sans-serif;
  margin-top: 26px;
}

#index .concept__txt {
  font-size: 18px;
  line-height: 35px;
  margin-top: 35px;
}

#index .concept__btn {
  margin-top: 35px;
}

#index .news {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  color: #000;
  background: #444e5d;
  transition: .5s;
  opacity: 0;
  pointer-events: none;
}

#index .news.is-loading {
  opacity: 1;
  pointer-events: all;
}

#index .news.active {
  opacity: 0;
  pointer-events: none;
}

#index .news__btn {
  position: absolute;
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: .3s;
}

#index .news__btn>button {
  width: 30px;
  height: 30px;
}

#index .news__btn.is-open {
  top: auto;
  bottom: 26px;
  -webkit-transform: rotate(180deg) translate(0);
  transform: rotate(180deg) translate(0);
}

#index .news__inner {
  display: flex;
  align-items: center;
}

#index .news__inner.is-open .news__list {
  padding: 34px 30px;
}

#index .news__inner.is-open .news__list dl:nth-child(n+2) {
  display: flex;
}

#index .news__tit {
  font-size: 18px;
  font-family: "Montserrat",sans-serif;
  background: #444e5d;
  padding: 0 94px;
  color: #fff;
}

#index .news__list {
  padding: 24px 30px;
  background: #fff;
  width: 100%;
}

#index .news__list dl {
  display: flex;
  align-items: center;
  line-height: 1.5;
}

#index .news__list dl:nth-child(n+2) {
  margin-top: 17px;
  display: none;
}

#index .news__list dt {
  width: 108px;
  font-size: 14px;
  font-family: "Montserrat",sans-serif;
}

#index .news__list dd {
  font-size: 14px;
}

#index .news__list a {
  text-decoration: underline;
  transition: .3s;
}

#index .news__list a:hover {
  opacity: .7;
}

#index .about {
  background: #2e2e2e;
  padding: 389px 0 259px;
  margin-top: -160px;
}

#index .about__head {
  padding-left: 9.7364568082vw;
}

#index .about__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#index .about__txt {
  margin-top: 50px;
  font-size: 16px;
  line-height: 34px;
  width: 484px;
}

#index .about__btn {
  margin-top: 50px;
}

#index .about__img {
  width: 48.4626647145vw;
  overflow: hidden;
}

#index .future {
  text-align: center;
  -webkit-backdrop-filter: blur(29px) brightness(0.8);
  backdrop-filter: blur(29px) brightness(0.8);
}

#index .future__inner {
  position: relative;
  padding: 248px 0 234px;
}

#index .future__img {
  position: absolute;
  opacity: 0;
}

#index .future__img:nth-child(1) {
  top: 116px;
  left: -83px;
  width: 414px;
}

#index .future__img:nth-child(2) {
  top: auto;
  left: auto;
  bottom: 116px;
  right: 83px;
  width: 253px;
  -webkit-animation-delay: .2s;
  animation-delay: .2s;
}

#index .future__txt {
  margin-top: 61px;
  font-size: 16px;
  line-height: 35px;
  letter-spacing: .03em;
}

#index .future__btn {
  margin-top: 68px;
}

#index .future__btn a {
  margin: 0 auto;
}

#index .person {
  padding-top: 128px;
}

#index .person__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#index .person__scrollImg {
  margin-top: 84px;
  width: 180%;
}

#index .person__scrollImg--inner {
  display: flex;
  width: 120%;
}

#index .person__scrollImg--inner span {
  display: block;
}

#index .person__scrollImg--inner span:nth-child(n+2) {
  margin-left: 48px;
}

#index .project {
  padding: 155px 0 149px;
}

#index .project__inner {
  background: url(/assets/img/index/project_bg.png) no-repeat center/cover;
}

#index .project__tit {
  position: relative;
  top: -60px;
}

#index .project__tit .c-headingStyle2 .en {
  font-size: 100px;
  line-height: 101px;
  color: rgba(0,0,0,0);
  -webkit-text-stroke: 1px #fff;
}

#index .project__box {
  width: 705px;
  margin-left: auto;
  margin-top: 150px;
}

#index .project__box a {
  position: relative;
  z-index: 2;
  background: #cc2a2f;
  padding: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
}

#index .project__box a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #000;
  z-index: -1;
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
  transition: .3s;
}

#index .project__box a:hover button {
  border: 1px solid rgba(0,0,0,0);
  background-color: #fff;
}

#index .project__box a:hover button span {
  border-bottom: 1px solid #cc2a2f;
  border-right: 1px solid #cc2a2f;
}

#index .project__box a:hover::after {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

#index .project__box .subtit {
  position: relative;
  font-size: 16px;
  font-family: "Montserrat",sans-serif;
  padding-bottom: 22px;
}

#index .project__box .subtit::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 21px;
  height: 1px;
  background: #fff;
}

#index .project__box .tit {
  font-size: 24px;
  font-family: "M PLUS 1p",sans-serif;
  line-height: 36px;
  margin-top: 24px;
}

#index .project__box .tit span {
  font-family: "Noto Sans JP",sans-serif;
}

#index .project__box .txt {
  font-size: 12px;
  font-family: "M PLUS 1p",sans-serif;
  line-height: 18px;
  margin-top: 6px;
}

#index .flex__btnNav--list {
  display: flex;
}

#index .flex__btnNav--list li {
  position: relative;
  width: 50%;
  height: 600px;
  z-index: 2;
}

#index .flex__btnNav--list li:nth-child(1) {
  background: url(/assets/img/index/btnNav_img01.png) no-repeat center/cover;
}

#index .flex__btnNav--list li:nth-child(2) {
  background: url(/assets/img/index/btnNav_img02.png) no-repeat center/cover;
}

#index .flex__btnNav--list li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

#index .flex__btnNav--list li a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.26);
  z-index: -1;
  transition: .3s;
}

#index .flex__btnNav--list li a:hover::after {
  background: rgba(0,0,0,.5);
}

#index .flex__btnNav--list li a:hover button {
  border: 1px solid rgba(0,0,0,0);
  background-color: #fff;
}

#index .flex__btnNav--list li a:hover button span {
  border-bottom: 1px solid #cc2a2f;
  border-right: 1px solid #cc2a2f;
}

#index .flex__btnNav--inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 0 85px 85px;
}

#index .flex__btnNav--tit .c-headingStyle2 .en {
  color: #fff;
}

#index .flex__btnNav--btn .c-buttonStyle2 {
  margin-left: auto;
}

#page_info .c-pageNav ul li {
  width: 245px;
}

#page_info .c-mainv__tit::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: rgba(199,199,199,.5);
  width: 100vw;
  height: 1px;
}

#page_info .c-table {
  margin-top: 82px;
}

#page_info .info__box {
  padding: 105px 0 119px;
}

#page_info .info__box:nth-child(odd) {
  background: #f7f7f7;
}

#page_info .info__inner {
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
}

#page_info .info__btn {
  color: #cc2a2f;
  font-family: "M PLUS 1p",sans-serif;
  background: #fff;
  width: 100%;
  height: 70px;
  font-size: 18px;
  border-radius: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#page_info .info__btnwrap {
  color: #fff;
  margin-top: 64px;
  border-radius: 17px;
  background: #cc2a2f;
  padding: 40px 0 50px;
}

#page_info .info__btnwrap-tit {
  font-size: 30px;
  text-align: center;
  font-family: "Montserrat",sans-serif;
  margin-bottom: 30px;
}

#page_info .info__btnwrap-list {
  display: flex;
  justify-content: center;
}

#page_info .info__btnwrap-list li {
  width: 324px;
  margin: 0 15px;
}

#page_person .c-mainv__tit::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: rgba(199,199,199,.5);
  width: 100vw;
  height: 1px;
}

#page_person .c-btnNav {
  background: url(/assets/img/person/btn_img.png) no-repeat center/cover;
}

#page_person .c-pageSplash.active {
  display: none;
}

#page_person .grade__new,
#page_person .grade__recent-graduate {
  background: #00adcc;
}

#page_person .grade__career,
#page_person .grade__mid-career {
  background: #1fc39d;
}

#page_person .grade__intenship,
#page_person .grade__intenships {
  background: #00adcc;
}

#page_person .job {
  padding-top: 110px;
}

#page_person .job__img {
  margin-top: 39px;
}

#page_person .job__imgBg {
  position: relative;
  width: 100%;
  height: 487px;
  background: url(/assets/img/person/job_img.png) no-repeat left/cover;
}

#page_person .job__imgBtns {
  position: absolute;
  top: 76px;
  left: 167px;
}

#page_person .job__imgBtns--btm {
  position: relative;
  margin-top: 35px;
}

#page_person .job__imgBtns--btm::before {
  content: "";
  position: absolute;
  top: -15px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 917px;
  height: 1px;
  background: #ccc;
}

#page_person .job__imgLists {
  display: flex;
  align-items: center;
  gap: 8px;
}

#page_person .job__imgLists.flex-end {
  justify-content: flex-end;
}

#page_person .job__imgLists.flex-center li {
  margin-left: 25.5%;
}

#page_person .job__imgLists:nth-child(n+2) {
  margin-top: 10px;
}

#page_person .job__imgLists li img {
  width: 100%;
  height: 100%;
}

#page_person .job__imgLists li.job__imgItem>a {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

#page_person .job__imgLists li.job__imgItem>a::after {
  content: "";
  position: absolute;
  top: -7px;
  right: -5px;
  width: 25px;
  height: 25px;
  background: url(/assets/img/person/job_icon.svg) no-repeat center/cover;
}

#page_person .job__imgLists li.job__imgItem01,
#page_person .job__imgLists li.job__imgItem02 {
  width: 340px;
}

#page_person .job__imgLists li.job__imgItem03 {
  width: 132px;
}

#page_person .job__imgLists li.job__imgItem04 {
  width: 442px;
}

#page_person .job__imgLists li.job__imgItem05,
#page_person .job__imgLists li.job__imgItem06 {
  width: 220px;
}

#page_person .job__imgLists li.job__imgItem07 {
  width: 463px;
}

#page_person .job__imgLists li.job__imgItem08 {
  width: 832px;
}

#page_person .job__imgLists li.job__imgItem09,
#page_person .job__imgLists li.job__imgItem11 {
  width: 338px;
}

#page_person .job__imgLists li.job__imgItem10 {
  width: 341px;
}

#page_person .job__imgLists li.job__imgItem12 {
  width: 921px;
}

#page_person .job__imgLists li>a {
  transition: .3s;
}

#page_person .member {
  position: relative;
  background: #eeeff0;
  padding: 69px 0 126px;
}

#page_person .member::before {
  content: "";
  position: absolute;
  top: -204px;
  left: 0;
  width: 100%;
  height: 204px;
  background: #eeeff0;
  z-index: -1;
}

#page_person .member__filter {
  position: relative;
  margin-top: 52px;
  background: #fff;
  padding: 30px 28px 30px 63px;
}

#page_person .member__filter.is-open::before {
  opacity: 0;
}

#page_person .member__filter--inner {
  display: flex;
  align-items: center;
}

#page_person .member__filter--tit {
  font-size: 18px;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
  padding-right: 73px;
}

#page_person .member__filter--list li {
  width: 129px;
  margin: 5px 7px;
}

#page_person .member__filter--list li label {
  display: block;
  height: 100%;
}

#page_person .member__filter--list li label span {
  padding: 8px 10px;
  display: block;
  text-align: center;
  background: #ebebeb;
  border-radius: 24px;
  font-size: 15px;
  line-height: 1.15;
  transition: .3s;
}

#page_person .member__filter--list li label span:hover {
  background-color: #cc2a2f;
  color: #fff;
}

#page_person .member__filter--list li label input[type=radio],
#page_person .member__filter--list li label input[type=checkbox] {
  display: none;
}

#page_person .member__filter--list li label input[type=radio]:checked+span,
#page_person .member__filter--list li label input[type=checkbox]:checked+span {
  background-color: #cc2a2f;
  color: #fff;
}

#page_person .member__filter--box {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

#page_person .member__note {
  font-size: 14px;
  margin-top: 20px;
}

#page_person .member__intro {
  padding-top: 107px;
}

#page_person .member__intro--img {
  transition: .3s;
}

#page_person .member__intro--list {
  display: flex;
  gap: 70px;
  flex-wrap: wrap;
}

#page_person .member__intro--list li {
  width: 320px;
}

#page_person .member__intro--list li:hover .member__intro--img {
  opacity: .7;
}

#page_person .member__intro--info {
  text-align: center;
  line-height: 1.2;
}

#page_person .member__intro--info .career {
  display: inline-block;
  font-size: 14px;
  font-family: "M PLUS 1p",sans-serif;
  padding: 6px 22px;
  color: #fff;
  border-radius: 24px;
  margin-top: 18px;
}

#page_person .member__intro--info .name {
  font-size: 24px;
  font-family: "Montserrat",sans-serif;
  margin-top: 14px;
}

#page_person .member__intro--info .club {
  font-size: 16px;
  font-family: "M PLUS 1p",sans-serif;
  margin-top: 10px;
}

#page_project .c-btnNav {
  background: url(/assets/img/project/btn_img.png) no-repeat center/cover;
}

#page_project .project__heading {
  position: relative;
  margin-left: 20px;
}

#page_project .project__heading .tit {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 24px;
  white-space: nowrap;
  font-family: "Montserrat",sans-serif;
  color: #cc2a2f;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
  display: block;
}

#page_project .project__heading .tit::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -175px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 155px;
  height: 1px;
  background: #cc2a2f;
}

#page_project .main__tit .subtit {
  display: inline-block;
  background: #cc2a2f;
  color: #fff;
  font-size: 21px;
  font-family: "Montserrat",sans-serif;
  padding: 8px 26px;
}

#page_project .main__tit .tit {
  display: block;
  font-size: 44px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
  line-height: 65px;
  margin-top: 76px;
  color: #cc2a2f;
}

#page_project .main__tit .tit span {
  font-family: "Noto Sans JP",sans-serif;
}

#page_project .main__box {
  display: flex;
  justify-content: space-between;
  margin-top: 83px;
}

#page_project .main__box .txt {
  width: 42%;
  font-size: 16px;
  line-height: 34px;
}

#page_project .main__box .mov {
  width: 53%;
}

#page_project .main__box .mov video {
  width: 100%;
  height: 100%;
}

#page_project .member {
  margin-top: 117px;
}

#page_project .member .project__heading .tit {
  padding-left: 0;
  padding-right: 0;
}

#page_project .member__inner {
  margin-left: 50px;
}

#page_project .member__slide {
  display: flex;
  justify-content: space-between;
  margin-left: 50px;
}

#page_project .member__items {
  width: 240px;
}

#page_project .member__items .en {
  display: block;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: .08em;
  font-weight: bold;
  font-family: "Montserrat",sans-serif;
  margin-top: 22px;
}

#page_project .member__items .ja {
  display: block;
  font-size: 16px;
  line-height: 28px;
  font-weight: 500;
  margin-top: 14px;
  letter-spacing: 0;
}

#page_project .member__txt {
  margin: 30px 0 0 50px;
  font-size: 12px;
  line-height: 17px;
}

#page_project .episode__items {
  background: #444e5d;
  margin-top: 350px;
}

#page_project .episode__items:nth-child(even) .episode__tit {
  margin-left: 0;
  margin-right: 60px;
}

#page_project .episode__items:nth-child(even) .episode__main {
  flex-direction: row-reverse;
}

#page_project .episode__items:nth-child(even) .episode__content--box {
  flex-direction: row-reverse;
}

#page_project .episode__items:nth-child(even) .episode__content--box .obj .imgTop {
  right: auto;
  left: 70px;
  z-index: 1;
}

#page_project .episode__items:nth-child(even) .episode__content--box .obj .imgBottom {
  right: auto;
  top: 342px;
  left: -133px;
}

#page_project .episode__items:nth-child(even) .episode__content--tit {
  margin-left: auto;
}

#page_project .episode__inner {
  position: relative;
  padding: 0 0 180px;
  margin-top: -80px;
}

#page_project .episode__main {
  display: flex;
  position: relative;
  top: -250px;
}

#page_project .episode__img {
  width: 83.0893118594vw;
  height: 513px;
  overflow: hidden;
}

#page_project .episode__tit {
  margin-left: 60px;
}

#page_project .episode__content {
  color: #fff;
}

#page_project .episode__content--tit {
  width: 53%;
  font-size: 44px;
  line-height: 65px;
  font-family: "M PLUS 1p",sans-serif;
  font-weight: 500;
}

#page_project .episode__content--box {
  margin-top: 74px;
  display: flex;
  justify-content: space-between;
}

#page_project .episode__content--box .txt {
  width: 53%;
  font-size: 16px;
  line-height: 34px;
}

#page_project .episode__content--box .obj {
  width: 45%;
  position: relative;
}

#page_project .episode__content--box .obj .imgTop {
  position: absolute;
  top: 0;
  right: -133px;
}

#page_project .episode__content--box .obj .imgTop.img1 {
  width: 462px;
}

#page_project .episode__content--box .obj .imgTop.img2 {
  width: 363px;
}

#page_project .episode__content--box .obj .imgTop.img3 {
  width: 327px;
  right: 70px;
}

#page_project .episode__content--box .obj .imgBottom {
  position: absolute;
  top: 422px;
  right: 70px;
}

#page_project .episode__content--box .obj .imgBottom.img1 {
  width: 327px;
}

#page_project .episode__content--box .obj .imgBottom.img2 {
  width: 363px;
}

#page_project .episode__content--box .obj .imgBottom.img3 {
  width: 454px;
  right: -133px;
  top: 482px;
}

#page_project .goal {
  background: #cc2a2f;
  padding: 100px 0 0;
  color: #fff;
  text-align: center;
}

#page_project .goal__tit {
  font-size: 44px;
  font-weight: 500;
  line-height: 65px;
  font-family: "M PLUS 1p",sans-serif;
}

#page_project .goal__txt {
  font-size: 16px;
  line-height: 34px;
  margin: 47px 0 82px;
}

#page_project .message {
  padding: 115px 0 114px;
}

#page_project .message__inner {
  display: flex;
  justify-content: space-between;
}

#page_project .message__tit .project__heading .tit {
  padding-left: 0;
  padding-right: 0;
}

#page_project .message__box {
  display: flex;
  flex-wrap: wrap;
  margin-left: 60px;
}

#page_project .message__box li {
  width: 489px;
}

#page_project .message__box li:nth-child(2n) {
  margin-left: auto;
}

#page_project .message__box li:nth-child(n+3) {
  margin-top: 71px;
}

#page_project .message__box li .txt {
  position: relative;
  padding: 35px 0 25px;
  font-size: 14px;
  line-height: 30px;
  border-bottom: 1px solid #989898;
  margin-top: 34px;
  min-height: 180px;
}

#page_project .message__box li .txt::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url(/assets/img/project/message_line.png) no-repeat top/100%;
  width: 100%;
  height: 100%;
  z-index: -1;
}

@media (min-width: 767px) {
  .u-hidden-up-md {
    display: none !important;
    visibility: hidden;
  }

  a[href^="tel:"] {
    pointer-events: none;
    color: inherit;
    cursor: default;
    text-decoration: none;
  }

  #page_person .job__imgLists li>a:hover {
    opacity: .7;
  }
}

@media (min-width: 900px) {
  .u-hidden-up-lg {
    display: none !important;
    visibility: hidden;
  }
}

@media (min-width: 1366px) {
  .u-hidden-xl {
    display: none !important;
    visibility: hidden;
  }

  .u-hidden-up-xl {
    display: none !important;
    visibility: hidden;
  }
}

@media (max-width: 1365.98px) {
  .u-hidden-down-lg {
    display: none !important;
    visibility: hidden;
  }

  body {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.9282576867vw;
  }

  .l-sec {
    padding: 23.7188872621vw 0 7.6866764275vw;
    margin-top: -17.5695461201vw;
  }

  .l-sec__innerS {
    width: 80.5270863836vw;
  }

  .l-header__logo {
    margin-left: 1.1713030747vw;
    width: 7.906295754vw;
  }

  .l-nav__inner ul li:nth-child(n+2) {
    margin-left: 2.9282576867vw;
  }

  .l-nav__inner ul li a span.en {
    font-size: 1.0248901903vw;
  }

  .l-nav__inner ul li a span.ja {
    font-size: .7320644217vw;
  }

  .l-lang {
    margin-left: 3.074670571vw;
    padding: 0 2.196193265vw;
  }

  .l-lang::before {
    width: .0732064422vw;
  }

  .l-lang span,
  .l-lang a {
    font-size: .878477306vw;
  }

  .l-lang span:nth-child(n+2),
  .l-lang a:nth-child(n+2) {
    margin-top: 1.0980966325vw;
  }

  .l-entry a {
    padding-left: 1.9765739385vw;
    padding-right: 1.317715959vw;
  }

  .l-entry a .txt {
    font-size: 1.0248901903vw;
    padding-bottom: .3660322108vw;
  }

  .l-entry a .obj {
    margin-left: 1.5373352855vw;
  }

  .l-footer {
    padding: 6.0761346999vw 6.0761346999vw 4.0263543192vw;
  }

  .l-footer__box:nth-child(2) {
    padding-top: 1.6105417277vw;
    margin-top: 7.027818448vw;
    border-top: .0732064422vw solid rgba(199,199,199,.5);
  }

  .l-footer__logo {
    width: 13.0307467057vw;
  }

  .l-footer__pageTop a .txt {
    font-size: .878477306vw;
    margin-right: 1.1713030747vw;
  }

  .l-footer__pageTop a .icon {
    width: 4.9780380673vw;
    height: 4.9780380673vw;
    border: .0732064422vw solid #cc2a2f;
  }

  .l-footer__pageTop a .icon span {
    width: 1.3909224012vw;
    height: 1.1713030747vw;
  }

  .l-footer__link {
    font-size: .878477306vw;
  }

  .l-footer__copyright {
    font-size: .878477306vw;
  }

  .c-buttonStyle1 {
    width: 15.4465592972vw;
    height: 4.5387994143vw;
    border-radius: 2.8550512445vw;
  }

  .c-buttonStyle1 .txt {
    font-size: 1.0248901903vw;
    padding-left: 2.7086383602vw;
  }

  .c-buttonStyle1 .obj {
    width: .878477306vw;
    height: .878477306vw;
    right: 1.6837481698vw;
  }

  .c-buttonStyle2 {
    width: 4.0995607613vw;
    height: 4.0995607613vw;
  }

  .c-buttonStyle2 span {
    width: 1.0980966325vw;
    height: 1.0980966325vw;
    margin-right: .5856515373vw;
  }

  input,
  select,
  textarea {
    font-size: 1.1713030747vw;
    height: 3.6603221083vw;
    padding: .2928257687vw 1.4641288433vw;
  }

  input[type=checkbox]+.input_checkbox {
    width: 1.8301610542vw;
    height: 1.8301610542vw;
    border-radius: .2928257687vw;
    margin-right: 1.0980966325vw;
  }

  input[type=checkbox]:checked+.input_checkbox:after,
  input[type=checkbox]:checked+.input_checkbox:before {
    height: .2196193265vw;
    border-radius: .1464128843vw;
  }

  input[type=radio]+.input_radio {
    width: 1.4641288433vw;
    height: 1.4641288433vw;
    margin-right: .3660322108vw;
  }

  input[type=radio]:checked+.input_radio::after {
    width: .878477306vw;
    height: .878477306vw;
  }

  textarea {
    height: 16.9838945827vw;
    padding: 1.0980966325vw 1.0980966325vw;
    border-radius: .2928257687vw;
  }

  .myError:not(input,select,textarea) {
    font-size: 1.0248901903vw;
    margin-top: .439238653vw;
  }

  .selectBox:before {
    top: calc(50% - .3660322108vw);
    right: 1.4641288433vw;
    width: .5856515373vw;
    height: .5856515373vw;
    border-left-width: .0732064422vw;
    border-bottom-width: .0732064422vw;
  }

  .c-headingStyle1 .en {
    font-size: 1.0248901903vw;
    margin-bottom: .878477306vw;
  }

  .c-headingStyle1 .ja {
    font-size: 44px;
    font-size: 3.2210834553vw;
    line-height: 4.7584187408vw;
  }

  .c-headingStyle2 .en {
    font-size: 66px;
    font-size: 4.831625183vw;
    line-height: 4.7584187408vw;
  }

  .c-headingStyle2 .ja {
    font-size: 1.4641288433vw;
    margin-top: 1.0980966325vw;
  }

  .c-mainv {
    padding-top: 80px;
  }

  .c-mainv__tit {
    height: 26.8667642753vw;
  }

  .c-mainv__tit::after {
    width: 3.6603221083vw;
    height: .3660322108vw;
  }

  .c-mainv__tit .en {
    font-size: 6.0029282577vw;
  }

  .c-mainv__tit .ja {
    font-size: 1.4641288433vw;
    margin-top: 1.1713030747vw;
  }

  .c-mainv__img {
    height: 38.7994143485vw;
  }

  .c-pageNav {
    padding: 3.7335285505vw 0;
  }

  .c-pageNav ul li {
    width: 13.5431918009vw;
  }

  .c-pageNav ul li:nth-child(n+2) {
    margin-left: 3.074670571vw;
  }

  .c-pageNav ul li a {
    font-size: 1.1713030747vw;
    border-bottom: VW(1, 1366) solid rgba(199,199,199,.5);
  }

  .c-pageNav ul li a::before {
    width: .5124450952vw;
    height: .5124450952vw;
    border-bottom: .0732064422vw solid #cc2a2f;
    border-right: .0732064422vw solid #cc2a2f;
  }

  .c-btnNav {
    height: 35.1390922401vw;
  }

  .c-btnNav a:hover .subtit::after {
    width: 12.0790629575vw;
  }

  .c-btnNav__head .subtit {
    font-size: 1.756954612vw;
    padding-right: 13.5431918009vw;
  }

  .c-btnNav__head .subtit::after {
    height: .0732064422vw;
    left: 6.2225475842vw;
  }

  .c-btnNav__head .tit {
    font-size: 5.710102489vw;
    margin-top: 2.196193265vw;
  }

  .c-modal {
    width: 65.8857979502vw;
    border-radius: 1.756954612vw;
    margin: 5.9297218155vw auto 9.1508052709vw;
  }

  .c-modal__closeInner {
    width: 1.756954612vw;
  }

  .c-modal__inner {
    padding: 2.9282576867vw;
  }

  .c-modal__info {
    bottom: 1.0980966325vw;
    left: 1.2445095168vw;
  }

  .c-modal__info .carrer {
    padding: .3660322108vw 1.9765739385vw;
    font-size: 1.1713030747vw;
    border-radius: 1.756954612vw;
  }

  .c-modal__info .club,
  .c-modal__info .name {
    padding: .2196193265vw .5856515373vw;
    font-size: 1.1713030747vw;
  }

  .c-modal__interview {
    margin-top: 3.074670571vw;
  }

  .c-modal__interview .en {
    font-size: 1.0248901903vw;
  }

  .c-modal__interview .ja {
    margin-top: .878477306vw;
    padding-bottom: 2.4890190337vw;
    font-size: 32px;
    font-size: 2.3426061493vw;
    line-height: 3.513909224vw;
  }

  .c-modal__interview .ja::before {
    height: .0732064422vw;
  }

  .c-modal__interview .ja::after {
    width: 14.5680819912vw;
    height: .0732064422vw;
  }

  .c-modal__qa {
    margin-top: 2.9282576867vw;
  }

  .c-modal__qa dl:nth-child(n+2) {
    margin-top: 2.9282576867vw;
  }

  .c-modal__qa dl dt {
    font-size: 20px;
    font-size: 1.4641288433vw;
    line-height: 2.1229868228vw;
  }

  .c-modal__qa dl dd {
    margin-top: 1.1713030747vw;
    font-size: 14px;
    font-size: 1.0248901903vw;
    line-height: 1.9033674963vw;
  }

  .c-modal__intro {
    margin-top: 2.9282576867vw;
    padding: 1.6105417277vw 1.4641288433vw;
  }

  .c-modal__intro .tit {
    font-size: 18px;
    font-size: 1.317715959vw;
    line-height: 2.0497803807vw;
  }

  .c-modal__intro .txt {
    margin-top: 1.4641288433vw;
    padding: 1.0980966325vw;
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.0497803807vw;
  }

  .c-subModal {
    width: 65.8857979502vw;
    border-radius: 1.756954612vw;
    padding: 2.9282576867vw;
    margin: 5.9297218155vw auto 9.1508052709vw;
  }

  .c-subModal__closeInner {
    width: 1.756954612vw;
  }

  .c-subModal__content .tit {
    font-size: 2.196193265vw;
  }

  .c-subModal__content .inner {
    margin-top: 2.4890190337vw;
    -webkit-column-gap: 1.317715959vw;
    -moz-column-gap: 1.317715959vw;
    column-gap: 1.317715959vw;
  }

  .c-subModal__content .txt {
    font-size: 1.0248901903vw;
    margin-top: 2.196193265vw;
  }

  .c-table dl:nth-child(1)::before {
    width: 14.6412884334vw;
  }

  .c-table dl::after {
    width: 14.6412884334vw;
  }

  .c-table dl dt {
    width: 13.9092240117vw;
    padding: 2.4158125915vw 0 2.2693997072vw;
    font-size: 20px;
    font-size: 1.4641288433vw;
    line-height: 2.1229868228vw;
  }

  .c-table dl dd {
    padding: 2.4158125915vw 0 2.2693997072vw;
    width: 43.9238653001vw;
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
  }

  .c-slider1 .swiper-button-next,
  .c-slider1 .swiper-button-prev {
    width: 4.9780380673vw;
    height: 4.9780380673vw;
  }

  .c-slider1 .swiper-button-next::after,
  .c-slider1 .swiper-button-prev::after {
    width: 1.0980966325vw;
    height: 1.0980966325vw;
  }

  .c-slider1 .swiper-button-next {
    left: 7.3206442167vw;
  }

  .c-slider1 .swiper-button-next::after {
    margin-right: .5856515373vw;
  }

  .c-slider1 .swiper-button-prev::after {
    margin-left: .5856515373vw;
  }

  #page_about .l-sec__bg3 {
    padding: 8.345534407vw 0 18.0087847731vw;
  }

  #page_about .industry__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
    margin-top: 3.0014641288vw;
  }

  #page_about .industry__img {
    margin-top: 3.0014641288vw;
  }

  #page_about .business {
    padding-top: 8.8579795022vw;
  }

  #page_about .business__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
    margin-top: 2.0497803807vw;
  }

  #page_about .business__slide {
    margin-top: 2.0497803807vw;
    width: 90.2635431918vw;
  }

  #page_about .business__slide .swiper {
    width: calc(100% + 9.7364568082vw);
  }

  #page_about .business__slide .swiper-slide .txt {
    bottom: 3.0014641288vw;
    font-size: 1.756954612vw;
    padding-left: 4.5387994143vw;
  }

  #page_about .business__slide .swiper-slide .txt::after {
    width: 3.3674963397vw;
    height: .0732064422vw;
  }

  #page_about .business__slide .swiper-slide .pointer {
    width: 1.8301610542vw;
    height: 1.8301610542vw;
  }

  #page_about .business__slide .swiper-button-next,
  #page_about .business__slide .swiper-button-prev {
    bottom: -9.5168374817vw;
  }

  #page_about .keyword {
    padding: 8.0527086384vw 0 10.7613469985vw;
  }

  #page_about .keyword__item {
    margin-top: 5.3440702782vw;
  }

  #page_about .keyword__item li:nth-of-type(n + 2) {
    margin-top: 9.1508052709vw;
  }

  #page_about .keyword__main--head {
    bottom: -1.9765739385vw;
  }

  #page_about .keyword__main--head .num {
    font-size: 7.3206442167vw;
  }

  #page_about .keyword__main--head .tit {
    font-size: 2.3426061493vw;
    padding: .878477306vw;
  }

  #page_about .keyword__sub {
    margin-top: 6.149341142vw;
  }

  #page_about .keyword__sub--txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
  }

  #page_about .keyword__sub--img.positionChange {
    right: 5.1244509517vw;
    width: 28.4040995608vw;
  }

  #page_concept .vision {
    padding: 10.541727672vw 0 10.4685212299vw;
  }

  #page_concept .vision__tit--en {
    font-size: 4.831625183vw;
  }

  #page_concept .vision__tit--ja {
    font-size: 44px;
    font-size: 3.2210834553vw;
    line-height: 4.7584187408vw;
    margin-top: 4.9780380673vw;
  }

  #page_concept .vision__subtit {
    font-size: 14px;
    font-size: 1.0248901903vw;
    line-height: 2.0497803807vw;
    margin-top: 1.4641288433vw;
  }

  #page_concept .vision__txt {
    font-size: 18px;
    font-size: 1.317715959vw;
    line-height: 2.9282576867vw;
    margin-top: 2.8550512445vw;
  }

  #page_concept .message {
    padding: 12.4450951684vw 0 13.9824304539vw;
  }

  #page_concept .message__tit {
    font-size: 48px;
    font-size: 3.513909224vw;
    line-height: 5.1976573939vw;
  }

  #page_concept .message__subtit {
    font-size: 1.0248901903vw;
    margin-top: 1.0980966325vw;
  }

  #page_concept .message__txt1 {
    font-size: 18px;
    font-size: 1.317715959vw;
    line-height: 3.6603221083vw;
    margin-top: 7.6866764275vw;
  }

  #page_concept .message__txt2 {
    font-size: 32px;
    font-size: 2.3426061493vw;
    line-height: 3.4407027818vw;
    margin-top: 4.39238653vw;
  }

  #page_concept .philosophy {
    padding-top: 9.2972181552vw;
  }

  #page_concept .philosophy .corporate_principles--txt {
    font-size: 22px;
    font-size: 1.6105417277vw;
    line-height: 3.6603221083vw;
    margin-top: 3.7335285505vw;
  }

  #page_concept .philosophy .corporate_message {
    margin-top: 6.0029282577vw;
  }

  #page_concept .philosophy .corporate_message--txt {
    font-size: 24px;
    font-size: 1.756954612vw;
    line-height: 3.6603221083vw;
    margin-top: 1.756954612vw;
  }

  #page_concept .philosophy__img .comment {
    font-size: .878477306vw;
  }

  #page_contact.check .contact__row dd {
    font-size: 1.1713030747vw;
    min-height: 3.6603221083vw;
    padding: .7320644217vw 1.4641288433vw;
  }

  #page_contact .contact {
    padding: 5.710102489vw 0 8.2723279649vw;
  }

  #page_contact .contact__txt {
    font-size: 1.0248901903vw;
  }

  #page_contact .contact__box {
    padding: 4.0263543192vw;
    margin-top: 3.8799414348vw;
    border-radius: .7320644217vw;
  }

  #page_contact .contact__tit span {
    font-size: 1.6837481698vw;
    padding-bottom: .7320644217vw;
  }

  #page_contact .contact__item {
    margin-top: 4.39238653vw;
  }

  #page_contact .contact__item dl:nth-child(n+2) {
    margin-top: 2.3426061493vw;
  }

  #page_contact .contact__item dl dt {
    font-size: 1.1713030747vw;
  }

  #page_contact .contact__item dl dd {
    margin-top: .878477306vw;
  }

  #page_contact .contact__item dl dd .comment {
    font-size: .878477306vw;
  }

  #page_contact .contact__item dl dd .sex .txt,
  #page_contact .contact__item dl dd .education .txt {
    margin-right: .7320644217vw;
  }

  #page_contact .contact__item dl dd .birth .txt,
  #page_contact .contact__item dl dd .age .txt,
  #page_contact .contact__item dl dd .post .txt {
    margin: 0 .5124450952vw;
  }

  #page_contact .contact__btm {
    margin-top: 4.9780380673vw;
  }

  #page_contact .contact__btm form {
    gap: 0 4.6852122987vw;
  }

  #page_contact .contact__privacy--tit {
    font-size: 1.317715959vw;
  }

  #page_contact .contact__privacyBox--txt {
    margin-top: 1.756954612vw;
    font-size: 1.0248901903vw;
  }

  #page_contact .contact__agreeBox {
    margin-top: .878477306vw;
  }

  #page_contact .contact__btn {
    width: 15.4465592972vw;
    margin: 4.831625183vw auto 0;
  }

  #page_contact .contact__btn button,
  #page_contact .contact__btn a {
    width: 15.4465592972vw;
    height: 4.5387994143vw;
    border-radius: 2.8550512445vw;
  }

  #page_contact .contact__btn button span,
  #page_contact .contact__btn a span {
    font-size: 1.1713030747vw;
  }

  #page_contact .contact__top--btn {
    margin-top: 2.635431918vw;
  }

  #page_culture .education {
    padding: 7.3938506589vw 0 7.1010248902vw;
  }

  #page_culture .education__txt {
    font-size: 1.1713030747vw;
    margin-top: 2.5622254758vw;
  }

  #page_culture .education__img {
    margin-top: 3.1478770132vw;
  }

  #page_culture .career.l-sec {
    padding: 6.588579795vw 0 7.6866764275vw;
  }

  #page_culture .career__txt {
    font-size: 1.1713030747vw;
    margin-top: 2.0497803807vw;
  }

  #page_culture .career__img {
    margin-top: 2.7086383602vw;
  }

  #page_culture .career__comment {
    font-size: .878477306vw;
    margin-top: 2.9282576867vw;
  }

  #page_culture .welfare {
    padding-top: 8.8579795022vw;
  }

  #page_culture .welfare__slide {
    margin-top: 3.513909224vw;
  }

  #page_culture .welfare__slide .tit {
    font-size: 2.3426061493vw;
    margin-top: 2.8550512445vw;
  }

  #page_culture .welfare__slide .txt {
    font-size: 1.1713030747vw;
    margin-top: 1.9033674963vw;
  }

  #page_culture .welfare__slide .swiper-button-next,
  #page_culture .welfare__slide .swiper-button-prev {
    bottom: -9.5168374817vw;
  }

  #page_culture .work_life {
    padding-top: 16.3982430454vw;
  }

  #page_culture .work_life__box {
    -webkit-column-gap: 2.9282576867vw;
    -moz-column-gap: 2.9282576867vw;
    column-gap: 2.9282576867vw;
    margin-top: 3.8067349927vw;
  }

  #page_culture .work_life__box .swiper-slide {
    border-radius: .7320644217vw;
    width: 24.8901903367vw;
  }

  #page_culture .work_life__box--inner {
    height: 24.4509516837vw;
  }

  #page_culture .work_life__box--inner .content {
    height: 18.8140556369vw;
  }

  #page_culture .work_life__box--tit {
    font-size: 1.756954612vw;
    padding: 1.0980966325vw;
  }

  #page_culture .work_life__box--img {
    width: 5.4904831625vw;
  }

  #page_culture .work_life__box--txt {
    font-size: 2.3426061493vw;
    margin-top: 2.5622254758vw;
  }

  #page_culture .work_life__box--txt .point {
    font-size: 1.317715959vw;
  }

  #page_culture .work_life__box--txt .point01 {
    top: 2.196193265vw;
    right: .878477306vw;
  }

  #page_culture .work_life__box--txt .point03 {
    top: -.7320644217vw;
  }

  #page_culture .work_life__box--txt .num {
    font-size: 7.3206442167vw;
    padding: 0 .3660322108vw;
    bottom: -.2928257687vw;
  }

  #page_culture .work_life__box--txt .num span {
    font-size: 3.8799414348vw;
  }

  #page_culture .work_life__box--txt .block {
    margin-top: .3660322108vw;
  }

  #page_culture .work_life__box--comment {
    font-size: 1.0248901903vw;
    margin-top: 2.2693997072vw;
  }

  #page_culture .workplace.l-sec {
    margin-top: -14.6412884334vw;
  }

  #page_culture .workplace__txt {
    font-size: 1.1713030747vw;
    margin-top: 3.4407027818vw;
  }

  #page_culture .workplace__slide {
    margin-top: 3.4407027818vw;
  }

  #page_culture .workplace__slide .swiper-slide .txt {
    font-size: 1.317715959vw;
    padding-top: 1.6105417277vw;
  }

  #page_culture .workplace__slide .swiper-button-next,
  #page_culture .workplace__slide .swiper-button-prev {
    width: 4.6120058565vw;
    height: 4.6120058565vw;
  }

  #page_culture .workplace__slide .swiper-button-next::after,
  #page_culture .workplace__slide .swiper-button-prev::after {
    width: 1.3909224012vw;
    height: 1.1713030747vw;
  }

  #page_culture .workplace__slide .swiper-button-next {
    right: 9.663250366vw;
  }

  #page_culture .workplace__slide .swiper-button-prev {
    left: 9.663250366vw;
  }

  #page_culture .workplace__slide .swiper-pagination {
    bottom: -3.8067349927vw;
  }

  #page_culture .workplace__slide .swiper-pagination .swiper-pagination-bullet {
    width: .8052708638vw;
    height: .8052708638vw;
    margin: 0 .5124450952vw;
  }

  [lang=en] #index .hero__tit .hero__txt {
    font-size: 3.953147877vw;
  }

  [lang=en] #page_about .keyword__sub--img.positionChange {
    bottom: -.5856515373vw;
    right: 3.074670571vw;
    width: 32.5768667643vw;
  }

  [lang=en] #page_project .message__box .txt {
    min-height: 15.3733528551vw;
  }

  [lang=en] #page_person .job__imgBg {
    height: 37.0424597365vw;
  }

  [lang=en] #page_culture .work_life__box--tit {
    height: 7.3206442167vw;
  }

  [lang=en] #page_culture .work_life__box--txt .point01 {
    right: 6.4421669107vw;
  }

  #page_future .next {
    padding: 8.4187408492vw 0;
  }

  #page_future .next__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
    margin-top: 2.4890190337vw;
  }

  #page_future .next__img {
    margin-top: 6.5153733529vw;
  }

  #page_future .next__list {
    margin-top: 4.831625183vw;
  }

  #page_future .next__list li:nth-child(n+2) {
    margin-top: 3.513909224vw;
  }

  #page_future .next__list li .top {
    border-radius: 1.4641288433vw 1.4641288433vw 0 0;
  }

  #page_future .next__list li .top .tit {
    bottom: -.9516837482vw;
    left: 3.6603221083vw;
  }

  #page_future .next__list li .top .tit .ja {
    font-size: 20px;
    font-size: 1.4641288433vw;
    line-height: 1.4641288433vw;
    margin-bottom: .5856515373vw;
  }

  #page_future .next__list li .top .tit .en {
    font-size: 70px;
    font-size: 5.1244509517vw;
    line-height: 5.270863836vw;
  }

  #page_future .next__list li .bottom {
    padding: 3.6603221083vw;
    border-radius: 0 0 1.4641288433vw 1.4641288433vw;
  }

  #page_future .next__list li .bottom .info .head .tit {
    font-size: 32px;
    font-size: 2.3426061493vw;
    line-height: 3.4407027818vw;
  }

  #page_future .next__list li .bottom .info .head .tit.subtit {
    font-size: 18px;
    font-size: 1.317715959vw;
    line-height: 1.9765739385vw;
    padding-left: 1.317715959vw;
  }

  #page_future .next__list li .bottom .info .txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
    margin-top: 1.9033674963vw;
  }

  #page_future .next__bnr {
    width: 51.2445095168vw;
    margin: 7.3206442167vw auto 0;
  }

  #page_future .carbon {
    padding: 10.6149341142vw 0 6.8814055637vw;
  }

  #page_future .carbon__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
    margin-top: 2.196193265vw;
  }

  #page_future .carbon__img {
    bottom: -11.7130307467vw;
    right: -17.2035139092vw;
    width: 53.5871156662vw;
  }

  #page_future .sdgs {
    padding: 7.3938506589vw 0 8.6383601757vw;
  }

  #page_future .sdgs__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.196193265vw;
    margin-top: 2.7086383602vw;
  }

  #page_future .sdgs__list {
    margin-top: 4.9048316252vw;
  }

  #page_future .sdgs__list li:nth-child(n+2) {
    margin-top: 2.635431918vw;
  }

  #page_future .sdgs__list li .tit {
    padding: 1.317715959vw 0;
  }

  #page_future .sdgs__list li .tit .ja {
    font-size: 28px;
    font-size: 2.0497803807vw;
    line-height: 3.074670571vw;
  }

  #page_future .sdgs__list li .tit .en {
    font-size: .878477306vw;
  }

  #page_future .sdgs__list .box {
    padding: 4.39238653vw 3.6603221083vw;
  }

  #page_future .sdgs__list .box .img.sizeChange {
    width: 8.6383601757vw;
  }

  #page_future .sdgs__list .box .txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.0497803807vw;
  }

  #index .hero__scroll {
    bottom: 5.0512445095vw;
  }

  #index .hero__head {
    bottom: 10.3953147877vw;
  }

  #index .concept {
    padding: 22.3279648609vw 0 26.2079062958vw;
  }

  #index .concept__subtit {
    font-size: 1.317715959vw;
  }

  #index .concept__tit {
    font-size: 48px;
    font-size: 3.513909224vw;
    line-height: 5.1976573939vw;
    margin-top: 1.9033674963vw;
  }

  #index .concept__txt {
    font-size: 18px;
    font-size: 1.317715959vw;
    line-height: 2.5622254758vw;
    margin-top: 2.5622254758vw;
  }

  #index .concept__btn {
    margin-top: 2.5622254758vw;
  }

  #index .news__btn {
    right: 2.196193265vw;
  }

  #index .news__btn.is-open {
    bottom: 1.9033674963vw;
  }

  #index .news__inner.is-open .news__list {
    padding: 2.4890190337vw 2.196193265vw;
  }

  #index .news__tit {
    font-size: 1.317715959vw;
    padding: 0 6.8814055637vw;
  }

  #index .news__list {
    padding: 1.756954612vw 2.196193265vw;
  }

  #index .news__list dl:nth-child(n+2) {
    margin-top: 1.2445095168vw;
  }

  #index .news__list dt {
    font-size: 1.0248901903vw;
    width: 7.906295754vw;
  }

  #index .news__list dd {
    font-size: 1.0248901903vw;
  }

  #index .about {
    padding: 28.4773060029vw 0 18.9604685212vw;
    margin-top: -11.7130307467vw;
  }

  #index .about__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.4890190337vw;
    width: 35.4319180088vw;
  }

  #index .about__btn {
    margin-top: 3.6603221083vw;
  }

  #index .about__img {
    width: 48.4626647145vw;
  }

  #index .future__inner {
    padding: 18.1551976574vw 0 17.1303074671vw;
  }

  #index .future__img:nth-child(1) {
    width: 30.3074670571vw;
    top: 8.4919472914vw;
    left: -6.0761346999vw;
  }

  #index .future__img:nth-child(2) {
    width: 18.5212298682vw;
    bottom: 8.4919472914vw;
    right: 6.0761346999vw;
  }

  #index .future__txt {
    margin-top: 4.4655929722vw;
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.5622254758vw;
  }

  #index .future__btn {
    margin-top: 4.9780380673vw;
  }

  #index .person {
    padding-top: 9.3704245974vw;
  }

  #index .person__scrollImg {
    margin-top: 6.149341142vw;
  }

  #index .person__scrollImg--inner span:nth-child(n+2) {
    margin-left: 3.513909224vw;
  }

  #index .project {
    padding: 11.3469985359vw 0 10.9077598829vw;
  }

  #index .project__tit {
    top: -4.39238653vw;
  }

  #index .project__tit .c-headingStyle2 .en {
    font-size: 100px;
    font-size: 7.3206442167vw;
    line-height: 7.3938506589vw;
  }

  #index .project__box {
    width: 51.6105417277vw;
  }

  #index .project__box a {
    padding: 2.7818448023vw;
  }

  #index .project__box .subtit {
    font-size: 1.1713030747vw;
    padding-bottom: 1.6105417277vw;
  }

  #index .project__box .subtit::after {
    width: 1.5373352855vw;
    height: .0732064422vw;
  }

  #index .project__box .tit {
    font-size: 24px;
    font-size: 1.756954612vw;
    line-height: 2.635431918vw;
    margin-top: 1.756954612vw;
  }

  #index .project__box .txt {
    font-size: .878477306vw;
    margin-top: .439238653vw;
  }

  #index .flex__btnNav--list li {
    height: 43.9238653001vw;
  }

  #index .flex__btnNav--inner {
    padding: 0 6.2225475842vw 6.2225475842vw;
  }

  #page_info .c-pageNav ul li {
    width: 17.9355783309vw;
  }

  #page_info .c-mainv__tit::before {
    height: .0732064422vw;
  }

  #page_info .c-table {
    margin-top: 6.0029282577vw;
  }

  #page_info .info__box {
    padding: 7.6866764275vw 0 8.7115666179vw;
  }

  #page_info .info__btn {
    height: 5.1244509517vw;
    font-size: 1.317715959vw;
    border-radius: 2.5622254758vw;
  }

  #page_info .info__btnwrap {
    border-radius: 1.2445095168vw;
    padding: 2.9282576867vw 0 3.6603221083vw;
    margin-top: 4.6852122987vw;
  }

  #page_info .info__btnwrap-tit {
    font-size: 2.196193265vw;
    margin-bottom: 2.196193265vw;
  }

  #page_info .info__btnwrap-list li {
    width: 23.7188872621vw;
    margin: 0 1.0980966325vw;
  }

  #page_person .c-mainv__tit::before {
    height: .0732064422vw;
  }

  #page_person .job {
    padding-top: 8.0527086384vw;
  }

  #page_person .job__img {
    margin-top: 2.8550512445vw;
  }

  #page_person .job__imgBg {
    height: 35.6515373353vw;
  }

  #page_person .job__imgBtns {
    top: 5.5636896047vw;
    left: 12.2254758419vw;
  }

  #page_person .job__imgBtns--btm {
    margin-top: 2.5622254758vw;
  }

  #page_person .job__imgBtns--btm::before {
    top: -1.0980966325vw;
    width: 67.1303074671vw;
    height: .0732064422vw;
  }

  #page_person .job__imgLists {
    gap: .878477306vw;
  }

  #page_person .job__imgLists:nth-child(n+2) {
    margin-top: .7320644217vw;
  }

  #page_person .job__imgLists li.job__imgItem>a::after {
    top: -.5124450952vw;
    right: -.3660322108vw;
    width: 1.8301610542vw;
    height: 1.8301610542vw;
  }

  #page_person .job__imgLists li.job__imgItem01,
  #page_person .job__imgLists li.job__imgItem02 {
    width: 24.8901903367vw;
  }

  #page_person .job__imgLists li.job__imgItem03 {
    width: 9.663250366vw;
  }

  #page_person .job__imgLists li.job__imgItem04 {
    width: 32.3572474378vw;
  }

  #page_person .job__imgLists li.job__imgItem05,
  #page_person .job__imgLists li.job__imgItem06 {
    width: 16.1054172767vw;
  }

  #page_person .job__imgLists li.job__imgItem07 {
    width: 33.8945827233vw;
  }

  #page_person .job__imgLists li.job__imgItem08 {
    width: 60.9077598829vw;
  }

  #page_person .job__imgLists li.job__imgItem09,
  #page_person .job__imgLists li.job__imgItem11 {
    width: 24.7437774524vw;
  }

  #page_person .job__imgLists li.job__imgItem10 {
    width: 24.9633967789vw;
  }

  #page_person .job__imgLists li.job__imgItem12 {
    width: 67.4231332357vw;
  }

  #page_person .member {
    padding: 5.0512445095vw 0 33.6vw;
  }

  #page_person .member::before {
    top: -14.934114202vw;
    height: 14.934114202vw;
  }

  #page_person .member__filter {
    margin-top: 3.8067349927vw;
    padding: 2.196193265vw 2.0497803807vw 2.196193265vw 4.6120058565vw;
  }

  #page_person .member__filter--tit {
    font-size: 1.317715959vw;
    padding-right: 5.3440702782vw;
  }

  #page_person .member__filter--list li {
    width: 9.4436310395vw;
    margin: .3660322108vw .5124450952vw;
  }

  #page_person .member__filter--list li label span {
    border-radius: 1.756954612vw;
    font-size: 1.0980966325vw;
    padding: .5856515373vw .7320644217vw;
  }

  #page_person .member__note {
    font-size: 1.0248901903vw;
    margin-top: 1.4641288433vw;
  }

  #page_person .member__intro {
    padding-top: 7.8330893119vw;
  }

  #page_person .member__intro--list {
    gap: 5.1244509517vw;
  }

  #page_person .member__intro--list li {
    width: 23.4260614934vw;
  }

  #page_person .member__intro--info .career {
    font-size: 1.0248901903vw;
    padding: .439238653vw 1.6105417277vw;
    border-radius: 1.756954612vw;
    margin-top: 1.317715959vw;
  }

  #page_person .member__intro--info .name {
    font-size: 1.756954612vw;
    margin-top: 1.0248901903vw;
  }

  #page_person .member__intro--info .club {
    font-size: 1.1713030747vw;
    margin-top: .7320644217vw;
  }

  #page_project .project__heading {
    margin-left: 1.4641288433vw;
  }

  #page_project .project__heading .tit {
    font-size: 1.756954612vw;
  }

  #page_project .project__heading .tit::after {
    right: -12.8111273792vw;
    width: 11.3469985359vw;
    height: .0732064422vw;
  }

  #page_project .main__tit .subtit {
    font-size: 1.5373352855vw;
    padding: .5856515373vw 1.9033674963vw;
  }

  #page_project .main__tit .tit {
    font-size: 44px;
    font-size: 3.2210834553vw;
    line-height: 5.5636896047vw;
    margin-top: 5.5636896047vw;
  }

  #page_project .main__box {
    margin-top: 6.0761346999vw;
  }

  #page_project .main__box .txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.4890190337vw;
  }

  #page_project .member {
    margin-top: 8.5651537335vw;
  }

  #page_project .member__inner {
    margin-left: 3.6603221083vw;
  }

  #page_project .member__slide {
    margin-left: 3.6603221083vw;
  }

  #page_project .member__items {
    width: 17.5695461201vw;
  }

  #page_project .member__items .en {
    font-size: 24px;
    font-size: 1.756954612vw;
    line-height: 2.196193265vw;
    margin-top: 1.6105417277vw;
  }

  #page_project .member__items .ja {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.0497803807vw;
    margin-top: 1.0248901903vw;
  }

  #page_project .member__txt {
    font-size: 12px;
    font-size: .878477306vw;
    line-height: 1.2445095168vw;
    margin: 1.756954612vw 0 0 3.6603221083vw;
  }

  #page_project .episode__items {
    margin-top: 25.6222547584vw;
  }

  #page_project .episode__items:nth-child(even) .episode__tit {
    margin-right: 4.39238653vw;
  }

  #page_project .episode__items:nth-child(even) .episode__content--box .obj .imgTop {
    left: 5.1244509517vw;
  }

  #page_project .episode__items:nth-child(even) .episode__content--box .obj .imgBottom {
    top: 25.0366032211vw;
    left: -9.7364568082vw;
  }

  #page_project .episode__inner {
    padding: 0 0 13.17715959vw;
    margin-top: -5.8565153734vw;
  }

  #page_project .episode__main {
    top: -18.3016105417vw;
  }

  #page_project .episode__img {
    height: 37.5549048316vw;
  }

  #page_project .episode__tit {
    margin-left: 4.39238653vw;
  }

  #page_project .episode__content--tit {
    font-size: 44px;
    font-size: 3.2210834553vw;
    line-height: 4.7584187408vw;
  }

  #page_project .episode__content--box {
    margin-top: 5.4172767204vw;
  }

  #page_project .episode__content--box .txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.4890190337vw;
  }

  #page_project .episode__content--box .obj .imgTop {
    right: -9.7364568082vw;
  }

  #page_project .episode__content--box .obj .imgTop.img1 {
    width: 33.8213762811vw;
  }

  #page_project .episode__content--box .obj .imgTop.img2 {
    width: 26.5739385066vw;
  }

  #page_project .episode__content--box .obj .imgTop.img3 {
    width: 23.9385065886vw;
    top: 5.1244509517vw;
  }

  #page_project .episode__content--box .obj .imgBottom {
    top: 30.8931185944vw;
    right: 5.1244509517vw;
  }

  #page_project .episode__content--box .obj .imgBottom.img1 {
    width: 23.9385065886vw;
  }

  #page_project .episode__content--box .obj .imgBottom.img2 {
    width: 26.5739385066vw;
  }

  #page_project .episode__content--box .obj .imgBottom.img3 {
    width: 33.2357247438vw;
    right: -9.7364568082vw;
    top: 35.2855051245vw;
  }

  #page_project .goal {
    padding: 7.3206442167vw 0 0;
  }

  #page_project .goal__tit {
    font-size: 44px;
    font-size: 3.2210834553vw;
    line-height: 4.7584187408vw;
  }

  #page_project .goal__txt {
    font-size: 16px;
    font-size: 1.1713030747vw;
    line-height: 2.4890190337vw;
    margin: 3.4407027818vw 0 6.0029282577vw;
  }

  #page_project .message {
    padding: 8.4187408492vw 8.345534407vw;
  }

  #page_project .message__box {
    margin-left: 4.39238653vw;
  }

  #page_project .message__box li {
    width: 35.7979502196vw;
  }

  #page_project .message__box li:nth-child(n+3) {
    margin-top: 5.1976573939vw;
  }

  #page_project .message__box li .txt {
    font-size: 14px;
    font-size: 1.0248901903vw;
    line-height: 2.196193265vw;
    margin-top: 2.4890190337vw;
    padding: 2.5622254758vw 0;
    min-height: 13.17715959vw;
  }
}

@media (max-width: 899.98px) {
  .u-hidden-down-md {
    display: none !important;
    visibility: hidden;
  }

  .l-sec__innerL {
    max-width: 87.8477306003vw;
  }

  .l-nav {
    position: absolute;
    top: 81px;
    left: 0;
    width: 100vw;
    height: calc(100vh - 81px);
    background: #444e5d;
    display: none;
    color: #fff;
  }

  .l-nav__inner {
    display: block;
    overflow-y: scroll;
    height: 100%;
  }

  .l-nav__inner ul {
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto;
    padding-top: 13.3333333333vw;
  }

  .l-nav__inner ul li {
    width: 48%;
    text-align: left;
  }

  .l-nav__inner ul li:nth-child(n+2) {
    margin-left: 0;
  }

  .l-nav__inner ul li:nth-child(n+3) {
    margin-top: 10.4vw;
  }

  .l-nav__inner ul li a span.en {
    letter-spacing: .12em;
    font-size: 5.3333333333vw;
  }

  .l-nav__inner ul li a span.ja {
    font-size: 3.2vw;
  }

  .l-lang {
    flex-direction: row;
    margin-left: 0;
  }

  .l-lang span,
  .l-lang a {
    font-size: 2.9333333333vw;
    margin: 0 2.1333333333vw;
  }

  .l-lang span:nth-child(n+2),
  .l-lang a:nth-child(n+2) {
    margin-top: 0;
  }

  .l-entry {
    display: none;
  }

  .l-entryNav {
    position: static;
    -webkit-transform: none;
    transform: none;
    width: 90%;
    height: auto;
    padding: 8.5333333333vw 0 12.5333333333vw;
    margin: 0 auto;
  }

  .l-entryNav__tit {
    display: block;
    font-size: 20px;
    font-size: 5.3333333333vw;
    line-height: 5.3333333333vw;
    font-family: "Montserrat",sans-serif;
    letter-spacing: .12em;
    text-align: center;
    padding: 5.3333333333vw 0;
    border-top: 1px solid rgba(255,255,255,.2);
    border-bottom: 1px solid rgba(255,255,255,.2);
  }

  .l-entryNav__inner {
    margin-top: 5.8666666667vw;
  }

  .l-entryNav__items {
    text-align: left;
  }

  .l-entryNav__items:nth-child(n+2) {
    margin-top: 5.8666666667vw;
  }

  .l-entryNav__items .tit {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 5.3333333333vw;
    padding-bottom: 0;
  }

  .l-entryNav__items .tit::after {
    display: none;
  }

  .l-entryNav__items .obj {
    margin-top: 3.2vw;
  }

  .l-entryNav__items .obj.center {
    justify-content: space-between;
  }

  .l-entryNav__items .btn {
    width: 41.3333333333vw;
    height: 12.8vw;
    border-radius: 7.7333333333vw;
  }

  .l-entryNav__items .btn img {
    width: 26.6666666667vw;
  }

  .l-entryNav__items .btn .txt {
    font-size: 16px;
    font-size: 4.2666666667vw;
    line-height: 6.4vw;
  }

  .l-menu__wrap {
    display: flex;
  }

  .l-menu {
    display: block;
  }

  .l-footer__name {
    font-size: .878477306vw;
    margin-top: 1.6105417277vw;
  }
}

@media (max-width: 766.98px) {
  .u-hidden-sm {
    display: none !important;
    visibility: hidden;
  }

  .u-hidden-down-sm {
    display: none !important;
    visibility: hidden;
  }

  body {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 6.9333333333vw;
  }

  .l-sec {
    padding: 72vw 0 18.6666666667vw;
    margin-top: -64vw;
  }

  .l-sec__innerS {
    width: 90%;
  }

  .l-bg {
    display: none;
  }

  .l-header__logo {
    margin-left: 3.7333333333vw;
    width: 21.8666666667vw;
  }

  .l-nav {
    top: 16.2666666667vw;
    height: calc(var(--vh, 1vh)*100 - 16.2666666667vw);
  }

  .l-lang {
    height: 16vw;
  }

  .l-menu {
    width: 25.0666666667vw;
    height: 16vw;
  }

  .l-menu span {
    font-size: 3.7333333333vw;
    left: calc(50% + 1.6vw);
  }

  .l-menu span::after {
    left: -4.2666666667vw;
    width: 1.6vw;
    height: 1.6vw;
  }

  .l-footer {
    padding: 20.2666666667vw 5% 15.7333333333vw;
  }

  .l-footer__box {
    flex-direction: column;
  }

  .l-footer__box:nth-child(2) {
    padding-top: 11.4666666667vw;
    margin-top: 15.4666666667vw;
    border-top: .2666666667vw solid rgba(199,199,199,.5);
  }

  .l-footer__logo {
    width: 47.4666666667vw;
  }

  .l-footer__name {
    font-size: 2.6666666667vw;
    margin-top: 5.8666666667vw;
  }

  .l-footer__pageTop {
    margin-top: 67px;
  }

  .l-footer__pageTop a {
    display: flex;
    flex-direction: column-reverse;
  }

  .l-footer__pageTop a .txt {
    font-size: 3.2vw;
    margin-right: 0;
    margin-top: 3.7333333333vw;
  }

  .l-footer__pageTop a .icon {
    width: 18.1333333333vw;
    height: 18.1333333333vw;
    border: .2666666667vw solid #cc2a2f;
  }

  .l-footer__pageTop a .icon span {
    width: 5.0666666667vw;
    height: 4.2666666667vw;
  }

  .l-footer__link {
    font-size: 3.2vw;
  }

  .l-footer__copyright {
    font-size: 3.2vw;
    margin-top: 7.4666666667vw;
  }

  [data-aos=blur-out] {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }

  .c-buttonStyle1 {
    width: 49.3333333333vw;
    height: 14.6666666667vw;
    border-radius: 10.4vw;
  }

  .c-buttonStyle1 .txt {
    font-size: 3.7333333333vw;
    padding-left: 9.8666666667vw;
  }

  .c-buttonStyle1 .obj {
    width: 3.2vw;
    height: 3.2vw;
    right: 6.1333333333vw;
  }

  .c-buttonStyle2 {
    width: 14.9333333333vw;
    height: 14.9333333333vw;
  }

  .c-buttonStyle2 span {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin-right: 1.3333333333vw;
  }

  input,
  select,
  textarea {
    font-size: 4.2666666667vw;
    height: 13.3333333333vw;
    padding: 1.0666666667vw 4.2666666667vw;
  }

  input[type=checkbox]+.input_checkbox {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    border-radius: 1.0666666667vw;
    margin-right: 2.6666666667vw;
  }

  input[type=checkbox]:checked+.input_checkbox:after,
  input[type=checkbox]:checked+.input_checkbox:before {
    height: .8vw;
    border-radius: .5333333333vw;
  }

  input[type=radio]+.input_radio {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    margin-right: 1.3333333333vw;
  }

  input[type=radio]:checked+.input_radio::after {
    width: 3.2vw;
    height: 3.2vw;
  }

  textarea {
    height: 61.8666666667vw;
    padding: 4vw 4vw;
    border-radius: 1.0666666667vw;
  }

  .myError:not(input,select,textarea) {
    font-size: 3.4666666667vw;
    margin-top: 1.6vw;
  }

  .selectBox:before {
    top: calc(50% - 1.3333333333vw);
    right: 3.2vw;
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    border-left-width: .2666666667vw;
    border-bottom-width: .2666666667vw;
  }

  .c-headingStyle1 .en {
    font-size: 3.7333333333vw;
    margin-bottom: 1.6vw;
  }

  .c-headingStyle1 .ja {
    font-size: 30px;
    font-size: 8vw;
    line-height: 11.7333333333vw;
  }

  .c-headingStyle2 .en {
    font-size: 44px;
    font-size: 11.7333333333vw;
    line-height: 17.3333333333vw;
  }

  .c-headingStyle2 .ja {
    font-size: 4.2666666667vw;
    margin-top: 1.3333333333vw;
  }

  .c-mainv {
    padding-top: 16vw;
  }

  .c-mainv__tit {
    height: 69.3333333333vw;
  }

  .c-mainv__tit::after {
    width: 13.3333333333vw;
    height: 1.3333333333vw;
  }

  .c-mainv__tit .en {
    font-size: 11.7333333333vw;
  }

  .c-mainv__tit .ja {
    font-size: 4.2666666667vw;
    margin-top: 2.1333333333vw;
  }

  .c-mainv__img {
    height: 100%;
  }

  .c-pageNav {
    padding: 8.5333333333vw 0;
  }

  .c-pageNav ul {
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .c-pageNav ul li {
    width: 39.4666666667vw;
  }

  .c-pageNav ul li:nth-child(n+2) {
    margin-left: 0;
  }

  .c-pageNav ul li:nth-child(n+3) {
    margin-top: 4.2666666667vw;
  }

  .c-pageNav ul li a {
    font-size: 4.2666666667vw;
    border-bottom: VW(1) solid rgba(199,199,199,.5);
  }

  .c-pageNav ul li a::before {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
    border-bottom: .2666666667vw solid #cc2a2f;
    border-right: .2666666667vw solid #cc2a2f;
  }

  .c-btnNav {
    height: 64vw;
  }

  .c-btnNav a::after {
    opacity: 1;
    -webkit-backdrop-filter: blur(12px) brightness(0.7);
    backdrop-filter: blur(12px) brightness(0.7);
  }

  .c-btnNav a:hover .subtit::after {
    width: 23.2vw;
  }

  .c-btnNav__head .subtit {
    font-size: 3.7333333333vw;
    padding-right: 26.1333333333vw;
  }

  .c-btnNav__head .subtit::after {
    height: .2666666667vw;
    left: 14.6666666667vw;
    width: 23.2vw;
  }

  .c-btnNav__head .tit {
    font-size: 11.7333333333vw;
    margin-top: 5.3333333333vw;
  }

  .c-modal {
    width: 90%;
    border-radius: 6.4vw;
    margin: 9.0666666667vw auto 10.6666666667vw;
  }

  .c-modal__close {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    top: -4vw;
    right: -4vw;
  }

  .c-modal__closeInner {
    width: 5.8666666667vw;
  }

  .c-modal__inner {
    padding: 5.3333333333vw;
  }

  .c-modal__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 16/9;
  }

  .c-modal__info {
    position: relative;
  }

  .c-modal__info .carrer {
    padding: .8vw 5.3333333333vw;
    font-size: 3.2vw;
    border-radius: 6.4vw;
    display: inline-block;
    margin-top: 6.4vw;
  }

  .c-modal__info .club,
  .c-modal__info .name {
    display: block;
    font-size: 3.7333333333vw;
    background: none;
  }

  .c-modal__info .club {
    margin-top: 3.7333333333vw;
  }

  .c-modal__info .name {
    margin-top: 1.6vw;
  }

  .c-modal__interview {
    margin-top: 9.8666666667vw;
  }

  .c-modal__interview .en {
    font-size: 3.2vw;
  }

  .c-modal__interview .ja {
    margin-top: 2.4vw;
    padding-bottom: 0;
    font-size: 24px;
    font-size: 6.4vw;
    line-height: 9.8666666667vw;
  }

  .c-modal__interview .ja::before {
    display: none;
  }

  .c-modal__interview .ja::after {
    display: none;
  }

  .c-modal__qa {
    margin-top: 9.8666666667vw;
  }

  .c-modal__qa dl:nth-child(n+2) {
    margin-top: 9.8666666667vw;
  }

  .c-modal__qa dl dt {
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 7.2vw;
  }

  .c-modal__qa dl dd {
    margin-top: 5.0666666667vw;
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.2vw;
  }

  .c-modal__intro {
    margin-top: 9.8666666667vw;
    padding: 5.8666666667vw 2.9333333333vw 2.9333333333vw;
  }

  .c-modal__intro .tit {
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 7.2vw;
  }

  .c-modal__intro .txt {
    margin-top: 4vw;
    padding: 2.6666666667vw;
    font-size: 16px;
    font-size: 4.2666666667vw;
    line-height: 6.4vw;
  }

  .c-subModal {
    width: 90%;
    border-radius: 6.4vw;
    padding: 8vw 5.3333333333vw;
    margin: 9.0666666667vw auto 10.6666666667vw;
  }

  .c-subModal__close {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    top: -4vw;
    right: -4vw;
  }

  .c-subModal__closeInner {
    width: 5.8666666667vw;
  }

  .c-subModal__content .tit {
    font-size: 5.6vw;
  }

  .c-subModal__content .inner {
    flex-direction: column;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    row-gap: 3.2vw;
    margin-top: 4vw;
  }

  .c-subModal__content .txt {
    font-size: 3.2vw;
    margin-top: 4vw;
  }

  .c-table dl {
    display: block;
  }

  .c-table dl:nth-child(1)::before {
    width: 44vw;
  }

  .c-table dl::after {
    width: 44vw;
  }

  .c-table dl dt {
    width: 100%;
    padding: 7.2vw 0 4.5333333333vw;
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 7.2vw;
    margin-right: 0;
  }

  .c-table dl dd {
    padding: 0 0 4.5333333333vw;
    width: 100%;
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 6.4vw;
  }

  .c-slider1 .swiper-button-next,
  .c-slider1 .swiper-button-prev {
    width: 12.8vw;
    height: 12.8vw;
  }

  .c-slider1 .swiper-button-next::after,
  .c-slider1 .swiper-button-prev::after {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }

  .c-slider1 .swiper-button-next {
    left: 18.6666666667vw;
  }

  .c-slider1 .swiper-button-next::after {
    margin-right: 1.0666666667vw;
  }

  .c-slider1 .swiper-button-prev::after {
    margin-left: 1.0666666667vw;
  }

  .js-scrollable {
    overflow: hidden !important;
    overflow-x: scroll !important;
  }

  .scroll-hint-icon {
    height: auto !important;
  }

  .scroll-hint-text {
    line-height: 1 !important;
    margin-top: 4vw !important;
  }

  #page_about .l-sec__bg3 {
    padding: 16.8vw 0 40vw;
  }

  #page_about .industry__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 9.3333333333vw;
  }

  #page_about .industry__img {
    margin-top: 12.8vw;
  }

  #page_about .industry__img span {
    display: block;
    width: 199.2vw;
  }

  #page_about .business {
    padding-top: 21.3333333333vw;
  }

  #page_about .business__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 7.2vw;
  }

  #page_about .business__slide {
    margin-top: 8.5333333333vw;
    width: 100%;
  }

  #page_about .business__slide .swiper {
    width: 100vw;
  }

  #page_about .business__slide .swiper-slide .txt {
    bottom: 8.5333333333vw;
    font-size: 5.3333333333vw;
    padding-left: 15.2vw;
  }

  #page_about .business__slide .swiper-slide .txt::after {
    width: 10.4vw;
    height: .2666666667vw;
  }

  #page_about .business__slide .swiper-slide .pointer {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }

  #page_about .business__slide .swiper-slide .pointer01 {
    top: 20%;
    left: 23%;
  }

  #page_about .business__slide .swiper-slide .pointer02 {
    top: 55%;
    left: 46.5%;
  }

  #page_about .business__slide .swiper-slide .pointer03 {
    top: 48%;
    left: 47%;
  }

  #page_about .business__slide .swiper-slide .pointer04 {
    top: 34%;
    left: 68%;
  }

  #page_about .business__slide .swiper-button-next,
  #page_about .business__slide .swiper-button-prev {
    bottom: -21.3333333333vw;
  }

  #page_about .keyword {
    padding: 16vw 0 24.2666666667vw;
  }

  #page_about .keyword__item {
    margin-top: 12vw;
  }

  #page_about .keyword__item li:nth-of-type(n + 2) {
    margin-top: 18.6666666667vw;
  }

  #page_about .keyword__main--head {
    bottom: -7.2vw;
  }

  #page_about .keyword__main--head .num {
    font-size: 20.5333333333vw;
  }

  #page_about .keyword__main--head .inner {
    width: 100%;
  }

  #page_about .keyword__main--head .tit {
    font-size: 6.4vw;
    padding: 2.6666666667vw;
  }

  #page_about .keyword__sub {
    margin-top: 10.9333333333vw;
    display: block;
  }

  #page_about .keyword__sub--txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    width: 100%;
  }

  #page_about .keyword__sub--img {
    width: 100%;
    margin-top: 6.9333333333vw;
  }

  #page_about .keyword__sub--img.positionChange {
    width: 100%;
    position: static;
  }

  #page_concept .vision {
    padding: 21.8666666667vw 0 20.8vw;
  }

  #page_concept .vision__inner {
    display: block;
  }

  #page_concept .vision__info {
    width: 100%;
  }

  #page_concept .vision__img {
    width: 100%;
    margin-top: 10.6666666667vw;
  }

  #page_concept .vision__tit--en {
    font-size: 12.8vw;
  }

  #page_concept .vision__tit--ja {
    font-size: 36px;
    font-size: 9.6vw;
    line-height: 14.9333333333vw;
    margin-top: 10.1333333333vw;
  }

  #page_concept .vision__subtit {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 6.1333333333vw;
    margin-top: 5.3333333333vw;
  }

  #page_concept .vision__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 11.7333333333vw;
  }

  #page_concept .message {
    padding: 17.3333333333vw 0 84.5333333333vw;
  }

  #page_concept .message::after {
    top: auto;
    bottom: 0;
    width: 130%;
    height: 100.5333333333vw;
    background: url(/assets/img/concept/concept_bg.png) no-repeat 15vw/100%;
  }

  #page_concept .message__tit {
    font-size: 34px;
    font-size: 9.0666666667vw;
    line-height: 13.6vw;
  }

  #page_concept .message__subtit {
    font-size: 3.2vw;
    margin-top: 4.5333333333vw;
  }

  #page_concept .message__txt1 {
    font-size: 16px;
    font-size: 4.2666666667vw;
    line-height: 12vw;
    margin-top: 17.0666666667vw;
  }

  #page_concept .message__txt2 {
    font-size: 24px;
    font-size: 6.4vw;
    line-height: 9.6vw;
    margin-top: 6.6666666667vw;
  }

  #page_concept .philosophy {
    padding-top: 15.4666666667vw;
  }

  #page_concept .philosophy .corporate_principles--txt {
    font-size: 17px;
    font-size: 4.5333333333vw;
    line-height: 9.0666666667vw;
    margin-top: 7.7333333333vw;
  }

  #page_concept .philosophy .corporate_message {
    margin-top: 17.6vw;
  }

  #page_concept .philosophy .corporate_message--txt {
    font-size: 17px;
    font-size: 4.5333333333vw;
    line-height: 9.0666666667vw;
    margin-top: 8.5333333333vw;
  }

  #page_concept .philosophy__img {
    margin-top: 8.5333333333vw;
    overflow: hidden;
    width: 120%;
    margin-left: -10%;
    height: 52vw;
  }

  #page_concept .philosophy__img img {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  #page_concept .philosophy__img .comment {
    font-size: 2.6666666667vw;
    right: 5%;
  }

  #page_contact.check .contact__row dd {
    font-size: 4.2666666667vw;
    min-height: 13.3333333333vw;
    padding: 3.2vw 4.2666666667vw;
  }

  #page_contact .contact {
    padding: 13.8666666667vw 0 17.0666666667vw;
  }

  #page_contact .contact__txt {
    font-size: 3.7333333333vw;
  }

  #page_contact .contact__box {
    padding: 13.3333333333vw 6.4vw;
    margin-top: 8.5333333333vw;
    border-radius: 2.6666666667vw;
  }

  #page_contact .contact__tit span {
    font-size: 5.3333333333vw;
    padding-bottom: 2.6666666667vw;
  }

  #page_contact .contact__tit span::after {
    width: 21.3333333333vw;
  }

  #page_contact .contact__item {
    margin-top: 8.5333333333vw;
  }

  #page_contact .contact__item dl:nth-child(n+2) {
    margin-top: 6.4vw;
  }

  #page_contact .contact__item dl dt {
    font-size: 3.7333333333vw;
  }

  #page_contact .contact__item dl dd {
    margin-top: 2.6666666667vw;
  }

  #page_contact .contact__item dl dd .size-changeS {
    width: 16vw;
  }

  #page_contact .contact__item dl dd .size-changeM {
    width: 21.3333333333vw;
  }

  #page_contact .contact__item dl dd .subtit {
    width: 100%;
  }

  #page_contact .contact__item dl dd .comment {
    font-size: 3.2vw;
  }

  #page_contact .contact__item dl dd .sex .txt,
  #page_contact .contact__item dl dd .education .txt {
    margin-right: 2.6666666667vw;
  }

  #page_contact .contact__item dl dd .birth .txt,
  #page_contact .contact__item dl dd .age .txt,
  #page_contact .contact__item dl dd .post .txt {
    margin: 0 1.8666666667vw;
  }

  #page_contact .contact__item dl dd .addr,
  #page_contact .contact__item dl dd .career {
    display: block;
  }

  #page_contact .contact__btm {
    margin-top: 12.8vw;
  }

  #page_contact .contact__btm form {
    flex-direction: column;
    gap: 6.6666666667vw 0;
  }

  #page_contact .contact__privacy--tit {
    font-size: 4.2666666667vw;
  }

  #page_contact .contact__privacyBox--txt {
    margin-top: 4.2666666667vw;
    font-size: 3.2vw;
  }

  #page_contact .contact__agreeBox {
    margin-top: 3.2vw;
  }

  #page_contact .contact__btn {
    width: 56.2666666667vw;
    margin: 10.6666666667vw auto 0;
  }

  #page_contact .contact__btn button,
  #page_contact .contact__btn a {
    width: 56.2666666667vw;
    height: 16.5333333333vw;
    border-radius: 10.4vw;
  }

  #page_contact .contact__btn button span,
  #page_contact .contact__btn a span {
    font-size: 4.2666666667vw;
  }

  #page_contact .contact__top--btn {
    margin-top: 9.6vw;
  }

  #page_culture .education {
    padding: 13.3333333333vw 0 15.4666666667vw;
  }

  #page_culture .education__txt {
    font-size: 3.7333333333vw;
    margin-top: 7.2vw;
    line-height: 2;
  }

  #page_culture .education__img {
    margin-top: 8.2666666667vw;
  }

  #page_culture .education__img span {
    display: block;
    width: 199.2vw;
  }

  #page_culture .career.l-sec {
    padding: 18.1333333333vw 0 15.4666666667vw;
  }

  #page_culture .career__txt {
    font-size: 3.7333333333vw;
    margin-top: 7.2vw;
    line-height: 2;
  }

  #page_culture .career__img {
    margin-top: 8.5333333333vw;
  }

  #page_culture .career__img span {
    display: block;
    width: 197.6vw;
  }

  #page_culture .career__comment {
    font-size: 2.6666666667vw;
    margin-top: 6.4vw;
  }

  #page_culture .welfare {
    padding-top: 17.0666666667vw;
  }

  #page_culture .welfare__slide {
    margin-top: 10.9333333333vw;
  }

  #page_culture .welfare__slide .tit {
    font-size: 5.3333333333vw;
    margin-top: 5.8666666667vw;
  }

  #page_culture .welfare__slide .txt {
    font-size: 3.7333333333vw;
    margin-top: 4.2666666667vw;
    line-height: 1.8571428571;
  }

  #page_culture .welfare__slide .swiper-button-next,
  #page_culture .welfare__slide .swiper-button-prev {
    bottom: -26.6666666667vw;
  }

  #page_culture .work_life {
    padding-top: 42.6666666667vw;
  }

  #page_culture .work_life__slide {
    width: 100vw;
  }

  #page_culture .work_life__box {
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    margin-top: 10.6666666667vw;
  }

  #page_culture .work_life__box .swiper-slide {
    border-radius: 2.6666666667vw;
  }

  #page_culture .work_life__box--inner {
    height: 58.6666666667vw;
  }

  #page_culture .work_life__box--inner .content {
    height: 45.0666666667vw;
  }

  #page_culture .work_life__box--tit {
    font-size: 4.8vw;
    padding: 3.2vw;
  }

  #page_culture .work_life__box--img {
    width: 13.3333333333vw;
  }

  #page_culture .work_life__box--txt {
    font-size: 5.3333333333vw;
    margin-top: 6.6666666667vw;
  }

  #page_culture .work_life__box--txt .point {
    font-size: 3.2vw;
  }

  #page_culture .work_life__box--txt .point01 {
    top: 5.8666666667vw;
    right: 3.2vw;
  }

  #page_culture .work_life__box--txt .point03 {
    top: -2.6666666667vw;
  }

  #page_culture .work_life__box--txt .num {
    font-size: 17.6vw;
    padding: 0 1.3333333333vw;
    bottom: -1.0666666667vw;
  }

  #page_culture .work_life__box--txt .num span {
    font-size: 9.3333333333vw;
  }

  #page_culture .work_life__box--txt .block {
    margin-top: 1.3333333333vw;
  }

  #page_culture .work_life__box--comment {
    font-size: 2.6666666667vw;
    margin-top: 4vw;
  }

  #page_culture .work_life .swiper-button-next,
  #page_culture .work_life .swiper-button-prev {
    bottom: -20vw;
    display: inline-flex;
  }

  #page_culture .workplace.l-sec {
    margin-top: -40vw;
  }

  #page_culture .workplace__txt {
    font-size: 3.7333333333vw;
    margin-top: 8.2666666667vw;
    line-height: 2;
  }

  #page_culture .workplace__slide {
    margin-top: 13.8666666667vw;
  }

  #page_culture .workplace__slide .swiper-slide .txt {
    font-size: 3.2vw;
    padding-top: 2.6666666667vw;
    line-height: 1.8333333333;
  }

  #page_culture .workplace__slide .swiper-button-next,
  #page_culture .workplace__slide .swiper-button-prev {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
  }

  #page_culture .workplace__slide .swiper-button-next::after,
  #page_culture .workplace__slide .swiper-button-prev::after {
    width: 2.9333333333vw;
    height: 4.2666666667vw;
  }

  #page_culture .workplace__slide .swiper-button-next {
    right: 0;
  }

  #page_culture .workplace__slide .swiper-button-prev {
    left: 0;
  }

  #page_culture .workplace__slide .swiper-pagination {
    bottom: -9.3333333333vw;
  }

  #page_culture .workplace__slide .swiper-pagination .swiper-pagination-bullet {
    width: 2.9333333333vw;
    height: 2.9333333333vw;
    margin: 0 1.8666666667vw;
  }

  [lang=en] #index .hero__head {
    bottom: 16vw;
  }

  [lang=en] #index .hero__tit .hero__txt {
    font-size: 5.3333333333vw;
    line-height: 1.5;
  }

  [lang=en] #page_about .keyword__sub--img.positionChange {
    width: 112%;
    right: 6%;
    position: relative;
  }

  [lang=en] #page_project .message__box .txt {
    min-height: 48vw;
  }

  [lang=en] #page_person .job__imgBg {
    height: 134.9333333333vw;
  }

  [lang=en] #page_culture .work_life__box--tit {
    height: 24vw;
  }

  [lang=en] #page_culture .work_life__box--txt .point01 {
    right: 18.1333333333vw;
  }

  #page_future .next {
    padding: 22.6666666667vw 0 12vw;
  }

  #page_future .next__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 7.2vw;
  }

  #page_future .next__img {
    margin-top: 7.2vw;
  }

  #page_future .next__img span {
    width: 855px;
    display: block;
  }

  #page_future .next__list {
    margin-top: 16.5333333333vw;
  }

  #page_future .next__list li:nth-child(n+2) {
    margin-top: 5.8666666667vw;
  }

  #page_future .next__list li .top {
    border-radius: 5.3333333333vw 5.3333333333vw 0 0;
  }

  #page_future .next__list li .top .tit {
    bottom: -1.8666666667vw;
    left: 5.0666666667vw;
  }

  #page_future .next__list li .top .tit .ja {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }

  #page_future .next__list li .top .tit .en {
    font-size: 40px;
    font-size: 10.6666666667vw;
    line-height: 10.6666666667vw;
  }

  #page_future .next__list li .bottom {
    padding: 6.6666666667vw 6.6666666667vw 8vw;
    border-radius: 0 0 5.3333333333vw 5.3333333333vw;
    display: block;
  }

  #page_future .next__list li .bottom .info {
    width: 100%;
  }

  #page_future .next__list li .bottom .info .head .tit {
    font-size: 25px;
    font-size: 6.6666666667vw;
    line-height: 10.1333333333vw;
  }

  #page_future .next__list li .bottom .info .head .tit.subtit {
    font-size: 16px;
    font-size: 4.2666666667vw;
    line-height: 6.4vw;
    padding-left: 0;
    display: block;
  }

  #page_future .next__list li .bottom .info .txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 5.6vw;
  }

  #page_future .next__list li .bottom .mov {
    width: 100%;
    margin-top: 8vw;
  }

  #page_future .next__bnr {
    width: 100%;
    margin: 10.6666666667vw auto 0;
  }

  #page_future .carbon {
    padding: 16.5333333333vw 0 0;
  }

  #page_future .carbon__inner {
    display: block;
  }

  #page_future .carbon__info {
    width: 100%;
  }

  #page_future .carbon__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 7.2vw;
  }

  #page_future .carbon__img {
    position: static;
    width: 113.0666666667vw;
    margin-top: 8vw;
  }

  #page_future .sdgs {
    padding: 21.6vw 0 9.3333333333vw;
    margin-top: -12vw;
  }

  #page_future .sdgs__inner {
    display: block;
  }

  #page_future .sdgs__info {
    width: 100%;
  }

  #page_future .sdgs__img {
    width: 100%;
    margin-top: 8vw;
  }

  #page_future .sdgs__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 8vw;
  }

  #page_future .sdgs__list {
    margin-top: 10.6666666667vw;
  }

  #page_future .sdgs__list li:nth-child(n+2) {
    margin-top: 5.6vw;
  }

  #page_future .sdgs__list li .tit {
    padding: 3.4666666667vw 0;
  }

  #page_future .sdgs__list li .tit .ja {
    font-size: 24px;
    font-size: 6.4vw;
    line-height: 9.6vw;
  }

  #page_future .sdgs__list li .tit .en {
    font-size: 2.6666666667vw;
  }

  #page_future .sdgs__list .box {
    padding: 6.1333333333vw 4.8vw 13.3333333333vw;
    display: block;
  }

  #page_future .sdgs__list .box .img {
    width: 100%;
  }

  #page_future .sdgs__list .box .img.sizeChange {
    width: 22.1333333333vw;
  }

  #page_future .sdgs__list .box .txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    width: 100%;
    margin-top: 8vw;
  }

  #index .splash__logo {
    width: 32vw;
  }

  #index .hero {
    align-items: center;
    justify-content: center;
    padding-top: 16vw;
  }

  #index .hero__bg #hero__mov--pc {
    display: none;
  }

  #index .hero__bg #hero__mov--sp {
    display: block;
  }

  #index .hero__scroll {
    right: 9.8666666667vw;
    bottom: 18.4vw;
  }

  #index .hero__scroll .line {
    height: 58.6666666667vw;
  }

  #index .hero__scroll .line::before {
    background-position: 0 -58.6666666667vw;
    -webkit-animation: scrollBarAnimeSp 1.8s cubic-bezier(0.76, 0, 0.3, 1) forwards infinite;
    animation: scrollBarAnimeSp 1.8s cubic-bezier(0.76, 0, 0.3, 1) forwards infinite;
  }

  #index .hero__head {
    bottom: 35.2vw;
  }

  #index .hero__tit {
    width: 74.6666666667vw;
  }

  #index .hero__txt {
    font-size: 2.6666666667vw;
    line-height: 1.8;
    margin-top: 7.4666666667vw;
  }

  #index .concept {
    padding: 81.3333333333vw 0 21.3333333333vw;
    background: none;
  }

  #index .concept__subtit {
    font-size: 4.2666666667vw;
  }

  #index .concept__tit {
    font-size: 32px;
    font-size: 8.5333333333vw;
    line-height: 12.5333333333vw;
    margin-top: 8vw;
  }

  #index .concept__txt {
    font-size: 16px;
    font-size: 4.2666666667vw;
    line-height: 8.5333333333vw;
    margin-top: 8vw;
  }

  #index .concept__btn {
    margin-top: 8vw;
  }

  #index .news__btn {
    right: 5.3333333333vw;
  }

  #index .news__btn>button {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }

  #index .news__btn.is-open {
    bottom: 2.6666666667vw;
  }

  #index .news__inner.is-open .news__list {
    padding: 3.4666666667vw 16vw 3.4666666667vw 4.2666666667vw;
  }

  #index .news__tit {
    font-size: 3.7333333333vw;
    padding: 0 4.5333333333vw;
  }

  #index .news__list {
    padding: 3.4666666667vw 16vw 3.4666666667vw 4.2666666667vw;
  }

  #index .news__list dl {
    flex-direction: column;
  }

  #index .news__list dl:nth-child(n+2) {
    margin-top: 6.4vw;
  }

  #index .news__list dt {
    font-size: 3.2vw;
    width: 100%;
  }

  #index .news__list dd {
    font-size: 3.2vw;
  }

  #index .about {
    padding: 0;
    margin-top: 0;
    padding: 12vw 0 117.3333333333vw;
    position: relative;
    width: 95%;
    margin-top: 17.0666666667vw;
  }

  #index .about__head {
    padding-left: 5%;
    padding-right: 9.0666666667vw;
  }

  #index .about__inner {
    position: relative;
  }

  #index .about__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 8vw;
    width: 100%;
  }

  #index .about__btn {
    margin-top: 8vw;
  }

  #index .about__img {
    position: absolute;
    width: 100%;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    bottom: -98.6666666667vw;
    left: 5%;
    height: 100%;
  }

  #index .future__inner {
    padding: 20.5333333333vw 0 116.5333333333vw;
  }

  #index .future__img:nth-child(1) {
    width: 53.3333333333vw;
    top: auto;
    bottom: 15.2vw;
    left: -5%;
  }

  #index .future__img:nth-child(2) {
    width: 34.1333333333vw;
    bottom: 52.5333333333vw;
    right: -5%;
  }

  #index .future__txt {
    margin-top: 10.1333333333vw;
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 8vw;
  }

  #index .future__btn {
    margin-top: 10.6666666667vw;
  }

  #index .person {
    padding-top: 14.1333333333vw;
  }

  #index .person__inner {
    display: block;
  }

  #index .person__btn {
    margin-top: 14.9333333333vw;
  }

  #index .person__scrollImg {
    margin-top: 18.9333333333vw;
  }

  #index .person__scrollImg--inner {
    width: 250%;
  }

  #index .person__scrollImg--inner span:nth-child(n+2) {
    margin-left: 6.9333333333vw;
  }

  #index .project {
    padding: 27.2vw 0 50.4vw;
  }

  #index .project__inner {
    height: 108.5333333333vw;
    position: relative;
  }

  #index .project__tit {
    top: -8vw;
  }

  #index .project__tit .c-headingStyle2 .en {
    font-size: 52px;
    font-size: 13.8666666667vw;
    line-height: 12.2666666667vw;
  }

  #index .project__box {
    width: 95%;
    margin: 0;
    position: absolute;
    bottom: -30.6666666667vw;
    right: 0;
  }

  #index .project__box a {
    align-items: flex-end;
    padding: 8vw 7.2vw;
  }

  #index .project__box .subtit {
    font-size: 3.7333333333vw;
    padding-bottom: 5.6vw;
  }

  #index .project__box .subtit::after {
    width: 5.6vw;
    height: .2666666667vw;
  }

  #index .project__box .tit {
    font-size: 20px;
    font-size: 5.3333333333vw;
    line-height: 7.7333333333vw;
    margin-top: 7.4666666667vw;
  }

  #index .project__box .txt {
    font-size: 3.2vw;
    margin-top: 4.2666666667vw;
  }

  #index .flex__btnNav--list {
    display: block;
  }

  #index .flex__btnNav--list li {
    width: 100%;
    height: 69.3333333333vw;
  }

  #index .flex__btnNav--inner {
    align-items: center;
  }

  #index .flex__btnNav--btn {
    margin-top: 42.6666666667vw;
  }

  #page_info .c-pageNav ul li {
    width: 39.4666666667vw;
  }

  #page_info .c-mainv__tit::before {
    height: .2666666667vw;
  }

  #page_info .c-table {
    margin-top: 12.5333333333vw;
  }

  #page_info .info__box {
    padding: 14.9333333333vw 0 17.0666666667vw;
  }

  #page_info .info__btn {
    height: 16vw;
    font-size: 4.2666666667vw;
    border-radius: 8vw;
  }

  #page_info .info__btnwrap {
    border-radius: 4.5333333333vw;
    padding: 8vw 0 6.6666666667vw;
    margin-top: 14.4vw;
  }

  #page_info .info__btnwrap-tit {
    font-size: 8vw;
    margin-bottom: 6.6666666667vw;
  }

  #page_info .info__btnwrap-list {
    display: block;
    width: 80%;
    margin: 0 auto;
  }

  #page_info .info__btnwrap-list li {
    width: 100%;
    margin: 2.6666666667vw 0;
  }

  #page_person .c-mainv__tit::before {
    height: .2666666667vw;
  }

  #page_person .job {
    padding-top: 25.8666666667vw;
  }

  #page_person .job__img {
    margin-top: 9.8666666667vw;
  }

  #page_person .job__imgBg {
    width: 293.3333333333vw;
    height: 129.8666666667vw;
  }

  #page_person .job__imgBtns {
    top: 18.4vw;
    left: 44.5333333333vw;
  }

  #page_person .job__imgBtns--btm {
    margin-top: 9.3333333333vw;
  }

  #page_person .job__imgBtns--btm::before {
    top: -4vw;
    width: 244.5333333333vw;
    height: .2666666667vw;
  }

  #page_person .job__imgLists {
    gap: 3.2vw;
  }

  #page_person .job__imgLists:nth-child(n+2) {
    margin-top: 2.6666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem>a::after {
    top: -1.8666666667vw;
    right: -1.3333333333vw;
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem01,
  #page_person .job__imgLists li.job__imgItem02 {
    width: 90.6666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem03 {
    width: 35.2vw;
  }

  #page_person .job__imgLists li.job__imgItem04 {
    width: 117.8666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem05,
  #page_person .job__imgLists li.job__imgItem06 {
    width: 58.6666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem07 {
    width: 123.4666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem08 {
    width: 221.8666666667vw;
  }

  #page_person .job__imgLists li.job__imgItem09,
  #page_person .job__imgLists li.job__imgItem11 {
    width: 90.1333333333vw;
  }

  #page_person .job__imgLists li.job__imgItem10 {
    width: 90.9333333333vw;
  }

  #page_person .job__imgLists li.job__imgItem12 {
    width: 245.6vw;
  }

  #page_person .member {
    padding: 13.3333333333vw 0 22.4vw;
  }

  #page_person .member::before {
    top: -28.5333333333vw;
    height: 28.5333333333vw;
  }

  #page_person .member__filter {
    margin-top: 6.6666666667vw;
    padding: 5.0666666667vw 4.5333333333vw 4.8vw 4.8vw;
    cursor: pointer;
  }

  #page_person .member__filter::before {
    content: "";
    position: absolute;
    top: 5.6vw;
    right: 6.9333333333vw;
    width: .2666666667vw;
    height: 5.3333333333vw;
    background: #cc2a2f;
    transition: .3s;
  }

  #page_person .member__filter::after {
    content: "";
    position: absolute;
    top: 8vw;
    right: 4.5333333333vw;
    width: 5.3333333333vw;
    height: .2666666667vw;
    background: #cc2a2f;
  }

  #page_person .member__filter--inner {
    display: block;
  }

  #page_person .member__filter--tit {
    font-size: 3.7333333333vw;
    padding-right: 0;
  }

  #page_person .member__filter--list {
    margin-top: 8.2666666667vw;
    display: none;
  }

  #page_person .member__filter--list li {
    width: 36.5333333333vw;
    margin: 1.8666666667vw 1.8666666667vw;
    margin-left: 0;
  }

  #page_person .member__filter--list li label span {
    border-radius: 6.4vw;
    font-size: 4vw;
    padding: 2.1333333333vw 2.6666666667vw;
  }

  #page_person .member__note {
    font-size: 3.2vw;
    margin-top: 4vw;
    line-height: 1.5;
  }

  #page_person .member__intro {
    padding-top: 13.3333333333vw;
  }

  #page_person .member__intro--list {
    gap: 8.5333333333vw;
  }

  #page_person .member__intro--list li {
    width: 38.6666666667vw;
  }

  #page_person .member__intro--info .career {
    font-size: 3.2vw;
    padding: 1.6vw 5.8666666667vw;
    border-radius: 6.4vw;
    margin-top: 4vw;
  }

  #page_person .member__intro--info .name {
    font-size: 5.3333333333vw;
    margin-top: 2.6666666667vw;
  }

  #page_person .member__intro--info .club {
    font-size: 3.2vw;
    margin-top: 1.6vw;
  }

  #page_project .project__heading {
    margin-left: 0;
  }

  #page_project .project__heading .tit {
    font-size: 5.3333333333vw;
    -webkit-transform: none;
    transform: none;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 5%;
    padding-right: 5%;
  }

  #page_project .project__heading .tit::after {
    width: 45.3333333333vw;
    height: .2666666667vw;
    position: static;
    -webkit-transform: none;
    transform: none;
  }

  #page_project .main__tit .subtit {
    font-size: 4.8vw;
    padding: 1.3333333333vw 4vw;
  }

  #page_project .main__tit .tit {
    font-size: 28px;
    font-size: 7.4666666667vw;
    line-height: 12vw;
    margin-top: 14.4vw;
  }

  #page_project .main__box {
    margin-top: 10.4vw;
    display: block;
  }

  #page_project .main__box .txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    width: 100%;
  }

  #page_project .main__box .mov {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    width: 100%;
    margin-top: 13.3333333333vw;
  }

  #page_project .member {
    margin-top: 22.9333333333vw;
  }

  #page_project .member__inner {
    margin-left: 0;
  }

  #page_project .member__slide {
    flex-wrap: wrap;
    margin-left: 0;
    margin-top: 6.1333333333vw;
  }

  #page_project .member__items {
    width: 48%;
  }

  #page_project .member__items:nth-child(n+3) {
    margin-top: 10.6666666667vw;
  }

  #page_project .member__items .en {
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 5.8666666667vw;
    margin-top: 4vw;
  }

  #page_project .member__items .ja {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 4.5333333333vw;
    margin-top: 2.6666666667vw;
  }

  #page_project .member__txt {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 4.5333333333vw;
    margin: 7.7333333333vw 0 0 0;
  }

  #page_project .episode__items {
    margin-top: 56.2666666667vw;
  }

  #page_project .episode__items:nth-child(even) .episode__tit {
    margin-right: 0;
  }

  #page_project .episode__items:nth-child(even) .episode__main {
    flex-direction: column-reverse;
  }

  #page_project .episode__items:nth-child(even) .episode__img {
    margin-left: auto;
  }

  #page_project .episode__items:nth-child(even) .episode__tit .project__heading .tit {
    flex-direction: row-reverse;
  }

  #page_project .episode__inner {
    padding: 0 0 16vw;
    margin-top: -21.3333333333vw;
  }

  #page_project .episode__main {
    top: -32vw;
    flex-direction: column-reverse;
  }

  #page_project .episode__img {
    width: 95%;
    margin-top: 6.6666666667vw;
    height: 100%;
  }

  #page_project .episode__tit {
    margin-left: 0;
  }

  #page_project .episode__content--tit {
    font-size: 25px;
    font-size: 6.6666666667vw;
    line-height: 11.2vw;
    width: 100%;
  }

  #page_project .episode__content--box {
    margin-top: 9.3333333333vw;
    display: block;
  }

  #page_project .episode__content--box .txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    width: 100%;
  }

  #page_project .episode__content--box .obj {
    width: 100%;
  }

  #page_project .episode__content--box .obj .imgTop {
    position: static;
  }

  #page_project .episode__content--box .obj .imgTop.img1 {
    width: 81.8666666667vw;
    margin: 16.2666666667vw 0 0 13.0666666667vw;
  }

  #page_project .episode__content--box .obj .imgTop.img2 {
    width: 81.8666666667vw;
    margin: 16.2666666667vw 0 0 13.0666666667vw;
  }

  #page_project .episode__content--box .obj .imgTop.img3 {
    width: 81.8666666667vw;
    margin: 16.2666666667vw 0 0 13.0666666667vw;
  }

  #page_project .episode__content--box .obj .imgBottom {
    position: static;
  }

  #page_project .episode__content--box .obj .imgBottom.img1 {
    width: 57.8666666667vw;
    margin-top: 10.6666666667vw;
  }

  #page_project .episode__content--box .obj .imgBottom.img2 {
    width: 57.8666666667vw;
    margin-top: 10.6666666667vw;
  }

  #page_project .episode__content--box .obj .imgBottom.img3 {
    width: 57.8666666667vw;
    margin-top: 10.6666666667vw;
  }

  #page_project .goal {
    padding: 17.8666666667vw 0 0;
  }

  #page_project .goal__tit {
    font-size: 28px;
    font-size: 7.4666666667vw;
    line-height: 11.7333333333vw;
  }

  #page_project .goal__txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin: 11.2vw 0;
  }

  #page_project .message {
    padding: 18.1333333333vw 0 18.6666666667vw;
  }

  #page_project .message__inner {
    display: block;
  }

  #page_project .message__box {
    margin-left: 0;
    margin-top: 8.5333333333vw;
    display: block;
  }

  #page_project .message__box li {
    width: 100%;
  }

  #page_project .message__box li:nth-child(n+3) {
    margin-top: 0;
  }

  #page_project .message__box li:nth-child(n+2) {
    margin-top: 7.4666666667vw;
  }

  #page_project .message__box li .txt {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 7.4666666667vw;
    margin-top: 4.2666666667vw;
    padding: 6.6666666667vw 0;
    min-height: 48vw;
  }
}

@media (min-width: 767px)and (max-width: 899.98px) {
  .u-hidden-md {
    display: none !important;
    visibility: hidden;
  }
}

@media (min-width: 900px)and (max-width: 1365.98px) {
  .u-hidden-lg {
    display: none !important;
    visibility: hidden;
  }
}

@media print {
  *,
  *::before,
  *::after {
    background: rgba(0,0,0,0) !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  img {
    max-width: 100% !important;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}
/*# sourceMappingURL=styles.css.map */