@charset "UTF-8";
/*----------------------------------------------------
  中途採用ページ
----------------------------------------------------*/
/*-------------------------------------------*/
/* COMMON(サイト基本設定)                      */
/*-------------------------------------------*/
/*▼▼▼▼▼▼▼▼▼▼▼reset ▼▼▼▼▼▼▼▼▼▼▼▼*/
/*要素のフォントサイズやマージン・パディングをリセットしています*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-weight: normal;
}

/*行の高さをフォントサイズと同じにしています*/
body {
  line-height: 1;
}

/*新規追加要素のデフォルトはすべてインライン要素になっているので、section要素などをブロック要素へ変更しています*/
article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section {
  display: block;
}

strong {
  font-weight: bold;
}

/*nav要素内ulのマーカー（行頭記号）を表示しないようにしています*/
/*nav ul {
    list-style:none;
}*/
ol, ul {
  list-style: none;
}

/*引用符の表示が出ないようにしています*/
blockquote, q {
  quotes: none;
}

/*blockquote要素、q要素の前後にコンテンツを追加しないように指定しています*/
blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

/*a要素のフォントサイズなどをリセットしフォントの縦方向の揃え位置を親要素のベースラインに揃えるようにしています*/
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* ins要素のデフォルトをセットし、色を変える場合はここで変更できるようにしています */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* mark要素のデフォルトをセットし、色やフォントスタイルを変える場合はここで変更できるようにしています
また、mark要素とは、文書内の検索結果で該当するフレーズをハイライトして、目立たせる際に使用するようです。*/
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

/*テキストに打ち消し線が付くようにしています*/
del {
  text-decoration: line-through;
}

/*IEではデフォルトで点線を下線表示する設定ではないので、下線がつくようにしています
また、マウスオーバー時にヘルプカーソルの表示が出るようにしています*/
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/*隣接するセルのボーダーを重ねて表示し、間隔を0に指定しています*/
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*水平罫線のデフォルトである立体的な罫線を見えなくしています*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/*縦方向の揃え位置を中央揃えに指定しています*/
input, select {
  vertical-align: middle;
}

/*画像を縦に並べた時に余白が出ないように*/
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

/*box-sizingを全ブラウザに対応*/
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/*▼▼▼▼▼▼▼▼▼▼▼BASE基本設定(import) ▼▼▼▼▼▼▼▼▼▼▼▼*/
* {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-style: normal;
}

html {
  margin-top: 0 !important;
}

body {
  margin: 0;
  padding: 0;
  font-family: YuGothic, "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", sans-serif;
  width: 100%;
  height: 100%;
  background: #FEFEFE;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
  line-height: 1.8;
}

.noto {
  font-family: "Noto Sans JP", sans-serif;
}

.barlow {
  font-family: "Barlow", sans-serif;
}

.nunito {
  font-family: "Nunito Sans", sans-serif !important;
  font-weight: 700;
}

.din {
  font-family: din-condensed, sans-serif !important;
  font-weight: 400;
  font-style: normal;
}

a {
  outline: none;
  text-decoration: none;
}

