@charset "UTF-8";
/* CSS Document */
/*
Theme Name: ネクサスイノベーション2024リニューアル
Author: 株式会社ジャンプス

*/
/* 読み込み遅延 */
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); } }

/* ===========================================================================================================
　　　　　　　　　アニメーション
=========================================================================================================== */
/* ================= SVG破線 ============================================================ */
/* ネイビー・シアン ------------------------------------------- */
/* ネイビー共通 */
@keyframes draw_n {
  0% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  10% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  30% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50; }
  50% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; }
  100% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; } }
/* ネイビーSafariのみ */
@keyframes draw_n_safari {
  0% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  10% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  20% {
    stroke-dashoffset: 50;
    stroke-dasharray: 50 50; }
  40% {
    stroke-dashoffset: 100;
    stroke-dasharray: 50 50; }
  50% {
    stroke-dashoffset: 100;
    stroke-dasharray: 0 100; }
  100% {
    stroke-dashoffset: 100;
    stroke-dasharray: 0 100; } }
/* シアン共通 */
@keyframes draw_c {
  0% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; }
  20% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50; }
  40% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  100% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; } }
/* シアンSafariのみ */
@keyframes draw_c_safari {
  0% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  10% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  20% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50 50; }
  40% {
    stroke-dashoffset: -50;
    stroke-dasharray: 50 50; }
  50% {
    stroke-dashoffset: -100;
    stroke-dasharray: 0 100; }
  100% {
    stroke-dashoffset: -100;
    stroke-dasharray: 0 100; } }
/* グリーン・バイオレット ------------------------------------------- */
/* グリーン共通 */
@keyframes draw_g {
  0% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  40% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  80% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50; }
  90% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; }
  100% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; } }
/* グリーンSafariのみ */
@keyframes draw_g_safari {
  0% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  40% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  50% {
    stroke-dashoffset: 50;
    stroke-dasharray: 50 50; }
  80% {
    stroke-dashoffset: 100;
    stroke-dasharray: 50 50; }
  90% {
    stroke-dashoffset: 100;
    stroke-dasharray: 0 100; }
  100% {
    stroke-dashoffset: 100;
    stroke-dasharray: 0 100; } }
/* バイオレット共通 */
@keyframes draw_v {
  0% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; }
  40% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; }
  55% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50; }
  80% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  100% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; } }
/* バイオレットSafariのみ */
@keyframes draw_v_safari {
  0% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  40% {
    stroke-dashoffset: 0;
    stroke-dasharray: 0 100; }
  50% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50 50; }
  70% {
    stroke-dashoffset: -50;
    stroke-dasharray: 50 50; }
  80% {
    stroke-dashoffset: -100;
    stroke-dasharray: 0 100; }
  100% {
    stroke-dashoffset: -100;
    stroke-dasharray: 0 100; } }
/* イエロー個別 ------------------------------------------- */
/* イエロー共通 */
@keyframes draw_y {
  0% {
    stroke-dashoffset: 100;
    stroke-dasharray: 100; }
  25% {
    stroke-dashoffset: 0;
    stroke-dasharray: 50; }
  50% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; }
  100% {
    stroke-dashoffset: -100;
    stroke-dasharray: 100; } }
/* イエローSafariのみ */
@keyframes draw_y_safari {
  0% {
    stroke-dashoffset: 0;
    stroke-dasharray: 40 60; }
  50% {
    stroke-dashoffset: -100;
    stroke-dasharray: 40 60; }
  100% {
    stroke-dashoffset: -100;
    stroke-dasharray: 40 60; } }
/* ================= 矢印左右動き ============================================================ */
@-webkit-keyframes ani_rl {
  0% {
    background-position: right 1.25em top 50%; }
  40% {
    background-position: right 1em top 50%; }
  80% {
    background-position: right 1.25em top 50%; }
  100% {
    background-position: right 1.25em top 50%; } }
@-moz-keyframes ani_rl {
  0% {
    background-position: right 1.25em top 50%; }
  40% {
    background-position: right 1em top 50%; }
  80% {
    background-position: right 1.25em top 50%; }
  100% {
    background-position: right 1.25em top 50%; } }
@-o-keyframes ani_rl {
  0% {
    background-position: right 1.25em top 50%; }
  40% {
    background-position: right 1em top 50%; }
  80% {
    background-position: right 1.25em top 50%; }
  100% {
    background-position: right 1.25em top 50%; } }
@keyframes ani_rl {
  0% {
    background-position: right 1.25em top 50%; }
  40% {
    background-position: right 1em top 50%; }
  80% {
    background-position: right 1.25em top 50%; }
  100% {
    background-position: right 1.25em top 50%; } }
@keyframes ani_rl2 {
  0% {
    background-position: left 50% top 50%; }
  40% {
    background-position: left 60% top 50%; }
  80% {
    background-position: left 50% top 50%; }
  100% {
    background-position: left 50% top 50%; } }
/* ================= 矢印上下動き ============================================================ */
@-webkit-keyframes ani_tb {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  40% {
    -webkit-transform: translate(0, 0.25em);
    transform: translate(0, 0.25em); }
  80% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }
@-moz-keyframes ani_tb {
  0% {
    -moz-transform: translate(0, 0);
    transform: translate(0, 0); }
  40% {
    -moz-transform: translate(0, 0.25em);
    transform: translate(0, 0.25em); }
  80% {
    -moz-transform: translate(0, 0);
    transform: translate(0, 0); }
  100% {
    -moz-transform: translate(0, 0);
    transform: translate(0, 0); } }
@-o-keyframes ani_tb {
  0% {
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  40% {
    -o-transform: translate(0, 0.25em);
    transform: translate(0, 0.25em); }
  80% {
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  100% {
    -o-transform: translate(0, 0);
    transform: translate(0, 0); } }
@keyframes ani_tb {
  0% {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  40% {
    -webkit-transform: translate(0, 0.25em);
    -moz-transform: translate(0, 0.25em);
    -o-transform: translate(0, 0.25em);
    transform: translate(0, 0.25em); }
  80% {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); } }
/* ================= 回転テキスト ============================================================ */
@keyframes rt_anm {
  0% {
    transform: rotate(0deg); }
  50% {
    transform: rotate(-180deg); }
  100% {
    transform: rotate(-360deg); } }
@-moz-keyframes rt_anm {
  0% {
    -moz-transform: rotate(0deg); }
  50% {
    -moz-transform: rotate(-180deg); }
  100% {
    -moz-transform: rotate(-360deg); } }
@-webkit-keyframes rt_anm {
  0% {
    -webkit-transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(-180deg); }
  100% {
    -webkit-transform: rotate(-360deg); } }
@-o-keyframes rt_anm {
  0% {
    -o-transform: rotate(0deg); }
  50% {
    -o-transform: rotate(-180deg); }
  100% {
    -o-transform: rotate(-360deg); } }
@-ms-keyframes rt_anm {
  0% {
    -ms-transform: rotate(0deg); }
  50% {
    -ms-transform: rotate(-180deg); }
  100% {
    -ms-transform: rotate(-360deg); } }
/* ================= 右から左に流れ続けるアニメーション ============================================================ */
@-webkit-keyframes flowani1 {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%); }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }
@-moz-keyframes flowani1 {
  0% {
    -moz-transform: translateX(100%);
    transform: translateX(100%); }
  to {
    -moz-transform: translateX(-100%);
    transform: translateX(-100%); } }
@-o-keyframes flowani1 {
  0% {
    -o-transform: translateX(100%);
    transform: translateX(100%); }
  to {
    -o-transform: translateX(-100%);
    transform: translateX(-100%); } }
@keyframes flowani1 {
  0% {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%); }
  to {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%); } }
@-webkit-keyframes flowani2 {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%); } }
@-moz-keyframes flowani2 {
  0% {
    -moz-transform: translateX(0);
    transform: translateX(0); }
  to {
    -moz-transform: translateX(-200%);
    transform: translateX(-200%); } }
@-o-keyframes flowani2 {
  0% {
    -o-transform: translateX(0);
    transform: translateX(0); }
  to {
    -o-transform: translateX(-200%);
    transform: translateX(-200%); } }
@keyframes flowani2 {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(-200%);
    -moz-transform: translateX(-200%);
    -o-transform: translateX(-200%);
    transform: translateX(-200%); } }
/* ================= カルーセル用上下に流れるアニメーション ============================================================ */
/* -------------------------- 上へ流れるアニメーション ------------------------------------------- */
@keyframes flowUp1 {
  0% {
    transform: translateY(300%); }
  100% {
    transform: translateY(-300%); } }
@keyframes flowUp2 {
  0% {
    transform: translateY(0%); }
  100% {
    transform: translateY(-600%); } }
/* -------------------------- 下へ流れるアニメーション ------------------------------------------- */
@keyframes flowDown1 {
  0% {
    transform: translateY(-300%); }
  100% {
    transform: translateY(300%); } }
@keyframes flowDown2 {
  0% {
    transform: translateY(-600%); }
  100% {
    transform: translateY(0%); } }
/* ================= カルーセル用右から左へ流れるアニメーション ============================================================ */
@keyframes flowleft1 {
  0% {
    transform: translateX(600%); }
  100% {
    transform: translateX(-600%); } }
@keyframes flowleft2 {
  0% {
    transform: translateX(0%); }
  100% {
    transform: translateX(-1200%); } }
/* ================= 不透明度変化1回のみ ============================================================ */
@keyframes opa1s {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
/* 欧文フォント */
.eg {
  font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-weight: normal;
  font-variation-settings: "wght" 700; }

/* 日本語フォント */
.jp {
  font-family: source-han-sans-jp-variable, '游ゴシック', '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 (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_ttl {
  font-size: 1em;
  font-weight: normal;
  font-variation-settings: "wght" 700;
  line-height: 1em; }
  @media screen and (max-width: 768px) {
    .sec_ttl {
      font-size: 1.2em; } }

.ttl_box {
  color: #090a37; }
  .ttl_box .sec_ttl {
    /* 大きな英語見出し */ }
    .ttl_box .sec_ttl + .eg {
      font-size: 9em;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      line-height: 1em; }
      @media screen and (max-width: 768px) {
        .ttl_box .sec_ttl + .eg {
          font-size: 10em; } }
      @media screen and (max-width: 480px) {
        .ttl_box .sec_ttl + .eg {
          font-size: 9em; } }

/* 段落 */
p {
  padding-bottom: 2em; }
  p + .btn {
    margin-top: 1.5em; }

/* セクションヘッダー */
.sec_header {
  padding-bottom: 2.5em; }
  @media screen and (min-width: 481px) {
    .sec_header {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; } }
  @media screen and (min-width: 481px) {
    .sec_header .ttl_box .sec_ttl {
      padding-bottom: 0.8em; } }
  @media screen and (min-width: 481px) {
    .sec_header .ttl_box .sec_ttl + .eg {
      padding-right: 0.2em; } }
  .sec_header p.eg {
    font-size: 1em;
    font-weight: normal;
    font-variation-settings: "wght" 400;
    line-height: 1em;
    padding-top: 2.3em;
    padding-bottom: 0;
    -webkit-transition-delay: 0.5s;
    -moz-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s; }
    @media screen and (max-width: 768px) {
      .sec_header p.eg {
        padding-top: 3.5em;
        font-size: 1.2em;
        margin-top: -1em; } }
    @media screen and (max-width: 480px) {
      .sec_header p.eg {
        padding-top: 0; } }
  .sec_header .btn {
    margin-top: 0.75em;
    -webkit-transition-delay: 0.7s;
    -moz-transition-delay: 0.7s;
    -o-transition-delay: 0.7s;
    transition-delay: 0.7s; }

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

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

.imgbox {
  line-height: 0; }

.rd {
  border-radius: 0.5em;
  overflow: clip; }

/* =======================================================================================================================
　　　　　　　　　背景SVG
======================================================================================================================= */
#bg_main {
  /* -------------------------- 共通 ------------------------------------------- */
  /* -------------------------- 幅 ------------------------------------------- */
  /* -------------------------- 個別カラー・動き ------------------------------------------- */ }
  #bg_main .main_bg_line {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 100; }
  #bg_main #navy,
  #bg_main #cyan,
  #bg_main #green {
    stroke-width: 10em; }
@media screen and (max-width: 1350px) and (min-width: 481px) {
  #bg_main #navy,
  #bg_main #cyan,
  #bg_main #green {
    stroke-width: 20em; } }

  #bg_main #violet,
  #bg_main #yellow {
    stroke-width: 7.5em; }
@media screen and (max-width: 1350px) and (min-width: 481px) {
  #bg_main #violet,
  #bg_main #yellow {
    stroke-width: 15em; } }

  #bg_main #navy {
    stroke: #1d2087;
    -moz-animation-name: draw_n;
    -moz-animation-duration: 9s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: draw_n;
    -ms-animation-duration: 9s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: draw_n;
    -o-animation-duration: 9s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: infinite;
    -webkit-animation-name: draw_n;
    -webkit-animation-duration: 9s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-name: draw_n;
    animation-duration: 9s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }
    @media screen and (max-width: 480px) {
      #bg_main #navy {
        -webkit-transform: scale(0.8);
        -moz-transform: scale(0.8);
        -ms-transform: scale(0.8);
        -o-transform: scale(0.8);
        transform: scale(0.8);
        -webkit-transform: translate(10%, -10%);
        -moz-transform: translate(10%, -10%);
        -ms-transform: translate(10%, -10%);
        -o-transform: translate(10%, -10%);
        transform: translate(10%, -10%); } }
  #bg_main #cyan {
    stroke: #00b7ed;
    -moz-animation-name: draw_c;
    -moz-animation-duration: 9s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: draw_c;
    -ms-animation-duration: 9s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: draw_c;
    -o-animation-duration: 9s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: infinite;
    -webkit-animation-name: draw_c;
    -webkit-animation-duration: 9s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-name: draw_c;
    animation-duration: 9s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }
    @media screen and (max-width: 480px) {
      #bg_main #cyan {
        -webkit-transform: scale(0.8);
        -moz-transform: scale(0.8);
        -ms-transform: scale(0.8);
        -o-transform: scale(0.8);
        transform: scale(0.8);
        -webkit-transform: translate(0, 10%);
        -moz-transform: translate(0, 10%);
        -ms-transform: translate(0, 10%);
        -o-transform: translate(0, 10%);
        transform: translate(0, 10%); } }
  #bg_main #green {
    stroke: #1cd3b0;
    -moz-animation-name: draw_g;
    -moz-animation-duration: 9s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: draw_g;
    -ms-animation-duration: 9s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: draw_g;
    -o-animation-duration: 9s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: infinite;
    -webkit-animation-name: draw_g;
    -webkit-animation-duration: 9s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-name: draw_g;
    animation-duration: 9s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }
  #bg_main #violet {
    stroke: #ad7bef;
    -moz-animation-name: draw_v;
    -moz-animation-duration: 9s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: draw_v;
    -ms-animation-duration: 9s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: draw_v;
    -o-animation-duration: 9s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: infinite;
    -webkit-animation-name: draw_v;
    -webkit-animation-duration: 9s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-name: draw_v;
    animation-duration: 9s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }
  #bg_main #yellow {
    stroke: #fff927;
    -moz-animation-name: draw_y;
    -moz-animation-duration: 6s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: draw_y;
    -ms-animation-duration: 6s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: draw_y;
    -o-animation-duration: 6s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: infinite;
    -webkit-animation-name: draw_y;
    -webkit-animation-duration: 6s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-name: draw_y;
    animation-duration: 6s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }
    @media screen and (max-width: 480px) {
      #bg_main #yellow {
        -webkit-transform: translate(10%, -10%);
        -moz-transform: translate(10%, -10%);
        -ms-transform: translate(10%, -10%);
        -o-transform: translate(10%, -10%);
        transform: translate(10%, -10%); } }

/* ================= Safari専用のスタイル ============================================================ */
/* Safari専用のスタイル */
@supports (-webkit-touch-callout: none) {
  #navy {
    animation: draw_n_safari 9s linear infinite forwards !important; }

  #cyan {
    animation: draw_c_safari 9s linear infinite forwards !important; }

  #green {
    animation: draw_g_safari 9s linear infinite forwards !important; }

  #violet {
    animation: draw_v_safari 9s linear infinite forwards !important; }

  #yellow {
    animation: draw_y_safari 6s linear infinite forwards !important; } }
/* ================= 逆角丸 ============================================================ */
/* -------------------------- 左上 ------------------------------------------- */
.cn_lt {
  width: 2em;
  height: 2em;
  display: block;
  overflow: hidden; }
  .cn_lt::before {
    content: "";
    display: block;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; }
  .cn_lt::before {
    border-top: #fff solid 0.5em;
    border-left: #fff solid 0.5em;
    border-top-left-radius: 1.5em;
    -webkit-transform: translate(-0.4em, -0.4em);
    -moz-transform: translate(-0.4em, -0.4em);
    -ms-transform: translate(-0.4em, -0.4em);
    -o-transform: translate(-0.4em, -0.4em);
    transform: translate(-0.4em, -0.4em); }

/* -------------------------- 左下 ------------------------------------------- */
.cn_lb {
  width: 2em;
  height: 2em;
  display: block;
  overflow: hidden; }
  .cn_lb::before {
    content: "";
    display: block;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; }
  .cn_lb::before {
    border-left: #fff solid 0.5em;
    border-bottom: #fff solid 0.5em;
    border-bottom-left-radius: 1.5em;
    -webkit-transform: translate(-0.5em, 0.4em);
    -moz-transform: translate(-0.5em, 0.4em);
    -ms-transform: translate(-0.5em, 0.4em);
    -o-transform: translate(-0.5em, 0.4em);
    transform: translate(-0.5em, 0.4em); }

/* -------------------------- 右上 ------------------------------------------- */
.cn_rt {
  width: 2em;
  height: 2em;
  display: block;
  overflow: hidden; }
  .cn_rt::before {
    content: "";
    display: block;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; }
  .cn_rt::before {
    border-top: #fff solid 0.5em;
    border-right: #fff solid 0.5em;
    border-top-right-radius: 1.5em;
    -webkit-transform: translate(0.4em, -0.4em);
    -moz-transform: translate(0.4em, -0.4em);
    -ms-transform: translate(0.4em, -0.4em);
    -o-transform: translate(0.4em, -0.4em);
    transform: translate(0.4em, -0.4em); }

/* -------------------------- 右下 ------------------------------------------- */
.cn_rb {
  width: 2em;
  height: 2em;
  display: block;
  overflow: hidden; }
  .cn_rb::before {
    content: "";
    display: block;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; }
  .cn_rb::before {
    border-right: #fff solid 0.5em;
    border-bottom: #fff solid 0.5em;
    border-bottom-right-radius: 1.5em;
    -webkit-transform: translate(0.5em, 0.4em);
    -moz-transform: translate(0.5em, 0.4em);
    -ms-transform: translate(0.5em, 0.4em);
    -o-transform: translate(0.5em, 0.4em);
    transform: translate(0.5em, 0.4em); }

