@charset "UTF-8";
/* CSS Document */
/*
Theme Name: イング・ワールド
Author: 株式会社ジャンプス

*/
* {
  margin: 0;
  padding: 0; }

body, html {
  scroll-behavior: smooth; }

/* =======================================================================================================================
　　　　　　　　　全体
======================================================================================================================= */
body {
  font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-size: 1vw;
  font-weight: 400;
  line-height: 2em;
  letter-spacing: 0;
  background: #fff;
  color: #000; }
  @media screen and (max-width: 1170px) {
    body {
      font-size: 1.6vw; } }
  @media screen and (max-width: 768px) {
    body {
      font-size: 2.5vw; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 3.8vw; } }

/* =======================================================================================================================
　　　　　　　　　レイアウト
======================================================================================================================= */
.sec {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10em 0;
  /* セクション動き（共通） */ }
  @media screen and (max-width: 768px) {
    .sec {
      padding: 7.5em 0; } }
  @media screen and (max-width: 480px) {
    .sec {
      padding: 5em 0; } }
  .sec.sec_tab {
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
    transition: 0.5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translate(0, 9em);
    -moz-transform: translate(0, 9em);
    -ms-transform: translate(0, 9em);
    -o-transform: translate(0, 9em);
    transform: translate(0, 9em);
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    margin-top: -10em;
    padding-bottom: 20em; }
    .sec.sec_tab.on, .sec.sec_tab.svon {
      -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 (max-width: 768px) {
      .sec.sec_tab {
        padding-bottom: 15em;
        margin-top: -7.5em;
        -webkit-transform: translate(0, 6.5em);
        -moz-transform: translate(0, 6.5em);
        -ms-transform: translate(0, 6.5em);
        -o-transform: translate(0, 6.5em);
        transform: translate(0, 6.5em); }
        .sec.sec_tab.on, .sec.sec_tab.svon {
          -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 (max-width: 480px) {
      .sec.sec_tab {
        padding-bottom: 10em;
        -webkit-transform: translate(0, 4em);
        -moz-transform: translate(0, 4em);
        -ms-transform: translate(0, 4em);
        -o-transform: translate(0, 4em);
        transform: translate(0, 4em); }
        .sec.sec_tab.on, .sec.sec_tab.svon {
          -webkit-transform: translate(0, 0);
          -moz-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
          -o-transform: translate(0, 0);
          transform: translate(0, 0); } }

.innerbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10em; }
  @media screen and (max-width: 1170px) {
    .innerbox {
      padding: 0 5em; } }
  @media screen and (max-width: 768px) {
    .innerbox {
      padding: 0 2.5em; } }
  @media screen and (max-width: 480px) {
    .innerbox {
      padding: 0 1.5em; } }

#header {
  width: auto;
  height: 5em;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  margin: auto;
  z-index: 999;
  /* 表示アニメーション */ }
  #front-page #header {
    -webkit-transition-delay: 2s;
    -moz-transition-delay: 2s;
    -o-transition-delay: 2s;
    transition-delay: 2s; }
  #header .innerbox {
    height: 5em; }

#wrapper {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

#footer {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5em 0; }

/* ================= 固定動画背景 ============================================================ */
.mainbg_box {
  position: fixed;
  top: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border-top-left-radius: 1em;
  border-top-right-radius: 1em;
  z-index: -1;
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  /* 表示アニメーション */
  /* スクロール時 */
  /* 比較（明）オーバーレイ */
  /* 動画 */ }
  .mainbg_box.lazyloaded {
    top: 27.5em; }
    @media screen and (max-width: 768px) {
      .mainbg_box.lazyloaded {
        top: 18.75em; } }
    @media screen and (max-width: 480px) {
      .mainbg_box.lazyloaded {
        top: 16.875em; } }
    #front-page .mainbg_box.lazyloaded {
      top: 50vh;
      top: calc(var(--vh, 1vh) * 50 ); }
@media screen and (min-width: 1171px) and (min-aspect-ratio: 5 / 2) {
  #front-page .mainbg_box.lazyloaded {
    top: 20vw; } }

@media screen and (min-width: 769px) and (min-aspect-ratio: 20 / 9) {
  #front-page .mainbg_box.lazyloaded {
    top: 22.5vw; } }
@media screen and (min-width: 769px) and (max-aspect-ratio: 16 / 11) {
  #front-page .mainbg_box.lazyloaded {
    top: 34.375vw; } }

@media screen and (max-width: 768px) and (min-aspect-ratio: 5 / 3) {
  #front-page .mainbg_box.lazyloaded {
    top: 30vw; } }

@media screen and (max-width: 480px) and (min-aspect-ratio: 8 / 11) {
  #front-page .mainbg_box.lazyloaded {
    top: 68.75vw; } }
@media screen and (max-width: 480px) and (min-aspect-ratio: 1 / 1) {
  #front-page .mainbg_box.lazyloaded {
    top: 0; } }

@media screen and (max-width: 480px) and (min-aspect-ratio: 1 / 1) {
  .mainbg_box {
    z-index: 99999;
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
    .mainbg_box::before {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      box-sizing: border-box;
      padding: 1.5em;
      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;
      content: "当サイトはスマートフォンの横向きには対応していません。スマートフォンを縦にしてご覧ください。";
      background: rgba(14, 68, 175, 0.5);
      line-height: 1.5em;
      color: #fff; } }

  .mainbg_box.scroll {
    top: -1em !important; }
  .mainbg_box::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #0356fa;
    mix-blend-mode: lighten;
    opacity: 0.5;
    filter: alpha(opacity=50); }
  .mainbg_box .mainbg {
    object-fit: cover;
    object-position: 50% 100%;
    width: 100%;
    height: 100%;
    opacity: 0;
    filter: alpha(opacity=0); }
    .mainbg_box .mainbg.lazyloaded {
      opacity: 1;
      filter: alpha(opacity=100); }

/* 欧文フォント */
.eg {
  font-family: 'Crimson Text', serif; }

/* 日本語フォント */
.jp {
  font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif; }

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

.right {
  text-align: right; }

/* ノートパソコン改行 */
@media screen and (max-width: 1170px) {
  .npbr {
    display: block; } }

/* タブレット改行 */
@media screen and (max-width: 768px) {
  .tbbr {
    display: block; } }

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

/* スマホ非表示 */
@media screen and (max-width: 480px) {
  .spnone {
    display: none; } }

/* 見出し */
.sec_ttl {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  font-weight: normal;
  color: #0e44af;
  padding-bottom: 5em; }
  @media screen and (max-width: 768px) {
    .sec_ttl {
      padding-bottom: 3.5em; } }
  .sec_ttl span {
    display: block; }
    .sec_ttl span.eg {
      font-size: 5em;
      font-weight: 600;
      line-height: 1em; }
      @media screen and (max-width: 1170px) {
        .sec_ttl span.eg {
          font-size: 4em; } }
      .sec_ttl span.eg + .jp {
        padding-top: 0.1em; }
    .sec_ttl span.jp {
      font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
      font-style: normal;
      font-size: 2.5em;
      font-weight: 700;
      line-height: 1em; }
      @media screen and (max-width: 1170px) {
        .sec_ttl span.jp {
          font-size: 2em; } }

.sub_ttl {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  font-weight: normal;
  margin-bottom: 1.5em; }
  @media screen and (max-width: 768px) {
    .sub_ttl {
      margin-bottom: 1em; } }
  .sub_ttl .eg {
    display: block;
    font-family: annabelle-jf, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 5em;
    color: #0ec1e7;
    position: absolute;
    top: auto;
    left: 1.35em;
    right: auto;
    bottom: -1.7em;
    -webkit-transform: rotate(-20deg);
    -moz-transform: rotate(-20deg);
    -ms-transform: rotate(-20deg);
    -o-transform: rotate(-20deg);
    transform: rotate(-20deg);
    -webkit-transform-origin: 0 100%;
    -moz-transform-origin: 0 100%;
    -ms-transform-origin: 0 100%;
    -o-transform-origin: 0 100%;
    transform-origin: 0 100%;
    /* 出現アニメーション */
    white-space: nowrap;
    overflow: hidden;
    line-height: 2em;
    max-width: 0;
    opacity: 0;
    filter: alpha(opacity=0); }
    @media screen and (max-width: 1170px) {
      .sub_ttl .eg {
        font-size: 3.5em; } }
    @media screen and (max-width: 768px) {
      .sub_ttl .eg {
        font-size: 3em; } }
    .sub_ttl .eg.lazyload {
      -webkit-transition: 10s ease;
      -moz-transition: 10s ease;
      -ms-transition: 10s ease;
      -o-transition: 10s ease;
      transition: 10s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      -webkit-transition-delay: 0.2s;
      -moz-transition-delay: 0.2s;
      -o-transition-delay: 0.2s;
      transition-delay: 0.2s; }
    .on .sub_ttl .eg.lazyloaded {
      max-width: 10em;
      opacity: 0.5;
      filter: alpha(opacity=50); }
  .sub_ttl .jp {
    display: block;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.5em;
    z-index: 1; }
    @media screen and (max-width: 1170px) {
      .sub_ttl .jp {
        font-size: 1.8em; } }
    @media screen and (max-width: 768px) {
      .sub_ttl .jp {
        font-size: 1.5em; } }

/* 段落 */
p {
  padding-bottom: 2em; }

/* 注釈 */
.note {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 0.85em;
  line-height: 1.25em;
  opacity: 0.6;
  filter: alpha(opacity=60); }
  .note::before {
    content: "※"; }

/* 画像 */
img {
  vertical-align: bottom; }
  img.img100 {
    object-fit: cover;
    object-position: 50% 50%;
    width: 100%;
    height: 100%; }

.imgbox {
  line-height: 0; }

/* =======================================================================================================================
　　　　　　　　　SVG
======================================================================================================================= */
.st1 {
  fill: none;
  stroke: #fff;
  stroke-width: 42;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10; }

/* 読み込み遅延 */
img {
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  img.lazyload {
    opacity: 0;
    filter: alpha(opacity=0); }
  img.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }

/* 読み込み遅延 */
.lazyload0, .lazyload1, .lazyload2, .lazyload3, .lazyload4 {
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  opacity: 0;
  filter: alpha(opacity=0); }
  .lazyload0.lazyloaded, .lazyload1.lazyloaded, .lazyload2.lazyloaded, .lazyload3.lazyloaded, .lazyload4.lazyloaded {
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -ms-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 1;
    filter: alpha(opacity=100); }

.lazyload1 {
  -webkit-transform: translate(0, 2.5em);
  -moz-transform: translate(0, 2.5em);
  -ms-transform: translate(0, 2.5em);
  -o-transform: translate(0, 2.5em);
  transform: translate(0, 2.5em); }
  .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.lazyload2 {
  -webkit-transform: translate(-2.5em, 0);
  -moz-transform: translate(-2.5em, 0);
  -ms-transform: translate(-2.5em, 0);
  -o-transform: translate(-2.5em, 0);
  transform: translate(-2.5em, 0); }
  .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.lazyload3 {
  -webkit-transform: translate(2.5em, 0);
  -moz-transform: translate(2.5em, 0);
  -ms-transform: translate(2.5em, 0);
  -o-transform: translate(2.5em, 0);
  transform: translate(2.5em, 0); }
  .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.lazyload4 {
  -webkit-transform: translate(0, -2.5em);
  -moz-transform: translate(0, -2.5em);
  -ms-transform: translate(0, -2.5em);
  -o-transform: translate(0, -2.5em);
  transform: translate(0, -2.5em); }
  .lazyload4.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

/* トップページ内コンテンツの場合 */
#front-page .sec .lazyload0.lazyloaded, #front-page .sec .lazyload1.lazyloaded, #front-page .sec .lazyload2.lazyloaded, #front-page .sec .lazyload3.lazyloaded, #front-page .sec .lazyload4.lazyloaded {
  opacity: 0;
  filter: alpha(opacity=0); }
#front-page .sec .lazyload1.lazyloaded {
  -webkit-transform: translate(0, 2.5em);
  -moz-transform: translate(0, 2.5em);
  -ms-transform: translate(0, 2.5em);
  -o-transform: translate(0, 2.5em);
  transform: translate(0, 2.5em); }
#front-page .sec .lazyload2.lazyloaded {
  -webkit-transform: translate(-2.5em, 0);
  -moz-transform: translate(-2.5em, 0);
  -ms-transform: translate(-2.5em, 0);
  -o-transform: translate(-2.5em, 0);
  transform: translate(-2.5em, 0); }
#front-page .sec .lazyload3.lazyloaded {
  -webkit-transform: translate(2.5em, 0);
  -moz-transform: translate(2.5em, 0);
  -ms-transform: translate(2.5em, 0);
  -o-transform: translate(2.5em, 0);
  transform: translate(2.5em, 0); }
#front-page .sec .lazyload4.lazyloaded {
  -webkit-transform: translate(0, -2.5em);
  -moz-transform: translate(0, -2.5em);
  -ms-transform: translate(0, -2.5em);
  -o-transform: translate(0, -2.5em);
  transform: translate(0, -2.5em); }
#front-page .sec.on .lazyload0.lazyloaded, #front-page .sec.on .lazyload1.lazyloaded, #front-page .sec.on .lazyload2.lazyloaded, #front-page .sec.on .lazyload3.lazyloaded, #front-page .sec.on .lazyload4.lazyloaded {
  opacity: 1;
  filter: alpha(opacity=100); }
