@charset "UTF-8";
/* CSS Document */
/*
Theme Name: ネクサスイノベーション
*/
* {
  margin: 0;
  padding: 0; }

body, html {
  scroll-behavior: smooth; }

/* =======================================================================================================================
　　　　　　　　　全体
======================================================================================================================= */
body {
  font-family: 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.67em;
  letter-spacing: 0;
  background: #fff; }
  @media screen and (min-width: 1920px) {
    body {
      font-size: 18px;
      font-size: 0.9375vw; } }
  @media screen and (max-width: 1520px) {
    body {
      font-size: 1.25vw; } }
  @media screen and (max-width: 980px) {
    body {
      font-size: 2vw; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 15px;
      font-size: 3.5vw; } }

/* =======================================================================================================================
　　　　　　　　　レイアウト
======================================================================================================================= */
.innerbox {
  width: 79.167%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 5.556em;
  margin: 0 auto;
  z-index: 3; }
  @media screen and (max-width: 1520px) {
    .innerbox {
      min-width: inherit;
      width: 100%; } }
  @media screen and (max-width: 480px) {
    .innerbox {
      padding: 0 2.778em; } }

#wrapper {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  overflow: hidden; }
  #wrapper::before {
    content: "";
    display: block;
    position: fixed;
    top: -2.5em;
    left: -4.5em;
    right: auto;
    bottom: auto;
    width: 54.6em;
    height: 80em;
    background: url("../../../images/logo_icon.svg") no-repeat 0 0;
    background-size: contain;
    z-index: 3;
    opacity: 0.4;
    filter: alpha(opacity=40); }
    @media screen and (max-width: 980px) {
      #wrapper::before {
        top: -1em;
        -webkit-transform: scale(0.6);
        -moz-transform: scale(0.6);
        -ms-transform: scale(0.6);
        -o-transform: scale(0.6);
        transform: scale(0.6);
        -webkit-transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
        -o-transform-origin: 0 0;
        transform-origin: 0 0; } }
    @media screen and (max-width: 480px) {
      #wrapper::before {
        top: -0.5em;
        -webkit-transform: scale(0.4);
        -moz-transform: scale(0.4);
        -ms-transform: scale(0.4);
        -o-transform: scale(0.4);
        transform: scale(0.4);
        -webkit-transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
        -o-transform-origin: 0 0;
        transform-origin: 0 0; } }

#front-page #wrapper {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 2;
  background: #fff; }

#footer {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5.556em 0;
  z-index: 5; }
  @media screen and (max-width: 980px) {
    #footer {
      padding-bottom: 11.111em; } }
  @media screen and (max-width: 480px) {
    #footer {
      padding-top: 0; } }

/* 動画背景 */
.mainmvbox {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  overflow: hidden;
  z-index: -1; }
  .mainmvbox .mainmv {
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -1; }

/* ===========================================================================================================
　　　　　　　　　下層ページ
=========================================================================================================== */
/* -------------------------- ページヘッダー ------------------------------------------- */
.page-header {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5.556em 0;
  z-index: 5;
  background: -webkit-linear-gradient(135deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  background: -moz-linear-gradient(135deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  background: -o-linear-gradient(135deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  background: linear-gradient(-45deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6)); }
  @media screen and (max-width: 1700px) {
    .page-header {
      padding-left: 5.556em; } }
  @media screen and (max-width: 980px) {
    .page-header {
      padding-left: 0; } }

/* -------------------------- 2カラムページ ------------------------------------------- */
.wrap {
  width: 100%;
  padding: 2em 0 4em 0;
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  align-items: stretch; }

#primary, #secondary {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

#primary {
  width: 80%;
  padding-right: 5%; }
  @media screen and (max-width: 1520px) {
    #primary {
      width: 70%; } }
  @media screen and (max-width: 480px) {
    #primary {
      width: 100%;
      padding-right: 0;
      padding-bottom: 4em; } }

#secondary {
  width: 20%; }
  @media screen and (max-width: 1520px) {
    #secondary {
      width: 30%; } }
  @media screen and (max-width: 480px) {
    #secondary {
      width: 100%; } }

/* 欧文フォント */
.eg {
  font-family: century-gothic, sans-serif;
  font-weight: 700; }

/* 欧文装飾フォント */
.deco {
  font-family: duos-round, sans-serif;
  font-weight: 400; }

/* 見出し */
.egjp_ttl {
  font-size: 1.33em;
  font-weight: 500;
  line-height: 1em;
  padding-bottom: 2.08em; }
  .egjp_ttl .eg {
    font-size: 2.5em;
    line-height: 1em;
    display: block;
    padding-bottom: 0.3em; }

.ctt_ttl {
  font-size: 1.33em;
  font-weight: 500;
  line-height: 1.25em;
  padding-bottom: 0.5em; }

