@charset "UTF-8";
.m-b-1 {
  margin-bottom: 1rem; }
  @media (max-width: 740px) {
    .m-b-1 {
      margin-bottom: 0.05rem !important; } }

.m-b-2 {
  margin-bottom: 2rem; }
  @media (max-width: 740px) {
    .m-b-2 {
      margin-bottom: 0.1rem !important; } }

.m-b-3 {
  margin-bottom: 3rem; }
  @media (max-width: 740px) {
    .m-b-3 {
      margin-bottom: 0.15rem !important; } }

.m-b-4 {
  margin-bottom: 4rem; }
  @media (max-width: 740px) {
    .m-b-4 {
      margin-bottom: 0.2rem !important; } }

.m-b-5 {
  margin-bottom: 5rem; }
  @media (max-width: 740px) {
    .m-b-5 {
      margin-bottom: 0.25rem !important; } }

.m-b-6 {
  margin-bottom: 6rem; }
  @media (max-width: 740px) {
    .m-b-6 {
      margin-bottom: 0.3rem !important; } }

.m-b-7 {
  margin-bottom: 7rem; }
  @media (max-width: 740px) {
    .m-b-7 {
      margin-bottom: 0.35rem !important; } }

.m-b-8 {
  margin-bottom: 8rem; }
  @media (max-width: 740px) {
    .m-b-8 {
      margin-bottom: 0.4rem !important; } }

.m-b-9 {
  margin-bottom: 9rem; }
  @media (max-width: 740px) {
    .m-b-9 {
      margin-bottom: 0.45rem !important; } }

.m-b-10 {
  margin-bottom: 10rem; }
  @media (max-width: 740px) {
    .m-b-10 {
      margin-bottom: 0.5rem !important; } }

.m-b-11 {
  margin-bottom: 11rem; }
  @media (max-width: 740px) {
    .m-b-11 {
      margin-bottom: 0.55rem !important; } }

.m-b-12 {
  margin-bottom: 12rem; }
  @media (max-width: 740px) {
    .m-b-12 {
      margin-bottom: 0.6rem !important; } }

.m-b-13 {
  margin-bottom: 13rem; }
  @media (max-width: 740px) {
    .m-b-13 {
      margin-bottom: 0.65rem !important; } }

.m-b-14 {
  margin-bottom: 14rem; }
  @media (max-width: 740px) {
    .m-b-14 {
      margin-bottom: 0.7rem !important; } }

.m-b-15 {
  margin-bottom: 15rem; }
  @media (max-width: 740px) {
    .m-b-15 {
      margin-bottom: 0.75rem !important; } }

.m-b-16 {
  margin-bottom: 16rem; }
  @media (max-width: 740px) {
    .m-b-16 {
      margin-bottom: 0.8rem !important; } }

.m-b-17 {
  margin-bottom: 17rem; }
  @media (max-width: 740px) {
    .m-b-17 {
      margin-bottom: 0.85rem !important; } }

.m-b-18 {
  margin-bottom: 18rem; }
  @media (max-width: 740px) {
    .m-b-18 {
      margin-bottom: 0.9rem !important; } }

.m-b-19 {
  margin-bottom: 19rem; }
  @media (max-width: 740px) {
    .m-b-19 {
      margin-bottom: 0.95rem !important; } }

.m-b-20 {
  margin-bottom: 20rem; }
  @media (max-width: 740px) {
    .m-b-20 {
      margin-bottom: 1rem !important; } }

.m-b-21 {
  margin-bottom: 21rem; }
  @media (max-width: 740px) {
    .m-b-21 {
      margin-bottom: 1.05rem !important; } }

.m-b-22 {
  margin-bottom: 22rem; }
  @media (max-width: 740px) {
    .m-b-22 {
      margin-bottom: 1.1rem !important; } }

.m-b-23 {
  margin-bottom: 23rem; }
  @media (max-width: 740px) {
    .m-b-23 {
      margin-bottom: 1.15rem !important; } }

.m-b-24 {
  margin-bottom: 24rem; }
  @media (max-width: 740px) {
    .m-b-24 {
      margin-bottom: 1.2rem !important; } }

.m-b-25 {
  margin-bottom: 25rem; }
  @media (max-width: 740px) {
    .m-b-25 {
      margin-bottom: 1.25rem !important; } }

.m-b-26 {
  margin-bottom: 26rem; }
  @media (max-width: 740px) {
    .m-b-26 {
      margin-bottom: 1.3rem !important; } }

.m-b-27 {
  margin-bottom: 27rem; }
  @media (max-width: 740px) {
    .m-b-27 {
      margin-bottom: 1.35rem !important; } }

.m-b-28 {
  margin-bottom: 28rem; }
  @media (max-width: 740px) {
    .m-b-28 {
      margin-bottom: 1.4rem !important; } }

.m-b-29 {
  margin-bottom: 29rem; }
  @media (max-width: 740px) {
    .m-b-29 {
      margin-bottom: 1.45rem !important; } }

.m-b-30 {
  margin-bottom: 30rem; }
  @media (max-width: 740px) {
    .m-b-30 {
      margin-bottom: 1.5rem !important; } }

.m-b-31 {
  margin-bottom: 31rem; }
  @media (max-width: 740px) {
    .m-b-31 {
      margin-bottom: 1.55rem !important; } }

.m-b-32 {
  margin-bottom: 32rem; }
  @media (max-width: 740px) {
    .m-b-32 {
      margin-bottom: 1.6rem !important; } }

.m-b-33 {
  margin-bottom: 33rem; }
  @media (max-width: 740px) {
    .m-b-33 {
      margin-bottom: 1.65rem !important; } }

.m-b-34 {
  margin-bottom: 34rem; }
  @media (max-width: 740px) {
    .m-b-34 {
      margin-bottom: 1.7rem !important; } }

.m-b-35 {
  margin-bottom: 35rem; }
  @media (max-width: 740px) {
    .m-b-35 {
      margin-bottom: 1.75rem !important; } }

.m-b-36 {
  margin-bottom: 36rem; }
  @media (max-width: 740px) {
    .m-b-36 {
      margin-bottom: 1.8rem !important; } }

.m-b-37 {
  margin-bottom: 37rem; }
  @media (max-width: 740px) {
    .m-b-37 {
      margin-bottom: 1.85rem !important; } }

.m-b-38 {
  margin-bottom: 38rem; }
  @media (max-width: 740px) {
    .m-b-38 {
      margin-bottom: 1.9rem !important; } }

.m-b-39 {
  margin-bottom: 39rem; }
  @media (max-width: 740px) {
    .m-b-39 {
      margin-bottom: 1.95rem !important; } }

.m-b-40 {
  margin-bottom: 40rem; }
  @media (max-width: 740px) {
    .m-b-40 {
      margin-bottom: 2rem !important; } }

.m-b-41 {
  margin-bottom: 41rem; }
  @media (max-width: 740px) {
    .m-b-41 {
      margin-bottom: 2.05rem !important; } }

.m-b-42 {
  margin-bottom: 42rem; }
  @media (max-width: 740px) {
    .m-b-42 {
      margin-bottom: 2.1rem !important; } }

.m-b-43 {
  margin-bottom: 43rem; }
  @media (max-width: 740px) {
    .m-b-43 {
      margin-bottom: 2.15rem !important; } }

.m-b-44 {
  margin-bottom: 44rem; }
  @media (max-width: 740px) {
    .m-b-44 {
      margin-bottom: 2.2rem !important; } }

.m-b-45 {
  margin-bottom: 45rem; }
  @media (max-width: 740px) {
    .m-b-45 {
      margin-bottom: 2.25rem !important; } }

.m-b-46 {
  margin-bottom: 46rem; }
  @media (max-width: 740px) {
    .m-b-46 {
      margin-bottom: 2.3rem !important; } }

.m-b-47 {
  margin-bottom: 47rem; }
  @media (max-width: 740px) {
    .m-b-47 {
      margin-bottom: 2.35rem !important; } }

.m-b-48 {
  margin-bottom: 48rem; }
  @media (max-width: 740px) {
    .m-b-48 {
      margin-bottom: 2.4rem !important; } }

.m-b-49 {
  margin-bottom: 49rem; }
  @media (max-width: 740px) {
    .m-b-49 {
      margin-bottom: 2.45rem !important; } }

.m-b-50 {
  margin-bottom: 50rem; }
  @media (max-width: 740px) {
    .m-b-50 {
      margin-bottom: 2.5rem !important; } }

.m-b-51 {
  margin-bottom: 51rem; }
  @media (max-width: 740px) {
    .m-b-51 {
      margin-bottom: 2.55rem !important; } }

.m-b-52 {
  margin-bottom: 52rem; }
  @media (max-width: 740px) {
    .m-b-52 {
      margin-bottom: 2.6rem !important; } }

.m-b-53 {
  margin-bottom: 53rem; }
  @media (max-width: 740px) {
    .m-b-53 {
      margin-bottom: 2.65rem !important; } }

.m-b-54 {
  margin-bottom: 54rem; }
  @media (max-width: 740px) {
    .m-b-54 {
      margin-bottom: 2.7rem !important; } }

.m-b-55 {
  margin-bottom: 55rem; }
  @media (max-width: 740px) {
    .m-b-55 {
      margin-bottom: 2.75rem !important; } }

.m-b-56 {
  margin-bottom: 56rem; }
  @media (max-width: 740px) {
    .m-b-56 {
      margin-bottom: 2.8rem !important; } }

.m-b-57 {
  margin-bottom: 57rem; }
  @media (max-width: 740px) {
    .m-b-57 {
      margin-bottom: 2.85rem !important; } }

.m-b-58 {
  margin-bottom: 58rem; }
  @media (max-width: 740px) {
    .m-b-58 {
      margin-bottom: 2.9rem !important; } }