#front-page .sec.on .lazyload1.lazyloaded {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0); }
#front-page .sec.on .lazyload2.lazyloaded {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0); }
#front-page .sec.on .lazyload3.lazyloaded {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0); }
#front-page .sec.on .lazyload4.lazyloaded {
  -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-width: 1921px) and (max-aspect-ratio: 100 / 53) {
  #front-page .sec.onsp .lazyload0.lazyloaded, #front-page .sec.onsp .lazyload1.lazyloaded, #front-page .sec.onsp .lazyload2.lazyloaded, #front-page .sec.onsp .lazyload3.lazyloaded, #front-page .sec.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .sec.onsp .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload4.lazyloaded {
    -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 (max-width: 1920px) and (min-width: 1171px) and (max-aspect-ratio: 2 / 1) {
  #front-page .sec.onsp .lazyload0.lazyloaded, #front-page .sec.onsp .lazyload1.lazyloaded, #front-page .sec.onsp .lazyload2.lazyloaded, #front-page .sec.onsp .lazyload3.lazyloaded, #front-page .sec.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .sec.onsp .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload4.lazyloaded {
    -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 (max-width: 1170px) and (min-width: 769px) and (max-aspect-ratio: 25 / 13) {
  #front-page .sec.onsp .lazyload0.lazyloaded, #front-page .sec.onsp .lazyload1.lazyloaded, #front-page .sec.onsp .lazyload2.lazyloaded, #front-page .sec.onsp .lazyload3.lazyloaded, #front-page .sec.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .sec.onsp .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload4.lazyloaded {
    -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 (max-width: 768px) and (min-width: 481px) and (max-aspect-ratio: 25 / 37) {
  #front-page .sec.onsp .lazyload0.lazyloaded, #front-page .sec.onsp .lazyload1.lazyloaded, #front-page .sec.onsp .lazyload2.lazyloaded, #front-page .sec.onsp .lazyload3.lazyloaded, #front-page .sec.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .sec.onsp .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload4.lazyloaded {
    -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 (max-width: 480px) and (max-aspect-ratio: 35 / 68) {
  #front-page .sec.onsp .lazyload0.lazyloaded, #front-page .sec.onsp .lazyload1.lazyloaded, #front-page .sec.onsp .lazyload2.lazyloaded, #front-page .sec.onsp .lazyload3.lazyloaded, #front-page .sec.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page .sec.onsp .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  #front-page .sec.onsp .lazyload4.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); } }

/* リンク */
a {
  text-decoration: none;
  color: #0e44af;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  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;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  a:hover {
    color: #0ec1e7; }
    a:hover img {
      opacity: 0.7;
      filter: alpha(opacity=70); }

/* ================= 右から左に流れ続けるアニメーション ============================================================ */
@-webkit-keyframes flowani1 {
  0% {
    -webkit-transform: translateX(8.5em);
    transform: translateX(8.5em); }
  to {
    -webkit-transform: translateX(-8.5em);
    transform: translateX(-8.5em); } }
@-moz-keyframes flowani1 {
  0% {
    -moz-transform: translateX(8.5em);
    transform: translateX(8.5em); }
  to {
    -moz-transform: translateX(-8.5em);
    transform: translateX(-8.5em); } }
@-o-keyframes flowani1 {
  0% {
    -o-transform: translateX(8.5em);
    transform: translateX(8.5em); }
  to {
    -o-transform: translateX(-8.5em);
    transform: translateX(-8.5em); } }
@keyframes flowani1 {
  0% {
    -webkit-transform: translateX(8.5em);
    -moz-transform: translateX(8.5em);
    -o-transform: translateX(8.5em);
    transform: translateX(8.5em); }
  to {
    -webkit-transform: translateX(-8.5em);
    -moz-transform: translateX(-8.5em);
    -o-transform: translateX(-8.5em);
    transform: translateX(-8.5em); } }
@-webkit-keyframes flowani2 {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(-17em);
    transform: translateX(-17em); } }
@-moz-keyframes flowani2 {
  0% {
    -moz-transform: translateX(0);
    transform: translateX(0); }
  to {
    -moz-transform: translateX(-17em);
    transform: translateX(-17em); } }
@-o-keyframes flowani2 {
  0% {
    -o-transform: translateX(0);
    transform: translateX(0); }
  to {
    -o-transform: translateX(-17em);
    transform: translateX(-17em); } }
@keyframes flowani2 {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(-17em);
    -moz-transform: translateX(-17em);
    -o-transform: translateX(-17em);
    transform: translateX(-17em); } }
/* ================= 上下に動き続けるアニメーション ============================================================ */
@-webkit-keyframes updownani {
  0% {
    bottom: 0em; }
  49% {
    bottom: 0em; }
  50% {
    bottom: 10em; }
  100% {
    bottom: 0; } }
@-moz-keyframes updownani {
  0% {
    bottom: 0em; }
  49% {
    bottom: 0em; }
  50% {
    bottom: 10em; }
  100% {
    bottom: 0; } }
@-o-keyframes updownani {
  0% {
    bottom: 0em; }
  49% {
    bottom: 0em; }
  50% {
    bottom: 10em; }
  100% {
    bottom: 0; } }
@keyframes updownani {
  0% {
    bottom: 0em; }
  49% {
    bottom: 0em; }
  50% {
    bottom: 10em; }
  100% {
    bottom: 0; } }
/* ================= 左右に背景画像が動き続けるアニメーション ============================================================ */
@keyframes yaani {
  0% {
    right: 1em; }
  70% {
    right: 0.66em; }
  100% {
    right: 1em; } }
@keyframes yaani2 {
  0% {
    left: 0.25em;
    right: auto; }
  70% {
    left: 0.75em;
    right: auto; }
  100% {
    left: 0.25em;
    right: auto; } }
/* ボタン */
.btn a {
  font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-style: normal;
  font-size: 1em;
  font-weight: 700;
  display: inline-block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 12em;
  height: 4em;
  line-height: 1em;
  border: #fff solid 0.17em;
  border-radius: 2.5em;
  background: transparent;
  padding: 1.205em 4em 1.205em 1.7em;
  color: #fff;
  text-align: center;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  cursor: pointer; }
  .btn a::after {
    content: "";
    display: block;
    width: 2em;
    height: 2em;
    border-radius: 50%;
    background-position: 50% 50%;
    background-size: 1em auto;
    background-repeat: no-repeat;
    position: absolute;
    top: 0.83em;
    left: auto;
    right: 0.83em;
    bottom: auto;
    -webkit-transform: scale(0.3);
    -moz-transform: scale(0.3);
    -ms-transform: scale(0.3);
    -o-transform: scale(0.3);
    transform: scale(0.3);
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: #fff; }
    @media screen and (max-width: 768px) {
      .btn a::after {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1); } }
    @media screen and (max-width: 768px) {
      .btn a::after {
        background-image: url("/images/ya2.svg"); } }
  .btn a span {
    display: inline-block;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-family: 'Crimson Text', serif;
    font-size: 1.25em;
    line-height: 1em;
    -webkit-transform: translate(0, 0.1em);
    -moz-transform: translate(0, 0.1em);
    -ms-transform: translate(0, 0.1em);
    -o-transform: translate(0, 0.1em);
    transform: translate(0, 0.1em); }
  .btn a:hover {
    -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); }
    .btn a:hover::after {
      background-position: 50% 50%;
      background-size: 1em auto;
      background-repeat: no-repeat;
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1);
      animation: yaani 0.5s ease-in-out infinite;
      background-image: url("/images/ya2.svg"); }
.btn.btn_bl a {
  border-color: #0e44af;
  color: #0e44af; }
  .btn.btn_bl a::after {
    content: "";
    display: block;
    width: 2em;
    height: 2em;
    border-radius: 50%;
    background-position: 50% 50%;
    background-size: 1em auto;
    background-repeat: no-repeat;
    position: absolute;
    top: 0.83em;
    left: auto;
    right: 0.83em;
    bottom: auto;
    -webkit-transform: scale(0.3);
    -moz-transform: scale(0.3);
    -ms-transform: scale(0.3);
    -o-transform: scale(0.3);
    transform: scale(0.3);
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: #0e44af;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
    @media screen and (max-width: 768px) {
      .btn.btn_bl a::after {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1); } }
    @media screen and (max-width: 768px) {
      .btn.btn_bl a::after {
        background-image: url("/images/ya.svg"); } }
  .btn.btn_bl a:hover::after {
    background-position: 50% 50%;
    background-size: 1em auto;
    background-repeat: no-repeat;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    animation: yaani 0.5s ease-in-out infinite;
    background-image: url("/images/ya.svg"); }
.btn.btn_cy a::after {
  content: "";
  display: block;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background-position: 50% 50%;
  background-size: 1em auto;
  background-repeat: no-repeat;
  position: absolute;
  top: 0.83em;
  left: auto;
  right: 0.83em;
  bottom: auto;
  -webkit-transform: scale(0.3);
  -moz-transform: scale(0.3);
  -ms-transform: scale(0.3);
  -o-transform: scale(0.3);
  transform: scale(0.3);
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  @media screen and (max-width: 768px) {
    .btn.btn_cy a::after {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1); } }
  @media screen and (max-width: 768px) {
    .btn.btn_cy a::after {
      background-image: url("/images/ya3.svg"); } }
.btn.btn_cy a:hover::after {
  background-position: 50% 50%;
  background-size: 1em auto;
  background-repeat: no-repeat;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  animation: yaani 0.5s ease-in-out infinite;
  background-image: url("/images/ya3.svg"); }

/* ================= フォーム ============================================================ */
/* ブラウザスタイル解除 */
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; }

.formbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  /* -------------------------- Contact Form 7 ------------------------------------------- */ }
  .formbox .wpcf7-form {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /* 項目名（共通） */
    /* ラベルで挟まれた項目 */
    /* fieldsetで挟まれた項目 */
    /* チェックボックス・ラジオボタン */
    /* 承認確認 */
    /*送信ボタン*/
    /* エラーメッセージ */ }
    .formbox .wpcf7-form .formname {
      width: 13em; }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form .formname {
          width: 100%; } }
    .formbox .wpcf7-form label.formctt {
      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;
      /* 項目名 */
      /* フォーム内容 */ }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form label.formctt {
          display: block; } }
      .formbox .wpcf7-form label.formctt .formname {
        line-height: 1.7em;
        padding-top: 0.75em; }
      .formbox .wpcf7-form label.formctt .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) {
          .formbox .wpcf7-form label.formctt .wpcf7-form-control-wrap {
            -webkit-box-flex: 0;
            -webkit-flex: none;
            -moz-box-flex: 0;
            -ms-flex: none;
            flex: none; } }
    .formbox .wpcf7-form fieldset.formctt {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      border: none;
      padding-left: 13em;
      /* 項目名 */
      /* フォーム内容 */
      /* 改行 */ }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form fieldset.formctt {
          padding-left: 0; } }
      .formbox .wpcf7-form fieldset.formctt .formname {
        position: absolute;
        top: 0;
        left: 0;
        right: auto;
        bottom: auto; }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form fieldset.formctt .formname {
            position: relative; } }
      .formbox .wpcf7-form fieldset.formctt .wpcf7-form-control-wrap {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .formbox .wpcf7-form fieldset.formctt br {
        display: none; }
    .formbox .wpcf7-form p {
      padding: 0 0 2em 0; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form input[type="date"],
    .formbox .wpcf7-form select,
    .formbox .wpcf7-form textarea {
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-size: 1em;
      font-weight: 400;
      line-height: 1.7em;
      box-sizing: border-box;
      padding: 0.75em 1.5em;
      border-radius: 1.6em;
      border: none; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form select,
    .formbox .wpcf7-form textarea {
      width: 100% !important; }
    .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item,
    .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
      margin-left: 0;
      margin-right: 1em; }
      .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item label,
      .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item label {
        cursor: pointer;
        font-weight: 400; }
    .formbox .wpcf7-form .wpcf7-acceptance label {
      cursor: pointer; }
    .formbox .wpcf7-form input[type="submit"] {
      font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
      font-style: normal;
      font-size: 1em;
      font-weight: 700;
      display: inline-block;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      min-width: 12em;
      height: 4em;
      line-height: 1em;
      border: #fff solid 0.17em;
      border-radius: 2.5em;
      background: transparent;
      padding: 1.205em 4em 1.205em 1.7em;
      color: #fff;
      text-align: center;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      cursor: pointer;
      padding: 1.205em 1.7em;
      letter-spacing: 1em;
      text-indent: 1em; }
      .formbox .wpcf7-form input[type="submit"]::after {
        content: "";
        display: block;
        width: 2em;
        height: 2em;
        border-radius: 50%;
        background-position: 50% 50%;
        background-size: 1em auto;
        background-repeat: no-repeat;
        position: absolute;
        top: 0.83em;
        left: auto;
        right: 0.83em;
        bottom: auto;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background-color: #fff; }
        @media screen and (max-width: 768px) {
          .formbox .wpcf7-form input[type="submit"]::after {
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -ms-transform: scale(1);
            -o-transform: scale(1);
            transform: scale(1); } }
        @media screen and (max-width: 768px) {
          .formbox .wpcf7-form input[type="submit"]::after {
            background-image: url("/images/ya2.svg"); } }
      .formbox .wpcf7-form input[type="submit"] span {
        display: inline-block;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-family: 'Crimson Text', serif;
        font-size: 1.25em;
        line-height: 1em;
        -webkit-transform: translate(0, 0.1em);
        -moz-transform: translate(0, 0.1em);
        -ms-transform: translate(0, 0.1em);
        -o-transform: translate(0, 0.1em);
        transform: translate(0, 0.1em); }
      .formbox .wpcf7-form input[type="submit"]:hover {
        -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); }
        .formbox .wpcf7-form input[type="submit"]:hover::after {
          background-position: 50% 50%;
          background-size: 1em auto;
          background-repeat: no-repeat;
          -webkit-transform: scale(1);
          -moz-transform: scale(1);
          -ms-transform: scale(1);
          -o-transform: scale(1);
          transform: scale(1);
          animation: yaani 0.5s ease-in-out infinite;
          background-image: url("/images/ya2.svg"); }
      .formbox .wpcf7-form input[type="submit"]:disabled {
        opacity: 0.2;
        filter: alpha(opacity=20);
        cursor: not-allowed; }
        .formbox .wpcf7-form input[type="submit"]:disabled:hover {
          background: transparent;
          -webkit-transform: translate(0, 0);
          -moz-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
          -o-transform: translate(0, 0);
          transform: translate(0, 0); }
    .formbox .wpcf7-form .wpcf7-not-valid-tip {
      color: #fff;
      background: #0ec1e7;
      line-height: 1.5em;
      display: inline-block;
      padding: 0 0.5em;
      margin-top: 0.5em; }
    .formbox .wpcf7-form .wpcf7-response-output {
      border: none !important;
      line-height: 1.5em;
      padding: 0 0.5em;
      padding-left: 1.5em;
      text-indent: -1em;
      display: inline-block;
      color: #fff;
      background: #0ec1e7; }
      .formbox .wpcf7-form .wpcf7-response-output::before {
        content: "※"; }

/* ================= 新着記事 ============================================================ */
.post_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none inside; }
  .post_list li {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 0.5em;
    /* 表示アニメーション	 */ }
    .post_list li:last-child {
      padding-bottom: 0; }
    .post_list li a {
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      line-height: 1em;
      border-radius: 1em;
      opacity: 0.75;
      filter: alpha(opacity=75);
      width: 100%;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      -o-text-overflow: ellipsis;
      /* Opera9,10対応 */
      background: #fff;
      color: #000;
      padding: 2em;
      padding-right: 4em;
      /* 日付 ------------------------------------------- */
      /* 記事の見出し ------------------------------------------- */
      /* -------------------------- マウスオーバー ------------------------------------------- */ }
      .post_list li a::after {
        content: "";
        display: block;
        width: 2em;
        height: 2em;
        border-radius: 50%;
        background-position: 50% 50%;
        background-size: 1em auto;
        background-repeat: no-repeat;
        position: absolute;
        top: 0.83em;
        left: auto;
        right: 0.83em;
        bottom: auto;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background-color: #0e44af;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
        @media screen and (max-width: 768px) {
          .post_list li a::after {
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -ms-transform: scale(1);
            -o-transform: scale(1);
            transform: scale(1); } }
        @media screen and (max-width: 768px) {
          .post_list li a::after {
            background-image: url("/images/ya.svg"); } }
      .post_list li a:hover::after {
        background-position: 50% 50%;
        background-size: 1em auto;
        background-repeat: no-repeat;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
        animation: yaani 0.5s ease-in-out infinite;
        background-image: url("/images/ya.svg"); }
      .post_list li a::after {
        top: 1.5em; }
      @media screen and (max-width: 480px) {
        .post_list li a {
          padding: 1.5em 2.8em 1.5em 1em; }
          .post_list li a::after {
            top: 1em;
            right: 0.6em; } }
      .post_list li a .date,
      .post_list li a .post_ttl {
        display: inline; }
      .post_list li a .date {
        font-family: 'Crimson Text', serif;
        font-size: 1.25em;
        padding-right: 1em;
        color: #0e44af; }
        @media screen and (max-width: 480px) {
          .post_list li a .date {
            font-size: 1em;
            padding-right: 0.25em; } }
      .post_list li a .post_ttl {
        font-weight: 500; }
        @media screen and (max-width: 480px) {
          .post_list li a .post_ttl {
            font-size: 0.85em; } }
      .post_list li a:hover {
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-transform: translate(0.5em, 0);
        -moz-transform: translate(0.5em, 0);
        -ms-transform: translate(0.5em, 0);
        -o-transform: translate(0.5em, 0);
        transform: translate(0.5em, 0); }
    .post_list li:nth-child(1) {
      -webkit-transition-delay: 0.2s;
      -moz-transition-delay: 0.2s;
      -o-transition-delay: 0.2s;
      transition-delay: 0.2s; }
    .post_list li:nth-child(2) {
      -webkit-transition-delay: 0.4s;
      -moz-transition-delay: 0.4s;
      -o-transition-delay: 0.4s;
      transition-delay: 0.4s; }
    .post_list li:nth-child(3) {
      -webkit-transition-delay: 0.6s;
      -moz-transition-delay: 0.6s;
      -o-transition-delay: 0.6s;
      transition-delay: 0.6s; }
    .post_list li:nth-child(4) {
      -webkit-transition-delay: 0.8s;
      -moz-transition-delay: 0.8s;
      -o-transition-delay: 0.8s;
      transition-delay: 0.8s; }
    .post_list li:nth-child(5) {
      -webkit-transition-delay: 1s;
      -moz-transition-delay: 1s;
      -o-transition-delay: 1s;
      transition-delay: 1s; }
    .post_list li:nth-child(6) {
      -webkit-transition-delay: 1.2s;
      -moz-transition-delay: 1.2s;
      -o-transition-delay: 1.2s;
      transition-delay: 1.2s; }
    .post_list li:nth-child(7) {
      -webkit-transition-delay: 1.4s;
      -moz-transition-delay: 1.4s;
      -o-transition-delay: 1.4s;
      transition-delay: 1.4s; }
    .post_list li:nth-child(8) {
      -webkit-transition-delay: 1.6s;
      -moz-transition-delay: 1.6s;
      -o-transition-delay: 1.6s;
      transition-delay: 1.6s; }
    .post_list li:nth-child(9) {
      -webkit-transition-delay: 1.8s;
      -moz-transition-delay: 1.8s;
      -o-transition-delay: 1.8s;
      transition-delay: 1.8s; }
    .post_list li:nth-child(10) {
      -webkit-transition-delay: 2s;
      -moz-transition-delay: 2s;
      -o-transition-delay: 2s;
      transition-delay: 2s; }
    .post_list li:nth-child(11) {
      -webkit-transition-delay: 2.2s;
      -moz-transition-delay: 2.2s;
      -o-transition-delay: 2.2s;
      transition-delay: 2.2s; }
    .post_list li:nth-child(12) {
      -webkit-transition-delay: 2.4s;
      -moz-transition-delay: 2.4s;
      -o-transition-delay: 2.4s;
      transition-delay: 2.4s; }

/* ================= フォーム確認画面 ============================================================ */
.wpcf7cp-form-hide {
  display: none; }

.wpcf7-spinner {
  display: none; }

div#wpcf7cpcnf {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1em;
  background-color: #fff !important;
  border-radius: 1em;
  color: #000;
  /* 入力内容 */
  /* ボタン */ }
  div#wpcf7cpcnf table {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    div#wpcf7cpcnf table tr th,
    div#wpcf7cpcnf table tr td {
      border-bottom: #0e44af dashed 1px; }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf table tr th,
        div#wpcf7cpcnf table tr td {
          display: block; } }
      .contactpage-ctt .sec div#wpcf7cpcnf table tr th p, .contactpage-ctt .sec
      div#wpcf7cpcnf table tr td p {
        padding-top: 1em;
        padding-bottom: 1em; }
    div#wpcf7cpcnf table tr th {
      width: 20em;
      font-weight: normal !important;
      text-align: left; }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf table tr th {
          width: 100%;
          border-bottom: none; } }
      @media screen and (max-width: 480px) {
        .contactpage-ctt .sec div#wpcf7cpcnf table tr th p {
          padding-bottom: 0; } }
      div#wpcf7cpcnf table tr th p::after {
        content: "："; }
  div#wpcf7cpcnf .wpcf7cp-btns {
    text-align: center; }
    div#wpcf7cpcnf .wpcf7cp-btns button {
      font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
      font-style: normal;
      font-size: 1em;
      font-weight: 700;
      display: inline-block;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      min-width: 12em;
      height: 4em;
      line-height: 1em;
      border: #fff solid 0.17em;
      border-radius: 2.5em;
      background: transparent;
      padding: 1.205em 4em 1.205em 1.7em;
      color: #fff;
      text-align: center;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      cursor: pointer;
      border-radius: 4em;
      cursor: pointer;
      /* 修正ボタン */
      /* 送信ボタン */ }
      div#wpcf7cpcnf .wpcf7cp-btns button::after {
        content: "";
        display: block;
        width: 2em;
        height: 2em;
        border-radius: 50%;
        background-position: 50% 50%;
        background-size: 1em auto;
        background-repeat: no-repeat;
        position: absolute;
        top: 0.83em;
        left: auto;
        right: 0.83em;
        bottom: auto;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background-color: #fff; }
        @media screen and (max-width: 768px) {
          div#wpcf7cpcnf .wpcf7cp-btns button::after {
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -ms-transform: scale(1);
            -o-transform: scale(1);
            transform: scale(1); } }
        @media screen and (max-width: 768px) {
          div#wpcf7cpcnf .wpcf7cp-btns button::after {
            background-image: url("/images/ya2.svg"); } }
      div#wpcf7cpcnf .wpcf7cp-btns button span {
        display: inline-block;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-family: 'Crimson Text', serif;
        font-size: 1.25em;
        line-height: 1em;
        -webkit-transform: translate(0, 0.1em);
        -moz-transform: translate(0, 0.1em);
        -ms-transform: translate(0, 0.1em);
        -o-transform: translate(0, 0.1em);
        transform: translate(0, 0.1em); }
      div#wpcf7cpcnf .wpcf7cp-btns button:hover {
        -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); }
        div#wpcf7cpcnf .wpcf7cp-btns button:hover::after {
          background-position: 50% 50%;
          background-size: 1em auto;
          background-repeat: no-repeat;
          -webkit-transform: scale(1);
          -moz-transform: scale(1);
          -ms-transform: scale(1);
          -o-transform: scale(1);
          transform: scale(1);
          animation: yaani 0.5s ease-in-out infinite;
          background-image: url("/images/ya2.svg"); }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          padding-left: 2em;
          padding-right: 2em;
          letter-spacing: 0.5em;
          text-indent: 0.5em;
          width: 100% !important; } }
      div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn {
        border-color: #b8c0cf;
        color: #b8c0cf; }
        @media screen and (max-width: 480px) {
          div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn {
            margin-right: 0; } }
        div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn::after {
          content: "";
          display: block;
          width: 2em;
          height: 2em;
          border-radius: 50%;
          background-position: 50% 50%;
          background-size: 1em auto;
          background-repeat: no-repeat;
          position: absolute;
          top: 0.83em;
          left: auto;
          right: 0.83em;
          bottom: auto;
          -webkit-transform: scale(0.3);
          -moz-transform: scale(0.3);
          -ms-transform: scale(0.3);
          -o-transform: scale(0.3);
          transform: scale(0.3);
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          background-color: #b8c0cf;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
          @media screen and (max-width: 768px) {
            div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn::after {
              -webkit-transform: scale(1);
              -moz-transform: scale(1);
              -ms-transform: scale(1);
              -o-transform: scale(1);
              transform: scale(1); } }
          @media screen and (max-width: 768px) {
            div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn::after {
              background-image: url("/images/ya.svg"); } }
        div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn:hover::after {
          background-position: 50% 50%;
          background-size: 1em auto;
          background-repeat: no-repeat;
          -webkit-transform: scale(1);
          -moz-transform: scale(1);
          -ms-transform: scale(1);
          -o-transform: scale(1);
          transform: scale(1);
          animation: yaani 0.5s ease-in-out infinite;
          background-image: url("/images/ya.svg"); }
      div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit {
        letter-spacing: 0;
        text-indent: 0;
        padding-right: 3em;
        border-color: #0e44af;
        color: #0e44af; }
        div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit::after {
          content: "";
          display: block;
          width: 2em;
          height: 2em;
          border-radius: 50%;
          background-position: 50% 50%;
          background-size: 1em auto;
          background-repeat: no-repeat;
          position: absolute;
          top: 0.83em;
          left: auto;
          right: 0.83em;
          bottom: auto;
          -webkit-transform: scale(0.3);
          -moz-transform: scale(0.3);
          -ms-transform: scale(0.3);
          -o-transform: scale(0.3);
          transform: scale(0.3);
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          background-color: #0e44af;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
          @media screen and (max-width: 768px) {
            div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit::after {
              -webkit-transform: scale(1);
              -moz-transform: scale(1);
              -ms-transform: scale(1);
              -o-transform: scale(1);
              transform: scale(1); } }
          @media screen and (max-width: 768px) {
            div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit::after {
              background-image: url("/images/ya.svg"); } }
        div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit:hover::after {
          background-position: 50% 50%;
          background-size: 1em auto;
          background-repeat: no-repeat;
          -webkit-transform: scale(1);
          -moz-transform: scale(1);
          -ms-transform: scale(1);
          -o-transform: scale(1);
          transform: scale(1);
          animation: yaani 0.5s ease-in-out infinite;
          background-image: url("/images/ya.svg"); }

/* =======================================================================================================================
　　　　　　　　　ヘッダー
======================================================================================================================= */
#header::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border-bottom-left-radius: 1em;
  border-bottom-right-radius: 1em;
  background: rgba(255, 255, 255, 0.75);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  z-index: 3; }
#header .innerbox {
  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;
  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;
  /* ================= ロゴマーク ============================================================ */
  /* ================= グローバルナビゲーション ============================================================ */ }
  #header .innerbox .logo {
    width: 10em;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1em;
    line-height: 0;
    z-index: 5; }
    @media screen and (max-width: 768px) {
      #header .innerbox .logo {
        width: 12em;
        margin-top: -0.2em; } }
    #header .innerbox .logo a {
      /* -------------------------- マウスオーバー ------------------------------------------- */ }
      #header .innerbox .logo a img {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      #header .innerbox .logo a:hover img {
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1); }
  #header .innerbox .gnav {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      #header .innerbox .gnav {
        display: none; } }
    #header .innerbox .gnav ul {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      /* -------------------------- 親メニュー ------------------------------------------- */ }
      #header .innerbox .gnav ul li a {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: inline-block;
        height: 5em;
        padding: 0 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; }
      #header .innerbox .gnav ul.main_menu > li > a {
        font-weight: 500;
        color: #000;
        z-index: 5;
        /* -------------------------- 子メニュー ------------------------------------------- */
        /* -------------------------- マウスオーバー ------------------------------------------- */ }
        #header .innerbox .gnav ul.main_menu > li > a + .sub_menu {
          height: 10em;
          position: fixed;
          top: -10em;
          left: 0;
          right: 0;
          bottom: auto;
          margin: auto;
          padding-top: 5em;
          background: rgba(14, 68, 175, 0.75);
          border-bottom-left-radius: 1em;
          border-bottom-right-radius: 1em;
          -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
          -webkit-box-pack: end;
          -webkit-justify-content: flex-end;
          -moz-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          z-index: 1;
          -webkit-transition: 0.7s ease;
          -moz-transition: 0.7s ease;
          -ms-transition: 0.7s ease;
          -o-transition: 0.7s ease;
          transition: 0.7s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          /* 事業案内子メニュー位置調整 ------------------------------------------- */ }
          #header .innerbox .gnav ul.main_menu > li > a + .sub_menu:hover {
            top: 0; }
          #header .innerbox .gnav ul.main_menu > li > a + .sub_menu li a {
            padding: 0 1.5em;
            color: #fff; }
            #header .innerbox .gnav ul.main_menu > li > a + .sub_menu li a:hover {
              background: #0e44af; }
          #header .innerbox .gnav ul.main_menu > li > a + .sub_menu.sv_submn li:last-child {
            padding-right: 2em; }
        #header .innerbox .gnav ul.main_menu > li > a:hover {
          /* 親メニュー ------------------------------------------- */
          background: rgba(14, 68, 175, 0.75);
          color: #fff;
          /* 子メニュー ------------------------------------------- */ }
          #header .innerbox .gnav ul.main_menu > li > a:hover + .sub_menu {
            top: 0; }

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

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

