@charset "UTF-8";
#menu h1, header, header h1, #topMovieWrap {
  margin-left: auto;
  margin-right: auto;
}

/* =======================================

	reset

======================================= */
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,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  /*	outline: 0;*/
  box-sizing: border-box;
}

ol,
ul {
  list-style: none;
  box-sizing: border-box;
}

input,
select {
  vertical-align: middle;
  box-sizing: border-box;
}

/* =======================================

	HTML5表示設定

======================================= */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
  box-sizing: border-box;
}

audio,
canvas,
video {
  display: inline-block;
  /* *display: inline;
  *zoom: 1; */
}

audio:not([controls]) {
  display: none;
}

[hidden] {
  display: none;
}

/* 追加要素タグ */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* 文書内の該当テキストを目立たせるタグ */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

/* 削除された部分であることを示すタグ */
del {
  text-decoration: line-through;
}

/* 略語や頭字語であることを表すabbr,用語が使用されていることを示すdfnタグ */
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/* =======================================

	レスポンシブWEBデザイン　フルードイメージ

======================================= */
img {
  width: 100%;
  height: auto;
  display: block;
  border: none;
  background: transparent;
}

/* =======================================

	全体設定

======================================= */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 3rem;
  font-weight: bold;
}

p,
li,
dt,
dd,
th,
td {
  font-size: 1.6rem;
}

address {
  font-size: 1.6rem;
  font-style: normal;
}

hr {
  height: 1px;
  /* 高さ */
  border-top: 1px solid #bbb;
  border-right-width: 0px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
}

strong {
  font-weight: bold;
}

a,
a img,
a div {
  text-decoration: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: background 0.5s ease, color 0.5s ease, opacity 0.5s ease;
}

a:visited {
  text-decoration: none;
}

a:hover,
a img:hover,
a div:hover {
  text-decoration: none;
  opacity: 0.6;
}

a:active {
  text-decoration: none;
}

a:focus {
  outline: none;
}

a:hover,
a:active {
  outline: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

body > div#wrapper {
  height: auto;
}

/* =======================================

	全てのimg要素を可変に

======================================= */
/* =======================================

	インラインブロックで横並び時スペースを消す

======================================= */
ul,
ol {
  letter-spacing: -0.4em;
  /* 親要素の文字間を詰めて隙間を削除する */
}

li {
  letter-spacing: normal;
  /* 文字間を通常に戻す */
}

/* =======================================

	画像の下に文字を回り込ませない方法

======================================= */
.floatImageText {
  overflow: hidden;
}

/* =======================================

	"※”などの場合、行頭をそろえる

======================================= */
.textIndent {
  padding-left: 1em;
  text-indent: -1em;
}

/* =======================================

	Google tag manager用

======================================= */
body > img {
  width: 0;
  height: 0;
}

/* ==========================================

初期設定

========================================== */
html {
  /*ベースフォントサイズ 375px幅 = 10px font-size: 2.66667vw;*/
  /*ベースフォントサイズ 1366px幅 = 10px font-size: 0.7320vw;*/
  font-size: 62.5%;
  /*overflow-y: scroll;*/
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* height:100%; */
  -webkit-font-smoothing: antialiased;
  /*Safariのマウスオーバーでチラつき対処*/
}
@media screen and (max-width: 1150px) {
  html {
    font-size: 1.302vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.66667vw;
  }
}

body {
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: "Noto Sans JP", sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ ゴシック", "Osaka", sans-serif, Verdana, “Droid Sans”;
  color: #000;
  text-align: left;
  background-color: #fff;
  font-weight: 400;
  font-feature-settings: "palt";
}
@media screen and (max-width: 1150px) {
  body {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}
body.noScroll {
  overflow: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 2.5rem;
  line-height: 1.2;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: 2.1rem;
  }
}
@media screen and (max-width: 767px) {
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: 2.1rem;
  }
}

p,
li,
dt,
dd,
th,
td,
figcaption {
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  p,
  li,
  dt,
  dd,
  th,
  td,
  figcaption {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  p,
  li,
  dt,
  dd,
  th,
  td,
  figcaption {
    font-size: 1.4rem;
  }
}

address {
  font-size: 1.6rem;
  font-style: normal;
}
@media screen and (max-width: 1150px) {
  address {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  address {
    font-size: 1.4rem;
  }
}

a {
  color: #000;
}
a img:hover {
  opacity: 1;
}
a div:hover {
  opacity: 1;
}
a:hover {
  opacity: 0.6;
}

/* ==========================================

PC/Tablet/SPで表示・非表示

========================================== */
@media screen and (max-width: 1150px) {
  .pcOnly {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .pcTablet {
    display: none;
  }
}

.tabletOnly {
  display: none;
}
@media screen and (max-width: 1150px) {
  .tabletOnly {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .tabletOnly {
    display: none;
  }
}

.tabletSP {
  display: none;
}
@media screen and (max-width: 1150px) {
  .tabletSP {
    display: block;
  }
}

.spOnly {
  display: none;
}
@media screen and (max-width: 767px) {
  .spOnly {
    display: block;
  }
}

@media (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
#wrapper {
  overflow: hidden;
}

/* ==========================================

ハンバーガーメニュー

========================================== */
body.noScroll {
  overflow: hidden;
  position: relative;
}

#menu {
  position: fixed;
  z-index: -1;
  display: none;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  transition: all 0.5s;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: none;
  overflow-y: scroll;
  padding: 3.660322vw;
}
#menu.panelactive {
  display: block;
  z-index: 10000;
}
#menu #menuInner {
  text-align: center;
}
#menu h1 {
  width: 10.5417vw;
}
@media screen and (max-width: 767px) {
  #menu h1 {
    width: 40vw;
  }
}
#menu ul {
  padding: 3.660322vw 0 0;
  display: block;
}
#menu ul li a {
  display: block;
  color: #333;
  padding: 1vw 0;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  #menu ul li a {
    font-size: 1.6rem;
    height: 11.2vw;
    line-height: 11.2vw;
  }
}
#menu ul.insta_mail {
  display: flex;
  justify-content: center;
  align-items: center;
}
#menu ul.insta_mail li a {
  width: 3.90625vw;
  margin-right: 2.6041666vw;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  #menu ul.insta_mail li a {
    width: 8vw;
    margin-right: 5.333333vw;
  }
}
#menu ul.insta_mail li:last-child a {
  margin-right: 0;
}
#menu .officialLInk {
  padding: 3.660322vw 0 0;
  font-family: "Inter", serif;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
}

.menuBtn {
  position: fixed;
  z-index: 10001;
  top: 0.732vw;
  right: 0.732vw;
  cursor: pointer;
  width: 60px;
  height: 60px;
  background-color: rgba(255, 255, 255, 0.8);
  border: 1px solid #fff;
}
@media screen and (max-width: 1150px) {
  .menuBtn {
    top: 1.302vw;
    right: 1.302vw;
    width: 6.5104vw;
    height: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  .menuBtn {
    top: 2.6666vw;
    right: 2.6666vw;
    width: 11.2vw;
    height: 11.2vw;
  }
}
.menuBtn span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 1px;
  background-color: #000;
  width: 45%;
}
.menuBtn span:nth-of-type(1) {
  margin-top: -10px;
}
@media screen and (max-width: 1150px) {
  .menuBtn span:nth-of-type(1) {
    margin-top: -1.0416vw;
  }
}
@media screen and (max-width: 767px) {
  .menuBtn span:nth-of-type(1) {
    margin-top: -1.6vw;
  }
}
.menuBtn span:nth-of-type(3) {
  margin-top: 10px;
}
@media screen and (max-width: 1150px) {
  .menuBtn span:nth-of-type(3) {
    margin-top: 1.0416vw;
  }
}
@media screen and (max-width: 767px) {
  .menuBtn span:nth-of-type(3) {
    margin-top: 1.6vw;
  }
}
.menuBtn.active span {
  top: 50%;
  left: 50%;
  margin-top: 0;
  width: 45%;
  transform-origin: center center;
}
.menuBtn.active span:nth-of-type(1) {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.menuBtn.active span:nth-of-type(2) {
  opacity: 0;
}
.menuBtn.active span:nth-of-type(3) {
  transform: translate(-50%, -50%) rotate(45deg);
}

/* ==========================================

ページトップボタン

========================================== */
#page-top {
  display: none;
  position: fixed;
  right: 50px;
  bottom: 50px;
  z-index: 100;
}
@media screen and (max-width: 1150px) {
  #page-top {
    right: 2.6042vw;
    bottom: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #page-top {
    right: 5.3334;
    bottom: 5.3334;
  }
}
#page-top #move-page-top {
  width: 100px;
  height: 100px;
  background: #fff;
  border-radius: 50%;
  border: 1px solid #000;
  display: block;
  cursor: pointer;
  transition: opacity 0.5s ease, background-position 0s;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #page-top #move-page-top {
    width: 6.5105vw;
    height: 6.5105vw;
    border: 0.1302vw solid #000;
  }
}
@media screen and (max-width: 767px) {
  #page-top #move-page-top {
    width: 10.6667vw;
    height: 10.6667vw;
    border: 0.2666vw solid #000;
  }
}
#page-top #move-page-top:hover {
  opacity: 0.6;
}
@media screen and (max-width: 767px) {
  #page-top #move-page-top:hover {
    opacity: 1;
  }
}
#page-top #move-page-top::before {
  content: "";
  width: 32px;
  height: 32px;
  border: 0px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  border-top: solid 1px #000;
  border-left: solid 1px #000;
  margin-top: 10px;
}
@media screen and (max-width: 1150px) {
  #page-top #move-page-top::before {
    width: 1.9532vw;
    height: 1.9532vw;
    margin-top: 0.2605vw;
  }
}
@media screen and (max-width: 767px) {
  #page-top #move-page-top::before {
    width: 3.2vw;
    height: 3.2vw;
    margin-top: 0.5334vw;
  }
}

/* ==========================================

Header

========================================== */
header {
  text-align: center;
  width: 96.0468%;
  max-width: 1312px;
}
header h1 {
  max-width: 436px;
  width: 33.2317%;
  margin-top: 30px;
}
@media screen and (max-width: 1150px) {
  header h1 {
    margin-top: 2.604166vw;
  }
}
@media screen and (max-width: 767px) {
  header h1 {
    width: 69.8667vw;
    margin-top: 4vw;
  }
}
header h2 {
  font-family: "Inter", serif;
  font-size: 1.1rem;
  margin-top: 50px;
  font-weight: 400;
  letter-spacing: 0.2rem;
}
@media screen and (max-width: 1150px) {
  header h2 {
    margin-top: 3.90625vw;
  }
}
@media screen and (max-width: 767px) {
  header h2 {
    font-size: 1rem;
    margin-top: 8vw;
  }
}
header h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 1.4rem;
  margin-top: 30px;
  font-weight: 600;
  letter-spacing: 0.18rem;
}
@media screen and (max-width: 1150px) {
  header h3 {
    margin-top: 2.604166vw;
  }
}
@media screen and (max-width: 767px) {
  header h3 {
    margin-top: 4vw;
    font-size: 1rem;
  }
}

/* ==========================================

nav

========================================== */
#globalNavWrap {
  position: relative;
  width: 100%;
  margin: 80px auto 0;
}

#top #globalNavWrap {
  margin-top: 0;
}

#globalNav {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  background-color: #fff;
  width: 100%;
  padding: 20px 0;
  z-index: 10;
}
#globalNav h2 {
  max-width: 145px;
  width: 10.6149%;
}
#globalNav ul {
  display: flex;
}
#globalNav ul li {
  padding-left: 30px;
}
#globalNav ul li a {
  font-size: 1.5rem;
  color: #000;
  font-weight: 700;
  position: relative;
}
#globalNav ul li a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: "";
  width: 100%;
  height: 2px;
  background: #00a0e9;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform 0.3s;
}
#globalNav ul li a:hover {
  opacity: 1;
}
#globalNav ul li a:hover::after {
  transform: scale(1, 1);
}
#globalNav.fixed {
  position: fixed;
  top: 0;
}

#information #globalNav li:first-child a::after,
#message #globalNav li:nth-child(2) a::after,
#landscape #globalNav li:nth-child(3) a::after,
#jobDescription #globalNav li:nth-child(4) a::after,
#diversity #globalNav li:nth-child(5) a::after,
#interview #globalNav li:nth-child(6) a::after,
#faq #globalNav li:nth-child(7) a::after {
  transform: scale(1, 1);
}

/* ==========================================

footer

========================================== */
#footer {
  background-color: #f0f0f0;
  padding: 100px 0;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #footer {
    padding: 10.4166vw 0;
  }
}
@media screen and (max-width: 767px) {
  #footer {
    padding: 26.6667vw 0;
  }
}
#footer p {
  font-family: "Inter", serif;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
}
@media screen and (max-width: 1150px) {
  #footer p {
    font-size: 1rem;
  }
}
#footer h2 {
  width: 235px;
  margin: 20px auto 0;
}
@media screen and (max-width: 1150px) {
  #footer h2 {
    margin: 2.604166vw auto;
  }
}
@media screen and (max-width: 767px) {
  #footer h2 {
    width: 62.6667vw;
    margin: 6.6667vw auto;
  }
}
#footer ul {
  display: flex;
  justify-content: center;
  margin: 50px 0;
  align-items: center;
}
#footer ul li a {
  margin-right: 40px;
  color: #000;
  font-weight: 300;
  font-size: 1.4rem;
  display: block;
}
#footer ul li:last-child a {
  margin-right: 0;
}
#footer ul.insta_mail li a {
  width: 30px;
  margin-right: 30px;
}
#footer ul.insta_mail li:last-child a {
  margin-right: 0;
}
#footer .officialLInk {
  margin-bottom: 20px;
  font-size: 1.3rem;
}
#footer small {
  font-family: "Inter", serif;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
}

/*  ----------------------------------------------
ENTRY
 ----------------------------------------------*/
#entry a {
  font-family: "Inter", serif;
  color: #000;
  font-size: 3.3rem;
  font-weight: 300;
  height: 110px;
  line-height: 110px;
  border: 1px solid #000;
  max-width: 1000px;
  width: 96.0468%;
  display: block;
  margin: 150px auto;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #entry a {
    font-size: 2.6rem;
    height: 11.7187vw;
    line-height: 11.7187vw;
    margin: 10.4166vw auto;
  }
}
@media screen and (max-width: 767px) {
  #entry a {
    font-size: 2.2rem;
    height: 25.0667vw;
    line-height: 25.0667vw;
    margin: 13.3334vw auto;
  }
}

/* ==========================================

Top

========================================== */
/* ==========================================
共通設定
========================================== */
/*  ----------------------------------------------
Introduction／People and Work Style見出し
 ----------------------------------------------*/
#introduction h2,
#people h2 {
  display: inline-block;
  font-family: "Inter", serif;
  font-size: 4.8rem;
  font-weight: 300;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #introduction h2,
  #people h2 {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  #introduction h2,
  #people h2 {
    font-size: 3.7rem;
  }
}
#introduction .logo,
#people .logo {
  max-width: 213px;
  margin: 25px auto 15px;
}
@media screen and (max-width: 1150px) {
  #introduction .logo,
  #people .logo {
    max-width: initial;
    width: 23.4375vw;
    margin: 1.9531vw auto 1.302vw;
  }
}
@media screen and (max-width: 767px) {
  #introduction .logo,
  #people .logo {
    max-width: initial;
    width: 49.3334vw;
    margin: 2.6667vw auto 2.6667vw;
  }
}
#introduction h3,
#people h3 {
  font-family: "Inter", serif;
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #introduction h3,
  #people h3 {
    font-size: 1rem;
  }
}

/*  ----------------------------------------------
ムービーリンクのPLAYアイコン
 ----------------------------------------------*/
.movie::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 62px;
  height: 62px;
  background-image: url("/recruit/common_images/play_icon.svg");
  background-position: center;
  background-size: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/*  ----------------------------------------------
 吹き出し
 ----------------------------------------------*/
