@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-style: normal;
  font-size: 1vw;
  font-weight: 500;
  line-height: 2em;
  letter-spacing: 0;
  background: #fff;
  color: #000;
  -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;
  opacity: 0;
  filter: alpha(opacity=0); }
  @media screen and (max-width: 1350px) {
    body {
      font-size: 1.7vw; } }
  @media screen and (max-width: 768px) {
    body {
      font-size: 2.5vw; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 4vw; } }
  .wf-active body {
    opacity: 1;
    filter: alpha(opacity=100); }

/* =======================================================================================================================
　　　　　　　　　レイアウト
======================================================================================================================= */
.sec {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5em 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: 1350px) {
    .innerbox {
      padding: 0 5em; } }
  @media screen and (max-width: 768px) {
    .innerbox {
      padding: 0 2.5em; } }
  @media screen and (max-width: 480px) {
    .innerbox {
      padding: 0 2em; } }

#header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  margin: auto;
  padding: 0 2.5em;
  height: 5em;
  box-sizing: border-box;
  z-index: 999; }
  @media screen and (max-width: 1350px) {
    #header {
      height: 4em;
      padding: 0 1.5em; } }
  @media screen and (max-width: 768px) {
    #header {
      padding: 0 1em; } }

.fix_btn {
  width: 10em;
  position: fixed;
  top: auto;
  left: auto;
  right: 1em;
  bottom: 1em;
  z-index: 999; }
  @media screen and (max-width: 1350px) {
    .fix_btn {
      width: 8em; } }
  @media screen and (max-width: 480px) {
    .fix_btn {
      left: 0.5em;
      right: auto;
      bottom: 0.5em;
      /* 新着表示時スマホ */
      /* 横長画面非表示 */ }
      #front-page .fix_btn.news_on {
        bottom: 6em;
        -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; }
        #front-page .fix_btn.news_on.scroll {
          bottom: 0.5em; } }
  @media screen and (max-width: 480px) and (min-aspect-ratio: 10 / 11) {
    .fix_btn {
      display: none; } }

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

#footer {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 2.5em; }
  @media screen and (max-width: 1350px) {
    #footer {
      padding: 1.5em; } }
  @media screen and (max-width: 768px) {
    #footer {
      padding: 1.5em 1em; } }
  @media screen and (max-width: 480px) {
    #footer {
      padding: 2.5em 1em; } }

/* ================= 下層ページ共通固定スライダー ============================================================ */
body {
  /* 記事ページ非表示 */ }
  body#front-page {
    /* 画像 */ }
    body#front-page .staffimg {
      position: absolute;
      top: 0;
      left: 5%;
      right: 0;
      bottom: 0;
      margin: auto; }
      @media screen and (max-aspect-ratio: 1 / 1) {
        body#front-page .staffimg {
          top: 20vh;
          left: 0; } }
      @media screen and (max-aspect-ratio: 5 / 8) {
        body#front-page .staffimg {
          top: 30vh;
          top: calc(var(--vh, 1vh) * 30 ); } }
      @media screen and (max-aspect-ratio: 5 / 9) {
        body#front-page .staffimg {
          top: 40vh;
          top: calc(var(--vh, 1vh) * 40 ); } }
      @media screen and (max-aspect-ratio: 1 / 2) {
        body#front-page .staffimg {
          top: 50vh;
          top: calc(var(--vh, 1vh) * 50 ); } }
      body#front-page .staffimg img {
        object-fit: contain;
        object-position: 100% 100%;
        width: 100%;
        height: 100%;
        filter: brightness(0.7); }
        @media screen and (max-aspect-ratio: 1 / 1) {
          body#front-page .staffimg img {
            object-fit: cover;
            object-position: 60% 100%;
            width: 100%;
            height: 100%; } }
  body .mainbg_box {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100 );
    z-index: -5;
    background: #009fe8; }
    body .mainbg_box .sliderimg {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      /* 横長・縦長画像切り替え ------------------------------------------- */
      /* -------------------------- Meta Slider ------------------------------------------- */
      /* スライダー画像フルスクリーン表示 */
      /* キャプション */ }
      @media screen and (max-aspect-ratio: 1 / 1) {
        body .mainbg_box .sliderimg.slider_pc {
          display: none; } }
      body .mainbg_box .sliderimg.slider_sp {
        display: none; }
        @media screen and (max-aspect-ratio: 1 / 1) {
          body .mainbg_box .sliderimg.slider_sp {
            display: block; } }
      body .mainbg_box .sliderimg .metaslider,
      body .mainbg_box .sliderimg #metaslider_container_1028,
      body .mainbg_box .sliderimg #metaslider_container_000,
      body .mainbg_box .sliderimg .slider-wrapper,
      body .mainbg_box .sliderimg .nivoSlider,
      body .mainbg_box .sliderimg .nivo-slice {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        margin: auto !important;
        height: auto !important;
        min-height: inherit !important;
        width: auto !important;
        min-width: inherit !important; }
      body .mainbg_box .sliderimg .metaslider .nivoSlider img,
      body .mainbg_box .sliderimg .metaslider .nivoSlider .nivo-slice img {
        object-fit: cover !important;
        object-position: 50% 70% !important;
        width: 100% !important;
        height: 100% !important; }
      body .mainbg_box .sliderimg .nivo-caption {
        font-size: 1em;
        text-align: right;
        bottom: 11em;
        background: transparent;
        padding-right: 1em; }
        @media screen and (max-width: 768px) {
          body .mainbg_box .sliderimg .nivo-caption {
            bottom: 9em; } }
        @media screen and (max-width: 480px) {
          body .mainbg_box .sliderimg .nivo-caption {
            bottom: 7em; } }
        body .mainbg_box .sliderimg .nivo-caption span {
          font-family: acumin-pro-extra-condensed, sans-serif;
          font-style: normal;
          letter-spacing: 0.1em; }
  body:not(#front-page) .mainbg_box {
    /* 画像 */ }
    body:not(#front-page) .mainbg_box .staffimg {
      position: absolute;
      top: 0;
      left: 5%;
      right: 0;
      bottom: auto;
      height: 32em; }
      @media screen and (max-width: 1350px) {
        body:not(#front-page) .mainbg_box .staffimg {
          height: 30em; } }
      @media screen and (max-width: 768px) {
        body:not(#front-page) .mainbg_box .staffimg {
          height: 22em; } }
      @media screen and (max-width: 480px) {
        body:not(#front-page) .mainbg_box .staffimg {
          left: 5%;
          right: -15%;
          height: 26em; } }
      body:not(#front-page) .mainbg_box .staffimg img {
        object-fit: contain;
        object-position: 100% 100%;
        width: 100%;
        height: 100%;
        filter: saturate(0);
        mix-blend-mode: multiply; }
@media screen and (max-aspect-ratio: 1 / 1) and (max-width: 768px) {
  body:not(#front-page) .mainbg_box .sliderimg {
    bottom: auto;
    height: 70vw; }
    body:not(#front-page) .mainbg_box .sliderimg .metaslider .nivoSlider img,
    body:not(#front-page) .mainbg_box .sliderimg .metaslider .nivoSlider .nivo-slice img {
      object-position: 50% 80% !important; } }
@media screen and (max-aspect-ratio: 1 / 1) and (max-width: 480px) {
  body:not(#front-page) .mainbg_box .sliderimg {
    height: 120vw; } }

  body#newspost .mainbg_box .staffimg {
    display: none; }

/* 欧文フォント */
.eg {
  font-family: acumin-pro-extra-condensed, sans-serif;
  font-style: normal; }

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

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

.right {
  text-align: right; }

/* パソコン改行 */
@media screen and (min-width: 1351px) {
  .pcbr {
    display: block; } }

/* ノートパソコン改行 */
@media screen and (max-width: 1350px) {
  .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_header {
  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;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -moz-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-bottom: 1.5em;
  z-index: 2; }
  @media screen and (max-width: 1350px) {
    .sec_header {
      padding-bottom: 2.5em; } }
  .sec_header .sec_ttl {
    font-size: 1em; }
    .sec_header .sec_ttl .eg,
    .sec_header .sec_ttl .jp {
      display: block; }
    .sec_header .sec_ttl .eg {
      font-size: 6em;
      font-weight: 600;
      line-height: 1em; }
      @media screen and (max-width: 480px) {
        .sec_header .sec_ttl .eg {
          font-size: 2.8em; } }
    .sec_header .sec_ttl .jp {
      font-size: 1.5em;
      font-weight: 700;
      line-height: 1em;
      padding-top: 0.5em; }
      @media screen and (max-width: 480px) {
        .sec_header .sec_ttl .jp {
          font-size: 1.1em;
          padding-top: 0.25em; } }

/* 英語コピー */
.eg_txt {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-family: acumin-pro-extra-condensed, sans-serif;
  font-style: normal; }
  .eg_txt .txt_l {
    font-size: 10em;
    font-weight: 600;
    line-height: 1em;
    margin-top: -0.25em; }
    @media screen and (max-width: 1350px) {
      .eg_txt .txt_l {
        font-size: 8.5em; } }
    @media screen and (max-width: 768px) {
      .eg_txt .txt_l {
        font-size: 7em; } }
    @media screen and (max-width: 480px) {
      .eg_txt .txt_l {
        font-size: 5.6em;
        line-height: 0.8em; } }
  .eg_txt .txt_m {
    font-size: 2.5em;
    font-weight: 700;
    line-height: 1em;
    padding-top: 0.2em; }
    @media screen and (max-width: 480px) {
      .eg_txt .txt_m {
        padding-top: 0.5em; } }
  .eg_txt .txt_s {
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1em;
    padding-top: 0.7em; }

/* 日本語コピー */
.jp_txt {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 0.5em; }
  .jp_txt .txt_l {
    font-size: 3.75em;
    font-weight: 900;
    line-height: 1.25em; }
    @media screen and (max-width: 768px) {
      .jp_txt .txt_l {
        font-size: 2.5em; } }
  .jp_txt .txt_m {
    font-size: 2em;
    font-weight: 700;
    line-height: 1.5em;
    padding-top: 1.25em;
    padding-bottom: 0; }
    @media screen and (max-width: 768px) {
      .jp_txt .txt_m {
        font-size: 1.5em; } }
    .jp_txt .txt_m strong {
      font-weight: 700; }
  .jp_txt .txt_s {
    padding-top: 1em; }
    .jp_txt .txt_s span {
      display: block; }

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

/* 注釈 */
.note {
  padding-left: 1em;
  text-indent: -1em;
  color: #009fe8;
  font-size: 0.85em;
  line-height: 1.25em; }
  .note::before {
    content: "※"; }

/* 赤 */
.red {
  color: #e62318; }

/* 青 */
.blue {
  color: #009fe8; }

/* 白 */
.white {
  color: #fff; }

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

.imgbox {
  line-height: 0; }

/* =======================================================================================================================
　　　　　　　　　アニメーション
======================================================================================================================= */
/* 左右に揺れるアニメーション */
@-webkit-keyframes ani_rl {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(5em, 0);
    transform: translate(5em, 0); } }
/* 上下に揺れるアニメーション */
@-webkit-keyframes ani_tb {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(0, 0.5em);
    transform: translate(0, 0.5em); } }
/* 飛び出すアニメーション */
@-webkit-keyframes ani_jmp {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: scale(0.5, 0) translate(0, 100%);
    transform: scale(0.5, 0) translate(0, 100%); }
  20% {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1, 1) translate(0, -5em);
    transform: scale(1, 1) translate(0, -5em); }
  40% {
    -webkit-transform: scale(1, 0.5) translate(0, 0);
    transform: scale(1, 0.5) translate(0, 0); }
  60% {
    -webkit-transform: scale(1, 1) translate(0, -1.5em);
    transform: scale(1, 1) translate(0, -1.5em); }
  75% {
    -webkit-transform: scale(1, 0.75) translate(0, 0);
    transform: scale(1, 0.75) translate(0, 0); }
  90% {
    -webkit-transform: scale(1, 1) translate(0, -1em);
    transform: scale(1, 1) translate(0, -1em); }
  100% {
    -webkit-transform: scale(1, 1) translate(0, 0);
    transform: scale(1, 1) translate(0, 0); } }
/* 読み込み遅延 */
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 section .lazyload0.lazyloaded, #front-page section .lazyload1.lazyloaded, #front-page section .lazyload2.lazyloaded, #front-page section .lazyload3.lazyloaded, #front-page section .lazyload4.lazyloaded {
  opacity: 0;
  filter: alpha(opacity=0); }
#front-page section .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 section .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 section .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 section .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 section.on .lazyload0.lazyloaded, #front-page section.on .lazyload1.lazyloaded, #front-page section.on .lazyload2.lazyloaded, #front-page section.on .lazyload3.lazyloaded, #front-page section.on .lazyload4.lazyloaded {
  opacity: 1;
  filter: alpha(opacity=100); }
#front-page section.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 section.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 section.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 section.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 section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page section.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 section.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 section.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 section.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: 1351px) and (max-aspect-ratio: 2 / 1) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page section.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 section.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 section.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 section.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: 1350px) and (min-width: 769px) and (max-aspect-ratio: 25 / 13) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page section.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 section.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 section.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 section.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 section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page section.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 section.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 section.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 section.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 section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }
  #front-page section.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 section.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 section.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 section.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 {
  color: #009fe8;
  -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; }
  #header a, .hm_menu_wrap a, #footer a, #front-page a {
    text-decoration: none; }
  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: #e62318; }
    a:hover img {
      opacity: 0.7;
      filter: alpha(opacity=70); }