/* リンク */
a {
  text-decoration: none;
  color: #1460d1;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  a img {
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  a:hover {
    color: #00b7ed; }
    a:hover img {
      opacity: 0.7;
      filter: alpha(opacity=70); }

/* ボタン */
.btn a,
.btn .btn_ctt {
  display: inline-block;
  height: 3.5em;
  width: auto;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1em 5.75em 1em 4.5em;
  line-height: 1.5em;
  color: #090a37;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* 矢印 */
  /* マウスオーバー */ }
  @media screen and (max-width: 768px) {
    .btn a,
    .btn .btn_ctt {
      padding-right: 0; } }
  .btn a::before,
  .btn .btn_ctt::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    bottom: 0;
    margin: auto;
    border-radius: 1.75em;
    width: 3.5em;
    background: #090a37 url("/images/ya_w.svg") no-repeat right 1.25em top 50%/1em auto;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-animation-name: ani_rl;
    -moz-animation-duration: 0.5s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: ani_rl;
    -ms-animation-duration: 0.5s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: ani_rl;
    -o-animation-duration: 0.5s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: infinite;
    -webkit-animation-name: ani_rl;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-name: ani_rl;
    animation-duration: 0.5s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; }
  .btn a span,
  .btn .btn_ctt span {
    width: auto;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 2;
    /* 欧文テキスト */
    /* 日本語テキスト */ }
    .btn a span.eg,
    .btn .btn_ctt span.eg {
      font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      font-size: 1.5em;
      font-weight: normal;
      font-variation-settings: "wght" 500;
      top: 0.05em; }
  @media screen and (min-width: 769px) {
    .btn a:hover,
    .btn .btn_ctt:hover {
      color: #fff; }
      .btn a:hover::before,
      .btn .btn_ctt:hover::before {
        width: 100%;
        background-color: #1460d1; } }
.btn.btn_w a,
.btn.btn_w .btn_ctt {
  color: #fff;
  /* 矢印 */
  /* マウスオーバー */ }
  .btn.btn_w a::before,
  .btn.btn_w .btn_ctt::before {
    background-color: #fff;
    background-image: url("/images/ya.svg"); }
  @media screen and (min-width: 769px) {
    .btn.btn_w a:hover,
    .btn.btn_w .btn_ctt:hover {
      color: #090a37; }
      .btn.btn_w a:hover::before,
      .btn.btn_w .btn_ctt:hover::before {
        background-color: #00b7ed; } }

/* ================= 新着記事 ============================================================ */
.post_list {
  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;
  margin-top: -2.6666666667%;
  margin-top: -5em; }
  .post_list > li {
    position: relative;
    width: 23%;
    margin-right: 2.6666666667%;
    margin-top: 2.6666666667%; }
    .post_list > li:nth-child(4n) {
      margin-right: 0; }
  @media screen and (max-width: 768px) {
    .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 {
        position: relative;
        width: 48%;
        margin-right: 4%;
        margin-top: 4%; }
        .post_list > li:nth-child(2n) {
          margin-right: 0; } }
  @media screen and (max-width: 480px) {
    .post_list {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: -5em; }
      .post_list > li {
        position: relative;
        width: 100%;
        margin-right: 0;
        margin-top: 5em; } }
  .post_list li {
    position: relative;
    margin-top: 5em; }
    .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; }
    .post_list li a {
      /* 日付 */
      /* サムネイル */
      /* テキスト ------------------------------------------- */
      /* マウスオーバー ------------------------------------------- */ }
      .post_list li a .date {
        font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        font-size: 1.2em;
        font-weight: normal;
        font-variation-settings: "wght" 500;
        line-height: 1em;
        text-align: right;
        position: absolute;
        top: -1em;
        left: auto;
        right: 0.5em;
        bottom: auto; }
        @media screen and (max-width: 1350px) {
          .post_list li a .date {
            font-size: 2em;
            right: 0.25em; } }
      .post_list li a .thumb {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        aspect-ratio: 100 / 62.5;
        border-radius: 0.5em;
        overflow: hidden; }
        .post_list li a .thumb img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%; }
      .post_list li a .txtbox {
        padding-top: 1em;
        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;
        /* タイトル */
        /* 要約 */ }
        .post_list li a .txtbox .post_ttl {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-size: 0.8em;
          font-weight: normal;
          font-variation-settings: "wght" 700;
          line-height: 1.1em;
          width: 100%;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          -o-text-overflow: ellipsis;
          /* Opera9,10対応 */ }
          @media screen and (max-width: 1350px) {
            .post_list li a .txtbox .post_ttl {
              font-size: 1.1em; } }
        .post_list li a .txtbox .post_excerpt {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          margin-top: 1em;
          font-size: 0.7em;
          font-weight: normal;
          font-variation-settings: "wght" 400;
          line-height: 1.5em;
          overflow: hidden;
          display: -webkit-box;
          text-overflow: ellipsis;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          /* ブラウザがサポートしていない場合のフェールセーフ */
          max-height: 3em; }
          @media screen and (max-width: 1350px) {
            .post_list li a .txtbox .post_excerpt {
              font-size: 1em; } }
      .post_list li a:hover {
        /* サムネイル */
        /* テキスト */ }
        .post_list li a:hover .thumb img {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: scale(1.1);
          -moz-transform: scale(1.1);
          -ms-transform: scale(1.1);
          -o-transform: scale(1.1);
          transform: scale(1.1); }
        .post_list li a:hover .txtbox {
          color: #1460d1; }

/* ================= スタッフ一覧 ============================================================ */
.staff_list {
  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; }
  @media screen and (min-width: 769px) {
    .staff_list {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: -2%; }
      .staff_list > li {
        position: relative;
        width: 32%;
        margin-right: 2%;
        margin-top: 2%; }
        .staff_list > li:nth-child(3n) {
          margin-right: 0; } }
@media screen and (max-width: 768px) and (min-width: 481px) {
  .staff_list {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -4%; }
    .staff_list > li {
      position: relative;
      width: 48%;
      margin-right: 4%;
      margin-top: 4%; }
      .staff_list > li:nth-child(2n) {
        margin-right: 0; } }

  @media screen and (max-width: 480px) {
    .staff_list {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: -2em; }
      .staff_list > li {
        position: relative;
        width: 100%;
        margin-right: 0;
        margin-top: 2em; } }
  .staff_list > li .nolink,
  .staff_list > li a {
    display: block;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    color: #000;
    border-radius: 0.5em;
    overflow: hidden;
    z-index: 1;
    /* サムネイル ------------------------------------------- */
    /* テキスト ------------------------------------------- */
    /* ボタン（リンクがある場合） ------------------------------------------- */ }
    .staff_list > li .nolink .thumb,
    .staff_list > li a .thumb {
      aspect-ratio: 5/4;
      overflow: hidden;
      z-index: 1; }
      .staff_list > li .nolink .thumb img,
      .staff_list > li a .thumb img {
        object-fit: cover;
        object-position: 50% 50%;
        width: 100%;
        height: 100%; }
    .staff_list > li .nolink .txtbox,
    .staff_list > li a .txtbox {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 2em;
      /* スタッフ名 */
      /* 仕事 */
      /* キャッチコピー */
      /* 事業部 */ }
      .staff_list > li .nolink .txtbox .staff_name,
      .staff_list > li a .txtbox .staff_name {
        font-size: 0.9em;
        font-weight: normal;
        font-variation-settings: "wght" 500;
        line-height: 1.1em;
        padding-bottom: 0.4em; }
      .staff_list > li .nolink .txtbox .staff_type,
      .staff_list > li a .txtbox .staff_type {
        font-size: 0.8em;
        font-weight: normal;
        font-variation-settings: "wght" 400;
        line-height: 1.5em;
        opacity: 0.75;
        filter: alpha(opacity=75);
        padding-bottom: 1em; }
      .staff_list > li .nolink .txtbox .staff_copy,
      .staff_list > li a .txtbox .staff_copy {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-weight: normal;
        font-variation-settings: "wght" 900;
        line-height: 1.5em;
        padding-bottom: 0;
        overflow: hidden;
        display: -webkit-box;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        /* ブラウザがサポートしていない場合のフェールセーフ */
        max-height: 3em; }
      .staff_list > li .nolink .txtbox .ss_list,
      .staff_list > li a .txtbox .ss_list {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        height: 1.4em;
        line-height: 1.4em;
        margin-top: 0.6em;
        width: 100%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        /* Opera9,10対応 */
        list-style: none inside; }
        .staff_list > li .nolink .txtbox .ss_list .staff_service,
        .staff_list > li a .txtbox .ss_list .staff_service {
          display: inline-block;
          font-size: 0.7em;
          line-height: 1em;
          margin-right: 0.5em;
          padding: 0.5em 1em;
          border-radius: 1em;
          background: #eeeeee;
          vertical-align: top; }
      .staff_list > li .nolink .txtbox:has(+ .btn) .staff_copy,
      .staff_list > li a .txtbox:has(+ .btn) .staff_copy {
        padding-right: 4em; }
        @media screen and (max-width: 768px) {
          .staff_list > li .nolink .txtbox:has(+ .btn) .staff_copy,
          .staff_list > li a .txtbox:has(+ .btn) .staff_copy {
            padding-right: 3em; } }
      .staff_list > li .nolink .txtbox:has(+ .btn) .ss_list,
      .staff_list > li a .txtbox:has(+ .btn) .ss_list {
        padding-right: 6em; }
        @media screen and (max-width: 768px) {
          .staff_list > li .nolink .txtbox:has(+ .btn) .ss_list,
          .staff_list > li a .txtbox:has(+ .btn) .ss_list {
            padding-right: 3em; } }
    .staff_list > li .nolink .btn,
    .staff_list > li a .btn {
      position: absolute;
      top: auto;
      left: auto;
      right: 1em;
      bottom: 1em; }
      @media screen and (max-width: 768px) {
        .staff_list > li .nolink .btn,
        .staff_list > li a .btn {
          bottom: 0.3em; } }
      .staff_list > li .nolink .btn .btn_ctt,
      .staff_list > li a .btn .btn_ctt {
        pointer-events: none;
        padding-left: 0;
        padding-right: 4em;
        /* 矢印 */ }
        @media screen and (max-width: 768px) {
          .staff_list > li .nolink .btn .btn_ctt .eg,
          .staff_list > li a .btn .btn_ctt .eg {
            display: none; } }
        .staff_list > li .nolink .btn .btn_ctt::before,
        .staff_list > li a .btn .btn_ctt::before {
          left: auto;
          right: 0; }
  .staff_list > li a {
    /* -------------------------- マウスオーバー ------------------------------------------- */ }
    .staff_list > li a:hover {
      /* サムネイル ------------------------------------------- */
      /* ボタン ------------------------------------------- */ }
      .staff_list > li a:hover .thumb img {
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
        opacity: 1;
        filter: alpha(opacity=100); }
      .staff_list > li a:hover .btn .btn_ctt {
        color: #1460d1; }
        .staff_list > li a:hover .btn .btn_ctt::before {
          background-color: #1460d1; }

/* -------------------------- 読込遅延 ------------------------------------------- */
body:not(#front-page) .staff_list li:nth-child(1) {
  -webkit-transition-delay: 0.1s;
  -moz-transition-delay: 0.1s;
  -o-transition-delay: 0.1s;
  transition-delay: 0.1s; }
body:not(#front-page) .staff_list li:nth-child(2) {
  -webkit-transition-delay: 0.2s;
  -moz-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s; }
body:not(#front-page) .staff_list li:nth-child(3) {
  -webkit-transition-delay: 0.3s;
  -moz-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s; }
body:not(#front-page) .staff_list li:nth-child(4) {
  -webkit-transition-delay: 0.4s;
  -moz-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s; }
body:not(#front-page) .staff_list li:nth-child(5) {
  -webkit-transition-delay: 0.5s;
  -moz-transition-delay: 0.5s;
  -o-transition-delay: 0.5s;
  transition-delay: 0.5s; }
body:not(#front-page) .staff_list li:nth-child(6) {
  -webkit-transition-delay: 0.6s;
  -moz-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s; }
body:not(#front-page) .staff_list li:nth-child(7) {
  -webkit-transition-delay: 0.7s;
  -moz-transition-delay: 0.7s;
  -o-transition-delay: 0.7s;
  transition-delay: 0.7s; }
body:not(#front-page) .staff_list li:nth-child(8) {
  -webkit-transition-delay: 0.8s;
  -moz-transition-delay: 0.8s;
  -o-transition-delay: 0.8s;
  transition-delay: 0.8s; }
body:not(#front-page) .staff_list li:nth-child(9) {
  -webkit-transition-delay: 0.9s;
  -moz-transition-delay: 0.9s;
  -o-transition-delay: 0.9s;
  transition-delay: 0.9s; }
body:not(#front-page) .staff_list li:nth-child(10) {
  -webkit-transition-delay: 1s;
  -moz-transition-delay: 1s;
  -o-transition-delay: 1s;
  transition-delay: 1s; }
body:not(#front-page) .staff_list li:nth-child(11) {
  -webkit-transition-delay: 1.1s;
  -moz-transition-delay: 1.1s;
  -o-transition-delay: 1.1s;
  transition-delay: 1.1s; }
body:not(#front-page) .staff_list li:nth-child(12) {
  -webkit-transition-delay: 1.2s;
  -moz-transition-delay: 1.2s;
  -o-transition-delay: 1.2s;
  transition-delay: 1.2s; }

* {
  margin: 0;
  padding: 0; }

/* =======================================================================================================================
　　　　　　　　　全体
======================================================================================================================= */
body {
  font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-style: normal;
  font-size: 1vw;
  font-weight: normal;
  font-variation-settings: "wght" 500;
  line-height: 2em;
  letter-spacing: 0;
  background: #f4f4f4;
  color: #000; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 2vw; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 3.5vw; } }
@media screen and (max-width: 480px) and (min-aspect-ratio: 1 / 1) {
  body::before {
    display: block;
    content: "このサイトはスマートフォンを縦向きにしてご覧ください。";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    padding: 3.5em;
    box-sizing: border-box;
    z-index: 9999999;
    background: #1460d1;
    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; } }

/* =======================================================================================================================
　　　　　　　　　レイアウト
======================================================================================================================= */
.sec {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10em 0;
  margin: 0 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;
  -webkit-transition-delay: 1s;
  -moz-transition-delay: 1s;
  -o-transition-delay: 1s;
  transition-delay: 1s; }
  @media screen and (max-width: 480px) {
    .sec {
      padding: 5em 0; } }

.innerbox {
  width: 80vw;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: auto;
  z-index: 1; }
  @media screen and (max-width: 480px) {
    .innerbox {
      width: 75vw; } }

.innerbox2 {
  width: 89vw;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: auto; }
  @media screen and (max-width: 768px) {
    .innerbox2 {
      width: 80vw; } }
  @media screen and (max-width: 480px) {
    .innerbox2 {
      width: 75vw; } }

/* ヘッダー ------------------------------------------- */
#header {
  /* ロゴ */
  /* SNS */ }
  #header .logo {
    position: fixed;
    top: 2em;
    left: 2em;
    right: auto;
    bottom: auto;
    z-index: 99999; }
    @media screen and (max-width: 480px) {
      #header .logo {
        top: 1em;
        left: 1em; } }
  #header .sns {
    position: fixed;
    top: auto;
    left: 1em;
    right: auto;
    bottom: 1em;
    z-index: 99999; }
    @media screen and (max-width: 480px) {
      #header .sns.scroll {
        left: 0.5em;
        bottom: 0.5em; } }

/* 格納メニュー ------------------------------------------- */
/* メニューボタン */
.menu_btn_box {
  position: fixed;
  top: 1.7em;
  left: auto;
  right: 2em;
  bottom: auto;
  z-index: 999999; }
  @media screen and (max-width: 480px) {
    .menu_btn_box {
      top: 1em;
      right: 1em;
      -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; }
      .menu_btn_box:has(.scroll) {
        top: 0.35em; } }

/* 格納領域 */
.hm_menu_wrap {
  z-index: 99999; }

/* -------------------------- メインカラム ------------------------------------------- */
#wrapper {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  overflow: clip;
  /* 白枠 ------------------------------------------- */
  /* フッターコーナー逆角丸 ------------------------------------------- */
  /* スクロール時 ------------------------------------------- */
  /* 背景画像 ------------------------------------------- */ }
  #wrapper::before {
    content: "";
    display: block;
    position: fixed;
    top: -2.5em;
    left: -2.5em;
    right: -2.5em;
    bottom: -2.5em;
    margin: auto;
    pointer-events: none;
    z-index: 99;
    box-sizing: border-box;
    border: #fff solid 5em;
    border-radius: 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;
    -webkit-transition-delay: 0.5s;
    -moz-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s;
    /* ページ上部出現前 */
    -webkit-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -ms-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
    @media screen and (max-width: 480px) {
      #wrapper::before {
        position: fixed;
        top: -1em;
        left: -4em;
        right: -4em;
        bottom: -3em; } }
  #wrapper .footer_cn {
    position: absolute;
    top: auto;
    left: -2.5em;
    right: -2.5em;
    bottom: -2.5em;
    margin: auto;
    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;
    z-index: 99;
    -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.5s;
    -moz-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s;
    -webkit-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -ms-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  #wrapper.scroll {
    /* 白枠 */
    /* セクション */
    /* フッターコーナー逆角丸 */ }
    #wrapper.scroll::before {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1);
      -webkit-transition-delay: 0s;
      -moz-transition-delay: 0s;
      -o-transition-delay: 0s;
      transition-delay: 0s; }
    #wrapper.scroll .sec {
      width: calc( 100% - 5em ); }
      @media screen and (max-width: 480px) {
        #wrapper.scroll .sec {
          width: calc( 100% - 2em ); } }
    #wrapper.scroll .footer_cn {
      left: 2.5em;
      right: 2.5em;
      bottom: 0;
      -webkit-transition: 1s ease;
      -moz-transition: 1s ease;
      -ms-transition: 1s ease;
      -o-transition: 1s ease;
      transition: 1s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      -webkit-transition-delay: 1.5s;
      -moz-transition-delay: 1.5s;
      -o-transition-delay: 1.5s;
      transition-delay: 1.5s;
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1); }
      @media screen and (max-width: 480px) {
        #wrapper.scroll .footer_cn {
          left: 1em;
          right: 1em; } }
  #wrapper .bgbox {
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    width: 100vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100 );
    overflow: hidden;
    z-index: 1; }
    #wrapper .bgbox svg#bg_main {
      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%);
      width: 125vw;
      height: auto; }
      @media screen and (max-aspect-ratio: 100 / 43) {
        #wrapper .bgbox svg#bg_main {
          width: 150vw; } }
      @media screen and (max-aspect-ratio: 1 / 1) {
        #wrapper .bgbox svg#bg_main {
          width: auto;
          height: 150vh;
          height: calc(var(--vh, 1vh) * 150 ); } }

/* 下層ページメインカラム ------------------------------------------- */
body:not(#front-page) {
  background: #1460d1;
  /* フォームページ以外 */ }
  body:not(#front-page) #wrapper {
    background: #1460d1;
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -ms-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    /* ページヘッダー */
    /* セクション */
    /* スクロール時 */ }
    body:not(#front-page) #wrapper #page-header {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin: 0 auto;
      padding: 10em 0 7.5em;
      -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: 768px) {
        body:not(#front-page) #wrapper #page-header {
          padding-bottom: 5em; } }
    body:not(#front-page) #wrapper .sec {
      /* フォームページ電話セクション以外 */ }
      body:not(#front-page) #wrapper .sec:not(.contact_tel) {
        width: calc( 100% - 5em ); }
        @media screen and (max-width: 480px) {
          body:not(#front-page) #wrapper .sec:not(.contact_tel) {
            width: calc( 100% - 2em ); } }
    body:not(#front-page) #wrapper.scroll {
      background: #fff;
      /* ページヘッダー */ }
      body:not(#front-page) #wrapper.scroll #page-header {
        width: calc( 100% - 5em ); }
        @media screen and (max-width: 480px) {
          body:not(#front-page) #wrapper.scroll #page-header {
            width: calc( 100% - 2em ); } }
  body:not(#front-page):not(.page-template-page-form) #wrapper {
    /* ページヘッダー */
    /* スクロール時 */ }
    body:not(#front-page):not(.page-template-page-form) #wrapper #page-header {
      border-bottom-left-radius: 1em;
      border-bottom-right-radius: 1em; }
    body:not(#front-page):not(.page-template-page-form) #wrapper.scroll {
      /* ページヘッダー */ }
      body:not(#front-page):not(.page-template-page-form) #wrapper.scroll #page-header {
        padding-bottom: 5em;
        margin-bottom: 2.5em; }
        @media screen and (max-width: 768px) {
          body:not(#front-page):not(.page-template-page-form) #wrapper.scroll #page-header {
            padding-bottom: 2.5em; } }

/* フッター ------------------------------------------- */
#footer {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 999; }

/* =======================================================================================================================
　　　　　　　　　ヘッダー
======================================================================================================================= */
#header {
  /* -------------------------- ロゴ ------------------------------------------- */
  /* -------------------------- 白背景 ------------------------------------------- */
  /* -------------------------- SNS ------------------------------------------- */ }
  #header .logo {
    font-size: 1em;
    line-height: 0;
    width: 9em;
    /* ロゴ画像 ------------------------------------------- */
    /* 表示アニメーション ------------------------------------------- */
    opacity: 0;
    filter: alpha(opacity=0);
    /* トップページの一番上の位置の時 */
    /* スクロール時 ------------------------------------------- */ }
    #header .logo a {
      display: block;
      width: auto;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      #header .logo 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); }
      #header .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 .logo a img.logo_color {
          position: absolute;
          top: 0;
          left: 0;
          right: auto;
          bottom: auto;
          opacity: 0;
          filter: alpha(opacity=0); }
        #header .logo a img.logo_w {
          opacity: 1;
          filter: alpha(opacity=100); }
    #front-page #header .logo.top {
      -webkit-transition-delay: 3s;
      -moz-transition-delay: 3s;
      -o-transition-delay: 3s;
      transition-delay: 3s; }
    #header .logo.lazyloaded {
      opacity: 1;
      filter: alpha(opacity=100); }
    #header .logo.scroll {
      -webkit-transition-delay: 1s;
      -moz-transition-delay: 1s;
      -o-transition-delay: 1s;
      transition-delay: 1s; }
      #header .logo.scroll a img {
        /* カラーロゴ表示 */
        /* 白ロゴ非表示 */ }
        #header .logo.scroll a img.logo_color {
          opacity: 1;
          filter: alpha(opacity=100); }
        #header .logo.scroll a img.logo_w {
          opacity: 0;
          filter: alpha(opacity=0); }
  #header .wbg_lt {
    display: block;
    background: #fff;
    -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;
    z-index: 999;
    /* 逆角丸（共通） */
    width: 13em;
    height: 6.65em;
    border-bottom-right-radius: 1em;
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    -webkit-transform: translate(-100%, -100%);
    -moz-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    -o-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
    /* 逆角丸 ------------------------------------------- */
    /* スクロール時 ------------------------------------------- */ }
    @media screen and (max-width: 480px) {
      #header .wbg_lt {
        display: none; } }
    #header .wbg_lt .cn1,
    #header .wbg_lt .cn2 {
      -webkit-transition-delay: 0.5s;
      -moz-transition-delay: 0.5s;
      -o-transition-delay: 0.5s;
      transition-delay: 0.5s; }
    #header .wbg_lt .cn1 {
      -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 .wbg_lt .cn1 {
      position: absolute;
      top: 2.4em;
      left: auto;
      right: -1.9em;
      bottom: auto;
      -webkit-transform: translate(0, 2.15em);
      -moz-transform: translate(0, 2.15em);
      -ms-transform: translate(0, 2.15em);
      -o-transform: translate(0, 2.15em);
      transform: translate(0, 2.15em); }
    #header .wbg_lt .cn2 {
      position: fixed;
      top: auto;
      left: 2.4em;
      right: auto;
      bottom: -1.9em;
      -webkit-transform: translate(8.5em, 0);
      -moz-transform: translate(8.5em, 0);
      -ms-transform: translate(8.5em, 0);
      -o-transform: translate(8.5em, 0);
      transform: translate(8.5em, 0); }
    #header .wbg_lt.scroll {
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0);
      -webkit-transition-delay: 0.8s;
      -moz-transition-delay: 0.8s;
      -o-transition-delay: 0.8s;
      transition-delay: 0.8s;
      /* 逆角丸（共通） */ }
      #header .wbg_lt.scroll .cn1,
      #header .wbg_lt.scroll .cn2 {
        -webkit-transition-delay: 0;
        -moz-transition-delay: 0;
        -o-transition-delay: 0;
        transition-delay: 0;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0); }
  #header .sns {
    /* アイコン ------------------------------------------- */
    /* 表示アニメーション ------------------------------------------- */
    opacity: 0;
    filter: alpha(opacity=0);
    /* トップページの一番上の位置の時 */
    /* スクロール時 ------------------------------------------- */ }
    #header .sns a {
      display: block;
      width: auto;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1.3em;
      line-height: 1em;
      color: #fff;
      -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 .sns 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); }
    #front-page #header .sns.top {
      -webkit-transition-delay: 3s;
      -moz-transition-delay: 3s;
      -o-transition-delay: 3s;
      transition-delay: 3s; }
    #header .sns.lazyloaded {
      opacity: 1;
      filter: alpha(opacity=100); }
    #header .sns.scroll a {
      color: #000;
      opacity: 0.3;
      filter: alpha(opacity=30); }