#stage01 h2 span.speechBubble,
.bottomContents h2 span.speechBubble {
  font-family: "Noto Sans JP", serif;
  position: absolute;
  display: inline-block;
  margin-left: 10px;
  padding: 10px 25px;
  border: 1px solid #000000;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  color: #000000;
}
@media screen and (max-width: 1150px) {
  #stage01 h2 span.speechBubble,
  .bottomContents h2 span.speechBubble {
    margin-left: 1.302vw;
    padding: 1.302vw 2.6041vw;
    border-radius: 1.0416vw;
    font-size: 1.2rem;
  }
}
#stage01 h2 span.speechBubble::before,
.bottomContents h2 span.speechBubble::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 5px 10px 5px 0;
  border-color: transparent #000000 transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #stage01 h2 span.speechBubble::before,
  .bottomContents h2 span.speechBubble::before {
    border-width: 0.651vw 1.302vw 0.651vw 0;
  }
}
#stage01 h2 span.speechBubble::after,
.bottomContents h2 span.speechBubble::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 3.9px 7.8px 3.9px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #stage01 h2 span.speechBubble::after,
  .bottomContents h2 span.speechBubble::after {
    border-width: 0.5078vw 1.0156vw 0.5078vw 0;
  }
}

#stage01 h2 span.speechBubble {
  left: 300px;
  top: 15px;
}
@media screen and (max-width: 1150px) {
  #stage01 h2 span.speechBubble {
    left: 23.4375vw;
    top: 0.65104vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 h2 span.speechBubble {
    left: 45.3334vw;
    top: 2.1334vw;
  }
}
#stage01 h2 span.speechBubble.second {
  left: 220px;
}
@media screen and (max-width: 1150px) {
  #stage01 h2 span.speechBubble.second {
    left: 18.2291vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 h2 span.speechBubble.second {
    left: 32vw;
  }
}

#introduction .bottomContents h2 span.speechBubble {
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents h2 span.speechBubble {
    position: static;
    border: none;
    background-color: transparent;
    margin: 1.3334vw 0 2.6667vw;
    padding: 0;
    display: block;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents h2 span.speechBubble::before {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents h2 span.speechBubble::after {
    display: none;
  }
}

#people .bottomContents .imageArea h2 {
  top: auto;
  left: auto;
  transform: translate(0, 0);
  bottom: 0;
  color: #000;
  -webkit-text-stroke: 3px #fff;
  paint-order: stroke;
}
#people .bottomContents .imageArea h2.second {
  right: 0;
}
@media screen and (max-width: 1150px) {
  #people .bottomContents .imageArea h2 {
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  #people .bottomContents .imageArea h2 {
    width: 100%;
  }
}
#people .bottomContents .imageArea h2 span.speechBubble {
  margin-bottom: 10px;
  top: -50px;
  left: 50%;
  transform: translateX(-50%);
  margin-left: 0;
  white-space: nowrap;
}
@media screen and (max-width: 1150px) {
  #people .bottomContents .imageArea h2 span.speechBubble {
    margin-bottom: 1.302vw;
    top: -5.2083vw;
  }
}
@media screen and (max-width: 767px) {
  #people .bottomContents .imageArea h2 span.speechBubble {
    transform: translateX(0);
    margin-bottom: 2.6667vw;
    position: static;
    border: none;
    background-color: transparent;
    margin: 1.3334vw 0 2.6667vw;
    padding: 0;
    display: block;
    text-align: center;
  }
}
#people .bottomContents .imageArea h2 span.speechBubble::before {
  bottom: 0;
  left: 50%;
  border-width: 10px 5px 0 5px;
  border-color: #000000 transparent transparent;
  translate: -50% 100%;
}
@media screen and (max-width: 1150px) {
  #people .bottomContents .imageArea h2 span.speechBubble::before {
    border-width: 1.302vw 0.651vw 0 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #people .bottomContents .imageArea h2 span.speechBubble::before {
    display: none;
  }
}
#people .bottomContents .imageArea h2 span.speechBubble::after {
  bottom: 0;
  left: 50%;
  border-width: 7.8px 3.9px 0 3.9px;
  border-color: #ffffff transparent transparent;
  translate: -50% 100%;
}
@media screen and (max-width: 1150px) {
  #people .bottomContents .imageArea h2 span.speechBubble::after {
    border-width: 1.1756vw 0.5078vw 0 0.5078vw;
  }
}
@media screen and (max-width: 767px) {
  #people .bottomContents .imageArea h2 span.speechBubble::after {
    display: none;
  }
}

/*  ----------------------------------------------
イメージ写真とイメージ写真に載せるテキスト
 ----------------------------------------------*/
#introduction .imageArea,
#people .imageArea {
  position: relative;
}
#introduction .imageArea h2,
#people .imageArea h2 {
  color: #fff;
  position: absolute;
}

#introduction .imageArea h2 {
  font-size: 3.1rem;
  font-family: "Open Sans", serif;
  left: 20px;
  top: 20px;
}
@media screen and (max-width: 1150px) {
  #introduction .imageArea h2 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  #introduction .imageArea h2 {
    position: static;
    color: #000;
    font-size: 2.1rem;
    font-weight: 400;
  }
}

#people .imageArea h2 {
  font-size: 4.8rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1150px) {
  #people .imageArea h2 {
    font-size: 3.8rem;
    margin-left: -6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #people .imageArea h2 {
    font-size: 2.1rem;
    position: static;
    color: #000;
    top: auto;
    left: auto;
    transform: translate(0, 0);
    margin-left: 0;
    text-align: center;
    font-weight: 400;
    width: 100%;
  }
}

/*  ----------------------------------------------
テキスト〜READ MORE
 ----------------------------------------------*/
#stage01 h3,
#introduction .bottomContents h3,
#people .bottomContents h3 {
  color: #000;
  font-size: 1.9rem;
  font-family: "Noto Sans JP", serif;
  font-weight: 700;
}
@media screen and (max-width: 1150px) {
  #stage01 h3,
  #introduction .bottomContents h3,
  #people .bottomContents h3 {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #stage01 h3,
  #introduction .bottomContents h3,
  #people .bottomContents h3 {
    font-size: 1.8rem;
  }
}
#stage01 p,
#introduction .bottomContents p,
#people .bottomContents p {
  font-size: 1.7rem;
  color: #000;
  margin-top: 10px;
}
@media screen and (max-width: 1150px) {
  #stage01 p,
  #introduction .bottomContents p,
  #people .bottomContents p {
    font-size: 1.3rem;
    margin-top: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 p,
  #introduction .bottomContents p,
  #people .bottomContents p {
    font-size: 1.4rem;
  }
}
#stage01 p.contentsNo,
#introduction .bottomContents p.contentsNo,
#people .bottomContents p.contentsNo {
  font-family: "Inter", serif;
  font-size: 1.1rem;
  margin: 20px 0 10px;
  letter-spacing: 0.2rem;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #stage01 p.contentsNo,
  #introduction .bottomContents p.contentsNo,
  #people .bottomContents p.contentsNo {
    font-size: 1rem;
    margin: 2.6041vw 0 1.302vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 p.contentsNo,
  #introduction .bottomContents p.contentsNo,
  #people .bottomContents p.contentsNo {
    margin: 2.6041vw 0 4vw;
  }
}
#stage01 p.contentsNo span,
#introduction .bottomContents p.contentsNo span,
#people .bottomContents p.contentsNo span {
  font-size: 1.7rem;
}
@media screen and (max-width: 1150px) {
  #stage01 p.contentsNo span,
  #introduction .bottomContents p.contentsNo span,
  #people .bottomContents p.contentsNo span {
    font-size: 1.4rem;
  }
}
#stage01 p.readMore,
#introduction .bottomContents p.readMore,
#people .bottomContents p.readMore {
  font-family: "Inter", serif;
  font-size: 1.1rem;
  font-weight: 700;
  position: absolute;
  left: 0;
  bottom: 0;
  border: 1px solid #000;
  width: 90px;
  height: 30px;
  line-height: 30px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #stage01 p.readMore,
  #introduction .bottomContents p.readMore,
  #people .bottomContents p.readMore {
    font-size: 1rem;
    width: 10.4166vw;
    height: 3.2552vw;
    line-height: 3.2552vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 p.readMore,
  #introduction .bottomContents p.readMore,
  #people .bottomContents p.readMore {
    position: static;
    font-size: 1.1rem;
    width: 100%;
    height: 11.2vw;
    line-height: 11.2vw;
    margin-top: 4vw;
  }
}

#stage01 p.contentsNo {
  margin-top: 32.11%;
}
@media screen and (max-width: 1150px) {
  #stage01 p.contentsNo {
    margin-top: 5.2083vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 p.contentsNo {
    margin-top: 2.6667vw;
  }
}

@media screen and (max-width: 767px) {
  #introduction .bottomContents h3 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents p {
    font-size: 1.2rem;
  }
}
#introduction .bottomContents p.readMore {
  left: auto;
  right: 0;
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents p.readMore {
    background-color: #fff;
  }
}

@media screen and (max-width: 767px) {
  #people .bottomContents h3 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #people .bottomContents p {
    font-size: 1.2rem;
  }
}
#people .bottomContents p.readMore {
  position: static;
}

/*  ----------------------------------------------
Movie背景
 ----------------------------------------------*/
#topMovieWrap {
  max-width: 1312px;
  margin: 130px auto 30px;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #topMovieWrap {
    margin: 13.0208vw auto 0;
  }
}
@media screen and (max-width: 767px) {
  #topMovieWrap {
    margin: 20vw auto;
  }
}
#topMovieWrap p {
  font-family: "Noto Serif JP", serif;
  writing-mode: vertical-rl;
  font-size: 3.4rem;
  letter-spacing: 0.5rem;
  position: absolute;
  top: -76px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  font-weight: 600;
  white-space: nowrap;
  color: #fff;
}
#topMovieWrap p span {
  color: #000;
}
@media screen and (max-width: 1150px) {
  #topMovieWrap p {
    top: -7.421875vw;
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  #topMovieWrap p {
    font-size: 2.1rem;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    text-shadow: 1px 1px 10px #ffffff;
  }
}

#topMovie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  background-color: #000;
}

#video-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*  ----------------------------------------------
採用情報／社長メッセージ
 ----------------------------------------------*/
#stage01 {
  max-width: 1212px;
  width: 88.7262%;
  display: flex;
  justify-content: space-between;
  margin: 213px auto 0;
}
@media screen and (max-width: 1150px) {
  #stage01 {
    width: 96.0468%;
    margin-top: 10.4166vw;
  }
}
@media screen and (max-width: 767px) {
  #stage01 {
    display: block;
    margin-top: 0;
  }
}
#stage01 a {
  display: block;
  width: 47.9372%;
}
@media screen and (max-width: 767px) {
  #stage01 a {
    width: 100%;
  }
}
#stage01 a > div {
  color: #000;
  display: flex;
}
@media screen and (max-width: 767px) {
  #stage01 a > div {
    display: block;
    margin-top: 10.6667vw;
  }
}
#stage01 a > div > div:first-child {
  width: 36.833%;
  white-space: nowrap;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  #stage01 a > div > div:first-child {
    width: 100%;
  }
}
#stage01 a > div > div:last-child {
  width: 63.167%;
}
@media screen and (max-width: 767px) {
  #stage01 a > div > div:last-child {
    display: none;
  }
}
#stage01 a h2 {
  font-family: "Open Sans", serif;
  font-size: 5.3rem;
  font-weight: 400;
  color: #000;
  letter-spacing: -0.2rem;
}
@media screen and (max-width: 1150px) {
  #stage01 a h2 {
    font-size: 3rem;
    letter-spacing: 0rem;
  }
}
@media screen and (max-width: 767px) {
  #stage01 a h2 {
    font-size: 3rem;
    margin-bottom: 2.6667vw;
    letter-spacing: -0.1rem;
  }
}
#stage01 a h2 span {
  font-family: "Inter", serif;
  font-size: 2.8rem;
  display: block;
  font-weight: 200;
  letter-spacing: 0;
  text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, -1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
}
@media screen and (max-width: 1150px) {
  #stage01 a h2 span {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #stage01 a h2 span {
    font-size: 1.5rem;
  }
}

/*  ----------------------------------------------
Introduction
 ----------------------------------------------*/
#introduction {
  background-color: #f0f0f0;
  margin-top: 100px;
  padding: 100px 0;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #introduction {
    margin-top: 10.4166vw;
    padding: 10.4166vw 0;
  }
}
@media screen and (max-width: 767px) {
  #introduction {
    margin-top: 21.3334vw;
    padding: 13.3334vw 0;
  }
}
#introduction .movie {
  max-width: 1000px;
  margin: 75px auto 0;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #introduction .movie {
    width: 96.0468%;
    margin: 6.5104vw auto 0;
  }
}
@media screen and (max-width: 767px) {
  #introduction .movie {
    margin-top: 8vw;
  }
}
#introduction .movie h2 {
  position: absolute;
  background-color: #fff;
  border-radius: 6px;
  right: 15px;
  top: 15px;
  font-family: "Open Sans", serif;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 10px 20px;
  color: #000;
}
@media screen and (max-width: 1150px) {
  #introduction .movie h2 {
    border-radius: 0.7812vw;
    right: 1.9531vw;
    top: 1.9531vw;
    font-size: 1.2rem;
    padding: 1.302vw 2.6041vw;
  }
}
@media screen and (max-width: 767px) {
  #introduction .movie h2 {
    border-radius: 1.0667vw;
    right: 2.6667vw;
    top: 2.6667vw;
    font-size: 1rem;
    padding: 2.1334vw 3.2vw;
  }
}
#introduction .movie h2 span {
  font-weight: 400;
}
#introduction .bottomContents {
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
  margin: 50px auto 0;
  text-align: left;
}
@media screen and (max-width: 1150px) {
  #introduction .bottomContents {
    width: 96.0468%;
    margin: 5vw auto 0;
  }
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents {
    margin-top: 10.6667vw;
  }
}
#introduction .bottomContents a {
  width: 47.5%;
  position: relative;
}
@media screen and (max-width: 767px) {
  #introduction .bottomContents a {
    width: 48.61%;
  }
}

/*  ----------------------------------------------
People and Work Style
 ----------------------------------------------*/
#people {
  padding: 150px 0;
  text-align: center;
  border-bottom: 1px solid #000;
  width: 96.0468%;
  margin: 0 auto;
}
@media screen and (max-width: 1150px) {
  #people {
    padding: 10.4166vw 0;
  }
}
@media screen and (max-width: 767px) {
  #people {
    padding: 13.3334vw 0;
  }
}
#people .movie {
  max-width: 917px;
  margin: 50px auto 0;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #people .movie {
    width: 100%;
    margin: 6.5104vw auto 0;
  }
}
#people .movie h2 {
  font-family: "Noto Sans JP", serif;
  position: absolute;
  display: inline-block;
  margin-left: 10px;
  padding: 10px 25px;
  border: 1px solid #000000;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  color: #000000;
  font-family: "Noto Sans JP", serif;
  white-space: nowrap;
  top: 60px;
  right: 30px;
}
@media screen and (max-width: 1150px) {
  #people .movie h2 {
    margin-left: 1.302vw;
    padding: 1.302vw 2.6041vw;
    border-radius: 1.0416vw;
    font-size: 1.2rem;
  }
}
#people .movie h2::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 5px 10px 5px 0;
  border-color: transparent #000000 transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #people .movie h2::before {
    border-width: 0.651vw 1.302vw 0.651vw 0;
  }
}
#people .movie h2::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 3.9px 7.8px 3.9px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #people .movie h2::after {
    border-width: 0.5078vw 1.0156vw 0.5078vw 0;
  }
}
@media screen and (max-width: 1150px) {
  #people .movie h2 {
    top: 7.8125vw;
    right: 3.9062vw;
  }
}
@media screen and (max-width: 767px) {
  #people .movie h2 {
    top: auto;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
  }
}
#people .movie h2::before {
  display: none;
}
#people .movie h2::after {
  display: none;
}
#people .bottomContents {
  max-width: 1212px;
  display: flex;
  justify-content: space-between;
  margin: 60px auto 0;
  text-align: left;
}
@media screen and (max-width: 1150px) {
  #people .bottomContents {
    width: 100%;
    margin: 6.5104vw auto 0;
  }
}
#people .bottomContents .alignRight {
  text-align: right;
}
@media screen and (max-width: 767px) {
  #people .bottomContents .alignRight {
    text-align: left;
  }
}
#people .bottomContents .alignRight p.readMore {
  margin-left: auto;
}
#people .bottomContents a {
  width: 46.7%;
  position: relative;
}