/* ボタン */
.btn {
  /* 白背景ボタン */
  /* 赤背景ボタン */ }
  .btn a {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 12.5em;
    height: 3.75em;
    border-radius: 1.875em;
    padding-right: 1.875em;
    font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-size: 1vw;
    font-weight: 700;
    line-height: 1em;
    text-decoration: none;
    background: #009fe8 url("/images/ya_w.svg") no-repeat right 1em top 50%/1.875em auto;
    color: #fff;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
    -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: 1350px) {
      .btn a {
        font-size: 1.7vw; } }
    @media screen and (max-width: 768px) {
      .btn a {
        font-size: 2.5vw; } }
    @media screen and (max-width: 480px) {
      .btn a {
        font-size: 4vw; } }
    .btn a:hover {
      -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
      -webkit-transform: translate(0.2em, 0.2em);
      -moz-transform: translate(0.2em, 0.2em);
      -ms-transform: translate(0.2em, 0.2em);
      -o-transform: translate(0.2em, 0.2em);
      transform: translate(0.2em, 0.2em);
      text-decoration: none;
      opacity: 1;
      filter: alpha(opacity=100); }
    .btn a span {
      font-family: acumin-pro-extra-condensed, sans-serif;
      font-style: normal;
      font-size: 1.5em; }
    .btn a:hover {
      background-position: right 0.8em top 50%; }
  .btn.btn_w a {
    background-color: #fff;
    background-image: url("/images/ya.svg");
    color: #000; }
  .btn.btn_r a {
    background-color: #e62318; }

/* -------------------------- 記事一覧 ------------------------------------------- */
.post_list {
  list-style: none inside;
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  @media screen and (min-width: 1351px) {
    .post_list {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: -1.3333333333%; }
      .post_list li {
        width: 24%;
        margin-right: 1.3333333333%;
        margin-top: 1.3333333333%; }
        .post_list li:nth-child(4n) {
          margin-right: 0; } }
@media screen and (max-width: 1350px) and (min-width: 769px) {
  .post_list {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -4%; }
    .post_list li {
      width: 48%;
      margin-right: 4%;
      margin-top: 4%; }
      .post_list li:nth-child(2n) {
        margin-right: 0; } }

  @media screen and (max-width: 768px) {
    .post_list {
      margin-top: -2em; }
      .post_list li {
        width: 100%;
        margin-right: 0;
        margin-top: 2em; } }
  @media screen and (max-width: 480px) {
    .post_list {
      margin-top: -1em; }
      .post_list li {
        width: 100%;
        margin-right: 0;
        margin-top: 1em; } }
  .post_list li {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /* 記事ボックス ------------------------------------------- */
    /* 出現動作 ------------------------------------------- */
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: rotate3d(1, -1, 0, 90deg);
    -moz-transform: rotate3d(1, -1, 0, 90deg);
    transform: rotate3d(1, -1, 0, 90deg);
    -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; }
    .post_list li a {
      text-decoration: none;
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 1.875em;
      background: #fff;
      color: #000 !important;
      border-radius: 1em;
      -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -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;
      /* 矢印 */
      /* 日付 */
      /* 記事タイトル */
      /* 記事抜粋文 */
      /* マウスオーバー時 */ }
      .post_list li a:hover {
        -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        -webkit-transform: translate(0.2em, 0.2em);
        -moz-transform: translate(0.2em, 0.2em);
        -ms-transform: translate(0.2em, 0.2em);
        -o-transform: translate(0.2em, 0.2em);
        transform: translate(0.2em, 0.2em);
        text-decoration: none;
        opacity: 1;
        filter: alpha(opacity=100); }
      .post_list li a::before {
        content: "";
        display: block;
        position: absolute;
        top: 1em;
        left: auto;
        right: 1em;
        bottom: auto;
        width: 1.875em;
        height: 1.875em;
        background: url("/images/ya.svg") no-repeat 0 0/contain;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transform: translate(-1em, 0);
        -moz-transform: translate(-1em, 0);
        -ms-transform: translate(-1em, 0);
        -o-transform: translate(-1em, 0);
        transform: translate(-1em, 0);
        -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; }
      .post_list li a .date {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-family: acumin-pro-extra-condensed, sans-serif;
        font-style: normal;
        font-size: 1.5em;
        font-weight: 600;
        line-height: 1em; }
      .post_list li a .post_ttl {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 1em;
        font-weight: 700;
        line-height: 1.2em;
        width: 100%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        /* Opera9,10対応 */
        margin-top: 0.5em; }
      .post_list li a .post_txt {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 0.85em;
        font-weight: 400;
        line-height: 1.47em;
        margin-top: 0.5em;
        padding-bottom: 0; }
        .post_list li a .post_txt:not(.event_txt) {
          height: 3em;
          overflow: hidden;
          text-align: justify; }
          .post_list li a .post_txt:not(.event_txt)::before, .post_list li a .post_txt:not(.event_txt)::after {
            position: absolute;
            background: #fff; }
          .post_list li a .post_txt:not(.event_txt)::before {
            content: "…";
            bottom: 0;
            right: 0; }
          .post_list li a .post_txt:not(.event_txt)::after {
            content: "";
            height: 100%;
            width: 100%; }
      .post_list li a:hover::before {
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0); }
    .post_list li:nth-child(1) {
      -webkit-transition-delay: 0.1s;
      -moz-transition-delay: 0.1s;
      -o-transition-delay: 0.1s;
      transition-delay: 0.1s; }
    .post_list li:nth-child(2) {
      -webkit-transition-delay: 0.2s;
      -moz-transition-delay: 0.2s;
      -o-transition-delay: 0.2s;
      transition-delay: 0.2s; }
    .post_list li:nth-child(3) {
      -webkit-transition-delay: 0.3s;
      -moz-transition-delay: 0.3s;
      -o-transition-delay: 0.3s;
      transition-delay: 0.3s; }
    .post_list li:nth-child(4) {
      -webkit-transition-delay: 0.4s;
      -moz-transition-delay: 0.4s;
      -o-transition-delay: 0.4s;
      transition-delay: 0.4s; }
    .post_list li:nth-child(5) {
      -webkit-transition-delay: 0.5s;
      -moz-transition-delay: 0.5s;
      -o-transition-delay: 0.5s;
      transition-delay: 0.5s; }
    .post_list li:nth-child(6) {
      -webkit-transition-delay: 0.6s;
      -moz-transition-delay: 0.6s;
      -o-transition-delay: 0.6s;
      transition-delay: 0.6s; }
    .post_list li:nth-child(7) {
      -webkit-transition-delay: 0.7s;
      -moz-transition-delay: 0.7s;
      -o-transition-delay: 0.7s;
      transition-delay: 0.7s; }
    .post_list li:nth-child(8) {
      -webkit-transition-delay: 0.8s;
      -moz-transition-delay: 0.8s;
      -o-transition-delay: 0.8s;
      transition-delay: 0.8s; }
    .post_list li:nth-child(9) {
      -webkit-transition-delay: 0.9s;
      -moz-transition-delay: 0.9s;
      -o-transition-delay: 0.9s;
      transition-delay: 0.9s; }
    .post_list li:nth-child(10) {
      -webkit-transition-delay: 1s;
      -moz-transition-delay: 1s;
      -o-transition-delay: 1s;
      transition-delay: 1s; }
    .post_list li:nth-child(11) {
      -webkit-transition-delay: 1.1s;
      -moz-transition-delay: 1.1s;
      -o-transition-delay: 1.1s;
      transition-delay: 1.1s; }
    .post_list li:nth-child(12) {
      -webkit-transition-delay: 1.2s;
      -moz-transition-delay: 1.2s;
      -o-transition-delay: 1.2s;
      transition-delay: 1.2s; }
    body:not(#front-page) .post_list li.lazyloaded {
      -webkit-transform: rotate3d(1, -1, 0, 0deg);
      -moz-transform: rotate3d(1, -1, 0, 0deg);
      transform: rotate3d(1, -1, 0, 0deg);
      opacity: 1;
      filter: alpha(opacity=100); }

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

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

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

/* ================= フォーム ============================================================ */
/* ブラウザスタイル解除 */
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 p {
      padding: 0 0 1em 0 !important;
      line-height: 1em !important; }
    .formbox .wpcf7-form .formctt {
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 0.5em 0;
      border-radius: 1em;
      overflow: hidden;
      background: #fff;
      color: #000;
      -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      /* 項目名（共通） */
      /* フォーム内容（共通） */ }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form .formctt {
          padding: 0 0.5em; } }
      .formbox .wpcf7-form .formctt .formname {
        display: block;
        width: 13em;
        padding: 0.5em 1em;
        line-height: 1.7em; }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form .formctt .formname {
            width: 100%;
            padding: 1em 0.5em; } }
      .formbox .wpcf7-form .formctt .wpcf7-form-control-wrap {
        display: block;
        padding: 0.5em 1em; }
        @media screen and (min-width: 481px) {
          .formbox .wpcf7-form .formctt .wpcf7-form-control-wrap {
            border-left: #000 solid 0.1em; } }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form .formctt .wpcf7-form-control-wrap {
            padding: 1em 0.5em;
            border-top: #000 solid 0.1em; } }
    .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;
      /* 項目名 */
      /* フォーム内容 */ }
      .formbox .wpcf7-form label.formctt .formname {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        letter-spacing: 0;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center; }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form label.formctt .formname {
            display: block;
            width: 100%; } }
      .formbox .wpcf7-form label.formctt .wpcf7-form-control-wrap {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -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 {
            width: 100%;
            -webkit-box-flex: 0;
            -webkit-flex: none;
            -moz-box-flex: 0;
            -ms-flex: none;
            flex: none;
            display: block; } }
    .formbox .wpcf7-form fieldset.formctt {
      min-height: 5.2em;
      border: none;
      padding-left: 13em;
      margin-bottom: 1em;
      /* 項目名 */
      /* 段落 */
      /* 改行 */ }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form fieldset.formctt {
          padding-left: 0.5em;
          padding-top: 3.7em; } }
      .formbox .wpcf7-form fieldset.formctt .formname {
        box-sizing: border-box;
        position: absolute;
        top: 0.5em;
        left: 0;
        right: auto;
        bottom: auto; }
        @media screen and (min-width: 481px) {
          .formbox .wpcf7-form fieldset.formctt .formname {
            min-height: 4.2em;
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -ms-flex-align: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center; } }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form fieldset.formctt .formname {
            top: 0;
            left: 0.5em; } }
      .formbox .wpcf7-form fieldset.formctt p {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        min-height: 4.2em;
        line-height: 1.5em !important;
        padding: 0 !important;
        /* フォーム内容 */ }
        .formbox .wpcf7-form fieldset.formctt p .wpcf7-form-control-wrap {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          line-height: 1.7em;
          min-height: 4.2em; }
          @media screen and (min-width: 481px) {
            .formbox .wpcf7-form fieldset.formctt p .wpcf7-form-control-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; } }
      .formbox .wpcf7-form fieldset.formctt br {
        display: none; }
    .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-style: normal;
      font-size: 1em;
      font-weight: 400;
      line-height: 1.7em;
      letter-spacing: 0;
      box-sizing: border-box;
      padding: 0.75em 1.5em;
      border-radius: 1.6em;
      border: none;
      background: #f3f3f3;
      /* エラーメッセージの余白 */ }
      .formbox .wpcf7-form input[type="text"] + .wpcf7-not-valid-tip,
      .formbox .wpcf7-form input[type="email"] + .wpcf7-not-valid-tip,
      .formbox .wpcf7-form input[type="tel"] + .wpcf7-not-valid-tip,
      .formbox .wpcf7-form input[type="date"] + .wpcf7-not-valid-tip,
      .formbox .wpcf7-form select + .wpcf7-not-valid-tip,
      .formbox .wpcf7-form textarea + .wpcf7-not-valid-tip {
        padding-top: 1em; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form textarea {
      width: 100% !important; }
      .formbox .wpcf7-form input[type="text"]::placeholder,
      .formbox .wpcf7-form input[type="email"]::placeholder,
      .formbox .wpcf7-form input[type="tel"]::placeholder,
      .formbox .wpcf7-form textarea::placeholder {
        opacity: 0.5;
        filter: alpha(opacity=50); }
    .formbox .wpcf7-form .yubin input[type="text"] {
      width: 10em !important; }
    @media screen and (max-width: 768px) {
      .formbox .wpcf7-form .wpcf7-radio,
      .formbox .wpcf7-form .wpcf7-checkbox {
        display: block;
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; } }
    .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 select {
      cursor: pointer; }
    .formbox .wpcf7-form .acceptance_box {
      padding-top: 1em; }
      .formbox .wpcf7-form .acceptance_box .wpcf7-acceptance label {
        letter-spacing: 0;
        cursor: pointer; }
    .formbox .wpcf7-form input[type="submit"] {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      width: 12.5em;
      height: 3.75em;
      border-radius: 1.875em;
      padding-right: 1.875em;
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-size: 1vw;
      font-weight: 700;
      line-height: 1em;
      text-decoration: none;
      background: #009fe8 url("/images/ya_w.svg") no-repeat right 1em top 50%/1.875em auto;
      color: #fff;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      -ms-flex-pack: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -moz-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -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;
      background-image: url("/images/ya.svg");
      color: #000;
      border: none;
      cursor: pointer;
      letter-spacing: 1em;
      margin-top: 1em; }
      @media screen and (max-width: 1350px) {
        .formbox .wpcf7-form input[type="submit"] {
          font-size: 1.7vw; } }
      @media screen and (max-width: 768px) {
        .formbox .wpcf7-form input[type="submit"] {
          font-size: 2.5vw; } }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form input[type="submit"] {
          font-size: 4vw; } }
      .formbox .wpcf7-form input[type="submit"]:hover {
        -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        -webkit-transform: translate(0.2em, 0.2em);
        -moz-transform: translate(0.2em, 0.2em);
        -ms-transform: translate(0.2em, 0.2em);
        -o-transform: translate(0.2em, 0.2em);
        transform: translate(0.2em, 0.2em);
        text-decoration: none;
        opacity: 1;
        filter: alpha(opacity=100); }
      .formbox .wpcf7-form input[type="submit"] span {
        font-family: acumin-pro-extra-condensed, sans-serif;
        font-style: normal;
        font-size: 1.5em; }
      .formbox .wpcf7-form input[type="submit"]:hover {
        background-position: right 0.8em top 50%; }
      .formbox .wpcf7-form input[type="submit"]:disabled {
        opacity: 0.3;
        filter: alpha(opacity=30);
        border: #000 dotted 0.15em;
        background-color: transparent;
        color: #000;
        cursor: not-allowed;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none; }
        .formbox .wpcf7-form input[type="submit"]:disabled:hover {
          -webkit-box-shadow: none;
          -moz-box-shadow: none;
          box-shadow: none; }
        .formbox .wpcf7-form input[type="submit"]:disabled:hover {
          -webkit-transform: translate(0, 0);
          -moz-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
          -o-transform: translate(0, 0);
          transform: translate(0, 0);
          background-position: right 1em top 50%; }
    .formbox .wpcf7-form .wpcf7-not-valid-tip {
      display: inline-block;
      font-weight: 600;
      color: #e62318;
      letter-spacing: 0; }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form .wpcf7-not-valid-tip {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          display: block;
          padding-top: 1em; } }
      .formbox .wpcf7-form .wpcf7-not-valid-tip::before {
        content: "\f06a";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1; }
    .formbox .wpcf7-form .wpcf7-response-output {
      font-weight: 600;
      letter-spacing: 0;
      border: none !important;
      padding: 0;
      padding-left: 1em;
      text-indent: -1em;
      color: #009fe8; }
      .formbox .wpcf7-form .wpcf7-response-output::before {
        content: "\f06a";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1; }

/* -------------------------- Groups ログインフォーム ------------------------------------------- */
.login_box {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 40em;
  border-radius: 1em;
  padding: 5em;
  text-align: center;
  background: #fff;
  /* フォームエリア ------------------------------------------- */
  /* 注意書き ------------------------------------------- */
  /* トップページカラー */ }
  @media screen and (max-width: 480px) {
    .login_box {
      padding: 2.5em 1.5em; } }
  .login_box #loginform {
    display: inline-block;
    text-align: left;
    border-bottom: #009fe8 solid 0.1em;
    margin-bottom: 2em;
    /* ログイン状態保存 */
    /* ログインボタン */ }
    .login_box #loginform .login-username,
    .login_box #loginform .login-password {
      /* 項目名 */
      /* 入力欄 */ }
      .login_box #loginform .login-username label,
      .login_box #loginform .login-password label {
        display: inline-block;
        width: 6em; }
        @media screen and (max-width: 480px) {
          .login_box #loginform .login-username label,
          .login_box #loginform .login-password label {
            width: 100%;
            text-align: left;
            padding-left: 1em; } }
      .login_box #loginform .login-username input[type="text"],
      .login_box #loginform .login-username input[type="password"],
      .login_box #loginform .login-password input[type="text"],
      .login_box #loginform .login-password input[type="password"] {
        font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-style: normal;
        font-size: 1em;
        font-weight: 400;
        line-height: 1.7em;
        letter-spacing: 0;
        box-sizing: border-box;
        width: 15em;
        padding: 0.75em 1.5em;
        border-radius: 1.6em;
        border: none;
        background: #f3f3f3; }
        @media screen and (max-width: 480px) {
          .login_box #loginform .login-username input[type="text"],
          .login_box #loginform .login-username input[type="password"],
          .login_box #loginform .login-password input[type="text"],
          .login_box #loginform .login-password input[type="password"] {
            width: 100%; } }
    .login_box #loginform .login-remember {
      padding-top: 2em;
      padding-bottom: 1em;
      border-top: #009fe8 solid 0.1em;
      text-align: center; }
      .login_box #loginform .login-remember label {
        font-size: 0.9em;
        font-weight: 400;
        color: #666;
        cursor: pointer; }
    .login_box #loginform .login-submit {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      text-align: center;
      padding-bottom: 2em; }
      .login_box #loginform .login-submit input[type="submit"] {
        border: none;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 12.5em;
        height: 3.75em;
        border-radius: 1.875em;
        padding-right: 1.875em;
        font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-style: normal;
        font-size: 1vw;
        font-weight: 700;
        line-height: 1em;
        text-decoration: none;
        background: #009fe8 url("/images/ya_w.svg") no-repeat right 1em top 50%/1.875em auto;
        color: #fff;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -ms-flex-pack: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -moz-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
        -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; }
        @media screen and (max-width: 1350px) {
          .login_box #loginform .login-submit input[type="submit"] {
            font-size: 1.7vw; } }
        @media screen and (max-width: 768px) {
          .login_box #loginform .login-submit input[type="submit"] {
            font-size: 2.5vw; } }
        @media screen and (max-width: 480px) {
          .login_box #loginform .login-submit input[type="submit"] {
            font-size: 4vw; } }
        .login_box #loginform .login-submit input[type="submit"]:hover {
          -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          -webkit-transform: translate(0.2em, 0.2em);
          -moz-transform: translate(0.2em, 0.2em);
          -ms-transform: translate(0.2em, 0.2em);
          -o-transform: translate(0.2em, 0.2em);
          transform: translate(0.2em, 0.2em);
          text-decoration: none;
          opacity: 1;
          filter: alpha(opacity=100); }
        .login_box #loginform .login-submit input[type="submit"] span {
          font-family: acumin-pro-extra-condensed, sans-serif;
          font-style: normal;
          font-size: 1.5em; }
        .login_box #loginform .login-submit input[type="submit"]:hover {
          background-position: right 0.8em top 50%; }
        @media screen and (max-width: 480px) {
          .login_box #loginform .login-submit input[type="submit"] {
            width: 100%; } }
  .login_box .note {
    font-weight: 400;
    color: #666 !important;
    text-align: left;
    padding-bottom: 0; }
    .login_box .note a {
      color: #009fe8;
      text-decoration: underline !important; }
      .login_box .note a:hover {
        color: #e62318; }
  #top_login .login_box {
    background: #D3E5ED; }
    #top_login .login_box #loginform {
      /* 入力欄 */ }
      #top_login .login_box #loginform .login-username input[type="text"],
      #top_login .login_box #loginform .login-username input[type="password"],
      #top_login .login_box #loginform .login-password input[type="text"],
      #top_login .login_box #loginform .login-password input[type="password"] {
        background: #fff; }