/* -------------------------- メニューボタン ------------------------------------------- */
.hm_btn {
  width: 1.33em;
  height: 1.2em;
  cursor: pointer;
  border: transparent solid 1.8em;
  position: fixed;
  top: 0;
  left: auto;
  right: 0;
  bottom: auto;
  background: transparent;
  cursor: pointer;
  z-index: 99999;
  /* 表示アニメーション */ }
  #front-page .hm_btn.lazyload4 {
    -webkit-transition-delay: 2s;
    -moz-transition-delay: 2s;
    -o-transition-delay: 2s;
    transition-delay: 2s; }
  .hm_btn::before, .hm_btn::after {
    width: 1.33em;
    height: 0.13em;
    background: #0e44af;
    display: block;
    content: '';
    position: absolute;
    -webkit-transition: -webkit-background 0.2s linear, -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
    transition: background 0.2s linear, box-shadow 0.2s linear, transform 0.2s 0.2s; }
  .hm_btn::before {
    -webkit-box-shadow: #0e44af 0 0.532em 0;
    box-shadow: #0e44af 0 0.532em 0; }
  .hm_btn::after {
    bottom: 0; }

/* 開閉時のアニメーション */
.hm_menu_check:checked ~ .hm_btn::before {
  background: rgba(0, 0, 0, 0);
  -webkit-box-shadow: #0e44af 0 0.532em 0;
  box-shadow: #0e44af 0 0.532em 0;
  -webkit-transform: rotate(45deg) translate3d(0.166em, 0.2em, 0);
  transform: rotate(45deg) translate3d(0.5em, -0.25em, 0); }
.hm_menu_check:checked ~ .hm_btn::after {
  background: #0e44af;
  -webkit-transform: rotate(-45deg) translate3d(0.166em, -0.2em, 0);
  transform: rotate(-45deg) translate3d(0.5em, -0.25em, 0); }

/* -------------------------- 格納領域 ------------------------------------------- */
.hm_menu_wrap {
  width: 100%;
  background: rgba(14, 68, 175, 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: 9999;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px); }
  .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;
      width: 100%;
      min-height: 100vh;
      position: absolute;
      top: -100%;
      left: 0;
      right: 0;
      bottom: auto;
      -webkit-transition: top 1.0s;
      transition: top 1.0s;
      border: none;
      /* 中身デザイン */ }
      .hm_menu_wrap .hm_inner .menucontent .gnav {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 5em;
        border-bottom-left-radius: 1em;
        border-bottom-right-radius: 1em;
        background: rgba(255, 255, 255, 0.8);
        -webkit-backdrop-filter: blur(6px);
        backdrop-filter: blur(6px); }
        @media screen and (max-width: 480px) {
          .hm_menu_wrap .hm_inner .menucontent .gnav {
            padding: 5em 2.5em; } }
        .hm_menu_wrap .hm_inner .menucontent .gnav .innerbox {
          padding: 0; }
        .hm_menu_wrap .hm_inner .menucontent .gnav ul {
          list-style: none inside; }
          .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li {
            font-family: 'Crimson Text', zen-old-mincho, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-size: 1.5em;
            font-weight: 600;
            line-height: 1em;
            padding-bottom: 1.5em; }
            .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li:last-child {
              padding-bottom: 0; }
            .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li a {
              color: #0e44af; }
            .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li .sub_menu {
              padding-left: 0.5em;
              margin-left: 0.5em;
              margin-top: 0.5em;
              border-left: #0e44af solid 0.1em; }
              .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li .sub_menu li {
                font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
                font-size: 0.85em;
                font-weight: 400;
                line-height: 1em;
                padding-top: 0.75em; }
                .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li .sub_menu li:first-child {
                  padding-top: 0; }
                .hm_menu_wrap .hm_inner .menucontent .gnav ul.main_menu > li .sub_menu li a {
                  color: #000; }

/* 開閉時のアニメーション */
.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);
    top: 0;
    height: auto; }

/* =======================================================================================================================
　　　　　　　　　フッター
======================================================================================================================= */
#footer {
  background: rgba(14, 68, 175, 0.5);
  color: #fff; }
  @media screen and (max-width: 1170px) {
    #footer {
      padding-bottom: 3em; } }
  #footer a {
    color: #fff; }
    #footer a:hover {
      text-decoration: underline; }
  #footer ul {
    list-style: none inside;
    /* -------------------------- サブメニュー共通 ------------------------------------------- */ }
    #footer ul li {
      padding-bottom: 1em; }
      #footer ul li:last-child {
        padding-bottom: 0; }
    #footer ul.sub_menu {
      padding-left: 0.25em; }
      #footer ul.sub_menu li {
        padding-top: 0.75em;
        padding-bottom: 0;
        font-size: 0.85em;
        font-weight: 300;
        line-height: 1em; }
  #footer .innerbox {
    /* ================= フッターメニュー（サイトマップ） ============================================================ */
    /* ================= 活動等の紹介 ============================================================ */
    /* ================= 会社情報 ============================================================ */ }
    @media screen and (min-width: 769px) {
      #footer .innerbox {
        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; } }
    #footer .innerbox .fnav {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      #footer .innerbox .fnav .sitemap > li {
        font-weight: 500;
        line-height: 1em;
        /* -------------------------- サブメニュー ------------------------------------------- */ }
        #footer .innerbox .fnav .sitemap > li .sub_menu li {
          display: inline-block; }
          #footer .innerbox .fnav .sitemap > li .sub_menu li::after {
            content: "／";
            padding-left: 0.2em;
            opacity: 0.6;
            filter: alpha(opacity=60); }
          #footer .innerbox .fnav .sitemap > li .sub_menu li:last-child::after {
            content: none; }
          #footer .innerbox .fnav .sitemap > li .sub_menu li a {
            opacity: 0.6;
            filter: alpha(opacity=60); }
            #footer .innerbox .fnav .sitemap > li .sub_menu li a:hover {
              opacity: 1;
              filter: alpha(opacity=100); }
    #footer .innerbox .introduction {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding-left: 5em; }
      @media screen and (max-width: 768px) {
        #footer .innerbox .introduction {
          padding-left: 0;
          margin-top: 4em;
          padding-top: 4em;
          border-top: rgba(255, 255, 255, 0.4) solid 1px;
          text-align: center; } }
      #footer .innerbox .introduction > li {
        /* 見出し ------------------------------------------- */
        /* -------------------------- サブメニュー ------------------------------------------- */ }
        @media screen and (max-width: 768px) {
          #footer .innerbox .introduction > li {
            padding-bottom: 2em; }
            #footer .innerbox .introduction > li:last-child {
              padding-bottom: 0; } }
        #footer .innerbox .introduction > li h2 {
          font-size: 1em;
          font-weight: 500;
          line-height: 1em; }
          @media screen and (max-width: 768px) {
            #footer .innerbox .introduction > li h2 {
              padding-bottom: 0.5em; } }
        #footer .innerbox .introduction > li .sub_menu li {
          opacity: 0.6;
          filter: alpha(opacity=60); }
    #footer .innerbox .info_box {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      @media screen and (min-width: 1171px) {
        #footer .innerbox .info_box {
          -webkit-box-flex: 1;
          -webkit-flex: 1;
          -moz-box-flex: 1;
          -ms-flex: 1;
          flex: 1;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-align: end;
          -webkit-align-items: flex-end;
          -moz-box-align: end;
          -ms-flex-align: end;
          align-items: flex-end;
          -webkit-box-pack: end;
          -webkit-justify-content: flex-end;
          -moz-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end; } }
      @media screen and (max-width: 1170px) {
        #footer .innerbox .info_box {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          padding-top: 3em; } }
  @media screen and (max-width: 1170px) and (min-width: 769px) {
    #footer .innerbox .info_box {
      margin-top: 4em;
      border-top: rgba(255, 255, 255, 0.4) solid 1px; } }

      #footer .innerbox .info_box .txtbox {
        text-align: right;
        /* 会社名 ------------------------------------------- */
        /* 住所 ------------------------------------------- */
        /* コピーライト ------------------------------------------- */ }
        @media screen and (max-width: 1170px) {
          #footer .innerbox .info_box .txtbox {
            text-align: center; } }
        #footer .innerbox .info_box .txtbox h2 {
          font-size: 1.5em;
          font-weight: 700;
          line-height: 1.5em;
          padding-bottom: 0.5em; }
        #footer .innerbox .info_box .txtbox .ad {
          font-weight: 500;
          line-height: 1.5em;
          padding-bottom: 3em; }
        #footer .innerbox .info_box .txtbox .copyright {
          font-family: 'Crimson Text', serif;
          font-weight: 400;
          line-height: 1.5em;
          padding-bottom: 0;
          opacity: 0.6;
          filter: alpha(opacity=60); }