/* ==========================================

2ND ページ共通設定

========================================== */
.contntsNo {
  font-family: "Inter", serif;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  .contntsNo {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .contntsNo {
    font-size: 0.9rem;
  }
}
.contntsNo span {
  font-size: 1.7rem;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1150px) {
  .contntsNo span {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  .contntsNo span {
    font-size: 1.6rem;
  }
}

/* ==========================================

採用情報

========================================== */
#information .contentsHead {
  background-color: #060132;
  margin: 216px auto 100px;
  max-width: 1306px;
}
@media screen and (max-width: 1150px) {
  #information .contentsHead {
    margin: 3.9063vw auto 10.4167vw;
  }
}
@media screen and (max-width: 767px) {
  #information .contentsHead {
    margin: 8vw auto 20vw;
  }
}
#information .wrap {
  max-width: 1206px;
  width: 96.0468%;
  margin: 0 auto;
  color: #fff;
  display: flex;
}
@media screen and (max-width: 767px) {
  #information .wrap {
    display: block;
    width: 100%;
    background: url(/recruit/information/img/main_image.jpg) center center/cover;
  }
}
#information .wrap > div {
  height: 450px;
}
@media screen and (max-width: 1150px) {
  #information .wrap > div {
    height: 39.0625vw;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap > div {
    height: 90.9333vw;
    background-color: rgba(6, 1, 50, 0.49);
    position: relative;
  }
}
#information .wrap > div:first-child {
  width: 32.7529%;
  padding: 50px 50px 0 0;
}
@media screen and (max-width: 1150px) {
  #information .wrap > div:first-child {
    width: 30.4688%;
    padding: 2.6042vw 2.6042vw 0 0;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap > div:first-child {
    width: 100%;
    padding: 4vw 0 0 3.2vw;
  }
}
#information .wrap > div:last-child {
  width: 64.2471%;
  background: url(/recruit/information/img/main_image.jpg) center center/cover;
}
@media screen and (max-width: 1150px) {
  #information .wrap > div:last-child {
    width: 69.5312%;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap > div:last-child {
    display: none;
  }
}
#information .wrap h2 {
  position: relative;
  font-family: "Open Sans", serif;
  font-size: 5.8rem;
  font-weight: 400;
  letter-spacing: -0.1rem;
}
@media screen and (max-width: 1150px) {
  #information .wrap h2 {
    font-size: 3.9rem;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap h2 {
    font-size: 4rem;
  }
}
#information .wrap h2 span {
  font-size: 2.9rem;
  font-weight: 200;
  display: block;
}
@media screen and (max-width: 1150px) {
  #information .wrap h2 span {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap h2 span {
    font-size: 2rem;
  }
}
#information .wrap h2 span.speechBubble {
  font-family: "Noto Sans JP", serif;
  position: absolute;
  display: inline-block;
  margin-left: 10px;
  padding: 10px 25px;
  border: 1px solid #000000;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  color: #000000;
  top: 70px;
  left: 150px;
}
@media screen and (max-width: 1150px) {
  #information .wrap h2 span.speechBubble {
    margin-left: 1.302vw;
    padding: 1.302vw 2.6041vw;
    border-radius: 1.0416vw;
    font-size: 1.2rem;
  }
}
#information .wrap h2 span.speechBubble::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 5px 10px 5px 0;
  border-color: transparent #000000 transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #information .wrap h2 span.speechBubble::before {
    border-width: 0.651vw 1.302vw 0.651vw 0;
  }
}
#information .wrap h2 span.speechBubble::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 3.9px 7.8px 3.9px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #information .wrap h2 span.speechBubble::after {
    border-width: 0.5078vw 1.0156vw 0.5078vw 0;
  }
}
@media screen and (max-width: 1150px) {
  #information .wrap h2 span.speechBubble {
    white-space: nowrap;
    top: 6.25vw;
    left: 12.3698vw;
    padding: 0.651vw 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap h2 span.speechBubble {
    top: -5.8677vw;
    left: 28vw;
    border: none;
    padding: 0;
    background-color: transparent;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
    padding-left: 2.6667vw;
  }
  #information .wrap h2 span.speechBubble::before {
    content: "";
    width: 1px;
    height: 90%;
    background-color: #fff;
    border-width: 0px;
  }
  #information .wrap h2 span.speechBubble::after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap .headTxt {
    position: absolute;
    left: 3.2vw;
    bottom: 3.2vw;
  }
}
#information .wrap h3 {
  margin-top: 75px;
  font-size: 1.9rem;
  font-weight: 700;
}
@media screen and (max-width: 1150px) {
  #information .wrap h3 {
    margin-top: 6.5104vw;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap h3 {
    font-size: 1.6rem;
  }
}
#information .wrap .text {
  margin-top: 20px;
  font-size: 1.7rem;
}
@media screen and (max-width: 1150px) {
  #information .wrap .text {
    margin-top: 1.3021vw;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #information .wrap .text {
    font-size: 1.4rem;
  }
}
#information .title {
  font-family: "Open Sans", serif;
  font-size: 3.5rem;
  letter-spacing: -0.1rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 1150px) {
  #information .title {
    font-size: 2.9rem;
    margin-bottom: 8.4636vw;
  }
}
@media screen and (max-width: 767px) {
  #information .title {
    font-size: 3rem;
    margin-bottom: 13.3333vw;
  }
}
#information .title span {
  font-family: "Noto Sans JP", serif;
  font-size: 1.8rem;
  letter-spacing: 0.1rem;
  font-weight: 500;
  display: block;
}
@media screen and (max-width: 1150px) {
  #information .title span {
    font-size: 1.5rem;
  }
}
#information .flow,
#information .aboutUs,
#information .program {
  margin-top: 200px;
}
@media screen and (max-width: 1150px) {
  #information .flow,
  #information .aboutUs,
  #information .program {
    margin-top: 10.4167vw;
  }
}
@media screen and (max-width: 767px) {
  #information .flow,
  #information .aboutUs,
  #information .program {
    margin-top: 26.6667vw;
  }
}
#information table {
  max-width: 900px;
  width: 96.0468%;
  margin-left: auto;
  margin-right: auto;
}
#information table tr {
  border-top: 1px solid #000;
}
#information table tr:last-child {
  border-bottom: 1px solid #000;
}
#information table th {
  width: 27.333%;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 50px;
}
@media screen and (max-width: 1150px) {
  #information table th {
    width: 30%;
    font-size: 1.4rem;
    padding: 5.2083vw;
  }
}
@media screen and (max-width: 767px) {
  #information table th {
    display: block;
    width: 100%;
    padding: 8vw 0 6vw;
    text-align: center;
  }
}
#information table td {
  width: 72.667%;
  font-size: 1.6rem;
  font-weight: 400;
  padding: 50px 0;
}
#information table td a {
  color: #1a0dab;
  text-decoration: underline;
}
#information table td a[href*="tel:"] {
  color: #000;
  text-decoration: none;
}
@media screen and (max-width: 1150px) {
  #information table td {
    width: 70%;
    font-size: 1.4rem;
    padding: 5.2083vw;
  }
}
@media screen and (max-width: 767px) {
  #information table td {
    display: block;
    width: 100%;
    padding: 0 4vw 8vw;
  }
}
#information table td dt,
#information table td dd,
#information table td li,
#information table td p {
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  #information table td dt,
  #information table td dd,
  #information table td li,
  #information table td p {
    font-size: 1.4rem;
  }
}
#information table td dl {
  display: flex;
  flex-wrap: wrap;
}
#information table td dl dt {
  width: 80px;
}
@media screen and (max-width: 1150px) {
  #information table td dl dt {
    width: 9.114583vw;
  }
}
@media screen and (max-width: 767px) {
  #information table td dl dt {
    width: 16vw;
  }
}
#information table td dl dd {
  width: calc(100% - 80px);
}
@media screen and (max-width: 1150px) {
  #information table td dl dd {
    width: calc(100% - 9.114583vw);
  }
}
@media screen and (max-width: 767px) {
  #information table td dl dd {
    width: calc(100% - 16vw);
  }
}
#information table td dl dd::before {
  content: "： ";
  margin-right: 5px;
}
@media screen and (max-width: 1150px) {
  #information table td dl dd::before {
    margin-right: 0.651041vw;
  }
}
@media screen and (max-width: 767px) {
  #information table td dl dd::before {
    margin-right: 1.333333vw;
  }
}
#information table td .btmSpace {
  margin-bottom: 25px;
}
@media screen and (max-width: 1150px) {
  #information table td .btmSpace {
    margin-bottom: 1.953125vw;
  }
}
@media screen and (max-width: 767px) {
  #information table td .btmSpace {
    margin-bottom: 2.666666vw;
  }
}
#information table td h4 {
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  #information table td h4 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #information table td h4 {
    font-size: 1.4rem;
  }
}
#information .flow {
  max-width: 767px;
  width: 96.0468%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1150px) {
  #information .flow {
    max-width: 87.2396vw;
  }
}
@media screen and (max-width: 1150px) {
  #information .flow {
    max-width: 93.6vw;
  }
}
#information .flow .step {
  display: flex;
  margin-top: 20px;
  align-items: center;
}
@media screen and (max-width: 1150px) {
  #information .flow .step {
    margin-top: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .step {
    margin-top: 8vw;
  }
}
#information .flow .step:nth-of-type(even) {
  margin-left: 320px;
}
@media screen and (max-width: 1150px) {
  #information .flow .step:nth-of-type(even) {
    margin-left: 33.2032vw;
  }
}
@media screen and (max-width: 1150px) {
  #information .flow .step:nth-of-type(even) {
    margin-left: 0;
  }
}
#information .flow .step > div:first-child {
  width: 175px;
  position: relative;
  margin-right: 30px;
}
@media screen and (max-width: 1150px) {
  #information .flow .step > div:first-child {
    width: 22.7865vw;
    margin-right: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .step > div:first-child {
    width: 22.6667vw;
    margin-right: 0;
    padding-right: 5.3333vw;
  }
}
#information .flow .step > div:first-child::after {
  content: "";
  width: 1px;
  height: 60%;
  background-color: #000;
  position: absolute;
  right: -10px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1150px) {
  #information .flow .step > div:first-child::after {
    right: -1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .step > div:first-child::after {
    right: -4vw;
  }
}
#information .flow .step > div:last-child {
  width: 300px;
}
@media screen and (max-width: 1150px) {
  #information .flow .step > div:last-child {
    width: 41.6667vw;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .step > div:last-child {
    width: 77.3333vw;
    padding-left: 8vw;
  }
}
#information .flow .step h4 {
  text-align: center;
  font-family: "Sacramento", serif;
  font-weight: 400;
  font-size: 3.5rem;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 1150px) {
  #information .flow .step h4 {
    font-size: 2.7rem;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .step h4 {
    font-size: 2.6rem;
  }
}
#information .flow .step h4 span {
  font-family: "WindSong", serif;
  font-weight: 400;
  font-size: 11.3rem;
  display: block;
  margin-top: -20px;
  color: #e5004f;
}
#information .flow .step h4 span::first-letter {
  color: #000;
}
@media screen and (max-width: 1150px) {
  #information .flow .step h4 span {
    font-size: 8.8rem;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .step h4 span {
    font-size: 6.3rem;
  }
}
#information .flow .step h4.last {
  color: #e5004f;
}
#information .flow .step h4.last span::first-letter {
  color: #e5004f;
}
#information .flow .english {
  font-family: "Open Sans", serif;
  font-weight: 700;
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  #information .flow .english {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .english {
    font-size: 1.2rem;
  }
}
#information .flow .headline {
  font-size: 2.1rem;
  font-weight: 700;
}
@media screen and (max-width: 1150px) {
  #information .flow .headline {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .headline {
    font-size: 1.6rem;
  }
}
#information .flow .text {
  font-size: 1.4rem;
}
@media screen and (max-width: 1150px) {
  #information .flow .text {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #information .flow .text {
    font-size: 1.4rem;
  }
}
#information .program {
  max-width: 1000px;
  width: 96.0468%;
  margin-left: auto;
  margin-right: auto;
}
#information .program .programWrap {
  display: flex;
  justify-content: space-between;
}
#information .program .programWrap > div {
  width: 49%;
}
@media screen and (max-width: 767px) {
  #information .program .programWrap > div {
    width: 48.5%;
  }
}
#information .program .programInner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #information .program .programInner {
    display: block;
  }
}
#information .program .programInner > div:first-child {
  width: 50.5263%;
}
@media screen and (max-width: 767px) {
  #information .program .programInner > div:first-child {
    width: 100%;
  }
}
#information .program .programInner > div:last-child {
  width: 47.3684%;
}
@media screen and (max-width: 767px) {
  #information .program .programInner > div:last-child {
    width: 100%;
  }
}
#information .program .programInner .proEngtxt {
  font-family: "Open Sans", serif;
  font-weight: 800;
  font-size: 2.1rem;
  letter-spacing: -0.1rem;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #information .program .programInner .proEngtxt {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #information .program .programInner .proEngtxt {
    font-size: 1.8rem;
    margin-top: 2.6667vw;
  }
}
#information .program .programInner h4 {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -0.1rem;
  margin-top: 5px;
}
@media screen and (max-width: 1150px) {
  #information .program .programInner h4 {
    font-size: 1.4rem;
    margin-top: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #information .program .programInner h4 {
    font-size: 1.5rem;
  }
}
#information .program .programInner .proTxt {
  font-size: 1.4rem;
  margin-top: 15px;
}
@media screen and (max-width: 1150px) {
  #information .program .programInner .proTxt {
    font-size: 1.3rem;
    margin-top: 1.3021vw;
  }
}
#information .program .btmTxt {
  font-size: 1.7rem;
  font-weight: 700;
  margin-top: 50px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #information .program .btmTxt {
    font-size: 1.6rem;
  }
}