/* ログインエラー ------------------------------------------- */
.login_error {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  padding: 1.5em;
  background: rgba(0, 114, 167, 0.9);
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  z-index: 999;
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  /* 閉じるエリア */ }
  .login_error::-webkit-scrollbar {
    display: none; }
  @media screen and (max-width: 1350px) {
    .login_error {
      font-size: 0.8em; } }
  @media screen and (max-width: 768px) {
    .login_error {
      font-size: 0.9em; } }
  @media screen and (max-width: 480px) {
    .login_error {
      font-size: 1em; } }
  .login_error .txtbox {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 40em;
    background: #fff;
    border-radius: 1em;
    overflow: hidden;
    margin-top: 5em;
    z-index: 2;
    /* 見出し帯 */
    /* アイコンエリア */
    /* テキストエリア */
    /* 閉じるボタン */ }
    .login_error .txtbox h3 {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1.25em;
      font-weight: 700;
      line-height: 1em;
      background: #009fe8;
      color: #fff;
      padding: 1.5em;
      margin: 0;
      text-align: center; }
      @media screen and (max-width: 480px) {
        .login_error .txtbox h3 {
          font-size: 1.15em;
          padding: 1em; } }
    .login_error .txtbox .error_txt {
      padding: 2em;
      font-size: 1.15em;
      font-weight: 700;
      text-align: center;
      background: rgba(197, 229, 244, 0.6);
      color: #009fe8; }
      @media screen and (max-width: 480px) {
        .login_error .txtbox .error_txt {
          font-size: 1em;
          padding: 1.5em 0; } }
      .login_error .txtbox .error_txt i {
        display: block;
        font-size: 5em;
        padding-bottom: 0.1em;
        opacity: 0.4;
        filter: alpha(opacity=40); }
        @media screen and (max-width: 480px) {
          .login_error .txtbox .error_txt i {
            font-size: 4em; } }
    .login_error .txtbox .error_inner {
      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) {
        .login_error .txtbox .error_inner {
          padding: 1.5em 1.2em; } }
      .login_error .txtbox .error_inner p {
        line-height: 1.5em; }
        @media screen and (max-width: 480px) {
          .login_error .txtbox .error_inner p {
            font-size: 0.9em; } }
      .login_error .txtbox .error_inner .btn {
        text-align: center;
        padding-bottom: 2em; }
        .login_error .txtbox .error_inner .btn a {
          text-decoration: none !important; }
      .login_error .txtbox .error_inner .note {
        font-weight: 400;
        padding-bottom: 0;
        color: #009fe8 !important; }
        .login_error .txtbox .error_inner .note a {
          color: #e62318 !important;
          text-decoration: underline !important; }
    .login_error .txtbox .close_btn {
      font-size: 2em;
      position: absolute;
      top: 0.65em;
      left: auto;
      right: 0.65em;
      bottom: auto;
      color: #fff; }
      @media screen and (max-width: 480px) {
        .login_error .txtbox .close_btn {
          top: 0.3em;
          right: 0.3em; } }
  .login_error .close_area {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    filter: alpha(opacity=0);
    cursor: default; }

/* ================= フォーム確認画面 ============================================================ */
.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;
  color: #000;
  border-radius: 1em;
  /* 入力内容 */
  /* ボタン */ }
  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:last-child {
      display: none; }
    div#wpcf7cpcnf table tr th,
    div#wpcf7cpcnf table tr td {
      border-bottom: #000 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 {
      text-align: left;
      width: 13em;
      font-weight: normal !important; }
      @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 {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      width: 12.5em;
      height: 3.75em;
      border-radius: 1.875em;
      padding-right: 1.875em;
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-size: 1vw;
      font-weight: 700;
      line-height: 1em;
      text-decoration: none;
      background: #009fe8 url("/images/ya_w.svg") no-repeat right 1em top 50%/1.875em auto;
      color: #fff;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      -ms-flex-pack: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -moz-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -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;
      border: none;
      cursor: pointer;
      /* 修正ボタン */ }
      @media screen and (max-width: 1350px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 1.7vw; } }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 2.5vw; } }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 4vw; } }
      div#wpcf7cpcnf .wpcf7cp-btns button:hover {
        -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
        -webkit-transform: translate(0.2em, 0.2em);
        -moz-transform: translate(0.2em, 0.2em);
        -ms-transform: translate(0.2em, 0.2em);
        -o-transform: translate(0.2em, 0.2em);
        transform: translate(0.2em, 0.2em);
        text-decoration: none;
        opacity: 1;
        filter: alpha(opacity=100); }
      div#wpcf7cpcnf .wpcf7cp-btns button span {
        font-family: acumin-pro-extra-condensed, sans-serif;
        font-style: normal;
        font-size: 1.5em; }
      div#wpcf7cpcnf .wpcf7cp-btns button:hover {
        background-position: right 0.8em top 50%; }
      div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn {
        background-color: #666;
        color: #fff;
        letter-spacing: 1em;
        text-indent: 1em; }
        @media screen and (max-width: 480px) {
          div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn {
            margin-right: 0; } }