.m-b-59 {
  margin-bottom: 59rem; }
  @media (max-width: 740px) {
    .m-b-59 {
      margin-bottom: 2.95rem !important; } }

.m-b-60 {
  margin-bottom: 60rem; }
  @media (max-width: 740px) {
    .m-b-60 {
      margin-bottom: 3rem !important; } }

.m-b-61 {
  margin-bottom: 61rem; }
  @media (max-width: 740px) {
    .m-b-61 {
      margin-bottom: 3.05rem !important; } }

.m-b-62 {
  margin-bottom: 62rem; }
  @media (max-width: 740px) {
    .m-b-62 {
      margin-bottom: 3.1rem !important; } }

.m-b-63 {
  margin-bottom: 63rem; }
  @media (max-width: 740px) {
    .m-b-63 {
      margin-bottom: 3.15rem !important; } }

.m-b-64 {
  margin-bottom: 64rem; }
  @media (max-width: 740px) {
    .m-b-64 {
      margin-bottom: 3.2rem !important; } }

.m-b-65 {
  margin-bottom: 65rem; }
  @media (max-width: 740px) {
    .m-b-65 {
      margin-bottom: 3.25rem !important; } }

.m-b-66 {
  margin-bottom: 66rem; }
  @media (max-width: 740px) {
    .m-b-66 {
      margin-bottom: 3.3rem !important; } }

.m-b-67 {
  margin-bottom: 67rem; }
  @media (max-width: 740px) {
    .m-b-67 {
      margin-bottom: 3.35rem !important; } }

.m-b-68 {
  margin-bottom: 68rem; }
  @media (max-width: 740px) {
    .m-b-68 {
      margin-bottom: 3.4rem !important; } }

.m-b-69 {
  margin-bottom: 69rem; }
  @media (max-width: 740px) {
    .m-b-69 {
      margin-bottom: 3.45rem !important; } }

.m-b-70 {
  margin-bottom: 70rem; }
  @media (max-width: 740px) {
    .m-b-70 {
      margin-bottom: 3.5rem !important; } }

.m-b-71 {
  margin-bottom: 71rem; }
  @media (max-width: 740px) {
    .m-b-71 {
      margin-bottom: 3.55rem !important; } }

.m-b-72 {
  margin-bottom: 72rem; }
  @media (max-width: 740px) {
    .m-b-72 {
      margin-bottom: 3.6rem !important; } }

.m-b-73 {
  margin-bottom: 73rem; }
  @media (max-width: 740px) {
    .m-b-73 {
      margin-bottom: 3.65rem !important; } }

.m-b-74 {
  margin-bottom: 74rem; }
  @media (max-width: 740px) {
    .m-b-74 {
      margin-bottom: 3.7rem !important; } }

.m-b-75 {
  margin-bottom: 75rem; }
  @media (max-width: 740px) {
    .m-b-75 {
      margin-bottom: 3.75rem !important; } }

.m-b-76 {
  margin-bottom: 76rem; }
  @media (max-width: 740px) {
    .m-b-76 {
      margin-bottom: 3.8rem !important; } }

.m-b-77 {
  margin-bottom: 77rem; }
  @media (max-width: 740px) {
    .m-b-77 {
      margin-bottom: 3.85rem !important; } }

.m-b-78 {
  margin-bottom: 78rem; }
  @media (max-width: 740px) {
    .m-b-78 {
      margin-bottom: 3.9rem !important; } }

.m-b-79 {
  margin-bottom: 79rem; }
  @media (max-width: 740px) {
    .m-b-79 {
      margin-bottom: 3.95rem !important; } }

.m-b-80 {
  margin-bottom: 80rem; }
  @media (max-width: 740px) {
    .m-b-80 {
      margin-bottom: 4rem !important; } }

.m-b-81 {
  margin-bottom: 81rem; }
  @media (max-width: 740px) {
    .m-b-81 {
      margin-bottom: 4.05rem !important; } }

.m-b-82 {
  margin-bottom: 82rem; }
  @media (max-width: 740px) {
    .m-b-82 {
      margin-bottom: 4.1rem !important; } }

.m-b-83 {
  margin-bottom: 83rem; }
  @media (max-width: 740px) {
    .m-b-83 {
      margin-bottom: 4.15rem !important; } }

.m-b-84 {
  margin-bottom: 84rem; }
  @media (max-width: 740px) {
    .m-b-84 {
      margin-bottom: 4.2rem !important; } }

.m-b-85 {
  margin-bottom: 85rem; }
  @media (max-width: 740px) {
    .m-b-85 {
      margin-bottom: 4.25rem !important; } }

.m-b-86 {
  margin-bottom: 86rem; }
  @media (max-width: 740px) {
    .m-b-86 {
      margin-bottom: 4.3rem !important; } }

.m-b-87 {
  margin-bottom: 87rem; }
  @media (max-width: 740px) {
    .m-b-87 {
      margin-bottom: 4.35rem !important; } }

.m-b-88 {
  margin-bottom: 88rem; }
  @media (max-width: 740px) {
    .m-b-88 {
      margin-bottom: 4.4rem !important; } }

.m-b-89 {
  margin-bottom: 89rem; }
  @media (max-width: 740px) {
    .m-b-89 {
      margin-bottom: 4.45rem !important; } }

.m-b-90 {
  margin-bottom: 90rem; }
  @media (max-width: 740px) {
    .m-b-90 {
      margin-bottom: 4.5rem !important; } }

.m-b-91 {
  margin-bottom: 91rem; }
  @media (max-width: 740px) {
    .m-b-91 {
      margin-bottom: 4.55rem !important; } }

.m-b-92 {
  margin-bottom: 92rem; }
  @media (max-width: 740px) {
    .m-b-92 {
      margin-bottom: 4.6rem !important; } }

.m-b-93 {
  margin-bottom: 93rem; }
  @media (max-width: 740px) {
    .m-b-93 {
      margin-bottom: 4.65rem !important; } }

.m-b-94 {
  margin-bottom: 94rem; }
  @media (max-width: 740px) {
    .m-b-94 {
      margin-bottom: 4.7rem !important; } }

.m-b-95 {
  margin-bottom: 95rem; }
  @media (max-width: 740px) {
    .m-b-95 {
      margin-bottom: 4.75rem !important; } }

.m-b-96 {
  margin-bottom: 96rem; }
  @media (max-width: 740px) {
    .m-b-96 {
      margin-bottom: 4.8rem !important; } }

.m-b-97 {
  margin-bottom: 97rem; }
  @media (max-width: 740px) {
    .m-b-97 {
      margin-bottom: 4.85rem !important; } }

.m-b-98 {
  margin-bottom: 98rem; }
  @media (max-width: 740px) {
    .m-b-98 {
      margin-bottom: 4.9rem !important; } }

.m-b-99 {
  margin-bottom: 99rem; }
  @media (max-width: 740px) {
    .m-b-99 {
      margin-bottom: 4.95rem !important; } }

.m-b-100 {
  margin-bottom: 100rem; }
  @media (max-width: 740px) {
    .m-b-100 {
      margin-bottom: 5rem !important; } }

/* mixinの定義 */
/*=================================================================================================================================*/
/**  共通クラス	*/
/*=================================================================================================================================*/
/*---------------------------------------------
	リセット
---------------------------------------------*/
article, aside, hgroup, header, address, figure, figcaption, ul, h1, h2, h3, h4, h5, h6, dl, dt, dd, ul, li, p {
  margin: 0;
  padding: 0; }

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

/*---------------------------------------------
 ** フォント
---------------------------------------------*/
.font-noto, body, .ttl-01 span, .ttl-02, .ttl-03, .ttl-04, .ttl-05, .ttl-06, .ttl-07, .top-text, .ttl-page span, .intro-page, .contents-area p span, .recruit-area h2, .address-area address p {
  font-family: "Noto Sans JP"; }

.font-noto-serif {
  font-family: 'Noto Serif JP', serif; }

.font-kosugi-maru {
  font-family: 'Kosugi Maru', sans-serif; }

.font-arial, .btn-02, .btn-04, .ttl-01, .ttl-page, .recruit-area .pretxt {
  font-family: "Arial"; }

.font-yu-min {
  font-family: YuMincho, "Yu Mincho", serif; }

/*---------------------------------------------
	html
---------------------------------------------*/
html {
  font-size: 62.5%;
  overflow-y: scroll; }
  @media (max-width: 900px) {
    html {
      font-size: calc(100vw / 88); } }
  @media (max-width: 740px) {
    html {
      font-size: calc(100vw / 44); } }

/*---------------------------------------------
	body
---------------------------------------------*/
body {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  line-height: 1.6;
  text-align: left;
  -webkit-text-size-adjust: 100%;
  color: #000;
  overflow-x: hidden; }

/*---------------------------------------------
**  p* パラグラフ
---------------------------------------------*/
p {
  line-height: 1.8; }

/*---------------------------------------------
 ** デバイス毎に消す
---------------------------------------------*/
@media (max-width: 740px) {
  .only_sp_none {
    display: none !important; } }
@media (max-width: 1200px) {
  .only_lt_none {
    display: none !important; } }
@media (min-width: 1200px) {
  .only_pc_none {
    display: none !important; } }
/*---------------------------------------------
**  col カラム
---------------------------------------------*/
.col-wrapper-full {
  width: 100%;
  max-width: 1920px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box; }

.col-wrapper {
  width: 90.5%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box; }
  .col-wrapper.col-2, .col-wrapper.col-3, .col-wrapper.col-4 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
  .col-wrapper:after {
    /* content: "."; */
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden; }

.col-2 > .item, .col-3 > .item, .col-4 > .item {
  width: 100%;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box; }

/* カラム下のマージン */
.col-2 > .item, .col-3 > .item, .col-4 > .item {
  /*  margin-bottom: 1.2rem;*/ }