a:link {
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

a img {
  border: none;
}

li {
  list-style-type: none;
}

.noto {
  font-family: "Noto Sans JP", sans-serif;
}

/*-------------------------------------------*/
/* フォーム部品 　 　 　 　                     */
/*-------------------------------------------*/
/* iOSでのデフォルトスタイルをリセット */
input[type=submit],
input[type=button] {
  border-radius: 0px;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

input:focus, select:focus, textarea:focus {
  outline: 0px transparent solid;
}

input, label, select, textarea {
  vertical-align: middle;
}

input, select, textarea {
  color: #3E3E3E;
  padding: 1em;
  background: #E4E4E4;
  border: none;
  width: 100%;
  font-size: 16px;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

input[type=submit],
input[type=button] {
  background: transparent;
  color: #fff;
  font-weight: bold;
  padding: 1em 0;
  text-align: left;
}

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

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

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

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

input::placeholder {
  color: #B7B7B7;
}

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

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

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

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

input::placeholder {
  color: #B7B7B7;
}

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

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

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

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

textarea::placeholder {
  color: #B7B7B7;
}

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

input[type=text], input[type=email] {
  font-size: 16px;
}
input[type=text].mwidth, input[type=email].mwidth {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
input[type=text]:focus, input[type=email]:focus {
  background: #E4E4E4;
}

textarea {
  border: 1px solid #E0E7E8;
  width: 100%;
  padding: 10px;
  font-size: 16px;
  border-radius: 0 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
textarea:focus {
  background: #E4E4E4;
}

/**********ラジオボタンとチェックボックス***********/
input[type=radio], input[type=checkbox] {
  display: none;
}

.radio, .checkbox {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: inline-block;
  margin: 0 10px 4px 0;
  padding: 8px 8px 8px 36px;
  border-radius: 8px;
  background-color: #ffffff;
  vertical-align: middle;
  cursor: pointer;
}

.radio:hover, .checkbox:hover {
  background-color: #E4E4E4;
}

.radio:hover:after, .checkbox:hover:after {
  border-color: #E0E7E8;
}

.radio:after, .checkbox:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 9px;
  display: block;
  margin-top: -10px;
  width: 16px;
  height: 16px;
  border: 2px solid #E0E7E8;
  border-radius: 6px;
  content: "";
}

.radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 14px;
  display: block;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #E03124;
  content: "";
  opacity: 0;
}

input[type=radio]:checked + .radio:before {
  opacity: 1;
}

.checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 15px;
  display: block;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 3px solid #E03124;
  border-bottom: 3px solid #E03124;
  content: "";
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}

.selectWrap {
  width: 260px;
  display: inline-block;
  position: relative;
  padding: 0 30px 0 0;
  background: #E4E4E4;
}
.selectWrap::after {
  content: "▼";
  font-size: 0.8em;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%) scaleX(1.5);
      -ms-transform: translateY(-50%) scaleX(1.5);
          transform: translateY(-50%) scaleX(1.5);
}

.mw_wp_form_confirm .selectWrap {
  background: transparent;
  padding: 0;
}
.mw_wp_form_confirm .selectWrap::after {
  content: none;
}

select {
  width: 100%;
}
select option {
  padding: 0.8em;
}

.req:after {
  content: "*";
  color: #002248;
  font-weight: bold;
}

/*-------------------------------------------*/
/* 404見つかりませんでした                      */
/*-------------------------------------------*/
#not_found .inner {
  border-bottom: 1px solid #e6e6e6;
  padding: 30px 0 60px 0;
}
#not_found .inner h1 {
  color: #4b4b4b;
  font-size: 120px;
  text-align: center;
  font-weight: normal;
  margin-bottom: 30px;
}
#not_found .inner .lead {
  font-size: 35px;
  text-align: center;
  vertical-align: middle;
  margin-bottom: 30px;
}
#not_found .inner .lead span {
  vertical-align: middle;
  font-size: 16px;
}
#not_found .inner .text {
  font-size: 13px;
  text-align: center;
  line-height: 1.6;
}
#not_found .totop {
  text-align: center;
  padding: 60px 0;
}
#not_found .totop a {
  display: inline-block;
  padding: 20px 60px;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  background: #bcbcbc;
  color: #fff;
}

/*▲▲▲▲▲▲▲▲▲▲▲　BASE基本設定終了 ▲▲▲▲▲▲▲▲▲▲*/
html {
  color: #3f3f3f;
}

a {
  color: #3f3f3f;
}

a:link {
  color: #3f3f3f;
}

a:visited {
  color: #3f3f3f;
}

a:hover {
  color: #3f3f3f;
}

.lead {
  color: #3f3f3f;
}

/*=================
  Title
=================*/
.page_title .eng {
  background: #042d64;
  color: #fff;
}
.page_title .ja::after {
  background-image: url(../images/recruit_career/dot.svg);
}
@media all and (min-width: 751px) {
  .page_title .ja::before, .page_title .ja::after {
    background-image: url(../images/recruit_career/dot_min.svg);
  }
}

.sec_title .eng {
  background: #042d64;
  color: #fff;
}
.sec_title .ja::after {
  background-image: url(../images/recruit_career/dot.svg);
}
@media all and (min-width: 751px) {
  .sec_title.center .ja::before, .sec_title.center .ja::after {
    background-image: url(../images/recruit_career/dot_min.svg);
  }
}

