body {font-family: 'メイリオ',Meiryo,'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','ＭＳ Ｐゴシック','MS PGothic',Roboto,'Droid Sans'  
        }






/*---- ヘッダーの定義　----*/
header{position: fixed;
       left:0;
       width:100%;
       margin:-17px 0 0 0;  /*---- 上辺の余分な余白の除去　(top:-17px)----*/
       height:65px;
       background:#fff;
       z-index:1000;}

/*---- 全体の定義　----*/
body{max-width: 1100px;
     margin: 0 auto;}

/*---- タイトル　----*/
.titlebox {margin: 0;
           max-width: 170px;
           width: 100%;
           }

.title{ padding:10px 0 0 30px;
        }

.aono img{ width:150px;}


@media screen and (max-width: 480px){
.title{ padding:15px 0 0 10px;
        }
}



/* --- メニューバー ----------*/
.menu { position: fixed;
        top: 10px;
        right: 0px;
        max-width: 900px;
        width: 100%;
        height: 50px;
        list-style: none;
        line-height: 27px;
        z-index: 1000;
        margin: 0 10px;
        display:flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        }

.menu > li{
            width: 16%;  /*** ナビが５つの場合 ***/
            height: 50%;
           }

.menu > li a {color: #000;
              display: block;
              font-size: 0.9em;
              text-decoration: none;
              text-align: center;}

.menu > li a:hover{color: #fff;
                   transition: 0.1s;}

.menu > li.menu__single {
         position: relative;
        }

.menu__second-level {
    visibility: hidden;
    opacity: 0;
    list-style: none;
    }

.menu > li:hover{
    background: #192f60;
    -webkit-transition: all .5s;
    transition: all .5s;
    }

.menu__second-level li a:hover {
    background: rgba(25,47,96,1.0);
    }


li.menu__single ul.menu__second-level{
    position: absolute;
    top: 0px;
    width: 100%;
    background: rgba(25,47,96,0.5);
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    }

li.menu__single:hover ul.menu__second-level{
    top: 25px;
    visibility: visible;
    opacity: 1;
    }

.twitter_symbol img{ width: 30px;
                      margin: 0px 10px 0 0;}

/*** 矢印 ***/
.init-bottom:after {
    content:'';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 15px;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    }



/* --- トップバーへの切り替え ----------*/

@media screen and (min-width: 480px){

.global-nav {display: none;}

} /******* メディアクエリのおわりカッコ ********/




/* --- ハンバーガーメニューへの切り替え ----------*/
@media screen and (max-width: 480px) {

.menu {display:none;}

/*--- ハンバーガーメニュー  ---*/

.header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 60px;
  }

.twitter_symbol_mobile img{ position: fixed;
                            right: 50px;
                            top: 10px;
                            width: 30px;
                            margin: 0px 10px 0 0;
                            z-index: 200;
                            }

.global-nav {
  position: fixed;
  right: -320px; /* これで隠れる */
  top: 0;
  width: 300px; /* スマホに収まるくらい */
  height: 100vh;
  padding-top: 40px;
  background-color: rgba(25,47,96,0.5);
  transition: all .3s;
  z-index: 200;
  overflow-y: auto; /* メニューが多くなったらスクロールできるように */
  }

.hamburger {
  position: fixed;
  right: 18px;
  top: 8px;
  width: 30px; /* クリックしやすいようにちゃんと幅を指定する */
  height: 30px; /* クリックしやすいようにちゃんと高さを指定する */
  cursor: pointer;
  z-index: 300;
 }

.global-nav__list {
  margin: 0;
  padding: 0;
  list-style: none;
 }

.global-nav__item {
  text-align: center;
  padding: 0 14px;
 }

.global-nav__item p {background-color:#fff;}

.global-nav__item a {
  display: block;
  padding: 8px 0;
  text-decoration: none;
  color: #fff;
 }

.global-nav__item a:hover {
  color:#192f60;
  background-color: #eee;

 }

.hamburger__line {
  position: fixed;
  right: 21px;
  width: 25px;
  height: 2.5px;
  background-color: #192f60;
  transition: all .3s;
 }

.hamburger__line--1 {
  top: 17px;
 }

.hamburger__line--2 {
  top: 23px;
 }

.hamburger__line--3 {
  top: 29px;
 }

.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100;
  background-color: rgba(25,47,96,0.2);
  opacity: 0;
  visibility: hidden;
  transition: all .3s;
  cursor: pointer;
 }