/* ==========================================

社長メッセージ

========================================== */
#message .mainArea {
  margin: 221px auto 0;
  max-width: 1206px;
  width: 96.0468%;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #message .mainArea {
    margin-top: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #message .mainArea {
    margin-top: 8vw;
    width: 100%;
    height: 90.9333vw;
    background: url(/recruit/message/img/main_image.jpg) no-repeat center center/cover;
  }
}
@media screen and (max-width: 767px) {
  #message .mainArea a {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgba(6, 1, 50, 0.49);
    z-index: 3;
  }
}
#message .movieIcon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
#message .movieIcon img {
  width: 67px;
  margin: 0 auto;
}
@media screen and (max-width: 1150px) {
  #message .movieIcon img {
    width: 8.724vw;
  }
}
@media screen and (max-width: 767px) {
  #message .movieIcon img {
    width: 17.3333vw;
  }
}
#message .movieIcon p {
  font-family: "Open Sans", serif;
  font-size: 2.3rem;
  font-weight: 800;
  letter-spacing: -0.025rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  #message .movieIcon p {
    font-size: 1.8rem;
  }
}
#message .headTitle {
  position: absolute;
  left: 50px;
  top: 50px;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #message .headTitle {
    left: 3.9063vw;
    top: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #message .headTitle {
    left: 2.6667vw;
    top: 2.6667vw;
  }
}
#message .headTitle h2 {
  position: relative;
  font-family: "Open Sans", serif;
  font-size: 5.8rem;
  font-weight: 400;
  letter-spacing: -0.1rem;
}
@media screen and (max-width: 1150px) {
  #message .headTitle h2 {
    font-size: 3.7rem;
  }
}
@media screen and (max-width: 767px) {
  #message .headTitle h2 {
    font-size: 3.7rem;
  }
}
#message .headTitle h2 span {
  font-size: 2.9rem;
  font-weight: 200;
  display: block;
}
@media screen and (max-width: 1150px) {
  #message .headTitle h2 span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  #message .headTitle h2 span {
    font-size: 1.8rem;
  }
}
#message .headTitle h2 span.speechBubble {
  font-family: "Noto Sans JP", serif;
  position: absolute;
  display: inline-block;
  margin-left: 10px;
  padding: 10px 25px;
  border: 1px solid #000000;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  color: #000000;
  top: 25px;
  left: 240px;
  white-space: nowrap;
}
@media screen and (max-width: 1150px) {
  #message .headTitle h2 span.speechBubble {
    margin-left: 1.302vw;
    padding: 1.302vw 2.6041vw;
    border-radius: 1.0416vw;
    font-size: 1.2rem;
  }
}
#message .headTitle h2 span.speechBubble::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 5px 10px 5px 0;
  border-color: transparent #000000 transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #message .headTitle h2 span.speechBubble::before {
    border-width: 0.651vw 1.302vw 0.651vw 0;
  }
}
#message .headTitle h2 span.speechBubble::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 3.9px 7.8px 3.9px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1150px) {
  #message .headTitle h2 span.speechBubble::after {
    border-width: 0.5078vw 1.0156vw 0.5078vw 0;
  }
}
@media screen and (max-width: 1150px) {
  #message .headTitle h2 span.speechBubble {
    top: 1.5625vw;
    left: 19.5313vw;
    padding: 0.651vw 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #message .headTitle h2 span.speechBubble {
    top: -5.8677vw;
    left: 28vw;
    border: none;
    padding: 0;
    background-color: transparent;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
    padding-left: 2.6667vw;
  }
  #message .headTitle h2 span.speechBubble::before {
    content: "";
    width: 1px;
    height: 90%;
    background-color: #fff;
    border-width: 0px;
  }
  #message .headTitle h2 span.speechBubble::after {
    display: none;
  }
}
#message .headTxt {
  position: absolute;
  left: 50px;
  bottom: 35px;
  padding: 10px 20px;
  background-color: #000;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #message .headTxt {
    left: 3.9063vw;
    bottom: 2.6042vw;
    padding: 0.651vw 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #message .headTxt {
    background-color: transparent;
    left: 2.6667vw;
    bottom: 2.6667vw;
    padding: 0;
  }
}
#message .headTxt h3 {
  font-size: 1.9rem;
  font-weight: 700;
}
@media screen and (max-width: 1150px) {
  #message .headTxt h3 {
    font-size: 1.6rem;
  }
}
#message .headTxt .text {
  font-size: 1.7rem;
  font-weight: 500;
}
@media screen and (max-width: 1150px) {
  #message .headTxt .text {
    font-size: 1.4rem;
  }
}
#message .contentWrap {
  max-width: 1206px;
  width: 96.0468%;
  margin: 100px auto 0;
  border: 2px solid #000;
  padding: 80px 288px;
}
@media screen and (max-width: 1150px) {
  #message .contentWrap {
    margin: 6.5104vw auto 0;
    border: none;
    padding: 0 11.7188vw;
  }
}
@media screen and (max-width: 767px) {
  #message .contentWrap {
    margin: 10.6667vw auto 0;
    border: none;
    padding: 0;
  }
}
#message .title {
  font-family: "Open Sans", serif;
  font-size: 5.7rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 20px;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #message .title {
    font-size: 4.8rem;
    margin-bottom: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #message .title {
    font-size: 3rem;
    margin-bottom: 2.6667vw;
  }
}
#message .title span {
  font-size: 3.2rem;
  font-weight: 400;
  display: block;
}
@media screen and (max-width: 1150px) {
  #message .title span {
    font-size: 1.7rem;
  }
}
#message .title + p {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.1rem;
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 1150px) {
  #message .title + p {
    font-size: 1.4rem;
    margin-bottom: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #message .title + p {
    font-size: 1.5rem;
    margin-bottom: 5.3333vw;
  }
}
#message .qaBox {
  margin-bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #message .qaBox {
    margin-bottom: 5.8594vw;
  }
}
@media screen and (max-width: 767px) {
  #message .qaBox {
    margin-bottom: 8vw;
  }
}
#message .qaBox:last-child {
  margin-bottom: 0;
}
#message .qustionWrap,
#message .answerWrap {
  position: relative;
}
#message .qustionWrap::after,
#message .answerWrap::after {
  content: "";
  width: 98px;
  height: 98px;
  position: absolute;
  top: 0;
}
@media screen and (max-width: 1150px) {
  #message .qustionWrap::after,
  #message .answerWrap::after {
    width: 10.5469vw;
    height: 10.5469vw;
  }
}
@media screen and (max-width: 767px) {
  #message .qustionWrap::after,
  #message .answerWrap::after {
    width: 16vw;
    height: 16vw;
  }
}
#message .qustionWrap {
  margin-bottom: 30px;
}
@media screen and (max-width: 1150px) {
  #message .qustionWrap {
    margin-bottom: 3.2552vw;
  }
}
@media screen and (max-width: 767px) {
  #message .qustionWrap {
    padding-right: 21.3333vw;
    margin-bottom: 8vw;
  }
}
#message .qustionWrap::after {
  background: url(/recruit/message/img/interviewer.jpg) no-repeat center center/cover;
  top: -10px;
  right: -128px;
}
@media screen and (max-width: 1150px) {
  #message .qustionWrap::after {
    right: -13.0208vw;
    top: -1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #message .qustionWrap::after {
    top: 1.3333vw;
    right: 0;
  }
}
#message .qustionWrap.first {
  position: relative;
}
#message .qustionWrap.first::after {
  top: 0;
}
@media screen and (max-width: 767px) {
  #message .qustionWrap.first::after {
    top: 2.6667vw;
  }
}
#message .qustionWrap.first::before {
  content: "";
  background: url(/recruit/message/img/text_interviewer.png) no-repeat center center/cover;
  width: 109px;
  height: 15px;
  position: absolute;
  right: -128px;
  top: -28px;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #message .qustionWrap.first::before {
    width: 12.1094vw;
    height: 1.6927vw;
    right: -11.9792vw;
    top: -3.6458vw;
  }
}
@media screen and (max-width: 767px) {
  #message .qustionWrap.first::before {
    width: 19vw;
    height: 2.614678882vw;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  #message .answerWrap {
    padding-left: 21.3333vw;
  }
}
#message .answerWrap::after {
  background: url(/recruit/message/img/president.jpg) no-repeat center center/cover;
  left: -128px;
}
@media screen and (max-width: 1150px) {
  #message .answerWrap::after {
    left: -13.0208vw;
  }
}
@media screen and (max-width: 767px) {
  #message .answerWrap::after {
    top: 8vw;
    left: 0;
  }
}
#message .answerWrap.first {
  position: relative;
}
#message .answerWrap.first::before {
  content: "";
  background: url(/recruit/message/img/text.png) no-repeat center center/cover;
  width: 117px;
  height: 58px;
  position: absolute;
  left: -188px;
  top: -68px;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #message .answerWrap.first::before {
    width: 12.6302vw;
    height: 6.25vw;
    left: -13.2813vw;
    top: -6.25vw;
  }
}
@media screen and (max-width: 767px) {
  #message .answerWrap.first::before {
    width: 17.3333vw;
    height: 8.5333vw;
    left: 0;
    top: 0;
  }
}
#message .qustion,
#message .answer {
  position: relative;
  display: block;
  padding: 20px 30px;
  border-radius: 10px;
}
@media screen and (max-width: 1150px) {
  #message .qustion p,
  #message .answer p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1150px) {
  #message .qustion,
  #message .answer {
    padding: 2.6042vw 3.9063vw;
    border-radius: 1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #message .qustion,
  #message .answer {
    padding: 4vw;
    border-radius: 2.6667vw;
  }
}
#message .qustion::before, #message .qustion::after,
#message .answer::before,
#message .answer::after {
  content: "";
  position: absolute;
  border-style: solid;
}
#message .qustion {
  border: 2px solid #e5004f;
  background-color: #fff9f9;
  text-align: left;
}
#message .qustion::before, #message .qustion::after {
  top: 35%;
  right: 0;
  translate: 100% -50%;
}
#message .qustion::before {
  border-width: 10px 0 10px 15px;
  border-color: transparent transparent transparent #e5004f;
}
#message .qustion::after {
  border-width: 7.6px 0 7.6px 11.4px;
  border-color: transparent transparent transparent #fff9f9;
}
#message .answer {
  border: 2px solid #00b7ee;
}
#message .answer::before, #message .answer::after {
  top: 15%;
  left: 0;
  translate: -100% -50%;
}
#message .answer::before {
  border-width: 10px 15px 10px 0;
  border-color: transparent #00b7ee transparent transparent;
}
#message .answer::after {
  top: 15%;
  left: 0;
  border-width: 7.6px 11.4px 7.6px 0;
  border-color: transparent #fff transparent transparent;
}

/* ==========================================

Magnific Popup アニメーション設定

========================================== */
/* オーバーレイ表示開始 */
.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

/* オーバーレイ表示まで */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}

/* オーバーレイ非表示時 */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

/* コンテンツ表示開始 */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

/* コンテンツ表示まで */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

/* コンテンツ非表示時 */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

/* ==========================================

会社風景・仕事内容・よくある質問　共通設定

========================================== */
#landscape .mainArea,
#jobDescription .mainArea,
#faq .mainArea {
  margin: 221px auto 0;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 683/310;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #landscape .mainArea,
  #jobDescription .mainArea,
  #faq .mainArea {
    margin-top: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .mainArea,
  #jobDescription .mainArea,
  #faq .mainArea {
    margin-top: 8vw;
    aspect-ratio: 375/341;
  }
}
@media screen and (max-width: 767px) {
  #landscape .mainArea::after,
  #jobDescription .mainArea::after,
  #faq .mainArea::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(6, 1, 50, 0.49);
  }
}
#landscape .headTitle,
#landscape .headTxt,
#jobDescription .headTitle,
#jobDescription .headTxt,
#faq .headTitle,
#faq .headTxt {
  position: absolute;
  left: 80px;
}
@media screen and (max-width: 1150px) {
  #landscape .headTitle,
  #landscape .headTxt,
  #jobDescription .headTitle,
  #jobDescription .headTxt,
  #faq .headTitle,
  #faq .headTxt {
    left: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .headTitle,
  #landscape .headTxt,
  #jobDescription .headTitle,
  #jobDescription .headTxt,
  #faq .headTitle,
  #faq .headTxt {
    left: 3.2vw;
    z-index: 2;
  }
}
#landscape .headTitle,
#jobDescription .headTitle,
#faq .headTitle {
  top: 50px;
}
@media screen and (max-width: 1150px) {
  #landscape .headTitle,
  #jobDescription .headTitle,
  #faq .headTitle {
    top: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .headTitle,
  #jobDescription .headTitle,
  #faq .headTitle {
    top: 5.3333vw;
  }
}
#landscape .headTitle h2,
#jobDescription .headTitle h2,
#faq .headTitle h2 {
  font-size: 1.9rem;
  letter-spacing: 0.1rem;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #landscape .headTitle h2,
  #jobDescription .headTitle h2,
  #faq .headTitle h2 {
    font-size: 1.6rem;
  }
}
#landscape .headTitle h3,
#jobDescription .headTitle h3,
#faq .headTitle h3 {
  font-family: "Open Sans", serif;
  font-size: 6.5rem;
  font-weight: 400;
  letter-spacing: -0.05rem;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #landscape .headTitle h3,
  #jobDescription .headTitle h3,
  #faq .headTitle h3 {
    font-size: 4.3rem;
  }
}
@media screen and (max-width: 767px) {
  #landscape .headTitle h3,
  #jobDescription .headTitle h3,
  #faq .headTitle h3 {
    font-size: 4rem;
  }
}
#landscape .headTxt,
#jobDescription .headTxt,
#faq .headTxt {
  bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #landscape .headTxt,
  #jobDescription .headTxt,
  #faq .headTxt {
    bottom: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .headTxt,
  #jobDescription .headTxt,
  #faq .headTxt {
    bottom: 5.3333vw;
  }
}
#landscape .headTxt p,
#jobDescription .headTxt p,
#faq .headTxt p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.8rem;
  font-weight: 800;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #landscape .headTxt p,
  #jobDescription .headTxt p,
  #faq .headTxt p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #landscape .headTxt p,
  #jobDescription .headTxt p,
  #faq .headTxt p {
    font-size: 1.4rem;
  }
}
#landscape .sectionTitle,
#jobDescription .sectionTitle,
#faq .sectionTitle {
  margin: 150px 0 50px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #landscape .sectionTitle,
  #jobDescription .sectionTitle,
  #faq .sectionTitle {
    margin: 9.1146vw 0 4.5573vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .sectionTitle,
  #jobDescription .sectionTitle,
  #faq .sectionTitle {
    margin: 17.3333vw 0 8vw;
  }
}
#landscape .sectionTitle p,
#jobDescription .sectionTitle p,
#faq .sectionTitle p {
  font-family: "Sacramento", serif;
  font-weight: 400;
  font-size: 3.8rem;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #landscape .sectionTitle p,
  #jobDescription .sectionTitle p,
  #faq .sectionTitle p {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  #landscape .sectionTitle p,
  #jobDescription .sectionTitle p,
  #faq .sectionTitle p {
    font-size: 3.1rem;
  }
}
#landscape .sectionTitle h3,
#jobDescription .sectionTitle h3,
#faq .sectionTitle h3 {
  font-family: "M PLUS 1p", serif;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #landscape .sectionTitle h3,
  #jobDescription .sectionTitle h3,
  #faq .sectionTitle h3 {
    font-size: 1.6rem;
  }
}
#landscape .sectionTitle.needSpace p,
#jobDescription .sectionTitle.needSpace p,
#faq .sectionTitle.needSpace p {
  margin-bottom: 10px;
}
@media screen and (max-width: 1150px) {
  #landscape .sectionTitle.needSpace p,
  #jobDescription .sectionTitle.needSpace p,
  #faq .sectionTitle.needSpace p {
    margin-bottom: 1.3021vw;
  }
}

#landscape .mainArea {
  background: url(/recruit/landscape/img/main_image.jpg) no-repeat center center/cover;
}

#jobDescription .mainArea {
  background: url(/recruit/jobDescription/img/main_image.jpg) no-repeat center center/cover;
}