/* -------------------------- スタッフログイン（格納ナビ共通） ------------------------------------------- */
.login a {
  background: #D3E5ED;
  color: #009fe8;
  padding-right: 0; }
  @media screen and (max-width: 1350px) {
    .login a {
      font-size: 1em; } }
  .login a:hover {
    background: #000;
    color: #fff; }

/* =======================================================================================================================
　　　　　　　　　ヘッダー
======================================================================================================================= */
#header {
  background: transparent;
  -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;
  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;
  /* スクロール用白背景 */
  /* ================= ロゴマーク ============================================================ */
  /* ================= グローバルナビゲーション ============================================================ */
  /* ================= スクロール時色変更 ============================================================ */
  /* -------------------------- トップページファーストビュー読込タイムラグ ------------------------------------------- */ }
  #header::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 1em;
    right: 1em;
    bottom: 0;
    margin: auto;
    border-bottom-left-radius: 1.5em;
    border-bottom-right-radius: 1.5em;
    background: #fff;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: translate(0, -100%);
    -moz-transform: translate(0, -100%);
    -ms-transform: translate(0, -100%);
    -o-transform: translate(0, -100%);
    transform: translate(0, -100%);
    -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: 1350px) {
      #header::before {
        left: 0.5em;
        right: 0.5em; } }
    @media screen and (max-width: 768px) {
      #header::before {
        height: 10em;
        left: 0;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        -webkit-transform: rotate(-35deg) translate(0, -100%);
        -moz-transform: rotate(-35deg) translate(0, -100%);
        -ms-transform: rotate(-35deg) translate(0, -100%);
        -o-transform: rotate(-35deg) translate(0, -100%);
        transform: rotate(-35deg) translate(0, -100%);
        -webkit-transform-origin: 0 100%;
        -moz-transform-origin: 0 100%;
        -ms-transform-origin: 0 100%;
        -o-transform-origin: 0 100%;
        transform-origin: 0 100%; } }
    @media screen and (max-width: 480px) {
      #header::before {
        height: 8em; } }
  #header h1.logo {
    font-size: 1em;
    line-height: 0;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 12.5em;
    /* トップページ遅延読込 */ }
    @media screen and (max-width: 1350px) {
      #header h1.logo {
        width: 10em; } }
    @media screen and (max-width: 480px) {
      #header h1.logo {
        width: 9em; } }
    #header h1.logo.lazyloaded {
      -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; }
    #header h1.logo a {
      /* サイト名テキスト */ }
      #header h1.logo a img {
        width: 100%;
        height: auto;
        -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;
        /* 黒文字 */
        /* 白文字 */ }
        #header h1.logo a img.logo_bk {
          position: absolute;
          top: 0;
          left: 0;
          right: auto;
          bottom: auto;
          opacity: 0;
          filter: alpha(opacity=0); }
        #header h1.logo a img.logo_wt {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box; }
      #header h1.logo a .txtbox {
        display: block;
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 0.8em;
        font-weight: 700;
        letter-spacing: 0.35em;
        line-height: 1em;
        text-align: right;
        padding-top: 0.4em;
        right: -0.35em;
        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; }
        @media screen and (max-width: 1350px) {
          #header h1.logo a .txtbox {
            font-size: 0.65em;
            letter-spacing: 0.32em;
            right: -0.32em; } }
        @media screen and (max-width: 480px) {
          #header h1.logo a .txtbox {
            font-size: 0.6em;
            letter-spacing: 0.3em;
            right: -0.3em; } }
  #header .gnav {
    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;
    /* 遅延読込 */
    /* -------------------------- メニュー ------------------------------------------- */
    /* -------------------------- スタッフログイン ------------------------------------------- */ }
    @media screen and (max-width: 1350px) {
      #header .gnav {
        font-size: 0.8em; } }
    #header .gnav.lazyloaded {
      -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; }
    #header .gnav ul {
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      line-height: 1em; }
      @media screen and (max-width: 768px) {
        #header .gnav ul {
          display: none; } }
      #header .gnav ul li {
        padding-right: 2em; }
        #header .gnav ul li a {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          display: inline-block;
          color: #fff;
          font-weight: 500;
          line-height: 1.4em;
          overflow: hidden;
          /* 下線 */
          /* 英語非表示 */
          /* マウスオーバー ------------------------------------------- */ }
          #header .gnav ul li a::after {
            content: "";
            display: block;
            position: absolute;
            top: auto;
            left: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            height: 0.2em;
            background: #009fe8;
            -webkit-transform: translate(-110%, 0);
            -moz-transform: translate(-110%, 0);
            -ms-transform: translate(-110%, 0);
            -o-transform: translate(-110%, 0);
            transform: translate(-110%, 0);
            -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; }
          #header .gnav ul li a .eg {
            display: none; }
          #header .gnav ul li a:hover {
            /* 下線 */ }
            #header .gnav ul li a:hover::after {
              -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) {
      #header .gnav .login {
        padding-right: 4.3em; } }
    @media screen and (max-width: 480px) {
      #header .gnav .login {
        padding-right: 3.8em; } }
    @media screen and (max-width: 480px) {
      #header .gnav .login a {
        font-size: 0.8em; } }
  #header.scroll {
    /* -------------------------- ロゴマーク ------------------------------------------- */
    /* -------------------------- グローバルナビゲーション ------------------------------------------- */ }
    #header.scroll::before {
      opacity: 1;
      filter: alpha(opacity=100);
      -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) {
        #header.scroll::before {
          -webkit-transform: rotate(-15deg) translate(0, 0);
          -moz-transform: rotate(-15deg) translate(0, 0);
          -ms-transform: rotate(-15deg) translate(0, 0);
          -o-transform: rotate(-15deg) translate(0, 0);
          transform: rotate(-15deg) translate(0, 0); } }
    #header.scroll h1.logo a {
      /* サイト名テキスト */ }
      #header.scroll h1.logo a img {
        /* 黒文字 */
        /* 白文字 */ }
        #header.scroll h1.logo a img.logo_bk {
          opacity: 1;
          filter: alpha(opacity=100); }
        #header.scroll h1.logo a img.logo_wt {
          opacity: 0;
          filter: alpha(opacity=0); }
      #header.scroll h1.logo a .txtbox {
        color: #000; }
    #header.scroll .gnav {
      /* メニュー ------------------------------------------- */ }
      #header.scroll .gnav ul li a {
        color: #000; }
  #front-page #header:not(.scroll) h1.logo,
  #front-page #header:not(.scroll) .gnav {
    -webkit-transition-delay: 1s;
    -moz-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s; }

/* ================= 固定ボタン ============================================================ */
.fix_btn {
  -webkit-animation-name: ani_tb;
  -webkit-animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  animation-name: ani_tb;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  -webkit-animation-delay: 1.2s;
  -moz-animation-delay: 1.2s;
  -o-animation-delay: 1.2s;
  animation-delay: 1.2s;
  /* -------------------------- トップページファーストビュー読込タイムラグ ------------------------------------------- */ }
  .fix_btn a {
    display: block;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-filter: drop-shadow(0.7em 0.7em 1em rgba(0, 0, 0, 0.2));
    filter: drop-shadow(0.7em 0.7em 1em rgba(0, 0, 0, 0.2));
    /* -------------------------- マウスオーバー ------------------------------------------- */ }
    .fix_btn a img {
      width: 100%;
      height: auto;
      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-transform: translate(0, 100%);
      -moz-transform: translate(0, 100%);
      -ms-transform: translate(0, 100%);
      -o-transform: translate(0, 100%);
      transform: translate(0, 100%);
      -webkit-transform-origin: 50% 100%;
      -moz-transform-origin: 50% 100%;
      -ms-transform-origin: 50% 100%;
      -o-transform-origin: 50% 100%;
      transform-origin: 50% 100%; }
      .fix_btn a img.lazyloaded {
        -webkit-animation-name: ani_jmp;
        -webkit-animation-duration: 1.2s;
        -webkit-animation-fill-mode: forwards;
        -webkit-animation-timing-function: ease-in-out;
        -webkit-animation-iteration-count: 1;
        animation-name: ani_jmp;
        animation-duration: 1.2s;
        animation-fill-mode: forwards;
        animation-timing-function: ease-in-out;
        animation-iteration-count: 1;
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0); }
    .fix_btn a:hover {
      -webkit-transform: scale(1.1);
      -moz-transform: scale(1.1);
      -ms-transform: scale(1.1);
      -o-transform: scale(1.1);
      transform: scale(1.1);
      -webkit-filter: drop-shadow(0 0 1em rgba(0, 0, 0, 0));
      filter: drop-shadow(0 0 1em rgba(0, 0, 0, 0)); }
      .fix_btn a:hover img {
        opacity: 0;
        filter: alpha(opacity=0); }
        .fix_btn a:hover img.lazyloaded {
          opacity: 1;
          filter: alpha(opacity=100); }
  #front-page .fix_btn:not(.scroll) a img {
    -webkit-transition-delay: 0.75s;
    -moz-transition-delay: 0.75s;
    -o-transition-delay: 0.75s;
    transition-delay: 0.75s; }
    #front-page .fix_btn:not(.scroll) a img.lazyloaded {
      -webkit-animation-delay: 0.75s;
      -moz-animation-delay: 0.75s;
      -o-animation-delay: 0.75s;
      animation-delay: 0.75s; }

/* =======================================================================================================================
　　　　　　　　　スマートフォンナビゲーション
======================================================================================================================= */
/* ================= 格納ナビゲーション ============================================================ */
.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.2em;
  height: 1.2em;
  cursor: pointer;
  border: #C5E5F4 solid 1em;
  border-radius: 50%;
  position: fixed;
  top: 0.5em;
  left: auto;
  right: 0.5em;
  bottom: auto;
  background: #C5E5F4;
  cursor: pointer;
  z-index: 99999;
  /* トップページ遅延読込 */ }
  @media screen and (max-width: 480px) {
    .hm_btn {
      -webkit-transform: scale(0.8, 0.8) translate(0, -2.5em);
      -moz-transform: scale(0.8, 0.8) translate(0, -2.5em);
      -ms-transform: scale(0.8, 0.8) translate(0, -2.5em);
      -o-transform: scale(0.8, 0.8) translate(0, -2.5em);
      transform: scale(0.8, 0.8) translate(0, -2.5em);
      -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1); } }
  .hm_btn::before, .hm_btn::after {
    width: 1.33em;
    height: 0.13em;
    background: #009fe8;
    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: #009fe8 0 0.532em 0;
    box-shadow: #009fe8 0 0.532em 0; }
  .hm_btn::after {
    bottom: 0; }
  .hm_btn.lazyloaded {
    -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; }
    @media screen and (max-width: 480px) {
      .hm_btn.lazyloaded {
        -webkit-transform: scale(0.8, 0.8) translate(0, 0);
        -moz-transform: scale(0.8, 0.8) translate(0, 0);
        -ms-transform: scale(0.8, 0.8) translate(0, 0);
        -o-transform: scale(0.8, 0.8) translate(0, 0);
        transform: scale(0.8, 0.8) translate(0, 0); } }
    #front-page .hm_btn.lazyloaded:not(.scroll) {
      -webkit-transition-delay: 1s;
      -moz-transition-delay: 1s;
      -o-transition-delay: 1s;
      transition-delay: 1s; }

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

/* -------------------------- 格納領域 ------------------------------------------- */
.hm_menu_wrap {
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  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; }
  .hm_menu_wrap .hm_inner {
    position: absolute;
    top: 0;
    left: 0;
    right: -19px;
    bottom: 0;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }
    .hm_menu_wrap .hm_inner .menucontent {
      box-sizing: border-box;
      padding: 3em 1em;
      width: 100%;
      position: absolute;
      top: -100%;
      left: 0;
      right: 0;
      bottom: auto;
      margin: auto;
      -webkit-transition: top 1.0s;
      transition: top 1.0s;
      border: none;
      background: #000;
      border-bottom-left-radius: 1.5em;
      border-bottom-right-radius: 1.5em;
      overflow: hidden;
      /* 中身デザイン ------------------------------------------- */
      /* 画像 */
      /* グローバルナビゲーション */ }
      .hm_menu_wrap .hm_inner .menucontent::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 65%;
        bottom: 0;
        margin: auto;
        background: url("/images/bg_recruit.webp") no-repeat 50% 50%/cover;
        z-index: 0; }
        @media screen and (max-width: 480px) {
          .hm_menu_wrap .hm_inner .menucontent::before {
            top: auto;
            right: 0;
            height: 15em;
            background: linear-gradient(180deg, #000 0, transparent 100%), url("/images/bg_recruit.webp") no-repeat 50% 50%/cover; } }
      .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: 0 calc( 1em + 19px ) 0 40%;
        z-index: 2;
        /* メニュー */
        /* スタッフログイン */ }
        @media screen and (max-width: 480px) {
          .hm_menu_wrap .hm_inner .menucontent .gnav {
            padding-left: 1em;
            padding-bottom: 5em; } }
        .hm_menu_wrap .hm_inner .menucontent .gnav ul {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          list-style: none inside; }
          .hm_menu_wrap .hm_inner .menucontent .gnav ul li {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            padding-top: 1em; }
            .hm_menu_wrap .hm_inner .menucontent .gnav ul li a {
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              display: block;
              line-height: 2.5em;
              color: #fff;
              border-bottom: rgba(255, 255, 255, 0.3) solid 0.1em;
              padding: 0.5em;
              background: url("/images/ya_w.svg") no-repeat right 0.5em top 50%/1.875em auto; }
              .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .top_link,
              .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .eg {
                display: inline-block;
                font-size: 2.4em;
                font-weight: 700;
                padding-right: 0.15em; }
                .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .top_link::first-letter,
                .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .eg::first-letter {
                  color: #009fe8; }
                .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .top_link.rc_link::first-letter,
                .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .eg.rc_link::first-letter {
                  color: #e62318; }
              .hm_menu_wrap .hm_inner .menucontent .gnav ul li a .top_link {
                font-family: acumin-pro-extra-condensed, sans-serif;
                font-style: normal; }
        .hm_menu_wrap .hm_inner .menucontent .gnav .login {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          padding-top: 2.5em;
          text-align: center; }

/* 開閉時のアニメーション */
.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: #1b1b1b;
  /* フッターメニュー */
  /* コピーライト */ }
  @media screen and (max-width: 1350px) {
    #footer {
      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; } }
  #footer a {
    color: #fff; }
  @media screen and (max-width: 480px) {
    #footer .fnav {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; } }
  #footer .fnav ul {
    font-size: 0.8em;
    font-weight: 400;
    line-height: 1em;
    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; }
    @media screen and (max-width: 480px) {
      #footer .fnav ul {
        width: 100%;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -ms-flex-pack: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        padding-bottom: 1em; } }
    #footer .fnav ul li {
      padding-right: 2em; }
      @media screen and (max-width: 480px) {
        #footer .fnav ul li {
          padding-right: 1em; } }
      #footer .fnav ul li:last-child {
        padding-right: 0; }
      #footer .fnav ul li a {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        line-height: 1.3em;
        display: inline-block;
        overflow: hidden;
        /* 下線 */
        /* マウスオーバー ------------------------------------------- */ }
        #footer .fnav ul li a::after {
          content: "";
          display: block;
          position: absolute;
          top: auto;
          left: 0;
          right: 0;
          bottom: 0;
          margin: auto;
          height: 0.15em;
          background: #fff;
          -webkit-transform: translate(-110%, 0);
          -moz-transform: translate(-110%, 0);
          -ms-transform: translate(-110%, 0);
          -o-transform: translate(-110%, 0);
          transform: translate(-110%, 0);
          -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; }
        #footer .fnav ul li a:hover {
          /* 下線 */ }
          #footer .fnav ul li a:hover::after {
            -webkit-transform: translate(0, 0);
            -moz-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
            -o-transform: translate(0, 0);
            transform: translate(0, 0); }
  #footer .copyright {
    font-size: 0.7em;
    font-weight: 900;
    line-height: 1em;
    color: #666;
    padding-bottom: 0; }
    @media screen and (min-width: 1351px) {
      #footer .copyright {
        position: absolute;
        top: 50%;
        left: 50%;
        right: auto;
        bottom: auto;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); } }
    @media screen and (max-width: 480px) {
      #footer .copyright {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        text-align: center; } }

/* =======================================================================================================================
　　　　　　　　　トップページメインカラム
======================================================================================================================= */
body#front-page {
  /* 斜め共通 */
  /* ================= メイン画像 ============================================================ */
  /* ================= 記事共通 ============================================================ */
  /* ================= お知らせ ============================================================ */
  /* ================= アルバイト情報 ============================================================ */
  /* ================= 情報ボックス ============================================================ */
  /* ================= スタッフ募集中 ============================================================ */ }
  body#front-page .skewed::before, body#front-page .skewed::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover; }
  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 );
    color: #fff;
    padding-top: 7em;
    z-index: auto;
    min-height: 35vw;
    /* 底部斜め赤背景 ------------------------------------------- */
    /* 出現アニメーション */
    /* -------------------------- 新着情報 ------------------------------------------- */ }