/* 読み込み中マーク */
.wpcf7-spinner {
  display: none;
}

/* 未入力や送信完了の際に表示されるテキスト */
.wpcf7-response-output {
  display: none;
}

/*=================
  ボタン
=================*/
.btn_switch {
  border-color: #042d64;
  background: #042d64;
}
.btn_switch .switch .round {
  background: #042d64;
}
@media all and (min-width: 1025px) {
  .btn_switch {
    background: transparent;
  }
  .btn_switch .text {
    color: #042d64;
  }
  .btn_switch .switch .bar {
    background: #042d64;
  }
  .btn_switch .switch .round {
    background: transparent;
    border-color: #042d64;
  }
  .btn_switch:hover {
    background: #042d64;
  }
  .btn_switch:hover .text {
    color: #fff;
  }
  .btn_switch:hover .switch .bar {
    background: #fff;
  }
  .btn_switch:hover .switch .round {
    background: #042d64;
    border-color: #fff;
  }
}

/*=================
  VOICE
=================*/
.list_voice .item {
  border-color: #042d64;
}
.list_voice .item .voice_info dt {
  background: #042d64;
}
.list_voice .item .voice_info + .voice_info dt {
  background: #4069A8;
}
.list_voice .item .title_after_bar {
  color: #3f3f3f;
}

/*=================
  haeder
=================*/
#header {
  background: #042d64;
}

@media screen and (min-width: 1281px) {
  #btnEntry {
    background: transparent;
  }
  #btnEntry::after {
    background-image: url(../images/recruit_career/entry_bg2.svg);
  }
}

@media screen and (max-width: 1280px) {
  #menu {
    background: #042d64;
  }
}

#btnMenu span {
  background: #042d64;
}

/*=================
  footer
=================*/
#footer {
  color: #3f3f3f;
}
#footer .f_logo::after {
  background-image: url(../images/recruit_career/recruit_blue.svg);
}
#footer .f_menu a {
  color: #3f3f3f;
}
@media all and (min-width: 1025px) {
  #footer .f_menu .hvr-underline-from-left::before {
    background-color: #3f3f3f;
  }
  #footer .f_menu .hvr-underline-from-left:hover span {
    color: #3f3f3f;
  }
}

/*=================
  リクルートTOP
=================*/
#pageRecruit #top_mv {
  background: #042d64;
}
#pageRecruit #top_mv #mv_scroll .img {
  background-image: url(../images/recruit_career/scroll.svg);
}
@media all and (min-width: 1025px) {
  #pageRecruit #top_mv #mv_scroll .img {
    background-image: url(../images/recruit_career/scroll.svg);
  }
}
#pageRecruit #products .products .item {
  border-color: #042d64;
}
#pageRecruit #works {
  background-image: none;
  background-color: #244f88;
}
#pageRecruit #works .card .card_min_title {
  background: #D4E7F8;
  color: #3f3f3f;
}
#pageRecruit #works .btn_more .switch .bar {
  background: #042d64;
}
#pageRecruit #works .btn_more .switch .round {
  border-color: #042d64;
  background: #fff;
}
#pageRecruit #voice {
  background-image: none;
}
#pageRecruit #knowmore .blue_title {
  background: #D4E7F8;
}
#pageRecruit #knowmore .value {
  color: #042d64;
}
#pageRecruit #entry .btn_go_entry {
  background: #042d64;
}

/*=================
  先輩社員の声
=================*/
#pageVoice .dept_group .ja {
  color: #042d64;
}

/*=================
  募集要項
=================*/
#pageRequirements .flow li:not(:last-child)::after {
  border-color: #042d64 transparent transparent transparent;
}
#pageRequirements #entry .btn_go_entry {
  background: #042d64;
}

/*=================
  エントリー
=================*/
#pageEntry.confirm .form_area .row {
  color: #3f3f3f;
}
#pageEntry.confirm .form_area .row label {
  color: #042d64;
}

.mwform-checkbox-field-text {
  color: #3f3f3f;
}

.mwform-checkbox-field-text::before {
  border-right: 2px solid #042d64;
  border-bottom: 2px solid #042d64;
}