/* =======================================================================================================================
　　　　　　　　　グローバルナビゲーション
======================================================================================================================= */
/* ================= メニューボタン ============================================================ */
.menu_btn_box {
  /* -------------------------- 表示アニメーション ------------------------------------------- */
  animation: opa1s 1s linear 1;
  animation-fill-mode: backwards;
  /* トップページの場合にはディレイ追加 ------------------------------------------- */
  /* -------------------------- ボタン中身 ------------------------------------------- */ }
  #front-page .menu_btn_box {
    -webkit-animation-delay: 3s;
    -moz-animation-delay: 3s;
    -o-animation-delay: 3s;
    animation-delay: 3s;
    /* スクロール時は解除 */ }
    #front-page .menu_btn_box:has(.scroll) {
      -webkit-animation-delay: 0s;
      -moz-animation-delay: 0s;
      -o-animation-delay: 0s;
      animation-delay: 0s; }
  .menu_btn_box .hm_btn {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    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;
    background: transparent;
    cursor: pointer;
    -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;
    /* -------------------------- ボタンパーツ ------------------------------------------- */
    /* ハンバーガー中心ライン ------------------------------------------- */
    /* 円形 ------------------------------------------- */
    /* -------------------------- テキスト・上下ライン ------------------------------------------- */
    /* -------------------------- スクロール時 ------------------------------------------- */ }
    .menu_btn_box .hm_btn::before, .menu_btn_box .hm_btn:after {
      content: "";
      display: block;
      -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; }
    .menu_btn_box .hm_btn::before {
      width: 0.85em;
      height: 0.15em;
      position: absolute;
      top: 1.56em;
      left: auto;
      right: 1.5em;
      bottom: auto;
      background: #fff;
      border-radius: 0.075em; }
    .menu_btn_box .hm_btn:after {
      width: 3.3em;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      height: 3.3em;
      border: #fff solid 0.2em;
      border-radius: 50%;
      box-sizing: border-box; }
    .menu_btn_box .hm_btn span {
      display: block;
      font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      font-size: 1.5em;
      font-weight: normal;
      font-variation-settings: "wght" 500;
      line-height: 1em;
      text-align: right;
      padding-right: 0.5em;
      color: #fff;
      -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;
      /* CLOSEテキスト ------------------------------------------- */
      /* ハンバーガー上下ライン ------------------------------------------- */
      /* 上ライン */
      /* 下ライン */ }
      .menu_btn_box .hm_btn span.close {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        box-sizing: border-box;
        padding-right: 2.7em;
        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;
        opacity: 0;
        filter: alpha(opacity=0); }
      .menu_btn_box .hm_btn span::before, .menu_btn_box .hm_btn span::after {
        content: "";
        display: block;
        position: absolute;
        right: 0.6em;
        width: 1em;
        height: 0.1em;
        border-radius: 0.05em;
        background: #fff;
        -webkit-transform-origin: 100% 50%;
        -moz-transform-origin: 100% 50%;
        -ms-transform-origin: 100% 50%;
        -o-transform-origin: 100% 50%;
        transform-origin: 100% 50%;
        -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; }
      .menu_btn_box .hm_btn span::before {
        top: 0.8em; }
      .menu_btn_box .hm_btn span::after {
        bottom: 0.8em; }
    .menu_btn_box .hm_btn.scroll {
      /* ハンバーガー中心ライン */
      /* 円形 */
      /* テキスト・上下ライン */ }
      .menu_btn_box .hm_btn.scroll::before {
        background: #000; }
      .menu_btn_box .hm_btn.scroll:after {
        border-color: transparent;
        background: -webkit-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: -moz-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: -o-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: linear-gradient(-135deg, #00b7ed, #1d2087) border-box;
        mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
        mask-clip: padding-box, border-box;
        mask-composite: exclude;
        -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
        -webkit-mask-clip: padding-box, border-box;
        -webkit-mask-composite: destination-out; }
      .menu_btn_box .hm_btn.scroll span {
        color: #000;
        /* ハンバーガー上下ライン */ }
        .menu_btn_box .hm_btn.scroll span::before, .menu_btn_box .hm_btn.scroll span::after {
          background: #000; }

/* -------------------------- 白背景 ------------------------------------------- */
.wbg_rt {
  display: block;
  background: #fff;
  -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;
  z-index: 999;
  /* 逆角丸（共通） */
  width: 9.75em;
  height: 6.65em;
  border-bottom-left-radius: 1em;
  position: fixed;
  top: 0;
  left: auto;
  right: 0;
  bottom: auto;
  -webkit-transform: translate(100%, -100%);
  -moz-transform: translate(100%, -100%);
  -ms-transform: translate(100%, -100%);
  -o-transform: translate(100%, -100%);
  transform: translate(100%, -100%);
  /* 逆角丸 ------------------------------------------- */
  /* スクロール時 ------------------------------------------- */ }
  @media screen and (max-width: 480px) {
    .wbg_rt {
      display: none; } }
  .wbg_rt .cn1,
  .wbg_rt .cn2 {
    -webkit-transition-delay: 0.5s;
    -moz-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s; }
  .wbg_rt .cn1 {
    -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; }
  .wbg_rt .cn1 {
    position: absolute;
    top: 2.4em;
    left: -1.9em;
    right: auto;
    bottom: auto;
    -webkit-transform: translate(0, 2.15em);
    -moz-transform: translate(0, 2.15em);
    -ms-transform: translate(0, 2.15em);
    -o-transform: translate(0, 2.15em);
    transform: translate(0, 2.15em); }
  .wbg_rt .cn2 {
    position: fixed;
    top: auto;
    left: auto;
    right: 2.4em;
    bottom: -1.9em;
    -webkit-transform: translate(-5.25em, 0);
    -moz-transform: translate(-5.25em, 0);
    -ms-transform: translate(-5.25em, 0);
    -o-transform: translate(-5.25em, 0);
    transform: translate(-5.25em, 0); }
  .wbg_rt.scroll {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition-delay: 0.8s;
    -moz-transition-delay: 0.8s;
    -o-transition-delay: 0.8s;
    transition-delay: 0.8s;
    /* 逆角丸（共通） */ }
    .wbg_rt.scroll .cn1,
    .wbg_rt.scroll .cn2 {
      -webkit-transition-delay: 0;
      -moz-transition-delay: 0;
      -o-transition-delay: 0;
      transition-delay: 0;
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0); }

/* ================= 格納領域 ============================================================ */
.hm_menu_wrap {
  width: 100%;
  background: rgba(220, 238, 249, 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;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  /* -------------------------- スクロール時カラー ------------------------------------------- */ }
  .hm_menu_wrap .hm_inner {
    position: absolute;
    top: 6.65em;
    left: 2.5em;
    right: 2.5em;
    bottom: 2.5em;
    border-radius: 1em;
    background: rgba(255, 255, 255, 0.4);
    overflow: hidden;
    -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);
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: 50% 0;
    -moz-transform-origin: 50% 0;
    -ms-transform-origin: 50% 0;
    -o-transform-origin: 50% 0;
    transform-origin: 50% 0;
    /* -------------------------- 中身デザイン ------------------------------------------- */ }
    .hm_menu_wrap .hm_inner .menucontent {
      position: absolute;
      top: 2.5em;
      left: 1em;
      right: 1em;
      bottom: 2.5em;
      margin: auto;
      padding: 0 1.5em;
      box-sizing: border-box;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      /* グローバルナビゲーション ------------------------------------------- */
      /* 下部エリア ------------------------------------------- */ }
      .hm_menu_wrap .hm_inner .menucontent::-webkit-scrollbar {
        inline-size: 0.5em;
        /* 横書き時 縦スクロール (=width) */
        block-size: 0.5em;
        /* 横書き時 横スクロール (=height) */ }
      .hm_menu_wrap .hm_inner .menucontent::-webkit-scrollbar-thumb {
        background: -webkit-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: -moz-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: -o-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: linear-gradient(-135deg, #00b7ed, #1d2087) border-box;
        border-radius: 0.25em; }
      .hm_menu_wrap .hm_inner .menucontent::-webkit-scrollbar-track {
        background-color: rgba(9, 10, 55, 0.2);
        border-radius: 0.25em; }
      .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;
        list-style: none inside;
        -webkit-columns: 4;
        -moz-columns: 4;
        -ms-columns: 4;
        columns: 4;
        color: #090a37;
        overflow: hidden;
        /* 共通 */
        /* 親メニュー */ }
        @media screen and (max-width: 768px) {
          .hm_menu_wrap .hm_inner .menucontent .gnav {
            -webkit-columns: 2;
            -moz-columns: 2;
            -ms-columns: 2;
            columns: 2; } }
        @media screen and (max-width: 480px) {
          .hm_menu_wrap .hm_inner .menucontent .gnav {
            -webkit-columns: 1;
            -moz-columns: 1;
            -ms-columns: 1;
            columns: 1; } }
        .hm_menu_wrap .hm_inner .menucontent .gnav li {
          -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);
          -webkit-transform: translate(-100%, 0);
          -moz-transform: translate(-100%, 0);
          -ms-transform: translate(-100%, 0);
          -o-transform: translate(-100%, 0);
          transform: translate(-100%, 0); }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(1) {
            -webkit-transition-delay: 0.6s;
            -moz-transition-delay: 0.6s;
            -o-transition-delay: 0.6s;
            transition-delay: 0.6s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(2) {
            -webkit-transition-delay: 0.7s;
            -moz-transition-delay: 0.7s;
            -o-transition-delay: 0.7s;
            transition-delay: 0.7s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(3) {
            -webkit-transition-delay: 0.8s;
            -moz-transition-delay: 0.8s;
            -o-transition-delay: 0.8s;
            transition-delay: 0.8s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(4) {
            -webkit-transition-delay: 0.9s;
            -moz-transition-delay: 0.9s;
            -o-transition-delay: 0.9s;
            transition-delay: 0.9s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(5) {
            -webkit-transition-delay: 1s;
            -moz-transition-delay: 1s;
            -o-transition-delay: 1s;
            transition-delay: 1s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(6) {
            -webkit-transition-delay: 1.1s;
            -moz-transition-delay: 1.1s;
            -o-transition-delay: 1.1s;
            transition-delay: 1.1s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(7) {
            -webkit-transition-delay: 1.2s;
            -moz-transition-delay: 1.2s;
            -o-transition-delay: 1.2s;
            transition-delay: 1.2s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(8) {
            -webkit-transition-delay: 1.3s;
            -moz-transition-delay: 1.3s;
            -o-transition-delay: 1.3s;
            transition-delay: 1.3s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(9) {
            -webkit-transition-delay: 1.4s;
            -moz-transition-delay: 1.4s;
            -o-transition-delay: 1.4s;
            transition-delay: 1.4s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(10) {
            -webkit-transition-delay: 1.5s;
            -moz-transition-delay: 1.5s;
            -o-transition-delay: 1.5s;
            transition-delay: 1.5s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(11) {
            -webkit-transition-delay: 1.6s;
            -moz-transition-delay: 1.6s;
            -o-transition-delay: 1.6s;
            transition-delay: 1.6s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(12) {
            -webkit-transition-delay: 1.7s;
            -moz-transition-delay: 1.7s;
            -o-transition-delay: 1.7s;
            transition-delay: 1.7s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(13) {
            -webkit-transition-delay: 1.8s;
            -moz-transition-delay: 1.8s;
            -o-transition-delay: 1.8s;
            transition-delay: 1.8s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(14) {
            -webkit-transition-delay: 1.9s;
            -moz-transition-delay: 1.9s;
            -o-transition-delay: 1.9s;
            transition-delay: 1.9s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(15) {
            -webkit-transition-delay: 2s;
            -moz-transition-delay: 2s;
            -o-transition-delay: 2s;
            transition-delay: 2s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(16) {
            -webkit-transition-delay: 2.1s;
            -moz-transition-delay: 2.1s;
            -o-transition-delay: 2.1s;
            transition-delay: 2.1s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(17) {
            -webkit-transition-delay: 2.2s;
            -moz-transition-delay: 2.2s;
            -o-transition-delay: 2.2s;
            transition-delay: 2.2s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(18) {
            -webkit-transition-delay: 2.3s;
            -moz-transition-delay: 2.3s;
            -o-transition-delay: 2.3s;
            transition-delay: 2.3s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(19) {
            -webkit-transition-delay: 2.4s;
            -moz-transition-delay: 2.4s;
            -o-transition-delay: 2.4s;
            transition-delay: 2.4s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li:nth-child(20) {
            -webkit-transition-delay: 2.5s;
            -moz-transition-delay: 2.5s;
            -o-transition-delay: 2.5s;
            transition-delay: 2.5s; }
          .hm_menu_wrap .hm_inner .menucontent .gnav li a {
            color: #090a37; }
        .hm_menu_wrap .hm_inner .menucontent .gnav > li {
          line-height: 1em;
          padding: 1em 0;
          padding-left: 2.5em;
          /* 子メニュー */ }
          @media screen and (max-width: 480px) {
            .hm_menu_wrap .hm_inner .menucontent .gnav > li {
              padding-left: 0; } }
          .hm_menu_wrap .hm_inner .menucontent .gnav > li > a {
            width: auto;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            display: inline-block;
            font-weight: normal;
            font-variation-settings: "wght" 700;
            /* マウスオーバー矢印 */
            /* 英語 */
            /* マウスオーバー時 */ }
            @media screen and (min-width: 481px) {
              .hm_menu_wrap .hm_inner .menucontent .gnav > li > a::after {
                display: block;
                content: "";
                position: absolute;
                top: 0;
                left: 0;
                right: auto;
                bottom: 0;
                margin: auto;
                border-radius: 1.75em;
                width: 3.5em;
                background: #090a37 url("/images/ya_w.svg") no-repeat right 1.25em top 50%/1em auto;
                -webkit-transition: 0.3s ease;
                -moz-transition: 0.3s ease;
                -ms-transition: 0.3s ease;
                -o-transition: 0.3s ease;
                transition: 0.3s ease;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
                -moz-animation-name: ani_rl;
                -moz-animation-duration: 0.5s;
                -moz-animation-fill-mode: forwards;
                -moz-animation-timing-function: ease-in-out;
                -moz-animation-iteration-count: infinite;
                -ms-animation-name: ani_rl;
                -ms-animation-duration: 0.5s;
                -ms-animation-fill-mode: forwards;
                -ms-animation-timing-function: ease-in-out;
                -ms-animation-iteration-count: infinite;
                -o-animation-name: ani_rl;
                -o-animation-duration: 0.5s;
                -o-animation-fill-mode: forwards;
                -o-animation-timing-function: ease-in-out;
                -o-animation-iteration-count: infinite;
                -webkit-animation-name: ani_rl;
                -webkit-animation-duration: 0.5s;
                -webkit-animation-fill-mode: forwards;
                -webkit-animation-timing-function: ease-in-out;
                -webkit-animation-iteration-count: infinite;
                animation-name: ani_rl;
                animation-duration: 0.5s;
                animation-fill-mode: forwards;
                animation-timing-function: ease-in-out;
                animation-iteration-count: infinite;
                height: 3.5em;
                top: -0.5em;
                left: -3.5em;
                background-color: #1460d1;
                -webkit-transform: scale(0.7);
                -moz-transform: scale(0.7);
                -ms-transform: scale(0.7);
                -o-transform: scale(0.7);
                transform: scale(0.7);
                opacity: 0;
                filter: alpha(opacity=0);
                -webkit-transition: 0.9s ease;
                -moz-transition: 0.9s ease;
                -ms-transition: 0.9s ease;
                -o-transition: 0.9s ease;
                transition: 0.9s ease;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden; } }
            .hm_menu_wrap .hm_inner .menucontent .gnav > li > a::before {
              display: inline-block;
              content: attr(data-eg);
              font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: normal;
              font-variation-settings: "wght" 700;
              font-size: 3em;
              font-weight: normal;
              font-variation-settings: "wght" 700;
              line-height: 0.8em;
              padding-right: 0.2em; }
            .hm_menu_wrap .hm_inner .menucontent .gnav > li > a:hover {
              color: #1460d1;
              -webkit-transform: translate(1em, 0);
              -moz-transform: translate(1em, 0);
              -ms-transform: translate(1em, 0);
              -o-transform: translate(1em, 0);
              transform: translate(1em, 0); }
              .hm_menu_wrap .hm_inner .menucontent .gnav > li > a:hover::after {
                opacity: 1;
                filter: alpha(opacity=100); }
          .hm_menu_wrap .hm_inner .menucontent .gnav > li ul {
            list-style: none inside; }
            .hm_menu_wrap .hm_inner .menucontent .gnav > li ul li {
              display: inline-block;
              font-size: 0.7em;
              line-height: 1em;
              padding-top: 0.5em; }
              .hm_menu_wrap .hm_inner .menucontent .gnav > li ul li::after {
                content: "／";
                padding: 0 0.1em;
                opacity: 0.6;
                filter: alpha(opacity=60); }
              .hm_menu_wrap .hm_inner .menucontent .gnav > li ul li a {
                opacity: 0.6;
                filter: alpha(opacity=60); }
                .hm_menu_wrap .hm_inner .menucontent .gnav > li ul li a:hover {
                  opacity: 1;
                  filter: alpha(opacity=100); }
      .hm_menu_wrap .hm_inner .menucontent .btm_area {
        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;
        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;
        /* 共通 */
        /* ボーダー */
        /* ボタン */
        /* サブナビゲーション */ }
        .hm_menu_wrap .hm_inner .menucontent .btm_area::before,
        .hm_menu_wrap .hm_inner .menucontent .btm_area .btn,
        .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav {
          -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.5s;
          -moz-transition-delay: 0.5s;
          -o-transition-delay: 0.5s;
          transition-delay: 0.5s;
          opacity: 0;
          filter: alpha(opacity=0); }
        .hm_menu_wrap .hm_inner .menucontent .btm_area::before {
          display: block;
          content: "";
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          height: 0.1em;
          background: -webkit-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
          background: -moz-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
          background: -o-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
          background: linear-gradient(-135deg, #00b7ed, #1d2087) border-box;
          margin: 2.5em 0;
          -webkit-transform: scaleX(0);
          -moz-transform: scaleX(0);
          -ms-transform: scaleX(0);
          -o-transform: scaleX(0);
          transform: scaleX(0);
          -webkit-transform-origin: 0 50%;
          -moz-transform-origin: 0 50%;
          -ms-transform-origin: 0 50%;
          -o-transform-origin: 0 50%;
          transform-origin: 0 50%;
          -webkit-transition: 2s ease;
          -moz-transition: 2s ease;
          -ms-transition: 2s ease;
          -o-transition: 2s ease;
          transition: 2s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          -webkit-transition-delay: 1s;
          -moz-transition-delay: 1s;
          -o-transition-delay: 1s;
          transition-delay: 1s; }
        .hm_menu_wrap .hm_inner .menucontent .btm_area .btn {
          -webkit-transform: translate(-100%, 0);
          -moz-transform: translate(-100%, 0);
          -ms-transform: translate(-100%, 0);
          -o-transform: translate(-100%, 0);
          transform: translate(-100%, 0); }
          .hm_menu_wrap .hm_inner .menucontent .btm_area .btn a {
            white-space: nowrap; }
        .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav {
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          list-style: none inside;
          -webkit-transform: translate(100%, 0);
          -moz-transform: translate(100%, 0);
          -ms-transform: translate(100%, 0);
          -o-transform: translate(100%, 0);
          transform: translate(100%, 0); }
          .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav li {
            padding-left: 2em;
            font-size: 0.8em;
            font-weight: normal;
            font-variation-settings: "wght" 400;
            line-height: 1.5em; }
            @media screen and (max-width: 480px) {
              .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav li {
                padding-top: 2em; }
                .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav li:first-child {
                  padding-left: 0; } }
            .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav li a {
              color: #090a37;
              opacity: 0.4;
              filter: alpha(opacity=40); }
              .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav li a:hover {
                opacity: 1;
                filter: alpha(opacity=100); }
              .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav li a i {
                font-size: 1.5em; }
  .hm_menu_wrap.scroll {
    background: rgba(255, 255, 255, 0.7); }
    .hm_menu_wrap.scroll .hm_inner {
      background: rgba(20, 96, 209, 0.2); }

/* ================= 開閉時のアニメーション制御 ============================================================ */
.hm_menu_check {
  display: none;
  /* チェックボックスを隠す */ }
  .hm_menu_check:checked {
    /* -------------------------- ハンバーガーボタン ------------------------------------------- */
    /* -------------------------- 格納領域 ------------------------------------------- */ }
    .hm_menu_check:checked + .menu_btn_box .hm_btn {
      /* ハンバーガー中心ライン */
      /* 円形 */
      /* テキスト・上下ライン */
      /* ハンバーガー中心ライン ------------------------------------------- */
      /* テキスト・上下ライン ------------------------------------------- */ }
      .hm_menu_check:checked + .menu_btn_box .hm_btn::before {
        background: #000; }
      .hm_menu_check:checked + .menu_btn_box .hm_btn:after {
        border-color: transparent;
        background: -webkit-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: -moz-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: -o-linear-gradient(225deg, #00b7ed, #1d2087) border-box;
        background: linear-gradient(-135deg, #00b7ed, #1d2087) border-box;
        mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
        mask-clip: padding-box, border-box;
        mask-composite: exclude;
        -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
        -webkit-mask-clip: padding-box, border-box;
        -webkit-mask-composite: destination-out; }
      .hm_menu_check:checked + .menu_btn_box .hm_btn span {
        color: #000;
        /* ハンバーガー上下ライン */ }
        .hm_menu_check:checked + .menu_btn_box .hm_btn span::before, .hm_menu_check:checked + .menu_btn_box .hm_btn span::after {
          background: #000; }
      .hm_menu_check:checked + .menu_btn_box .hm_btn::before {
        opacity: 0;
        filter: alpha(opacity=0); }
      .hm_menu_check:checked + .menu_btn_box .hm_btn span {
        /* MENUテキスト */
        /* CLOSEテキスト */
        /* ハンバーガー上下ライン ------------------------------------------- */
        /* 上ライン */
        /* 下ライン */ }
        .hm_menu_check:checked + .menu_btn_box .hm_btn span.menu {
          opacity: 0;
          filter: alpha(opacity=0); }
        .hm_menu_check:checked + .menu_btn_box .hm_btn span.close {
          opacity: 1;
          filter: alpha(opacity=100); }
        .hm_menu_check:checked + .menu_btn_box .hm_btn span::before, .hm_menu_check:checked + .menu_btn_box .hm_btn span::after {
          width: 1.1em; }
        .hm_menu_check:checked + .menu_btn_box .hm_btn span::before {
          -webkit-transform: rotate(-27deg);
          -moz-transform: rotate(-27deg);
          -ms-transform: rotate(-27deg);
          -o-transform: rotate(-27deg);
          transform: rotate(-27deg); }
        .hm_menu_check:checked + .menu_btn_box .hm_btn span::after {
          -webkit-transform: rotate(27deg);
          -moz-transform: rotate(27deg);
          -ms-transform: rotate(27deg);
          -o-transform: rotate(27deg);
          transform: rotate(27deg); }
    .hm_menu_check:checked ~ .hm_menu_wrap {
      opacity: 1;
      filter: alpha(opacity=100);
      visibility: visible; }
      .hm_menu_check:checked ~ .hm_menu_wrap .hm_inner {
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-transform: scaleY(1);
        -moz-transform: scaleY(1);
        -ms-transform: scaleY(1);
        -o-transform: scaleY(1);
        transform: scaleY(1); }
        .hm_menu_check:checked ~ .hm_menu_wrap .hm_inner .menucontent .gnav li {
          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); }
        .hm_menu_check:checked ~ .hm_menu_wrap .hm_inner .menucontent .btm_area::before,
        .hm_menu_check:checked ~ .hm_menu_wrap .hm_inner .menucontent .btm_area .btn,
        .hm_menu_check:checked ~ .hm_menu_wrap .hm_inner .menucontent .btm_area .sub_nav {
          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); }
        .hm_menu_check:checked ~ .hm_menu_wrap .hm_inner .menucontent .btm_area::before {
          -webkit-transform: scaleX(1);
          -moz-transform: scaleX(1);
          -ms-transform: scaleX(1);
          -o-transform: scaleX(1);
          transform: scaleX(1); }

/* =======================================================================================================================
　　　　　　　　　フッター
======================================================================================================================= */
#footer {
  padding: 5em 0;
  background: #fff;
  /* ================= フッター中身 ============================================================ */
  /* ================= フッター下部 ============================================================ */ }
  #footer .innerbox {
    /* -------------------------- ロゴマーク ------------------------------------------- */
    /* -------------------------- 会社情報 ------------------------------------------- */ }
    @media screen and (min-width: 481px) {
      #footer .innerbox {
        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;
        -ms-flex-pack: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center; } }
    @media screen and (max-width: 480px) {
      #footer .innerbox {
        text-align: center; } }
    #footer .innerbox .logo {
      line-height: 0;
      width: 10em;
      padding-right: 5em; }
      @media screen and (max-width: 480px) {
        #footer .innerbox .logo {
          padding-right: 0;
          padding-bottom: 2.5em;
          margin: auto; } }
      #footer .innerbox .logo a {
        /* マウスオーバー ------------------------------------------- */ }
        #footer .innerbox .logo a img {
          width: 100%;
          height: auto; }
        #footer .innerbox .logo a:hover img {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: scale(1.1);
          -moz-transform: scale(1.1);
          -ms-transform: scale(1.1);
          -o-transform: scale(1.1);
          transform: scale(1.1); }
    #footer .innerbox .info_box {
      /* 社名 ------------------------------------------- */
      /* 住所 ------------------------------------------- */ }
      #footer .innerbox .info_box h2 {
        font-size: 0.9em;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        line-height: 1em;
        padding-bottom: 0.5em; }
      #footer .innerbox .info_box .ad {
        font-size: 0.8em;
        line-height: 1.5em;
        padding-bottom: 0; }
  #footer .footer_btm {
    /* -------------------------- プライバシーポリシー ------------------------------------------- */
    /* -------------------------- コピーライト ------------------------------------------- */ }
    #footer .footer_btm p {
      padding-bottom: 0;
      position: absolute;
      line-height: 1em; }
    #footer .footer_btm .prv {
      left: 4.3em;
      bottom: 1.9em;
      font-size: 0.7em; }
      @media screen and (max-width: 480px) {
        #footer .footer_btm .prv {
          bottom: 1em; } }
      #footer .footer_btm .prv a {
        color: #000;
        opacity: 0.5;
        filter: alpha(opacity=50); }
        #footer .footer_btm .prv a:hover {
          opacity: 0.75;
          filter: alpha(opacity=75); }
    #footer .footer_btm .copyright {
      right: 1em;
      bottom: 0.8em;
      font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      font-size: 1.2em;
      font-weight: normal;
      font-variation-settings: "wght" 400;
      opacity: 0.3;
      filter: alpha(opacity=30); }
      @media screen and (max-width: 480px) {
        #footer .footer_btm .copyright {
          bottom: 0.4em; } }

/* =======================================================================================================================
　　　　　　　　　トップページメインカラム
======================================================================================================================= */
/* スクロール背景色変化 */
#mainimg, #top_news, #about_us {
  background: #1460d1;
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

body#front-page {
  /* ================= メイン画像 ============================================================ */
  /* ================= お知らせ ============================================================ */
  /* ================= ネクサスイノベーションについて ============================================================ */
  /* ================= 事業紹介 ============================================================ */
  /* ================= ブルー背景 ============================================================ */ }
  body#front-page #mainimg {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100 );
    min-height: 37vw;
    overflow: hidden;
    /* -------------------------- キャッチコピー ------------------------------------------- */
    /* -------------------------- 英語タイポグラフィ ------------------------------------------- */
    /* -------------------------- スクロール ------------------------------------------- */ }
@media screen and (min-width: 769px) and (max-aspect-ratio: 14 / 8) {
  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; } }

    @media screen and (max-width: 768px) {
      body#front-page #mainimg {
        min-height: 50vw; } }