@media screen and (min-width: 1351px) and (max-aspect-ratio: 15 / 11) {
  body#front-page #mainimg {
    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: 10em; } }

    @media screen and (max-width: 1350px) {
      body#front-page #mainimg {
        min-height: 46vw; } }
@media screen and (max-width: 1350px) and (min-width: 769px) and (max-aspect-ratio: 10 / 7) {
  body#front-page #mainimg {
    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-top: 3.5em;
    padding-bottom: 10em; } }

    @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: 80vw; } }
    body#front-page #mainimg::after {
      content: "";
      display: block;
      position: absolute;
      top: auto;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      height: 10em;
      background: url("/images/top2_red.svg") no-repeat right bottom/contain;
      z-index: 2;
      opacity: 0;
      filter: alpha(opacity=0);
      -webkit-transform: translate(100%, -10vw);
      -moz-transform: translate(100%, -10vw);
      -ms-transform: translate(100%, -10vw);
      -o-transform: translate(100%, -10vw);
      transform: translate(100%, -10vw);
      -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; }
      @media screen and (max-width: 480px) {
        body#front-page #mainimg::after {
          background-image: url("/images/top_red.svg"); } }
    body#front-page #mainimg.lazyloaded::after {
      opacity: 1;
      filter: alpha(opacity=100);
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0); }
    body#front-page #mainimg .innerbox {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      padding-right: 0;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      /* -------------------------- キャッチコピー ------------------------------------------- */
      /* -------------------------- 英語キャッチコピー ------------------------------------------- */ }
      @media screen and (max-aspect-ratio: 1 / 1) {
        body#front-page #mainimg .innerbox {
          bottom: 50vh;
          bottom: calc(var(--vh, 1vh) * 50 ); } }
      @media screen and (max-aspect-ratio: 1 / 2) {
        body#front-page #mainimg .innerbox {
          bottom: 40vh;
          bottom: calc(var(--vh, 1vh) * 40 ); } }
      body#front-page #mainimg .innerbox .main_copy {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        z-index: 5;
        /* 大テキスト ------------------------------------------- */
        /* 小テキスト ------------------------------------------- */ }
        @media screen and (max-width: 1350px) {
          body#front-page #mainimg .innerbox .main_copy {
            font-size: 0.8em; } }
@media screen and (max-width: 768px) and (min-width: 481px) {
  body#front-page #mainimg .innerbox .main_copy {
    font-size: 1em; } }

        @media screen and (max-width: 480px) {
          body#front-page #mainimg .innerbox .main_copy {
            font-size: 0.8em; } }
        body#front-page #mainimg .innerbox .main_copy h2 {
          font-size: 3.75em;
          font-weight: 900;
          line-height: 1em; }
          @media screen and (max-width: 768px) {
            body#front-page #mainimg .innerbox .main_copy h2 {
              font-size: 3.25em; } }
        body#front-page #mainimg .innerbox .main_copy p {
          font-size: 1.25em;
          font-weight: 700;
          line-height: 2em;
          padding-top: 1.5em;
          padding-bottom: 0; }
          body#front-page #mainimg .innerbox .main_copy p span {
            display: inline-block;
            background: #fff;
            color: #000;
            margin-bottom: 0.75em;
            padding: 0 0.75em; }
            body#front-page #mainimg .innerbox .main_copy p span:last-child {
              margin-bottom: 0.4em; }
            body#front-page #mainimg .innerbox .main_copy p span strong {
              font-weight: 700; }
      body#front-page #mainimg .innerbox .main_eg {
        position: absolute;
        top: 0.2em;
        left: -0.1em;
        right: auto;
        bottom: auto;
        box-sizing: border-box;
        font-family: acumin-pro-extra-condensed, sans-serif;
        font-style: normal;
        font-size: 16em;
        line-height: 0.9em;
        opacity: 0.1;
        filter: alpha(opacity=10);
        color: #000;
        /* 小テキスト ------------------------------------------- */
        /* 大テキスト ------------------------------------------- */ }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .innerbox .main_eg {
            font-size: 12em; } }
        @media screen and (max-width: 480px) {
          body#front-page #mainimg .innerbox .main_eg {
            -webkit-writing-mode: vertical-rl;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; } }
        body#front-page #mainimg .innerbox .main_eg .txt_s {
          display: inline-block; }
        body#front-page #mainimg .innerbox .main_eg .txt_l {
          font-size: 1.25em;
          font-weight: 600;
          display: inline-block;
          margin-left: -0.025em; }
    body#front-page #mainimg .news {
      position: absolute;
      top: auto;
      left: -0.2em;
      right: auto;
      bottom: 2.5em;
      width: 35.2em;
      z-index: 10;
      -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: 1;
      filter: alpha(opacity=100);
      -webkit-transition: 0.25s ease;
      -moz-transition: 0.25s ease;
      -ms-transition: 0.25s ease;
      -o-transition: 0.25s ease;
      transition: 0.25s 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: 768px) {
        body#front-page #mainimg .news {
          width: 35em;
          font-size: 0.8em;
          bottom: 1em; } }
      @media screen and (max-width: 480px) {
        body#front-page #mainimg .news {
          width: 28em; } }
      body#front-page #mainimg .news.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#front-page #mainimg .news a {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        height: 5em;
        display: block;
        background: #fff url("/images/ya.svg") no-repeat right 1.25em top 50%/1.875em auto;
        border-top-right-radius: 1em;
        border-bottom-right-radius: 1em;
        -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
        -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;
        padding: 0 5em 0 1.45em;
        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;
        color: #000;
        /* 見出し ------------------------------------------- */
        /* 記事 ------------------------------------------- */ }
        body#front-page #mainimg .news a:hover {
          -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          -webkit-transform: translate(0.2em, 0.2em);
          -moz-transform: translate(0.2em, 0.2em);
          -ms-transform: translate(0.2em, 0.2em);
          -o-transform: translate(0.2em, 0.2em);
          transform: translate(0.2em, 0.2em);
          text-decoration: none;
          opacity: 1;
          filter: alpha(opacity=100); }
        body#front-page #mainimg .news a: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);
          background-position: right 0.8em top 50%; }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .news a {
            padding-right: 4em; } }
        body#front-page #mainimg .news a h2 {
          width: 2.25em;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-family: acumin-pro-extra-condensed, sans-serif;
          font-style: normal;
          font-size: 2.5em;
          font-weight: 600;
          line-height: 1em;
          top: -0.1em;
          color: #009fe8; }
        body#front-page #mainimg .news a p {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          -webkit-box-flex: 1;
          -webkit-flex: 1;
          -moz-box-flex: 1;
          -ms-flex: 1;
          flex: 1;
          line-height: 1em;
          padding-bottom: 0;
          width: 100%;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          -o-text-overflow: ellipsis;
          /* Opera9,10対応 */
          /* 日付 */ }
          body#front-page #mainimg .news a p .date {
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-family: acumin-pro-extra-condensed, sans-serif;
            font-style: normal;
            font-size: 1.25em;
            font-weight: 600;
            padding-right: 0.8em; }
  body#front-page #top_topics,
  body#front-page #top_event,
  body#front-page #top_info {
    /* ボタン */
    /* -------------------------- 記事一覧出現アニメーション ------------------------------------------- */ }
    @media screen and (max-width: 480px) {
      body#front-page #top_topics .sec_header .btn a,
      body#front-page #top_event .sec_header .btn a,
      body#front-page #top_info .sec_header .btn a {
        width: 10em; } }
    body#front-page #top_topics.on .post_list li.lazyloaded,
    body#front-page #top_event.on .post_list li.lazyloaded,
    body#front-page #top_info.on .post_list li.lazyloaded {
      -webkit-transform: rotate3d(1, -1, 0, 0deg);
      -moz-transform: rotate3d(1, -1, 0, 0deg);
      transform: rotate3d(1, -1, 0, 0deg);
      opacity: 1;
      filter: alpha(opacity=100); }
  body#front-page #top_topics {
    background: #D3E5ED;
    color: #009fe8;
    z-index: 5;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: translate(-100%, -10vw);
    -moz-transform: translate(-100%, -10vw);
    -ms-transform: translate(-100%, -10vw);
    -o-transform: translate(-100%, -10vw);
    transform: translate(-100%, -10vw);
    -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-transition-delay: 0.25s;
    -moz-transition-delay: 0.25s;
    -o-transition-delay: 0.25s;
    transition-delay: 0.25s;
    /* 背景出現アニメーション */
    /* 斜めブルー背景（共通） */
    /* 斜めブルー背景（上） */
    /* 斜めブルー背景（下） */ }
    @media screen and (max-width: 768px) {
      body#front-page #top_topics {
        padding-bottom: 2.5em; } }
    @media screen and (max-width: 480px) {
      body#front-page #top_topics {
        padding-bottom: 0; } }
    body#front-page #top_topics.lazyloaded {
      opacity: 1;
      filter: alpha(opacity=100);
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0); }
    body#front-page #top_topics::before, body#front-page #top_topics::after {
      height: 10em; }
    body#front-page #top_topics::before {
      top: -10em;
      left: 0;
      background-image: url("/images/top_blue.svg");
      background-position: left bottom; }
      @media screen and (max-width: 768px) {
        body#front-page #top_topics::before {
          background-position: 50% 100%; } }
    body#front-page #top_topics::after {
      bottom: -10em;
      right: 0;
      background-image: url("/images/btm_blue.svg");
      background-position: right top; }
  body#front-page #top_event {
    background: #f3f3f3;
    color: #e62318;
    margin-top: -10em;
    padding-top: 25em;
    padding-bottom: 10em;
    z-index: auto;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    /* 読込アニメーション */
    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.75s;
    -moz-transition-delay: 0.75s;
    -o-transition-delay: 0.75s;
    transition-delay: 0.75s; }
    @media screen and (max-width: 1350px) {
      body#front-page #top_event {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center; } }
    @media screen and (max-width: 768px) {
      body#front-page #top_event {
        display: block;
        padding-bottom: 20em; } }
    @media screen and (max-width: 480px) {
      body#front-page #top_event {
        padding-bottom: 12em; } }
    body#front-page #top_event.lazyloaded {
      opacity: 1;
      filter: alpha(opacity=100); }
    body#front-page #top_event .innerbox {
      z-index: 10; }
  body#front-page #top_info {
    padding-top: 0;
    padding-bottom: 10em;
    background: #000;
    color: #fff;
    z-index: 5;
    /* 斜め赤背景（共通） */
    /* 斜め赤背景（上） */
    /* 斜め赤背景（下） */
    /* ボタン */ }
    body#front-page #top_info::before, body#front-page #top_info::after {
      right: 0; }
    body#front-page #top_info::before {
      height: 27.1875em;
      top: -27.1875em;
      background-image: url("/images/top_red.svg");
      background-position: right bottom; }
      @media screen and (max-width: 1350px) {
        body#front-page #top_info::before {
          height: 16em;
          top: -16em; } }
      @media screen and (max-width: 768px) {
        body#front-page #top_info::before {
          height: 35em;
          top: -35em; } }
      @media screen and (max-width: 480px) {
        body#front-page #top_info::before {
          height: 24em;
          top: -24em; } }
    body#front-page #top_info::after {
      height: 15em;
      bottom: -15em;
      background-image: url("/images/btm_red.svg");
      background-position: right bottom; }
      @media screen and (max-width: 480px) {
        body#front-page #top_info::after {
          height: 10em;
          bottom: -10em; } }
    @media screen and (max-width: 768px) {
      body#front-page #top_info .sec_header .btn a {
        width: 9em; } }
  body#front-page #top_login {
    min-height: 100vh;
    padding-top: 15em;
    padding-bottom: 10em;
    color: #000;
    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 (max-width: 1350px) and (min-width: 481px) {
  body#front-page #top_login {
    padding-top: 20em; } }

    @media screen and (max-width: 480px) {
      body#front-page #top_login {
        padding-bottom: 7em; } }
    body#front-page #top_login::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      background: #fff;
      z-index: -2; }
    body#front-page #top_login .innerbox {
      z-index: 5;
      /* 英語コピー ------------------------------------------- */
      /* 日本語コピー ------------------------------------------- */
      /* ボタン ------------------------------------------- */ }
      body#front-page #top_login .innerbox .eg_txt {
        /* 中テキスト */ }
        @media screen and (max-width: 480px) {
          body#front-page #top_login .innerbox .eg_txt {
            font-size: 0.8em;
            opacity: 0.7;
            filter: alpha(opacity=70); } }
        body#front-page #top_login .innerbox .eg_txt .txt_m {
          -webkit-transition-delay: 0.25s;
          -moz-transition-delay: 0.25s;
          -o-transition-delay: 0.25s;
          transition-delay: 0.25s; }
      body#front-page #top_login .innerbox .jp_txt {
        /* 中テキスト */
        /* 小テキスト */ }
        body#front-page #top_login .innerbox .jp_txt .txt_m {
          -webkit-transition-delay: 0.5s;
          -moz-transition-delay: 0.5s;
          -o-transition-delay: 0.5s;
          transition-delay: 0.5s; }
        body#front-page #top_login .innerbox .jp_txt .txt_s {
          -webkit-transition-delay: 0.75s;
          -moz-transition-delay: 0.75s;
          -o-transition-delay: 0.75s;
          transition-delay: 0.75s; }
      body#front-page #top_login .innerbox .btn {
        -webkit-transition-delay: 1s;
        -moz-transition-delay: 1s;
        -o-transition-delay: 1s;
        transition-delay: 1s; }
    body#front-page #top_login .join_bg {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      z-index: -1;
      -webkit-transform: scale(2);
      -moz-transform: scale(2);
      -ms-transform: scale(2);
      -o-transform: scale(2);
      transform: scale(2);
      -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; }
      body#front-page #top_login .join_bg span {
        display: block;
        position: absolute;
        top: 0;
        left: -5em;
        right: 0;
        bottom: 0;
        margin: auto;
        -webkit-animation-name: ani_rl;
        -webkit-animation-duration: 20s;
        -webkit-animation-fill-mode: forwards;
        -webkit-animation-timing-function: ease-in-out;
        -webkit-animation-iteration-count: infinite;
        animation-name: ani_rl;
        animation-duration: 20s;
        animation-fill-mode: forwards;
        animation-timing-function: ease-in-out;
        animation-iteration-count: infinite; }
        body#front-page #top_login .join_bg span img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%;
          opacity: 0;
          filter: alpha(opacity=0);
          -webkit-transition: 5s ease;
          -moz-transition: 5s ease;
          -ms-transition: 5s ease;
          -o-transition: 5s ease;
          transition: 5s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
    body#front-page #top_login.on .join_bg {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1); }
      body#front-page #top_login.on .join_bg span img.lazyloaded {
        opacity: 1;
        filter: alpha(opacity=100); }