.page-title {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  color: #fff; }
  .page-title .eg {
    display: block;
    font-size: 6em;
    line-height: 1em;
    padding-bottom: 0.15em; }
    @media screen and (max-width: 980px) {
      .page-title .eg {
        font-size: 4em; } }
    @media screen and (max-width: 480px) {
      .page-title .eg {
        font-size: 3em; } }
  .page-title .jp {
    display: block;
    font-size: 2em;
    line-height: 1.25em; }
    @media screen and (max-width: 480px) {
      .page-title .jp {
        font-size: 1.5em; } }

/* 文字寄せ */
.center {
  text-align: center; }

/* スマホ改行 */
@media screen and (max-width: 480px) {
  .spbr {
    display: block; } }

/* 画像 */
img {
  vertical-align: bottom; }

/* -------------------------- SVG ------------------------------------------- */
/* inovate */
.inovate_mask_st {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 7;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500; }

/* Contact us */
.contactus_mask_st,
.contactus_maskb_st {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500; }

/* between YOU and US */
.txt_between {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 0.0125em;
  font-family: century-gothic, sans-serif;
  font-weight: 700;
  font-size: 160px; }

/* more news */
.morenews_mask_st {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500; }

/* リンク */
a {
  text-decoration: none;
  color: #007bc7;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease; }
  a img {
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease; }
  a:hover {
    text-decoration: underline; }
    a:hover img {
      opacity: 0.7;
      filter: alpha(opacity=70); }

/* 検索 */
.search-form {
  width: 100%;
  text-align: center; }
  .search-form label {
    width: 100%;
    margin: 0 auto;
    text-align: center; }

input.search-field {
  width: 16em;
  line-height: 1em;
  padding: 1em;
  border: none;
  background: #afdff3; }

.search-submit {
  width: 3em;
  height: 3em;
  box-sizing: border-box;
  border: none;
  background: #007bc7;
  padding: 1em;
  position: relative;
  top: 0.15em;
  cursor: pointer; }
  .search-submit .svg {
    width: 1em;
    height: 1em;
    fill: #fff; }

/* =============== コンタクトフォーム（全ページ共通） ========================================================= */
.formbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 1500px;
  margin: 0 auto;
  padding: 3.57em 0;
  background: #fff;
  -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 980px) {
    .formbox {
      padding: 1.5em 0; } }
  .formbox h3 {
    font-family: duos-round, sans-serif;
    font-weight: 400;
    font-size: 2em;
    line-height: 1.7em;
    padding-bottom: 0.5em; }
  .formbox p {
    padding-bottom: 2em; }
  .formbox ul.formlist {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside; }
    .formbox ul.formlist li.formli {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding-bottom: 2em; }

@media screen and (max-width: 980px) {
  #webcontact p.center {
    text-align: left; } }

/* contact form 7 ------------------------------------------- */
.wpcf7-form .formctt {
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  align-items: stretch;
  position: relative;
  color: #000; }

.formname {
  width: 18em;
  text-align: right;
  padding: 1em 0.5em 0 0;
  line-height: 1em;
  color: #000; }
  .formname span {
    font-family: 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-size: 0.75em;
    letter-spacing: 0; }
    .formname span.redtext {
      color: #007bc7; }
    .formname span.bluetext {
      color: #666; }
  @media screen and (max-width: 980px) {
    .formname {
      width: 100%;
      text-align: left;
      padding: 0.5em 0; } }
  .formname::after {
    content: "："; }

span .formname {
  padding-top: 1.5em; }

.wpcf7-form-control-wrap {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -moz-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }
  @media screen and (max-width: 480px) {
    .wpcf7-form-control-wrap {
      width: 100%;
      -webkit-box-flex: 0;
      -webkit-flex: none;
      -moz-box-flex: 0;
      -ms-flex: none;
      flex: none; } }

div.wpcf7 {
  text-align: left; }

.wpcf7-form {
  /*送信ボタン*/ }
  .wpcf7-form input[type="text"],
  .wpcf7-form input[type="email"],
  .wpcf7-form input[type="tel"],
  .wpcf7-form input[type="date"],
  .wpcf7-form textarea,
  .wpcf7-form select {
    font-family: 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-size: 1em;
    line-height: 1.7em;
    box-sizing: border-box;
    padding: 0.75em;
    border-radius: 1.6em;
    border: #007bc7 solid 2px;
    color: #000;
    /* 確認ページ */ }
    @media screen and (max-width: 1500px) {
      .wpcf7-form input[type="text"],
      .wpcf7-form input[type="email"],
      .wpcf7-form input[type="tel"],
      .wpcf7-form input[type="date"],
      .wpcf7-form textarea,
      .wpcf7-form select {
        padding: 0.5em 1em; } }
    .wpcf7-form input[type="text"].wpcf7c-conf,
    .wpcf7-form input[type="email"].wpcf7c-conf,
    .wpcf7-form input[type="tel"].wpcf7c-conf,
    .wpcf7-form input[type="date"].wpcf7c-conf,
    .wpcf7-form textarea.wpcf7c-conf,
    .wpcf7-form select.wpcf7c-conf {
      background: #fff;
      border: none;
      border-radius: none; }
  .wpcf7-form input[type="text"],
  .wpcf7-form input[type="email"],
  .wpcf7-form input[type="tel"],
  .wpcf7-form textarea {
    width: 100% !important; }
    .wpcf7-form input[type="text"]::placeholder,
    .wpcf7-form input[type="email"]::placeholder,
    .wpcf7-form input[type="tel"]::placeholder,
    .wpcf7-form textarea::placeholder {
      color: #15278b;
      opacity: 0.2;
      filter: alpha(opacity=20); }
  .wpcf7-form .yubin input[type="text"] {
    max-width: 180px; }
  .wpcf7-form label .yubin {
    position: relative;
    top: 1em; }
    .wpcf7-form label .yubin br {
      display: none; }
  .wpcf7-form .btnbox {
    text-align: center; }
  .wpcf7-form input[type="submit"],
  .wpcf7-form input[type="button"],
  .wpcf7-form .resetbtn {
    -webkit-box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    font-family: 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-size: 1em;
    font-weight: 500;
    width: 13.75em;
    height: 3.3em;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: -webkit-linear-gradient(330deg, #15278b, #22b4ea);
    background: -moz-linear-gradient(330deg, #15278b, #22b4ea);
    background: -o-linear-gradient(330deg, #15278b, #22b4ea);
    background: linear-gradient(120deg, #15278b, #22b4ea);
    border-radius: 1.67em;
    border: none;
    color: #fff;
    letter-spacing: 1em;
    text-align: center;
    text-indent: 1em;
    cursor: pointer;
    margin: 0 1em; }
    .wpcf7-form input[type="submit"]:hover,
    .wpcf7-form input[type="button"]:hover,
    .wpcf7-form .resetbtn:hover {
      -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -webkit-transform: translate(0.1em, 0.1em);
      -moz-transform: translate(0.1em, 0.1em);
      -ms-transform: translate(0.1em, 0.1em);
      -o-transform: translate(0.1em, 0.1em);
      transform: translate(0.1em, 0.1em);
      text-decoration: none; }
    .wpcf7-form input[type="submit"] span,
    .wpcf7-form input[type="button"] span,
    .wpcf7-form .resetbtn span {
      position: relative;
      z-index: 2; }
    @media screen and (max-width: 480px) {
      .wpcf7-form input[type="submit"],
      .wpcf7-form input[type="button"],
      .wpcf7-form .resetbtn {
        width: 8em;
        letter-spacing: 0;
        text-indent: 0;
        margin: 0 0.25em; } }
  .wpcf7-form .resetbtn {
    letter-spacing: 0;
    text-indent: 0; }

.contactformarea .form {
  width: 100%;
  margin: 0 auto 0 auto; }

/* ボタンリスト */
.btnlist {
  list-style: none inside;
  text-align: center; }
  .btnlist li {
    display: inline-block; }

/* 確認ページ */
input[type="hidden"] {
  position: relative;
  z-index: 100;
  display: inline-block;
  background: #fff !important;
  border: #fff solid 2px; }

div.wpcf7-mail-sent-ok {
  border: 2px solid #007bc7; }

div.wpcf7 .ajax-loader {
  width: 0;
  height: 0; }

input:-webkit-autofill {
  animation-name: onAutoFillStart;
  transition: background-color 50000s ease-in-out 0s; }

input:-webkit-autofill-selected {
  animation-name: onAutoFillStart;
  transition: background-color 50000s ease-in-out 0s; }

input:-internal-autofill-selected {
  background-color: rgba(232, 240, 254, 0) !important; }

.wpcf7-form {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1.5em; }
  .wpcf7-form p, .wpcf7-form ul {
    position: relative;
    z-index: 2; }

.formbg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background: #fff;
  z-index: 1;
  border-radius: 1em; }

/* チェックボックス・ラジオボタン */
span.wpcf7-list-item {
  display: inline-block;
  margin: 0.25em 0 0 0;
  padding: 0.75em; }
  @media screen and (min-width: 1920px) {
    span.wpcf7-list-item {
      margin-top: 0; } }
  @media screen and (max-width: 1500px) {
    span.wpcf7-list-item {
      margin-top: 0.35em; } }
  @media screen and (max-width: 480px) {
    span.wpcf7-list-item input[type="radio"],
    span.wpcf7-list-item input[type="checkbox"] {
      position: relative;
      top: 0.2em; } }
  span.wpcf7-list-item input[type="radio"] + span,
  span.wpcf7-list-item input[type="checkbox"] + span {
    padding-right: 1em;
    font-size: 1em; }
  span.wpcf7-list-item:last-child input[type="radio"] + span,
  span.wpcf7-list-item:last-child input[type="checkbox"] + span {
    padding-right: 0; }

input[type="radio"],
input[type="checkbox"] {
  position: relative;
  cursor: pointer;
  line-height: 1em; }
  input[type="radio"].wpcf7c-conf,
  input[type="checkbox"].wpcf7c-conf {
    display: none; }
    input[type="radio"].wpcf7c-conf + span,
    input[type="checkbox"].wpcf7c-conf + span {
      display: none; }

.wpcf7-list-item-label {
  cursor: pointer;
  line-height: 1em; }

/*.wpcf7c-elm-step2.bdstep2{
	display: block;
	width: 100%;
	border-bottom: #ececec solid 1px;
}*/
/* 送信済メッセージ */
div.wpcf7-mail-sent-ok {
  border: 2px solid #007bc7; }

/* ボタン */
.btn {
  display: inline-block; }
  .btn a {
    font-size: 1.33em;
    display: block;
    width: 13.75em;
    height: 3.3em;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: -webkit-linear-gradient(330deg, #15278b, #22b4ea);
    background: -moz-linear-gradient(330deg, #15278b, #22b4ea);
    background: -o-linear-gradient(330deg, #15278b, #22b4ea);
    background: linear-gradient(120deg, #15278b, #22b4ea);
    border-radius: 1.67em;
    -webkit-box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    padding: 0.167em; }
    .btn a:hover {
      -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -webkit-transform: translate(0.1em, 0.1em);
      -moz-transform: translate(0.1em, 0.1em);
      -ms-transform: translate(0.1em, 0.1em);
      -o-transform: translate(0.1em, 0.1em);
      transform: translate(0.1em, 0.1em);
      text-decoration: none; }
    @media screen and (max-width: 480px) {
      .btn a {
        font-size: 0.8em; } }
    .btn a .btnctt {
      width: 13.416em;
      height: 2.966em;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      border-radius: 1.483em;
      background: #fff;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      -ms-flex-pack: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      justify-content: center; }
      .btn a .btnctt .btntxt {
        background: -webkit-linear-gradient(120deg, #22b4ea, #15278b);
        background: -moz-linear-gradient(120deg, #22b4ea, #15278b);
        background: -o-linear-gradient(120deg, #22b4ea, #15278b);
        background: linear-gradient(-30deg, #22b4ea, #15278b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
  .btn.sub_btn a {
    background: transparent;
    border: #fff solid 0.167em;
    padding: 0;
    color: #fff; }
    .btn.sub_btn a .btnctt {
      background: transparent; }

.freepage-ctt .btn {
  padding-bottom: 1.1em; }

/* 上下逆配置 */
.ctt_vrv {
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: column-reverse;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  flex-direction: column-reverse; }

/* =======================================================================================================================
　　　　　　　　　ヘッダー
======================================================================================================================= */
/* ロゴ */
h1.logo {
  font-size: 1em;
  line-height: 0;
  position: fixed;
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
  z-index: 9; }
  h1.logo a {
    background: #fff;
    width: 8.89em;
    height: 8.89em;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center; }
    @media screen and (max-width: 980px) {
      h1.logo a {
        width: 4.5em;
        height: 4.5em; } }
    h1.logo a img {
      width: 4.5em;
      height: auto; }
      @media screen and (max-width: 980px) {
        h1.logo a img {
          width: 3em; } }

/* ================= グローバルナビゲーション（共通） ============================================================ */
.gnav {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  .gnav ul {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside; }
    .gnav ul li {
      font-family: century-gothic, sans-serif;
      font-weight: 700;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .gnav ul li a {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        line-height: 1em;
        position: relative;
        background: -webkit-linear-gradient(left, #45ccfe 40%, transparent 40%) 100% 80%/250% 40% no-repeat;
        background: linear-gradient(to right, #45ccfe 40%, transparent 40%) 100% 80%/250% 40% no-repeat;
        -webkit-transition: background-position .3s ease-out;
        transition: background-position .3s ease-out; }
        .gnav ul li a:hover {
          text-decoration: none;
          background-position: 0% 80%; }

/* ================= ヘッダー ============================================================ */
#header .gnav {
  width: 100%;
  position: fixed;
  top: 0;
  left: auto;
  right: 0;
  bottom: auto;
  z-index: 8; }
  @media screen and (max-width: 980px) {
    #header .gnav {
      display: none; } }
  #header .gnav ul {
    width: 100%;
    font-size: 0;
    text-align: right; }
    #header .gnav ul li {
      display: inline-block;
      font-size: 18px;
      padding: 1em; }
      @media screen and (min-width: 1920px) {
        #header .gnav ul li {
          font-size: 18px;
          font-size: 0.9375vw; } }
      @media screen and (max-width: 1520px) {
        #header .gnav ul li {
          font-size: 1.25vw; } }
      @media screen and (max-width: 980px) {
        #header .gnav ul li {
          font-size: 2vw; } }
      @media screen and (max-width: 480px) {
        #header .gnav ul li {
          font-size: 15px;
          font-size: 3.5vw; } }
      #header .gnav ul li a {
        display: inline-block;
        color: #fff;
        padding-bottom: 0.25em; }

/* =======================================================================================================================
　　　　　　　　　固定ナビゲーション
======================================================================================================================= */
.fixmenu {
  list-style: none inside;
  /* お問い合わせボタン */
  /* Instagram */
  /* 採用情報 */
  /* エントリーボタン（採用ページのみ） */ }
  .fixmenu .btn_contact {
    position: fixed;
    top: 50%;
    left: auto;
    right: 1.11em;
    bottom: auto;
    margin: auto;
    z-index: 9;
    -webkit-transform: translate(0, -2.4em);
    -moz-transform: translate(0, -2.4em);
    -ms-transform: translate(0, -2.4em);
    -o-transform: translate(0, -2.4em);
    transform: translate(0, -2.4em); }
    @media screen and (max-width: 980px) {
      .fixmenu .btn_contact {
        position: fixed;
        top: auto;
        left: 0.5em;
        right: auto;
        bottom: 0.5em;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0); } }
    .fixmenu .btn_contact .txt_contactus {
      display: none;
      position: absolute;
      top: -2.5em;
      left: -3.25em;
      right: auto;
      bottom: auto; }
      @media screen and (max-width: 980px) {
        .fixmenu .btn_contact .txt_contactus {
          display: none; } }
      .fixmenu .btn_contact .txt_contactus svg {
        width: 7.22em;
        height: auto;
        position: absolute;
        top: 0;
        left: 0;
        right: auto;
        bottom: auto; }
        @media screen and (max-width: 980px) {
          .fixmenu .btn_contact .txt_contactus svg {
            width: 5em; } }
    .fixmenu .btn_contact a {
      width: 2.78em;
      height: 2.78em;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      border-radius: 50%;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      -ms-flex-pack: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      background: #fff;
      -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease; }
      .fixmenu .btn_contact a:hover {
        -webkit-box-shadow: 0.1em 0.1em 0.8em 0 rgba(0, 0, 0, 0.2);
        -moz-box-shadow: 0.1em 0.1em 0.8em 0 rgba(0, 0, 0, 0.2);
        box-shadow: 0.1em 0.1em 0.8em 0 rgba(0, 0, 0, 0.2);
        -webkit-transform: translate(0.1em, 0.1em);
        -moz-transform: translate(0.1em, 0.1em);
        -ms-transform: translate(0.1em, 0.1em);
        -o-transform: translate(0.1em, 0.1em);
        transform: translate(0.1em, 0.1em);
        text-decoration: none; }
      @media screen and (max-width: 980px) {
        .fixmenu .btn_contact a {
          font-size: 1.5em; } }
      .fixmenu .btn_contact a img {
        width: 1.389em;
        height: auto; }
  .fixmenu .link_instagram {
    position: fixed;
    top: 75%;
    left: auto;
    right: 1.11em;
    bottom: auto;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 1.33em;
    height: 7em;
    z-index: 9; }
    @media screen and (max-width: 980px) {
      .fixmenu .link_instagram {
        display: none; } }
    .fixmenu .link_instagram a {
      display: block;
      color: #007bc7;
      opacity: 0.7;
      filter: alpha(opacity=70); }
      .fixmenu .link_instagram a .eg {
        display: block;
        height: 5.6em;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: 0.89em;
        padding-bottom: 0.3em;
        line-height: 1.5em;
        vertical-align: middle; }
      .fixmenu .link_instagram a .fab {
        display: block;
        font-size: 1.3em;
        line-height: 1em;
        text-align: center; }
      .fixmenu .link_instagram a:hover {
        text-decoration: none;
        opacity: 1;
        filter: alpha(opacity=100); }
  .fixmenu .btn_recruit {
    position: fixed;
    top: auto;
    left: auto;
    right: 1.11em;
    bottom: 1.11em;
    z-index: 9; }
    @media screen and (max-width: 980px) {
      .fixmenu .btn_recruit {
        right: 1em;
        bottom: 1em; } }
    .fixmenu .btn_recruit a {
      display: inline-block;
      -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      background: #fff;
      border-radius: 1.389em;
      line-height: 1em;
      padding: 0.89em 2em; }
      .fixmenu .btn_recruit a:hover {
        -webkit-box-shadow: 0.1em 0.1em 0.8em 0 rgba(0, 0, 0, 0.2);
        -moz-box-shadow: 0.1em 0.1em 0.8em 0 rgba(0, 0, 0, 0.2);
        box-shadow: 0.1em 0.1em 0.8em 0 rgba(0, 0, 0, 0.2);
        -webkit-transform: translate(0.1em, 0.1em);
        -moz-transform: translate(0.1em, 0.1em);
        -ms-transform: translate(0.1em, 0.1em);
        -o-transform: translate(0.1em, 0.1em);
        transform: translate(0.1em, 0.1em);
        text-decoration: none; }
      .fixmenu .btn_recruit a .btntxt {
        background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
        background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        font-weight: 500; }
        .fixmenu .btn_recruit a .btntxt .eg {
          font-size: 0.78em;
          padding-left: 0.5em; }
  .fixmenu .btn_entry {
    position: fixed;
    top: auto;
    left: auto;
    right: 1.11em;
    bottom: 0;
    z-index: 8; }
    @media screen and (max-width: 980px) {
      .fixmenu .btn_entry {
        right: 1em;
        bottom: 0; } }
    .fixmenu .btn_entry a {
      display: block;
      width: 15em;
      line-height: 0; }
      .fixmenu .btn_entry a img {
        width: 100%;
        height: auto;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0); }
      .fixmenu .btn_entry a:hover img {
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-transform: translate(0, 0.2em);
        -moz-transform: translate(0, 0.2em);
        -ms-transform: translate(0, 0.2em);
        -o-transform: translate(0, 0.2em);
        transform: translate(0, 0.2em); }

#front-page .fixmenu .btn_contact .txt_contactus {
  display: inline-block; }
#front-page .fixmenu .link_instagram a {
  color: #fff; }

/* コピーライト */
.copyright {
  position: fixed;
  top: 50%;
  left: 1.5em;
  right: auto;
  bottom: auto;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%);
  font-family: century-gothic, sans-serif;
  font-weight: 700;
  font-weight: 400;
  font-size: 0.67em;
  line-height: 1em;
  color: #007bc7;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  z-index: 9; }
  @media screen and (max-width: 980px) {
    .copyright {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      text-align: center;
      opacity: 0.5;
      filter: alpha(opacity=50);
      margin-top: -11.111em;
      top: 0;
      left: 0;
      color: #fff; } }

#front-page .copyright {
  color: #fff; }

/* =======================================================================================================================
　　　　　　　　　フッター
======================================================================================================================= */
#footer {
  background: #313131;
  color: #fff; }
  #footer a {
    color: #fff; }
  #footer .innerbox {
    text-align: center; }
    @media screen and (max-width: 480px) {
      #footer .innerbox {
        padding: 0; } }
    #footer .innerbox .sitemap {
      list-style: none inside;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 0; }
      #footer .innerbox .sitemap li {
        display: inline-block;
        font-size: 18px;
        font-weight: 700;
        padding: 0 1em;
        border-right: #fff solid 1px; }
        @media screen and (min-width: 1920px) {
          #footer .innerbox .sitemap li {
            font-size: 18px;
            font-size: 0.9375vw; } }
        @media screen and (max-width: 1520px) {
          #footer .innerbox .sitemap li {
            font-size: 1.25vw; } }
        @media screen and (max-width: 980px) {
          #footer .innerbox .sitemap li {
            font-size: 2vw; } }
        @media screen and (max-width: 480px) {
          #footer .innerbox .sitemap li {
            font-size: 15px;
            font-size: 3.5vw; } }
        #footer .innerbox .sitemap li:first-child {
          padding-left: 0; }
        #footer .innerbox .sitemap li:last-child {
          padding-right: 0;
          border-right: none; }
        @media screen and (max-width: 980px) {
          #footer .innerbox .sitemap li:nth-child(6) {
            padding-right: 0;
            border-right: none; } }
        @media screen and (max-width: 480px) {
          #footer .innerbox .sitemap li {
            display: block;
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            padding: 0;
            border-right: 0;
            border-bottom: rgba(255, 255, 255, 0.2) solid 1px; }
            #footer .innerbox .sitemap li a {
              display: block;
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              padding: 1em;
              text-decoration: none;
              background: rgba(255, 255, 255, 0.1); } }
    #footer .innerbox .link_instagram {
      padding-top: 2em;
      opacity: 0.5;
      filter: alpha(opacity=50); }
      #footer .innerbox .link_instagram .eg {
        line-height: 2em;
        vertical-align: middle; }
      #footer .innerbox .link_instagram .fab {
        font-size: 2em;
        padding-left: 0.5em;
        vertical-align: middle; }
    #footer .innerbox h2 {
      padding-top: 5.556em;
      font-size: 1em;
      line-height: 0; }
      #footer .innerbox h2 img {
        width: 9.4em;
        height: auto;
        margin-bottom: 1em; }
      #footer .innerbox h2 span {
        display: block;
        font-size: 1.33em;
        font-weight: 700;
        line-height: 1em; }
    #footer .innerbox p {
      padding-top: 1em; }