@media screen and (max-width: 768px) and (min-width: 481px) and (max-aspect-ratio: 5 / 4) {
  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; } }

    @media screen and (max-width: 480px) {
      body#front-page #mainimg {
        padding-bottom: 50vh;
        padding-bottom: calc(var(--vh, 1vh) * 50 );
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center; } }
    body#front-page #mainimg .main_copy {
      position: absolute;
      top: 13em;
      left: auto;
      right: 34em;
      bottom: auto;
      padding-top: 4em;
      padding-right: 4em;
      z-index: 10; }
@media screen and (min-width: 769px) and (max-aspect-ratio: 14 / 8) {
  body#front-page #mainimg .main_copy {
    top: 0;
    bottom: 0;
    margin: auto;
    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 #mainimg .main_copy {
          top: 9em;
          right: 20em;
          padding-top: 2em;
          padding-right: 2em; } }
@media screen and (max-width: 768px) and (min-width: 481px) and (max-aspect-ratio: 5 / 4) {
  body#front-page #mainimg .main_copy {
    top: 0;
    bottom: 0;
    margin: auto;
    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) {
        body#front-page #mainimg .main_copy {
          top: 50%;
          right: 7em;
          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) and (max-aspect-ratio: 2 / 3) {
    body#front-page #mainimg .main_copy {
      top: 40%;
      right: 2em; } }

      body#front-page #mainimg .main_copy .txt {
        font-size: 2em;
        font-weight: normal;
        font-variation-settings: "wght" 900;
        line-height: 1.5em;
        color: #fff;
        padding-bottom: 0;
        /* 表示アニメーション ------------------------------------------- */ }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .main_copy .txt {
            font-size: 1.5em; } }
@media screen and (max-width: 480px) and (max-aspect-ratio: 2 / 3) {
  body#front-page #mainimg .main_copy .txt {
    font-size: 2em; } }

        body#front-page #mainimg .main_copy .txt i {
          font-style: normal;
          -webkit-transition: 0.2s ease;
          -moz-transition: 0.2s ease;
          -ms-transition: 0.2s ease;
          -o-transition: 0.2s ease;
          transition: 0.2s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          opacity: 0;
          filter: alpha(opacity=0); }
          body#front-page #mainimg .main_copy .txt i:nth-child(1) {
            -webkit-transition-delay: 0.1s;
            -moz-transition-delay: 0.1s;
            -o-transition-delay: 0.1s;
            transition-delay: 0.1s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(2) {
            -webkit-transition-delay: 0.2s;
            -moz-transition-delay: 0.2s;
            -o-transition-delay: 0.2s;
            transition-delay: 0.2s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(3) {
            -webkit-transition-delay: 0.3s;
            -moz-transition-delay: 0.3s;
            -o-transition-delay: 0.3s;
            transition-delay: 0.3s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(4) {
            -webkit-transition-delay: 0.4s;
            -moz-transition-delay: 0.4s;
            -o-transition-delay: 0.4s;
            transition-delay: 0.4s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(5) {
            -webkit-transition-delay: 0.5s;
            -moz-transition-delay: 0.5s;
            -o-transition-delay: 0.5s;
            transition-delay: 0.5s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(6) {
            -webkit-transition-delay: 0.6s;
            -moz-transition-delay: 0.6s;
            -o-transition-delay: 0.6s;
            transition-delay: 0.6s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(7) {
            -webkit-transition-delay: 0.7s;
            -moz-transition-delay: 0.7s;
            -o-transition-delay: 0.7s;
            transition-delay: 0.7s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(8) {
            -webkit-transition-delay: 0.8s;
            -moz-transition-delay: 0.8s;
            -o-transition-delay: 0.8s;
            transition-delay: 0.8s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(9) {
            -webkit-transition-delay: 0.9s;
            -moz-transition-delay: 0.9s;
            -o-transition-delay: 0.9s;
            transition-delay: 0.9s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(10) {
            -webkit-transition-delay: 1s;
            -moz-transition-delay: 1s;
            -o-transition-delay: 1s;
            transition-delay: 1s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(11) {
            -webkit-transition-delay: 1.1s;
            -moz-transition-delay: 1.1s;
            -o-transition-delay: 1.1s;
            transition-delay: 1.1s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(12) {
            -webkit-transition-delay: 1.2s;
            -moz-transition-delay: 1.2s;
            -o-transition-delay: 1.2s;
            transition-delay: 1.2s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(13) {
            -webkit-transition-delay: 1.3s;
            -moz-transition-delay: 1.3s;
            -o-transition-delay: 1.3s;
            transition-delay: 1.3s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(14) {
            -webkit-transition-delay: 1.4s;
            -moz-transition-delay: 1.4s;
            -o-transition-delay: 1.4s;
            transition-delay: 1.4s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(15) {
            -webkit-transition-delay: 1.5s;
            -moz-transition-delay: 1.5s;
            -o-transition-delay: 1.5s;
            transition-delay: 1.5s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(16) {
            -webkit-transition-delay: 1.6s;
            -moz-transition-delay: 1.6s;
            -o-transition-delay: 1.6s;
            transition-delay: 1.6s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(17) {
            -webkit-transition-delay: 1.7s;
            -moz-transition-delay: 1.7s;
            -o-transition-delay: 1.7s;
            transition-delay: 1.7s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(18) {
            -webkit-transition-delay: 1.8s;
            -moz-transition-delay: 1.8s;
            -o-transition-delay: 1.8s;
            transition-delay: 1.8s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(19) {
            -webkit-transition-delay: 1.9s;
            -moz-transition-delay: 1.9s;
            -o-transition-delay: 1.9s;
            transition-delay: 1.9s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(20) {
            -webkit-transition-delay: 2s;
            -moz-transition-delay: 2s;
            -o-transition-delay: 2s;
            transition-delay: 2s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(21) {
            -webkit-transition-delay: 2.1s;
            -moz-transition-delay: 2.1s;
            -o-transition-delay: 2.1s;
            transition-delay: 2.1s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(22) {
            -webkit-transition-delay: 2.2s;
            -moz-transition-delay: 2.2s;
            -o-transition-delay: 2.2s;
            transition-delay: 2.2s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(23) {
            -webkit-transition-delay: 2.3s;
            -moz-transition-delay: 2.3s;
            -o-transition-delay: 2.3s;
            transition-delay: 2.3s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(24) {
            -webkit-transition-delay: 2.4s;
            -moz-transition-delay: 2.4s;
            -o-transition-delay: 2.4s;
            transition-delay: 2.4s; }
          body#front-page #mainimg .main_copy .txt i:nth-child(25) {
            -webkit-transition-delay: 2.5s;
            -moz-transition-delay: 2.5s;
            -o-transition-delay: 2.5s;
            transition-delay: 2.5s; }
        body#front-page #mainimg .main_copy .txt.lazyloaded i {
          opacity: 1;
          filter: alpha(opacity=100); }
    body#front-page #mainimg .eg_copy {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      color: #090a37;
      text-align: right;
      right: -0.4em;
      padding-right: 34em;
      z-index: 5;
      /* 表示アニメーション ------------------------------------------- */ }
      @media screen and (max-width: 480px) {
        body#front-page #mainimg .eg_copy {
          padding-right: 13.6em; } }
      body#front-page #mainimg .eg_copy .txt1, body#front-page #mainimg .eg_copy .txt2, body#front-page #mainimg .eg_copy .txt3 {
        width: auto;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -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: 2.7s;
        -moz-transition-delay: 2.7s;
        -o-transition-delay: 2.7s;
        transition-delay: 2.7s;
        opacity: 0;
        filter: alpha(opacity=0); }
        @media screen and (min-width: 481px) {
          body#front-page #mainimg .eg_copy .txt1, body#front-page #mainimg .eg_copy .txt2, body#front-page #mainimg .eg_copy .txt3 {
            white-space: nowrap; } }
      body#front-page #mainimg .eg_copy .txt1 {
        font-size: 20em;
        font-weight: normal;
        font-variation-settings: "wght" 800;
        line-height: 0.8em;
        -webkit-transform: translate(100%, 0);
        -moz-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        -o-transform: translate(100%, 0);
        transform: translate(100%, 0); }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .eg_copy .txt1 {
            font-size: 14em; } }
        @media screen and (max-width: 480px) {
          body#front-page #mainimg .eg_copy .txt1 {
            font-size: 6.9em; } }
      body#front-page #mainimg .eg_copy .txt2 {
        font-size: 25em;
        font-weight: normal;
        font-variation-settings: "wght" 900;
        line-height: 0.57em;
        left: 1.358em;
        -webkit-transform: translate(-100%, 0);
        -moz-transform: translate(-100%, 0);
        -ms-transform: translate(-100%, 0);
        -o-transform: translate(-100%, 0);
        transform: translate(-100%, 0); }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .eg_copy .txt2 {
            font-size: 16em;
            left: 1.7em; } }
        @media screen and (max-width: 480px) {
          body#front-page #mainimg .eg_copy .txt2 {
            font-size: 10em;
            left: 1.35em; } }
      body#front-page #mainimg .eg_copy .txt3 {
        font-size: 10em;
        font-weight: normal;
        font-variation-settings: "wght" 300;
        line-height: 0.63em;
        -webkit-transform: translate(100%, 0);
        -moz-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        -o-transform: translate(100%, 0);
        transform: translate(100%, 0); }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .eg_copy .txt3 {
            font-size: 7.5em; } }
        @media screen and (max-width: 480px) {
          body#front-page #mainimg .eg_copy .txt3 {
            margin-top: -1.6em;
            right: -1.5em;
            font-size: 3.5em;
            line-height: 0.8em;
            width: 2em; } }
      body#front-page #mainimg .eg_copy.lazyloaded .txt1, body#front-page #mainimg .eg_copy.lazyloaded .txt2, body#front-page #mainimg .eg_copy.lazyloaded .txt3 {
        -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 .innerbox {
      position: absolute;
      top: auto;
      left: 0;
      right: auto;
      bottom: 5em; }
      @media screen and (min-width: 769px) {
        body#front-page #mainimg .innerbox {
          padding-left: 10em; } }
@media screen and (max-width: 768px) and (min-width: 481px) and (max-aspect-ratio: 5 / 3) {
  body#front-page #mainimg .innerbox {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin: auto;
    right: 0;
    bottom: 1em; } }

      @media screen and (max-width: 480px) {
        body#front-page #mainimg .innerbox {
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: end;
          -webkit-justify-content: flex-end;
          -moz-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          margin: auto;
          width: 100%;
          right: -5em;
          bottom: 1em; } }
      body#front-page #mainimg .innerbox .scroll {
        width: 15em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        height: 15em;
        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;
        -webkit-transition-delay: 3s;
        -moz-transition-delay: 3s;
        -o-transition-delay: 3s;
        transition-delay: 3s;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transform: rotate(720deg) scale(0);
        -moz-transform: rotate(720deg) scale(0);
        -ms-transform: rotate(720deg) scale(0);
        -o-transform: rotate(720deg) scale(0);
        transform: rotate(720deg) scale(0);
        /* 回転テキスト ------------------------------------------- */
        /* 矢印 ------------------------------------------- */
        /* 表示アニメーション ------------------------------------------- */ }
        body#front-page #mainimg .innerbox .scroll::before {
          content: "";
          display: block;
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          margin: auto;
          background: url("/images/scroll.svg") no-repeat 50% 50%/contain;
          opacity: 0.5;
          filter: alpha(opacity=50);
          animation: rt_anm linear 15s;
          animation-iteration-count: infinite;
          transform-origin: 50% 50%;
          -webkit-animation: rt_anm linear 15s;
          -webkit-animation-iteration-count: infinite;
          -webkit-transform-origin: 50% 50%;
          -moz-animation: rt_anm linear 15s;
          -moz-animation-iteration-count: infinite;
          -moz-transform-origin: 50% 50%;
          -o-animation: rt_anm linear 15s;
          -o-animation-iteration-count: infinite;
          -o-transform-origin: 50% 50%;
          -ms-animation: rt_anm linear 15s;
          -ms-animation-iteration-count: infinite;
          -ms-transform-origin: 50% 50%; }
        body#front-page #mainimg .innerbox .scroll .ya {
          width: 1.5em;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          -moz-animation-name: ani_tb;
          -moz-animation-duration: 0.5s;
          -moz-animation-fill-mode: forwards;
          -moz-animation-timing-function: ease-in-out;
          -moz-animation-iteration-count: infinite;
          -ms-animation-name: ani_tb;
          -ms-animation-duration: 0.5s;
          -ms-animation-fill-mode: forwards;
          -ms-animation-timing-function: ease-in-out;
          -ms-animation-iteration-count: infinite;
          -o-animation-name: ani_tb;
          -o-animation-duration: 0.5s;
          -o-animation-fill-mode: forwards;
          -o-animation-timing-function: ease-in-out;
          -o-animation-iteration-count: infinite;
          -webkit-animation-name: ani_tb;
          -webkit-animation-duration: 0.5s;
          -webkit-animation-fill-mode: forwards;
          -webkit-animation-timing-function: ease-in-out;
          -webkit-animation-iteration-count: infinite;
          animation-name: ani_tb;
          animation-duration: 0.5s;
          animation-fill-mode: forwards;
          animation-timing-function: ease-in-out;
          animation-iteration-count: infinite;
          top: -0.5em;
          left: 0.25em; }
          body#front-page #mainimg .innerbox .scroll .ya img {
            width: 100%;
            height: auto;
            -webkit-transform: rotate(90deg);
            -moz-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
            -o-transform: rotate(90deg);
            transform: rotate(90deg); }
        body#front-page #mainimg .innerbox .scroll.lazyloaded {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: rotate(0deg) scale(1);
          -moz-transform: rotate(0deg) scale(1);
          -ms-transform: rotate(0deg) scale(1);
          -o-transform: rotate(0deg) scale(1);
          transform: rotate(0deg) scale(1); }
  body#front-page #top_news .post_list li a {
    /* 日付・テキスト色 */ }
    body#front-page #top_news .post_list li a .date,
    body#front-page #top_news .post_list li a .txtbox {
      color: #fff; }
      body#front-page #top_news .post_list li a .date:hover,
      body#front-page #top_news .post_list li a .txtbox:hover {
        color: #00b7ed; }
  body#front-page #about_us {
    padding-top: 0;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    /* -------------------------- 見出し領域 ------------------------------------------- */
    /* -------------------------- テキスト本文 ------------------------------------------- */
    /* -------------------------- 模式図 ------------------------------------------- */
    /* -------------------------- 写真 ------------------------------------------- */
    /* -------------------------- 表示アニメーション ------------------------------------------- */ }
    @media screen and (max-width: 768px) {
      body#front-page #about_us {
        padding-top: 10em; } }
    @media screen and (max-width: 480px) {
      body#front-page #about_us {
        padding-top: 15em; } }
    body#front-page #about_us .sec_header {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      color: #090a37;
      padding-bottom: 5em;
      /* 日本語見出し ------------------------------------------- */
      /* 英語タイポグラフィ ------------------------------------------- */ }
      @media screen and (min-width: 769px) {
        body#front-page #about_us .sec_header {
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -ms-flex-align: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
          align-items: center;
          -ms-flex-pack: center;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          justify-content: center; } }
      @media screen and (max-width: 480px) {
        body#front-page #about_us .sec_header {
          padding-bottom: 2.5em; } }
      body#front-page #about_us .sec_header h2 {
        position: absolute;
        top: -4.75em;
        left: auto;
        right: 14em;
        bottom: auto;
        width: 20em;
        height: 20em;
        font-size: 1em;
        font-weight: normal;
        font-variation-settings: "wght" 400;
        line-height: 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;
        -ms-flex-pack: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        border-radius: 50%;
        background: #fff;
        -webkit-transform: scale(0);
        -moz-transform: scale(0);
        -ms-transform: scale(0);
        -o-transform: scale(0);
        transform: scale(0);
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transition-delay: 0.2s;
        -moz-transition-delay: 0.2s;
        -o-transition-delay: 0.2s;
        transition-delay: 0.2s; }
        @media screen and (max-width: 768px) {
          body#front-page #about_us .sec_header h2 {
            top: -7em;
            right: 0; } }
        @media screen and (max-width: 480px) {
          body#front-page #about_us .sec_header h2 {
            width: 17em;
            height: 17em;
            top: -14em;
            right: -4em;
            -webkit-transform-origin: 30% 90%;
            -moz-transform-origin: 30% 90%;
            -ms-transform-origin: 30% 90%;
            -o-transform-origin: 30% 90%;
            transform-origin: 30% 90%; } }
      body#front-page #about_us .sec_header .eg {
        line-height: 6.3em;
        -webkit-transform: scaleY(0);
        -moz-transform: scaleY(0);
        -ms-transform: scaleY(0);
        -o-transform: scaleY(0);
        transform: scaleY(0);
        opacity: 0;
        filter: alpha(opacity=0); }
        @media screen and (max-width: 768px) {
          body#front-page #about_us .sec_header .eg {
            font-size: 0.8em; } }
        @media screen and (max-width: 480px) {
          body#front-page #about_us .sec_header .eg {
            font-size: 0.5em; } }
        body#front-page #about_us .sec_header .eg span {
          width: auto;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          vertical-align: text-top; }
        body#front-page #about_us .sec_header .eg .txt1 {
          font-size: 15em;
          font-weight: normal;
          font-variation-settings: "wght" 900; }
        body#front-page #about_us .sec_header .eg .txt2 {
          font-size: 7.5em;
          font-weight: normal;
          font-variation-settings: "wght" 400;
          top: -0.12em; }
        body#front-page #about_us .sec_header .eg .txt3 {
          font-size: 10em;
          font-weight: normal;
          font-variation-settings: "wght" 800; }
    body#front-page #about_us .txtbox {
      padding-bottom: 2.75em;
      color: #fff; }
      @media screen and (max-width: 480px) {
        body#front-page #about_us .txtbox {
          padding-bottom: 0.5em; } }
      body#front-page #about_us .txtbox p {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        max-width: 26em;
        margin: auto;
        font-size: 1.5em;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        line-height: 2em;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-filter: blur(20px);
        filter: blur(20px); }
        body#front-page #about_us .txtbox p:nth-child(1) {
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
        body#front-page #about_us .txtbox p:nth-child(2) {
          -webkit-transition-delay: 0.4s;
          -moz-transition-delay: 0.4s;
          -o-transition-delay: 0.4s;
          transition-delay: 0.4s; }
    body#front-page #about_us .infograph {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      z-index: 10;
      /* サークル ------------------------------------------- */
      /* ロゴマーク ------------------------------------------- */
      /* 表示アニメーション ------------------------------------------- */ }
      @media screen and (min-width: 481px) {
        body#front-page #about_us .infograph {
          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;
          overflow: hidden; } }
      body#front-page #about_us .infograph .ccl {
        width: 25em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        height: 25em;
        border-radius: 50%;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        color: #fff;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transition: 1s ease;
        -moz-transition: 1s ease;
        -ms-transition: 1s ease;
        -o-transition: 1s ease;
        transition: 1s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        /* 左 */
        /* 右 */ }