/* =======================================================================================================================
　　　　　　　　　トップページメインカラム
======================================================================================================================= */
body#front-page {
  /* ================= メイン画像 ============================================================ */
  /* ================= 新着情報 ============================================================ */
  /* ================= 理念 ============================================================ */
  /* ================= 事業内容 ============================================================ */
  /* ================= 採用情報 ============================================================ */ }
  body#front-page #mainimg {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100 );
    min-height: 40vw;
    overflow: hidden;
    /* -------------------------- スクロール ------------------------------------------- */ }
    @media screen and (max-width: 1170px) {
      body#front-page #mainimg {
        min-height: 45vw; } }
    @media screen and (min-width: 769px) {
      body#front-page #mainimg {
        max-height: 68.75vw; } }
    @media screen and (max-width: 768px) {
      body#front-page #mainimg {
        min-height: 60vw; } }
    @media screen and (max-width: 480px) {
      body#front-page #mainimg {
        min-height: 137.5vw; } }
    body#front-page #mainimg .innerbox {
      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;
      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;
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100 );
      min-height: 40vw;
      /* -------------------------- テキスト ------------------------------------------- */
      /* -------------------------- 画像 ------------------------------------------- */ }
      @media screen and (max-width: 1170px) {
        body#front-page #mainimg .innerbox {
          min-height: 45vw; } }
      @media screen and (min-width: 769px) {
        body#front-page #mainimg .innerbox {
          max-height: 68.75vw; } }
      @media screen and (max-width: 768px) {
        body#front-page #mainimg .innerbox {
          min-height: 60vw; } }
      @media screen and (max-width: 480px) {
        body#front-page #mainimg .innerbox {
          min-height: 137.5vw; } }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #mainimg .innerbox {
    padding-top: 5em;
    padding-bottom: 50vh;
    padding-bottom: calc(var(--vh, 1vh) * 50 ); } }