@media (min-width: 740px) {
  .col-2 > .item, .col-3 > .item, .col-4 > .item {
    width: calc(99.9% / 2);
    /*      padding-left: 10px;
      padding-right: 10px;*/ } }
@media (min-width: 768px) {
  /*960px ～*/
  .col-2 > .item {
    width: calc((99.9% / 2)); }

  .col-3 > .item {
    width: calc((99.9% / 3)); }

  .col-4 > .item {
    width: calc((99.9% / 4)); } }
@media (max-width: 740px) {
  .col-2.col-sp > .item {
    width: calc((99.9% / 2)); }

  .col-3.col-sp > .item {
    width: calc((99.9% / 3)); }

  .col-4.col-sp > .item {
    width: calc((99.9% / 4)); } }
.col-change .main {
  order: 2; }
.col-change .sub {
  order: 1; }
@media (max-width: 740px) {
  .col-change .main, .col-change .sub {
    order: unset; } }

/*---------------------------------------------

 **  画面幅MAX背景
---------------------------------------------*/
.col-full-width {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding: 6rem 0 6rem; }

.col-full-width > .inner {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto; }

/*---------------------------------------------
 **  width 幅
---------------------------------------------*/
.w-a {
  width: auto !important; }

.mw-90 {
  max-width: 98rem; }

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

.txt-center {
  text-align: center; }

.txt-right {
  text-align: right; }

/* 文字サイズ */
.txt-size-14 {
  font-size: 1.4rem; }

.txt-size-16 {
  font-size: 1.6rem; }

.txt-size-18 {
  font-size: 1.8rem; }

.txt-size-20 {
  font-size: 2rem; }

.txt-size-30 {
  font-size: 3rem; }

/* 太字 */
.txt-fw-b {
  font-weight: bold; }

.tac {
  text-align: center; }

.tar {
  text-align: right; }

.tal {
  text-align: left; }