@media screen and (max-width: 1350px) and (min-width: 769px) {
  body#front-page #about_us .infograph .ccl {
    font-size: 1.5em; } }

        @media screen and (max-width: 480px) {
          body#front-page #about_us .infograph .ccl {
            width: 18em;
            height: 18em; } }
        body#front-page #about_us .infograph .ccl .info_txt {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          z-index: 10;
          /* タイトル */
          /* 説明文 */ }
          body#front-page #about_us .infograph .ccl .info_txt h3 {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 1em;
            font-weight: normal;
            font-variation-settings: "wght" 700;
            line-height: 1em; }
          body#front-page #about_us .infograph .ccl .info_txt p {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 0.8em;
            line-height: 1.5em;
            padding-top: 1em;
            padding-bottom: 0; }
        body#front-page #about_us .infograph .ccl:nth-child(1) {
          text-align: right;
          padding-right: 11em;
          background: -webkit-linear-gradient(45deg, #1d2087 0, #006eba 100%);
          background: -moz-linear-gradient(45deg, #1d2087 0, #006eba 100%);
          background: -o-linear-gradient(45deg, #1d2087 0, #006eba 100%);
          background: linear-gradient(45deg, #1d2087 0, #006eba 100%);
          mix-blend-mode: multiply;
          z-index: 5;
          -webkit-transform: translate(-50vw, 0);
          -moz-transform: translate(-50vw, 0);
          -ms-transform: translate(-50vw, 0);
          -o-transform: translate(-50vw, 0);
          transform: translate(-50vw, 0); }
          @media screen and (max-width: 480px) {
            body#front-page #about_us .infograph .ccl:nth-child(1) {
              text-align: left;
              padding-left: 3em;
              padding-right: 0;
              padding-bottom: 5em;
              margin-left: 1.5em;
              -webkit-transform: translate(-50%, -100%);
              -moz-transform: translate(-50%, -100%);
              -ms-transform: translate(-50%, -100%);
              -o-transform: translate(-50%, -100%);
              transform: translate(-50%, -100%); } }
        body#front-page #about_us .infograph .ccl:nth-child(2) {
          padding-left: 11em;
          margin-left: -10em;
          background: -webkit-linear-gradient(45deg, #006eba 0, #00b7ed 100%);
          background: -moz-linear-gradient(45deg, #006eba 0, #00b7ed 100%);
          background: -o-linear-gradient(45deg, #006eba 0, #00b7ed 100%);
          background: linear-gradient(45deg, #006eba 0, #00b7ed 100%);
          z-index: 2;
          -webkit-transform: translate(50vw, 0);
          -moz-transform: translate(50vw, 0);
          -ms-transform: translate(50vw, 0);
          -o-transform: translate(50vw, 0);
          transform: translate(50vw, 0); }
          @media screen and (max-width: 480px) {
            body#front-page #about_us .infograph .ccl:nth-child(2) {
              text-align: right;
              padding-top: 6em;
              padding-left: 0;
              padding-right: 3em;
              margin-top: -9em;
              margin-left: 6em;
              -webkit-transform: translate(50%, 100%);
              -moz-transform: translate(50%, 100%);
              -ms-transform: translate(50%, 100%);
              -o-transform: translate(50%, 100%);
              transform: translate(50%, 100%); } }
      body#front-page #about_us .infograph .logo {
        width: 7.5em;
        height: 7.5em;
        background: #fff;
        border-radius: 50%;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -ms-flex-pack: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        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%);
        z-index: 10;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transition: 1s ease;
        -moz-transition: 1s ease;
        -ms-transition: 1s ease;
        -o-transition: 1s ease;
        transition: 1s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
        @media screen and (max-width: 1350px) {
          body#front-page #about_us .infograph .logo {
            font-size: 1.5em; } }
        @media screen and (max-width: 480px) {
          body#front-page #about_us .infograph .logo {
            font-size: 0.8em; } }
        body#front-page #about_us .infograph .logo img {
          width: 5em;
          height: auto; }
      body#front-page #about_us .infograph.on.lazyloaded {
        /* サークル */
        /* ロゴマーク */ }
        body#front-page #about_us .infograph.on.lazyloaded .ccl:nth-child(1), body#front-page #about_us .infograph.on.lazyloaded .ccl:nth-child(2) {
          -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 #about_us .infograph.on.lazyloaded .logo {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transition-delay: 1s;
          -moz-transition-delay: 1s;
          -o-transition-delay: 1s;
          transition-delay: 1s; }
    body#front-page #about_us .about_img {
      padding-top: 5em;
      z-index: 2;
      /* 表示アニメーション ------------------------------------------- */ }
      @media screen and (max-width: 480px) {
        body#front-page #about_us .about_img {
          padding-top: 0; } }
      body#front-page #about_us .about_img ul {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        list-style: none inside;
        margin-top: 5em; }
        body#front-page #about_us .about_img ul .imgbox {
          width: 42%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          margin-top: -5em; }
          @media screen and (max-width: 768px) {
            body#front-page #about_us .about_img ul .imgbox {
              width: 50%;
              margin-top: -2.5em; } }
          @media screen and (max-width: 480px) {
            body#front-page #about_us .about_img ul .imgbox {
              width: 70%;
              margin-top: -2em; } }
          body#front-page #about_us .about_img ul .imgbox:nth-child(1) {
            margin-left: 0%; }
            @media screen and (max-width: 768px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(1) {
                margin-left: 0%; } }
            @media screen and (max-width: 480px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(1) {
                margin-left: 0%; } }
            body#front-page #about_us .about_img ul .imgbox:nth-child(1) img {
              -webkit-transition-delay: 0s;
              -moz-transition-delay: 0s;
              -o-transition-delay: 0s;
              transition-delay: 0s; }
          body#front-page #about_us .about_img ul .imgbox:nth-child(2) {
            margin-left: 19.2%; }
            @media screen and (max-width: 768px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(2) {
                margin-left: 16.67%; } }
            @media screen and (max-width: 480px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(2) {
                margin-left: 10%; } }
            body#front-page #about_us .about_img ul .imgbox:nth-child(2) img {
              -webkit-transition-delay: 0.2s;
              -moz-transition-delay: 0.2s;
              -o-transition-delay: 0.2s;
              transition-delay: 0.2s; }
          body#front-page #about_us .about_img ul .imgbox:nth-child(3) {
            margin-left: 38.4%; }
            @media screen and (max-width: 768px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(3) {
                margin-left: 33.34%; } }
            @media screen and (max-width: 480px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(3) {
                margin-left: 20%; } }
            body#front-page #about_us .about_img ul .imgbox:nth-child(3) img {
              -webkit-transition-delay: 0.4s;
              -moz-transition-delay: 0.4s;
              -o-transition-delay: 0.4s;
              transition-delay: 0.4s; }
          body#front-page #about_us .about_img ul .imgbox:nth-child(4) {
            margin-left: 57.6%; }
            @media screen and (max-width: 768px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(4) {
                margin-left: 50.01%; } }
            @media screen and (max-width: 480px) {
              body#front-page #about_us .about_img ul .imgbox:nth-child(4) {
                margin-left: 30%; } }
            body#front-page #about_us .about_img ul .imgbox:nth-child(4) img {
              -webkit-transition-delay: 0.6s;
              -moz-transition-delay: 0.6s;
              -o-transition-delay: 0.6s;
              transition-delay: 0.6s; }
          body#front-page #about_us .about_img ul .imgbox img {
            position: relative;
            display: block;
            width: 100%;
            height: auto;
            border-radius: 0.5em;
            -webkit-transform: translate(-40%, -75%);
            -moz-transform: translate(-40%, -75%);
            -ms-transform: translate(-40%, -75%);
            -o-transform: translate(-40%, -75%);
            transform: translate(-40%, -75%);
            opacity: 0;
            filter: alpha(opacity=0); }
          body#front-page #about_us .about_img ul .imgbox:nth-child(1) img {
            -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 #about_us .about_img.on ul .imgbox img.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 #about_us.on {
      /* 見出し領域 ------------------------------------------- */
      /* テキスト本文 ------------------------------------------- */ }
      body#front-page #about_us.on .sec_header {
        /* 日本語見出し */
        /* 英語タイポグラフィ */ }
        body#front-page #about_us.on .sec_header h2.lazyloaded {
          -webkit-transform: scale(1);
          -moz-transform: scale(1);
          -ms-transform: scale(1);
          -o-transform: scale(1);
          transform: scale(1);
          opacity: 1;
          filter: alpha(opacity=100); }
        body#front-page #about_us.on .sec_header .eg {
          -webkit-transform: scaleY(1);
          -moz-transform: scaleY(1);
          -ms-transform: scaleY(1);
          -o-transform: scaleY(1);
          transform: scaleY(1);
          opacity: 1;
          filter: alpha(opacity=100); }
      body#front-page #about_us.on .txtbox p {
        opacity: 1;
        filter: alpha(opacity=100);
        -webkit-filter: blur(0px);
        filter: blur(0px); }
  body#front-page #top_service {
    margin-top: 2.5em;
    background: rgba(187, 222, 244, 0.75);
    border-radius: 1em;
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    z-index: 10;
    /* -------------------------- ページ下吸着英語 ------------------------------------------- */
    /* 表示アニメーション ------------------------------------------- */
    /* -------------------------- 流れる文字 ------------------------------------------- */
    /* -------------------------- 本文 ------------------------------------------- */
    /* -------------------------- 事業一覧 ------------------------------------------- */ }
    body#front-page #top_service .innerbox {
      z-index: 10; }
    body#front-page #top_service .egtxt {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      top: calc( -100vh + 67.5em );
      top: calc(var(--vh, 1vh) * -100 + 67.5em );
      pointer-events: none;
      /* 吸着コンテンツ（共通） ------------------------------------------- */
      /* 重なりが下に来るアルファベット ------------------------------------------- */
      /* 重なりが上に来るアルファベット ------------------------------------------- */ }
      body#front-page #top_service .egtxt .sticky {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        left: 0;
        right: auto;
        bottom: auto;
        width: 100%;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100 );
        overflow: hidden;
        /* 英語 */ }
        body#front-page #top_service .egtxt .sticky .eg {
          position: absolute;
          top: auto;
          left: auto;
          right: -0.1em;
          bottom: 0;
          font-size: 25em;
          font-weight: normal;
          font-variation-settings: "wght" 900;
          line-height: 0.7em;
          text-align: right;
          color: #1460d1;
          /* 半角スペース */
          /* 非表示アルファベット */
          /* 改行 */ }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .egtxt .sticky .eg {
              font-size: 15em; } }
          body#front-page #top_service .egtxt .sticky .eg i {
            display: inline-block;
            font-style: normal;
            -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);
            -webkit-transform: translate(5em, 0);
            -moz-transform: translate(5em, 0);
            -ms-transform: translate(5em, 0);
            -o-transform: translate(5em, 0);
            transform: translate(5em, 0); }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(1) {
              -webkit-transition-delay: 0.2s;
              -moz-transition-delay: 0.2s;
              -o-transition-delay: 0.2s;
              transition-delay: 0.2s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(2) {
              -webkit-transition-delay: 0.4s;
              -moz-transition-delay: 0.4s;
              -o-transition-delay: 0.4s;
              transition-delay: 0.4s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(3) {
              -webkit-transition-delay: 0.6s;
              -moz-transition-delay: 0.6s;
              -o-transition-delay: 0.6s;
              transition-delay: 0.6s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(4) {
              -webkit-transition-delay: 0.8s;
              -moz-transition-delay: 0.8s;
              -o-transition-delay: 0.8s;
              transition-delay: 0.8s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(5) {
              -webkit-transition-delay: 1s;
              -moz-transition-delay: 1s;
              -o-transition-delay: 1s;
              transition-delay: 1s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(6) {
              -webkit-transition-delay: 1.2s;
              -moz-transition-delay: 1.2s;
              -o-transition-delay: 1.2s;
              transition-delay: 1.2s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(7) {
              -webkit-transition-delay: 1.4s;
              -moz-transition-delay: 1.4s;
              -o-transition-delay: 1.4s;
              transition-delay: 1.4s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(8) {
              -webkit-transition-delay: 1.6s;
              -moz-transition-delay: 1.6s;
              -o-transition-delay: 1.6s;
              transition-delay: 1.6s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(9) {
              -webkit-transition-delay: 1.8s;
              -moz-transition-delay: 1.8s;
              -o-transition-delay: 1.8s;
              transition-delay: 1.8s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(10) {
              -webkit-transition-delay: 2s;
              -moz-transition-delay: 2s;
              -o-transition-delay: 2s;
              transition-delay: 2s; }
            body#front-page #top_service .egtxt .sticky .eg i:nth-child(11) {
              -webkit-transition-delay: 2.2s;
              -moz-transition-delay: 2.2s;
              -o-transition-delay: 2.2s;
              transition-delay: 2.2s; }
          body#front-page #top_service .egtxt .sticky .eg .wsp {
            padding-right: 0.2em; }
          body#front-page #top_service .egtxt .sticky .eg .no {
            opacity: 0;
            filter: alpha(opacity=0); }
          body#front-page #top_service .egtxt .sticky .eg br {
            display: none; }
            @media screen and (max-width: 480px) {
              body#front-page #top_service .egtxt .sticky .eg br {
                display: block; } }
      body#front-page #top_service .egtxt:nth-child(1) {
        z-index: 1; }
      body#front-page #top_service .egtxt:nth-child(2) {
        z-index: 50; }
    body#front-page #top_service.on .egtxt .sticky .eg i {
      -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 #top_service.on .egtxt .sticky .eg i.no {
        opacity: 0;
        filter: alpha(opacity=0); }
    body#front-page #top_service .marquee {
      position: absolute;
      top: 16.5em;
      left: 0;
      right: auto;
      bottom: auto;
      width: 100%;
      overflow: hidden; }
      @media screen and (max-width: 768px) {
        body#front-page #top_service .marquee {
          top: 20em; } }
      @media screen and (max-width: 480px) {
        body#front-page #top_service .marquee {
          top: 19em; } }
      body#front-page #top_service .marquee p, body#front-page #top_service .marquee::after {
        width: 60em;
        font-size: 4em;
        font-weight: normal;
        font-variation-settings: "wght" 900;
        line-height: 1em;
        color: #fff;
        padding-bottom: 0;
        white-space: nowrap; }
      body#front-page #top_service .marquee p {
        display: inline-block;
        -webkit-animation: flowani1 50s -25s linear infinite;
        -moz-animation: flowani1 50s -25s linear infinite;
        -o-animation: flowani1 50s -25s linear infinite;
        animation: flowani1 50s -25s linear infinite; }
      body#front-page #top_service .marquee::after {
        display: block;
        content: "プロダクト＋プランニング＋ロケーション＋コンサルティング＋オペレーション＋クリエイティブ＝お客様に最適なバリューを提供";
        -webkit-animation: flowani2 50s linear infinite;
        -moz-animation: flowani2 50s linear infinite;
        -o-animation: flowani2 50s linear infinite;
        animation: flowani2 50s linear infinite;
        position: absolute;
        top: 0;
        left: 60em;
        right: auto;
        bottom: auto; }
    body#front-page #top_service .txtbox p {
      -webkit-transition-delay: 1s;
      -moz-transition-delay: 1s;
      -o-transition-delay: 1s;
      transition-delay: 1s; }
      body#front-page #top_service .txtbox p span {
        display: block; }
        @media screen and (max-width: 768px) {
          body#front-page #top_service .txtbox p span {
            display: inline; } }
    body#front-page #top_service .txtbox .btn {
      -webkit-transition-delay: 1.5s;
      -moz-transition-delay: 1.5s;
      -o-transition-delay: 1.5s;
      transition-delay: 1.5s; }
    body#front-page #top_service .service_list {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding-top: 4.25em;
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      counter-reset: listnumb;
      perspective: 100em; }
      @media screen and (max-width: 768px) {
        body#front-page #top_service .service_list {
          padding-bottom: 5em; } }
      @media screen and (max-width: 480px) {
        body#front-page #top_service .service_list {
          padding-bottom: 20em; } }
      body#front-page #top_service .service_list li {
        position: relative;
        counter-increment: listnumb;
        perspective: 50em;
        -webkit-transition: 2s ease;
        -moz-transition: 2s ease;
        -ms-transition: 2s ease;
        -o-transition: 2s ease;
        transition: 2s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transform: rotateY(360deg);
        -moz-transform: rotateY(360deg);
        transform: rotateY(360deg);
        -webkit-backface-visibility: visible;
        backface-visibility: visible;
        /* 角丸ボックス（共通） ------------------------------------------- */
        /* 各角丸ボックス ------------------------------------------- */
        /* 表示アニメーション ------------------------------------------- */ }
        @media screen and (max-width: 480px) {
          body#front-page #top_service .service_list li {
            font-size: 0.6em; } }
        body#front-page #top_service .service_list li a {
          display: block;
          width: 27.5em;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          padding: 2.5em;
          border-radius: 0.5em;
          color: #000;
          -webkit-transition: 1s ease;
          -moz-transition: 1s ease;
          -ms-transition: 1s ease;
          -o-transition: 1s ease;
          transition: 1s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          /* 見出しエリア */
          /* 説明テキスト */
          /* 矢印 */
          /* マウスオーバー左半分 */ }
          body#front-page #top_service .service_list li a .sv_hd {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
            /* 番号 */
            /* テキスト */ }
            body#front-page #top_service .service_list li a .sv_hd::before {
              content: counter(listnumb,decimal-leading-zero);
              font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: normal;
              font-variation-settings: "wght" 700;
              font-size: 7.5em;
              font-weight: normal;
              font-variation-settings: "wght" 700;
              line-height: 1em; }
            body#front-page #top_service .service_list li a .sv_hd .svhd_txt {
              padding-top: 0.5em;
              padding-left: 1.5em;
              /* 英語 */
              /* 日本語 */ }
              body#front-page #top_service .service_list li a .sv_hd .svhd_txt .eg {
                font-size: 4em;
                font-weight: normal;
                font-variation-settings: "wght" 700;
                line-height: 1em; }
              body#front-page #top_service .service_list li a .sv_hd .svhd_txt h3 {
                font-size: 1.2em;
                font-weight: normal;
                font-variation-settings: "wght" 900;
                line-height: 1em; }
          body#front-page #top_service .service_list li a p {
            padding-bottom: 3em; }
            @media screen and (max-width: 480px) {
              body#front-page #top_service .service_list li a p {
                line-height: 1.5em; } }
          body#front-page #top_service .service_list li a::after {
            content: "";
            display: block;
            position: absolute;
            top: auto;
            left: auto;
            right: 1em;
            bottom: 1em;
            width: 3.5em;
            height: 3.5em;
            border-radius: 50%;
            background: #fff url("/images/ya.svg") no-repeat 50% 50%/1em auto;
            -moz-animation-name: ani_rl2;
            -moz-animation-duration: 0.5s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: infinite;
            -ms-animation-name: ani_rl2;
            -ms-animation-duration: 0.5s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: infinite;
            -o-animation-name: ani_rl2;
            -o-animation-duration: 0.5s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: infinite;
            -webkit-animation-name: ani_rl2;
            -webkit-animation-duration: 0.5s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: infinite;
            animation-name: ani_rl2;
            animation-duration: 0.5s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: infinite; }
          body#front-page #top_service .service_list li a .hv_left {
            display: block;
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            right: 50%;
            z-index: 2; }
        body#front-page #top_service .service_list li:nth-child(1) a {
          background: #fff927;
          -webkit-transform: rotateZ(-10deg);
          -moz-transform: rotateZ(-10deg);
          -ms-transform: rotateZ(-10deg);
          -o-transform: rotateZ(-10deg);
          transform: rotateZ(-10deg); }
        body#front-page #top_service .service_list li:nth-child(2) {
          margin-top: 15em;
          margin-left: 12.5em; }
          body#front-page #top_service .service_list li:nth-child(2) a {
            background: #009fe8;
            color: #fff;
            -webkit-transform: rotateZ(10deg);
            -moz-transform: rotateZ(10deg);
            -ms-transform: rotateZ(10deg);
            -o-transform: rotateZ(10deg);
            transform: rotateZ(10deg); }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .service_list li:nth-child(2) {
              margin-top: 5em; } }
        body#front-page #top_service .service_list li:nth-child(3) {
          margin-top: -6em;
          margin-left: 5em; }
          body#front-page #top_service .service_list li:nth-child(3) a {
            background: #00b7ed;
            -webkit-transform: rotateZ(5deg);
            -moz-transform: rotateZ(5deg);
            -ms-transform: rotateZ(5deg);
            -o-transform: rotateZ(5deg);
            transform: rotateZ(5deg); }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .service_list li:nth-child(3) {
              margin-top: 3em; }
              body#front-page #top_service .service_list li:nth-child(3) a {
                -webkit-transform: rotateZ(-5deg);
                -moz-transform: rotateZ(-5deg);
                -ms-transform: rotateZ(-5deg);
                -o-transform: rotateZ(-5deg);
                transform: rotateZ(-5deg); } }
          @media screen and (max-width: 480px) {
            body#front-page #top_service .service_list li:nth-child(3) {
              margin-left: -3em; } }
        body#front-page #top_service .service_list li:nth-child(4) {
          margin-top: 4em;
          margin-left: 20em; }
          body#front-page #top_service .service_list li:nth-child(4) a {
            background: #ad7bef;
            color: #fff;
            -webkit-transform: rotateZ(-15deg);
            -moz-transform: rotateZ(-15deg);
            -ms-transform: rotateZ(-15deg);
            -o-transform: rotateZ(-15deg);
            transform: rotateZ(-15deg); }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .service_list li:nth-child(4) {
              margin-top: 5em;
              margin-left: 10em; }
              body#front-page #top_service .service_list li:nth-child(4) a {
                -webkit-transform: rotateZ(15deg);
                -moz-transform: rotateZ(15deg);
                -ms-transform: rotateZ(15deg);
                -o-transform: rotateZ(15deg);
                transform: rotateZ(15deg); } }
          @media screen and (max-width: 480px) {
            body#front-page #top_service .service_list li:nth-child(4) {
              margin-left: 7em; } }
        body#front-page #top_service .service_list li:nth-child(5) {
          margin-top: -6em;
          margin-left: 12.5em; }
          body#front-page #top_service .service_list li:nth-child(5) a {
            background: #1cd3b0;
            -webkit-transform: rotateZ(-10deg);
            -moz-transform: rotateZ(-10deg);
            -ms-transform: rotateZ(-10deg);
            -o-transform: rotateZ(-10deg);
            transform: rotateZ(-10deg); }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .service_list li:nth-child(5) {
              margin-top: 6em;
              margin-left: 0; } }
        body#front-page #top_service .service_list li:nth-child(6) {
          margin-top: 5.5em;
          margin-left: 7.5em;
          margin-bottom: 10em; }
          body#front-page #top_service .service_list li:nth-child(6) a {
            background: #090a37;
            color: #fff;
            -webkit-transform: rotateZ(10deg);
            -moz-transform: rotateZ(10deg);
            -ms-transform: rotateZ(10deg);
            -o-transform: rotateZ(10deg);
            transform: rotateZ(10deg); }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .service_list li:nth-child(6) {
              margin-left: 11em;
              margin-bottom: 0; } }
        body#front-page #top_service .service_list li:nth-child(7) {
          margin-top: -5em; }
          body#front-page #top_service .service_list li:nth-child(7) a {
            background: #1d2087;
            color: #fff;
            -webkit-transform: rotateZ(5deg);
            -moz-transform: rotateZ(5deg);
            -ms-transform: rotateZ(5deg);
            -o-transform: rotateZ(5deg);
            transform: rotateZ(5deg); }
          @media screen and (max-width: 768px) {
            body#front-page #top_service .service_list li:nth-child(7) {
              margin-top: 5em; }
              body#front-page #top_service .service_list li:nth-child(7) a {
                -webkit-transform: rotateZ(-5deg);
                -moz-transform: rotateZ(-5deg);
                -ms-transform: rotateZ(-5deg);
                -o-transform: rotateZ(-5deg);
                transform: rotateZ(-5deg); } }
        body#front-page #top_service .service_list li:nth-child(1) {
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
        body#front-page #top_service .service_list li:nth-child(2) {
          -webkit-transition-delay: 0.4s;
          -moz-transition-delay: 0.4s;
          -o-transition-delay: 0.4s;
          transition-delay: 0.4s; }
        body#front-page #top_service .service_list li:nth-child(3) {
          -webkit-transition-delay: 0.6s;
          -moz-transition-delay: 0.6s;
          -o-transition-delay: 0.6s;
          transition-delay: 0.6s; }
        body#front-page #top_service .service_list li:nth-child(4) {
          -webkit-transition-delay: 0.8s;
          -moz-transition-delay: 0.8s;
          -o-transition-delay: 0.8s;
          transition-delay: 0.8s; }
        body#front-page #top_service .service_list li:nth-child(5) {
          -webkit-transition-delay: 1s;
          -moz-transition-delay: 1s;
          -o-transition-delay: 1s;
          transition-delay: 1s; }
        body#front-page #top_service .service_list li:nth-child(6) {
          -webkit-transition-delay: 1.2s;
          -moz-transition-delay: 1.2s;
          -o-transition-delay: 1.2s;
          transition-delay: 1.2s; }
        body#front-page #top_service .service_list li:nth-child(7) {
          -webkit-transition-delay: 1.4s;
          -moz-transition-delay: 1.4s;
          -o-transition-delay: 1.4s;
          transition-delay: 1.4s; }
        body#front-page #top_service .service_list li.on.lazyloaded {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: rotateY(0deg);
          -moz-transform: rotateY(0deg);
          transform: rotateY(0deg); }
          body#front-page #top_service .service_list li.on.lazyloaded a:hover {
            -webkit-transform: rotateY(30deg);
            -moz-transform: rotateY(30deg);
            transform: rotateY(30deg); }
          body#front-page #top_service .service_list li.on.lazyloaded a:has(.hv_left:hover) {
            -webkit-transform: rotateY(-30deg);
            -moz-transform: rotateY(-30deg);
            transform: rotateY(-30deg); }
  body#front-page .bg_blue {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #1460d1;
    border-radius: 1em;
    margin-top: 2.5em;
    /* ================= アライアンス ============================================================ */
    /* ================= スタッフ紹介 ============================================================ */
    /* 採用情報共通 */
    /* ================= 採用情報 ============================================================ */ }
    body#front-page .bg_blue .sec {
      width: calc( 100% - 5em );
      padding: 5em 0;
      border-radius: 1em; }
      @media screen and (max-width: 480px) {
        body#front-page .bg_blue .sec {
          width: calc( 100% - 2em ); } }
    body#front-page .bg_blue #top_alliance {
      padding-top: 0;
      padding-bottom: 10em;
      /* 表示アニメーション ------------------------------------------- */ }
      @media screen and (max-width: 480px) {
        body#front-page .bg_blue #top_alliance {
          padding-bottom: 5em; } }
      body#front-page .bg_blue #top_alliance .innerbox {
        /* -------------------------- テキスト ------------------------------------------- */
        /* -------------------------- 画像 ------------------------------------------- */ }
        @media screen and (min-width: 769px) {
          body#front-page .bg_blue #top_alliance .innerbox {
            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;
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
            -ms-flex-direction: row-reverse;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: reverse;
            -webkit-flex-direction: row-reverse;
            flex-direction: row-reverse; } }
        body#front-page .bg_blue #top_alliance .innerbox .txtbox {
          width: auto;
          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;
          padding-left: 5em; }
          @media screen and (max-width: 768px) {
            body#front-page .bg_blue #top_alliance .innerbox .txtbox {
              padding-left: 0; } }
          body#front-page .bg_blue #top_alliance .innerbox .txtbox > p {
            color: #fff; }
            body#front-page .bg_blue #top_alliance .innerbox .txtbox > p:nth-child(1) {
              -webkit-transition-delay: 0.2s;
              -moz-transition-delay: 0.2s;
              -o-transition-delay: 0.2s;
              transition-delay: 0.2s; }
            body#front-page .bg_blue #top_alliance .innerbox .txtbox > p:nth-child(2) {
              -webkit-transition-delay: 0.4s;
              -moz-transition-delay: 0.4s;
              -o-transition-delay: 0.4s;
              transition-delay: 0.4s; }
            body#front-page .bg_blue #top_alliance .innerbox .txtbox > p:nth-child(3) {
              -webkit-transition-delay: 0.6s;
              -moz-transition-delay: 0.6s;
              -o-transition-delay: 0.6s;
              transition-delay: 0.6s; }
          body#front-page .bg_blue #top_alliance .innerbox .txtbox .btn {
            -webkit-transition-delay: 0.8s;
            -moz-transition-delay: 0.8s;
            -o-transition-delay: 0.8s;
            transition-delay: 0.8s; }
        body#front-page .bg_blue #top_alliance .innerbox .imgbox {
          width: 32%;
          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;
          -ms-flex-align: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
          align-items: center;
          box-sizing: border-box;
          /* 円形切り抜き ------------------------------------------- */ }
          @media screen and (max-width: 768px) {
            body#front-page .bg_blue #top_alliance .innerbox .imgbox {
              width: 80%;
              margin: auto; } }
          body#front-page .bg_blue #top_alliance .innerbox .imgbox .photo {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            border-radius: 50%;
            overflow: hidden;
            z-index: 1;
            -webkit-transition: 1s ease;
            -moz-transition: 1s ease;
            -ms-transition: 1s ease;
            -o-transition: 1s ease;
            transition: 1s ease;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            -webkit-transform: scale(0);
            -moz-transform: scale(0);
            -ms-transform: scale(0);
            -o-transform: scale(0);
            transform: scale(0);
            /* 画像 */ }
            body#front-page .bg_blue #top_alliance .innerbox .imgbox .photo img {
              width: 100%;
              height: auto; }
      body#front-page .bg_blue #top_alliance.on .imgbox .photo:has(.lazyloaded) {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1); }
    @media screen and (max-width: 768px) {
      body#front-page .bg_blue #top_staff .innerbox,
      body#front-page .bg_blue #recruit .innerbox {
        width: 60vw; } }
    @media screen and (max-width: 480px) {
      body#front-page .bg_blue #top_staff .innerbox,
      body#front-page .bg_blue #recruit .innerbox {
        width: 70vw; } }
    body#front-page .bg_blue #top_staff {
      background: #f4f4f4;
      padding-bottom: 10.5em;
      overflow: hidden;
      z-index: 10;
      /* -------------------------- スタッフ一覧 ------------------------------------------- */ }
      @media screen and (max-width: 768px) {
        body#front-page .bg_blue #top_staff {
          padding-bottom: 1em; } }
      body#front-page .bg_blue #top_staff .innerbox {
        /* -------------------------- セクションヘッダー ------------------------------------------- */
        /* -------------------------- テキスト ------------------------------------------- */ }
        body#front-page .bg_blue #top_staff .innerbox .sec_header {
          display: block;
          padding-bottom: 3.5em; }
          body#front-page .bg_blue #top_staff .innerbox .sec_header p.eg {
            padding-top: 0; }
        body#front-page .bg_blue #top_staff .innerbox .txtbox p {
          -webkit-transition-delay: 0.7s;
          -moz-transition-delay: 0.7s;
          -o-transition-delay: 0.7s;
          transition-delay: 0.7s; }
        body#front-page .bg_blue #top_staff .innerbox .txtbox .btn {
          -webkit-transition-delay: 0.9s;
          -moz-transition-delay: 0.9s;
          -o-transition-delay: 0.9s;
          transition-delay: 0.9s; }
      body#front-page .bg_blue #top_staff .staff_list {
        /* パソコン幅 */
        /* タブレット幅以下 */ }
        @media screen and (min-width: 769px) {
          body#front-page .bg_blue #top_staff .staff_list {
            width: 61%;
            position: absolute;
            top: -50%;
            left: auto;
            right: 17em;
            bottom: auto;
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
            margin-top: -9%;
            -webkit-transform: rotate(20deg);
            -moz-transform: rotate(20deg);
            -ms-transform: rotate(20deg);
            -o-transform: rotate(20deg);
            transform: rotate(20deg);
            z-index: 10; }
            body#front-page .bg_blue #top_staff .staff_list > li {
              position: relative;
              width: 45.5%;
              margin-right: 9%;
              margin-top: 9%; }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-child(2n) {
                margin-right: 0; }
            body#front-page .bg_blue #top_staff .staff_list > li {
              margin-top: 0;
              padding-bottom: 2.5em;
              /* 左列（奇数アイテム） ------------------------------------------- */
              /* 右列（偶数アイテム） ------------------------------------------- */
              /* 表示アニメーション ------------------------------------------- */ }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-child(odd):nth-child(-n+6) {
                animation: flowUp1 40s -20s linear infinite; }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-child(odd):nth-last-child(-n+6) {
                animation: flowUp2 40s linear infinite;
                top: 300%; }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-child(even) {
                animation: flowDown1 40s -20s linear infinite; }
                body#front-page .bg_blue #top_staff .staff_list > li:nth-child(even):nth-child(-n+6) {
                  animation: flowDown1 40s -20s linear infinite; }
                body#front-page .bg_blue #top_staff .staff_list > li:nth-child(even):nth-last-child(-n+6) {
                  animation: flowDown2 40s linear infinite;
                  top: -300%; }
              body#front-page .bg_blue #top_staff .staff_list > li a {
                -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%);
                opacity: 0;
                filter: alpha(opacity=0); }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-child(even) a {
                -webkit-transform: translate(0, -100%);
                -moz-transform: translate(0, -100%);
                -ms-transform: translate(0, -100%);
                -o-transform: translate(0, -100%);
                transform: translate(0, -100%); } }
        @media screen and (max-width: 768px) {
          body#front-page .bg_blue #top_staff .staff_list {
            width: 600%;
            margin-top: 4em; } }
  @media screen and (max-width: 768px) and (max-width: 480px) {
    body#front-page .bg_blue #top_staff .staff_list {
      width: 1000%; } }
        @media screen and (max-width: 768px) {
            body#front-page .bg_blue #top_staff .staff_list > li {
              width: 8.33%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              margin-top: 0;
              margin-right: 0 !important;
              padding-right: 1em;
              /* 表示アニメーション ------------------------------------------- */ }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-child(-n+6) {
                animation: flowleft1 30s -15s linear infinite; }
              body#front-page .bg_blue #top_staff .staff_list > li:nth-last-child(-n+6) {
                animation: flowleft2 30s linear infinite; }
              body#front-page .bg_blue #top_staff .staff_list > li a {
                -webkit-transform: translate(10%, 0);
                -moz-transform: translate(10%, 0);
                -ms-transform: translate(10%, 0);
                -o-transform: translate(10%, 0);
                transform: translate(10%, 0);
                opacity: 0;
                filter: alpha(opacity=0); } }
      body#front-page .bg_blue #top_staff.on .staff_list > li a {
        -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); }
        @media screen and (max-width: 768px) {
          body#front-page .bg_blue #top_staff.on .staff_list > li a {
            -webkit-transition-delay: 1s;
            -moz-transition-delay: 1s;
            -o-transition-delay: 1s;
            transition-delay: 1s; } }
    body#front-page .bg_blue #recruit {
      margin-top: 2.5em;
      background: #1d2087;
      color: #fff;
      overflow: hidden;
      z-index: 10;
      /* -------------------------- 写真 ------------------------------------------- */
      /* 左 ------------------------------------------- */
      /* 右 ------------------------------------------- */
      /* -------------------------- 流れる文字 ------------------------------------------- */
      /* -------------------------- 出現アニメーション ------------------------------------------- */ }
      @media screen and (max-width: 768px) {
        body#front-page .bg_blue #recruit {
          padding: 50em 0 35em 0; } }
      @media screen and (max-width: 480px) {
        body#front-page .bg_blue #recruit {
          padding: 35em 0 25em 0; } }
      body#front-page .bg_blue #recruit .innerbox {
        z-index: 10;
        /* 見出し ------------------------------------------- */
        /* -------------------------- テキスト ------------------------------------------- */
        /* -------------------------- ドア・ボタン・スタッフ ------------------------------------------- */ }
        body#front-page .bg_blue #recruit .innerbox .sec_ttl {
          font-size: 1em;
          text-align: center;
          font-weight: normal;
          padding-bottom: 3em;
          /* 日本語 */
          /* 英語 */ }
          body#front-page .bg_blue #recruit .innerbox .sec_ttl .jp {
            display: block;
            line-height: 1em;
            padding-bottom: 0.25em; }
          body#front-page .bg_blue #recruit .innerbox .sec_ttl .eg {
            display: block;
            font-size: 5em;
            font-weight: normal;
            font-variation-settings: "wght" 700;
            line-height: 1em; }
        body#front-page .bg_blue #recruit .innerbox .txtbox {
          width: 23em;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          margin: 0 auto;
          padding-bottom: 4em;
          /* 段落 ------------------------------------------- */ }
          @media screen and (max-width: 768px) {
            body#front-page .bg_blue #recruit .innerbox .txtbox {
              width: 22em; } }
          @media screen and (max-width: 480px) {
            body#front-page .bg_blue #recruit .innerbox .txtbox {
              width: 100%; } }
          body#front-page .bg_blue #recruit .innerbox .txtbox p {
            font-size: 0.7em;
            font-weight: normal;
            font-variation-settings: "wght" 400;
            line-height: 2em;
            padding-bottom: 0.75em;
            /* 強調 */
            /* キャッチコピー */ }
            body#front-page .bg_blue #recruit .innerbox .txtbox p:nth-child(1) {
              -webkit-transition-delay: 0.2s;
              -moz-transition-delay: 0.2s;
              -o-transition-delay: 0.2s;
              transition-delay: 0.2s; }
            body#front-page .bg_blue #recruit .innerbox .txtbox p:nth-child(2) {
              -webkit-transition-delay: 0.4s;
              -moz-transition-delay: 0.4s;
              -o-transition-delay: 0.4s;
              transition-delay: 0.4s; }
            body#front-page .bg_blue #recruit .innerbox .txtbox p:nth-child(3) {
              -webkit-transition-delay: 0.6s;
              -moz-transition-delay: 0.6s;
              -o-transition-delay: 0.6s;
              transition-delay: 0.6s; }
            body#front-page .bg_blue #recruit .innerbox .txtbox p:nth-child(4) {
              -webkit-transition-delay: 0.8s;
              -moz-transition-delay: 0.8s;
              -o-transition-delay: 0.8s;
              transition-delay: 0.8s; }
            @media screen and (max-width: 1350px) {
              body#front-page .bg_blue #recruit .innerbox .txtbox p {
                font-size: 1em; } }
            body#front-page .bg_blue #recruit .innerbox .txtbox p:has(strong) {
              font-size: 1.15em;
              font-weight: normal;
              font-variation-settings: "wght" 900; }
              body#front-page .bg_blue #recruit .innerbox .txtbox p:has(strong) strong {
                font-weight: normal; }
            body#front-page .bg_blue #recruit .innerbox .txtbox p.rec_copy {
              font-size: 1.5em;
              font-weight: normal;
              font-variation-settings: "wght" 700;
              line-height: 1.5em; }
              @media screen and (max-width: 480px) {
                body#front-page .bg_blue #recruit .innerbox .txtbox p.rec_copy {
                  font-size: 1.4em; } }
        body#front-page .bg_blue #recruit .innerbox .btn_box {
          width: 35em;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          height: 7em;
          perspective: 24em;
          /* 遠近感の設定 */
          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;
          margin: 0 auto;
          /* ドアセット ------------------------------------------- */
          /* ドアの穴 */
          /* ドア */
          /* ボタン ------------------------------------------- */
          /* スタッフ ------------------------------------------- */ }
          @media screen and (max-width: 768px) {
            body#front-page .bg_blue #recruit .innerbox .btn_box {
              width: 100%;
              margin-left: -2em; } }
          body#front-page .bg_blue #recruit .innerbox .btn_box::before, body#front-page .bg_blue #recruit .innerbox .btn_box::after {
            content: "";
            display: block;
            height: 7em;
            width: 4em; }
          body#front-page .bg_blue #recruit .innerbox .btn_box::before {
            position: absolute;
            left: calc( 50% - 2em );
            background: #000; }
            @media screen and (max-width: 768px) {
              body#front-page .bg_blue #recruit .innerbox .btn_box::before {
                left: 50%; } }
          body#front-page .bg_blue #recruit .innerbox .btn_box::after {
            position: relative;
            background: #1d2087;
            -webkit-transform-origin: 100% 50%;
            -moz-transform-origin: 100% 50%;
            -ms-transform-origin: 100% 50%;
            -o-transform-origin: 100% 50%;
            transform-origin: 100% 50%;
            -webkit-transform: rotateY(0deg);
            -moz-transform: rotateY(0deg);
            transform: rotateY(0deg);
            -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-backface-visibility: visible;
            backface-visibility: visible; }
            @media screen and (max-width: 768px) {
              body#front-page .bg_blue #recruit .innerbox .btn_box::after {
                left: 2em; } }
          body#front-page .bg_blue #recruit .innerbox .btn_box .btn {
            position: absolute;
            top: 1.8em;
            left: 50%;
            right: auto;
            bottom: auto;
            padding-left: 4em;
            z-index: 10;
            -webkit-transition-delay: 2.5s;
            -moz-transition-delay: 2.5s;
            -o-transition-delay: 2.5s;
            transition-delay: 2.5s; }
            @media screen and (max-width: 768px) {
              body#front-page .bg_blue #recruit .innerbox .btn_box .btn {
                left: calc( 50% + 0.5em ); } }
            body#front-page .bg_blue #recruit .innerbox .btn_box .btn a {
              white-space: nowrap; }
              body#front-page .bg_blue #recruit .innerbox .btn_box .btn a .sp {
                display: none; }
              @media screen and (max-width: 480px) {
                body#front-page .bg_blue #recruit .innerbox .btn_box .btn a .pc {
                  display: none; }
                body#front-page .bg_blue #recruit .innerbox .btn_box .btn a .sp {
                  display: inline-block; } }
          body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img {
            list-style: none inside; }
            body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li {
              position: absolute;
              /* 各スタッフ */ }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li img {
                width: 100%;
                height: auto;
                -webkit-transition: 0.5s ease;
                -moz-transition: 0.5s ease;
                -ms-transition: 0.5s ease;
                -o-transition: 0.5s ease;
                transition: 0.5s ease;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
                -webkit-transform: rotateY(90deg) translate(-1em, 0);
                -moz-transform: rotateY(90deg) translate(-1em, 0);
                -ms-transform: rotateY(90deg) translate(-1em, 0);
                -o-transform: rotateY(90deg) translate(-1em, 0);
                transform: rotateY(90deg) translate(-1em, 0); }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(1) img {
                -webkit-transition-delay: 1.7s;
                -moz-transition-delay: 1.7s;
                -o-transition-delay: 1.7s;
                transition-delay: 1.7s; }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(2) img {
                -webkit-transition-delay: 1.9s;
                -moz-transition-delay: 1.9s;
                -o-transition-delay: 1.9s;
                transition-delay: 1.9s; }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(3) img {
                -webkit-transition-delay: 2.1s;
                -moz-transition-delay: 2.1s;
                -o-transition-delay: 2.1s;
                transition-delay: 2.1s; }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(4) img {
                -webkit-transition-delay: 2.3s;
                -moz-transition-delay: 2.3s;
                -o-transition-delay: 2.3s;
                transition-delay: 2.3s; }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(5) img {
                -webkit-transition-delay: 2.5s;
                -moz-transition-delay: 2.5s;
                -o-transition-delay: 2.5s;
                transition-delay: 2.5s; }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(1) {
                width: 3.65em;
                top: -10em;
                left: 0; }
                @media screen and (max-width: 480px) {
                  body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(1) {
                    display: none; } }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(2) {
                width: 3.8em;
                top: -4.5em;
                left: 1.5em; }
                @media screen and (max-width: 480px) {
                  body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(2) {
                    display: none; } }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(3) {
                width: 4.25em;
                top: -2em;
                left: 5em; }
                @media screen and (max-width: 480px) {
                  body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(3) {
                    left: 1em; } }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(4) {
                width: 4.1em;
                top: 0.5em;
                left: 9em; }
                @media screen and (max-width: 480px) {
                  body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(4) {
                    left: 5em; } }
              body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(5) {
                width: 4.25em;
                top: 1.5em;
                left: 13.2em; }
                @media screen and (max-width: 480px) {
                  body#front-page .bg_blue #recruit .innerbox .btn_box .staff_img li:nth-child(5) {
                    left: 9em; } }
      body#front-page .bg_blue #recruit .imgbox1,
      body#front-page .bg_blue #recruit .imgbox2 {
        width: 25em;
        list-style: none inside;
        position: absolute;
        z-index: 2; }
        body#front-page .bg_blue #recruit .imgbox1:nth-child(1),
        body#front-page .bg_blue #recruit .imgbox2:nth-child(1) {
          -webkit-transition-delay: 0.2s;
          -moz-transition-delay: 0.2s;
          -o-transition-delay: 0.2s;
          transition-delay: 0.2s; }
        body#front-page .bg_blue #recruit .imgbox1:nth-child(2),
        body#front-page .bg_blue #recruit .imgbox2:nth-child(2) {
          -webkit-transition-delay: 0.4s;
          -moz-transition-delay: 0.4s;
          -o-transition-delay: 0.4s;
          transition-delay: 0.4s; }
        body#front-page .bg_blue #recruit .imgbox1:nth-child(3),
        body#front-page .bg_blue #recruit .imgbox2:nth-child(3) {
          -webkit-transition-delay: 0.6s;
          -moz-transition-delay: 0.6s;
          -o-transition-delay: 0.6s;
          transition-delay: 0.6s; }
        @media screen and (max-width: 480px) {
          body#front-page .bg_blue #recruit .imgbox1,
          body#front-page .bg_blue #recruit .imgbox2 {
            width: 15em; } }
        body#front-page .bg_blue #recruit .imgbox1 .imgbox,
        body#front-page .bg_blue #recruit .imgbox2 .imgbox {
          position: relative;
          padding-bottom: 1em; }
          body#front-page .bg_blue #recruit .imgbox1 .imgbox:last-child,
          body#front-page .bg_blue #recruit .imgbox2 .imgbox:last-child {
            padding-bottom: 0; }
          body#front-page .bg_blue #recruit .imgbox1 .imgbox img,
          body#front-page .bg_blue #recruit .imgbox2 .imgbox img {
            width: 100%;
            height: auto;
            border-radius: 0.5em;
            z-index: 1; }
      body#front-page .bg_blue #recruit .imgbox1 {
        top: 1em;
        left: 1em; }
        body#front-page .bg_blue #recruit .imgbox1 .imgbox:nth-child(1) {
          width: 100%; }
        body#front-page .bg_blue #recruit .imgbox1 .imgbox:nth-child(2) {
          width: 80%; }
        body#front-page .bg_blue #recruit .imgbox1 .imgbox:nth-child(3) {
          width: 60%;
          padding-left: 40%; }
      body#front-page .bg_blue #recruit .imgbox2 {
        right: 1em;
        bottom: 1em; }
        body#front-page .bg_blue #recruit .imgbox2 .imgbox:nth-child(1) {
          width: 44%;
          padding-left: 56%; }
        body#front-page .bg_blue #recruit .imgbox2 .imgbox:nth-child(2) {
          width: 100%; }
      body#front-page .bg_blue #recruit .flow_eg {
        position: absolute;
        top: 0.52em;
        left: 0;
        right: auto;
        bottom: auto;
        font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        font-size: 20em;
        font-weight: normal;
        font-variation-settings: "wght" 900;
        line-height: 1em;
        color: #090a37;
        opacity: 0.6;
        filter: alpha(opacity=60);
        z-index: 1; }
        @media screen and (max-width: 768px) {
          body#front-page .bg_blue #recruit .flow_eg {
            top: 2em; } }
        @media screen and (max-width: 480px) {
          body#front-page .bg_blue #recruit .flow_eg {
            font-size: 15em;
            top: 1.5em; } }
        body#front-page .bg_blue #recruit .flow_eg span, body#front-page .bg_blue #recruit .flow_eg::after {
          display: block;
          width: 10.1em;
          white-space: nowrap; }
        body#front-page .bg_blue #recruit .flow_eg span {
          -webkit-animation: flowani1 50s -25s linear infinite;
          -moz-animation: flowani1 50s -25s linear infinite;
          -o-animation: flowani1 50s -25s linear infinite;
          animation: flowani1 50s -25s linear infinite; }
        body#front-page .bg_blue #recruit .flow_eg::after {
          content: "JOIN US! LET'S AIM FOR THE FUTURE TOGETHER!";
          -webkit-animation: flowani2 50s linear infinite;
          -moz-animation: flowani2 50s linear infinite;
          -o-animation: flowani2 50s linear infinite;
          animation: flowani2 50s linear infinite;
          position: absolute;
          top: 0;
          left: 10.1em;
          right: auto;
          bottom: auto; }
      body#front-page .bg_blue #recruit.on .innerbox {
        /* -------------------------- ドア・ボタン・スタッフ ------------------------------------------- */ }
        body#front-page .bg_blue #recruit.on .innerbox .btn_box {
          /* ドア */
          /* スタッフ ------------------------------------------- */ }
          body#front-page .bg_blue #recruit.on .innerbox .btn_box::after {
            background: #3135b9;
            -webkit-transform: rotateY(125deg);
            -moz-transform: rotateY(125deg);
            transform: rotateY(125deg);
            -webkit-transition-delay: 1s;
            -moz-transition-delay: 1s;
            -o-transition-delay: 1s;
            transition-delay: 1s; }
          body#front-page .bg_blue #recruit.on .innerbox .btn_box .staff_img li img.lazyloaded {
            -webkit-transform: rotateY(0) translate(0, 0);
            -moz-transform: rotateY(0) translate(0, 0);
            -ms-transform: rotateY(0) translate(0, 0);
            -o-transform: rotateY(0) translate(0, 0);
            transform: rotateY(0) translate(0, 0); }