/* ===========================================================================================================
　　　　　　　　　格納ナビゲーション
=========================================================================================================== */
.hm_btn, .hm_menu_wrap {
  display: none; }
  @media screen and (max-width: 980px) {
    .hm_btn, .hm_menu_wrap {
      display: block; } }

.hm_menu_check {
  /* チェックボックスを隠す */
  display: none; }

/* -------------------------- メニューボタン ------------------------------------------- */
.hm_btn {
  width: 1.33em;
  height: 1.2em;
  cursor: pointer;
  border-left: #fff solid 1.5em;
  border-right: #fff solid 1.5em;
  border-top: #fff solid 1.565em;
  border-bottom: #fff solid 1.565em;
  position: fixed;
  top: 0;
  left: auto;
  right: 0;
  bottom: auto;
  background: #fff;
  cursor: pointer;
  z-index: 9999999999; }
  .hm_btn::before, .hm_btn::after {
    width: 1.33em;
    height: 0.13em;
    background: #000;
    display: block;
    content: '';
    position: absolute;
    -webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
    transition: box-shadow 0.2s linear, transform 0.2s 0.2s; }
  .hm_btn::before {
    -webkit-box-shadow: #000 0 0.532em 0;
    box-shadow: #000 0 0.532em 0; }
  .hm_btn::after {
    bottom: 0; }

/* 開閉時のアニメーション */
.hm_menu_check:checked ~ .hm_btn::before {
  -webkit-box-shadow: transparent 0 0 0;
  box-shadow: transparent 0 0 0;
  -webkit-transform: rotate(45deg) translate3d(0.266em, 0.49em, 0);
  transform: rotate(45deg) translate3d(0.266em, 0.49em, 0); }
.hm_menu_check:checked ~ .hm_btn::after {
  -webkit-transform: rotate(-45deg) translate3d(0.266em, -0.49em, 0);
  transform: rotate(-45deg) translate3d(0.266em, -0.49em, 0); }

/* -------------------------- 格納領域 ------------------------------------------- */
.hm_menu_wrap {
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: 0.7s;
  transition: 0.7s;
  box-sizing: border-box;
  overflow: hidden;
  visibility: hidden;
  z-index: 999; }
  .hm_menu_wrap .hm_inner {
    position: absolute;
    top: 0;
    left: 0;
    right: -19px;
    bottom: 0;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }
    .hm_menu_wrap .hm_inner .menucontent {
      box-sizing: border-box;
      padding: 0 0 0 0;
      width: 100%;
      position: absolute;
      top: 0;
      left: 100%;
      right: auto;
      bottom: 0;
      -webkit-transition: left 1.0s;
      transition: left 1.0s;
      border: none;
      /* 中身デザイン */ }
      .hm_menu_wrap .hm_inner .menucontent .gnav {
        width: 100%;
        height: auto;
        padding: 5.556em 0 2.778em 0;
        background: #fff; }
        .hm_menu_wrap .hm_inner .menucontent .gnav ul li {
          font-size: 1.5em; }
          .hm_menu_wrap .hm_inner .menucontent .gnav ul li a {
            display: block;
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            padding: 1em 2em;
            background: -webkit-gradient(linear, right top, left top, from(#22b4ea), color-stop(70%), to(#15278b));
            background: -webkit-linear-gradient(right, #22b4ea, 70%, #15278b);
            background: -moz-linear-gradient(right, #22b4ea, 70%, #15278b);
            background: -o-linear-gradient(right, #22b4ea, 70%, #15278b);
            background: linear-gradient(-90deg, #22b4ea, 70%, #15278b);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent; }
      .hm_menu_wrap .hm_inner .menucontent .link_instagram {
        padding-top: 2em;
        opacity: 0.5;
        filter: alpha(opacity=50);
        text-align: right;
        padding-right: 2em; }
        .hm_menu_wrap .hm_inner .menucontent .link_instagram a {
          color: #000; }
          .hm_menu_wrap .hm_inner .menucontent .link_instagram a .eg {
            line-height: 2em;
            vertical-align: middle; }
          .hm_menu_wrap .hm_inner .menucontent .link_instagram a .fab {
            font-size: 2em;
            padding-left: 0.5em;
            vertical-align: middle; }

/* 開閉時のアニメーション */
.hm_menu_check:checked ~ .hm_menu_wrap {
  opacity: 1;
  filter: alpha(opacity=100);
  visibility: visible; }
  .hm_menu_check:checked ~ .hm_menu_wrap .menucontent {
    opacity: 1;
    filter: alpha(opacity=100);
    left: 0;
    height: auto; }

/* =======================================================================================================================
　　　　　　　　　投稿記事
======================================================================================================================= */
/* -------------------------- トップページ共通 ------------------------------------------- */
.newslist {
  list-style: none inside;
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media screen and (max-width: 980px) {
    .newslist {
      margin-top: -2.778em; } }
  .newslist a {
    -webkit-box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0.3em 0.3em 0.8em 0 rgba(0, 0, 0, 0.2);
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease; }
    .newslist a:hover {
      -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
      -webkit-transform: translate(0.1em, 0.1em);
      -moz-transform: translate(0.1em, 0.1em);
      -ms-transform: translate(0.1em, 0.1em);
      -o-transform: translate(0.1em, 0.1em);
      transform: translate(0.1em, 0.1em);
      text-decoration: none; }
  .newslist li, .newslist .postlink {
    width: 30%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 5%; }
    .newslist li:nth-child(3), .newslist .postlink:nth-child(3) {
      margin-right: 0; }
    @media screen and (max-width: 980px) {
      .newslist li, .newslist .postlink {
        width: 100%;
        margin-top: 2.778em;
        margin-right: 0; } }
    .newslist li a, .newslist li article, .newslist .postlink a, .newslist .postlink article {
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      background: #fff;
      color: #000; }
      @media screen and (max-width: 980px) {
        .newslist li a, .newslist li article, .newslist .postlink a, .newslist .postlink article {
          width: 100%;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap; } }
      @media screen and (max-width: 480px) {
        .newslist li a, .newslist li article, .newslist .postlink a, .newslist .postlink article {
          display: block; } }
      .newslist li a:hover img, .newslist li article:hover img, .newslist .postlink a:hover img, .newslist .postlink article:hover img {
        opacity: 1;
        filter: alpha(opacity=100); }
    .newslist li .news_thumb, .newslist .postlink .news_thumb {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      background: url("../../../images/thumb.jpg") no-repeat 50% 50%;
      background-size: cover; }
      @media screen and (max-width: 980px) {
        .newslist li .news_thumb, .newslist .postlink .news_thumb {
          width: 50%; } }
      @media screen and (max-width: 480px) {
        .newslist li .news_thumb, .newslist .postlink .news_thumb {
          width: 100%; } }
      .newslist li .news_thumb::before, .newslist .postlink .news_thumb::before {
        content: "";
        display: block;
        position: relative;
        padding-top: 60%; }
      .newslist li .news_thumb span, .newslist .postlink .news_thumb span {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto; }
        .newslist li .news_thumb span img, .newslist .postlink .news_thumb span img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%;
          font-family: "object-fit: cover; object-position: 50% 50%;"; }
    .newslist li .txtbox, .newslist .postlink .txtbox {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 1.67em;
      overflow: hidden; }
      @media screen and (max-width: 980px) {
        .newslist li .txtbox, .newslist .postlink .txtbox {
          width: 50%; } }
      @media screen and (max-width: 480px) {
        .newslist li .txtbox, .newslist .postlink .txtbox {
          width: 100%; } }
      .newslist li .txtbox .date, .newslist .postlink .txtbox .date {
        font-size: 1.3em;
        font-family: century-gothic, sans-serif;
        font-weight: 700;
        line-height: 1em;
        background: -webkit-gradient(linear, right top, left top, from(#22b4ea), color-stop(70%), to(#15278b));
        background: -webkit-linear-gradient(right, #22b4ea, 70%, #15278b);
        background: -moz-linear-gradient(right, #22b4ea, 70%, #15278b);
        background: -o-linear-gradient(right, #22b4ea, 70%, #15278b);
        background: linear-gradient(-90deg, #22b4ea, 70%, #15278b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
      .newslist li .txtbox .news_ttl, .newslist .postlink .txtbox .news_ttl {
        padding-top: 1em; }
  .newslist .postlink {
    background: #fff;
    color: #000;
    margin-top: 5.556em; }

/* ================= 記事一覧ページ ============================================================ */
#newsarea {
  padding: 11.111em 0; }
  #newsarea .newslist {
    margin-top: -11.111em; }
    #newsarea .newslist .txtbox .news_ttl {
      font-size: 1em;
      font-weight: 500;
      padding-bottom: 1em; }
    #newsarea .newslist .txtbox .entry-content {
      font-size: 0.8em;
      line-height: 1.67em; }

/* ページネーション ------------------------------------------- */
.pagination {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 2.778em; }
  .pagination a {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none; }
    .pagination a:hover {
      -webkit-box-shadow: none;
      -moz-box-shadow: none;
      box-shadow: none; }
  .pagination .nav-links {
    font-family: century-gothic, sans-serif;
    font-weight: 700;
    display: block;
    text-align: center;
    color: #aaa; }
    .pagination .nav-links a, .pagination .nav-links span {
      display: inline-block;
      padding: 0.5em; }
    .pagination .nav-links span.screen-reader-text {
      display: none; }
    .pagination .nav-links a {
      color: #007bc7; }
    .pagination .nav-links span {
      font-size: 1.5em; }

/* 矢印 */
.page-numbers::before {
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  font-weight: bold;
  text-rendering: auto;
  line-height: 1; }

.prev.page-numbers::before {
  content: "\f053"; }

.next.page-numbers::before {
  content: "\f054"; }

/* 非表示 */
.screen-reader-text,
.nav-prev-text,
.nav-next-text,
.nav-subtitle,
.nav-links svg {
  display: none !important; }

/* =============== 記事ページ ========================================================= */
.single_post {
  padding: 5.556em 0;
  /* -------------------------- エントリーヘッダー ------------------------------------------- */
  /* 日付 ------------------------------------------- */
  /* エントリータイトル ------------------------------------------- */
  /* -------------------------- 記事本文 ------------------------------------------- */
  /* -------------------------- ナビゲーション ------------------------------------------- */
  /* 矢印 ------------------------------------------- */
  /* 前後タイトル ------------------------------------------- */
  /* あふれた文字･･･表示 */ }
  .single_post .entry-header {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 5.556em; }
  .single_post .entry-meta .date {
    font-family: century-gothic, sans-serif;
    font-weight: 700;
    background: -webkit-gradient(linear, right top, left top, from(#22b4ea), color-stop(70%), to(#15278b));
    background: -webkit-linear-gradient(right, #22b4ea, 70%, #15278b);
    background: -moz-linear-gradient(right, #22b4ea, 70%, #15278b);
    background: -o-linear-gradient(right, #22b4ea, 70%, #15278b);
    background: linear-gradient(-90deg, #22b4ea, 70%, #15278b);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1.3em; }
  .single_post .entry-title {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.8em;
    font-weight: 500;
    line-height: 1.75em;
    padding-bottom: 1em; }
    @media screen and (max-width: 480px) {
      .single_post .entry-title {
        font-size: 1.5em;
        line-height: 1.75em; } }
  .single_post .entry-content {
    width: 100%;
    position: relative;
    padding-bottom: 2.778em; }
    .single_post .entry-content p {
      padding-bottom: 2em; }
    .single_post .entry-content img {
      max-width: 100%;
      height: auto; }
  .single_post .screen-reader-text,
  .single_post .nav-subtitle,
  .single_post .meta-nav,
  .single_post .nav-links svg {
    display: none !important; }
  .single_post .nav-next {
    text-align: right; }
  .single_post .nav-previous a::before {
    font-family: "Font Awesome 5 Free";
    content: "\f053";
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: bold;
    text-rendering: auto;
    line-height: 1;
    position: absolute;
    left: 0;
    top: 0; }
  .single_post .nav-next a::after {
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: bold;
    text-rendering: auto;
    line-height: 1;
    position: absolute;
    right: 0;
    top: 0; }
  .single_post .nav-links {
    width: 100%;
    position: relative;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch; }
  .single_post .nav-previous,
  .single_post .nav-next {
    width: 48%;
    position: relative; }
  .single_post .post-title {
    display: block;
    line-height: 1em;
    width: 100%;
    box-sizing: border-box;
    padding-left: 1em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    /* Opera9,10対応 */ }
  .single_post .nav-next .post-title {
    padding-left: 0;
    padding-right: 1em; }

/* =======================================================================================================================
　　　　　　　　　トップページメインカラム
======================================================================================================================= */
/* ================= メイン画像 ============================================================ */
#mainimg {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 100vh;
  background: -webkit-linear-gradient(135deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  background: -moz-linear-gradient(135deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  background: -o-linear-gradient(135deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  background: linear-gradient(-45deg, rgba(34, 180, 234, 0.6), 70%, rgba(21, 39, 139, 0.6));
  color: #fff;
  overflow: hidden; }
  @media screen and (min-aspect-ratio: 7 / 2) and (min-width: 1921px) {
    #mainimg {
      height: 50vw; } }
  @media screen and (min-aspect-ratio: 2 / 1) and (max-width: 1921px) and (min-width: 981px) {
    #mainimg {
      height: 50vw; } }
  @media screen and (min-aspect-ratio: 20 / 9) and (max-width: 980px) and (min-width: 481px) {
    #mainimg {
      height: 50vw; } }
  @media screen and (min-aspect-ratio: 2 / 3) and (max-width: 480px) {
    #mainimg {
      height: 145vw; } }
  @media screen and (min-aspect-ratio: 3 / 4) and (max-width: 480px) {
    #mainimg {
      height: 100vh; } }
  #mainimg .maincopy {
    position: absolute;
    top: auto;
    left: 52%;
    right: auto;
    bottom: 50vh;
    -webkit-transform: translate(0, 19%);
    -moz-transform: translate(0, 19%);
    -ms-transform: translate(0, 19%);
    -o-transform: translate(0, 19%);
    transform: translate(0, 19%);
    font-size: 1em; }
    @media screen and (max-width: 1600px) {
      #mainimg .maincopy {
        left: 60%; } }
    @media screen and (max-width: 1520px) {
      #mainimg .maincopy {
        font-size: 0.8em; } }
    @media screen and (max-width: 980px) {
      #mainimg .maincopy {
        left: 56%;
        -webkit-transform: translate(0, 50%);
        -moz-transform: translate(0, 50%);
        -ms-transform: translate(0, 50%);
        -o-transform: translate(0, 50%);
        transform: translate(0, 50%); } }
    @media screen and (max-width: 480px) {
      #mainimg .maincopy {
        position: absolute;
        top: auto;
        left: 20%;
        right: auto;
        bottom: 57vh;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @media screen and (min-aspect-ratio: 3 / 4) and (max-width: 480px) {
      #mainimg .maincopy {
        position: absolute;
        top: auto;
        left: 56%;
        right: auto;
        bottom: 50vh;
        -webkit-transform: translate(0, 30%);
        -moz-transform: translate(0, 30%);
        -ms-transform: translate(0, 30%);
        -o-transform: translate(0, 30%);
        transform: translate(0, 30%); } }
    #mainimg .maincopy span {
      display: block;
      font-size: 2em;
      font-weight: 700;
      line-height: 1.3em;
      letter-spacing: 0.2em;
      padding-bottom: 0.5em; }
      @media screen and (max-width: 980px) {
        #mainimg .maincopy span {
          font-size: 1.3em;
          line-height: 1.3em;
          letter-spacing: 0.2em; } }
      @media screen and (min-aspect-ratio: 3 / 4) and (max-width: 480px) {
        #mainimg .maincopy span {
          font-size: 0.8em;
          line-height: 1.3em;
          letter-spacing: 0.2em; } }
    #mainimg .maincopy strong {
      display: block;
      font-size: 4em;
      font-weight: 900;
      letter-spacing: 0.5em;
      line-height: 1.4em; }
      @media screen and (max-width: 980px) {
        #mainimg .maincopy strong {
          font-size: 2.6em;
          line-height: 1.4em;
          letter-spacing: 0.5em; } }
      @media screen and (min-aspect-ratio: 3 / 4) and (max-width: 480px) {
        #mainimg .maincopy strong {
          font-size: 1.5em;
          line-height: 1.4em;
          letter-spacing: 0.5em; } }
  #mainimg .egcopy {
    position: absolute;
    top: 0;
    left: auto;
    right: 52%;
    bottom: 0;
    margin: auto;
    font-size: 1em;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center; }
    @media screen and (max-width: 1600px) {
      #mainimg .egcopy {
        right: 44%; } }
    @media screen and (max-width: 1520px) {
      #mainimg .egcopy {
        font-size: 0.8em; } }
    @media screen and (max-width: 980px) {
      #mainimg .egcopy {
        -webkit-transform: scale(0.5);
        -moz-transform: scale(0.5);
        -ms-transform: scale(0.5);
        -o-transform: scale(0.5);
        transform: scale(0.5);
        -webkit-transform-origin: 100% 50%;
        -moz-transform-origin: 100% 50%;
        -ms-transform-origin: 100% 50%;
        -o-transform-origin: 100% 50%;
        transform-origin: 100% 50%;
        right: 48%;
        margin-top: -1em; } }
    @media screen and (max-width: 480px) {
      #mainimg .egcopy {
        display: block;
        -webkit-transform-origin: 100% 0;
        -moz-transform-origin: 100% 0;
        -ms-transform-origin: 100% 0;
        -o-transform-origin: 100% 0;
        transform-origin: 100% 0;
        position: absolute;
        top: 34vh;
        left: auto;
        right: 15%;
        bottom: auto;
        margin-top: 0; } }
    @media screen and (min-aspect-ratio: 3 / 4) and (max-width: 480px) {
      #mainimg .egcopy {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-transform: scale(0.25);
        -moz-transform: scale(0.25);
        -ms-transform: scale(0.25);
        -o-transform: scale(0.25);
        transform: scale(0.25);
        -webkit-transform-origin: 100% 50%;
        -moz-transform-origin: 100% 50%;
        -ms-transform-origin: 100% 50%;
        -o-transform-origin: 100% 50%;
        transform-origin: 100% 50%;
        position: absolute;
        top: 0;
        left: auto;
        right: 48%;
        bottom: 0;
        margin-top: -1em; } }
    #mainimg .egcopy .egbox {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
    #mainimg .egcopy .copy_inovate {
      position: relative;
      z-index: 2;
      position: absolute;
      top: 0;
      left: 8em;
      right: auto;
      bottom: auto; }
      #mainimg .egcopy .copy_inovate svg {
        width: 28.4em;
        height: auto; }
    #mainimg .egcopy .copy_white, #mainimg .egcopy .copy_outline {
      display: block;
      font-size: 8.89em;
      line-height: 1em;
      text-align: right; }
    #mainimg .egcopy .copy_white {
      padding-top: 1.05em; }
    #mainimg .egcopy .copy_outline svg {
      width: 4.28125em;
      height: auto; }
  #mainimg .scroll {
    position: fixed;
    top: auto;
    left: 1.5em;
    right: auto;
    bottom: 1.5em;
    width: 1em;
    height: 13.5em;
    font-size: 0.67em;
    letter-spacing: 0.1em;
    z-index: 5; }
    @media screen and (max-width: 980px) {
      #mainimg .scroll {
        position: fixed;
        top: 50%;
        left: auto;
        right: 1.5em;
        bottom: auto;
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%); } }
    #mainimg .scroll a {
      display: block;
      color: #fff;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      line-height: 1em; }
      #mainimg .scroll a::after {
        content: "";
        display: inline-block;
        width: 0.9em;
        height: 8.33em;
        background: url("../../../images/ya.svg") no-repeat 0 0;
        background-size: contain;
        margin-top: 0.5em; }
      #mainimg .scroll a:hover {
        text-decoration: none; }