.txt-col-white {
  color: #FFF; }

.txt-color-pink {
  color: #D2147B !important; }

.txt-color-main {
  color: #004ea2 !important; }

/*---------------------------------------------
 **  p , m 余白
---------------------------------------------*/
.p-5per {
  padding: 5%; }

/* パディング下 */
.p-b-0 {
  padding-bottom: 0; }

/* パディング左右 */
.p-LR_0 {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.p-LR_10px {
  padding-left: 10px !important;
  padding-right: 10px !important; }

.p-LR_1per {
  padding-left: 1% !important;
  padding-right: 1% !important; }

.p-LR_2per {
  padding-left: 2% !important;
  padding-right: 2% !important; }

.p-LR_4per {
  padding-left: 4% !important;
  padding-right: 4% !important; }

.p-LR_3per {
  padding-left: 3% !important;
  padding-right: 3% !important; }

.p-LR_5per {
  padding-left: 5% !important;
  padding-right: 5% !important; }

.p-LR_6per {
  padding-left: 6% !important;
  padding-right: 6% !important; }

.p-LR_7per {
  padding-left: 7% !important;
  padding-right: 7% !important; }

.p-LR_8per {
  padding-left: 8% !important;
  padding-right: 8% !important; }

.p-LR_10per {
  padding-left: 10% !important;
  padding-right: 10% !important; }

.p-L-side {
  padding-left: 0 !important;
  padding-right: 20px !important; }

/* マージン */
/* top */
.m-t-15 {
  margin-top: 1.5rem; }

.m-t-100 {
  margin-top: 100px; }

/* bottom */
.m-b-0 {
  margin-bottom: 0 !important; }

.m-b-10 {
  margin-bottom: 1rem !important; }

.m-b-15 {
  margin-bottom: 1.5rem; }

.m-b-20 {
  margin-bottom: 2rem !important; }

.m-b-25 {
  margin-bottom: 2.5rem; }

.m-b-28 {
  margin-bottom: 2.8rem; }

.m-b-30 {
  margin-bottom: 3rem !important; }

.m-b-40 {
  margin-bottom: 4rem !important; }

.m-b-50 {
  margin-bottom: 5rem !important; }

.m-b-60 {
  margin-bottom: 6rem !important; }

.m-b-70 {
  margin-bottom: 7rem; }

.m-b-80 {
  margin-bottom: 8rem; }

.m-b-90 {
  margin-bottom: 9rem; }

/* 【 PC 】 768px ～ */
@media (min-width: 768px) {
  .m-b-0 {
    margin-bottom: 0; }

  .m-b-10 {
    margin-bottom: 1rem; }

  .m-b-20 {
    margin-bottom: 2rem; }

  .m-b-28 {
    margin-bottom: 2.8rem; }

  .m-b-30 {
    margin-bottom: 3rem; }

  .m-b-40 {
    margin-bottom: 4rem; }

  .m-b-50 {
    margin-bottom: 5rem; }

  .m-b-60 {
    margin-bottom: 6rem; }

  .m-b-70 {
    margin-bottom: 7rem; }

  .m-b-80 {
    margin-bottom: 8rem; }

  .m-b-90 {
    margin-bottom: 9rem; } }
.m-l-a {
  margin: unset !important;
  margin-left: auto !important; }

.m-r-a {
  margin: unset !important;
  margin-right: auto !important; }

.m-t-a {
  margin: unset !important;
  margin-top: auto !important; }

.m-b-a {
  margin: unset !important;
  margin-bottom: auto !important; }

.m-0-a {
  margin-left: auto;
  margin-right: auto; }

.mal {
  display: flex;
  justify-content: center;
  align-items: center; }

/*---------------------------------------------
**  flx フレックス
---------------------------------------------*/
.d-flex {
  display: flex; }

/* 順番入れ替え */
.flx-d-r {
  flex-direction: row; }

.flx-d-col {
  flex-direction: column; }

.flx-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }

/* flx 並び順 */
.flx-jst-left {
  justify-content: left !important; }

.flx-jst-Right {
  justify-content: Right !important; }

.flx-jst-center {
  justify-content: center; }

.flx-jst-between {
  justify-content: space-between; }

.flx-1 {
  flex: 1; }

/* flx 幅 */
@media (min-width: 768px) {
  /* flex-basis */
  .flx-base-1 {
    flex-basis: 10%; }

  .flx-base-10 {
    flex-basis: 10%; }

  .flx-base-12 {
    flex-basis: 12%; }

  .flx-base-18 {
    flex-basis: 18%; }

  .flx-base-25 {
    flex-basis: 25%; }

  .flx-base-3 {
    flex-basis: 30%; }

  .flx-base-34 {
    flex-basis: 34%; }

  .flx-base-35 {
    flex-basis: 35%; }

  .flx-base-38 {
    flex-basis: 38%; }

  .flx-base-40 {
    flex-basis: 40%; }

  .flx-base-45 {
    flex-basis: 45%; }

  .flx-base-47 {
    flex-basis: 47%; }

  .flx-base-5 {
    flex-basis: 50%; }

  .flx-base-53 {
    flex-basis: 53%; }

  .flx-base-55 {
    flex-basis: 55%; }

  .flx-base-6 {
    flex-basis: 60%; }

  .flx-base-62 {
    flex-basis: 62%; }

  .flx-base-63 {
    flex-basis: 63%; }

  .flx-base-65 {
    flex-basis: 65%; }

  .flx-base-66 {
    flex-basis: 66%; }

  .flx-base-68 {
    flex-basis: 68%; }

  .flx-base-7 {
    flex-basis: 70%; }

  .flx-base-73 {
    flex-basis: 73%; }

  .flx-base-75 {
    flex-basis: 75%; }

  .flx-base-8 {
    flex-basis: 80%; }

  .flx-base-83 {
    flex-basis: 83%; }

  .flx-base-85 {
    flex-basis: 85%; }

  .flx-base-88 {
    flex-basis: 88%; }

  .flx-base-9 {
    flex-basis: 90%; } }
/* ★切り分けたい */
/*---------------------------------------------
 **  max-w 最大幅
---------------------------------------------*/
.max-w-630 {
  max-width: 630px; }

.max-w-790 {
  max-width: 790px; }

.max-w-790 {
  max-width: 790px; }

.max-w-840 {
  max-width: 840px; }

.max-w-880 {
  max-width: 880px; }

.max-w-1100 {
  max-width: 1100px; }

/*---------------------------------------------
 **  img 画像
---------------------------------------------*/
.img-box img {
  width: 100%; }

.img-box-auto img {
  width: auto; }
  @media (max-width: 740px) {
    .img-box-auto img {
      width: 100%; } }

.img-large-L {
  margin-left: calc(-45vw + 100%);
  width: 45vw;
  max-height: 60rem; }
  .img-large-L img {
    max-width: 71.7rem;
    display: block; }

.img-large-R {
  margin-right: calc(-45vw + 100%);
  width: 45vw; }
  .img-large-R img {
    max-width: 71.7rem;
    display: block; }

@media (max-width: 740px) {
  .img-large-L, .img-large-R {
    width: 100%;
    margin-left: unset;
    margin-right: unset; } }

.form-select {
  padding: 1rem !important;
  font-size: 1.6rem;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px; }

.form-inpt {
  width: 70%;
  padding: .8rem 0.5rem;
  font-size: 1.6rem;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  border: 1px solid #707070; }
  @media (max-width: 740px) {
    .form-inpt {
      width: 95%; } }

/*---------------------------------------------
 **  lst リスト
---------------------------------------------*/
.list-base {
  list-style: none; }

.list-base li {
  list-style: none;
  font-size: 1.8rem; }

.list-base li:before {
  font-size: 1.5rem;
  top: 3px;
  left: 0px;
  color: #004ea2;
  content: "●";
  position: relative;
  margin-right: 0.5rem; }

/*---------------------------------------------
	Anchor
---------------------------------------------*/
a {
  outline: none;
  color: #FFF; }

a:link {
  text-decoration: none;
  text-decoration: underline; }

a:visited {
  text-decoration: none; }

a:hover {
  text-decoration: none; }

a:active {
  text-decoration: none; }

a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

/*---------------------------------------------
 ** ON OFF hover
---------------------------------------------*/
.hover {
  -webkit-transition: 0.3s ease-in-out !important;
  -moz-transition: 0.3s ease-in-out !important;
  -o-transition: 0.3s ease-in-out !important;
  transition: 0.3s ease-in-out !important; }

.hover:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )"; }

/*---------------------------------------------
 ** コンテンツ全体
---------------------------------------------*/
#main {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 2.5rem 0 2rem; }

/*---------------------------------------------
 **  btn ボタン
---------------------------------------------*/
.btn-base, .contact-form input[type="submit"], .contact-tel input[type="submit"] {
  padding: 1rem 5rem 1rem 3rem;
  margin: 0;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 1px;
  text-align: center;
  position: relative;
  text-decoration: none !important;
  -webkit-transition: all 0.6s;
  /* アニメーション */
  transition: all 0.6s;
  /* アニメーション */
  box-sizing: border-box;
  /*通常の記述*/
  -webkit-box-sizing: border-box;
  /*Google ChromeやSafariの機能を利用*/
  -moz-box-sizing: border-box;
  /*Firefoxの機能を利用*/
  z-index: 2;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }
  .btn-base:hover, .contact-form input[type="submit"]:hover, .contact-tel input[type="submit"]:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )"; }
  @media (max-width: 740px) {
    .btn-base, .contact-form input[type="submit"], .contact-tel input[type="submit"] {
      width: 90%;
      display: block;
      margin: 0 auto !important;
      padding: 1rem 2.5rem; } }

.btn-01, .contact-form input[type="submit"], .contact-tel input[type="submit"] {
  color: #FFF !important;
  background: #004ea2;
  width: inherit; }
  .btn-01:before, .contact-form input[type="submit"]:before, .contact-tel input[type="submit"]:before {
    font-family: "Font Awesome 5 Free";
    /* content: '\f138'; */
    font-weight: 900;
    font-size: 2rem;
    position: absolute;
    right: 5%;
    top: 1.1rem;
  margin-right: 1em; }
  .btn-01.back:before, .contact-form input.back[type="submit"]:before, .contact-tel input.back[type="submit"]:before {
    left: 10%;
    right: unset;
    /* content: '\f137';  */
  }

.btn-02 {
  font-weight: 900 !important;
  font-size: 2.6rem !important;
  padding: 0.8rem 0;
  color: #004ea2 !important;
  background: #FFF;
  border: 2px solid #004ea2;
  margin-bottom: 10px !important;
  display: block; }
  .btn-02:before {
    position: absolute;
    left: 0;
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background: url(../img/common/icon_tell.png) no-repeat;
    background-size: contain;
    top: 15px;
    left: 10px; }

.btn-03 {
  font-weight: 900 !important;
  font-size: 1.4rem !important;
  padding: 1.6rem 0 1.6rem 2rem;
  background: #004ea2;
  display: block; }
  .btn-03:before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_mail.png) no-repeat;
    background-size: contain;
    left: 10px; }

.btn-04 {
  font-size: 2.6rem !important;
  color: #000 !important;
  padding: 0.8rem 0;
  background: #FFF;
  margin-bottom: 10px !important; }
  @media (max-width: 1200px) {
    .btn-04 {
      content: '';
      color: #004ea2 !important;
      font-weight: 900 !important;
      border: 2px solid #004ea2;
      display: block;
      line-height: 1.2; }
      .btn-04:before {
        position: absolute;
        left: 0;
        content: "";
        display: inline-block;
        width: 30px;
        height: 30px;
        background: url(../img/common/icon_tell.png) no-repeat;
        background-size: contain;
        top: 30px;
        left: 10px; } }

@media (max-width: 1200px) {
  .font-tel {
    font-size: 2rem !important; } }

/*=================================================================================================================================*/
/**  アニメーション	*/
/*=================================================================================================================================*/
.effect-fade {
  /* ディレイ */ }
  .effect-fade.fadeInUp {
    opacity: 0;
    transform: translateY(30px);
    transition: 1s; }
  .effect-fade.fadeInDown {
    opacity: 0;
    transform: translateY(-30px);
    transition: 2s; }
  .effect-fade.fadeInDown {
    opacity: 0;
    transform: translateY(-30px);
    transition: 2s; }
  .effect-fade.SlideInLeft {
    opacity: 0;
    transform: translateX(-30px);
    transition: 2s; }
  .effect-fade.SlideInRight {
    opacity: 0;
    transform: translateX(30px);
    transition: 2s; }
  .effect-fade.FadeIn {
    opacity: 0;
    transform: translateX(-30px);
    transition: 2s; }
  .effect-fade.delay-lv1 {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s; }
  .effect-fade.delay-lv2 {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s; }
  .effect-fade.delay-lv3 {
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s; }

/*=================================================================================================================================*/
/**  サイト別　共通クラス	*/
/*=================================================================================================================================*/
/*---------------------------------------------
**  h* 見出し
---------------------------------------------*/
h1 {
  font-size: 3rem; }

/* 30px */
h2 {
  font-size: 2.8rem;
  letter-spacing: 2px; }
  @media (max-width: 740px) {
    h2 {
      font-size: 2.4rem;
      letter-spacing: .0em; } }

h3 {
  font-size: 2rem;
  letter-spacing: 2px; }
  @media (max-width: 740px) {
    h3 {
      font-size: 1.8rem; } }

h4 {
  font-size: 1.8rem; }

h5 {
  font-size: 1rem; }

h6 {
  font-size: 1rem; }

/*---------------------------------------------
 **  装飾
---------------------------------------------*/
.ttl-01 {
  color: #004ea2;
  font-size: 4rem;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 10px; }
  @media (max-width: 740px) {
    .ttl-01 {
      display: flex;
      justify-content: left;
      align-items: center;
      flex-direction: column;
      font-size: 13vw; } }
  .ttl-01 span {
    display: block;
    font-size: 2rem;
    color: #004ea2; }
    @media (max-width: 740px) {
      .ttl-01 span {
        margin-bottom: 2rem; } }

.ttl-02 {
  font-size: 3rem;
  display: flex;
  justify-content: left;
  align-items: center; }
  .ttl-02 span {
    font-size: 2rem;
    color: #004ea2;
    margin-left: 0.5em; }

.ttl-03 {
  font-size: 3.5rem;
  display: flex;
  justify-content: left;
  align-items: center;
  width: max-content;
  color: #004ea2;
  border-bottom: solid 2px #004ea2; }
  @media (max-width: 740px) {
    .ttl-03 {
      flex-direction: column;
      font-size: 8vw; } }

.ttl-04 {
  font-size: 2.5rem;
  margin: 2rem 0;
  display: flex;
  justify-content: left;
  align-items: center;
  line-height: 1.1; }
  @media (max-width: 740px) {
    .ttl-04 {
      flex-direction: column;
      font-size: 5vw; } }

.ttl-05 {
  font-size: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #004ea2; }
  @media (max-width: 740px) {
    .ttl-05 {
      flex-direction: column;
      font-size: 10vw; } }

.ttl-06 {
  font-size: 3.5rem;
  display: flex;
  justify-content: left;
  align-items: center;
  color: #004ea2;
  margin-top: -12rem; }
  @media (max-width: 740px) {
    .ttl-06 {
      margin-top: 0;
      flex-direction: column;
      font-size: 8vw; } }

.ttl-07 {
  font-size: 3.5rem;
  display: flex;
  justify-content: left;
  align-items: center;
  color: #004ea2; }
  @media (max-width: 740px) {
    .ttl-07 {
      flex-direction: column;
      font-size: 6vw; } }

/*---------------------------------------------
 **  テーブル
---------------------------------------------*/
.table-base {
  width: 100%;
  border-collapse: collapse; }
  .table-base, .table-base th, .table-base td {
    border: 1px solid #004ea2; }
  .table-base th, .table-base td {
    padding: 1.5rem; }

/*---------------------------------------------
 ** トップイメージ
---------------------------------------------*/
#top-img {
  width: 100%;
  height: 740px;
  margin: 0;
  padding: 0;
  background-image: url("../img/common/triangle-front.svg"), url("../img/common/triangle-nav-front.svg"), url("../img/main-img/front-main.jpg");
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% auto, 100% auto, cover;
  background-position: left bottom, right top, center;
  overflow: hidden; }
  @media (max-width: 1200px) {
    #top-img {
      background-image: url("../img/common/triangle-front.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/main-img/front-main.jpg"); } }
  @media (max-width: 740px) {
    #top-img {
      height: 400px !important;
      background-image: url("../img/common/triangle-front.svg"), url("../img/common/triangle-nav-sp-front.svg"), url("../img/main-img/front-main.jpg");
      background-size: 100% auto, 100% auto, cover !important; } }

.top-text {
  font-size: 5rem;
  font-weight: 900;
  line-height: 1.8;
  color: #FFF;
  letter-spacing: 20px;
  position: absolute;
  top: 300px;
  left: 40px; }
  @media (max-width: 740px) {
    .top-text {
      top: 180px;
      left: 20px;
      font-size: 4rem;
      line-height: 1.4;
      letter-spacing: 10px; } }

/*---------------------------------------------
 ** ヘッダー
---------------------------------------------*/
/*ーーーーーーーーーー
.header
ーーーーーーーーーーー*/
#head_wrap {
  top: -90px;
  position: relative;
  width: 100%;
  margin: 100px auto 0;
  line-height: 1;
  z-index: 999;
  height: 0px;
  text-decoration: none; }
  #head_wrap a {
    text-decoration: none; }
  #head_wrap .inner {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    position: relative; }
    #head_wrap .inner:after {
      content: "";
      clear: both;
      display: block; }
  #head_wrap .logo {
    letter-spacing: 4px;
    display: flex;
    align-items: center; }
    #head_wrap .logo a img {
      float: left;
      width: 60px;
      padding: 10px 10px 0 40px; }