/* ===========================================================================================================
　　　　　　　　　投稿記事一覧
=========================================================================================================== */
#post_archive {
  z-index: 10; }

/* ページナビゲーション（共通） */
.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; }
  .pager p {
    padding-bottom: 0;
    padding-left: 0.5em;
    padding-right: 0.5em; }
  .pager .no-link {
    color: #000;
    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: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.2em; }
    .pager .nth-box .current {
      font-size: 1.2em;
      display: inline-block;
      color: #090a37;
      padding: 0 0.5em; }
    .pager .nth-box .tenten {
      color: #000; }
    .pager .nth-box a {
      display: inline-block;
      padding: 0 0.5em; }

/* ================= 投稿ページ（共通） ============================================================ */
#newspost {
  /* -------------------------- 投稿記事ヘッダー ------------------------------------------- */
  /* -------------------------- ナビゲーション ------------------------------------------- */ }
  #newspost #entry-header {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    @media screen and (max-width: 480px) {
      #newspost #entry-header {
        padding-top: 2.5em; } }
    #newspost #entry-header .innerbox {
      /* 日付 */
      /* 記事タイトル */ }
      #newspost #entry-header .innerbox .date {
        font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        font-size: 2em;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        line-height: 1em;
        padding-bottom: 0.25em;
        color: #090a37;
        -webkit-transition-delay: 2.5s;
        -moz-transition-delay: 2.5s;
        -o-transition-delay: 2.5s;
        transition-delay: 2.5s; }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .date {
            font-size: 1em; } }
        #newspost #entry-header .innerbox .date .year {
          font-weight: normal;
          font-variation-settings: "wght" 400; }
        #newspost #entry-header .innerbox .date .md {
          font-size: 1.5em;
          padding-left: 0.1em; }
      #newspost #entry-header .innerbox .entry_ttl {
        width: auto;
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 1.5em;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        line-height: 1.5em;
        color: #fff;
        border-top: #090a37 solid 0.1em;
        padding-top: 0.25em;
        -webkit-transition-delay: 2.5s;
        -moz-transition-delay: 2.5s;
        -o-transition-delay: 2.5s;
        transition-delay: 2.5s; }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .entry_ttl {
            width: 100%;
            font-size: 1.6em; } }
        @media screen and (max-width: 480px) {
          #newspost #entry-header .innerbox .entry_ttl {
            font-size: 1.4em; } }
  #newspost .nav_sec {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 3.5em;
    padding: 0 0 2.5em;
    margin-top: -3.5em;
    z-index: 20; }
    #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%;
        width: auto;
        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: #00b7ed;
        -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: #1460d1; }
        #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;
          width: auto;
          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: #00b7ed; }
          @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: #1460d1; }
        #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; }