#faq .mainArea {
  background: url(/recruit/faq/img/main_image.jpg) no-repeat center center/cover;
}
@media screen and (max-width: 767px) {
  #faq .mainArea::after {
    display: none;
  }
}
#faq .headTitle,
#faq .headTxt {
  left: 0;
  background-color: #3f3f40;
  padding: 10px 80px;
  width: 450px;
}
@media screen and (max-width: 1150px) {
  #faq .headTitle,
  #faq .headTxt {
    padding: 0.651vw 3.9063vw;
    width: 39.0625vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .headTitle,
  #faq .headTxt {
    padding: 2.6667vw 5.3333vw;
    width: 100%;
    background-color: rgba(63, 63, 64, 0.8);
  }
}
#faq .headTitle {
  top: 40px;
}
@media screen and (max-width: 1150px) {
  #faq .headTitle {
    top: 3.2553vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .headTitle {
    top: 0;
  }
}
@media screen and (max-width: 1150px) {
  #faq .headTitle h3 {
    margin-bottom: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .headTitle h3 {
    margin-bottom: 1.3333vw;
  }
}
#faq .headTxt {
  bottom: 40px;
}
@media screen and (max-width: 1150px) {
  #faq .headTxt {
    bottom: 3.2553vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .headTxt {
    bottom: 0;
  }
}
#faq .headTxt h3 {
  color: #fff;
  font-size: 1.8rem;
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  #faq .headTxt h3 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1150px) {
  #faq .headTxt p {
    font-size: 1.6rem;
  }
}
#faq .sectionTitle {
  border-bottom: 5px solid #3f3f40;
  padding-bottom: 30px;
}
@media screen and (max-width: 1150px) {
  #faq .sectionTitle {
    border-bottom: 0.651vw solid #3f3f40;
    padding-bottom: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .sectionTitle {
    border-bottom: 0.8vw solid #3f3f40;
    padding-bottom: 8vw;
    margin-top: 10.6667vw;
    width: 96.0468vw;
    margin-left: auto;
    margin-right: auto;
  }
}
#faq .sectionTitle p {
  font-family: "Open Sans", serif;
  font-size: 1.2rem;
  font-weight: 400;
  width: 229px;
  border: 1px solid #000;
  border-radius: 6px;
  height: 28px;
  line-height: 28px;
  margin: 0 auto 10px;
}
@media screen and (max-width: 1150px) {
  #faq .sectionTitle p {
    font-size: 1rem;
    width: 24.349vw;
    border-radius: 0.7813vw;
    height: 2.9948vw;
    line-height: 2.9948vw;
    margin: 0 auto 1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .sectionTitle p {
    font-size: 1.2rem;
    width: 45.3333vw;
    border-radius: 1.6vw;
    height: 7.4667vw;
    line-height: 7.4667vw;
    margin: 0 auto 2.6667vw;
  }
}

/* ==========================================

会社風景

========================================== */
#landscape .IntroMovie,
#landscape .galleryArea,
#landscape .cultureArea {
  max-width: 1000px;
  width: 96.0468%;
  margin: 0 auto;
}
#landscape .missionVisionArea {
  max-width: 1206px;
  width: 96.0468%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #landscape .galleryArea {
    width: 100%;
  }
}
#landscape .IntroMovie .movieArea {
  position: relative;
}
#landscape .IntroMovie .movieIcon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
#landscape .IntroMovie .movieIcon img {
  width: 67px;
  margin: 0 auto;
}
@media screen and (max-width: 1150px) {
  #landscape .IntroMovie .movieIcon img {
    width: 5.9896vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .IntroMovie .movieIcon img {
    width: 16.5333vw;
  }
}
#landscape .IntroMovie .movieIcon p {
  font-family: "Open Sans", serif;
  font-size: 2.3rem;
  font-weight: 800;
  letter-spacing: -0.025rem;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #landscape .IntroMovie .movieIcon p {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  #landscape .IntroMovie .movieIcon p {
    font-size: 1.6rem;
  }
}
#landscape .galleryArea .gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #landscape .galleryArea .gallery {
    justify-content: space-around;
  }
}
#landscape .galleryArea .gallery li {
  width: 30%;
  margin-bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #landscape .galleryArea .gallery li {
    margin-bottom: 4.8022vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .galleryArea .gallery li {
    width: 32.9777vw;
    margin-bottom: 0.2667vw;
  }
}
#landscape .galleryArea .gallery li:nth-last-child(-n+3) {
  margin-bottom: 0;
}
#landscape .cultureArea {
  text-align: center;
}
@media screen and (max-width: 767px) {
  #landscape .cultureArea {
    text-align: left;
  }
}
#landscape .cultureArea .imageArea {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #landscape .cultureArea .imageArea {
    margin-bottom: 5.2083vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .cultureArea .imageArea {
    margin-bottom: 8vw;
  }
}
#landscape .cultureArea .imageArea img {
  width: 32.4%;
}
#landscape .cultureArea .textArea p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  #landscape .cultureArea .textArea p {
    font-size: 1.4rem;
  }
}
#landscape .missionVisionArea .headtxtArea {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 80px 0;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .headtxtArea {
    padding: 5.2083vw 6.5104vw;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .headtxtArea {
    border: none;
    padding: 0 0 8vw;
  }
}
#landscape .missionVisionArea .headtxtArea p {
  font-family: "M PLUS 1p", serif;
  font-weight: 400;
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .headtxtArea p {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .headtxtArea p {
    font-size: 1.4rem;
  }
}
#landscape .missionVisionArea .missionArea {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .missionArea {
    margin-top: 8.724vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .missionArea {
    display: block;
    margin-top: 0;
  }
}
#landscape .missionVisionArea .missionArea div {
  width: 41.46%;
  text-align: right;
  padding-top: 29px;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .missionArea div {
    padding-top: 0vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .missionArea div {
    width: 100%;
    text-align: left;
  }
}
#landscape .missionVisionArea .missionArea div:nth-of-type(1) {
  width: 17.08%;
  text-align: center;
  display: flex;
  align-items: center;
  writing-mode: vertical-rl;
  padding-top: 0;
  order: 2;
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .missionArea div:nth-of-type(1) {
    width: 100%;
    padding: 17.3333vw 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    margin-bottom: 17.3333vw;
  }
}
#landscape .missionVisionArea .missionArea div:nth-of-type(2) {
  order: 1;
}
#landscape .missionVisionArea .missionArea div:nth-of-type(3) {
  text-align: left;
  order: 3;
}
#landscape .missionVisionArea .missionArea h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.4rem;
  letter-spacing: 0.5rem;
  font-weight: 600;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .missionArea h2 {
    font-size: 2.9rem;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .missionArea h2 {
    font-size: 2.6rem;
  }
}
#landscape .missionVisionArea .missionArea h3 {
  font-family: "M PLUS 1p", serif;
  font-weight: 900;
  font-size: 2rem;
  margin-top: 77px;
  margin-bottom: 30px;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .missionArea h3 {
    font-size: 1.7rem;
    margin-top: 5.7292vw;
    margin-bottom: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .missionArea h3 {
    margin-top: 8vw;
    margin-bottom: 5.3333vw;
    font-size: 1.6rem;
  }
}
#landscape .missionVisionArea .missionArea h3 span {
  font-weight: 300;
}
#landscape .missionVisionArea .missionArea p {
  font-family: "M PLUS 1p", serif;
  font-weight: 400;
  font-size: 1.4rem;
}
#landscape .missionVisionArea .lastmessage {
  margin-top: 100px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .lastmessage {
    margin-top: 9.7656vw;
  }
}
@media screen and (max-width: 767px) {
  #landscape .missionVisionArea .lastmessage {
    margin-top: 17.3333vw;
    text-align: left;
  }
}
#landscape .missionVisionArea .lastmessage p {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 1.8rem;
}
@media screen and (max-width: 1150px) {
  #landscape .missionVisionArea .lastmessage p {
    font-size: 1.6rem;
  }
}

/* ==========================================

仕事内容

========================================== */
@media screen and (max-width: 767px) {
  #jobDescription .headTxt p {
    font-size: 1.4rem;
    line-height: 1.2;
  }
}
#jobDescription .intoroduction {
  max-width: 1000px;
  width: 96.0468%;
  margin: 0 auto;
}
#jobDescription .intoroduction .txtArea {
  margin-bottom: 50px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .txtArea {
    margin-bottom: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .txtArea {
    text-align: left;
    margin-bottom: 8vw;
  }
}
#jobDescription .intoroduction .flexArea {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea {
    display: block;
  }
}
#jobDescription .intoroduction .flexArea > div {
  width: 30%;
  margin-bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea > div {
    margin-bottom: 4.8177vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div {
    margin-bottom: 8vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div > div:nth-child(1) {
    width: 34.7222%;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div > div:nth-child(2) {
    width: 59.7222%;
  }
}
#jobDescription .intoroduction .flexArea > div:nth-last-child(-n+2) {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div:nth-last-child(-n+2) {
    margin-bottom: 8vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div:last-child {
    margin-bottom: 0;
  }
}
#jobDescription .intoroduction .flexArea > div.commentArea {
  width: 65%;
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div.commentArea {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea > div.commentArea div {
    width: 100%;
  }
}
#jobDescription .intoroduction .flexArea h3 {
  font-family: "M PLUS 1p", serif;
  font-size: 1.9rem;
  font-weight: 800;
  margin: 30px 0 20px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea h3 {
    font-size: 1.6rem;
    margin: 1.9531vw 0 1.3021vw;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea h3 {
    margin: 0 0 2.6667vw;
  }
}
#jobDescription .intoroduction .flexArea p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.4rem;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea p {
    line-height: 1.4;
  }
}
#jobDescription .intoroduction .flexArea .commentArea h3 {
  margin: 0 0 10px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea .commentArea h3 {
    margin-bottom: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea .commentArea h3 {
    margin-bottom: 4vw;
  }
}
#jobDescription .intoroduction .flexArea .commentArea p {
  font-size: 1.3rem;
}
#jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1), #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2) {
  position: relative;
}
#jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1)::before, #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2)::before {
  content: "";
  width: 98px;
  aspect-ratio: 1/1;
  background: url(/recruit/jobDescription/img/president.png) no-repeat center center/cover;
  position: absolute;
  top: calc(50% + 10px);
  transform: translateY(-50%);
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1)::before, #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2)::before {
    width: 9.375vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1)::before, #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2)::before {
    width: 22.9333vw;
  }
}
#jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1) {
  padding-left: 120px;
  margin-bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1) {
    padding-left: 11.9792vw;
    margin-bottom: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1) {
    padding-left: 22.9333vw;
    margin-bottom: 8vw;
  }
}
#jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(1)::before {
  left: 0;
}
#jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2) {
  padding-right: 120px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2) {
    padding-right: 11.9792vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2) {
    padding-right: 22.9333vw;
  }
}
#jobDescription .intoroduction .flexArea .commentArea > div:nth-of-type(2)::before {
  right: 0;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft,
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight {
  position: relative;
  display: block;
  padding: 20px 30px;
  border-radius: 10px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft p,
  #jobDescription .intoroduction .flexArea .commentArea .fukidashiRight p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1150px) {
  #jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft,
  #jobDescription .intoroduction .flexArea .commentArea .fukidashiRight {
    padding: 1.3021vw 2.6042vw;
    border-radius: 1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft,
  #jobDescription .intoroduction .flexArea .commentArea .fukidashiRight {
    padding: 4vw;
    border-radius: 2.6667vw;
  }
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft::before, #jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft::after,
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight::before,
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight::after {
  content: "";
  position: absolute;
  border-style: solid;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft {
  border: 2px solid #00b7ee;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft::before, #jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft::after {
  top: 50%;
  left: 0;
  translate: -100% -50%;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft::before {
  border-width: 10px 15px 10px 0;
  border-color: transparent #00b7ee transparent transparent;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiLeft::after {
  top: 50%;
  left: 0;
  border-width: 7.6px 11.4px 7.6px 0;
  border-color: transparent #fff9f9 transparent transparent;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight {
  border: 2px solid #00b7ee;
  text-align: left;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight::before, #jobDescription .intoroduction .flexArea .commentArea .fukidashiRight::after {
  top: 50%;
  right: 0;
  translate: 100% -50%;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight::before {
  border-width: 10px 0 10px 15px;
  border-color: transparent transparent transparent #00b7ee;
}
#jobDescription .intoroduction .flexArea .commentArea .fukidashiRight::after {
  border-width: 7.6px 0 7.6px 11.4px;
  border-color: transparent transparent transparent #fff9f9;
}
#jobDescription .schedule {
  background: #29abe2;
  padding-bottom: 100px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule {
    padding-bottom: 9.1146vw;
  }
}
#jobDescription .schedule .sectionTitle {
  padding-top: 100px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .sectionTitle {
    padding-top: 9.1146vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .sectionTitle {
    padding-top: 18.6667vw;
  }
}
#jobDescription .schedule .sectionTitle p,
#jobDescription .schedule .sectionTitle h3 {
  color: #fff;
}
#jobDescription .schedule .sectionTxt {
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 400;
  margin-bottom: 20px;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .sectionTxt {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .sectionTxt {
    width: 96.0468%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
  }
}
#jobDescription .schedule .timeLineWrap {
  background: url(/recruit/jobDescription/img/bg.svg) no-repeat center center/1260px auto;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLineWrap {
    background-size: 154.0625vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLineWrap {
    background-size: 328vw;
  }
}
#jobDescription .schedule .timeLIneArea {
  max-width: 748px;
  padding: 110px 0 134px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLIneArea {
    max-width: 79.6875vw;
    padding: 14.3229vw 0 17.4479vw;
    margin-left: 0;
    padding-left: 1.9766vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLIneArea {
    max-width: initial;
    width: 96.0468%;
    margin: 0 auto;
    padding: 17.8667vw 0 13vw;
  }
}
#jobDescription .schedule .timeLine {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #000;
  margin-bottom: 30px;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine {
    margin-bottom: 3.2552vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine {
    display: block;
    margin-bottom: 5.3333vw;
    border: none;
  }
}
#jobDescription .schedule .timeLine:nth-last-of-type(2) {
  margin-bottom: 0;
}
#jobDescription .schedule .timeLine:last-child {
  margin-bottom: 0;
}
#jobDescription .schedule .timeLine > div:nth-of-type(1) {
  display: flex;
  align-items: center;
  width: 294px;
  padding: 20px 0;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1) {
    width: 31.25vw;
    padding: 2.6042vw 0;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1) {
    width: 78.6667vw;
  }
}
#jobDescription .schedule .timeLine > div:nth-of-type(1)::before {
  content: "";
  width: 100%;
  height: 11px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1)::before {
    height: 1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1)::before {
    height: 2.9333vw;
  }
}
#jobDescription .schedule .timeLine > div:nth-of-type(1) p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.8rem;
  font-weight: 800;
  color: #29abe2;
  text-align: right;
  width: 80px;
  padding-right: 20px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1) p {
    font-size: 1.5rem;
    width: 8.5938vw;
    padding-right: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1) p {
    font-size: 1.6rem;
    width: 21.3333vw;
    padding-right: 5.3333vw;
  }
}
#jobDescription .schedule .timeLine > div:nth-of-type(1) h4 {
  font-family: "M PLUS 1p", serif;
  font-size: 1.8rem;
  font-weight: 700;
  width: 214px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1) h4 {
    font-size: 1.5rem;
    width: 22.6563vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(1) h4 {
    font-size: 1.6rem;
    width: 57.0667vw;
  }
}
#jobDescription .schedule .timeLine > div:nth-of-type(2) {
  width: 410px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(2) {
    width: 43.4896vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(2) {
    width: 100%;
    border-top: 1px solid #000;
    padding-top: 4vw;
  }
}
#jobDescription .schedule .timeLine > div:nth-of-type(2) p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 500;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(2) p {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .timeLine > div:nth-of-type(2) p {
    font-size: 1.4rem;
    padding-left: 4vw;
  }
}
#jobDescription .schedule .speechBubble {
  position: absolute;
  width: 170px;
  height: 177px;
  background: url(/recruit/jobDescription/img/fukidashiLeft.svg) no-repeat center center/cover;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 15px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble {
    width: 15.3646vw;
    height: 16.0156vw;
    padding: 0 0.651vw;
    background: url(/recruit/jobDescription/img/fukidashiRight.svg) no-repeat center center/cover;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble {
    width: 29.6vw;
    height: 30.6667vw;
    padding: 0 2.6667vw;
  }
}
#jobDescription .schedule .speechBubble h4 {
  font-family: "M PLUS 1p", serif;
  font-size: 1.8rem;
  font-weight: 900;
  color: #e5004f;
  margin-bottom: 5px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble h4 {
    font-size: 1.3rem;
    margin-bottom: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble h4 {
    font-size: 1.2rem;
    margin-bottom: 1.3333vw;
  }
}
#jobDescription .schedule .speechBubble p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.4rem;
  font-weight: 400;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble p {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble p {
    font-size: 0.9rem;
  }
}
#jobDescription .schedule .speechBubble:nth-of-type(3) {
  top: 50px;
  left: -180px;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble:nth-of-type(3) {
    left: auto;
    right: -17.3177vw;
    top: 15.625vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble:nth-of-type(3) {
    right: -1.3333vw;
    top: 40vw;
  }
}
#jobDescription .schedule .speechBubble:nth-of-type(6) {
  top: 260px;
  right: -180px;
  background: url(/recruit/jobDescription/img/fukidashiRight.svg) no-repeat center center/cover;
  animation: fuwafuwa01 3s 0.2s infinite;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble:nth-of-type(6) {
    right: -17.3177vw;
    top: 39.0625vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble:nth-of-type(6) {
    right: -1.3333vw;
    top: 101.3333vw;
  }
}
#jobDescription .schedule .speechBubble:nth-of-type(6) h4 {
  font-size: 2.1rem;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble:nth-of-type(6) h4 {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble:nth-of-type(6) h4 {
    font-size: 1.4rem;
  }
}
#jobDescription .schedule .speechBubble:nth-of-type(11) {
  bottom: 204px;
  left: -180px;
  animation: fuwafuwa01 3s 0.4s infinite;
}
@media screen and (max-width: 1150px) {
  #jobDescription .schedule .speechBubble:nth-of-type(11) {
    left: auto;
    right: -17.3177vw;
    bottom: 19.5313VW;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .schedule .speechBubble:nth-of-type(11) {
    right: -1.3333vw;
    bottom: 32vw;
  }
}
#jobDescription .career .sectionTxt {
  margin-bottom: 80px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .sectionTxt {
    margin-bottom: 5.8594vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .sectionTxt {
    margin-bottom: 8vw;
  }
}
#jobDescription .career .sectionTxt p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 400;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .sectionTxt p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .sectionTxt p {
    text-align: left;
    width: 96.0468%;
    margin-left: auto;
    margin-right: auto;
  }
}
#jobDescription .career .stepWrap {
  max-width: 965px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .stepWrap {
    width: 96.0468%;
  }
}
#jobDescription .career .stepWrap > div {
  margin-bottom: 80px;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .stepWrap > div {
    margin-bottom: 8.5938vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .stepWrap > div {
    margin-bottom: 17.3333vw;
  }
}
#jobDescription .career .stepWrap > div::after {
  content: "";
  width: 87px;
  height: 58px;
  background: url(/recruit/jobDescription/img/arrow.svg) no-repeat center center/cover;
  bottom: -68px;
  left: -87px;
  position: absolute;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .stepWrap > div::after {
    width: 8.9844vw;
    height: 5.9896vw;
    bottom: -7.2917vw;
    left: -3.5156vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .stepWrap > div::after {
    width: 19.99995vw;
    height: 13.60005vw;
    left: 2.6667vw;
    bottom: -17.3333vw;
  }
}
#jobDescription .career .stepWrap > div:nth-child(1) {
  margin-left: 315px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .stepWrap > div:nth-child(1) {
    margin-left: 23.6979vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .stepWrap > div:nth-child(1) {
    margin-left: 0;
  }
}
#jobDescription .career .stepWrap > div:nth-child(2) {
  margin-left: 150px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .stepWrap > div:nth-child(2) {
    margin-left: 12.5vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .stepWrap > div:nth-child(2) {
    margin-left: 0;
  }
}
#jobDescription .career .stepWrap > div:nth-child(3) {
  margin-left: 0;
  margin-bottom: 0;
}
#jobDescription .career .stepWrap > div:nth-child(3)::after {
  display: none;
}
#jobDescription .career .step {
  width: 650px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step {
    width: 100%;
  }
}
#jobDescription .career .step h4 {
  font-family: "Open Sans", serif;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  color: #362e2b;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step h4 {
    font-size: 2.4rem;
  }
}
#jobDescription .career .step h4::after {
  content: "";
  display: block;
  width: 1px;
  height: 80%;
  background-color: #000;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  right: -20px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step h4::after {
    height: 60%;
    right: -2.6042vw;
    top: auto;
    transform: translateY(0);
    bottom: 1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .career .step h4::after {
    height: 80%;
  }
}
#jobDescription .career .step h4 span {
  font-family: "M PLUS 1p", serif;
  font-size: 11.3rem;
  font-weight: 700;
  color: #29abe2;
  display: block;
  letter-spacing: -0.2rem;
  margin-top: -5px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step h4 span {
    font-size: 9rem;
  }
}
#jobDescription .career .step h4 span::first-letter {
  color: #000;
}
#jobDescription .career .step div {
  margin-left: 40px;
  margin-top: 20px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step div {
    margin-left: 5.2083vw;
    margin-top: 2.6042vw;
  }
}
#jobDescription .career .step div h5 {
  font-size: 2.1rem;
  font-weight: 700;
  margin-bottom: 5px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step div h5 {
    font-size: 1.6rem;
    margin-bottom: 0.3906vw;
  }
}
#jobDescription .career .step div p {
  font-size: 1.4rem;
  font-weight: 400;
}
#jobDescription .career .step div p.english {
  font-family: "Open Sans", serif;
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (max-width: 1150px) {
  #jobDescription .career .step div p.english {
    font-size: 1.3rem;
  }
}
#jobDescription .program {
  background: #32b16c;
  padding-bottom: 100px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program {
    padding-bottom: 9.1146vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program {
    padding-bottom: 18.6667vw;
  }
}
#jobDescription .program .sectionTitle {
  padding-top: 100px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .sectionTitle {
    padding-top: 9.1146vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .sectionTitle {
    padding-top: 18.6667vw;
  }
}
#jobDescription .program .sectionTitle p,
#jobDescription .program .sectionTitle h3 {
  color: #fff;
}
#jobDescription .program .contentWrap {
  background-color: #fff;
  max-width: 1206px;
  padding: 50px;
  margin: 0 auto;
  width: 96.0468%;
  border-radius: 50px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .contentWrap {
    padding: 6.5104vw 3.90625vw;
    border-radius: 3.90625vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .contentWrap {
    padding: 6.5104vw 3.2vw;
    border-radius: 5.333333vw;
  }
}
#jobDescription .program .contentWrap .txtArea {
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .contentWrap .txtArea p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .contentWrap .txtArea {
    margin-bottom: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .contentWrap .txtArea {
    text-align: left;
  }
}
#jobDescription .program .programWrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#jobDescription .program .programWrap > div {
  width: 49%;
}
#jobDescription .program .programWrap > div:nth-last-child(-n+4) {
  margin-top: 30px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .programWrap > div:nth-last-child(-n+4) {
    margin-top: 2.604167vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programWrap > div:nth-last-child(-n+4) {
    margin-top: 5.333333vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programWrap > div {
    width: 48.5%;
  }
}
#jobDescription .program .programInner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programInner {
    display: block;
  }
}
#jobDescription .program .programInner > div:first-child {
  width: 50.5263%;
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programInner > div:first-child {
    width: 100%;
  }
}
#jobDescription .program .programInner > div:last-child {
  width: 47.3684%;
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programInner > div:last-child {
    width: 100%;
  }
}
#jobDescription .program .programInner .proEngtxt {
  font-family: "Open Sans", serif;
  font-weight: 800;
  font-size: 1.8rem;
  letter-spacing: -0.1rem;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .programInner .proEngtxt {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programInner .proEngtxt {
    font-size: 1.2rem;
    margin-top: 2.6667vw;
  }
}
#jobDescription .program .programInner h4 {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -0.1rem;
  margin-top: 5px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .programInner h4 {
    font-size: 1.4rem;
    margin-top: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .program .programInner h4 {
    font-size: 1.5rem;
  }
}
#jobDescription .program .programInner .proTxt {
  font-size: 1.4rem;
  margin-top: 15px;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .programInner .proTxt {
    font-size: 1.3rem;
    margin-top: 1.3021vw;
  }
}
#jobDescription .program .btmTxt {
  font-size: 1.7rem;
  font-weight: 700;
  margin-top: 50px;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #jobDescription .program .btmTxt {
    font-size: 1.6rem;
    margin-top: 6.5104vw;
  }
}
#jobDescription .lastmessage {
  margin-top: 100px;
  text-align: center;
  width: 96.0468%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1150px) {
  #jobDescription .lastmessage {
    margin-top: 9.7656vw;
  }
}
@media screen and (max-width: 767px) {
  #jobDescription .lastmessage {
    margin-top: 17.3333vw;
    text-align: left;
  }
}
#jobDescription .lastmessage p {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 1.8rem;
}
@media screen and (max-width: 1150px) {
  #jobDescription .lastmessage p {
    font-size: 1.6rem;
  }
}