#global-nav {
  position: absolute;
  right: 0;
  top: 0; }
  @media (max-width: 1200px) {
    #global-nav {
      top: 70px;
      margin-right: 20px; } }
  #global-nav ul {
    list-style: none;
    font-size: 14px;
    margin-right: 10px;
    display: inline-flex; }
    @media (max-width: 740px) {
      #global-nav ul {
        display: block;
        margin-right: 0px; } }
    #global-nav ul li {
      padding: 20px 10px; }
      #global-nav ul li:last-child {
        border-right: none; }
      @media (max-width: 740px) {
        #global-nav ul li {
          border-right: none; } }
      #global-nav ul li a {
        padding: 0 5px;
        padding: 2px;
        transition: all .6s ease 0s;
        box-sizing: border-box;
        font-weight: bold;
        color: #FFF; }
        #global-nav ul li a:hover {
          color: #FFF;
          opacity: 0.6;
          filter: alpha(opacity=60);
          -ms-filter: "alpha( opacity=60 )"; }

/* Fixed */
#head_wrap.fixed {
  margin-top: 0;
  top: 0;
  position: fixed;
  height: 100px;
  transition: top 0.65s ease-in;
  -webkit-transition: top 0.65s ease-in;
  -moz-transition: top 0.65s ease-in;
  z-index: 9999; }

#global-nav ul li a {
  color: #FFF;
  padding: 0 15px; }

/* Toggle Button */
#nav-toggle {
  display: none;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 34px;
  height: 36px;
  cursor: pointer;
  z-index: 101; }
  #nav-toggle div {
    position: relative; }

@media (max-width: 740px) {
  #head_wrap {
    top: 0;
    position: fixed;
    margin-top: 0;
    width: 100%;
    padding: 0;
    /* Fixed reset */ }
    #head_wrap .inner {
      width: 100%;
      padding: 0; }
    #head_wrap .fixed {
      padding-top: 0;
      background: transparent; }

  #mobile-head {
    background: #004ea2;
    width: 100%;
    height: 56px;
    z-index: 999;
    position: relative; }

  #head_wrap.fixed .logo, #head_wrap .logo {
    position: absolute;
    font-size: 2.5rem; }
    #head_wrap.fixed .logo a img, #head_wrap .logo a img {
      width: 40px;
      padding: 8px 10px 0 10px; }

  #global-nav {
    position: absolute;
    top: -500px;
    background: #004ea2;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
    width: 100%;
    text-align: center;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    left: 0; }
    #global-nav ul {
      list-style: none;
      position: static;
      right: 0;
      bottom: 0;
      font-size: 14px;
      margin-top: 20px; }
      #global-nav ul li {
        float: none;
        position: static; }

  #head_wrap #global-nav ul li a, #head_wrap.fixed #global-nav ul li a {
    width: 100%;
    display: block;
    padding: 5px 0; }

  #nav-toggle {
    display: block; }

  #nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out; }
    #nav-toggle span:nth-child(1) {
      top: 0; }
    #nav-toggle span:nth-child(2) {
      top: 11px; }
    #nav-toggle span:nth-child(3) {
      top: 22px; }

  .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg); }
  .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%; }
  .open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg); }

  /* #global-nav スライドアニメーション */
  .open #global-nav {
    /* #global-nav top + #mobile-head height */
    -moz-transform: translateY(556px);
    -webkit-transform: translateY(556px);
    transform: translateY(556px); } }
/*---------------------------------------------
 **  タイトル画像
---------------------------------------------*/
.ttl-page {
  color: #004ea2;
  font-size: 7rem;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 10px;
  text-align: center; }
  @media (max-width: 1200px) {
    .ttl-page {
      line-height: 1.1; } }
  @media (max-width: 740px) {
    .ttl-page {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      font-size: 13vw;
      margin-top: 30%; } }
  .ttl-page span {
    display: block;
    font-size: 4rem;
    font-weight: 900;
    color: #004ea2;
    text-align: center; }
    @media (max-width: 1200px) {
      .ttl-page span {
        line-height: 1.1;
        -webkit-text-stroke: 0px;
        text-stroke: 0px; } }
    @media (max-width: 740px) {
      .ttl-page span {
        font-size: 6vw;
        margin-bottom: 1rem; } }

.intro-page {
  font-size: 3rem;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.2rem; }
  @media (max-width: 1200px) {
    .intro-page {
      font-size: 2rem; } }
  @media (max-width: 740px) {
    .intro-page {
      font-size: 4vw; } }