/* ================= 新着 ============================================================ */
#top_news {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 11.111em 0;
  background: #fff; }
  @media screen and (max-width: 480px) {
    #top_news {
      padding-bottom: 5.556em; } }
  #top_news::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 60.9375%;
    bottom: 0;
    margin: auto;
    background: -webkit-linear-gradient(-45deg, rgba(61, 192, 237, 0.25), 70%, rgba(21, 39, 139, 0.25));
    background: -moz-linear-gradient(-45deg, rgba(61, 192, 237, 0.25), 70%, rgba(21, 39, 139, 0.25));
    background: -o-linear-gradient(-45deg, rgba(61, 192, 237, 0.25), 70%, rgba(21, 39, 139, 0.25));
    background: linear-gradient(-45deg, rgba(61, 192, 237, 0.25), 70%, rgba(21, 39, 139, 0.25));
    z-index: 1; }
  #top_news #top_news_hd {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between; }
    #top_news #top_news_hd .listlink {
      position: relative; }
      #top_news #top_news_hd .listlink .txt_morenews {
        position: absolute;
        top: -7em;
        left: auto;
        right: 0;
        bottom: auto; }
        @media screen and (max-width: 480px) {
          #top_news #top_news_hd .listlink .txt_morenews {
            top: -5em; } }
        #top_news #top_news_hd .listlink .txt_morenews svg {
          width: 13.4em;
          height: auto; }
          @media screen and (max-width: 480px) {
            #top_news #top_news_hd .listlink .txt_morenews svg {
              width: 9em; } }
  #top_news .newslist li a .txtbox {
    height: 8.89em; }