/* ==========================================

多様な働き方実践企業

========================================== */
#diversity .blueBackArea {
  position: relative;
  margin-top: 176px;
  padding-bottom: 100px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea {
    margin-top: 3.9063vw;
    padding-bottom: 8.8542vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea {
    margin-top: 8vw;
    padding-bottom: 17.3333vw;
  }
}
#diversity .blueBackArea::before {
  content: "";
  position: absolute;
  top: 361px;
  background-color: #1d2088;
  width: 100%;
  height: calc(100% - 361px);
  z-index: -1;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea::before {
    top: 29.1667vw;
    height: calc(100% - 29.1667vw);
  }
}
#diversity .blueBackArea .mainArea {
  max-width: 1206px;
  aspect-ratio: 603/353;
  background: url(/recruit/diversity/img/main_image.png) no-repeat center center/cover;
  margin: 0 auto 0;
  position: relative;
  width: 96.0468%;
}
#diversity .blueBackArea .mainArea::after {
  content: "";
  width: 136px;
  aspect-ratio: 136/73;
  background: url(/recruit/diversity/img/good_mark.png) no-repeat center center/cover;
  position: absolute;
  right: 27px;
  bottom: 89px;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .mainArea::after {
    width: 10.8073vw;
    right: 2.6042vw;
    bottom: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .mainArea::after {
    width: 21.3333vw;
    bottom: 0;
  }
}
#diversity .blueBackArea .headTitle {
  text-align: center;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 25px;
  background-color: rgba(29, 32, 136, 0.6);
  display: inline-block;
  border-radius: 150px 150px 0 0;
  padding: 10px 50px 0;
  white-space: nowrap;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .headTitle {
    margin-top: 1.3021vw;
    border-radius: 15.625vw 15.625vw 0 0;
    padding: 1.3020833vw 3.90625vw 0;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .headTitle {
    margin-top: 1.3333vw;
  }
}
#diversity .blueBackArea .headTitle h3 {
  font-family: "Open Sans", serif;
  font-size: 5.4rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 5px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .headTitle h3 {
    font-size: 3.6rem;
    margin-bottom: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .headTitle h3 {
    font-size: 2.7rem;
    line-height: 1;
    margin-top: -1.3333vw;
    margin-bottom: 1.3333vw;
  }
}
#diversity .blueBackArea .headTitle h2 {
  font-family: "M PLUS 1p", serif;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: 0.28rem;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .headTitle h2 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .headTitle h2 {
    font-size: 1.2rem;
  }
}
#diversity .blueBackArea .headTitle h2::after {
  content: "";
  width: 360px;
  aspect-ratio: 360/11;
  background: url(/recruit/diversity/img/decoLine.svg) no-repeat center center/cover;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -20px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .headTitle h2::after {
    width: 28.6458vw;
    bottom: -1.9531vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .headTitle h2::after {
    display: none;
  }
}
#diversity .blueBackArea .headTitle p.txt {
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 800;
  color: #fff;
  margin-top: 15px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .headTitle p.txt {
    font-size: 1.4rem;
    margin-top: 1.302083vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .headTitle p.txt {
    display: none;
  }
}
#diversity .blueBackArea .headTitle p.txt span {
  font-size: 2rem;
  color: #e5004f;
  background-color: #fff799;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .headTitle p.txt span {
    font-size: 1.6rem;
  }
}
#diversity .blueBackArea .stage01 {
  max-width: 560px;
  margin: 100px auto;
  width: 96.0468%;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage01 {
    margin: 8.8542vw auto;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .stage01 {
    width: 93.6%;
    margin: 8vw auto 17.3333vw;
  }
}
#diversity .blueBackArea .sectionTitle {
  margin-bottom: 40px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .sectionTitle {
    margin-bottom: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .sectionTitle {
    margin-bottom: 8vw;
  }
}
#diversity .blueBackArea .sectionTitle p,
#diversity .blueBackArea .sectionTitle h3 {
  text-align: center;
  color: #fff;
}
#diversity .blueBackArea .sectionTitle p {
  font-family: "Sacramento", serif;
  font-size: 3.1rem;
  font-weight: 400;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .sectionTitle p {
    font-size: 2.7rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .sectionTitle p {
    font-size: 2rem;
  }
}
#diversity .blueBackArea .sectionTitle h3 {
  font-family: "M PLUS 1p", serif;
  font-size: 4.1rem;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .sectionTitle h3 {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .sectionTitle h3 {
    font-size: 2.4rem;
  }
}
#diversity .blueBackArea .sectionTitle + p {
  color: #fff;
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 400;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .sectionTitle + p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .sectionTitle + p {
    font-size: 1.6rem;
    text-align: left;
    font-weight: 600;
  }
}
#diversity .blueBackArea .sectionTitle + p span {
  font-size: 2rem;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .sectionTitle + p span {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .sectionTitle + p span {
    color: #e5004f;
    background-color: #fff799;
    font-size: 2rem;
  }
}
#diversity .blueBackArea .markArea {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .markArea {
    margin-top: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .markArea {
    margin-top: 8vw;
  }
}
#diversity .blueBackArea .markArea > div {
  width: 46.5%;
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .markArea > div {
    width: 48%;
  }
}
#diversity .blueBackArea .bottomArea h4,
#diversity .blueBackArea .seniorArea h4 {
  text-align: center;
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 2.1rem;
  color: #fff;
  margin: 30px 0 20px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomArea h4,
  #diversity .blueBackArea .seniorArea h4 {
    font-size: 1.8rem;
  }
}
#diversity .blueBackArea .bottomArea h4 span,
#diversity .blueBackArea .seniorArea h4 span {
  font-weight: 400;
}
#diversity .blueBackArea .bottomArea p,
#diversity .blueBackArea .seniorArea p {
  font-family: "M PLUS 1p", serif;
  font-weight: 400;
  font-size: 1.6rem;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomArea p,
  #diversity .blueBackArea .seniorArea p {
    font-size: 1.4rem;
  }
}
#diversity .blueBackArea .bottomArea p:nth-of-type(1),
#diversity .blueBackArea .seniorArea p:nth-of-type(1) {
  margin-bottom: 30px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomArea p:nth-of-type(1),
  #diversity .blueBackArea .seniorArea p:nth-of-type(1) {
    margin-bottom: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .bottomArea p:nth-of-type(1),
  #diversity .blueBackArea .seniorArea p:nth-of-type(1) {
    margin-bottom: 8vw;
  }
}
#diversity .blueBackArea .bottomArea a,
#diversity .blueBackArea .seniorArea a {
  font-family: "M PLUS 1p", serif;
  font-size: 2.1rem;
  font-weight: 800;
  color: #fff;
  text-align: center;
  width: 100%;
  border: 1px solid #fff;
  display: block;
  line-height: 1.1;
  padding: 10px 0;
  position: relative;
  margin-top: 50px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomArea a,
  #diversity .blueBackArea .seniorArea a {
    font-size: 1.8rem;
    padding: 1.3021vw 0;
    margin-top: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .bottomArea a,
  #diversity .blueBackArea .seniorArea a {
    padding: 2.6667vw 0;
  }
}
#diversity .blueBackArea .bottomArea a::after,
#diversity .blueBackArea .seniorArea a::after {
  content: "";
  width: 20px;
  aspect-ratio: 1/1;
  background: url(/recruit/diversity/img/blankWindow.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomArea a::after,
  #diversity .blueBackArea .seniorArea a::after {
    width: 2.6042vw;
    right: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .bottomArea a::after,
  #diversity .blueBackArea .seniorArea a::after {
    width: 5.3333vw;
    right: 5.3333vw;
  }
}
#diversity .blueBackArea .bottomArea a span,
#diversity .blueBackArea .seniorArea a span {
  font-size: 1.8rem;
  font-weight: 400;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomArea a span,
  #diversity .blueBackArea .seniorArea a span {
    font-size: 1.5rem;
  }
}
#diversity .blueBackArea .seniorArea {
  margin-top: 50px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .seniorArea {
    margin-top: 6.510466vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .seniorArea {
    margin-top: 8vw;
  }
}
#diversity .blueBackArea .seniorArea img {
  margin-top: 30px;
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .seniorArea img {
    margin-top: 3.90625vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .seniorArea img {
    margin-top: 8vw;
  }
}
#diversity .blueBackArea .stage02 {
  background-color: #fff;
  padding: 80px 97px 100px;
  max-width: 1000px;
  border-radius: 100px;
  margin: 0 auto;
  width: 96.0468%;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 {
    padding: 6.5104vw;
    border-radius: 7.8125vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .stage02 {
    padding: 8vw 2.6667vw;
    border-radius: 8vw;
  }
}
#diversity .blueBackArea .stage02 .sectionTitle p,
#diversity .blueBackArea .stage02 .sectionTitle h3 {
  color: #000;
}
#diversity .blueBackArea .stage02 .sectionTitle h3 {
  font-size: 2.8rem;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 .sectionTitle h3 {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .stage02 .sectionTitle h3 {
    font-size: 2.1rem;
  }
}
#diversity .blueBackArea .stage02 .twoColumn {
  display: flex;
  justify-content: space-between;
}
#diversity .blueBackArea .stage02 .twoColumn > div {
  width: 43.92%;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 .twoColumn > div {
    width: 49%;
  }
}
#diversity .blueBackArea .stage02 .twoColumn h4 {
  font-family: "M PLUS 1p", serif;
  font-size: 2.4rem;
  font-weight: 800;
  background-color: #1d2088;
  text-align: center;
  color: #fff;
  height: 56px;
  line-height: 56px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 .twoColumn h4 {
    font-size: 1.6rem;
    height: 5.4688vw;
    line-height: 5.4688vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .stage02 .twoColumn h4 {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    height: auto;
    min-height: 13.3333vw;
    line-height: 1.2;
    padding: 1.3333vw 5.3333vw;
  }
}
#diversity .blueBackArea .stage02 .twoColumn p {
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 800;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 .twoColumn p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .stage02 .twoColumn p {
    text-align: left;
  }
}
#diversity .blueBackArea .stage02 .twoColumn .imageArea {
  max-width: 213px;
  margin: 30px auto;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 .twoColumn .imageArea {
    width: 27.7344vw;
    margin: 3.9063vw auto;
  }
}
#diversity .blueBackArea .stage02 .twoColumn .imageArea.baby img {
  padding: 23px;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .stage02 .twoColumn .imageArea.baby img {
    padding: 2.9948vw;
  }
}
#diversity .blueBackArea .bottomTxt {
  margin-top: 100px;
  text-align: center;
  width: 96.0468%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomTxt {
    margin-top: 8.8592vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .bottomTxt {
    width: 93.6%;
    text-align: left;
    margin-top: 8vw;
  }
}
#diversity .blueBackArea .bottomTxt p {
  color: #fff;
  font-family: "M PLUS 1p", serif;
  font-weight: 400;
  font-size: 1.8rem;
}
@media screen and (max-width: 1150px) {
  #diversity .blueBackArea .bottomTxt p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .blueBackArea .bottomTxt p {
    font-size: 1.6rem;
  }
}
#diversity .blueBackArea .bottomTxt p strong {
  font-weight: 800;
}
#diversity .blueBackArea .bottomTxt p span {
  color: #1d2088;
  background-color: #fff45c;
}
#diversity .voiceArea {
  background-color: #e41e6f;
  padding: 100px 0;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea {
    padding: 8.8592vw 0;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea {
    padding: 17.3333vw 0;
  }
}
#diversity .voiceArea .sectionTitle p,
#diversity .voiceArea .sectionTitle h3 {
  color: #fff;
  text-align: center;
}
#diversity .voiceArea .sectionTitle p {
  font-family: "Sacramento", serif;
  font-size: 4.6rem;
  font-weight: 400;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .sectionTitle p {
    font-size: 3.8rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .sectionTitle p {
    font-size: 2rem;
  }
}
#diversity .voiceArea .sectionTitle h3 {
  font-family: "M PLUS 1p", serif;
  font-size: 1.7rem;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .sectionTitle h3 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .sectionTitle h3 {
    font-size: 2.4rem;
  }
}
#diversity .voiceArea .twoColumn {
  max-width: 830px;
  margin: 38px auto 0;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn {
    margin: 4.9479vw auto 0;
    width: 84.1146%;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn {
    display: block;
    width: 93.6%;
    margin-top: 18.6667vw;
  }
}
#diversity .voiceArea .twoColumn > div {
  width: 46.99%;
  position: relative;
  aspect-ratio: 130/89;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn > div {
    width: 46.99%;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn > div {
    width: 100%;
  }
}
#diversity .voiceArea .twoColumn > div:nth-child(1) {
  background: url(/recruit/diversity/img/voiceDecoRight.png) no-repeat center center/cover;
  order: 2;
  margin-bottom: 117px;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn > div:nth-child(1) {
    margin-bottom: 15.2344vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn > div:nth-child(1) {
    margin-bottom: 0;
    padding: 0 40px;
  }
}
#diversity .voiceArea .twoColumn > div:nth-child(2) {
  background: url(/recruit/diversity/img/voiceDecoLeft.png) no-repeat center center/cover;
  order: 1;
  margin-top: 117px;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn > div:nth-child(2) {
    margin-top: 15.2344vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn > div:nth-child(2) {
    margin-top: 0;
    padding: 0 40px;
  }
}
#diversity .voiceArea .twoColumn > div:nth-child(2) p {
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn > div.icon02, #diversity .voiceArea .twoColumn > div.icon03, #diversity .voiceArea .twoColumn > div.icon01 {
    margin-bottom: 4vw;
  }
}
#diversity .voiceArea .twoColumn > div p {
  color: #fff;
  width: 70%;
  margin-top: -30px;
  font-family: "M PLUS 1p", serif;
  font-size: 1.6rem;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn > div p {
    margin-top: -3.9063vw;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn > div p {
    width: 100%;
  }
}
#diversity .voiceArea .twoColumn .icon01::before {
  content: "";
  position: absolute;
  width: 117px;
  aspect-ratio: 117/125;
  background: url(/recruit/diversity/img/voiceIcon01.svg) no-repeat center center/cover;
  top: -18px;
  left: -170px;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn .icon01::before {
    width: 12.5vw;
    top: -2.3438vw;
    left: -15.625vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn .icon01::before {
    width: 22.4vw;
    top: -5.3333vw;
    left: 10.6667vw;
  }
}
#diversity .voiceArea .twoColumn .icon02::before {
  content: "";
  position: absolute;
  width: 101px;
  aspect-ratio: 101/97;
  background: url(/recruit/diversity/img/voiceIcon02.svg) no-repeat center center/cover;
  bottom: -48px;
  right: -70px;
  animation: fuwafuwa01 3s 0.5s infinite;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn .icon02::before {
    width: 10.8073vw;
    bottom: -6.25vw;
    right: -9.1146vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn .icon02::before {
    width: 21.3333vw;
    bottom: 0;
    right: 0;
  }
}
#diversity .voiceArea .twoColumn .icon03::before {
  content: "";
  position: absolute;
  width: 93px;
  aspect-ratio: 1/1;
  background: url(/recruit/diversity/img/voiceIcon03.svg) no-repeat center center/cover;
  top: 0px;
  left: -355px;
  animation: fuwafuwa01 3s 0.3s infinite;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn .icon03::before {
    width: 9.8958vw;
    top: 0px;
    left: -32.5521vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn .icon03::before {
    width: 19.7333vw;
    top: auto;
    left: 0;
    bottom: 0;
  }
}
#diversity .voiceArea .twoColumn .icon04::before {
  content: "";
  position: absolute;
  width: 105px;
  aspect-ratio: 1/1;
  background: url(/recruit/diversity/img/voiceIcon04.svg) no-repeat center center/cover;
  bottom: 0px;
  right: -355px;
  animation: fuwafuwa01 3s 0.6s infinite;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn .icon04::before {
    width: 11.1979vw;
    bottom: 0px;
    right: -32.5521vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn .icon04::before {
    width: 22.1333vw;
    bottom: 0;
    right: 0;
  }
}
#diversity .voiceArea .twoColumn .icon05::before {
  content: "";
  position: absolute;
  width: 100px;
  aspect-ratio: 953/920;
  background: url(/recruit/diversity/img/voiceIcon05.svg) no-repeat center center/cover;
  top: 0px;
  left: -235px;
  animation: fuwafuwa01 3s 0.2s infinite;
}
@media screen and (max-width: 1150px) {
  #diversity .voiceArea .twoColumn .icon05::before {
    width: 10.6406vw;
    top: 0px;
    left: -24.0885vw;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn .icon05::before {
    width: 21.2186vw;
    top: auto;
    left: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn:nth-child(3) {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  #diversity .voiceArea .twoColumn:last-child {
    margin-top: 0;
  }
}
#diversity .lastmessage {
  margin: 100px auto 0;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #diversity .lastmessage {
    margin: 8.8542vw auto 0;
  }
}
@media screen and (max-width: 767px) {
  #diversity .lastmessage {
    margin: 17.3333vw auto 0;
    width: 93.6%;
    text-align: left;
  }
}
#diversity .lastmessage p {
  font-family: "M PLUS 1p", serif;
  font-size: 2.1rem;
  font-weight: 800;
}
@media screen and (max-width: 1150px) {
  #diversity .lastmessage p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #diversity .lastmessage p {
    font-size: 1.8rem;
  }
}
#diversity .lastmessage p span {
  font-size: 3.1rem;
  font-weight: 900;
  color: #e41e6f;
}
@media screen and (max-width: 1150px) {
  #diversity .lastmessage p span {
    font-size: 2.3rem;
  }
}
#diversity .lastmessage p:nth-of-type(2) {
  margin-bottom: 1.9531vw;
}
@media screen and (max-width: 767px) {
  #diversity .lastmessage p:nth-child(1), #diversity .lastmessage p:nth-child(2) {
    text-align: center;
  }
}