.about-txt {
  margin-top: 30%; }
  @media (max-width: 1200px) {
    .about-txt {
      margin-top: 20%;
      -webkit-text-stroke: 1px #F0F0F0;
      text-stroke: 1px #F0F0F0; } }
  @media (max-width: 740px) {
    .about-txt {
      margin-top: 40%;
      -webkit-text-stroke: 0px;
      text-stroke: 0px; } }

.company-txt, .contact-txt, .notfound-txt {
  margin-top: 50%; }
  @media (max-width: 1200px) {
    .company-txt, .contact-txt, .notfound-txt {
      margin-top: 30%; } }
  @media (max-width: 740px) {
    .company-txt, .contact-txt, .notfound-txt {
      margin-top: 40%; } }

.service-txt {
  margin-top: 30%; }
  @media (max-width: 1200px) {
    .service-txt {
      margin-top: 20%; } }
  @media (max-width: 740px) {
    .service-txt {
      margin-top: 20%; } }

.recruit-txt {
  margin-top: 0; }
  @media (max-width: 1200px) {
    .recruit-txt {
      margin-top: 0; } }
  @media (max-width: 740px) {
    .recruit-txt {
      margin-top: 0; } }

.fontwhite {
  color: #FFF; }
  .fontwhite span {
    color: #FFF; }

#ttl-img {
  width: 100%;
  padding: 0;
  overflow: hidden; }

.ttl-area {
  flex-basis: 40%;
  text-align: center; }
  @media (max-width: 740px) {
    .ttl-area {
      flex-basis: 100%; } }

.bg-about {
  min-height: 740px;
  background-image: url("../img/about/hat.png"), url("../img/common/triangle-about.svg"), url("../img/common/triangle-nav.svg"), url("../img/about/about-ttl.gif");
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-size: 35% auto, 100% auto, 100% auto, cover;
  background-position: 5% 40%, left top, right top, center bottom; }
  @media (max-width: 1200px) {
    .bg-about {
      min-height: 500px !important;
      background-image: url("../img/about/hat.png"), url("../img/common/triangle-about.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/about/about-ttl.gif");
      background-position: 5% 60%, left top, right top, center bottom; } }
  @media (max-width: 740px) {
    .bg-about {
      min-height: 300px !important;
      background-image: url("../img/about/hat.png"), url("../img/common/triangle-about-sp.svg"), url("../img/common/triangle-nav-sp.svg"), url("../img/about/about-ttl.gif");
      background-size: 20% auto, 100% auto, 100% auto, cover;
      background-position: 5% 25%, left top, right top, center bottom;
      background-size: 35% auto, 100% auto, 100% auto, cover !important; } }

.bg-service {
  min-height: 740px;
  background-image: url("../img/common/triangle-nav.svg"), url("../img/service/service_ttl.jpg");
  background-repeat: no-repeat, no-repeat;
  background-size: 100% auto, cover;
  background-position: right top, center; }
  @media (max-width: 1200px) {
    .bg-service {
      min-height: 500px !important;
      background-image: url("../img/common/triangle-nav-tb.svg"), url("../img/service/service_ttl.jpg"); } }
  @media (max-width: 740px) {
    .bg-service {
      min-height: 300px !important;
      background-image: url("../img/common/triangle-nav-sp.svg"), url("../img/service/service_ttl.jpg");
      background-size: 100% auto, cover !important; } }

.bg-company {
  min-height: 740px;
  margin-bottom: 80px;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% auto, 100% auto, cover;
  background-position: left top, right top, center;
  background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav.svg"), url("../img/company/company_ttl.jpg"); }
  @media (max-width: 1200px) {
    .bg-company {
      min-height: 500px !important;
      background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/company/company_ttl.jpg"); } }
  @media (max-width: 740px) {
    .bg-company {
      min-height: 300px !important;
      background-size: 100% auto, 100% auto, cover !important;
      background-image: url("../img/common/triangle-lefttop-sp.svg"), url("../img/common/triangle-nav-sp.svg"), url("../img/company/company_ttl.jpg"); } }

.bg-news {
  min-height: 740px;
  margin-bottom: 80px;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% auto, 100% auto, cover;
  background-position: left top, right top, center;
  background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav.svg"), url("../img/company/company_ttl.jpg"); }
  @media (max-width: 1200px) {
    .bg-company {
      min-height: 500px !important;
      background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/company/company_ttl.jpg"); } }
  @media (max-width: 740px) {
    .bg-company {
      min-height: 300px !important;
      background-size: 100% auto, 100% auto, cover !important;
      background-image: url("../img/common/triangle-lefttop-sp.svg"), url("../img/common/triangle-nav-sp.svg"), url("../img/company/company_ttl.jpg"); } }

.bg-recruit {
  min-height: 900px !important;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% auto, 100% auto, cover;
  background-position: left top, right top, center;
  background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav.svg"), url("../img/recruit/recruit_ttl.jpg"); }
  @media (max-width: 1200px) {
    .bg-recruit {
      min-height: 500px !important;
      background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/recruit/recruit_ttl.jpg"); } }
  @media (max-width: 740px) {
    .bg-recruit {
      min-height: 300px !important;
      background-image: url("../img/common/triangle-lefttop-sp.svg"), url("../img/common/triangle-nav-sp.svg"), url("../img/recruit/recruit_ttl.jpg"); } }
  .bg-recruit .ttl-area {
    bottom: 0;
    right: 0;
    background-color: #FFF;
    padding: 2rem;
    margin-top: 460px; }
    @media (max-width: 1200px) {
      .bg-recruit .ttl-area {
        margin-top: 260px; } }
    @media (max-width: 740px) {
      .bg-recruit .ttl-area {
        margin-top: 20%; } }
  .bg-recruit .intro-page {
    letter-spacing: 0; }

.bg-contact {
  min-height: 740px;
  margin-bottom: 80px;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% auto, 100% auto, cover;
  background-position: left top, right top, center;
  background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav.svg"), url("../img/contact/contact_ttl.jpg"); }
  @media (max-width: 1200px) {
    .bg-contact {
      min-height: 500px !important;
      background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/contact/contact_ttl.jpg"); } }
  @media (max-width: 740px) {
    .bg-contact {
      min-height: 300px !important;
      background-size: 100% auto, 100% auto, cover !important;
      background-image: url("../img/common/triangle-lefttop-sp.svg"), url("../img/common/triangle-nav-sp.svg"), url("../img/contact/contact_ttl.jpg"); } }

.bg- {
  min-height: 740px;
  margin-bottom: 80px;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% auto, 100% auto, cover;
  background-position: left top, right top, center;
  background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav.svg"), url("../img/notfound/notfound_ttl.jpg"); }
  @media (max-width: 1200px) {
    .bg- {
      min-height: 500px !important;
      background-image: url("../img/common/triangle-lefttop.svg"), url("../img/common/triangle-nav-tb.svg"), url("../img/notfound/notfound_ttl.jpg"); } }
  @media (max-width: 740px) {
    .bg- {
      min-height: 300px !important;
      background-size: 100% auto, 100% auto, cover !important;
      background-image: url("../img/common/triangle-lefttop-sp.svg"), url("../img/common/triangle-nav-sp.svg"), url("../img/notfound/notfound_ttl.jpg"); } }

/*---------------------------------------------
 ** フッター記述
---------------------------------------------*/
#footer {
  padding-top: 3rem;
  background: #004ea2;
  color: #FFF;
  position: relative; }
  @media (max-width: 740px) {
    #footer {
      padding-top: 0; } }

/*---------------------------------------------
 ** フッターナビ
---------------------------------------------*/
#footer-nav {
  margin: 0; }
  #footer-nav ul {
    display: flex;
    justify-content: space-between;
    list-style: none;
    margin: 0 auto;
    padding: 0;
    width: 70%; }
    #footer-nav ul li {
      flex: 1; }
      #footer-nav ul li a {
        color: #FFF;
        display: block;
        padding: 0.6em 0.4em;
        font-weight: 400;
        text-align: center;
        text-decoration: none; }
        #footer-nav ul li a:hover {
          opacity: 0.6;
          filter: alpha(opacity=60);
          -ms-filter: "alpha( opacity=60 )"; }

@media (max-width: 740px) {
  #footer-nav ul {
    flex-wrap: wrap;
    width: 100%; }
    #footer-nav ul li {
      font-size: 1.4rem;
      flex: auto;
      width: 50%; }
      #footer-nav ul li a {
        border-bottom: 1px solid #f4f4f4; }
      #footer-nav ul li:nth-child(odd) a {
        border-right: 1px solid #f4f4f4; } }
/*---------------------------------------------
 **  コピーライト
---------------------------------------------*/
#copyright {
  font-size: 0.8em;
  width: 100%;
  text-align: center;
  letter-spacing: 1px;
  padding: 3rem 0; }

/*---------------------------------------------
 **  ページトップ
---------------------------------------------*/
#pageTop {
  position: fixed;
  right: 10px;
  bottom: 70px;
  z-index: 999; }
  @media (max-width: 740px) {
    #pageTop {
      right: 10px;
      bottom: 10px;
      border: 1px solid #fff; } }
  #pageTop a {
    color: #FFF !important;
    background: #004ea2;
    padding: 2.75rem 1rem 1rem;
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: 3px;
    line-height: 1.5rem;
    display: block;
    text-align: center !important;
    text-decoration: none !important;
    -webkit-transition: all 0.6s;
    /* アニメーション */
    transition: all 0.6s;
    /* アニメーション */
    box-sizing: border-box;
    /*通常の記述*/
    -webkit-box-sizing: border-box;
    /*Google ChromeやSafariの機能を利用*/
    -moz-box-sizing: border-box;
    /*Firefoxの機能を利用*/
    z-index: 2;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }
    #pageTop a:before {
      font-family: "Font Awesome 5 Free";
      content: '\f139';
      font-weight: 900;
      font-size: 1.5rem;
      position: absolute;
      top: 0.8rem;
      right: 2.2rem; }
    #pageTop a:hover {
      opacity: 0.6;
      filter: alpha(opacity=60);
      -ms-filter: "alpha( opacity=60 )"; }
    @media (max-width: 740px) {
      #pageTop a {
        margin: 0 auto !important; } }

/*---------------------------------------------
 **  トップ - item-box 背景
---------------------------------------------*/
.bg-img-01 {
  background-image: url(../img/top/sec_01.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative; }

.bg-img-02 {
  background-image: url(../img/top/sec_02.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }

.hat {
  position: absolute;
  left: 0;
  top: -40px;
  width: 40%; }

.contents-area {
  padding: 2.8rem;
  margin-top: 3rem;
  margin-bottom: 5rem; }
  .contents-area h2 span {
    display: block !important; }
  .contents-area p {
    letter-spacing: 1px; }
    .contents-area p span {
      display: block;
      font-size: 2rem; }
      @media (max-width: 740px) {
        .contents-area p span {
          text-align: center; } }

.bg-white {
  background: #FFF; }

.flx-jst-Start {
  justify-content: flex-start; }

.flx-jst-End {
  justify-content: flex-end; }

/*---------------------------------------------
 **  トップ - 警備員募集
---------------------------------------------*/
.recruit-area {
  padding: 2.5rem;
  margin-top: 12rem;
  margin-bottom: 0;
  position: relative;
  min-width: 380px; }
  @media (max-width: 740px) {
    .recruit-area {
      margin-top: 10rem;
      min-width: inherit; } }
  .recruit-area .pretxt {
    font-size: 7rem;
    color: #f4f4f4;
    font-weight: 900;
    position: absolute;
    left: -30px;
    top: -60px; }
    @media (max-width: 740px) {
      .recruit-area .pretxt {
        left: -20px; } }
  .recruit-area h2 {
    font-size: 6rem;
    position: absolute;
    top: 0;
    z-index: 1;
    white-space: nowrap; }
    @media (max-width: 740px) {
      .recruit-area h2 {
        font-size: 5.5rem; } }
  .recruit-area p {
    margin-top: 60px;
    font-size: 2rem;
    font-weight: 900; }
  .recruit-area .circle {
    display: inline-block;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #3e3a39;
    text-align: center;
    font-size: 2.5rem;
    line-height: 1.2;
    color: #eeda00;
    font-weight: 900;
    padding-top: 30px;
    box-sizing: border-box;
    position: absolute;
    right: 0;
    bottom: -60px;
    z-index: 1; }
    @media (max-width: 740px) {
      .recruit-area .circle {
        width: 90px !important;
        height: 90px !important;
        font-size: 2rem;
        padding-top: 25px; } }
    .recruit-area .circle span {
      display: block; }

/*---------------------------------------------
 ** トップ - 住所
---------------------------------------------*/
.address-area {
  padding: 2.5rem;
  margin-top: 0;
  margin-bottom: 0; }
  @media (max-width: 740px) {
    .address-area {
      margin-top: 10rem; } }
  @media (max-width: 740px) {
    .address-area .address-logo {
      text-align: center; } }
  .address-area .address-logo img {
    width: 100px !important;
    height: 100px !important; }
  .address-area address {
    font-style: normal;
    font-weight: 900; }
    .address-area address p {
      letter-spacing: 3px;
      font-size: 2.5rem;
      font-weight: 900; }
      @media (max-width: 740px) {
        .address-area address p {
          text-align: center; } }
  .address-area ul.address-list {
    list-style: none;
    margin: 0;
    padding: 0; }
    .address-area ul.address-list li {
      display: block;
      padding: 0 0.8rem; }
      .address-area ul.address-list li a {
        color: #000;
        text-decoration: none; }
        .address-area ul.address-list li a:hover {
          color: #000; }

/*---------------------------------------------
 **  トップ - お問い合わせ
---------------------------------------------*/
.contact-area {
  display: flex;
  flex-direction: row;
  justify-content: flex-end; }
  @media (max-width: 740px) {
    .contact-area {
      flex-direction: column; } }

.info-area {
  padding: 2.5rem 2.5rem 0 0;
  margin-top: 0;
  margin-bottom: 0; }
  @media (max-width: 740px) {
    .info-area {
      margin-top: 10rem; }
      .info-area p {
        text-align: center; } }

.button-area {
  padding: 2.5rem 0 0 0;
  margin-top: 0;
  margin-bottom: 0;
  min-width: 300px; }
  @media (max-width: 740px) {
    .button-area {
      padding-top: 0;
      margin-bottom: 10rem; } }

/*---------------------------------------------
 **  ページ背景
---------------------------------------------*/
.bg-triangleL {
  background-image: url("../img/common/triangle-top.svg"), url("../img/common/triangle-bottom.svg");
  background-position: center top, center bottom;
  background-repeat: no-repeat, no-repeat;
  background-size: 100% auto, 100% auto;
  background-color: #f4f4f4; }

.bg-triangleR {
  background-image: url("../img/common/triangle-top-r.svg"), url("../img/common/triangle-bottom-r.svg");
  background-position: center top, center bottom;
  background-repeat: no-repeat, no-repeat;
  background-size: 100% auto, 100% auto;
  background-color: #f4f4f4; }

.inversion {
  transform: scale(-1, 1); }

.bg-bottom {
  background-image: url("../img/common/pattern_bottom.gif");
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 80px; }

/*---------------------------------------------
 **  当社の取り組み
---------------------------------------------*/
.about-area {
  background-color: #FFF;
  margin-left: 2rem; }
  .about-area .about-photo {
    position: relative;
    margin: 0;
    padding: 0; }
    .about-area .about-photo img {
      vertical-align: bottom; }
    .about-area .about-photo .about-num {
      position: absolute;
      color: #eeda00;
      font-size: 8rem;
      font-weight: 900;
      bottom: -3.5rem;
      left: -1rem;
      z-index: 10; }
  .about-area h2 {
    position: relative;
    padding: 0.5rem 0.5rem 0.5rem 4.5rem;
    background: #004ea2;
    color: white;
    margin: 0 0 0 -2rem; }
  .about-area h2:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 1.5rem transparent;
    border-right: solid 1.5rem #002888; }
  .about-area h3 {
    padding: 3rem 3rem 0 3rem; }
  .about-area p {
    padding: 3rem; }

/*---------------------------------------------
 **  事業案内
---------------------------------------------*/
.service-wrap {
  background-repeat: no-repeat;
  background-size: 60% auto;
  position: relative; }
  @media (max-width: 1200px) {
    .service-wrap {
      background-size: 100% auto; } }
  .service-wrap .service-area {
    background-color: #FFF;
    box-shadow: 0 0 1rem #353940;
    flex-basis: 55%;
    margin: 6rem 0 0 0;
    padding: 4rem;
    min-height: 520px;
    box-sizing: border-box; }
    @media (max-width: 1200px) {
      .service-wrap .service-area {
        flex-basis: 96%;
        margin-top: 400px;
        margin-left: 2%;
        margin-right: 2%;
        padding: 2rem 2rem 10rem;
        min-height: inherit; } }
    @media (max-width: 740px) {
      .service-wrap .service-area {
        margin-top: 200px; } }
  .service-wrap .btn-positionR {
    margin-top: 1rem !important;
    position: absolute;
    bottom: 0;
    right: 0; }
    @media (max-width: 1200px) {
      .service-wrap .btn-positionR {
        width: 90% !important;
        bottom: 2rem;
        right: 5% !important;
        left: 5% !important; } }
  .service-wrap .btn-positionL {
    margin-top: 1rem !important;
    position: absolute;
    bottom: 0;
    left: 0; }
    @media (max-width: 1200px) {
      .service-wrap .btn-positionL {
        width: 90% !important;
        bottom: 2rem;
        right: 5% !important;
        left: 5% !important; } }

.service-bgL {
  background-position: left top; }

.service-bgR {
  background-position: right top; }

.service-bg01 {
  background-image: url("../img/service/service01.jpg"); }

.service-bg02 {
  background-image: url("../img/service/service02.jpg"); }

.service-bg03 {
  background-image: url("../img/service/service03.jpg"); }

.service-bg04 {
  background-image: url("../img/service/service04.jpg"); }

.flow-area {
  background-color: #d6e9c4;
  box-shadow: 0 0 1rem #353940;
  padding: 2rem 4rem;
  box-sizing: border-box; }
  @media (max-width: 1200px) {
    .flow-area {
      padding: 4rem; } }
  .flow-area .flow-list {
    padding: 0 3% 0 0;
    position: relative;
    width: 16%; }
    .flow-area .flow-list:before {
      font-family: "Font Awesome 5 Free";
      content: '\f054';
      font-weight: 900;
      font-size: 2rem;
      position: absolute;
      right: 0;
      top: 10rem;
      color: #004ea2; }
    @media (max-width: 1200px) {
      .flow-area .flow-list {
        padding: 0 0 4rem 0;
        width: 100%; }
        .flow-area .flow-list:before {
          font-size: 0rem; } }
  .flow-area .flow-list:last-child {
    padding: 0; }
    .flow-area .flow-list:last-child:before {
      font-size: 0rem; }
  .flow-area .flow-box {
    background-color: #FFF;
    text-align: center;
    padding: 2rem 0;
    position: relative; }
    @media (max-width: 1200px) {
      .flow-area .flow-box {
        padding: 0;
        display: flex;
        align-items: center; } }
    .flow-area .flow-box .number {
      position: absolute;
      height: 4rem;
      width: 4rem;
      border-radius: 50%;
      line-height: 4rem;
      background: #004ea2;
      font-size: 2rem;
      color: #FFF;
      top: -2rem;
      left: 0;
      right: 0;
      margin: auto; }
      @media (max-width: 1200px) {
        .flow-area .flow-box .number {
          top: 0;
          bottom: 0;
          left: 1rem;
          right: auto; } }
    .flow-area .flow-box .flow-img {
      width: 100%;
      height: 150px;
      align-items: center;
      justify-content: center; }
      @media (max-width: 1200px) {
        .flow-area .flow-box .flow-img {
          padding: 0.5rem 1rem 0.5rem 4rem;
          margin-left: 1rem;
          height: auto; } }
    .flow-area .flow-box p {
      font-weight: 900;
      line-height: 1.2; }
      @media (max-width: 1200px) {
        .flow-area .flow-box p {
          text-align: left;
          padding: 3rem 3rem 3rem 0 !important; } }

/*---------------------------------------------
 **  会社概要
---------------------------------------------*/
dl.companyinfo {
  display: flex;
  flex-wrap: wrap; }
  dl.companyinfo dt {
    width: 30%;
    padding: 4rem 0;
    box-sizing: border-box;
    border-bottom: 1px solid #353940;
    font-weight: 900; }
  dl.companyinfo dd {
    width: 70%;
    padding: 4rem 0;
    margin: 0;
    border-bottom: 1px solid #353940;
    box-sizing: border-box; }

/*---------------------------------------------
 **  お問い合わせフォーム
---------------------------------------------*/
.contact-form, .contact-tel {
  max-width: 90rem;
  padding: 6rem 8rem 2rem;
  background: #FFF; }
  @media (max-width: 740px) {
    .contact-form, .contact-tel {
      padding: 6% 5%; } }
  .contact-form dl, .contact-tel dl {
    display: flex;
    justify-content: space-between;
    padding: 1rem;
    padding-bottom: 2.7rem;
    margin-bottom: 1.3rem;
    flex-direction: column;
    border-bottom: 1px solid #eee; }
    .contact-form dl dt, .contact-tel dl dt {
      font-size: 2rem;
      font-size: 1.6rem;
      margin-bottom: 1.5rem;
      font-weight: bold;
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      .contact-form dl dt span, .contact-tel dl dt span {
        display: inline-block;
        background: #D7000E;
        color: #FFF;
        font-size: 1.1rem;
        padding: 0 1.0rem .2rem;
        margin-left: 1rem;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px; }
    .contact-form dl dd input, .contact-tel dl dd input, .contact-form dl dd textarea, .contact-tel dl dd textarea, .contact-form dl dd select, .contact-tel dl dd select {
      width: 100%;
      padding: 1.2rem 1.3rem 1.1rem;
      font-size: 1.6rem;
      -moz-border-radius: 6px;
      -webkit-border-radius: 6px;
      border-radius: 6px;
      border: 1px solid #CCC;
      box-sizing: border-box;
      /*通常の記述*/
      -webkit-box-sizing: border-box;
      /*Google ChromeやSafariの機能を利用*/
      -moz-box-sizing: border-box;
      /*Firefoxの機能を利用*/ }
    .contact-form dl dd input::placeholder, .contact-tel dl dd input::placeholder {
      color: #CCC; }
  .contact-form .wpcf7-not-valid-tip, .contact-tel .wpcf7-not-valid-tip {
    padding: 0.5rem 0 0 0.5rem; }
  .contact-form input[type="submit"], .contact-tel input[type="submit"] {
    border: none;
    cursor: pointer;
    max-width: 32rem;
    width: 100%; }
  .contact-form input[type="radio"], .contact-tel input[type="radio"] {
    width: unset; }
  .contact-form label, .contact-tel label {
    cursor: pointer; }
  .contact-form input:checked + span, .contact-tel input:checked + span {
    color: #487cff;
    font-weight: bold; }
  .contact-form .clinic-open input, .contact-tel .clinic-open input {
    max-width: 20rem; }

.contact-tel {
  padding: 4rem 8rem 4rem; }

/*
theme Name: お知らせ投稿システム
Author: 有限会社ネスト
Description: original theme
version： 1.0.0
*/
#sidebar {
  font-size: 80%; }

#sidebar ul {
  margin: 0;
  padding: 0;
  list-style: none; }

#sidebar ul li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-weight: 900;
  color: #333;
  margin-right: 0.5rem; }

/*=================================================================================================================================*/
/**  PC	*/
/*=================================================================================================================================*/
@media (min-width: 768px) {
  /* お知らせページ  */
  #main_contents {
    width: 68%; }

  #sidebar {
    width: 28%; } }
/*=================================================================================================================================*/
/**  SP	*/
/*=================================================================================================================================*/
@media (max-width: 767px) {
  /* お知らせページ  */
  #main_contents {
    padding-top: 0;
    padding-bottom: 20px; } }
/*=================================================================================================================================*/
/**  共通	*/
/*=================================================================================================================================*/
/* お知らせページ  */
#wp_container p {
  margin-bottom: 1.36em !important; }

@media (max-width: 767px) {
  #wp_container {
    margin: 0 auto;
    margin-bottom: 80px;
    _zoom: 1;
    overflow: hidden; } }
.kiji-info {
  margin-bottom: 5px; }

.kiji-date {
  font-size: 14px; }

.text {
  margin-bottom: 6rem;
  border-bottom: 2px dashed #CCC;
  padding-bottom: 4rem; }

h2.news_single_h2 {
  margin-bottom: 40px; }

.kiji-list{
  margin-bottom: 60px;
}

/*=================================================================================================================================*/
/**  タグ	*/
/*=================================================================================================================================*/
.kiji-tag {
  text-align: right;
  margin-top: 50px; }

.kiji-tag li {
  display: inline-block;
  color: #464646;
  margin-bottom: 7px; }

.kiji-tag li a {
  font-size: 0.8em;
  margin-right: 7px;
  padding: 2px 7px;
  text-decoration: none;
  color: #464646;
  border: solid 1px #464646;
  border-radius: 2px; }

.kiji-tag li a:hover {
  opacity: 0.5; }

/*=================================================================================================================================*/
/**  ページネーション	*/
/*=================================================================================================================================*/
.pagination {
  margin: 40px 0 30px;
  text-align: center; }

.pagination ul {
  margin: 0;
  padding: 0;
  list-style: none; }

.pagination li {
  display: inline-block;
  width: auto; }

.pagination li a,
.pagination li > span {
  font-size: 0.9em;
  display: block;
  width: 30px;
  margin: 0 1px;
  padding: 5px 0;
  text-decoration: none;
  color: #000;
  border: solid 1px #000;
  border-radius: 3px; }

.pagination .prev,
.pagination .next {
  display: block !important;
  width: 50px !important; }

.pagination li > span {
  color: #fff;
  background-color: #000; }

.pagination li a:hover {
  color: #fff;
  background-color: #000; }

.pagination li .dots {
  width: 15px;
  padding: 0;
  color: #000;
  border-color: transparent;
  background-color: transparent; }

@media (max-width: 740px) {
  .pagination li {
    margin-bottom: 1rem; } }
/*=================================================================================================================================*/
/**  サイドバー	*/
/*=================================================================================================================================*/
.sidebar-wrapper {
  margin-bottom: 1.8em; }

.sidebar-wrapper h4 {
  font-size: 1.1em;
  margin-top: 0;
  margin-bottom: 10px;
  padding: 10px 13px 10px 0;
  color: #004ea2;
  border-bottom: 1px solid #000;
  /* background-color: #E1F4FD; */ }

/*=================================================================================================================================*/
/**  ウィジェット	*/
/*=================================================================================================================================*/
/*デフォルトウィジェット*/
.widget_recent_entries li,
.widget_meta li,
.widget_recent_comments li,
.widget_pages li,
.widget_meta li,
.widget_categories li,
.widget_archive li,
.widget_nav_menu li {
  position: relative;
  padding: 10px;
  border-bottom: 1px dashed #ccc; }

.widget_recent_entries a,
.widget_meta a,
.widget_recent_comments a,
.widget_pages a,
.widget_meta a,
.widget_categories a,
.widget_archive a,
.widget_nav_menu a {
  text-decoration: none;
  color: #333; }

.widget_recent_entries a:hover,
.widget_meta a:hover,
.widget_recent_comments a:hover,
.widget_pages a:hover,
.widget_meta a:hover,
.widget_categories a:hover,
.widget_archive a:hover,
.widget_nav_menu a:hover {
  opacity: 0.6; }

/*タグウィジェット*/
.tagcloud a {
  font-size: 0.9em !important;
  line-height: 2.5em;
  margin: 2px;
  padding: 2px 10px;
  white-space: nowrap;
  text-decoration: none;
  color: #333;
  border: 1px solid #333;
  border-radius: 3px; }

.tagcloud a:hover {
  opacity: 0.5; }

/*=================================================================================================================================*/
/**  検索バー	*/
/*=================================================================================================================================*/
/* search */
.searchfield {
  padding: 10px;
  margin-top: 10px;
  font-size: 20px;
  width: 86%;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px; }

.searchsubmit {
  width: 35px;
  height: 30px;
  padding: 0;
  font-family: "Font Awesome 5 Free";
  font-size: 20px;
  font-weight: 900;
  border: none;
  background: transparent;
  cursor: pointer; }

/*=================================================================================================================================*/
/**  グーテンベルグ対応CSS	*/
/*=================================================================================================================================*/
img {
  width: 100%;
  height: auto; }

figcaption {
  width: 100%;
  text-align: center;
  padding: 0.5rem 1rem 1rem; }

.wp-block-gallery {
  display: flex;
  justify-content: space-between;
  list-style-type: none;
  padding-left: 0; }

.wp-block-gallery li {
  margin: 0; }

/* 画像 */
.wp-block-image {
  margin-bottom: 1.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem; }

@media (max-width: 740px) {
  .wp-block-image {
    margin-bottom: 0.7rem; } }
/* ul  */
section ul li {
  list-style-type: unset; }

.columns-1 .blocks-gallery-item {
  width: 100%; }

.columns-2 .blocks-gallery-item {
  width: 49%; }

.columns-3 .blocks-gallery-item {
  width: 32%; }

.columns-4 .blocks-gallery-item {
  width: 24%; }

.columns-5 .blocks-gallery-item {
  width: 19%; }

.columns-6 .blocks-gallery-item {
  width: 15%; }

/* カラム */
@media (min-width: 768px) {
  .wp-block-columns {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2rem; }

  .has-2-columns .wp-block-column {
    width: 48%; }

  .has-3-columns .wp-block-column {
    width: 32%; }

  .has-4-columns .wp-block-column {
    width: 24%; }

  .has-5-columns .wp-block-column {
    width: 24%; }

  .has-6-columns .wp-block-column {
    width: 15%; } }
@media (min-width: 768px) {
  .wp-block-media-text {
    display: grid;
    _zoom: 1;
    overflow: hidden; }

  .wp-block-media-text__content {
    padding: 15px 30px; } }
/* カラー */
.has-navy-color {
  color: #171A5F; }

.has-vivid-cyan-blue-color {
  color: #0693e3; }

.has-light-gray-color {
  color: #F2F2EA; }

.has-cyan-blue-gray-color {
  color: #abb8c3; }

.has-dark-gray-color {
  color: #313131; }

.has-deep-blue-color {
  color: #113766; }

.has-navy-background-color {
  background: #171A5F; }

.has-vivid-cyan-blue-background-color {
  background: #0693e3; }

.has-light-gray-background-color {
  background: #F2F2EA; }

.has-cyan-blue-gray-background-color {
  background: #abb8c3; }

.has-dark-gray-background-color {
  background: #313131; }

.has-usui-blue-background-color {
  background: #EEFAFF; }

.has-deep-blue-background-color {
  background: #113766; }

/* gtb 5.3 */
/* text-align */
.has-text-align-center {
  text-align: center; }

.has-text-align-right {
  text-align: right; }

/* テーブル */
/* wp-block-tableがwrapperに変更 */
.wp-block-table table {
  width: 100%;
  min-width: 240px;
  border-collapse: collapse;
  margin: 0 auto 30px;
  background: #ffffff;
  font-family: "Noto Sans JP"; }

.wp-block-table table td,
.wp-block-table table th {
  padding: 1.5em 2em;
  border: 1px solid;
  word-break: break-all; }

.wp-block-table table th,
.wp-block-table table td {
  border-color: #004ea2;
  /* font-family: "Noto Serif JP"; */
  letter-spacing: 1px; }

.wp-block-table table td span {
  font-size: 70%;
  color: #8B8B8B;
  margin-top: -1px;
  display: block; }

.wp-block-table table th {
  width: 25%;
  background: #F9F8F4;
  font-size: 90%;
  font-weight: normal;
  /* font-family: "Noto Serif JP"; */ }

/* .wp-block-column　下記追加 */
.wp-block-column {
  width: 100%; }

/* 区切り */
.wp-block-separator {
  border: unset;
  border-bottom: 1px dashed #000; }

/* hover */
.wp-block-button__link {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

.wp-block-button__link:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )"; }

.is-style-stripes tr:nth-child(odd) {
  background-color: #f3f4f5; }

/* ボタンのスタイル 「アウトライン」 */
.is-style-outline {
  border: 3px solid #753F14; }

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

.alignright {
  text-align: right; }

.alignleft {
  text-align: left; }

/*---------------------------------------------
 ** 個別指定 for スマートフォン
---------------------------------------------*/
@media screen and (max-width: 740px) {
  /* グーテン グループ 機能CSS */
  .wp-block-group__inner-container {
    padding: 2rem 1rem;
    margin-bottom: 20px; } }
/* 5.3時 追加分 */
/* カラム マージン */
@media (min-width: 768px) {
  .wp-block-column:not(:first-child) {
    margin-left: 30px; }

  .wp-block-column:nth-child(2n) {
    margin-left: 30px; } }
@media (max-width: 768px) {
  .wp-block-column:not(:last-child) {
    margin-bottom: 39px; }

  .wp-block-column:nth-child(2n) {
    margin-bottom: 39px; } }
video {
  width: 100%; }

.area-seminar h4 {
  padding: 1.5rem 2rem;
  margin-bottom: 1rem; }
.area-seminar hr {
  margin-top: 2.5rem;
  margin-bottom: 1.5rem;
  border-color: #CCC; }

.wp-con-wrapper {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 740px) {
    .wp-con-wrapper {
      flex-direction: column; } }

@media (max-width: 740px) {
  .col-post {
    flex-direction: column; } }
.col-post .item-thumbnail {
  width: 50%;
  padding: 1rem; }
  @media (max-width: 740px) {
    .col-post .item-thumbnail {
      order: 1;
      margin: 0 auto; } }
.col-post .item-contents {
  width: 100%; }
  @media (max-width: 740px) {
    .col-post .item-contents {
      order: 2; } }




  .grecaptcha-badge { visibility: hidden !important; }