.top_ctt {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 5.556em;
  background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(50%, #fff), color-stop(50%, #ecf3f7), to(#ecf3f7));
  background: -webkit-linear-gradient(left, #fff 0%, #fff 50%, #ecf3f7 50%, #ecf3f7 100%);
  background: -moz-linear-gradient(left, #fff 0%, #fff 50%, #ecf3f7 50%, #ecf3f7 100%);
  background: -o-linear-gradient(left, #fff 0%, #fff 50%, #ecf3f7 50%, #ecf3f7 100%);
  background: linear-gradient(90deg, #fff 0%, #fff 50%, #ecf3f7 50%, #ecf3f7 100%);
  /* ================= 事業案内 ============================================================ */
  /* ================= 取り扱い商品 プロモーション動画 ============================================================ */
  /* ================= 企業情報 ============================================================ */ }
  @media screen and (max-width: 480px) {
    .top_ctt {
      margin-top: 2.778em; } }
  .top_ctt .txtbox {
    padding-top: 1.67em; }
    .top_ctt .txtbox p {
      padding-bottom: 2.778em; }
      .top_ctt .txtbox p span {
        display: block; }
  .top_ctt .imgbox {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .top_ctt .imgbox img {
      width: 83%;
      height: auto; }
      @media screen and (max-width: 1520px) {
        .top_ctt .imgbox img {
          width: 70%; } }
      @media screen and (max-width: 980px) {
        .top_ctt .imgbox img {
          width: 90%; } }
    .top_ctt .imgbox iframe {
      width: 83%;
      max-height: 600px; }
      @media screen and (max-width: 1520px) {
        .top_ctt .imgbox iframe {
          width: 70%;
          max-height: 400px; } }
      @media screen and (max-width: 980px) {
        .top_ctt .imgbox iframe {
          width: 100%;
          max-height: 300px; } }
  .top_ctt #top_aboutus {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.778em 0 5.556em 0; }
  .top_ctt #top_service, .top_ctt #top_youtube {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.778em 0 5.556em 0;
    margin-bottom: 5.556em;
    background: -webkit-gradient(linear, left top, right top, from(#afdff3), color-stop(62.5%, #afdff3), color-stop(62.5%, transparent), to(transparent));
    background: -webkit-linear-gradient(left, #afdff3 0%, #afdff3 62.5%, transparent 62.5%, transparent 100%);
    background: -moz-linear-gradient(left, #afdff3 0%, #afdff3 62.5%, transparent 62.5%, transparent 100%);
    background: -o-linear-gradient(left, #afdff3 0%, #afdff3 62.5%, transparent 62.5%, transparent 100%);
    background: linear-gradient(90deg, #afdff3 0%, #afdff3 62.5%, transparent 62.5%, transparent 100%);
    text-align: right; }
  .top_ctt #top_company {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 11.111em;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(45%, transparent), color-stop(45%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, transparent 0%, transparent 45%, #fff 45%, #fff 100%);
    background: -moz-linear-gradient(top, transparent 0%, transparent 45%, #fff 45%, #fff 100%);
    background: -o-linear-gradient(top, transparent 0%, transparent 45%, #fff 45%, #fff 100%);
    background: linear-gradient(180deg, transparent 0%, transparent 45%, #fff 45%, #fff 100%); }
    @media screen and (max-width: 480px) {
      .top_ctt #top_company {
        margin-bottom: 5.556em; } }

.top_ctt::after {
  content: " ";
  display: block;
  width: 100%;
  height: 5em; }

/* ================= 採用情報 ============================================================ */
#top_recruit {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 100vh;
  background: url("../../../images/bg_recruit.jpg") no-repeat 50% 17%;
  background-size: cover;
  background-attachment: fixed;
  color: #fff;
  text-align: center;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center; }
  #top_recruit p {
    padding-bottom: 2.778em; }

/* -------------------------- スクロール動作 ------------------------------------------- */
/* グローバルナビゲーション */
.mainmenu {
  background: rgba(255, 255, 255, 0);
  -webkit-transition: 0.7s ease;
  -moz-transition: 0.7s ease;
  -ms-transition: 0.7s ease;
  -o-transition: 0.7s ease;
  transition: 0.7s ease; }
  .mainmenu.scroll_posi {
    background: white; }
    .mainmenu.scroll_posi a {
      color: #000 !important; }

/* Contact us */
#front-page {
  /* Instagram */
  /* コピーライト */ }
  #front-page #contactus_anm {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  #front-page #contactusb_anm {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  #front-page .black #contactus_anm {
    opacity: 0;
    filter: alpha(opacity=0); }
  #front-page .black #contactusb_anm {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .black.white #contactus_anm {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .black.white #contactusb_anm {
    opacity: 0;
    filter: alpha(opacity=0); }
  @media screen and (min-width: 981px) {
    #front-page .link_instagram {
      -webkit-transition: 0.7s ease;
      -moz-transition: 0.7s ease;
      -ms-transition: 0.7s ease;
      -o-transition: 0.7s ease;
      transition: 0.7s ease; }
      #front-page .link_instagram.black a {
        color: #007bc7; }
      #front-page .link_instagram.black.white a {
        color: #fff; } }
  @media screen and (min-width: 981px) {
    #front-page .copyright {
      -webkit-transition: 0.7s ease;
      -moz-transition: 0.7s ease;
      -ms-transition: 0.7s ease;
      -o-transition: 0.7s ease;
      transition: 0.7s ease; }
      #front-page .copyright.black {
        color: #007bc7; }
        #front-page .copyright.black.white {
          color: #fff; } }

/* Instagram下層ページ */
@media screen and (min-width: 981px) {
  .link_instagram {
    -webkit-transition: 0.7s ease;
    -moz-transition: 0.7s ease;
    -ms-transition: 0.7s ease;
    -o-transition: 0.7s ease;
    transition: 0.7s ease; }
    .link_instagram.white a {
      color: #fff; } }

/* コピーライト下層ページ */
@media screen and (min-width: 981px) {
  .copyright {
    -webkit-transition: 0.7s ease;
    -moz-transition: 0.7s ease;
    -ms-transition: 0.7s ease;
    -o-transition: 0.7s ease;
    transition: 0.7s ease; }
    .copyright.white {
      color: #fff; } }

.markft {
  position: absolute;
  top: -50vh;
  left: auto;
  right: auto;
  bottom: auto; }

/* 背景ロゴアイコン */
#front-page #wrapper::before {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease; }
#front-page #wrapper.scroll_posi::before {
  opacity: 0.4;
  filter: alpha(opacity=40); }

/* =======================================================================================================================
　　　　　　　　　フリーページ（カスタムフィールド）
======================================================================================================================= */
.freepage-ctt {
  padding-top: 0;
  padding-bottom: 0; }

.sec {
  width: 100%;
  padding: 8.33em 0; }

/* 最大幅1500px */
.max1500px {
  max-width: 1500px;
  margin: 0 auto; }

/* =============== 背景色 ========================================================= */
.sec_bg1 {
  background: #fff; }

.sec_bg2 {
  background: #ecf3f7; }

.sec_bg3 {
  background: #afdff3; }

.sec_bg4 {
  background: -webkit-linear-gradient(120deg, #22b4ea, #15278b);
  background: -moz-linear-gradient(120deg, #22b4ea, #15278b);
  background: -o-linear-gradient(120deg, #22b4ea, #15278b);
  background: linear-gradient(-30deg, #22b4ea, #15278b);
  color: #fff; }

.sec_bg4 a {
  color: #fff; }

/* 同じ背景色のセクションが続いたときに余白をなくす */
.sec_bg1 + .sec_bg1, .sec_bg2 + .sec_bg2, .sec_bg3 + .sec_bg3 {
  padding-top: 0; }

/* =============== テキスト ========================================================= */
/* ------------ 見出し -------------------------------- */
.parts-h3 {
  font-size: 1.8em;
  font-weight: 700;
  line-height: 1.5em;
  padding-bottom: 3em;
  text-align: center; }
  @media screen and (max-width: 980px) {
    .parts-h3 {
      font-size: 1.8em; } }

.parts-h4 {
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.5em;
  padding-top: 3em;
  padding-bottom: 1em; }
  @media screen and (max-width: 980px) {
    .parts-h4 {
      font-size: 1.3em; } }

/* 大きな数字 */
.lnmb {
  font-family: century-gothic, sans-serif;
  font-weight: 700;
  font-size: 2em;
  color: #007bc7;
  background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
  background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
  background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
  background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
  background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
  line-height: 1em;
  padding-bottom: 0.25em; }

.sec_bg4 .lnmb {
  background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(70%), to(#22b4ea));
  background: -webkit-linear-gradient(left, #fff, 70%, #22b4ea);
  background: -moz-linear-gradient(left, #fff, 70%, #22b4ea);
  background: -o-linear-gradient(left, #fff, 70%, #22b4ea);
  background: linear-gradient(90deg, #fff, 70%, #22b4ea);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }

/* 左寄せ・幅指定中央配置テキスト */
.centerbox {
  max-width: 800px;
  margin: 0 auto; }

/* ------------ 段落 -------------------------------- */
.freepage-ctt .sec p {
  padding-bottom: 4em;
  /* 余白小さめ */
  /* 強調 */
  /* 注釈 */ }
  .freepage-ctt .sec p.btmmin {
    padding-bottom: 2em; }
  .freepage-ctt .sec p.parts-copy {
    font-size: 1.6em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 980px) {
      .freepage-ctt .sec p.parts-copy {
        font-size: 1.5em; } }
  .freepage-ctt .sec p .note {
    opacity: 0.7;
    filter: alpha(opacity=70);
    font-size: 0.9em;
    line-height: 1.7em;
    padding-bottom: 4em;
    padding-left: 1.2em;
    width: 100%;
    max-width: 1500px;
    box-sizing: border-box;
    margin: 0 auto; }
    .freepage-ctt .sec p .note::before {
      display: inline-block;
      content: "※";
      padding-right: 0.2em;
      text-indent: -1em; }
.freepage-ctt .sec .imgtxt_txtbox p:last-child {
  padding-bottom: 0; }

/* やや小さめ強調 */
.strong {
  font-size: 1.3em;
  font-weight: 700;
  line-height: 2em; }

/* 右寄せ */
.right {
  text-align: right; }

/* 中寄せ */
.center {
  text-align: center; }

/* =============== ブロック ========================================================= */
/* ------------ 背景色つきテキストボックス -------------------------------- */
.bbox {
  width: 100%;
  box-sizing: border-box;
  padding: 3.57em;
  background: #45ccfe;
  color: #fff;
  -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 980px) {
    .bbox {
      padding: 1.5em; } }
  .bbox a {
    color: #000; }
  .bbox h3 {
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 980px) {
      .bbox h3 {
        font-size: 1.5em; } }
  .bbox p {
    padding-bottom: 0; }

/* =============== 画像 ========================================================= */
.parts-100img {
  width: 100%;
  position: relative;
  padding-bottom: 4em;
  text-align: center; }
  .parts-100img.center {
    text-align: center; }
  .parts-100img.left {
    text-align: left; }
  .parts-100img.right {
    text-align: right; }
  .parts-100img img {
    max-width: inherit;
    height: auto; }
    @media screen and (max-width: 980px) {
      .parts-100img img {
        width: 100%; } }

/* ------------ 画像＋テキスト -------------------------------- */
.box_imglefttxt,
.box_imgrighttxt {
  width: 100%;
  position: relative;
  overflow: hidden;
  zoom: 1;
  padding-bottom: 4em; }
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    width: 40%;
    position: relative;
    padding-bottom: 1em;
    /* 画像 */ }
    @media screen and (max-width: 1520px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 45%; } }
    @media screen and (max-width: 980px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 50%; } }
    @media screen and (max-width: 480px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 100%;
        padding-bottom: 2.5em; } }
    .box_imglefttxt .imgtxt_imgbox img,
    .box_imgrighttxt .imgtxt_imgbox img {
      width: 100%;
      height: auto; }

/* 画像左 -------------------------------- */
.box_imglefttxt .imgtxt_imgbox {
  float: left;
  padding-right: 3%; }

/* 画像右 -------------------------------- */
.box_imgrighttxt .imgtxt_imgbox {
  float: right;
  padding-left: 3%; }

@media screen and (max-width: 480px) {
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    float: none;
    padding-right: 0;
    padding-left: 0; } }

/* テキスト -------------------------------- */
/* 見出し */
.imgtxt_txtbox h3 {
  font-size: 2em;
  line-height: 1.5em;
  font-weight: normal;
  padding-bottom: 1em; }
  @media screen and (max-width: 980px) {
    .imgtxt_txtbox h3 {
      font-size: 1.8em; } }
  @media screen and (max-width: 480px) {
    .imgtxt_txtbox h3 {
      font-size: 1.5em;
      padding-bottom: 0.67em; } }

/* ------------ 2～4つ並び画像テキストボックス -------------------------------- */
/* テキスト */
.imgbox_txtarea {
  display: block;
  width: 100%;
  z-index: 1;
  position: relative;
  box-sizing: border-box; }
  .imgbox_txtarea h3 {
    font-size: 1.2em;
    line-height: 1.5em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em; }
  .imgbox_txtarea p {
    padding-bottom: 0; }

/* 2つ並び画像テキストボックス -------------------------------- */
.img2box {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 4em;
  /* リスト */ }
  .img2box ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
    margin-top: -2em; }
    @media screen and (max-width: 480px) {
      .img2box ul {
        margin-top: -3em; } }
    .img2box ul li {
      width: 48.5%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 2em;
      margin-top: 2em;
      /* 画像 */ }
      @media screen and (max-width: 480px) {
        .img2box ul li {
          width: 100%;
          margin-top: 3em; } }
      .img2box ul li img {
        width: 100%;
        height: auto;
        margin-bottom: 1em; }
  @media screen and (max-width: 480px) {
    .img2box.imghbox ul li {
      width: 48.5%; } }

/* 3つ並び画像テキストボックス -------------------------------- */
.img3txtbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 4em;
  /* リスト */ }
  .img3txtbox ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
    margin-top: -3em; }
    .img3txtbox ul li {
      width: 32%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin-right: 2%;
      margin-top: 3em;
      padding: 2em;
      /* 画像 */ }
      @media screen and (min-width: 981px) {
        .img3txtbox ul li:nth-child(3n) {
          margin-right: 0; } }
      @media screen and (max-width: 980px) {
        .img3txtbox ul li {
          width: 100%;
          margin-bottom: 3em;
          margin-right: 0; } }
      .img3txtbox ul li img {
        width: 100%;
        height: auto;
        margin-bottom: 1em; }
  @media screen and (max-width: 980px) {
    .img3txtbox.imghbox ul li {
      width: 32%;
      margin-right: 2%; }
      .img3txtbox.imghbox ul li:nth-child(3n) {
        margin-right: 0; } }

/* 4つ並び画像テキストボックス -------------------------------- */
.img4txtbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 4em;
  /* リスト */ }
  .img4txtbox ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
    margin-top: -2em; }
    @media screen and (max-width: 1520px) {
      .img4txtbox ul {
        margin-top: -3em; } }
    .img4txtbox ul li {
      width: 23.5%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin-right: 2%;
      margin-top: 2em;
      /* 画像 */ }
      @media screen and (min-width: 1521px) {
        .img4txtbox ul li:nth-child(4n) {
          margin-right: 0; } }
      @media screen and (max-width: 1520px) {
        .img4txtbox ul li {
          margin-top: 3em; } }
  @media screen and (max-width: 1520px) and (min-width: 481px) {
    .img4txtbox ul li {
      width: 49%; }
      .img4txtbox ul li:nth-child(2n) {
        margin-right: 0; } }

      @media screen and (max-width: 480px) {
        .img4txtbox ul li {
          width: 100%; } }
      .img4txtbox ul li img {
        width: 100%;
        height: auto;
        margin-bottom: 1em; }
@media screen and (max-width: 1520px) and (min-width: 481px) {
  .img4txtbox.imghbox ul li {
    width: 23.5%; }
    .img4txtbox.imghbox ul li:nth-child(2n) {
      margin-right: 2%; }
    .img4txtbox.imghbox ul li:nth-child(4n) {
      margin-right: 0; } }

  @media screen and (max-width: 480px) {
    .img4txtbox.imghbox ul li {
      width: 23.5%; }
      .img4txtbox.imghbox ul li:nth-child(4n) {
        margin-right: 0; } }

/* =============== リスト ========================================================= */
/* ノーマルリストマークつき -------------------------------- */
.no_list {
  width: 100%;
  box-sizing: border-box;
  padding: 3.57em;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  position: relative;
  background: #fff;
  color: #000;
  -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 980px) {
    .no_list {
      padding: 1.5em; } }
  .no_list h3 {
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 980px) {
      .no_list h3 {
        font-size: 1.5em; } }
  .no_list ul {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 1.5em; }
    .no_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      padding-bottom: 1.5em; }
      .no_list ul li:last-child {
        padding-bottom: 0; }

/* チェックボックスマークつき -------------------------------- */
.check_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 3.57em;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  background: #fff;
  color: #000;
  -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 980px) {
    .check_list {
      padding: 1.5em; } }
  .check_list h3 {
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 980px) {
      .check_list h3 {
        font-size: 1.5em; } }
  .check_list ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .check_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      padding-bottom: 1.5em;
      text-indent: -1.2em;
      padding-left: 1.2em; }
      .check_list ul li::before {
        display: inline-block;
        padding-left: 1em;
        padding-right: 0.2em;
        font-family: "Font Awesome 5 Free";
        content: "\f14a";
        font-weight: 400; }
      .check_list ul li:last-child {
        padding-bottom: 0; }

/* 番号つき -------------------------------- */
.order_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 3.57em;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  position: relative;
  background: #fff;
  color: #000;
  -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 980px) {
    .order_list {
      padding: 1.5em; } }
  .order_list h3 {
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 980px) {
      .order_list h3 {
        font-size: 1.5em; } }
  .order_list ol {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style-position: inside; }
    .order_list ol li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      text-indent: -1em;
      padding-left: 1em;
      padding-bottom: 1em; }
      .order_list ol li:nth-child(n+10) {
        text-indent: -1.5em;
        padding-left: 1.5em; }
      .order_list ol li:last-child {
        padding-bottom: 0; }

/* 表型 -------------------------------- */
.table_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 1500px;
  margin: 0 auto;
  padding-bottom: 4em;
  /* 見出し */
  /* リスト */ }
  .table_list h3 {
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 0.5em; }
    @media screen and (max-width: 980px) {
      .table_list h3 {
        font-size: 1.5em; } }
  .table_list ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 6px 0;
    background: -webkit-linear-gradient(330deg, #15278b, #22b4ea);
    background: -moz-linear-gradient(330deg, #15278b, #22b4ea);
    background: -o-linear-gradient(330deg, #15278b, #22b4ea);
    background: linear-gradient(120deg, #15278b, #22b4ea);
    -webkit-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0.2em 0.2em 0.8em 0 rgba(0, 0, 0, 0.2); }
    .table_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch;
      padding: 0.5em;
      margin-bottom: 4px;
      background: #fff; }
      @media screen and (max-width: 980px) {
        .table_list ul li {
          padding: 0 0.5em; } }
      .table_list ul li:last-child {
        margin-bottom: 0; }
      .table_list ul li .tablelist_th,
      .table_list ul li .tablelist_td {
        padding: 1em;
        font-size: 1em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        @media screen and (max-width: 980px) {
          .table_list ul li .tablelist_th,
          .table_list ul li .tablelist_td {
            padding: 1em;
            display: block;
            text-align: left; } }
      .table_list ul li .tablelist_th {
        width: 30%;
        font-weight: 500;
        border-right: #007bc7 solid 1px;
        color: #007bc7;
        background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
        background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        @media screen and (max-width: 980px) {
          .table_list ul li .tablelist_th {
            width: 100%;
            font-weight: bold;
            border-right: none;
            border-bottom: #007bc7 solid 1px; } }
      .table_list ul li .tablelist_td {
        width: 70%;
        color: #000; }
        @media screen and (max-width: 980px) {
          .table_list ul li .tablelist_td {
            width: 100%; } }

/* 注釈マークつき -------------------------------- */
.note_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  opacity: 0.7;
  filter: alpha(opacity=70);
  padding: 3.57em;
  background: #007bc7;
  color: #fff;
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 980px) {
    .note_list {
      padding: 1.5em; } }
  .note_list h3 {
    font-size: 1.3em;
    font-weight: 500;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 980px) {
      .note_list h3 {
        font-size: 1.3em;
        font-weight: 500; } }
  .note_list ul {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside; }
    .note_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 0.9em;
      line-height: 1.7em;
      text-indent: -1.2em;
      padding-left: 1.2em;
      padding-bottom: 1.5em; }
      .note_list ul li::before {
        display: inline-block;
        padding-left: 1em;
        padding-right: 0.2em;
        content: "※"; }
      .note_list ul li:last-child {
        padding-bottom: 0; }

/* =============== Youtube動画 ========================================================= */
.videobox .imgtxt_imgbox {
  width: 60%; }

.youtube_box {
  width: 100%; }
  .youtube_box span {
    display: block;
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
    .youtube_box span iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100% !important;
      height: 100% !important; }

.img2box .youtube_box,
.img3txtbox .youtube_box {
  padding-bottom: 1.5em; }

/* =============== 余白ゼロ ========================================================= */
.freepage-ctt .sec .innerbox p:last-child,
.freepage-ctt .sec .innerbox p.parts-copy:last-child,
.freepage-ctt .sec .innerbox p.note:last-child,
.freepage-ctt .sec .innerbox .parts-100img:last-child,
.freepage-ctt .sec .innerbox .box_imglefttxt:last-child,
.freepage-ctt .sec .innerbox .box_imgrighttxt:last-child,
.freepage-ctt .sec .innerbox .img2box:last-child,
.freepage-ctt .sec .innerbox .img3txtbox:last-child,
.freepage-ctt .sec .innerbox .img4txtbox:last-child {
  padding-bottom: 0; }
.freepage-ctt .sec .innerbox .bbox:last-child,
.freepage-ctt .sec .innerbox .no_list:last-child,
.freepage-ctt .sec .innerbox .check_list:last-child,
.freepage-ctt .sec .innerbox .order_list:last-child,
.freepage-ctt .sec .innerbox .table_list:last-child,
.freepage-ctt .sec .innerbox .note_list:last-child {
  margin-bottom: 0; }

.img2box img:last-child,
.img3txtbox img:last-child,
.img4txtbox img:last-child {
  margin-bottom: 0; }
.img2box a img:last-child,
.img3txtbox a img:last-child,
.img4txtbox a img:last-child {
  margin-bottom: 2.778em; }
.img2box a:last-child img,
.img3txtbox a:last-child img,
.img4txtbox a:last-child img {
  margin-bottom: 0; }
  .img2box a:last-child img:last-child,
  .img3txtbox a:last-child img:last-child,
  .img4txtbox a:last-child img:last-child {
    margin-bottom: 0; }

li .youtube_box:last-child {
  margin-bottom: 0; }

.imgtxt_imgbox .youtube_box {
  margin-bottom: 0; }

/* =======================================================================================================================
　　　　　　　　　お問い合わせ
======================================================================================================================= */
.contact-template .wrap,
.contactpage-ctt {
  padding-top: 0;
  padding-bottom: 0; }

.contactpage-ctt {
  /* 見出し */ }
  .contactpage-ctt h3 {
    font-size: 1.6em;
    font-weight: 500;
    line-height: 1.4em;
    padding-bottom: 0.5em;
    text-align: center; }
  .contactpage-ctt .sec {
    width: 100%; }
    .contactpage-ctt .sec p {
      padding-bottom: 2em; }
      @media screen and (max-width: 980px) {
        .contactpage-ctt .sec p.center {
          text-align: left; }
          .contactpage-ctt .sec p.center.wpcf7c-elm-step2 {
            text-align: center; } }
    .contactpage-ctt .sec.contact_tel a {
      background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
      background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
      background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
      background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
      background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      text-decoration: none; }
    .contactpage-ctt .sec.contact_tel p {
      /* -------------------------- 電話 ------------------------------------------- */
      /* 時間 */ }
      .contactpage-ctt .sec.contact_tel p.contacttel_tel {
        font-size: 3em;
        line-height: 1em;
        padding-bottom: 0.1em;
        background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
        background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        .contactpage-ctt .sec.contact_tel p.contacttel_tel strong {
          background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
          background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
          background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
          background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
          background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          text-decoration: none; }
        .contactpage-ctt .sec.contact_tel p.contacttel_tel::before {
          display: inline-block;
          padding-right: 0.2em;
          font-family: "Font Awesome 5 Free";
          content: "\f095";
          font-weight: 900;
          background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
          background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
          background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
          background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
          background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent; }
        @media screen and (max-width: 980px) {
          .contactpage-ctt .sec.contact_tel p.contacttel_tel.center {
            text-align: center; } }
      .contactpage-ctt .sec.contact_tel p.contacttel_time {
        font-size: 1.5em;
        font-weight: 700;
        line-height: 1.3em;
        padding-bottom: 0;
        background: -webkit-gradient(linear, left top, right top, from(#22b4ea), color-stop(70%), to(#15278b));
        background: -webkit-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -moz-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: -o-linear-gradient(left, #22b4ea, 70%, #15278b);
        background: linear-gradient(90deg, #22b4ea, 70%, #15278b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        @media screen and (max-width: 980px) {
          .contactpage-ctt .sec.contact_tel p.contacttel_time.center {
            text-align: center; } }

/* =======================================================================================================================
　　　　　　　　　採用情報
======================================================================================================================= */
#recruit .page-header {
  padding-top: 2.778em;
  padding-bottom: 0; }
  #recruit .page-header .innerbox {
    padding-bottom: calc(56.6% - 8em); }
    @media screen and (max-width: 1520px) {
      #recruit .page-header .innerbox .page-title {
        padding-left: 5.556em; } }
    @media screen and (max-width: 980px) {
      #recruit .page-header .innerbox .page-title {
        padding-left: 2em;
        top: -2em; } }
    @media screen and (max-width: 480px) {
      #recruit .page-header .innerbox .page-title {
        padding-left: 3em;
        top: -1em; } }
    #recruit .page-header .innerbox::after {
      content: "";
      display: block;
      position: absolute;
      top: auto;
      left: 0;
      right: 0;
      bottom: -11.111em;
      margin: auto;
      padding-bottom: 71.5%;
      background: url("../../../images/recruit.png") no-repeat 0 0;
      background-size: contain; }
      @media screen and (max-width: 980px) {
        #recruit .page-header .innerbox::after {
          position: absolute;
          top: auto;
          left: 1em;
          right: 1em;
          bottom: -11.111em; } }
#recruit #wrapper {
  padding-top: 5.556em; }
  @media screen and (max-width: 480px) {
    #recruit #wrapper {
      padding-top: 2em; } }
  #recruit #wrapper .stepup {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    top: -11.111em; }
    @media screen and (max-width: 980px) {
      #recruit #wrapper .stepup {
        top: -2.778em; } }
    #recruit #wrapper .stepup img {
      width: 100%;
      height: auto; }
    #recruit #wrapper .stepup + p {
      margin-top: -11.111em; }
      @media screen and (max-width: 980px) {
        #recruit #wrapper .stepup + p {
          margin-top: -1em; } }
      @media screen and (max-width: 480px) {
        #recruit #wrapper .stepup + p {
          margin-top: -2.778em; } }
  #recruit #wrapper .staff_list {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside;
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media screen and (max-width: 480px) {
      #recruit #wrapper .staff_list {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: justify;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin-top: -4%; } }
    #recruit #wrapper .staff_list li {
      width: 20%; }
      @media screen and (max-width: 480px) {
        #recruit #wrapper .staff_list li {
          width: 48%;
          margin-top: 4%; } }
      #recruit #wrapper .staff_list li a img {
        width: 100%;
        height: auto; }
      #recruit #wrapper .staff_list li a:hover img {
        opacity: 0;
        filter: alpha(opacity=0); }
      #recruit #wrapper .staff_list li:nth-child(1) {
        background: url("../../../images/staff01_hv.jpg") no-repeat 0 0;
        background-size: cover; }
      #recruit #wrapper .staff_list li:nth-child(2) {
        background: url("../../../images/staff02_hv.jpg") no-repeat 0 0;
        background-size: cover; }
      #recruit #wrapper .staff_list li:nth-child(3) {
        background: url("../../../images/staff03_hv.jpg") no-repeat 0 0;
        background-size: cover; }
      #recruit #wrapper .staff_list li:nth-child(4) {
        background: url("../../../images/staff04_hv.jpg") no-repeat 0 0;
        background-size: cover; }
      #recruit #wrapper .staff_list li:nth-child(5) {
        background: url("../../../images/staff05_hv.jpg") no-repeat 0 0;
        background-size: cover; }
      @media screen and (max-width: 480px) {
        #recruit #wrapper .staff_list li:nth-child(2n) {
          -webkit-transform: translate(0, 50%);
          -moz-transform: translate(0, 50%);
          -ms-transform: translate(0, 50%);
          -o-transform: translate(0, 50%);
          transform: translate(0, 50%); } }

/* =======================================================================================================================
　　　　　　　　　スタッフインタビュー
======================================================================================================================= */
.page-header .innerbox .staff_main {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 0.5em; }
  .page-header .innerbox .staff_main img {
    width: 100%;
    height: auto; }
.page-header .innerbox .staff_status {
  font-size: 1.25em;
  font-weight: 500;
  line-height: 1.25em;
  color: #fff;
  padding-top: 0.5em; }

/*# sourceMappingURL=style.css.map */