/* ==========================================

社員インタビュー

========================================== */
#interview .mainArea {
  aspect-ratio: 2407/1409;
  position: relative;
  max-width: 1206px;
  width: 96.0468%;
  background: url(/recruit/interview/img/main_image.jpg) no-repeat center center/cover;
  margin: 0 auto 0;
  margin-top: 176px;
}
@media screen and (max-width: 1150px) {
  #interview .mainArea {
    margin-top: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .mainArea {
    width: 120%;
    margin-top: 8vw;
    margin-left: -10%;
  }
}
#interview .headTitle {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 104px;
}
@media screen and (max-width: 1150px) {
  #interview .headTitle {
    left: 11.7188vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .headTitle {
    width: 100%;
    left: 12.2%;
  }
}
#interview .headTitle h3 {
  font-family: "Open Sans", serif;
  font-weight: 700;
  font-size: 5.4rem;
  line-height: 1;
  margin-bottom: 10px;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #interview .headTitle h3 {
    font-size: 4rem;
    margin-bottom: 0.651vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .headTitle h3 {
    font-size: 3.6rem;
  }
}
#interview .headTitle h2 {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 2rem;
  letter-spacing: 0.28rem;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #interview .headTitle h2 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .headTitle h2 {
    font-size: 1.3rem;
  }
}
#interview .headTitle .txtArea {
  position: relative;
  margin-top: 131px;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #interview .headTitle .txtArea {
    margin-top: 11.7188vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .headTitle .txtArea {
    position: absolute;
    bottom: -38.6667vw;
    left: -10%;
    text-align: center;
    width: 100%;
  }
}
#interview .headTitle .txtArea::before {
  content: "";
  position: absolute;
  aspect-ratio: 1/1;
  width: 98px;
  background: url(/recruit/interview/img/interviewer.png) no-repeat center center/cover;
  top: -108px;
  left: 0;
  animation: fuwafuwa01 3s infinite;
}
@media screen and (max-width: 1150px) {
  #interview .headTitle .txtArea::before {
    width: 9.375vw;
    top: -10.67708vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .headTitle .txtArea::before {
    display: none;
  }
}
#interview .headTitle .txtArea p {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  #interview .headTitle .txtArea p {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .headTitle .txtArea p {
    font-size: 1.4rem;
  }
}
#interview .interviewArea {
  background: url(/recruit/interview/img/bg.svg) no-repeat center center/800px auto;
  position: relative;
  max-width: 1206px;
  width: 96.0468%;
  margin: 100px auto 150px;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea {
    margin: 6.5104vw auto 10.4167vw;
    background-size: 74.8698vw auto;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea {
    margin: 16vw auto 13.3333vw;
    background: none;
  }
}
#interview .interviewArea .questionArea {
  position: absolute;
  top: 56%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 50%;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .questionArea {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .questionArea {
    position: static;
    background: url(/recruit/interview/img/bg.svg) no-repeat center center/cover;
    width: 100%;
    aspect-ratio: 27/17;
    transform: translate(0, 0);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 2.6667vw;
  }
  #interview .interviewArea .questionArea > div {
    width: 100%;
  }
}
#interview .interviewArea .questionArea h3 {
  font-family: "Sacramento", serif;
  font-weight: 400;
  font-size: 3.1rem;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .questionArea h3 {
    font-size: 2.9rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .questionArea h3 {
    width: 100%;
    font-size: 2.1rem;
  }
}
#interview .interviewArea .questionArea h3 span {
  font-size: 5.2rem;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .questionArea h3 span {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .questionArea h3 span {
    font-size: 3.6rem;
  }
}
#interview .interviewArea .questionArea p {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 3.7rem;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .questionArea p {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .questionArea p {
    width: 100%;
    font-size: 2.1rem;
    letter-spacing: -0.15rem;
  }
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .questionArea {
    top: 56%;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .questionArea {
    top: auto;
  }
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(2) {
    background-position: center 15.625vw;
  }
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(2) .questionArea {
    top: 60%;
  }
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(3) {
    background-position: center 60%;
  }
}
#interview .interviewArea:nth-of-type(4) {
  background-position: bottom center;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(4) {
    background-position: center center;
  }
}
#interview .interviewArea:nth-of-type(4) .questionArea {
  top: 52%;
}
#interview .interviewArea:nth-of-type(5) .questionArea {
  top: 52%;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(6) {
    background-position: center 40%;
  }
}
#interview .interviewArea:nth-of-type(6) .questionArea {
  top: 47%;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(7) {
    background-position: center 70%;
  }
}
#interview .interviewArea:nth-of-type(7) .questionArea {
  top: 52%;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(7) .questionArea {
    top: 60%;
  }
}
#interview .interviewArea:nth-of-type(8) {
  background-position: bottom center;
}
#interview .interviewArea:nth-of-type(8) .answerArea > div:nth-child(7) {
  margin-right: 0;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(8) {
    background-position: center 60%;
  }
}
#interview .interviewArea:nth-of-type(8) .questionArea {
  top: 52%;
}
#interview .interviewArea:nth-of-type(9) .questionArea {
  top: 52%;
}
#interview .interviewArea:nth-of-type(10) .questionArea {
  top: 52%;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea:nth-of-type(10) .questionArea {
    top: 50%;
  }
}
#interview .interviewArea:nth-of-type(n+3) {
  margin-top: 0;
}
#interview .interviewArea:last-child {
  margin-bottom: 0;
}
#interview .interviewArea .answerArea {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea {
    display: block;
  }
}
#interview .interviewArea .answerArea > div {
  width: 24.3781%;
  margin-bottom: 200px;
  display: flex;
  flex-wrap: wrap;
  align-self: flex-end;
  margin-right: 0.8292%;
}
#interview .interviewArea .answerArea > div:nth-child(4n) {
  margin-right: 0;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div {
    margin-bottom: 22.7865vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div {
    width: 100%;
    margin-bottom: 6vw;
  }
}
#interview .interviewArea .answerArea > div h4 {
  order: 2;
  width: 100%;
  font-family: "M PLUS 1p", serif;
  font-weight: 500;
  font-size: 1.8rem;
  text-align: center;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div h4 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div h4 {
    font-size: 1.8rem;
    margin-top: 2.6667vw;
  }
}
#interview .interviewArea .answerArea > div h4 span.occupation {
  font-size: 1.2rem;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div h4 span.occupation {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div h4 span.occupation {
    font-size: 1.2rem;
  }
}
#interview .interviewArea .answerArea > div h4 span.honor {
  font-size: 1.4rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div h4 span.honor {
    font-size: 1.2rem;
  }
}
#interview .interviewArea .answerArea > div h4 span.date {
  font-size: 1rem;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div h4 span.date {
    font-size: 0.8rem;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div h4 span.date {
    font-size: 1rem;
    display: inline;
  }
}
#interview .interviewArea .answerArea > div > div {
  order: 1;
  width: 100%;
  position: relative;
  display: inline-block;
  margin-bottom: 10px;
  padding: 15px 20px;
  border: 2px solid #00a0e9;
  border-radius: 30px;
  background-color: #ffffff;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div > div {
    min-height: 26.6667vw;
    display: flex;
    align-items: center;
  }
}
#interview .interviewArea .answerArea > div > div p {
  font-family: "M PLUS 1p", serif;
  font-weight: 400;
  font-size: 1.6rem;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div > div p {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div > div p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div > div {
    margin-bottom: 1.3021vw;
    padding: 1.3021vw 1.9531vw;
    border-radius: 3.9063vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div > div {
    padding: 2.6667vw 5.3333vw;
    border-radius: 8vw;
  }
}
#interview .interviewArea .answerArea > div > div::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 10px 5px 0 5px;
  border-color: #00a0e9 transparent transparent;
  translate: -50% 100%;
}
#interview .interviewArea .answerArea > div > div::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 5.5px 2.8px 0 2.8px;
  border-color: #ffffff transparent transparent;
  translate: -50% 100%;
}
#interview .interviewArea .answerArea > div:nth-child(n+5) {
  margin-bottom: 0;
  align-self: flex-start;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:nth-child(n+5) {
    margin-bottom: 6vw;
  }
}
#interview .interviewArea .answerArea > div:nth-child(n+5) h4 {
  order: 1;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:nth-child(n+5) h4 {
    order: 2;
  }
}
#interview .interviewArea .answerArea > div:nth-child(n+5) div {
  order: 2;
  margin-top: 10px;
  margin-bottom: 0;
}
@media screen and (max-width: 1150px) {
  #interview .interviewArea .answerArea > div:nth-child(n+5) div {
    margin-top: 1.3021vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:nth-child(n+5) div {
    order: 1;
  }
}
#interview .interviewArea .answerArea > div:nth-child(n+5) div::before {
  top: 0;
  bottom: auto;
  border-width: 0 5px 10px 5px;
  border-color: transparent transparent #00a0e9;
  translate: -50% -100%;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:nth-child(n+5) div::before {
    top: auto;
    bottom: 0;
    border-width: 10px 5px 0 5px;
    border-color: #00a0e9 transparent transparent;
    translate: -50% 100%;
  }
}
#interview .interviewArea .answerArea > div:nth-child(n+5) div::after {
  top: 0;
  bottom: auto;
  border-width: 0 2.8px 5.5px 2.8px;
  border-color: transparent transparent #ffffff;
  translate: -50% -100%;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:nth-child(n+5) div::after {
    top: auto;
    bottom: 0;
    border-width: 5.5px 2.8px 0 2.8px;
    border-color: #ffffff transparent transparent;
    translate: -50% 100%;
  }
}
#interview .interviewArea .answerArea > div:nth-child(n+6) > div {
  border: 2px solid #e5004f;
}
#interview .interviewArea .answerArea > div:nth-child(n+6) > div::before {
  border-color: transparent transparent #e5004f;
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:nth-child(n+6) > div::before {
    border-color: #e5004f transparent transparent;
  }
}
@media screen and (max-width: 767px) {
  #interview .interviewArea .answerArea > div:last-child {
    margin-bottom: 0;
  }
}
#interview .movieArea {
  margin: 0 auto 0;
  max-width: 1206px;
  width: 96.0468%;
  position: relative;
}
@media screen and (max-width: 767px) {
  #interview .movieArea {
    width: 100%;
  }
}
#interview .movieIcon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
#interview .movieIcon img {
  width: 67px;
  margin: 0 auto;
}
@media screen and (max-width: 1150px) {
  #interview .movieIcon img {
    width: 8.724vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .movieIcon img {
    width: 8vw;
  }
}
#interview .movieIcon p {
  font-family: "Open Sans", serif;
  font-size: 2.3rem;
  font-weight: 800;
  letter-spacing: -0.025rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  #interview .movieIcon p {
    font-size: 1.8rem;
  }
}
#interview .title {
  position: absolute;
  left: 30px;
  top: 30px;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #interview .title {
    left: 2.6042vw;
    top: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .title {
    left: 2.6667vw;
    top: 2.6667vw;
  }
}
#interview .title h2 {
  position: relative;
  font-family: "Open Sans", serif;
  font-size: 5.8rem;
  font-weight: 400;
  letter-spacing: -0.1rem;
}
@media screen and (max-width: 1150px) {
  #interview .title h2 {
    font-size: 3.7rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .title h2 {
    font-size: 2.6rem;
  }
}
#interview .title h2 span {
  font-size: 2.9rem;
  font-weight: 200;
  display: block;
  letter-spacing: 0;
}
@media screen and (max-width: 1150px) {
  #interview .title h2 span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .title h2 span {
    font-size: 1.8rem;
  }
}
#interview .txt {
  position: absolute;
  left: 30px;
  bottom: 35px;
  padding: 10px 20px;
  background-color: #000;
  color: #fff;
}
@media screen and (max-width: 1150px) {
  #interview .txt {
    left: 2.6042vw;
    bottom: 2.6042vw;
    padding: 0.651vw 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .txt {
    left: 0;
    bottom: 0;
    padding: 1.9531vw;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.6);
  }
}
#interview .txt h3 {
  font-size: 1.9rem;
  font-weight: 700;
}
@media screen and (max-width: 1150px) {
  #interview .txt h3 {
    font-size: 1.6rem;
  }
}
#interview .txt .text {
  font-size: 1.7rem;
  font-weight: 500;
}
@media screen and (max-width: 1150px) {
  #interview .txt .text {
    font-size: 1.4rem;
  }
}