/* ナビを重ねる最後のセクションの余白 */
.single-post .entry-content .sec:last-child {
  padding-bottom: 13.5em; }
  @media screen and (max-width: 480px) {
    .single-post .entry-content .sec:last-child {
      padding-bottom: 8.5em; } }

/* ===========================================================================================================
　　　　　　　　　スタッフ紹介
=========================================================================================================== */
.post-type-archive-our-team,
.tax-staff-service {
  /* ================= ページヘッダー ============================================================ */ }
  .post-type-archive-our-team #page-header .flex,
  .tax-staff-service #page-header .flex {
    /* 横並び解除 */
    flex-wrap: wrap;
    /* -------------------------- サービス一覧ボタン ------------------------------------------- */ }
    .post-type-archive-our-team #page-header .flex::after,
    .tax-staff-service #page-header .flex::after {
      content: "";
      width: 100%; }
    .post-type-archive-our-team #page-header .flex .stfsv_list,
    .tax-staff-service #page-header .flex .stfsv_list {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      order: 1;
      list-style: none inside;
      padding-top: 1.5em;
      -webkit-transition-delay: 2.5s;
      -moz-transition-delay: 2.5s;
      -o-transition-delay: 2.5s;
      transition-delay: 2.5s; }
      .post-type-archive-our-team #page-header .flex .stfsv_list li,
      .tax-staff-service #page-header .flex .stfsv_list li {
        display: inline-block;
        padding-top: 1em;
        padding-right: 1em;
        font-size: 0.8em;
        /* ボタン ------------------------------------------- */ }
        .post-type-archive-our-team #page-header .flex .stfsv_list li:last-child,
        .tax-staff-service #page-header .flex .stfsv_list li:last-child {
          padding-right: 0; }
        @media screen and (max-width: 768px) {
          .post-type-archive-our-team #page-header .flex .stfsv_list li,
          .tax-staff-service #page-header .flex .stfsv_list li {
            font-size: 0.7em; } }
        .post-type-archive-our-team #page-header .flex .stfsv_list li a,
        .tax-staff-service #page-header .flex .stfsv_list li a {
          display: inline-block;
          min-width: 4em;
          padding: 1em 2em;
          line-height: 1em;
          background: #090a37;
          color: #fff;
          border-radius: 1.5em;
          text-align: center;
          /* マウスオーバー */
          /* 今のページの時 */ }
          .post-type-archive-our-team #page-header .flex .stfsv_list li a:hover,
          .tax-staff-service #page-header .flex .stfsv_list li a:hover {
            -webkit-transform: translate(0, 0.2em);
            -moz-transform: translate(0, 0.2em);
            -ms-transform: translate(0, 0.2em);
            -o-transform: translate(0, 0.2em);
            transform: translate(0, 0.2em); }
          .post-type-archive-our-team #page-header .flex .stfsv_list li a.active,
          .tax-staff-service #page-header .flex .stfsv_list li a.active {
            pointer-events: none;
            background: #eeeeee;
            color: #000; }

#newspost #entry-header {
  /* ================= スタッフ情報エリア ============================================================ */ }
  #newspost #entry-header .staff_info {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding-top: 5em;
    /* -------------------------- スタッフ画像 ------------------------------------------- */
    /* -------------------------- テキスト ------------------------------------------- */ }
    @media screen and (max-width: 768px) {
      #newspost #entry-header .staff_info {
        padding-top: 3em; } }
    @media screen and (max-width: 480px) {
      #newspost #entry-header .staff_info {
        padding-top: 0; } }
    #newspost #entry-header .staff_info .staffimg {
      width: 30%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      @media screen and (max-width: 480px) {
        #newspost #entry-header .staff_info .staffimg {
          width: 100%; } }
      #newspost #entry-header .staff_info .staffimg img {
        width: 100%;
        height: auto;
        border-radius: 0.5em;
        z-index: 1;
        -webkit-transition-delay: 2.5s;
        -moz-transition-delay: 2.5s;
        -o-transition-delay: 2.5s;
        transition-delay: 2.5s; }
    #newspost #entry-header .staff_info .txtbox {
      width: auto;
      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;
      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;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-direction: column-reverse;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
      flex-direction: column-reverse;
      padding-left: 5em;
      color: #fff;
      /* キャッチコピー ------------------------------------------- */ }
      @media screen and (max-width: 768px) {
        #newspost #entry-header .staff_info .txtbox {
          padding-left: 2.5em; } }
      @media screen and (max-width: 480px) {
        #newspost #entry-header .staff_info .txtbox {
          width: 100%;
          padding-left: 0;
          padding-top: 1.5em; } }
      #newspost #entry-header .staff_info .txtbox .stinfo_box {
        padding-top: 2em;
        -webkit-transition-delay: 2.5s;
        -moz-transition-delay: 2.5s;
        -o-transition-delay: 2.5s;
        transition-delay: 2.5s;
        /* 仕事・事業部 ------------------------------------------- */
        /* スタッフ名 ------------------------------------------- */ }
        @media screen and (max-width: 480px) {
          #newspost #entry-header .staff_info .txtbox .stinfo_box {
            padding-top: 1em; } }
        #newspost #entry-header .staff_info .txtbox .stinfo_box .type_ss {
          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;
          /* 仕事 */
          /* 事業部 */ }
          #newspost #entry-header .staff_info .txtbox .stinfo_box .type_ss .staff_type {
            line-height: 1.5em;
            padding-bottom: 0.5em;
            padding-right: 1em; }
            @media screen and (max-width: 768px) {
              #newspost #entry-header .staff_info .txtbox .stinfo_box .type_ss .staff_type {
                font-size: 0.8em; } }
          #newspost #entry-header .staff_info .txtbox .stinfo_box .type_ss .ss_list {
            list-style: none inside;
            text-align: right; }
            #newspost #entry-header .staff_info .txtbox .stinfo_box .type_ss .ss_list .staff_service {
              width: auto;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              display: inline-block;
              font-size: 0.8em;
              line-height: 1em;
              margin-left: 0.5em;
              margin-bottom: 0.5em;
              padding: 0.75em 1.5em;
              border-radius: 1.25em;
              background: #eeeeee;
              color: #000; }
              @media screen and (max-width: 768px) {
                #newspost #entry-header .staff_info .txtbox .stinfo_box .type_ss .ss_list .staff_service {
                  padding: 0.5em 1em;
                  font-size: 0.7em;
                  border-radius: 1em; } }
        #newspost #entry-header .staff_info .txtbox .stinfo_box .entry_ttl {
          border-color: #fff;
          border-width: 0.05em; }
          @media screen and (max-width: 768px) {
            #newspost #entry-header .staff_info .txtbox .stinfo_box .entry_ttl {
              font-size: 1em; } }
      #newspost #entry-header .staff_info .txtbox .staff_copy {
        font-size: 2.5em;
        font-weight: normal;
        font-variation-settings: "wght" 900;
        line-height: 1.5em;
        padding-bottom: 0;
        -webkit-transition-delay: 2.5s;
        -moz-transition-delay: 2.5s;
        -o-transition-delay: 2.5s;
        transition-delay: 2.5s; }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .staff_info .txtbox .staff_copy {
            font-size: 1.25em; } }

/* ================= フォーム ============================================================ */
/* ブラウザスタイル解除 */
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;
  margin: 0 auto;
  padding: 5em;
  background: rgba(187, 222, 244, 0.85);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  color: #000;
  border-radius: 0.5em;
  /* 必須項目 */
  /* -------------------------- Contact Form 7 ------------------------------------------- */ }
  @media screen and (max-width: 768px) {
    .formbox {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .formbox {
      padding: 2.5em 1em; } }
  .formbox h3 {
    font-size: 2em;
    line-height: 1.7em;
    padding-bottom: 0.5em; }
  .formbox p {
    padding-bottom: 2em; }
  .formbox .required {
    width: auto;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    font-size: 0.6em;
    font-weight: normal;
    font-variation-settings: "wght" 500;
    line-height: 1em;
    padding: 0.35em 0.8em;
    background: #1460d1;
    color: #fff;
    border-radius: 0.5em;
    top: -0.2em; }
  .formbox .wpcf7-form {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /* 項目名（共通） */
    /* ラベルで挟まれた項目 */
    /* fieldsetで挟まれた項目 */
    /* チェックボックス・ラジオボタン */
    /* 承認確認 */
    /*送信ボタン*/
    /* エラーメッセージ */ }
    .formbox .wpcf7-form .formname {
      width: 13em; }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form .formname {
          width: 100%; } }
    .formbox .wpcf7-form label.formctt {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      /* 項目名 */
      /* フォーム内容 */ }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form label.formctt {
          display: block; } }
      .formbox .wpcf7-form label.formctt .formname {
        line-height: 1.7em;
        padding-top: 0.75em; }
      .formbox .wpcf7-form label.formctt .wpcf7-form-control-wrap {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1; }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form label.formctt .wpcf7-form-control-wrap {
            -webkit-box-flex: 0;
            -webkit-flex: none;
            -moz-box-flex: 0;
            -ms-flex: none;
            flex: none; } }
    .formbox .wpcf7-form fieldset.formctt {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      border: none;
      padding-left: 13em;
      /* 項目名 */
      /* フォーム内容 */
      /* 改行 */ }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form fieldset.formctt {
          padding-left: 0; } }
      .formbox .wpcf7-form fieldset.formctt .formname {
        position: absolute;
        top: 0;
        left: 0;
        right: auto;
        bottom: auto; }
        @media screen and (max-width: 480px) {
          .formbox .wpcf7-form fieldset.formctt .formname {
            position: relative; } }
      .formbox .wpcf7-form fieldset.formctt .wpcf7-form-control-wrap {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .formbox .wpcf7-form fieldset.formctt br {
        display: none; }
    .formbox .wpcf7-form p {
      padding: 0 0 2em 0; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form input[type="date"],
    .formbox .wpcf7-form select,
    .formbox .wpcf7-form textarea {
      font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-size: 1em;
      font-weight: normal;
      font-variation-settings: "wght" 500;
      line-height: 1.7em;
      box-sizing: border-box;
      padding: 0.75em 1.5em;
      border-radius: 0.5em;
      border: none; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form select,
    .formbox .wpcf7-form textarea {
      width: 100% !important; }
    .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item,
    .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
      margin-left: 0;
      margin-right: 1em; }
      .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item label,
      .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item label {
        cursor: pointer;
        font-weight: normal;
        font-variation-settings: "wght" 500; }
        .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item label input,
        .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item label input {
          cursor: pointer; }
    .formbox .wpcf7-form .wpcf7-acceptance label {
      cursor: pointer; }
    .formbox .wpcf7-form .btn_area {
      display: inline-block; }
      .formbox .wpcf7-form .btn_area .btn_box {
        display: inline-block;
        height: 3.5em;
        width: auto;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 1em 5.75em 1em 4.5em;
        line-height: 1.5em;
        color: #090a37;
        -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; }
        @media screen and (max-width: 768px) {
          .formbox .wpcf7-form .btn_area .btn_box {
            padding-right: 0; } }
        .formbox .wpcf7-form .btn_area .btn_box::before {
          display: block;
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          right: auto;
          bottom: 0;
          margin: auto;
          border-radius: 1.75em;
          width: 3.5em;
          background: #090a37 url("/images/ya_w.svg") no-repeat right 1.25em top 50%/1em auto;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          -moz-animation-name: ani_rl;
          -moz-animation-duration: 0.5s;
          -moz-animation-fill-mode: forwards;
          -moz-animation-timing-function: ease-in-out;
          -moz-animation-iteration-count: infinite;
          -ms-animation-name: ani_rl;
          -ms-animation-duration: 0.5s;
          -ms-animation-fill-mode: forwards;
          -ms-animation-timing-function: ease-in-out;
          -ms-animation-iteration-count: infinite;
          -o-animation-name: ani_rl;
          -o-animation-duration: 0.5s;
          -o-animation-fill-mode: forwards;
          -o-animation-timing-function: ease-in-out;
          -o-animation-iteration-count: infinite;
          -webkit-animation-name: ani_rl;
          -webkit-animation-duration: 0.5s;
          -webkit-animation-fill-mode: forwards;
          -webkit-animation-timing-function: ease-in-out;
          -webkit-animation-iteration-count: infinite;
          animation-name: ani_rl;
          animation-duration: 0.5s;
          animation-fill-mode: forwards;
          animation-timing-function: ease-in-out;
          animation-iteration-count: infinite; }
        .formbox .wpcf7-form .btn_area .btn_box span {
          width: auto;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          z-index: 2;
          /* 欧文テキスト */
          /* 日本語テキスト */ }
          .formbox .wpcf7-form .btn_area .btn_box span.eg {
            font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-weight: normal;
            font-variation-settings: "wght" 700;
            font-size: 1.5em;
            font-weight: normal;
            font-variation-settings: "wght" 500;
            top: 0.05em; }
        @media screen and (min-width: 769px) {
          .formbox .wpcf7-form .btn_area .btn_box:hover {
            color: #fff; }
            .formbox .wpcf7-form .btn_area .btn_box:hover::before {
              width: 100%;
              background-color: #1460d1; } }
        .formbox .wpcf7-form .btn_area .btn_box p {
          width: 100%;
          height: 100%; }
      .formbox .wpcf7-form .btn_area:has(input[type="submit"]:disabled) {
        opacity: 0.3;
        filter: alpha(opacity=30);
        cursor: not-allowed; }
        .formbox .wpcf7-form .btn_area:has(input[type="submit"]:disabled) .btn_box {
          pointer-events: none; }
    .formbox .wpcf7-form input[type="submit"] {
      padding: 1em 5.75em 1em 4.5em;
      border: none;
      background: transparent;
      font-size: 1em;
      font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      cursor: pointer; }
      .formbox .wpcf7-form input[type="submit"]:disabled {
        color: #090a37; }
      @media screen and (min-width: 769px) {
        .formbox .wpcf7-form input[type="submit"]:hover {
          color: #fff; } }
    .formbox .wpcf7-form .wpcf7-not-valid-tip {
      display: block;
      width: auto;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      color: #1460d1;
      font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal; }
      .formbox .wpcf7-form .wpcf7-not-valid-tip::before, .formbox .wpcf7-form .wpcf7-not-valid-tip::after {
        display: inline-block; }
      .formbox .wpcf7-form .wpcf7-not-valid-tip::before {
        position: relative;
        content: "\f071";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1;
        z-index: 2;
        color: #1460d1;
        padding-right: 0.2em; }
    .formbox .wpcf7-form .wpcf7-response-output {
      border: none !important;
      padding: 0;
      padding-left: 1em;
      text-indent: -1em;
      color: #1460d1;
      width: auto;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .formbox .wpcf7-form .wpcf7-response-output::before, .formbox .wpcf7-form .wpcf7-response-output::after {
        display: inline-block; }
      .formbox .wpcf7-form .wpcf7-response-output::before {
        position: relative;
        content: "\f071";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1;
        z-index: 2;
        color: #1460d1;
        padding-right: 0.2em; }

/* ================= フォーム確認画面 ============================================================ */
.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;
  /* 入力内容 */
  /* ボタン */ }
  div#wpcf7cpcnf table {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    div#wpcf7cpcnf table tr th,
    div#wpcf7cpcnf table tr td {
      border-bottom: #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 {
      width: 15em;
      font-weight: normal;
      font-variation-settings: "wght" 400;
      text-align: left; }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf table tr th {
          width: 12.5em; } }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf table tr th {
          width: 100%;
          border-bottom: none;
          text-align: left; } }
      @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 table tr td p {
      font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal; }
  div#wpcf7cpcnf .wpcf7cp-btns {
    text-align: center; }
    div#wpcf7cpcnf .wpcf7cp-btns button {
      font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      display: inline-block;
      height: 3.5em;
      width: auto;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 1em 5.75em 1em 4.5em;
      line-height: 1.5em;
      color: #090a37;
      -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;
      /* 矢印 */
      /* マウスオーバー */
      font-size: 1em;
      border: none;
      border-radius: 4em;
      cursor: pointer;
      background: transparent;
      text-align: left;
      /* 修正ボタン */
      /* 送信ボタン */ }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          padding-right: 0; } }
      div#wpcf7cpcnf .wpcf7cp-btns button::before {
        display: block;
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: auto;
        bottom: 0;
        margin: auto;
        border-radius: 1.75em;
        width: 3.5em;
        background: #090a37 url("/images/ya_w.svg") no-repeat right 1.25em top 50%/1em auto;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-animation-name: ani_rl;
        -moz-animation-duration: 0.5s;
        -moz-animation-fill-mode: forwards;
        -moz-animation-timing-function: ease-in-out;
        -moz-animation-iteration-count: infinite;
        -ms-animation-name: ani_rl;
        -ms-animation-duration: 0.5s;
        -ms-animation-fill-mode: forwards;
        -ms-animation-timing-function: ease-in-out;
        -ms-animation-iteration-count: infinite;
        -o-animation-name: ani_rl;
        -o-animation-duration: 0.5s;
        -o-animation-fill-mode: forwards;
        -o-animation-timing-function: ease-in-out;
        -o-animation-iteration-count: infinite;
        -webkit-animation-name: ani_rl;
        -webkit-animation-duration: 0.5s;
        -webkit-animation-fill-mode: forwards;
        -webkit-animation-timing-function: ease-in-out;
        -webkit-animation-iteration-count: infinite;
        animation-name: ani_rl;
        animation-duration: 0.5s;
        animation-fill-mode: forwards;
        animation-timing-function: ease-in-out;
        animation-iteration-count: infinite; }
      div#wpcf7cpcnf .wpcf7cp-btns button span {
        width: auto;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        z-index: 2;
        /* 欧文テキスト */
        /* 日本語テキスト */ }
        div#wpcf7cpcnf .wpcf7cp-btns button span.eg {
          font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
          font-weight: normal;
          font-variation-settings: "wght" 700;
          font-size: 1.5em;
          font-weight: normal;
          font-variation-settings: "wght" 500;
          top: 0.05em; }
      @media screen and (min-width: 769px) {
        div#wpcf7cpcnf .wpcf7cp-btns button:hover {
          color: #fff; }
          div#wpcf7cpcnf .wpcf7cp-btns button:hover::before {
            width: 100%;
            background-color: #1460d1; } }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          width: 100%;
          padding-right: 0; } }
      div#wpcf7cpcnf .wpcf7cp-btns button::before {
        z-index: -1; }
      div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit {
        letter-spacing: 0;
        text-indent: 0; }

/* =======================================================================================================================
　　　　　　　　　フリーページ（カスタムフィールド）
======================================================================================================================= */
.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: 10; }

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

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

.sec_bg2 {
  background: rgba(187, 222, 244, 0.75);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px); }