/* =======================================================================================================================
　　　　　　　　　下層ページ（共通）
======================================================================================================================= */
body {
  /* ================= ページヘッダー ============================================================ */ }
  body #page-header {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    padding: 5em 0 12em 0;
    z-index: 1;
    /* 底部斜め赤背景 ------------------------------------------- */
    /* ブルー */
    /* 赤 */
    /* 英語タイトル */
    /* 日本語タイトル */ }
    @media screen and (max-width: 1350px) {
      body #page-header {
        padding-bottom: 9em; } }
    @media screen and (max-width: 768px) {
      body #page-header {
        padding-bottom: 6em; } }
    @media screen and (max-width: 480px) {
      body #page-header {
        padding-top: 7.5em; } }
    body #page-header::before, body #page-header::after {
      content: "";
      display: block;
      position: absolute;
      top: auto;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      height: 9vw;
      z-index: 1; }
    body #page-header::before {
      background: url("/images/top_blue.svg") no-repeat left bottom/contain; }
    body #page-header::after {
      background: url("/images/top2_red.svg") no-repeat right bottom/contain; }
    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: acumin-pro-extra-condensed, sans-serif;
      font-style: normal;
      font-size: 10em;
      font-weight: 600;
      line-height: 1em;
      padding-bottom: 0.01em; }
      @media screen and (max-width: 768px) {
        body #page-header .eg_ttl {
          font-size: 6em; } }
      @media screen and (max-width: 480px) {
        body #page-header .eg_ttl {
          font-size: 4.5em; } }
      body #page-header .eg_ttl::first-letter {
        color: #000; }
    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: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-weight: 900;
      font-style: normal;
      font-size: 2.5em;
      line-height: 1.5em; }
      @media screen and (max-width: 768px) {
        body #page-header .page_ttl {
          font-size: 2em; } }
      @media screen and (max-width: 480px) {
        body #page-header .page_ttl {
          font-size: 1.5em; } }
      body #page-header .page_ttl::first-letter {
        color: #e62318; }

/* ================= Not Found ============================================================ */
.not-found {
  background: #f3f3f3;
  z-index: 5; }
  .not-found::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  .not-found::before {
    background-position: left bottom; }
  .not-found::before {
    background-image: url("/images/top_glay.svg"); }

/* =======================================================================================================================
　　　　　　　　　フリーページ（カスタムフィールド）
======================================================================================================================= */
.freepage-ctt {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 0;
  padding-bottom: 0;
  z-index: 5; }
  .freepage-ctt .sec {
    padding-bottom: 15em; }
    @media screen and (max-width: 768px) {
      .freepage-ctt .sec {
        padding-bottom: 10em; } }
    @media screen and (max-width: 480px) {
      .freepage-ctt .sec {
        padding-bottom: 7.5em; } }

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

/* =============== 背景色 ========================================================= */
.sec_bg1 {
  background: #fff; }
  .sec_bg1::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  .sec_bg1::before {
    background-image: url("/images/top_white.svg"); }

.sec_bg2 {
  background: #D3E5ED; }
  .sec_bg2::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  .sec_bg2::before {
    background-image: url("/images/top_blue.svg"); }

.sec_bg3 {
  background: #444;
  color: #fff; }
  .sec_bg3::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  .sec_bg3::before {
    background-position: left bottom; }
  .sec_bg3::before {
    background-image: url("/images/top_red_sub.svg"); }
  .sec_bg3 a {
    color: #fff; }

.sec_bg4 {
  background: #f3f3f3; }
  .sec_bg4::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  .sec_bg4::before {
    background-position: left bottom; }
  .sec_bg4::before {
    background-image: url("/images/top_glay.svg"); }

/* 同じ背景色のセクションが続いたときに余白をなくす */
.sec_bg1 + .sec_bg1, .sec_bg2 + .sec_bg2, .sec_bg3 + .sec_bg3 {
  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;
  /* 大きな数字 */ }
  .parts-h3 .jpttl {
    font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: 900;
    font-style: normal;
    display: block;
    font-size: 3.75em;
    line-height: 1.5em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .jpttl {
        font-size: 2.5em; } }
  .parts-h3 .lnmb {
    display: block;
    font-family: acumin-pro-extra-condensed, sans-serif;
    font-style: normal;
    font-size: 8em;
    letter-spacing: 0;
    line-height: 1em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .lnmb {
        font-size: 5em; } }
    @media screen and (max-width: 480px) {
      .parts-h3 .lnmb {
        font-size: 3.5em; } }
    .parts-h3 .lnmb + .jpttl {
      padding-top: 0.5em;
      font-size: 2em; }
      @media screen and (max-width: 768px) {
        .parts-h3 .lnmb + .jpttl {
          font-size: 1.3em; } }

.parts-h4 {
  font-size: 1.25em;
  font-weight: bold;
  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: 1.8em;
    font-weight: 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 768px) {
      .freepage-ctt .sec p.parts-copy {
        font-size: 1.6em; } }
  .freepage-ctt .sec p.note {
    font-size: 0.9em;
    font-weight: 400;
    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;
    color: #e62318; }
    .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; }
.freepage-ctt .sec.sec_bg2 p.note, .freepage-ctt .sec.sec_bg3 p.note {
  color: #fff;
  opacity: 0.7;
  filter: alpha(opacity=70); }

/* やや小さめ強調 */
.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: 3.75em;
    background: #fff;
    color: #000;
    border-radius: 1em;
    -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1); }
    @media screen and (max-width: 1350px) {
      .freepage-ctt .sec .bbox {
        padding: 2.5em; } }
    @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: acumin-pro-extra-condensed, source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-weight: 700;
      font-size: 1.75em;
      line-height: 1.5em;
      padding-bottom: 1em; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec .bbox h3, .freepage-ctt .sec .bbox h4 {
          font-size: 1.5em; } }
    .freepage-ctt .sec .bbox p {
      padding-bottom: 2em; }
      .freepage-ctt .sec .bbox p:last-child {
        padding-bottom: 0; }
  .freepage-ctt .sec.sec_bg1 .bbox {
    background: #009fe8;
    color: #fff; }

/* =============== 画像 ========================================================= */
/* 角丸 */
.rd {
  border-radius: 2.5em;
  position: relative;
  z-index: 1;
  overflow: hidden; }
  @media screen and (max-width: 1350px) {
    .rd {
      border-radius: 1.5em; } }
  @media screen and (max-width: 768px) {
    .rd {
      border-radius: 1em; } }

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: 1350px) {
      .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: 1350px) {
      .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: 1350px) 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;
  margin: 0 auto;
  margin-bottom: 2.5em;
  position: relative;
  padding: 3.75em;
  background: #fff;
  color: #000;
  border-radius: 1em;
  -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  /* 見出し */
  /* リスト */ }
  .sec_bg1 .no_list {
    background: #009fe8;
    color: #fff; }
    .sec_bg1 .no_list a {
      color: #fff; }
  @media screen and (max-width: 1350px) {
    .no_list {
      padding: 2.5em; } }
  @media screen and (max-width: 768px) {
    .no_list {
      padding: 2em; } }
  @media screen and (max-width: 480px) {
    .no_list {
      padding: 1.5em; } }
  .no_list h3, .no_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @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;
  margin: 0 auto;
  margin-bottom: 2.5em;
  padding: 3.75em;
  background: #fff;
  color: #000;
  border-radius: 1em;
  -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  /* 見出し */
  /* リスト */ }
  .sec_bg1 .check_list {
    background: #009fe8;
    color: #fff; }
    .sec_bg1 .check_list a {
      color: #fff; }
  @media screen and (max-width: 1350px) {
    .check_list {
      padding: 2.5em; } }
  @media screen and (max-width: 768px) {
    .check_list {
      padding: 2em; } }
  @media screen and (max-width: 480px) {
    .check_list {
      padding: 1.5em; } }
  .check_list h3, .check_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @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: #009fe8; }
        .sec_bg1 .check_list ul li::before {
          color: #fff; }
      .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;
  margin: 0 auto;
  margin-bottom: 2.5em;
  padding: 3.75em;
  background: #fff;
  color: #000;
  border-radius: 1em;
  -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  /* 見出し */
  /* リスト */ }
  .sec_bg1 .order_list {
    background: #009fe8;
    color: #fff; }
    .sec_bg1 .order_list a {
      color: #fff; }
  @media screen and (max-width: 1350px) {
    .order_list {
      padding: 2.5em; } }
  @media screen and (max-width: 768px) {
    .order_list {
      padding: 2em; } }
  @media screen and (max-width: 480px) {
    .order_list {
      padding: 1.5em; } }
  .order_list h3, .order_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @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;
        top: 0.13em;
        display: inline-block;
        width: 0.8em;
        margin-left: -0.8em;
        counter-increment: number;
        content: counter(number,decimal-leading-zero);
        font-family: acumin-pro-extra-condensed, sans-serif;
        font-style: normal;
        font-size: 2.5em;
        font-weight: 600;
        color: #009fe8; }
        .sec_bg1 .order_list ol li::before {
          color: #fff;
          opacity: 0.8;
          filter: alpha(opacity=80); }
      .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 {
    display: inline-block;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @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: #fff;
      color: #000;
      margin-bottom: 0.5em;
      -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
      box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1); }
      .sec_bg1 .table_list ul li {
        background: #009fe8;
        color: #fff; }
        .sec_bg1 .table_list ul li a {
          color: #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;
        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: #000 solid 0.1em; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_th {
            width: 100%;
            border-right: none;
            border-bottom: #000 solid 0.1em; } }
        .sec_bg1 .table_list ul li .tablelist_th {
          border-color: #fff; }
      .table_list ul li .tablelist_td {
        width: 70%;
        font-weight: 500; }
        @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: 3.75em;
  background: #fff;
  color: #e62318;
  border-radius: 1em;
  -webkit-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0.7em 0.7em 1em 0 rgba(0, 0, 0, 0.1);
  /* 見出し */
  /* リスト */ }
  .sec_bg1 .note_list {
    background: #f3f3f3; }
    .sec_bg1 .note_list a {
      color: #fff; }
  @media screen and (max-width: 1350px) {
    .note_list {
      padding: 2.5em; } }
  @media screen and (max-width: 768px) {
    .note_list {
      padding: 2em; } }
  @media screen and (max-width: 480px) {
    .note_list {
      padding: 1.5em; } }
  .note_list h3, .note_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @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: 500;
      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; }

/* リンク色 -------------------------------- */
.sec_bg2 .note_list a {
  color: #009fe8; }
  .sec_bg2 .note_list a:hover {
    color: #e62318; }

/* タイムライン -------------------------------- */
.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 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @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: #009fe8 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 {
        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 {
        font-family: acumin-pro-extra-condensed, source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-style: normal;
        padding-left: 0;
        width: 10em;
        font-weight: 900;
        text-align: right;
        color: #009fe8; }
      .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: acumin-pro-extra-condensed, source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
          font-style: normal; }
        .time_list ul li .time_ctt::before {
          content: "";
          display: block;
          width: 0.75em;
          height: 0.75em;
          border-radius: 50%;
          background: #009fe8;
          position: absolute;
          top: 1.9em;
          left: -0.2em;
          right: auto;
          bottom: auto;
          z-index: 2; }
    .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: #009fe8 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: acumin-pro-extra-condensed, sans-serif;
    font-style: normal;
    font-size: 3em;
    font-weight: 600;
    line-height: 1em;
    padding-bottom: 0.1em;
    color: #009fe8; }
    @media screen and (max-width: 480px) {
      .contactpage-ctt .contact_tel p.contacttel_tel {
        font-size: 2em; } }
    .contactpage-ctt .contact_tel p.contacttel_tel img {
      height: 1em;
      width: auto;
      margin-right: 0.25em; }
    .contactpage-ctt .contact_tel p.contacttel_tel .egfont {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: inline-block;
      font-size: 1.5em;
      top: 0.05em; }
  .contactpage-ctt .contact_tel p.contacttel_time {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.3em;
    padding-bottom: 0;
    color: #666; }
    @media screen and (max-width: 480px) {
      .contactpage-ctt .contact_tel p.contacttel_time {
        font-size: 1em; } }

/* ===========================================================================================================
　　　　　　　　　新着記事
=========================================================================================================== */
/* ================= ページヘッダー（共通） ============================================================ */
#page-header .innerbox {
  /* -------------------------- 英語タイトル月別アーカイブ時 ------------------------------------------- */
  /* -------------------------- 見出し・月セレクト横並び ------------------------------------------- */
  /* -------------------------- 一覧ボタン ------------------------------------------- */ }
  #page-header .innerbox .eg_ttl .year {
    padding-left: 0.5em;
    font-size: 0.5em;
    opacity: 0.5;
    filter: alpha(opacity=50); }
    @media screen and (max-width: 1350px) {
      #page-header .innerbox .eg_ttl .year {
        font-size: 0.4em; } }
  #page-header .innerbox .eg_ttl .month,
  #page-header .innerbox .eg_ttl .md {
    padding-left: 0.1em;
    font-size: 0.75em;
    opacity: 0.7;
    filter: alpha(opacity=70); }
    @media screen and (max-width: 1350px) {
      #page-header .innerbox .eg_ttl .month,
      #page-header .innerbox .eg_ttl .md {
        font-size: 0.6em; } }
  #page-header .innerbox .flexbox {
    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-align: end;
    -webkit-align-items: flex-end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    /* 見出し */
    /* 月セレクト ------------------------------------------- */ }
    #page-header .innerbox .flexbox .page_ttl {
      width: auto;
      /* カテゴリ名 */ }
      #page-header .innerbox .flexbox .page_ttl .cate_ttl {
        font-size: 0.6em;
        font-weight: 700; }
        #page-header .innerbox .flexbox .page_ttl .cate_ttl::before {
          content: "-";
          padding-left: 0.2em; }
    #page-header .innerbox .flexbox select {
      display: block;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-size: 1.2em;
      font-weight: 700;
      line-height: 1.2em;
      height: 2.2em;
      border: none;
      border-bottom: #fff solid 0.15em;
      background-color: transparent;
      color: #fff;
      margin-left: 1em;
      top: -0.5em;
      padding: 0.25em;
      cursor: pointer; }
      #page-header .innerbox .flexbox select option {
        color: #000; }
      @media screen and (max-width: 768px) {
        #page-header .innerbox .flexbox select {
          top: -0.25em; } }
  @media screen and (min-width: 481px) {
    #page-header .innerbox .btn {
      position: absolute;
      top: 2.5em;
      left: auto;
      right: 10em;
      bottom: auto; } }
  @media screen and (max-width: 1350px) {
    #page-header .innerbox .btn {
      right: 5em; } }
  @media screen and (max-width: 768px) {
    #page-header .innerbox .btn {
      right: 2.5em; } }
  @media screen and (max-width: 480px) {
    #page-header .innerbox .btn {
      padding-top: 2.5em; } }