/* 表示された時用のCSS */
.nav-open .global-nav {
  right: 0;
 }

.nav-open .black-bg {
  opacity: .8;
  visibility: visible;
 }

.nav-open .hamburger__line{
  background-color: #fff;}

.nav-open .hamburger__line--1 {
  transform: rotate(45deg);
  top: 23px;
 }

.nav-open .hamburger__line--2 {
  width: 0;
  right: 25%;
 }

.nav-open .hamburger__line--3 {
  transform: rotate(-45deg);
  top: 23px;
 }

/*** ドロップダウン ***/

.acd-check{ display: none;}

.acd-label {
   background: rgba(25,47,96,1.0);
   color: #fff;
   display: block;
   margin-bottom: 1px;
   padding: 10px;
   position: relative;
  }

.contents {
   background: rgba(25,47,96,1.0);
   color: #fff;
   display: block;
   margin-bottom: 1px;
   padding: 10px;
   position: relative;
  }

.acd-label:after{
   background: rgba(255,255,255,0.7);
   box-sizing: border-box;
   content: '\ff0b';
   color: #000;
   display: block;
   height: 36px;
   padding:10px 20px;
   position: absolute;
   right: 0;
   top: 0px;
   }

.acd-content {
     display: block;
     height: 0;
     opacity: 0;
     transition: 0.3s;
     visibility: hidden;
     }

.acd-check:checked + .acd-label:after{
   content: '\ff0d';
   }

.acd-check:checked + .acd-label + .acd-content{
   height: auto;
   opacity: 1;
   visibility: visible;
   }


}/******* メディアクエリのおわりカッコ ********/




/*---見出し--*/

@keyframes LtoR {
          0% { opacity: 0;
               transform: translateX(-10px);
      }
        100% { opacity: 1;
               transform: translateX(0);
      }
   }

@keyframes RtoL {
          0% { opacity: 0;
               transform: translateX(20px);
      }
        100% { opacity: 1;
               transform: translateX(0);
      }
   }

.midashi0 { position: relative;
            margin-top:50px;}

.midashi_p { text-align: center;
            
             animation-name: LtoR;
             animation-duration: 0.7s;
            }

.midashi_p img{ width: 75%;
                height: auto;
                }


@media screen and (max-width: 480px) {

    .midashi_p img{ width: 98%;}
 
   }




/*** リクルート ***/

.index { width: 100%; 
         margin: 120px auto;}

.content0 {max-width:1000px;
           width: 100%; 
           margin: 0px auto;
          }

.heading { max-width:900px;
           width:90%;
           border-left: solid 5px #192f60;
           padding: 5px 15px;
           margin: 100px 0 10px 5px;
           }


/*** 採用情報 ***/

.content1 { width:100%;
            margin: 20px auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;


            padding: 10px 0;
         background-size: fixed;
         background-position: left;
         background:linear-gradient(90deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.1) 30%, #fff 30%, #fff 100%);
}


.recruitbox_1{ max-width: 450px;
               width: 100%;
               margin: 5px;
               padding: 10px;
              }

.ri_1 { max-width:250px;
        width:100%;
        margin:0 auto;
        font-size:1.8em;
        font-weight: bold;
        text-align: center;
        border-bottom: 1px solid #000;
        }

.rbox{ text-align:center;
       padding: 0 15px;
       margin-top:25px;
      }

.ri_2 { margin-bottom:10px;
        }

.inf { margin:5px 0 0 0;
       font-weight: bold;
       display:flex;
       flex-wrap:wrap;
       justify-content:center;
       }

.inf_2{ margin:10px 0 0 0;
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        }

.att { color: red;
       font-size: 0.7em;
       display:flex;
       flex-wrap:wrap;
       justify-content:center;
       margin: 10px 0;
      }