@media screen and (max-width: 480px) and (min-aspect-ratio: 8 / 11) {
  body#front-page #mainimg .innerbox {
    padding-bottom: 68.75vw; } }

      body#front-page #mainimg .innerbox .txtbox {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        /* メインコピー ------------------------------------------- */
        /* メインテキスト ------------------------------------------- */
        /* 英語 ------------------------------------------- */ }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .innerbox .txtbox {
            padding-top: 2em; } }
  @media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
    body#front-page #mainimg .innerbox .txtbox {
      padding-top: 0; } }

        body#front-page #mainimg .innerbox .txtbox .maincopy {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-style: normal;
          font-size: 6.25em;
          font-weight: 400;
          line-height: 1em;
          color: #0e44af;
          z-index: 1;
          /* 表示アニメーション */
          -webkit-filter: blur(50px);
          filter: blur(50px);
          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;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          -webkit-transition-delay: 1s;
          -moz-transition-delay: 1s;
          -o-transition-delay: 1s;
          transition-delay: 1s; }
          @media screen and (max-width: 1170px) {
            body#front-page #mainimg .innerbox .txtbox .maincopy {
              font-size: 4em; } }
          @media screen and (max-width: 768px) {
            body#front-page #mainimg .innerbox .txtbox .maincopy {
              font-size: 3em; } }
  @media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
    body#front-page #mainimg .innerbox .txtbox .maincopy {
      font-size: 4.5em; } }
  @media screen and (max-width: 768px) and (max-aspect-ratio: 5 / 8) {
    body#front-page #mainimg .innerbox .txtbox .maincopy {
      margin-top: -1em; } }

          @media screen and (max-width: 480px) {
            body#front-page #mainimg .innerbox .txtbox .maincopy {
              font-size: 3em; } }
          body#front-page #mainimg .innerbox .txtbox .maincopy.lazyloaded {
            -webkit-filter: blur(0px);
            filter: blur(0px);
            opacity: 1;
            filter: alpha(opacity=100); }
        body#front-page #mainimg .innerbox .txtbox .maintxt {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-style: normal;
          font-size: 2em;
          font-weight: 400;
          line-height: 1.5em;
          color: #fff;
          z-index: 1;
          padding-top: 1.25em;
          padding-bottom: 0;
          /* 表示アニメーション */
          -webkit-filter: blur(50px);
          filter: blur(50px);
          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;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          -webkit-transition-delay: 1.5s;
          -moz-transition-delay: 1.5s;
          -o-transition-delay: 1.5s;
          transition-delay: 1.5s; }
          @media screen and (max-width: 1170px) {
            body#front-page #mainimg .innerbox .txtbox .maintxt {
              font-size: 1.5em; } }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #mainimg .innerbox .txtbox .maintxt {
    font-size: 1.5em;
    color: #0e44af;
    padding-top: 0.5em; } }

          @media screen and (max-width: 480px) {
            body#front-page #mainimg .innerbox .txtbox .maintxt {
              font-size: 1.3em; } }
          body#front-page #mainimg .innerbox .txtbox .maintxt.lazyloaded {
            -webkit-filter: blur(0px);
            filter: blur(0px);
            opacity: 1;
            filter: alpha(opacity=100); }
        body#front-page #mainimg .innerbox .txtbox .eg_txt {
          width: 33em;
          line-height: 0;
          position: absolute;
          top: -2em;
          left: 17.2em;
          right: auto;
          bottom: auto;
          opacity: 0.5;
          filter: alpha(opacity=50);
          -webkit-transform: rotate(-30deg);
          -moz-transform: rotate(-30deg);
          -ms-transform: rotate(-30deg);
          -o-transform: rotate(-30deg);
          transform: rotate(-30deg); }
          @media screen and (max-width: 1170px) {
            body#front-page #mainimg .innerbox .txtbox .eg_txt {
              width: 21em;
              left: 11em; } }
          @media screen and (max-width: 768px) {
            body#front-page #mainimg .innerbox .txtbox .eg_txt {
              width: 16em;
              top: 1em;
              left: 8em; } }
  @media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
    body#front-page #mainimg .innerbox .txtbox .eg_txt {
      width: 20em;
      top: auto;
      left: 15em;
      bottom: -5em; } }
@media screen and (max-width: 768px) and (min-width: 481px) and (max-aspect-ratio: 5 / 8) {
  body#front-page #mainimg .innerbox .txtbox .eg_txt {
    width: 25em;
    left: 13em;
    bottom: -9em; } }

          @media screen and (max-width: 480px) {
            body#front-page #mainimg .innerbox .txtbox .eg_txt {
              left: 6em; } }
          body#front-page #mainimg .innerbox .txtbox .eg_txt svg#ing_anm {
            display: block;
            width: 100%;
            height: auto; }
      body#front-page #mainimg .innerbox .imgbox {
        width: 33.854%;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100 );
        min-height: 40vw;
        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;
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        -moz-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end; }
        @media screen and (max-width: 1170px) {
          body#front-page #mainimg .innerbox .imgbox {
            min-height: 45vw; } }
        @media screen and (min-width: 769px) {
          body#front-page #mainimg .innerbox .imgbox {
            max-height: 68.75vw; } }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .innerbox .imgbox {
            min-height: 60vw; } }
        @media screen and (max-width: 480px) {
          body#front-page #mainimg .innerbox .imgbox {
            min-height: 137.5vw; } }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #mainimg .innerbox .imgbox {
    position: absolute;
    top: auto;
    left: 5em;
    right: 5em;
    bottom: 0;
    margin: auto;
    width: auto;
    height: 55vh;
    height: calc(var(--vh, 1vh) * 55 ); } }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 2) {
  body#front-page #mainimg .innerbox .imgbox {
    top: calc( 50vh - 2em );
    bottom: auto;
    height: auto;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; } }

@media screen and (max-width: 480px) and (max-aspect-ratio: 5 / 9) {
  body#front-page #mainimg .innerbox .imgbox {
    left: 1.5em;
    right: 1.5em; } }

        body#front-page #mainimg .innerbox .imgbox img {
          width: 100%;
          height: auto;
          /* 表示アニメーション */ }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #mainimg .innerbox .imgbox img {
    object-fit: contain;
    object-position: 50% 50%;
    width: 100%;
    height: 100%;
    object-position: 100% 100%; } }

          body#front-page #mainimg .innerbox .imgbox img.lazyload1 {
            -webkit-transition-delay: 1.75s;
            -moz-transition-delay: 1.75s;
            -o-transition-delay: 1.75s;
            transition-delay: 1.75s; }
    body#front-page #mainimg .scroll {
      font-family: 'Crimson Text', serif;
      font-weight: 600;
      line-height: 1em;
      position: absolute;
      top: 50%;
      left: auto;
      right: 5em;
      bottom: auto;
      top: calc( 50% - 6.5em );
      /* 表示アニメーション */
      -webkit-transition-delay: 2s;
      -moz-transition-delay: 2s;
      -o-transition-delay: 2s;
      transition-delay: 2s; }
      @media screen and (max-width: 1170px) {
        body#front-page #mainimg .scroll {
          right: 2.5em; } }
      @media screen and (max-width: 768px) {
        body#front-page #mainimg .scroll {
          right: 1.5em; } }
      body#front-page #mainimg .scroll a {
        /* 縦書き文字 ------------------------------------------- */
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        color: #000;
        /* 円 ------------------------------------------- */
        /* 線 ------------------------------------------- */ }
        body#front-page #mainimg .scroll a::before, body#front-page #mainimg .scroll a::after {
          content: "";
          display: inline-block; }
        body#front-page #mainimg .scroll a::before {
          width: 0.5em;
          height: 0.5em;
          border-radius: 50%;
          background: #000;
          position: absolute;
          top: auto;
          left: 0.25em;
          right: auto;
          bottom: 0;
          -webkit-animation: updownani 2s ease-in-out infinite;
          -moz-animation: updownani 2s ease-in-out infinite;
          -o-animation: updownani 2s ease-in-out infinite;
          animation: updownani 2s ease-in-out infinite; }
          @media screen and (max-width: 768px) {
            body#front-page #mainimg .scroll a::before {
              left: 0.35em; } }
          @media screen and (max-width: 480px) {
            body#front-page #mainimg .scroll a::before {
              left: 0.3em; } }
        body#front-page #mainimg .scroll a::after {
          width: 0.1em;
          height: 10em;
          border-right: #000 solid 0.1em; }
  body#front-page #topics {
    padding-bottom: 0;
    overflow: hidden; }
    body#front-page #topics .innerbox {
      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;
      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;
      /* -------------------------- セクションヘッダー ------------------------------------------- */
      /* -------------------------- 記事一覧 ------------------------------------------- */ }
      body#front-page #topics .innerbox .sec_header {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        /* 見出し ------------------------------------------- */
        /* ボタン ------------------------------------------- */ }
        @media screen and (max-width: 768px) {
          body#front-page #topics .innerbox .sec_header {
            width: 100%;
            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;
            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;
            padding-bottom: 2.5em; } }
        body#front-page #topics .innerbox .sec_header .sec_ttl {
          color: #fff;
          padding-bottom: 0.5em; }
          @media screen and (max-width: 768px) {
            body#front-page #topics .innerbox .sec_header .sec_ttl {
              padding-bottom: 0; } }
          body#front-page #topics .innerbox .sec_header .sec_ttl .eg {
            font-size: 3.5em;
            font-weight: 400;
            line-height: 1em; }
            @media screen and (max-width: 480px) {
              body#front-page #topics .innerbox .sec_header .sec_ttl .eg {
                font-size: 2.8em; } }
        body#front-page #topics .innerbox .sec_header .btn {
          /* 表示アニメーション */
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
      body#front-page #topics .innerbox .post_list {
        width: 60em; }
        @media screen and (max-width: 1170px) {
          body#front-page #topics .innerbox .post_list {
            width: 35em; } }
        @media screen and (max-width: 768px) {
          body#front-page #topics .innerbox .post_list {
            width: 100%; } }
  body#front-page #top_philosophy {
    padding-bottom: 24em;
    text-align: center;
    color: #fff;
    background: url("/images/bg_philosophy.webp") no-repeat 100% 100%/100% auto;
    overflow: hidden;
    /* -------------------------- 見出し ------------------------------------------- */
    /* -------------------------- 段落 ------------------------------------------- */
    /* -------------------------- ボタン ------------------------------------------- */ }
    @media screen and (max-width: 1170px) {
      body#front-page #top_philosophy {
        padding-bottom: 18em;
        background-size: 120% auto; } }
    @media screen and (max-width: 768px) {
      body#front-page #top_philosophy {
        background-size: 150% auto; } }
    @media screen and (max-width: 480px) {
      body#front-page #top_philosophy {
        background-position: 80% 100%;
        background-size: 200% auto; } }
    body#front-page #top_philosophy .sec_ttl {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      color: #fff;
      padding-bottom: 2.5em;
      /* 英語 ------------------------------------------- */
      /* 日本語 ------------------------------------------- */ }
      body#front-page #top_philosophy .sec_ttl::after,
      body#front-page #top_philosophy .sec_ttl .eg {
        text-align: left;
        font-size: 12.65em;
        font-weight: 400;
        white-space: nowrap;
        line-height: 1em;
        opacity: 0.2;
        filter: alpha(opacity=20); }
        @media screen and (max-width: 1170px) {
          body#front-page #top_philosophy .sec_ttl::after,
          body#front-page #top_philosophy .sec_ttl .eg {
            font-size: 8em; } }
      body#front-page #top_philosophy .sec_ttl::after {
        font-family: 'Crimson Text', serif;
        display: block;
        content: "OUR PHILOSOPHY ";
        -webkit-animation: flowani2 50s linear infinite;
        -moz-animation: flowani2 50s linear infinite;
        -o-animation: flowani2 50s linear infinite;
        animation: flowani2 50s linear infinite;
        position: absolute;
        top: 0;
        left: 8.5em;
        right: auto;
        bottom: auto; }
      body#front-page #top_philosophy .sec_ttl .eg {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-animation: flowani1 50s -25s linear infinite;
        -moz-animation: flowani1 50s -25s linear infinite;
        -o-animation: flowani1 50s -25s linear infinite;
        animation: flowani1 50s -25s linear infinite; }
      body#front-page #top_philosophy .sec_ttl .jp {
        font-weight: 400; }
        @media screen and (max-width: 480px) {
          body#front-page #top_philosophy .sec_ttl .jp {
            text-align: left;
            line-height: 1.5em;
            padding: 0 0.75em; } }
        body#front-page #top_philosophy .sec_ttl .jp span {
          display: inline; }
          @media screen and (max-width: 480px) {
            body#front-page #top_philosophy .sec_ttl .jp span {
              display: block; }
              body#front-page #top_philosophy .sec_ttl .jp span:nth-child(2) {
                padding-left: 2em; }
              body#front-page #top_philosophy .sec_ttl .jp span:nth-child(3) {
                padding-left: 5.5em; } }
    body#front-page #top_philosophy p {
      font-size: 1.25em;
      font-weight: 300;
      line-height: 2em;
      /* 表示アニメーション */
      -webkit-transition-delay: 0.2s;
      -moz-transition-delay: 0.2s;
      -o-transition-delay: 0.2s;
      transition-delay: 0.2s; }
      @media screen and (max-width: 768px) {
        body#front-page #top_philosophy p {
          text-align: left; } }
      body#front-page #top_philosophy p span {
        display: block; }
        @media screen and (max-width: 768px) {
          body#front-page #top_philosophy p span {
            display: inline; } }
    body#front-page #top_philosophy .btn {
      /* 表示アニメーション */
      -webkit-transition-delay: 0.4s;
      -moz-transition-delay: 0.4s;
      -o-transition-delay: 0.4s;
      transition-delay: 0.4s; }
  body#front-page #top_service {
    background: #fff;
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    padding-bottom: 0;
    /* 画像切り替え */
    /* -------------------------- 吸着画像 ------------------------------------------- */
    /* 表示・非表示アニメーション ------------------------------------------- */
    /* -------------------------- 各セクション共通 ------------------------------------------- */
    /* -------------------------- 各セクション別 ------------------------------------------- */ }
    body#front-page #top_service .spimg {
      display: none; }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #top_service .pcimg {
    display: none; }
  body#front-page #top_service .spimg {
    display: block; } }

    body#front-page #top_service .pcimg {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 10em;
      margin: auto;
      z-index: 1;
      pointer-events: none; }
      @media screen and (max-width: 768px) {
        body#front-page #top_service .pcimg {
          bottom: 7.5em; } }
      @media screen and (max-width: 480px) {
        body#front-page #top_service .pcimg {
          bottom: 5em; } }
      body#front-page #top_service .pcimg ul {
        list-style: none inside;
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        left: 0;
        right: auto;
        bottom: auto;
        width: 100%;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100 );
        overflow: hidden;
        z-index: -1; }
        body#front-page #top_service .pcimg ul li {
          width: calc( 35% - 5em );
          position: absolute;
          top: 10em;
          left: 0;
          right: auto;
          bottom: 5em;
          margin: auto;
          margin-left: 15em;
          /* 各画像回転（表示アニメーション用） ------------------------------------------- */
          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;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          /* 画像 */ }
          @media screen and (max-width: 1170px) {
            body#front-page #top_service .pcimg ul li {
              width: calc( 40% - 5em );
              top: 7.5em;
              bottom: 2.5em;
              margin-left: 7.5em; } }
          body#front-page #top_service .pcimg ul li:nth-child(1) {
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg); }
          body#front-page #top_service .pcimg ul li:nth-child(2) {
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg); }
          body#front-page #top_service .pcimg ul li:nth-child(3) {
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg); }
          body#front-page #top_service .pcimg ul li:nth-child(4) {
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg); }
          body#front-page #top_service .pcimg ul li img {
            object-fit: contain;
            object-position: 50% 50%;
            width: 100%;
            height: 100%;
            object-position: 0 50%;
            border-radius: 1em;
            -webkit-transform-origin: 100% 0;
            -moz-transform-origin: 100% 0;
            -ms-transform-origin: 100% 0;
            -o-transform-origin: 100% 0;
            transform-origin: 100% 0; }
          body#front-page #top_service .pcimg ul li:nth-child(3) img {
            -webkit-transform-origin: 0 0;
            -moz-transform-origin: 0 0;
            -ms-transform-origin: 0 0;
            -o-transform-origin: 0 0;
            transform-origin: 0 0; }
    body#front-page #top_service.svon .pcimg ul li {
      /* 不透明度 */
      opacity: 1;
      filter: alpha(opacity=100);
      /* 各画像回転 */
      /* 非表示アニメーション */ }
      body#front-page #top_service.svon .pcimg ul li:nth-child(1) {
        -webkit-transform: rotate(-15deg);
        -moz-transform: rotate(-15deg);
        -ms-transform: rotate(-15deg);
        -o-transform: rotate(-15deg);
        transform: rotate(-15deg); }
      body#front-page #top_service.svon .pcimg ul li:nth-child(2) {
        -webkit-transform: rotate(-5deg);
        -moz-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        -o-transform: rotate(-5deg);
        transform: rotate(-5deg); }
      body#front-page #top_service.svon .pcimg ul li:nth-child(3) {
        -webkit-transform: rotate(5deg);
        -moz-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        -o-transform: rotate(5deg);
        transform: rotate(5deg); }
      body#front-page #top_service.svon .pcimg ul li:nth-child(4) {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        -o-transform: rotate(15deg);
        transform: rotate(15deg); }
      body#front-page #top_service.svon .pcimg ul li.off {
        opacity: 0;
        filter: alpha(opacity=0); }
        body#front-page #top_service.svon .pcimg ul li.off img {
          -webkit-transform: rotate3d(1, 1, 0, 90deg);
          -moz-transform: rotate3d(1, 1, 0, 90deg);
          transform: rotate3d(1, 1, 0, 90deg); }
        body#front-page #top_service.svon .pcimg ul li.off:nth-child(3) img {
          -webkit-transform: rotate3d(1, -1, 0, 90deg);
          -moz-transform: rotate3d(1, -1, 0, 90deg);
          transform: rotate3d(1, -1, 0, 90deg); }
    body#front-page #top_service .sec {
      min-height: calc( 100vh + 10em );
      min-height: calc(var(--vh, 1vh) * 100 + 10em );
      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;
      overflow: hidden;
      /* 紙芝居風動き */
      /* 見出し ------------------------------------------- */
      /* 縦長モバイルモニタ画像 ------------------------------------------- */
      /* 出現アニメーション */
      /* 段落 ------------------------------------------- */
      /* ボタン ------------------------------------------- */ }