/* ================= アーカイブ ============================================================ */
#post_archive {
  z-index: 5;
  background: #D3E5ED; }
  #post_archive::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  #post_archive::before {
    background-image: url("/images/top_blue.svg"); }

/* ページナビゲーション（共通） */
.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; }
  @media screen and (max-width: 768px) {
    .pager {
      padding-top: 3em; } }
  .pager a {
    text-decoration: none;
    color: #009fe8; }
    .pager a:hover {
      color: #e62318; }
  .pager p {
    padding-bottom: 0;
    padding-left: 0.5em;
    padding-right: 0.5em; }
  .pager .no-link {
    color: #009fe8;
    opacity: 0.3;
    filter: alpha(opacity=30); }
  .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: acumin-pro-extra-condensed, sans-serif;
    font-style: normal;
    font-size: 1.2em; }
    .pager .nth-box .current {
      font-size: 1.2em;
      display: inline-block;
      color: #009fe8;
      opacity: 0.3;
      filter: alpha(opacity=30);
      padding: 0 0.5em; }
    .pager .nth-box .tenten {
      color: #009fe8;
      opacity: 0.3;
      filter: alpha(opacity=30); }
    .pager .nth-box a {
      display: inline-block;
      padding: 0 0.5em;
      color: #009fe8; }
      .pager .nth-box a:hover {
        color: #e62318; }

/* ================= 投稿ページ（共通） ============================================================ */
#newspost {
  /* 日付 */
  /* -------------------------- 記事タイトル ------------------------------------------- */
  /* -------------------------- ナビゲーション ------------------------------------------- */ }
  #newspost .eg_ttl .date {
    font-size: 0.6em; }
    @media screen and (max-width: 480px) {
      #newspost .eg_ttl .date {
        font-size: 1em; } }
  #newspost .entry_ttl {
    width: 100%;
    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; }
    @media screen and (max-width: 1350px) {
      #newspost .entry_ttl {
        font-size: 1.8em; } }
    @media screen and (max-width: 768px) {
      #newspost .entry_ttl {
        width: 100%;
        font-size: 1.6em; } }
    @media screen and (max-width: 480px) {
      #newspost .entry_ttl {
        font-size: 1.4em; } }
    #newspost .entry_ttl::first-letter {
      color: #e62318; }
  #newspost .nav_sec {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 7em 0;
    background: #ccc; }
    @media screen and (max-width: 480px) {
      #newspost .nav_sec {
        padding: 2.5em 0; } }
    #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: #000;
        -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: #009fe8; }
        #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: #000;
          text-decoration: none; }
          @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: #009fe8; }
        #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; }

/* =======================================================================================================================
　　　　　　　　　アルバイト情報一覧
======================================================================================================================= */
/* ================= カテゴリ一覧（情報ボックス共通） ============================================================ */
.cate_box {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 2em;
  border-radius: 1em;
  background: #fff;
  color: #000;
  /* 見出し */
  /* -------------------------- カテゴリリスト ------------------------------------------- */ }
  .cate_box .cr_ttl {
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1em; }
  .cate_box .cate_list {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside;
    padding-top: 1em; }
    .cate_box .cate_list li {
      display: inline-block;
      padding-right: 1em; }
      .cate_box .cate_list li:last-child {
        padding-right: 0; }
      .cate_box .cate_list li a {
        text-decoration: none;
        color: #000;
        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; }
        .cate_box .cate_list li a::before {
          content: "";
          display: inline-block;
          width: 1.5em;
          height: 1.5em;
          background: url("/images/ya.svg") no-repeat 50% 50%/contain;
          -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;
          margin-right: 0.3em; }
        .cate_box .cate_list li a:hover {
          color: #000; }
          .cate_box .cate_list li a:hover::before {
            -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); }

/* ================= カテゴリ一覧（イベント） ============================================================ */
.event_cate:first-child {
  padding-bottom: 5em; }
.event_cate:last-child {
  padding-top: 5em; }
.event_cate .area_list + .type_list {
  margin-top: 1em; }