.tel a{text-decoration: none;
       color: #fff;}

.recruitbox_2{ max-width: 450px;
               width: 100%;
               margin: 0 auto 50px auto;
               }

.recruitbox_2 img { 
             width: 100%;
             height: auto;
             padding: 5px 5px;
             }



/*** 動画 ***/

.source { width:95%;
          padding:5px 25px;
          font-size: 0.7em;}

.content2 { width:100%;
            margin: 20px auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            align-items:center;

         background-size: contain;
         background-position: left;
         background:linear-gradient(90deg, #fff 0%, #fff 30%, rgba(0,0,0,0.1) 30%, rgba(0,0,0,0.1) 70%, #fff 70%, #fff 100%);
}



.trec { max-width:250px;
        width:100%;
        margin:0 auto;
        text-align: center;
        border-bottom: solid 1px #000;}

.trecbox {max-width: 200px;
          width: 100%;
          margin: 10px auto;}

.recruitbox_3{ display: flex;
               max-width: 450px;
               width: 100%;
               height:auto;
               text-align: center;
               margin-bottom: 30px;
               padding: 5px;}


/*** 募集コンテンツ ***/

.content3 { max-width:1100px;
            width:100%;
            margin: 20px auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-start;
            align-items:center;
           }

.recruitbox_4{ max-width: 450px;
               width: 100%;
               height: auto;
               margin: 0 auto;
               text-align: center;
               }

.navibox {display: flex;
          flex-wrap:wrap;
          justify-content: center;
          align-items: center;
          flex-direction: column;
          }

.trybox { width: 100%;
          padding: 0 10px;
          }

.try { margin-top:20px;}

.bnavi { position: relative;
         width:100%;
         padding:0 5px;
         }

.bnavi a { position: absolute;
           top: 80%;
           left: 50%;
           transform: translate(-50%,-80%);
           font-size: 1.2em;
           border: solid #fff 2px;

           margin:0;
           padding: 5px 20px;
           color: #fff;
           text-decoration: none;
           background-color:rgba(0,0,0,0.5);}

.bnavi a:hover{ transition:0.3s;
                background: rgba(255, 255, 255, 0.5);
                 }

.bnavi img {
             width: 100%;
             margin: 5px auto;
             }




/*** 問い合わせ ***/

.content4 { margin-bottom: 100px;}

.recruitbox_5{ width: 100%;
               padding: 10px;
               }

.conbox_1{ 
          padding: 0 15px;
          margin:0px auto;
          line-height: 20px;
          }


.recruitbox_6{ display: flex;
               flex-wrap: wrap;
               width: 100%;
               justify-content: space-around;
               align-items: center;
               }

.conbox_2 { position: relative;

            max-width: 440px;
            width:100%;
            margin:20px 0;          
            line-height: 20px;
            }

.conbox_2 img {width: 100%;
               padding:5px;}

.mite { position: absolute;
        top: 65%;
        left: 0%;
        width: 100%;
        text-align: center;
        color:  #19448e;
        background-color: rgba(255,255,255,0.8);
        padding: 5px 0;}

.itte { font-weight: bold;
        }

.conbox_3 { width: 350px;
            color: #fff;
            padding:30px 10px 10px 10px;
            line-height: 20px;
            background-color: #19448e;
            margin: 0 5px;}

.conbox_3 img{ width:100%;
               margin-top: 20px;}



.us1 { text-align: center;
       font-weight: bold;
       margin-bottom: 20px;
       border-bottom: 1px solid #fff;}

.us2 { text-align: center;
       margin-bottom: 10px;}

.telbox{max-width:260px;
        width: 100%;
        margin:20px auto 0px auto;
        }

.tel { margin: 10px 0;}

.tel a{ text-decoration: none;
        color: #fff;}

.icolor{color:#fff}


@media screen and (min-width: 480px){

.tel a[href^="tel:"]{pointer-events:none;}

}


@media screen and (max-width: 480px){
.content3 {  background-size: 100%;}

.bnavi { font-size:1.0em;}
.bnavi a{ padding: 5px 20px;}

  }










/*** リンク ***/

.midashi5 { margin: 150px 20px 0px 20px;
           }

.midashi6 { position: relative;
            display: inline-block;
            padding: 0 65px;
            color:#192f60; 
            }

.midashi6:before {
           position: absolute;
           top: calc(50% - 3px);
           left: 2px;
           width:50px;
           height:6px;
           content: '';
           border-top: solid 1px #192f60; 
           }


.midashi7 { font-size:5.0em;
            font-weight: bold;
            color:rgba(25,47,96,0.5);}
@media screen and (max-width: 480px){
    .midashi7 { font-size:3.0em;}
    }


.llist0 { margin:0px auto 0 auto;
         position: relative;
         width:100%;
         height:400px;
         background-image: url("../h_link.jpg");
         background-size: cover;
         background-position:center;
         }

.llist1 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background:linear-gradient(15deg,rgba(0,0,0,1.0),rgba(0,0,0,0.4),rgba(0,0,0,0));
         display:flex;
         flex-wrap-wrap;
        }

.llist1 a { text-decoration: none;
           color: #fff;
           }


.llist1 ul li {margin:10px 0;
              list-style: none;}

.llist1 ul li a{position: relative;
               display: inline-block;
               text-decoration: none;
               }

.llist1 ul li a:after{
       position: absolute;
       bottom: 0px;
       left: 0;
       content: '';
       width: 100%;
       height: 1px;
       background: #fff;
       transform: scale(0,1);
       transform-origin: left top;
       transition: transform 0.3s;
       }

.llist1 ul li a:hover:after{
       transform: scale(1,1);
       }

.llist2 { width: 100%;
          margin:10px;
          display:flex;
          flex-direction: column;
          justify-content:center;
          align-items:center;
          }

.lbox1{ display:flex;
        padding:10px;
        width:90%;
         }

.lbox2{ width:90%;
        margin:0 auto;}


@media screen and (max-width: 800px){

.page2 .page5
    { font-size: 18px;
      text-align: center;}

.llist0 { width:100%;
         height:300px;}

.llist1 ul { font-size:11px;}




}  /**** メディアクエリ終わり ****/





.btnlist { display: block;
           margin: 30px 0 0 20px;
          }

.btn {text-decoration:none;
  position     : relative;
  display      : inline;
  width        : 50px;  
  height       : 50px;
  margin       : 0 5px 10px 5px;
  cursor       : pointer;
  }

.btn:hover ,.btn2:hover {
  transform: scale(1.3);
  opacity      : .9;
  transition   : .1s;}


@media screen and (max-width: 800px){
.btnlist { margin:20px}
.btn{  width: 40px;  
        height: 40px;
        }

}  /**** メディアクエリ終わり ****/



@media screen and (max-width: 480px){

.llist1 { padding:5px;}
.llist2 { margin:20px;}

.lbox1{ padding:0px;
        justify-content:space-between;
        }

.btnlist { margin:10px 0px 10px 0px;
           }

}  /**** メディアクエリ終わり ****/




/*  フッター　　*/
/*---画像ボタン--*/

footer {width:100%;
        text-align:center;
        font-size:0.8em;
        padding-bottom:50px;}

footer div { padding:5px 0;
             }
footer div a { text-decoration: none;
               color:#192f60;
              } 
footer a:hover{ color: #e4007f;
                transition: 0.3s;
                }

.symbol img{ margin-top: 30px;
             width  : 100px;  
             height : auto;}

.symbol2 img{ margin-top: 30px;
             width  : 70px;  
             height : auto;}


.footerbar {margin-top: 100px;
            padding: 10px;
            border-top:1px solid #ccc;
           }






/*  スクロールバーのデザイン　　*/

::-webkit-scrollbar{
  width: 3px;
}
::-webkit-scrollbar-track{
  background: #fff;
  border: none;
  border-radius: 2px;
  box-shadow: inset -0.5px 0px 2px #ccc; 
}
::-webkit-scrollbar-thumb{
  background: #ccc;
  border-radius: 2px;
  box-shadow: none;
}