.sec_bg3 {
  background: #1460d1;
  color: #fff; }

.sec_bg4 {
  background: #1d2087;
  color: #fff; }

.sec_bg1,
.sec_bg2,
.sec_bg3,
.sec_bg4 {
  margin-top: 2.5em;
  border-radius: 1em; }
  .sec_bg1:first-child,
  .sec_bg2:first-child,
  .sec_bg3:first-child,
  .sec_bg4:first-child {
    margin-top: 0; }

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

/* =============== ブロック ========================================================= */
.freepage-ctt .sec {
  /* ------------ 背景色つきテキストボックス -------------------------------- */
  /* ------------ ボタン ------------------------------------------- */
  /* ------------ Googleマップ ------------------------------------------- */ }
  .freepage-ctt .sec .bbox {
    width: 100%;
    box-sizing: border-box;
    padding: 2.5em;
    margin-bottom: 5em;
    background: #fff;
    border-radius: 0.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: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      font-size: 1.5em;
      line-height: 1.5em;
      padding-bottom: 1em;
      color: #090a37; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec .bbox h3,
        .freepage-ctt .sec .bbox h4 {
          font-size: 1.3em; } }
    .freepage-ctt .sec .bbox p {
      padding-bottom: 2em;
      color: #000; }
      .freepage-ctt .sec .bbox p:last-child {
        padding-bottom: 0; }
  .freepage-ctt .sec .btn a {
    text-decoration: none; }
  .freepage-ctt .sec.sec_bg3 .btn a, .freepage-ctt .sec.sec_bg4 .btn a {
    color: #fff;
    /* 矢印 */
    /* マウスオーバー */ }
    .freepage-ctt .sec.sec_bg3 .btn a::before, .freepage-ctt .sec.sec_bg4 .btn a::before {
      background-color: #fff;
      background-image: url("/images/ya.svg"); }
    @media screen and (min-width: 769px) {
      .freepage-ctt .sec.sec_bg3 .btn a:hover, .freepage-ctt .sec.sec_bg4 .btn a:hover {
        color: #090a37; }
        .freepage-ctt .sec.sec_bg3 .btn a:hover::before, .freepage-ctt .sec.sec_bg4 .btn a:hover::before {
          background-color: #00b7ed; } }
  .freepage-ctt .sec .access_map {
    display: block;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 5em; }
    .freepage-ctt .sec .access_map iframe,
    .freepage-ctt .sec .access_map .acf-map {
      width: 100%;
      height: 20em; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec .access_map iframe,
        .freepage-ctt .sec .access_map .acf-map {
          height: 15em; } }
      @media screen and (max-width: 480px) {
        .freepage-ctt .sec .access_map iframe,
        .freepage-ctt .sec .access_map .acf-map {
          height: 12em; } }
    .freepage-ctt .sec .access_map .acf-map img {
      max-width: inherit !important; }

/* =============== 画像 ========================================================= */
.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; }
    @media screen and (max-width: 768px) {
      .parts-100img img {
        width: 100%; } }

/* ------------ 画像＋テキスト -------------------------------- */
.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: normal;
  font-variation-settings: "wght" 700;
  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～6つ並び画像テキストボックス -------------------------------- */
/* テキスト */
.imgbox_txtarea {
  display: block;
  width: 100%;
  z-index: 1;
  position: relative;
  box-sizing: border-box; }
  .imgbox_txtarea h3,
  .imgbox_txtarea h4 {
    font-size: 1.2em;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    line-height: 1.5em;
    padding-top: 0.25em;
    margin-bottom: 0.5em; }
  .imgbox_txtarea p {
    padding-bottom: 0;
    line-height: 1.5em; }

/* 横並び画像テキストボックス共通設定 -------------------------------- */
.img2box,
.img3txtbox,
.img4txtbox,
.img5txtbox,
.img6txtbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 5em;
  /* リスト */ }
  .img2box ul,
  .img3txtbox ul,
  .img4txtbox ul,
  .img5txtbox ul,
  .img6txtbox 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: 768px) {
      .img2box ul,
      .img3txtbox ul,
      .img4txtbox ul,
      .img5txtbox ul,
      .img6txtbox ul {
        margin-top: -3em; } }
    .img2box ul li,
    .img3txtbox ul li,
    .img4txtbox ul li,
    .img5txtbox ul li,
    .img6txtbox ul li {
      width: auto;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin-top: 2em;
      /* 画像 */ }
      @media screen and (max-width: 768px) {
        .img2box ul li,
        .img3txtbox ul li,
        .img4txtbox ul li,
        .img5txtbox ul li,
        .img6txtbox ul li {
          margin-top: 3em; } }
      .img2box ul li img,
      .img3txtbox ul li img,
      .img4txtbox ul li img,
      .img5txtbox ul li img,
      .img6txtbox ul li img {
        width: 100%;
        height: auto;
        margin-bottom: 1em; }
    .img2box ul.flex_center,
    .img3txtbox ul.flex_center,
    .img4txtbox ul.flex_center,
    .img5txtbox ul.flex_center,
    .img6txtbox ul.flex_center {
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -moz-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .img2box ul.flex_center li:last-child,
      .img3txtbox ul.flex_center li:last-child,
      .img4txtbox ul.flex_center li:last-child,
      .img5txtbox ul.flex_center li:last-child,
      .img6txtbox ul.flex_center li:last-child {
        margin-right: 0; }

/* 2つ並び画像テキストボックス -------------------------------- */
.img2box {
  /* リスト */ }
  @media screen and (min-width: 769px) {
    .img2box ul {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: justify;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch; } }
  @media screen and (max-width: 768px) {
    .img2box ul:has(.youtube_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; } }
  .img2box ul li {
    width: 47%; }
    @media screen and (max-width: 480px) {
      .img2box ul li:has(.youtube_box) {
        width: 100%; } }
  .img2box.imghbox ul {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch; }
    @media screen and (max-width: 480px) {
      .img2box.imghbox ul li {
        width: 47%; } }

/* 3つ並び画像テキストボックス -------------------------------- */
.img3txtbox {
  /* リスト */ }
  .img3txtbox ul {
    margin-top: -3em; }
    .img3txtbox ul li {
      width: 31%;
      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:has(.youtube_box) {
          width: 100%;
          margin-right: 0; } }
  @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 {
  /* リスト */ }
  .img4txtbox ul li {
    width: 23.5%;
    margin-right: 2%; }
    @media screen and (min-width: 769px) {
      .img4txtbox ul li:nth-child(4n) {
        margin-right: 0; } }
@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; } }

/* 5つ並び画像テキストボックス -------------------------------- */
.img5txtbox {
  /* リスト */ }
  .img5txtbox ul li {
    width: 18.4%;
    margin-right: 2%; }
    @media screen and (min-width: 769px) {
      .img5txtbox ul li:nth-child(5n) {
        margin-right: 0; } }

/* 6つ並び画像テキストボックス -------------------------------- */
.img6txtbox {
  /* リスト */ }
  .img6txtbox ul li {
    width: 15%;
    margin-right: 2%; }
    @media screen and (min-width: 769px) {
      .img6txtbox ul li:nth-child(6n) {
        margin-right: 0; } }

/* タブレットの時 -------------------------------- */
@media screen and (max-width: 768px) {
  /* 1つ並び */
  .img1txt_tb {
    /* リスト */ }
    .img1txt_tb ul li {
      width: 100%;
      margin-right: 0; }

  /* 2つ並び */
  .img2txt_tb {
    /* リスト */ }
    .img2txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img2txt_tb ul li {
        width: 49%; }
        .img2txt_tb ul li:nth-child(2n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 3つ並び */
  .img3txt_tb {
    /* リスト */ }
    .img3txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img3txt_tb ul li {
        width: 32%; }
        .img3txt_tb ul li:nth-child(3n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 4つ並び */
  .img4txt_tb {
    /* リスト */ }
    .img4txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img4txt_tb ul li {
        width: 23.5%; }
        .img4txt_tb ul li:nth-child(4n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 5つ並び */
  .img5txt_tb {
    /* リスト */ }
    .img5txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img5txt_tb ul li {
        width: 18.4%; }
        .img5txt_tb ul li:nth-child(5n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 6つ並び */
  .img6txt_tb {
    /* リスト */ }
    .img6txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img6txt_tb ul li {
        width: 15%; }
        .img6txt_tb ul li:nth-child(6n) {
          margin-right: 0; } }

/* スマートフォンの時 -------------------------------- */
@media screen and (max-width: 480px) {
  /* 1つ並び */
  .img1txt_sp {
    /* リスト */ }
    .img1txt_sp ul li {
      width: 100%;
      margin-right: 0; }

  /* 2つ並び */
  .img2txt_sp {
    /* リスト */ }
    .img2txt_sp ul li {
      margin-right: 2%;
      width: 49%; }
      .img2txt_sp ul li:nth-child(2n) {
        margin-right: 0; }

  /* 3つ並び */
  .img3txt_sp {
    /* リスト */ }
    .img3txt_sp ul li {
      margin-right: 2%;
      width: 32%; }
      .img3txt_sp ul li:nth-child(3n) {
        margin-right: 0; }

  /* 4つ並び */
  .img4txt_sp {
    /* リスト */ }
    .img4txt_sp ul li {
      margin-right: 2%;
      width: 23.5%; }
      .img4txt_sp ul li:nth-child(4n) {
        margin-right: 0; }

  /* 5つ並び */
  .img5txt_sp {
    /* リスト */ }
    .img5txt_sp ul li {
      margin-right: 2%;
      width: 18.4%; }
      .img5txt_sp ul li:nth-child(5n) {
        margin-right: 0; }

  /* 6つ並び */
  .img6txt_sp {
    /* リスト */ }
    .img6txt_sp ul li {
      margin-right: 2%;
      width: 15%; }
      .img6txt_sp ul li:nth-child(6n) {
        margin-right: 0; } }
/* =============== リスト ========================================================= */
/* ノーマルリストマークつき -------------------------------- */
.no_list {
  width: 100%;
  box-sizing: border-box;
  padding: 2.5em;
  margin: 0 auto;
  margin-bottom: 2.5em;
  position: relative;
  background: #fff;
  border-radius: 0.5em;
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 1350px) {
    .no_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .no_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .no_list {
      padding: 1.5em; } }
  .no_list h3,
  .no_list h4 {
    font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #090a37; }
    @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;
    list-style: none inside; }
    .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.5em;
      text-indent: -1.2em;
      padding-left: 1.2em;
      padding-bottom: 1.5em; }
      .no_list ul li::before {
        content: "●";
        color: #009fe8;
        padding-right: 0.2em; }
      .no_list ul li:last-child {
        padding-bottom: 0; }

/* チェックボックスマークつき -------------------------------- */
.check_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 2.5em;
  margin: 0 auto;
  margin-bottom: 2.5em;
  background: #fff;
  border-radius: 0.5em;
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 1350px) {
    .check_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .check_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .check_list {
      padding: 1.5em; } }
  .check_list h3,
  .check_list h4 {
    font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #090a37; }
    @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; }
      .check_list ul li:last-child {
        padding-bottom: 0; }

/* 番号つき -------------------------------- */
.order_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 2.5em;
  margin: 0 auto;
  margin-bottom: 2.5em;
  position: relative;
  background: #fff;
  border-radius: 0.5em;
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 1350px) {
    .order_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .order_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .order_list {
      padding: 1.5em; } }
  .order_list h3,
  .order_list h4 {
    font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #090a37; }
    @media screen and (max-width: 768px) {
      .order_list h3,
      .order_list h4 {
        font-size: 1.3em; } }
  .order_list ol {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside;
    counter-reset: number; }
    .order_list ol li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      padding-left: 2em;
      padding-bottom: 1em; }
      .order_list ol li::before {
        position: relative;
        display: inline-block;
        width: 0.75em;
        margin-left: -0.75em;
        counter-increment: number;
        content: counter(number,decimal-leading-zero);
        font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        font-size: 2.5em;
        color: #009fe8;
        vertical-align: bottom; }
      .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-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-variation-settings: "wght" 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: 0.5em;
      background: #fff;
      margin-bottom: 0.5em; }
      .table_list ul li:last-child {
        margin-bottom: 0; }
      .table_list ul li .tablelist_th,
      .table_list ul li .tablelist_td {
        font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-style: normal;
        padding: 1.5em;
        font-size: 1em;
        line-height: 1.5em;
        width: auto;
        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: normal;
        font-variation-settings: "wght" 700;
        border-right: #1460d1 solid 0.1em;
        color: #090a37; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_th {
            width: 100%;
            border-right: none;
            border-bottom: #1460d1 solid 0.1em; } }
      .table_list ul li .tablelist_td {
        width: 70%;
        font-weight: 500; }
        .table_list ul li .tablelist_td strong {
          font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
          font-style: normal; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_td {
            width: 100%; } }
      .table_list ul li:last-child {
        border-bottom: none; }

/* 注釈マークつき -------------------------------- */
.note_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 2.5em;
  padding: 2.5em;
  background: #fff;
  border-radius: 0.5em;
  opacity: 0.7;
  filter: alpha(opacity=70);
  /* 見出し */
  /* リスト */ }
  @media screen and (max-width: 1350px) {
    .note_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .note_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .note_list {
      padding: 1.5em; } }
  .note_list h3,
  .note_list h4 {
    font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em;
    color: #090a37; }
    @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: normal;
      font-variation-settings: "wght" 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; }

/* タイムライン -------------------------------- */
.time_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 2.5em;
  /* 見出し */
  /* リスト */ }
  .time_list h3,
  .time_list h4 {
    display: inline-block;
    font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 0.5em; }
    @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: #1460d1 solid 0.25em;
        opacity: 0.5;
        filter: alpha(opacity=50); }
        .sec_bg3 .time_list ul li::before, .sec_bg4 .time_list ul li::before {
          border-color: #bbdef4; }
      .time_list ul li:first-child::before {
        top: 2em; }
      .time_list ul li:last-child::before {
        height: 2em;
        bottom: auto; }
      .time_list ul li .time_time,
      .time_list ul li .time_ctt {
        font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-style: normal;
        padding: 1.5em;
        font-size: 1em;
        line-height: 1.5em;
        width: auto;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .time_list ul li .time_time {
        padding-left: 0;
        width: 10em;
        font-weight: normal;
        font-variation-settings: "wght" 700;
        text-align: right;
        color: #1460d1; }
        .sec_bg3 .time_list ul li .time_time, .sec_bg4 .time_list ul li .time_time {
          color: #bbdef4; }
      .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: source-han-sans-jp-variable, '游ゴシック', '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: #1460d1;
          position: absolute;
          top: 1.9em;
          left: -0.2em;
          right: auto;
          bottom: auto;
          z-index: 2; }
          .sec_bg3 .time_list ul li .time_ctt::before, .sec_bg4 .time_list ul li .time_ctt::before {
            background-color: #bbdef4; }
    .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: #1460d1 dotted 0.25em;
      opacity: 0.5;
      filter: alpha(opacity=50); }
      .sec_bg3 .time_list ul.on li:last-child::after, .sec_bg4 .time_list ul.on li:last-child::after {
        border-color: #bbdef4; }

/* =============== 余白ゼロ ========================================================= */
.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,
.freepage-ctt .sec .innerbox .access_map: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; }

/* =============== テキスト ========================================================= */
/* ------------ 見出し -------------------------------- */
.parts-h3 {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column-reverse;
  font-size: 1em;
  line-height: 1em;
  padding-bottom: 3em;
  /* 大きな数字 */ }
  .sec_bg1 .parts-h3 {
    color: #090a37; }
  .parts-h3 .jpttl {
    font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: normal;
    font-variation-settings: "wght" 900;
    display: block;
    font-size: 3em;
    line-height: 1em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .jpttl {
        font-size: 1.6em; } }
  .parts-h3 .lnmb {
    display: block;
    font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 9em;
    letter-spacing: 0;
    line-height: 1em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .lnmb {
        font-size: 6em; } }
    @media screen and (max-width: 480px) {
      .parts-h3 .lnmb {
        font-size: 5em; } }
    .parts-h3 .lnmb + .jpttl {
      font-size: 1em;
      font-weight: normal;
      font-variation-settings: "wght" 700;
      padding-bottom: 0.8em; }

.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 {
  width: 50%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .centerbox {
      width: 100%; } }

.max1500px {
  width: 70%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .max1500px {
      width: 100%; } }

/* ------------ 段落 -------------------------------- */
.freepage-ctt a {
  text-decoration: underline; }
.freepage-ctt .sec p {
  padding-bottom: 2.5em;
  /* 余白小さめ */
  /* 強調 */
  /* 注釈 */ }
  .freepage-ctt .sec p.btmmin {
    padding-bottom: 2em; }
  .freepage-ctt .sec p.parts-copy {
    font-size: 2em;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 480px) {
      .freepage-ctt .sec p.parts-copy {
        font-size: 1.6em; } }
  .freepage-ctt .sec p.note {
    font-size: 0.9em;
    font-weight: normal;
    font-variation-settings: "wght" 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;
    opacity: 0.6;
    filter: alpha(opacity=60); }
    .freepage-ctt .sec p.note::before {
      display: inline-block;
      content: "※";
      padding-right: 0.2em; }
.freepage-ctt .sec .imgtxt_txtbox p:last-child {
  padding-bottom: 0; }

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

/* =============== Youtube動画 ========================================================= */
.videobox .imgtxt_imgbox {
  width: 60%; }
  @media screen and (max-width: 480px) {
    .videobox .imgtxt_imgbox {
      width: 100%; } }

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

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

/* =======================================================================================================================
　　　　　　　　　下層ページ（共通）
======================================================================================================================= */
body #page-header {
  color: #090a37;
  background: #1460d1;
  /* 日本語タイトル */
  /* 英語タイトル */
  /* ボタンがある時 */
  /* 英語文章 */
  /* ボタン */ }
  body #page-header .innerbox {
    z-index: 10; }
  body #page-header .flex {
    display: flex; }
    @media screen and (max-width: 480px) {
      body #page-header .flex {
        flex-direction: column; } }
  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-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: normal;
    font-variation-settings: "wght" 900;
    font-size: 2em;
    line-height: 1em;
    color: #fff;
    padding-bottom: 1.25em;
    -webkit-transition-delay: 0.5s;
    -moz-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s; }
    @media screen and (max-width: 768px) {
      body #page-header .page_ttl {
        font-size: 1.5em; } }
    @media screen and (max-width: 480px) {
      body #page-header .page_ttl {
        font-size: 1em; } }
  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: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-weight: normal;
    font-variation-settings: "wght" 800;
    font-size: 12em;
    line-height: 0.8em;
    color: #090a37;
    text-transform: uppercase;
    -webkit-transition-delay: 1.5s;
    -moz-transition-delay: 1.5s;
    -o-transition-delay: 1.5s;
    transition-delay: 1.5s; }
    @media screen and (max-width: 768px) {
      body #page-header .eg_ttl {
        font-size: 7em; } }
    @media screen and (max-width: 480px) {
      body #page-header .eg_ttl {
        font-size: 6em; } }
  @media screen and (max-width: 768px) {
    body #page-header .ttl_box:has(+ .eg_btn) .eg_ttl {
      font-size: 9em; } }
  @media screen and (max-width: 480px) {
    body #page-header .ttl_box:has(+ .eg_btn) .eg_ttl {
      font-size: 6em; } }
  body #page-header p.eg {
    font-size: 1.4em;
    font-weight: normal;
    font-variation-settings: "wght" 400;
    line-height: 1em;
    padding-top: 3.25em;
    padding-left: 1em;
    padding-bottom: 0;
    margin-top: -0.25em;
    -webkit-transition-delay: 2s;
    -moz-transition-delay: 2s;
    -o-transition-delay: 2s;
    transition-delay: 2s; }
    @media screen and (max-width: 768px) {
      body #page-header p.eg {
        font-size: 1.05em; } }
    @media screen and (max-width: 480px) {
      body #page-header p.eg {
        padding-top: 0;
        padding-left: 0; } }
    @media screen and (max-width: 768px) {
      body #page-header p.eg + .btn {
        margin-top: 0.5em; } }
  body #page-header .btn {
    padding-left: 1.4em;
    -webkit-transition-delay: 2.5s;
    -moz-transition-delay: 2.5s;
    -o-transition-delay: 2.5s;
    transition-delay: 2.5s; }
    @media screen and (max-width: 768px) {
      body #page-header .btn {
        padding-left: 1.05em; } }
    @media screen and (max-width: 480px) {
      body #page-header .btn {
        padding-left: 0; } }
    body #page-header .btn a:hover::before {
      background-color: #00b7ed; }

/* =======================================================================================================================
　　　　　　　　　お問い合わせ
======================================================================================================================= */
body.page-template-page-form #wrapper {
  /* スクロール時グレー背景に変化 */ }
  body.page-template-page-form #wrapper.scroll #page-header {
    background: #f4f4f4; }

.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 {
    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 {
    padding-top: 0;
    background: #1460d1;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    -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;
    /* スクロール時グレー背景に変化 */
    /* -------------------------- セクションタイトル ------------------------------------------- */
    /* -------------------------- 電話セット ------------------------------------------- */ }
    .scroll .contactpage-ctt .contact_tel {
      background: #f4f4f4; }
    .contactpage-ctt .contact_tel .parts-h3 {
      color: #090a37; }
    .contactpage-ctt .contact_tel .tel_list {
      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;
      margin-top: -2em; }
      .contactpage-ctt .contact_tel .tel_list li {
        padding-right: 2.5em;
        margin-top: 2em;
        /* 支店 ------------------------------------------- */
        /* 番号 ------------------------------------------- */
        /* 受付時間・定休日 ------------------------------------------- */ }
        .contactpage-ctt .contact_tel .tel_list li:last-child {
          padding-right: 0; }
        .contactpage-ctt .contact_tel .tel_list li .contacttel_shop {
          font-size: 1.1em;
          font-weight: normal;
          font-variation-settings: "wght" 700;
          line-height: 1.2em;
          padding-bottom: 0.25em; }
        .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-size: 6em;
          line-height: 1em;
          padding-bottom: 0.1em;
          color: #1d2087; }
          .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel img {
            height: 1em;
            width: auto;
            margin-right: 0.25em; }
          .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a {
            color: #1d2087; }
            .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a:hover {
              color: #1d2087; }
            .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a .eg {
              font-family: gazzetta-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: normal;
              font-variation-settings: "wght" 700;
              font-weight: normal;
              font-variation-settings: "wght" 900; }
              .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a .eg::before {
                position: relative;
                font-size: 0.65em;
                font-style: normal;
                font-family: "Font Awesome 5 Free";
                font-weight: 900;
                line-height: 1;
                content: "\f095";
                top: -0.1em;
                padding-right: 0.25em; }
        .contactpage-ctt .contact_tel .tel_list li p.time_holiday {
          color: #090a37;
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          line-height: 1.5em;
          padding-bottom: 0;
          opacity: 0.6;
          /* 受付時間 */
          /* 定休日 */ }
          @media screen and (max-width: 480px) {
            .contactpage-ctt .contact_tel .tel_list li p.time_holiday {
              line-height: 1.2em; } }
          .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_time {
            display: inline-block;
            width: auto;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 1.5em;
            font-style: normal;
            padding-bottom: 0;
            bottom: -0.05em; }
            .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_time::before {
              display: inline-block;
              width: auto;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              font-family: source-han-sans-jp-variable, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-style: normal;
              font-size: 0.67em;
              content: "受付時間";
              padding-right: 0.5em;
              bottom: 0.05em; }
            @media screen and (max-width: 480px) {
              .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_time {
                font-size: 1.25em; } }
          .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_holiday {
            display: inline-block;
            font-size: 1em; }
            @media screen and (max-width: 480px) {
              .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_holiday {
                font-size: 0.8em; } }
  .contactpage-ctt .webcontact .ct_info a {
    color: #00b7ed; }
    .contactpage-ctt .webcontact .ct_info a:hover {
      opacity: 0.7; }
  .contactpage-ctt .webcontact a {
    color: #f4f4f4;
    text-decoration: underline; }

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