/* ================= 昇順降順切り替え ============================================================ */
.order-switcher {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 2;
  padding-bottom: 2.5em;
  text-align: right; }
  .order-switcher a {
    text-decoration: none;
    color: #000; }
    .order-switcher a:hover {
      color: #009fe8;
      text-decoration: underline; }

/* ================= アルバイト一覧 ============================================================ */
.event_list {
  margin-top: -3em;
  color: #000; }
  @media screen and (max-width: 480px) {
    .event_list {
      margin-top: -2em; } }
  .event_list li {
    margin-top: 3em;
    /* -------------------------- エリア ------------------------------------------- */
    /* -------------------------- ジャンル ------------------------------------------- */
    /* -------------------------- ジャンル別色設定 ------------------------------------------- */ }
    @media screen and (max-width: 480px) {
      .event_list li {
        margin-top: 2em; } }
    .event_list li .area {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      text-align: right;
      font-size: 0.9em;
      font-weight: 400;
      line-height: 1.5em;
      padding-right: 1.1em;
      padding-bottom: 0.25em;
      /* マップアイコン */
      /* ジャンル別色設定 ------------------------------------------- */
      /* 野球 */
      /* サッカー */
      /* 空港 */
      /* コンサート */
      /* その他 */ }
      .event_list li .area i {
        padding-right: 0.2em; }
      .event_list li .area:has(+ .type .baseball) {
        color: #000; }
      .event_list li .area:has(+ .type .soccer) {
        color: #009fe8;
        /* ロアッソ熊本 */
        /* アビスパ福岡 */
        /* サガン鳥栖 */
        /* V・ファーレン長崎 */ }
        .event_list li .area:has(+ .type .soccer):has(.event-area-28) {
          color: #B61A14; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type:has(.soccer)::before {
            color: #B61A14; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type span.soccer {
            background: #B61A14; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type + a {
            /* 見出し */ }
            .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type + a .post_ttl {
              background: #B61A14; }
            .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type + a .evinfo_box {
              /* 日付 */
              /* 時給 */ }
              .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type + a .evinfo_box .event_date span i {
                background: #B61A14; }
              .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type + a .evinfo_box .event_wage::after,
              .event_list li .area:has(+ .type .soccer):has(.event-area-28) + .type + a .evinfo_box .event_wage .eg {
                color: #B61A14; }
        .event_list li .area:has(+ .type .soccer):has(.event-area-24) {
          color: #00205B; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type:has(.soccer)::before {
            color: #01A4BB; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type span.soccer {
            background: #01A4BB; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type + a {
            /* 見出し */ }
            .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type + a .post_ttl {
              background: #00205B; }
            .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type + a .evinfo_box {
              /* 日付 */
              /* 時給 */ }
              .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type + a .evinfo_box .event_date span i {
                background: #00205B; }
              .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type + a .evinfo_box .event_wage::after,
              .event_list li .area:has(+ .type .soccer):has(.event-area-24) + .type + a .evinfo_box .event_wage .eg {
                color: #01A4BB; }
        .event_list li .area:has(+ .type .soccer):has(.event-area-29) {
          color: #E95499; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type:has(.soccer)::before {
            color: #E95499; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type span.soccer {
            background: #E95499; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type + a {
            /* 見出し */ }
            .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type + a .post_ttl {
              background: #E95499; }
            .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type + a .evinfo_box {
              /* 日付 */
              /* 時給 */ }
              .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type + a .evinfo_box .event_date span i {
                background: #00A0D2; }
              .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type + a .evinfo_box .event_wage::after,
              .event_list li .area:has(+ .type .soccer):has(.event-area-29) + .type + a .evinfo_box .event_wage .eg {
                color: #E95499; }
        .event_list li .area:has(+ .type .soccer):has(.event-area-30) {
          color: #005BAC; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type:has(.soccer)::before {
            color: #F39800; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type span.soccer {
            background: #F39800; }
          .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type + a {
            /* 見出し */ }
            .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type + a .post_ttl {
              background: #F39800;
              color: #005BAC; }
            .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type + a .evinfo_box {
              /* 日付 */
              /* 時給 */ }
              .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type + a .evinfo_box .event_date span i {
                background: #005BAC; }
              .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type + a .evinfo_box .event_wage::after,
              .event_list li .area:has(+ .type .soccer):has(.event-area-30) + .type + a .evinfo_box .event_wage .eg {
                color: #005BAC; }
      .event_list li .area:has(+ .type .airport) {
        color: #52B7E5; }
      .event_list li .area:has(+ .type .concert) {
        color: #000; }
      .event_list li .area:has(+ .type .other) {
        color: #09B700; }
    .event_list li .type {
      display: block;
      position: absolute;
      top: 1em;
      left: -0.5em;
      right: auto;
      bottom: auto;
      border-radius: 50%;
      background: #000;
      width: 4em;
      height: 4em;
      box-sizing: border-box;
      padding-top: 0.9em;
      z-index: 2;
      pointer-events: none;
      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;
      /* アイコン ------------------------------------------- */
      /* 野球 */
      /* サッカー */
      /* 空港 */
      /* コンサート */
      /* イベント他 */
      /* 枠線 ------------------------------------------- */
      /* テキスト ------------------------------------------- */
      /* マウスオーバー ------------------------------------------- */ }
      @media screen and (max-width: 480px) {
        .event_list li .type {
          font-size: 1.1em; } }
      .event_list li .type::before, .event_list li .type::after {
        content: "";
        display: block; }
      .event_list li .type::before {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1;
        font-size: 1.4em;
        line-height: 1em;
        color: #fff; }
      .event_list li .type:has(.baseball)::before {
        content: "\f432";
        color: #FCC700; }
      .event_list li .type:has(.soccer)::before {
        content: "\f1e3";
        color: #52B7E5; }
      .event_list li .type:has(.airport)::before {
        content: "\f072";
        color: #D3E5ED; }
      .event_list li .type:has(.concert)::before {
        content: "\f001";
        color: #fff; }
      .event_list li .type:has(.other)::before {
        content: "\f024";
        color: #09B700; }
      .event_list li .type::after {
        position: absolute;
        top: 0.2em;
        left: 0.2em;
        right: 0.2em;
        bottom: 0.2em;
        margin: auto;
        border-radius: 50%;
        border: #fff solid 0.15em;
        box-sizing: border-box; }
      .event_list li .type span {
        display: inline-block;
        position: absolute;
        top: auto;
        left: 1em;
        right: 1em;
        bottom: 1.2em;
        margin: auto;
        font-size: 0.5em;
        line-height: 1em;
        padding: 0.25em 0;
        border-radius: 0.75em;
        text-align: center;
        z-index: 5;
        /* 野球 */
        /* サッカー */
        /* 空港 */
        /* コンサート */
        /* イベント他 */ }
        .event_list li .type span.baseball {
          background: #FCC700;
          color: #000; }
        .event_list li .type span.soccer {
          background: #52B7E5;
          color: #fff; }
        .event_list li .type span.airport {
          background: #D3E5ED; }
        .event_list li .type span.concert {
          background: #fff; }
        .event_list li .type span.other {
          background: #09B700; }
      .event_list li .type:has(+ a:hover) {
        -webkit-transform: translate(0.2em, 0.2em);
        -moz-transform: translate(0.2em, 0.2em);
        -ms-transform: translate(0.2em, 0.2em);
        -o-transform: translate(0.2em, 0.2em);
        transform: translate(0.2em, 0.2em); }
    .event_list li a {
      padding: 0;
      overflow: hidden;
      z-index: 1;
      /* -------------------------- 見出し ------------------------------------------- */
      /* -------------------------- 日付・時給 ------------------------------------------- */
      /* -------------------------- テキスト ------------------------------------------- */ }
      .event_list li a .post_ttl {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        background: #009fe8;
        color: #fff;
        padding: 1em;
        padding-left: 4em;
        margin-top: 0;
        white-space: normal;
        height: auto; }
        @media screen and (max-width: 480px) {
          .event_list li a .post_ttl {
            padding-left: 4.5em; } }
      .event_list li a .evinfo_box {
        background: #f3f3f3;
        padding: 1em;
        padding-bottom: 0.5em;
        /* 日付 ------------------------------------------- */
        /* 時給 ------------------------------------------- */ }
        .event_list li a .evinfo_box .event_date {
          font-size: 0.9em;
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          line-height: 1.3em;
          /* 共通 */
          /* 全件列挙 */
          /* 期間表示 */ }
          .event_list li a .evinfo_box .event_date span {
            display: inline-block;
            padding-bottom: 0.5em; }
            .event_list li a .evinfo_box .event_date span i {
              font-style: normal;
              display: inline-block;
              padding: 0.25em 0.5em;
              border-radius: 0.5em; }
          .event_list li a .evinfo_box .event_date.all span {
            padding-right: 0.2em; }
            .event_list li a .evinfo_box .event_date.all span:last-child {
              padding-right: 0; }
          .event_list li a .evinfo_box .event_date.period span {
            display: none; }
            .event_list li a .evinfo_box .event_date.period span:first-child, .event_list li a .evinfo_box .event_date.period span:last-child {
              display: inline-block; }
            .event_list li a .evinfo_box .event_date.period span + span::before {
              content: "～";
              padding-right: 0.2em; }
        .event_list li a .evinfo_box .event_wage {
          padding-bottom: 0;
          line-height: 2em; }
          .event_list li a .evinfo_box .event_wage::after {
            content: "円";
            font-size: 1.25em;
            font-weight: 900; }
          .event_list li a .evinfo_box .event_wage .eg {
            display: inline-block;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 2.5em;
            font-weight: 700;
            bottom: -0.05em; }
      .event_list li a .event_txt {
        padding: 1.2em;
        margin-top: 0; }
    .event_list li .type {
      /* 野球 ------------------------------------------- */
      /* サッカー ------------------------------------------- */
      /* 空港 ------------------------------------------- */
      /* コンサート ------------------------------------------- */
      /* イベント他 ------------------------------------------- */ }
      .event_list li .type:has(.baseball) + a {
        /* 見出し */ }
        .event_list li .type:has(.baseball) + a .post_ttl {
          background: #FCC700;
          color: #000; }
        .event_list li .type:has(.baseball) + a .evinfo_box {
          /* 日付 */
          /* 時給 */ }
          .event_list li .type:has(.baseball) + a .evinfo_box .event_date span i {
            background: #000;
            color: #FCC700; }
          .event_list li .type:has(.baseball) + a .evinfo_box .event_wage::after,
          .event_list li .type:has(.baseball) + a .evinfo_box .event_wage .eg {
            color: #000; }
      .event_list li .type:has(.soccer) + a {
        /* 見出し */ }
        .event_list li .type:has(.soccer) + a .post_ttl {
          background: #009fe8; }
        .event_list li .type:has(.soccer) + a .evinfo_box {
          /* 日付 */
          /* 時給 */ }
          .event_list li .type:has(.soccer) + a .evinfo_box .event_date span i {
            background: #009fe8;
            color: #fff; }
          .event_list li .type:has(.soccer) + a .evinfo_box .event_wage::after,
          .event_list li .type:has(.soccer) + a .evinfo_box .event_wage .eg {
            color: #009fe8; }
      .event_list li .type:has(.airport) + a {
        /* 見出し */ }
        .event_list li .type:has(.airport) + a .post_ttl {
          background: #C5E5F4;
          color: #000; }
        .event_list li .type:has(.airport) + a .evinfo_box {
          /* 日付 */
          /* 時給 */ }
          .event_list li .type:has(.airport) + a .evinfo_box .event_date span i {
            background: #D3E5ED; }
          .event_list li .type:has(.airport) + a .evinfo_box .event_wage::after,
          .event_list li .type:has(.airport) + a .evinfo_box .event_wage .eg {
            color: #52B7E5; }
      .event_list li .type:has(.concert) + a {
        /* 見出し */ }
        .event_list li .type:has(.concert) + a .post_ttl {
          background: #444;
          color: #fff; }
        .event_list li .type:has(.concert) + a .evinfo_box {
          /* 日付 */ }
          .event_list li .type:has(.concert) + a .evinfo_box .event_date span i {
            background: #ccc; }
      .event_list li .type:has(.other) + a {
        /* 見出し */ }
        .event_list li .type:has(.other) + a .post_ttl {
          background: #09B700; }
        .event_list li .type:has(.other) + a .evinfo_box {
          /* 日付 */
          /* 時給 */ }
          .event_list li .type:has(.other) + a .evinfo_box .event_date span i {
            background: #09B700;
            color: #fff; }
          .event_list li .type:has(.other) + a .evinfo_box .event_wage::after,
          .event_list li .type:has(.other) + a .evinfo_box .event_wage .eg {
            color: #09B700; }

/* =======================================================================================================================
　　　　　　　　　アルバイト情報ページ
======================================================================================================================= */
/* ================= 情報表示エリア ============================================================ */
#event_info {
  background: #D3E5ED;
  z-index: 5;
  /* -------------------------- 日時 ------------------------------------------- */
  /* -------------------------- 会場 ------------------------------------------- */ }
  #event_info::before {
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    top: -10vw;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover; }
  #event_info::before {
    background-position: left bottom; }
  #event_info::before {
    background-image: url("/images/top_blue.svg"); }
  #event_info:has(+ .freepage-ctt .sec) {
    padding-bottom: 15em; }
    @media screen and (max-width: 768px) {
      #event_info:has(+ .freepage-ctt .sec) {
        padding-bottom: 10em; } }
    @media screen and (max-width: 480px) {
      #event_info:has(+ .freepage-ctt .sec) {
        padding-bottom: 7.5em; } }
  #event_info .event_date {
    display: block;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /* 日付 ------------------------------------------- */
    /* 時間 ------------------------------------------- */ }
    #event_info .event_date + .event_date {
      padding-top: 0.5em; }
    #event_info .event_date .date {
      font-weight: 700; }
    #event_info .event_date .time {
      display: inline-block; }
      #event_info .event_date .time .timeset {
        display: inline-block; }
        #event_info .event_date .time .timeset:has(+ .timeset)::after {
          content: "、"; }
  #event_info .event_venue {
    display: block;
    /* 会場名 ------------------------------------------- */
    /* 住所 ------------------------------------------- */
    /* Googleマップ ------------------------------------------- */ }
    #event_info .event_venue + .event_venue {
      padding-top: 1em; }
    #event_info .event_venue .venue_name {
      display: inline-block; }
      #event_info .event_venue .venue_name::before {
        content: "●"; }
    #event_info .event_venue .address {
      display: inline-block;
      font-size: 0.8em;
      font-weight: 400;
      line-height: 1.3em;
      color: #666;
      padding-top: 0.5em; }
    #event_info .event_venue .access_map {
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin-top: 0.5em; }
      #event_info .event_venue .access_map iframe {
        width: 100%;
        height: 15em; }
        @media screen and (max-width: 1350px) {
          #event_info .event_venue .access_map iframe {
            height: 12em; } }
        @media screen and (max-width: 768px) {
          #event_info .event_venue .access_map iframe {
            height: 10em; } }
        @media screen and (max-width: 480px) {
          #event_info .event_venue .access_map iframe {
            height: 8em; } }
      #event_info .event_venue .access_map .acf-map {
        width: 100%;
        height: 15em; }
        @media screen and (max-width: 1350px) {
          #event_info .event_venue .access_map .acf-map {
            height: 12em; } }
        @media screen and (max-width: 768px) {
          #event_info .event_venue .access_map .acf-map {
            height: 10em; } }
        @media screen and (max-width: 480px) {
          #event_info .event_venue .access_map .acf-map {
            height: 8em; } }
        #event_info .event_venue .access_map .acf-map img {
          max-width: inherit !important; }

/* ================= エントリーボタンエリア ============================================================ */
#event_entrybtn {
  background: #666; }
  #event_entrybtn .btn {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    #event_entrybtn .btn a {
      width: auto;
      padding-left: 3em;
      padding-right: 5em; }
      @media screen and (max-width: 480px) {
        #event_entrybtn .btn a {
          width: 100%;
          padding-left: 1.3em;
          padding-right: 3.3em; } }

/* =======================================================================================================================
　　　　　　　　　情報ボックス一覧
======================================================================================================================= */
/* ================= カテゴリ一覧 ============================================================ */
#footer-info:first-child {
  padding-top: 0; }
#footer-info:last-child {
  padding-bottom: 0; }
#footer-info .info_cate {
  background: #009fe8;
  color: #fff;
  /* -------------------------- カテゴリリスト ------------------------------------------- */ }
  #footer-info .info_cate .cate_list li a {
    color: #fff; }
    #footer-info .info_cate .cate_list li a::before {
      background-image: url("/images/ya_w.svg"); }
    #footer-info .info_cate .cate_list li a:hover {
      color: #fff; }

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