@media screen and (min-width: 769px) and (max-aspect-ratio: 20 / 11) {
  body#front-page #top_service .sec {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto; } }

@media screen and (min-width: 1171px) and (max-aspect-ratio: 100 / 43) {
  body#front-page #top_service .sec {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto; } }

      body#front-page #top_service .sec .innerbox {
        padding-left: 53%; }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #top_service .sec .innerbox {
    padding-left: 2.5em; } }

      body#front-page #top_service .sec .sub_ttl {
        z-index: 5; }
      body#front-page #top_service .sec .spimg {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 2.5em 5em;
        /* 無地長方形 */ }
        @media screen and (max-width: 480px) {
          body#front-page #top_service .sec .spimg {
            padding: 1.5em; } }
        body#front-page #top_service .sec .spimg::before {
          content: "";
          display: block;
          position: absolute;
          top: 2.5em;
          left: 5em;
          right: 5em;
          bottom: 2.5em;
          margin: auto;
          border-radius: 1em;
          background: #0e44af;
          /* 出現アニメーション */
          -webkit-transform: rotate(0deg);
          -moz-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
          -o-transform: rotate(0deg);
          transform: rotate(0deg);
          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;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
          @media screen and (max-width: 480px) {
            body#front-page #top_service .sec .spimg::before {
              position: absolute;
              top: 1.5em;
              left: 1.5em;
              right: 1.5em;
              bottom: 1.5em; } }
        body#front-page #top_service .sec .spimg span {
          display: block;
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          /* 写真 */ }
          body#front-page #top_service .sec .spimg span img {
            width: 100%;
            height: auto;
            /* 出現アニメーション */
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg);
            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;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
      body#front-page #top_service .sec.on .spimg.lazyloaded {
        /* 無地長方形 */ }
        body#front-page #top_service .sec.on .spimg.lazyloaded::before {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: rotate(-5deg);
          -moz-transform: rotate(-5deg);
          -ms-transform: rotate(-5deg);
          -o-transform: rotate(-5deg);
          transform: rotate(-5deg); }
        body#front-page #top_service .sec.on .spimg.lazyloaded span {
          /* 写真 */ }
          body#front-page #top_service .sec.on .spimg.lazyloaded span img.lazyloaded {
            opacity: 1;
            filter: alpha(opacity=100);
            -webkit-transform: rotate(5deg);
            -moz-transform: rotate(5deg);
            -ms-transform: rotate(5deg);
            -o-transform: rotate(5deg);
            transform: rotate(5deg); }
      body#front-page #top_service .sec p {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        z-index: 5;
        /* 表示アニメーション */
        -webkit-transition-delay: 0.4s;
        -moz-transition-delay: 0.4s;
        -o-transition-delay: 0.4s;
        transition-delay: 0.4s; }
      body#front-page #top_service .sec .btn {
        /* 表示アニメーション */
        -webkit-transition-delay: 0.6s;
        -moz-transition-delay: 0.6s;
        -o-transition-delay: 0.6s;
        transition-delay: 0.6s; }
@media screen and (max-width: 768px) and (max-aspect-ratio: 1 / 1) {
  body#front-page #top_service .sec .btn {
    text-align: center; } }

    body#front-page #top_service #service01 {
      /* 大見出し ------------------------------------------- */
      /* 出現アニメーション */ }
      body#front-page #top_service #service01 .sec_ttl {
        /* 英語 */
        /* 日本語 */ }
        body#front-page #top_service #service01 .sec_ttl .eg {
          /* 出現アニメーション */
          -webkit-filter: blur(50px);
          filter: blur(50px);
          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;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
        body#front-page #top_service #service01 .sec_ttl .jp {
          /* 出現アニメーション */
          -webkit-filter: blur(50px);
          filter: blur(50px);
          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;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
      body#front-page #top_service #service01.on .sec_ttl .eg.lazyloaded {
        -webkit-filter: blur(0px);
        filter: blur(0px);
        opacity: 1;
        filter: alpha(opacity=100); }
      body#front-page #top_service #service01.on .sec_ttl .jp.lazyloaded {
        -webkit-filter: blur(0px);
        filter: blur(0px);
        opacity: 1;
        filter: alpha(opacity=100); }
    body#front-page #top_service #service02 {
      background: #0e44af;
      color: #fff;
      /* 無地長方形 */ }
      body#front-page #top_service #service02 .spimg::before {
        background: #0ec1e7; }
    body#front-page #top_service #service03 {
      background: #07b1d6;
      color: #fff;
      /* 見出し */
      /* 無地長方形 */ }
      body#front-page #top_service #service03 .sub_ttl .eg {
        color: #fff;
        opacity: 0.25;
        filter: alpha(opacity=25); }
      body#front-page #top_service #service03 .spimg::before {
        background: #fff;
        opacity: 0.7;
        filter: alpha(opacity=70); }
    body#front-page #top_service #service04 {
      background: #ebeff5;
      /* 無地長方形 */ }
      body#front-page #top_service #service04 .spimg::before {
        background: #fff; }
  body#front-page #top_recruit {
    background: #fff;
    z-index: 9;
    padding-bottom: 10em;
    overflow: hidden;
    /* -------------------------- テキスト ------------------------------------------- */
    /* -------------------------- 画像 ------------------------------------------- */ }
    @media screen and (max-width: 768px) {
      body#front-page #top_recruit {
        padding-bottom: 7.5em; } }
    @media screen and (max-width: 480px) {
      body#front-page #top_recruit {
        padding-bottom: 5em; } }
    body#front-page #top_recruit .innerbox {
      width: 62.5%;
      padding-right: 5em;
      /* 見出し ------------------------------------------- */
      /* 採用目次 ------------------------------------------- */ }
      @media screen and (max-width: 1170px) {
        body#front-page #top_recruit .innerbox {
          width: 58%;
          padding-right: 2.5em; } }
      @media screen and (max-width: 768px) {
        body#front-page #top_recruit .innerbox {
          width: 100%; } }
      @media screen and (max-width: 480px) {
        body#front-page #top_recruit .innerbox {
          padding-right: 1.5em; } }
      body#front-page #top_recruit .innerbox .sec_ttl {
        /* 表示アニメーション */ }
        body#front-page #top_recruit .innerbox .sec_ttl .jp {
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
      body#front-page #top_recruit .innerbox .rc_index {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        list-style: none inside;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        counter-reset: listnumb;
        margin-top: -3.75em; }
        @media screen and (max-width: 1170px) {
          body#front-page #top_recruit .innerbox .rc_index {
            margin-top: -2.5em; } }
        @media screen and (max-width: 768px) {
          body#front-page #top_recruit .innerbox .rc_index {
            padding-bottom: 2.5em; } }
        body#front-page #top_recruit .innerbox .rc_index li {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          width: 50%;
          counter-increment: listnumb;
          margin-top: 3.75em;
          /* 表示アニメーション */
          /* スマホ文字折り返し調整 */ }
          @media screen and (max-width: 1170px) {
            body#front-page #top_recruit .innerbox .rc_index li {
              margin-top: 2.5em; } }
  @media screen and (max-width: 1170px) and (min-width: 769px) {
    body#front-page #top_recruit .innerbox .rc_index li {
      width: 100%; } }

          @media screen and (max-width: 480px) {
            body#front-page #top_recruit .innerbox .rc_index li {
              width: 100%; } }
          body#front-page #top_recruit .innerbox .rc_index li:nth-child(1) {
            -webkit-transition-delay: 0.4s;
            -moz-transition-delay: 0.4s;
            -o-transition-delay: 0.4s;
            transition-delay: 0.4s; }
          body#front-page #top_recruit .innerbox .rc_index li:nth-child(2) {
            -webkit-transition-delay: 0.6s;
            -moz-transition-delay: 0.6s;
            -o-transition-delay: 0.6s;
            transition-delay: 0.6s; }
          body#front-page #top_recruit .innerbox .rc_index li:nth-child(3) {
            -webkit-transition-delay: 0.8s;
            -moz-transition-delay: 0.8s;
            -o-transition-delay: 0.8s;
            transition-delay: 0.8s; }
          body#front-page #top_recruit .innerbox .rc_index li:nth-child(4) {
            -webkit-transition-delay: 1s;
            -moz-transition-delay: 1s;
            -o-transition-delay: 1s;
            transition-delay: 1s; }
          body#front-page #top_recruit .innerbox .rc_index li a {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            display: block;
            color: #000;
            padding-left: 3.125em;
            /* 数字 */
            /* 矢印 */
            /* 見出し */
            /* 段落 */
            /* マウスオーバー */ }
            body#front-page #top_recruit .innerbox .rc_index li a::after {
              content: "";
              display: block;
              width: 2em;
              height: 2em;
              border-radius: 50%;
              background-position: 50% 50%;
              background-size: 1em auto;
              background-repeat: no-repeat;
              position: absolute;
              top: 0.83em;
              left: auto;
              right: 0.83em;
              bottom: auto;
              -webkit-transform: scale(0.3);
              -moz-transform: scale(0.3);
              -ms-transform: scale(0.3);
              -o-transform: scale(0.3);
              transform: scale(0.3);
              -webkit-transition: 0.3s ease;
              -moz-transition: 0.3s ease;
              -ms-transition: 0.3s ease;
              -o-transition: 0.3s ease;
              transition: 0.3s ease;
              -webkit-backface-visibility: hidden;
              backface-visibility: hidden;
              background-color: #0e44af;
              -webkit-transition: 0.3s ease;
              -moz-transition: 0.3s ease;
              -ms-transition: 0.3s ease;
              -o-transition: 0.3s ease;
              transition: 0.3s ease;
              -webkit-backface-visibility: hidden;
              backface-visibility: hidden; }
              @media screen and (max-width: 768px) {
                body#front-page #top_recruit .innerbox .rc_index li a::after {
                  -webkit-transform: scale(1);
                  -moz-transform: scale(1);
                  -ms-transform: scale(1);
                  -o-transform: scale(1);
                  transform: scale(1); } }
              @media screen and (max-width: 768px) {
                body#front-page #top_recruit .innerbox .rc_index li a::after {
                  background-image: url("/images/ya.svg"); } }
            body#front-page #top_recruit .innerbox .rc_index li a:hover::after {
              background-position: 50% 50%;
              background-size: 1em auto;
              background-repeat: no-repeat;
              -webkit-transform: scale(1);
              -moz-transform: scale(1);
              -ms-transform: scale(1);
              -o-transform: scale(1);
              transform: scale(1);
              animation: yaani 0.5s ease-in-out infinite;
              background-image: url("/images/ya.svg"); }
            body#front-page #top_recruit .innerbox .rc_index li a::before {
              content: counter(listnumb,decimal-leading-zero);
              font-family: 'Crimson Text', serif;
              font-size: 2.5em;
              font-weight: 600;
              line-height: 1em;
              color: #0e44af;
              position: absolute;
              top: 0.15em;
              left: 0;
              right: auto;
              bottom: auto;
              -webkit-transition: 0.3s ease;
              -moz-transition: 0.3s ease;
              -ms-transition: 0.3s ease;
              -o-transition: 0.3s ease;
              transition: 0.3s ease;
              -webkit-backface-visibility: hidden;
              backface-visibility: hidden; }
            body#front-page #top_recruit .innerbox .rc_index li a::after {
              opacity: 0;
              filter: alpha(opacity=0);
              -webkit-transform: scale(0);
              -moz-transform: scale(0);
              -ms-transform: scale(0);
              -o-transform: scale(0);
              transform: scale(0);
              position: absolute;
              top: 0.5em;
              left: 0.5em;
              right: auto;
              bottom: auto; }
            body#front-page #top_recruit .innerbox .rc_index li a h3 {
              font-size: 2em;
              font-weight: 700;
              line-height: 1.5em;
              padding-bottom: 0.3em; }
              @media screen and (max-width: 1170px) {
                body#front-page #top_recruit .innerbox .rc_index li a h3 {
                  font-size: 1.5em; } }
              @media screen and (max-width: 480px) {
                body#front-page #top_recruit .innerbox .rc_index li a h3 {
                  font-size: 1.37em; } }
              body#front-page #top_recruit .innerbox .rc_index li a h3 span {
                display: block; }