/* ==========================================

FAQ

========================================== */
#faq .contentsWidth {
  max-width: 1206px;
  width: 96.0468%;
  margin: 100px auto 0;
}
@media screen and (max-width: 1150px) {
  #faq .contentsWidth {
    margin-top: 7.1615vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .contentsWidth {
    width: 100%;
    margin-top: 0;
  }
}
#faq .pageLink {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #faq .pageLink {
    justify-content: space-around;
    padding-top: 0.22225vw;
  }
}
#faq .pageLink li {
  width: 19.32%;
}
@media screen and (max-width: 767px) {
  #faq .pageLink li {
    width: 19.7333%;
  }
}
#faq .pageLink li a {
  display: block;
  background-color: #3f3f40;
  color: #fff;
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 1.8rem;
  text-align: center;
  height: 56px;
  line-height: 56px;
}
@media screen and (max-width: 1150px) {
  #faq .pageLink li a {
    font-size: 1.1rem;
    height: 4.4271vw;
    line-height: 4.4271vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .pageLink li a {
    font-size: 1.2rem;
    height: 100%;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5.3333vw 1.3333vw;
    font-weight: 800;
  }
}
#faq .qaBox {
  max-width: 678px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 1150px) {
  #faq .qaBox {
    max-width: initial;
    margin-bottom: 6.5104vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .qaBox {
    width: 96.0648%;
    margin-bottom: 8vw;
  }
}
#faq .qaBox:last-of-type {
  margin-bottom: 0;
}
#faq .question,
#faq .answer {
  display: flex;
}
#faq .question h4,
#faq .answer h4 {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 4.5rem;
  width: 55px;
  height: 55px;
  line-height: 55px;
  text-align: center;
  color: #fff;
  margin-right: 20px;
}
@media screen and (max-width: 1150px) {
  #faq .question h4,
  #faq .answer h4 {
    font-size: 3.7rem;
    width: 5.8594vw;
    height: 5.8594vw;
    line-height: 5.8594vw;
    margin-right: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .question h4,
  #faq .answer h4 {
    font-size: 3.4rem;
    width: 11.2vw;
    height: 11.2vw;
    line-height: 11.2vw;
    margin-right: 2.6667vw;
  }
}
#faq .question div,
#faq .answer div {
  width: 603px;
}
@media screen and (max-width: 1150px) {
  #faq .question div,
  #faq .answer div {
    width: 87.5832vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .question div,
  #faq .answer div {
    width: 82.1801vw;
  }
}
#faq .question {
  align-items: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 1150px) {
  #faq .question {
    margin-bottom: 2.6042vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .question {
    margin-bottom: 5.3333vw;
  }
}
@media screen and (max-width: 767px) {
  #faq .question.overTxt {
    align-items: flex-start;
  }
}
#faq .question h4 {
  background-color: #29abe2;
}
#faq .question p {
  font-family: "M PLUS 1p", serif;
  font-weight: 800;
  font-size: 2.1rem;
}
@media screen and (max-width: 1150px) {
  #faq .question p {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  #faq .question p {
    font-size: 1.6rem;
  }
}
#faq .answer.sigleLine div {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1150px) {
  #faq .answer.singleLIneTablet div {
    display: flex;
    align-items: center;
  }
}
#faq .answer h4 {
  background-color: #e5004f;
}
#faq .answer p {
  font-family: "M PLUS 1p", serif;
  font-weight: 400;
  font-size: 1.8rem;
}
@media screen and (max-width: 1150px) {
  #faq .answer p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #faq .answer p {
    font-size: 1.4rem;
  }
}

/* ======================================================

inview 

====================================================== */
.fadeIn_left,
.fadeIn_left02,
.fadeIn_left03 {
  opacity: 0;
  transform: translate(-50%, 0);
  transition: 0.2s;
}
.fadeIn_left.is-show,
.fadeIn_left02.is-show,
.fadeIn_left03.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn_left02.is-show {
  transition-delay: 0.5s;
}

.fadeIn_left03.is-show {
  transition-delay: 1s;
}

.fadeIn_right,
.fadeIn_right02,
.fadeIn_right03 {
  opacity: 0;
  transform: translate(50%, 0);
  transition: 0.2s;
}
.fadeIn_right.is-show,
.fadeIn_right02.is-show,
.fadeIn_right03.is-show {
  transform: translate(0, 0);
  opacity: 1;
  transition-delay: 0.5s;
}

.fadeIn_right02.is-show {
  transition-delay: 1s;
}

.fadeIn_right03.is-show {
  transition-delay: 1.5s;
}

.fadeIn,
.fadeIn02,
.fadeIn03 {
  opacity: 0;
  transition: all 2s ease-out;
}
.fadeIn.is-show,
.fadeIn02.is-show,
.fadeIn03.is-show {
  opacity: 1;
}

.fadeIn02.is-show {
  transition-delay: 0.5s;
}

.fadeIn03.is-show {
  transition-delay: 1s;
}

.fadeIn_up,
.fadeIn_up02,
.fadeIn_up03,
.fadeIn_up04,
.fadeIn_up05,
.fadeIn_upPCSP,
.fadeIn_upPCSP02,
.fadeIn_upPCSP03 {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 1s;
}
.fadeIn_up.is-show,
.fadeIn_up02.is-show,
.fadeIn_up03.is-show,
.fadeIn_up04.is-show,
.fadeIn_up05.is-show,
.fadeIn_upPCSP.is-show,
.fadeIn_upPCSP02.is-show,
.fadeIn_upPCSP03.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn_up02.is-show,
.fadeIn_upPCSP02.is-show {
  transition-delay: 0.2s;
}

.fadeIn_up03.is-show,
.fadeIn_upPCSP03.is-show {
  transition-delay: 0.4s;
}

@media screen and (max-width: 767px) {
  .fadeIn_upPCSP02.is-show,
  .fadeIn_upPCSP03.is-show {
    transition-delay: 0s;
  }
}

.fadeIn_up04.is-show {
  transition-delay: 0.6s;
}

.fadeIn_up05.is-show {
  transition-delay: 0.8s;
}

.fadeIn_down,
.fadeIn_down02,
.fadeIn_down03,
.fadeIn_down04 {
  opacity: 0;
  transform: translate(0, -50%);
  transition: 1s;
}
.fadeIn_down.is-show,
.fadeIn_down02.is-show,
.fadeIn_down03.is-show,
.fadeIn_down04.is-show {
  transform: translate(0, 0);
  opacity: 1;
  transition-delay: 0.2s;
}

.fadeIn_down02.is-show {
  transition-delay: 0.4s;
}

.fadeIn_down03.is-show {
  transition-delay: 0.6s;
}

.fadeIn_down04.is-show {
  transition-delay: 0.8s;
}

.txtAnim,
.txtAnim02,
.txtAnim03,
.txtAnim04,
.txtAnim05,
.txtAnim06,
.txtAnimPCSP,
.txtAnimPCSP02,
.txtAnimPCSP03,
.txtAnimPCSP04,
.txtAnimPCSP05,
.txtAnimPCSP06 {
  transition: all 0.8s ease-out;
  clip-path: inset(0 100% 0 0);
}
.txtAnim.is-show,
.txtAnim02.is-show,
.txtAnim03.is-show,
.txtAnim04.is-show,
.txtAnim05.is-show,
.txtAnim06.is-show,
.txtAnimPCSP.is-show,
.txtAnimPCSP02.is-show,
.txtAnimPCSP03.is-show,
.txtAnimPCSP04.is-show,
.txtAnimPCSP05.is-show,
.txtAnimPCSP06.is-show {
  clip-path: inset(-5px 0 -5px 0);
}

.txtAnim02.is-show,
.txtAnimPCSP02.is-show {
  transition-delay: 0.5s;
}

.txtAnim03.is-show,
.txtAnimPCSP03.is-show {
  transition-delay: 1s;
}

.txtAnim04.is-show,
.txtAnimPCSP04.is-show {
  transition-delay: 1.5s;
}

.txtAnim05.is-show,
.txtAnimPCSP05.is-show {
  transition-delay: 2s;
}

.txtAnim06.is-show,
.txtAnimPCSP06.is-show {
  transition-delay: 2.5s;
}

@media screen and (max-width: 767px) {
  .txtAnimPCSP.is-show,
  .txtAnimPCSP03.is-show,
  .txtAnimPCSP05.is-show {
    transition-delay: 0.5s;
  }
}

@media screen and (max-width: 767px) {
  .txtAnimPCSP02.is-show,
  .txtAnimPCSP04.is-show,
  .txtAnimPCSP06.is-show {
    transition-delay: 1s;
  }
}

.txtAnim_right {
  transition: all 1.5s ease-out;
  clip-path: inset(0 0 0 100%);
}
.txtAnim_right.is-show {
  clip-path: inset(-5px 0 -5px 0);
}

.nextAnim {
  transition-delay: 0.5s;
}

.fuwafuwa01 {
  animation: fuwafuwa01 3s infinite;
}

.fuwafuwa02 {
  animation: fuwafuwa01 3s 0.5s infinite;
}

@keyframes fuwafuwa01 {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, 10px);
  }
}
a.js-modal-video {
  display: inline-block;
}/*# sourceMappingURL=style.css.map */