@media screen and (max-width: 1170px) and (min-width: 769px) {
  body#front-page #top_recruit .innerbox .rc_index li a h3 span {
    display: inline; } }

                @media screen and (max-width: 480px) {
                  body#front-page #top_recruit .innerbox .rc_index li a h3 span {
                    display: inline; } }
            body#front-page #top_recruit .innerbox .rc_index li a p {
              font-weight: 500;
              line-height: 1em;
              padding-bottom: 0; }
              @media screen and (max-width: 768px) {
                body#front-page #top_recruit .innerbox .rc_index li a p {
                  line-height: 1.5em; } }
            body#front-page #top_recruit .innerbox .rc_index li a:hover {
              color: #0e44af;
              -webkit-transform: translate(0.5em, 0);
              -moz-transform: translate(0.5em, 0);
              -ms-transform: translate(0.5em, 0);
              -o-transform: translate(0.5em, 0);
              transform: translate(0.5em, 0); }
              body#front-page #top_recruit .innerbox .rc_index li a:hover::before {
                opacity: 0;
                filter: alpha(opacity=0);
                -webkit-transform: scale(0);
                -moz-transform: scale(0);
                -ms-transform: scale(0);
                -o-transform: scale(0);
                transform: scale(0); }
              body#front-page #top_recruit .innerbox .rc_index li a:hover::after {
                opacity: 1;
                filter: alpha(opacity=100);
                -webkit-transform: scale(1);
                -moz-transform: scale(1);
                -ms-transform: scale(1);
                -o-transform: scale(1);
                transform: scale(1);
                animation: yaani2 0.5s ease-in-out infinite; }
          @media screen and (max-width: 480px) {
            body#front-page #top_recruit .innerbox .rc_index li:nth-child(2) h3 span {
              display: block; } }
    body#front-page #top_recruit .imgbox {
      width: 37.5%;
      position: absolute;
      top: 4.3em;
      left: auto;
      right: 0;
      bottom: 4.3em;
      margin: auto;
      list-style: none inside;
      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; }
      @media screen and (max-width: 1170px) {
        body#front-page #top_recruit .imgbox {
          width: 42%;
          top: 10em;
          bottom: 10em; } }
      @media screen and (max-width: 768px) {
        body#front-page #top_recruit .imgbox {
          width: 90%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          top: 0;
          bottom: 0;
          margin-left: 10%; } }
      body#front-page #top_recruit .imgbox li {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        border-radius: 1em;
        overflow: hidden;
        /* 左 ------------------------------------------- */
        /* 右 ------------------------------------------- */
        /* 表示アニメーション ------------------------------------------- */
        -webkit-transform: translate(100%, 0);
        -moz-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        -o-transform: translate(100%, 0);
        transform: translate(100%, 0);
        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;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
        body#front-page #top_recruit .imgbox li:nth-child(1) {
          width: 40%; }
        body#front-page #top_recruit .imgbox li:nth-child(2) {
          width: 55%;
          border-top-right-radius: 0;
          border-bottom-right-radius: 0; }
        body#front-page #top_recruit .imgbox li img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%; }
        body#front-page #top_recruit .imgbox li:nth-child(1) {
          -webkit-transform: translate(200%, 0);
          -moz-transform: translate(200%, 0);
          -ms-transform: translate(200%, 0);
          -o-transform: translate(200%, 0);
          transform: translate(200%, 0);
          -webkit-transition-delay: 0.75s;
          -moz-transition-delay: 0.75s;
          -o-transition-delay: 0.75s;
          transition-delay: 0.75s; }
    body#front-page #top_recruit.on .imgbox li.lazyloaded {
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0);
      opacity: 1;
      filter: alpha(opacity=100); }

/* =======================================================================================================================
　　　　　　　　　下層ページ（共通）
======================================================================================================================= */
body #page-header {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #0e44af;
  padding: 10em 0;
  /* 英語タイトル */
  /* 日本語タイトル */ }
  @media screen and (max-width: 768px) {
    body #page-header {
      padding: 7.5em 0 5em 0; } }
  body #page-header .innerbox {
    z-index: 10; }
  body #page-header .eg_ttl {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-family: 'Crimson Text', serif;
    font-size: 5em;
    font-weight: 600;
    line-height: 1em;
    padding-bottom: 0.25em; }
    @media screen and (max-width: 768px) {
      body #page-header .eg_ttl {
        font-size: 4em; } }
    @media screen and (max-width: 480px) {
      body #page-header .eg_ttl {
        font-size: 2.5em; } }
  body #page-header .page_ttl {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.25em; }
    @media screen and (max-width: 768px) {
      body #page-header .page_ttl {
        font-size: 1.8em; } }
    @media screen and (max-width: 480px) {
      body #page-header .page_ttl {
        font-size: 1.5em; } }

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

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

/* =============== 背景色 ========================================================= */
.sec_bg1 {
  color: #fff; }
  .sec_bg1 .innerbox > p a {
    color: #fff;
    text-decoration: underline; }

.sec_bg2 {
  background: #fff; }

.sec_bg3 {
  background: #ebeff5; }

.freepage-ctt .sec_bg1:first-child,
.freepage-ctt .sec_bg2:first-child,
.freepage-ctt .sec_bg3:first-child {
  background: transparent !important;
  color: #fff; }
  .freepage-ctt .sec_bg1:first-child .innerbox > p a,
  .freepage-ctt .sec_bg2:first-child .innerbox > p a,
  .freepage-ctt .sec_bg3:first-child .innerbox > p a {
    color: #fff;
    text-decoration: underline; }

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

/* =============== テキスト ========================================================= */
/* ------------ 見出し -------------------------------- */
.parts-h3 {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  line-height: 1em;
  padding-bottom: 3em;
  color: #0e44af;
  /* 大きな数字 */ }
  .sec_bg1 .parts-h3 {
    color: #fff; }
  .parts-h3 .jpttl {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    display: block;
    font-size: 1.8em;
    font-weight: 700;
    line-height: 1.5em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .jpttl {
        font-size: 1.6em; } }
  .parts-h3 .lnmb {
    display: block;
    font-family: 'Crimson Text', serif;
    font-size: 4em;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .lnmb {
        font-size: 3em; } }
    @media screen and (max-width: 480px) {
      .parts-h3 .lnmb {
        font-size: 2em; } }
    .parts-h3 .lnmb + .jpttl {
      font-size: 1.6em;
      padding-top: 0.5em; }
      @media screen and (max-width: 768px) {
        .parts-h3 .lnmb + .jpttl {
          font-size: 1.3em; } }

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

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

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

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

/* =============== ブロック ========================================================= */
.freepage-ctt .sec {
  /* ------------ 背景色つきテキストボックス -------------------------------- */ }
  .freepage-ctt .sec .bbox {
    width: 100%;
    box-sizing: border-box;
    padding: 2.5em;
    background: rgba(255, 255, 255, 0.7);
    color: #000;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    border-radius: 1em; }
    @media screen and (max-width: 768px) {
      .freepage-ctt .sec .bbox {
        padding: 2em; } }
    @media screen and (max-width: 480px) {
      .freepage-ctt .sec .bbox {
        padding: 1.5em; } }
    .freepage-ctt .sec .bbox h3, .freepage-ctt .sec .bbox h4 {
      font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
      font-style: normal;
      font-weight: 700;
      font-size: 1.5em;
      line-height: 1.5em;
      padding-bottom: 1em;
      color: #0e44af; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec .bbox h3, .freepage-ctt .sec .bbox h4 {
          font-size: 1.3em; } }
    .freepage-ctt .sec .bbox p {
      padding-bottom: 2em; }
      .freepage-ctt .sec .bbox p:last-child {
        padding-bottom: 0; }
  .freepage-ctt .sec.sec_bg2 .bbox {
    background: #ebeff5; }
  .freepage-ctt .sec.sec_bg3 .bbox {
    background: #fff; }

/* =============== 画像 ========================================================= */
/* 角丸 */
.rd {
  border-radius: 1em;
  position: relative;
  z-index: 1;
  overflow: hidden; }

span.rd {
  display: inline-block; }

.parts-100img {
  width: 100%;
  position: relative;
  padding-bottom: 5em;
  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; }
  .parts-100img span {
    display: inline-block; }
    @media screen and (max-width: 768px) {
      .parts-100img span {
        width: 100% !important; } }

/* ------------ 画像＋テキスト -------------------------------- */
.box_imglefttxt,
.box_imgrighttxt {
  width: 100%;
  position: relative;
  overflow: hidden;
  zoom: 1;
  padding-bottom: 5em; }
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    width: 40%;
    position: relative;
    padding-bottom: 1em;
    /* 画像 */ }
    @media screen and (max-width: 1170px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 45%; } }
    @media screen and (max-width: 768px) {
      .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 h4 {
  font-size: 1.75em;
  font-weight: 900;
  line-height: 1.5em;
  padding-bottom: 1em; }
  @media screen and (max-width: 768px) {
    .imgtxt_txtbox h4 {
      font-size: 1.6em; } }
  @media screen and (max-width: 480px) {
    .imgtxt_txtbox h4 {
      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 h4 {
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.5em;
    margin-bottom: 0.5em; }
  .imgbox_txtarea p {
    padding-bottom: 0;
    line-height: 1.5em; }

/* 2つ並び画像テキストボックス -------------------------------- */
.img2box {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 5em;
  /* リスト */ }
  .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: 47%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      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; }
  @media screen and (max-width: 480px) {
    .img2box.imghbox ul li {
      width: 47%; } }

/* 3つ並び画像テキストボックス -------------------------------- */
.img3txtbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 5em;
  /* リスト */ }
  .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: 31%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin-right: 3.5%;
      margin-top: 3em;
      /* 画像 */ }
      @media screen and (min-width: 769px) {
        .img3txtbox ul li:nth-child(3n) {
          margin-right: 0; } }
      @media screen and (max-width: 768px) {
        .img3txtbox ul li {
          width: 100%;
          margin-right: 0; } }
      .img3txtbox ul li img {
        width: 100%;
        height: auto; }
      .img3txtbox ul li span {
        margin-bottom: 0.5em; }
  @media screen and (max-width: 768px) {
    .img3txtbox.imghbox ul li {
      width: 31%;
      margin-right: 3.5%; }
      .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: 5em;
  /* リスト */ }
  .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: 1170px) {
      .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: 769px) {
        .img4txtbox ul li:nth-child(4n) {
          margin-right: 0; } }
      @media screen and (max-width: 768px) {
        .img4txtbox ul li {
          margin-top: 3em; } }
  @media screen and (max-width: 768px) 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; }
      .img4txtbox ul li span {
        margin-bottom: 1em; }
@media screen and (max-width: 1170px) 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: 2.5em;
  margin: 0 auto;
  margin-bottom: 2.5em;
  position: relative;
  background: rgba(255, 255, 255, 0.7);
  color: #000;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border-radius: 1em;
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .no_list {
    background: #ebeff5; }
  .sec_bg3 .no_list {
    background: #fff; }
  @media screen and (max-width: 1170px) {
    .no_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .no_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .no_list {
      padding: 1.5em; } }
  .no_list h3, .no_list h4 {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #0e44af; }
    @media screen and (max-width: 768px) {
      .no_list h3, .no_list h4 {
        font-size: 1.3em; } }
  .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: 2.5em;
  margin: 0 auto;
  margin-bottom: 2.5em;
  background: rgba(255, 255, 255, 0.7);
  color: #000;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border-radius: 1em;
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .check_list {
    background: #ebeff5; }
  .sec_bg3 .check_list {
    background: #fff; }
  @media screen and (max-width: 1170px) {
    .check_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .check_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .check_list {
      padding: 1.5em; } }
  .check_list h3, .check_list h4 {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #0e44af; }
    @media screen and (max-width: 768px) {
      .check_list h3, .check_list h4 {
        font-size: 1.3em; } }
  .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: 900;
        color: #0e44af; }
      .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: 2.5em;
  margin: 0 auto;
  margin-bottom: 2.5em;
  position: relative;
  background: rgba(255, 255, 255, 0.7);
  color: #000;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border-radius: 1em;
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .order_list {
    background: #ebeff5; }
  .sec_bg3 .order_list {
    background: #fff; }
  @media screen and (max-width: 1170px) {
    .order_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .order_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .order_list {
      padding: 1.5em; } }
  .order_list h3, .order_list h4 {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #0e44af; }
    @media screen and (max-width: 768px) {
      .order_list h3, .order_list h4 {
        font-size: 1.3em; } }
  .order_list ol {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside;
    counter-reset: number; }
    .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;
      padding-left: 2em;
      padding-bottom: 1em; }
      .order_list ol li::before {
        position: relative;
        display: inline-block;
        width: 1.5em;
        margin-left: -1.5em;
        counter-increment: number;
        content: counter(number,decimal-leading-zero);
        font-family: 'Crimson Text', serif;
        font-size: 1.5em;
        color: #0e44af; }
      .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;
  margin: 0 auto;
  margin-bottom: 2.5em;
  /* 見出し */
  /* リスト */ }
  .table_list h3, .table_list h4 {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #0e44af; }
    .sec_bg1 .table_list h3, .sec_bg1 .table_list h4 {
      color: #fff; }
    @media screen and (max-width: 768px) {
      .table_list h3, .table_list h4 {
        font-size: 1.3em; } }
  .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;
    text-align: left; }
    .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;
      border-radius: 1em;
      background: rgba(255, 255, 255, 0.7);
      color: #000;
      -webkit-backdrop-filter: blur(6px);
      backdrop-filter: blur(6px);
      margin-bottom: 0.5em; }
      .sec_bg2 .table_list ul li {
        background: #ebeff5; }
      .sec_bg3 .table_list ul li {
        background: #fff; }
      .table_list ul li:last-child {
        margin-bottom: 0; }
      .table_list ul li .tablelist_th,
      .table_list ul li .tablelist_td {
        padding: 1.5em;
        font-size: 1em;
        font-weight: 700;
        line-height: 1.5em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_th,
          .table_list ul li .tablelist_td {
            display: block;
            padding: 1em; } }
      .table_list ul li .tablelist_th {
        width: 30%;
        font-weight: 700;
        border-right: #0e44af solid 0.15em;
        color: #0e44af; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_th {
            width: 100%;
            border-right: none;
            border-bottom: #0e44af solid 0.15em; } }
      .table_list ul li .tablelist_td {
        width: 70%;
        font-weight: 500;
        color: #000; }
        .table_list ul li .tablelist_td strong {
          font-family: 'Crimson Text', zen-old-mincho, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_td {
            width: 100%; } }
      .table_list ul li:last-child {
        border-bottom: none; }

/* 注釈マークつき -------------------------------- */
.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: 2.5em;
  padding: 2.5em;
  background: rgba(255, 255, 255, 0.7);
  color: #000;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border-radius: 1em;
  opacity: 0.7;
  filter: alpha(opacity=70);
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .note_list {
    background: #ebeff5; }
  .sec_bg3 .note_list {
    background: #fff; }
  @media screen and (max-width: 1170px) {
    .note_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .note_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .note_list {
      padding: 1.5em; } }
  .note_list h3, .note_list h4 {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #0e44af; }
    @media screen and (max-width: 768px) {
      .note_list h3, .note_list h4 {
        font-size: 1.3em; } }
  .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;
      font-weight: 300;
      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; }

/* タイムライン -------------------------------- */
.time_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 2.5em;
  /* 見出し */
  /* リスト */ }
  .time_list h3, .time_list h4 {
    display: inline-block;
    font-family: 'Crimson Text', zen-old-mincho, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 0.5em;
    color: #0e44af; }
    @media screen and (max-width: 768px) {
      .time_list h3, .time_list h4 {
        font-size: 1.3em; } }
  .time_list ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    /* 最後の点線 */ }
    .time_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;
      /* 縦線 */ }
      .time_list ul li::before, .time_list ul li::after {
        content: "";
        display: block; }
      .time_list ul li::before {
        position: absolute;
        top: 0;
        left: 10em;
        right: auto;
        bottom: 0;
        width: 1px;
        margin: auto;
        border-right: #0ec1e7 solid 0.25em;
        opacity: 0.5;
        filter: alpha(opacity=50); }
      .time_list ul li:first-child::before {
        top: 2em; }
      .time_list ul li:last-child::before {
        height: 2em;
        bottom: auto; }
      .time_list ul li .time_time,
      .time_list ul li .time_ctt {
        font-family: 'Crimson Text', zen-old-mincho, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        padding: 1.5em;
        font-size: 1em;
        line-height: 1.5em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .time_list ul li .time_time {
        padding-left: 0;
        width: 10em;
        font-weight: 900;
        text-align: right;
        color: #0e44af; }
        .sec_bg1 .time_list ul li .time_time {
          color: #fff; }
      .time_list ul li .time_ctt {
        padding-right: 0;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        font-weight: 500;
        /* 丸 */ }
        .time_list ul li .time_ctt strong {
          font-family: 'Crimson Text', zen-old-mincho, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif; }
        .time_list ul li .time_ctt::before {
          content: "";
          display: block;
          width: 0.75em;
          height: 0.75em;
          border-radius: 50%;
          background: #0e44af;
          position: absolute;
          top: 1.9em;
          left: -0.2em;
          right: auto;
          bottom: auto;
          z-index: 2; }
          .sec_bg1 .time_list ul li .time_ctt::before {
            background: #fff; }
    .time_list ul.on li:last-child::after {
      content: "";
      display: block;
      width: 1px;
      position: absolute;
      top: 2em;
      left: 10em;
      right: auto;
      bottom: 0;
      margin: auto;
      border-right: #0ec1e7 dotted 0.25em;
      opacity: 0.5;
      filter: alpha(opacity=50); }

/* =============== 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 {
  margin-bottom: 1em; }

/* =============== 余白ゼロ ========================================================= */
.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: 1em; }
.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; }

/* =======================================================================================================================
　　　　　　　　　お問い合わせ
======================================================================================================================= */
.contactpage-ctt {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  /* 見出し */
  /* 段落 */
  /* =============== 電話 ========================================================= */
  /* =============== WEB ========================================================= */ }
  .contactpage-ctt .parts-h3 {
    text-align: left;
    padding-bottom: 1.5em; }
  .contactpage-ctt p {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .contactpage-ctt p.contact_info {
      font-size: 1.1em; }
  .contactpage-ctt .contact_tel p.contacttel_tel {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-family: 'Crimson Text', serif;
    font-size: 4em;
    line-height: 1em;
    padding-bottom: 0.1em; }
    @media screen and (max-width: 480px) {
      .contactpage-ctt .contact_tel p.contacttel_tel {
        font-size: 3em; } }
    .contactpage-ctt .contact_tel p.contacttel_tel img {
      height: 1em;
      width: auto;
      margin-right: 0.25em; }
  .contactpage-ctt .contact_tel p.contacttel_time {
    font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-style: normal;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.5em;
    line-height: 1.3em;
    padding-bottom: 0; }
    @media screen and (max-width: 480px) {
      .contactpage-ctt .contact_tel p.contacttel_time {
        font-size: 1em; } }
  .contactpage-ctt .webcontact {
    background: rgba(255, 255, 255, 0.25);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px); }

/* ===========================================================================================================
　　　　　　　　　新着記事
=========================================================================================================== */
/* ================= ページヘッダー（共通） ============================================================ */
#page-header {
  /* 戻るボタン ------------------------------------------- */ }
  #page-header .subttl_box {
    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;
    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;
    /* 日本語見出し ------------------------------------------- */
    /* 月を選択 ------------------------------------------- */ }
    #page-header .subttl_box .page_ttl {
      width: auto;
      padding-right: 1em; }
      @media screen and (max-width: 480px) {
        #page-header .subttl_box .page_ttl .eg {
          display: block;
          padding-top: 0.5em; } }
      #page-header .subttl_box .page_ttl .eg .year {
        font-size: 1.2em;
        font-weight: 400;
        opacity: 0.7;
        filter: alpha(opacity=70);
        padding-left: 0.5em; }
        @media screen and (max-width: 480px) {
          #page-header .subttl_box .page_ttl .eg .year {
            padding-left: 0; } }
      #page-header .subttl_box .page_ttl .eg .month {
        font-size: 2em;
        padding-left: 0.1em; }
    #page-header .subttl_box select {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
      font-style: normal;
      font-size: 1.25em;
      font-weight: 400;
      line-height: 1em;
      padding: 0 0 0.25em 0;
      background-color: transparent;
      border: none;
      border-bottom: #0e44af solid 0.1em;
      color: #0e44af;
      cursor: pointer; }
      @media screen and (max-width: 480px) {
        #page-header .subttl_box select {
          font-size: 1.1em; } }
  #page-header .btn {
    position: absolute;
    top: 0;
    left: auto;
    right: 10em;
    bottom: auto; }
    @media screen and (max-width: 1170px) {
      #page-header .btn {
        right: 5em; } }
    @media screen and (max-width: 768px) {
      #page-header .btn {
        right: 2.5em; } }
    @media screen and (max-width: 480px) {
      #page-header .btn {
        right: 1.5em; } }

/* ================= ページナビゲーション（共通） ============================================================ */
.pager {
  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;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 2.5em;
  color: #fff; }
  @media screen and (max-width: 768px) {
    .pager {
      padding-top: 3em; } }
  .pager a {
    text-decoration: none;
    color: #fff; }
  .pager p {
    padding-bottom: 0;
    padding-left: 0.5em;
    padding-right: 0.5em; }
  .pager .no-link {
    opacity: 0.5;
    filter: alpha(opacity=50); }
  .pager .first,
  .pager .last {
    -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: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
  .pager .prev,
  .pager .next {
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    -o-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
  .pager .nth-box {
    font-family: 'Crimson Text', serif;
    font-size: 1.2em; }
    .pager .nth-box .current {
      font-size: 1.2em;
      display: inline-block;
      opacity: 0.5;
      filter: alpha(opacity=50);
      padding: 0 0.5em;
      color: #fff; }
    .pager .nth-box .tenten {
      opacity: 0.5;
      filter: alpha(opacity=50);
      color: #fff; }
    .pager .nth-box a {
      display: inline-block;
      padding: 0 0.5em; }

/* ================= 投稿ページ（共通） ============================================================ */
#newspost {
  /* -------------------------- 投稿記事ヘッダー ------------------------------------------- */
  /* -------------------------- ナビゲーション ------------------------------------------- */ }
  #newspost #entry-header {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 3em 0 0 0;
    color: #fff; }
    #newspost #entry-header .innerbox {
      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;
      /* 記事タイトル */
      /* 日付 */ }
      #newspost #entry-header .innerbox .entry_ttl {
        width: auto;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-family: zen-old-mincho, "游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
        font-style: normal;
        font-size: 1.8em;
        font-weight: 700;
        line-height: 1.5em; }
        @media screen and (max-width: 1170px) {
          #newspost #entry-header .innerbox .entry_ttl {
            font-size: 1.6em; } }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .entry_ttl {
            width: 100%;
            font-size: 1.5em;
            padding-bottom: 0.5em;
            margin-bottom: 0.5em;
            border-bottom: #fff solid 1px; } }
        @media screen and (max-width: 480px) {
          #newspost #entry-header .innerbox .entry_ttl {
            font-size: 1.4em; } }
      #newspost #entry-header .innerbox .date {
        font-family: 'Crimson Text', serif;
        font-size: 1.5em;
        letter-spacing: 0.05em;
        line-height: 1em;
        padding-top: 0.3em;
        padding-left: 0.5em; }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .date {
            font-size: 1em;
            width: 100%;
            padding: 0;
            padding-bottom: 0.5em;
            padding-left: 0;
            text-align: right; } }
        #newspost #entry-header .innerbox .date .year {
          opacity: 0.7;
          filter: alpha(opacity=70); }
        #newspost #entry-header .innerbox .date .md {
          font-size: 1.5em;
          padding-left: 0.25em; }
  #newspost .nav_sec {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.5em 0;
    background: rgba(255, 255, 255, 0.15);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px); }
    #newspost .nav_sec .innerbox ul.post_nav {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      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; }
      #newspost .nav_sec .innerbox ul.post_nav li {
        line-height: 1em;
        max-width: 45%;
        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;
        color: #fff;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
        #newspost .nav_sec .innerbox ul.post_nav li:hover {
          color: #fff; }
        #newspost .nav_sec .innerbox ul.post_nav li a {
          -webkit-box-flex: 1;
          -webkit-flex: 1;
          -moz-box-flex: 1;
          -ms-flex: 1;
          flex: 1;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          display: inline-block;
          width: 100%;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          -o-text-overflow: ellipsis;
          /* Opera9,10対応 */
          color: #fff; }
          @media screen and (max-width: 480px) {
            #newspost .nav_sec .innerbox ul.post_nav li a {
              font-size: 0.8em; } }
          #newspost .nav_sec .innerbox ul.post_nav li a:hover {
            color: #fff; }
        #newspost .nav_sec .innerbox ul.post_nav li.prev:hover {
          -webkit-transform: translate(-0.2em, 0);
          -moz-transform: translate(-0.2em, 0);
          -ms-transform: translate(-0.2em, 0);
          -o-transform: translate(-0.2em, 0);
          transform: translate(-0.2em, 0); }
        #newspost .nav_sec .innerbox ul.post_nav li.prev a {
          padding-left: 0.25em; }
        #newspost .nav_sec .innerbox ul.post_nav li.next {
          -webkit-box-pack: end;
          -webkit-justify-content: flex-end;
          -moz-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end; }
          #newspost .nav_sec .innerbox ul.post_nav li.next:hover {
            -webkit-transform: translate(0.2em, 0);
            -moz-transform: translate(0.2em, 0);
            -ms-transform: translate(0.2em, 0);
            -o-transform: translate(0.2em, 0);
            transform: translate(0.2em, 0); }
          #newspost .nav_sec .innerbox ul.post_nav li.next a {
            padding-right: 0.25em; }

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