@charset "utf-8";
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

/*---------------------------------------------------------------------
基本設定
---------------------------------------------------------------------*/
html { 
  font-size: 62.5%;/* =10px */
}
body{
    font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;
    background-color:#fff;
    color:#333;
}
body{
    font-size:1.6rem;
    line-height:1.6;
    
}
img{
	max-width:100%;
	height:auto;
}
.clearfix:after{
   content:"";
   display:block;
   clear:both;
}

.fClear:after{
   content:"";
   display:block;
   clear:both;
}

.center{
	text-align:center;
}
a{
	color:#000;
	text-decoration:none;
}
a.txtlink{
	color:#000;
	text-decoration:underline;
}
a.txtlink:hover{
	color:#000;
	text-decoration:none;
}
#topcontrol{
	z-index:99999;
}
.mB{
	margin-bottom:0.6em;
}
.mB2{
	margin-bottom:1.2em;
}
.blue{
	color:#001a71;
}
/*---------------------------------------------------------------------
PCのみ改行
---------------------------------------------------------------------*/
.pc-clear{
    display:block;
}
@media screen and (max-width : 768px) {
    .pc-clear{
	    display:inline;
    }
}
/*---------------------------------------------------------------------
SPのみ改行
---------------------------------------------------------------------*/
.sp-clear{
    display:inline;
}
@media screen and (max-width : 768px) {
    .sp-clear{
	    display:block;
    }
}

/*---------------------------------------------------------------------
フェード
---------------------------------------------------------------------*/
/* 画面外にいる状態 */
.fadein {
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 500ms;
    }
 
/* 画面内に入った状態 */
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }
/* 2つ目の要素に200msのdelayをかける */
#effect2 > div .fadein:nth-of-type(2) {
    -moz-transition-delay:200ms;
    -webkit-transition-delay:200ms;
    -o-transition-delay:200ms;
    -ms-transition-delay:200ms;
    }
/* 3つ目の要素に400msのdelayをかける */
#effect2 > div .fadein:nth-of-type(3) {
    -moz-transition-delay:400ms;
    -webkit-transition-delay:400ms;
    -o-transition-delay:400ms;
    -ms-transition-delay:400ms;
    }

/*---------------------------------------------------------------------
コンテンツ
---------------------------------------------------------------------*/

.inner{
    width:1200px;
	height:100%;
    margin-left:auto;
    margin-right:auto;
    position:relative;
    box-sizing:border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	
}
.inner:after{
    content:"";
    display:block;
    clear:both;
	
}
@media screen and (max-width:1200px){
.inner{
	width:100%;
	padding:0 1em;
}

}



/*---------------------------------------------------------------------
メインビジュアル
---------------------------------------------------------------------*/
.mainvisual{
	height:850px;
	width:100%;
    	background-image: url('../images/fv/00.jpg');
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	position:relative;
	z-index:1;
	background-color:#fff;
}
@media screen and (max-width:1200px){
.mainvisual{
	height:700px;
}
}
@media screen and (max-width:768px){
.mainvisual{
	height:600px;
}
}
@media screen and (max-width:599px){
.mainvisual{
	height:500px;
}
}
.mainvisual-inner{
	width:100%;
	height:100%;
	display:table;
}
.mainvisual-copy{
	display:table-cell;
	vertical-align:middle;
	text-align:center;
}
.site-title{
	width:100%;
	color:#fff;
	position:absolute;
	bottom:1%;
	text-align:center;
	text-shadow: 0 0 4px rgba(0,0,0,0.7);
}
@media screen and (max-width:1200px){
.site-title{
	bottom:25%;
}
}
.site-title-logo{
	width:130px;
	margin-bottom:10px;
}

@media screen and (max-width:768px){
.site-title-logo{
	width:60px;
}
}
.mainvisual-scroll{
	width:100%;
	position:absolute;
	bottom:5%;
	left:0px;
	text-align:center;
}

.mainvisual-scroll img{
	width:35px;
}

#main-copy{
	display:none;
	width: 100%;
	position:relative;
	margin-top:-6em;
}
#main-copy p{
	position:absolute;
	color:#fff;
	font-size:2.8rem;
	letter-spacing:0.3em;
	font-weight:bold;
	text-align:center;
	text-shadow: 0 0 4px rgba(0,0,0,0.7);
	width: 100%;
}
@media screen and (max-width:599px){
#main-copy p{
	font-size:2.4rem;
	letter-spacing:0.05em;
	padding:0 0.5em;
}
}
#container{
	position:relative;
	z-index:2;
    background-image: url('../images/top/bg01.jpg');
    background-position:left top;
    background-repeat:repeat-y;
    background-size:contain;
	background-color:#fff;
	-webkit-transition: 0.3s ease-in-out;	
}
#container:after{
	content:"";
	clear:both;
	display:block;
}
#container.no-bg{
    background-image: none !important;
}

.cont-fixed{
	opacity:0.1 !important;
	background-color:#33;
}

.content-blurred {
	margin-top:44px;
	padding:0 1rem;
	position:absolute;
	top:0;
	left:0;
	right:0;
	filter:blur(10px);
	opacity:.35;
   z-index: 1;
}

.content-blurred .content {
  backface-visibility:hidden;
}
.more-btn{
	text-align:center;
	
}
.more-btn a{
	display:inline-block;
	margin:0em;
	padding:1em;
	font-size:1.6rem;
	color:#fff;
	font-weight:bold;
	background-color:#05057e;
	-webkit-transition: 1s ease-in-out;	
}
.more-btn a:hover{
	background-color:#040457;
}

@media screen and (max-width:599px){
.more-btn a{
	padding:0.8em;
	font-size:1.2rem;
}
}



/*---------------------------------------------------------------------
ヘッダー
---------------------------------------------------------------------*/
#header{
	position:relative;
    	z-index:9999;
	width:100%;
	height:130px;
	background-color:rgba(255,255,255,0.9);
	-webkit-transition: 1s ease-in-out;	
	border-top:2px solid #001a71;-webkit-box-shadow: 0px 3px 3px -3px rgba(0,0,0,0.3);
}

@media screen and (max-width:599px){
#header{
	height:70px;
}
}

.fixed {
	position: fixed !important;
	top: 0;
	z-index: 10000;
	height:70px !important;
}
#header-inner{
	width:1200px;
	height:100%;
	margin:0 auto;
	padding:0 15px;
	display:table;
}
@media screen and (max-width:1200px){
#header-inner{
	width:100%;
}
}

.header-logo{
	display:table-cell;
	vertical-align:middle;
	width:220px;
}
.header-logo img{
	height:40px;
}

@media screen and (max-width:1150px){
.header-logo{
	width:120px;
}
.header-logo img{
	height:21px;
}
}
@media screen and (max-width:980px){
.header-logo{
	width:220px;
}
.header-logo img{
	height:40px;
}
}

.header-sns{
	display:table-cell;
	vertical-align:middle;
	width:230px;
	font-size:18px;
	color:#001a71;
	position:relative;
}
.header-sns.current-01:after{
	position:absolute;
	content:"";
	display:block;
	bottom:13px;
	left:0;
	width:75px;
	height:3px;
	background-color:#999;

	
}
.header-sns a{
	color:#001a71;
}
.header-sns div{
	display:inline-block;
	line-height:20px;
}
.header-sns img{
	height:20px;
	margin-right:8px;
}

/*======確認用=====*/



.header-sns-02{
	display:table-cell;
	vertical-align:middle;
	width:234px;
	color:#001a71;
	position:relative;
}
.header-sns-fb{
	
	font-size:47px;
}
.header-sns-02.current-01:after{
	position:absolute;
	content:"";
	display:block;
	bottom:12px;
	left:0;
	width:185px;
	height:3px;
	background-color:#999;

	
}
.header-sns-02 a{
	color:#001a71;
}
.header-sns-02 div{
	display:inline-block;
	line-height:20px;
}
.header-sns-02 img{
	height:38px;
	margin-left:3px;
}


/*======確認用=====*/

.header-menu{
	display:table-cell;
	height:100%;
	vertical-align:middle;
}
.gnav{
	width:100%;
	display:block;
}
.gnav:after{
	content:"";
	display:block;
	clear:both;
}

.gnav li a{
	display:inline-block;
	float:left;
	padding:10px 13px;
	position:relative;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
	border-bottom: 3px solid transparent;
	position:relative;
	font-size:1.4rem;
}
@media screen and (max-width:1180px){
.gnav li a{
	padding:10px 7px;
}
}
.gnav li a:before{
	position:absolute;
	content:"";
	width:1px;
	height:22px;
	background-color:#ccc;
	left:0;
	top:10px;
}
.gnav li:nth-child(7) a:after{
	position:absolute;
	content:"";
	width:1px;
	height:22px;
	background-color:#ccc;
	right:0;
	top:10px;
}
.gnav li.current a{
	border-bottom: 3px solid rgba(13,20,42,0.6);
}

.gnav li a:hover{
	color:#001a71;	
	border-bottom: 3px solid #001a71;
}
.bloc-tit-main{
	font-size:3rem;
	position:relative;
	letter-spacing:0.02em;
}
.bloc-tit{
	font-size:3rem;
	position:relative;
	padding-bottom:0.9em;
	margin-bottom:0.9em;	
	letter-spacing:0.02em;
	
}

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

.bloc-tit-main,
.bloc-tit{
	font-size:2.4rem;

}
}
.bloc-tit:after{
	content: "";
	position: absolute;
	left: 48%;
	right: 0%;
	bottom: 0;
	width:4%;
	border-bottom: 1px solid #666;
	
}
.bloc-tit-sub{
	font-size:1.8rem;
	margin-bottom:2em;
	line-height:1.8;
}
/*---------------------------------------------------------------------
スマホナビ
---------------------------------------------------------------------*/
.gnav-trigger{
	display:none;
}
.hid-menu{
	display:none;
}
@media screen and (max-width : 980px) {
.gnav{
	display:none;
}
.header-sns,
.header-sns-02{
	display:none;
}
.gnav-trigger{
	display:block;
	position:absolute;
	top:40px;
	right:10px;
	cursor:pointer;
	text-align:center;
	
}
}
@media screen and (max-width : 980px) {
.gnav-trigger{
	top:10px;
	
}
}
/*---------------スマホ時ナビ---------------*/
.gnav.gnav-smartphone{
	display:block;
	position:absolute;
	width:100%;
	margin:0;
	height:100%;
	left:0;
	top:130px;
	z-index:9998;
	-webkit-transition: 1s ease-in-out;	
	height:100%;
}
@media screen and (max-width : 980px) {
.gnav.gnav-smartphone{
	top:70px;
}
}
.gnav.gnav-smartphone .hid-menu{
	display:block !important;
}
.gnav.gnav-smartphone li.hid-menu.sns a{
	height:40px;
	line-height:40px;
}
.gnav.gnav-smartphone .hid-menu.sns{
	display:block !important;
	width:100%;
	float:left;
}
.gnav.gnav-smartphone .hid-menu.sns:last-child{
}
.fixed .gnav-trigger{
	top:10px !important;
	
}
.fixed .gnav.gnav-smartphone{
	top:70px !important;
}
.gnav.gnav-smartphone li a{
	display:block;
	width:100%;
	padding:0 0;
	text-align:center;
	font-size:1.4rem;
	border-left:0px dotted #ccc;
	border-bottom:1px solid #ccc;
	background-color:rgba(13,20,42,0.8);
	color:#fff;
	height:50px;
	line-height:50px;
	position:relative;
}
.gnav.gnav-smartphone li a:before{
	position:absolute;
	content:"";
	width:0px;
	height:0px;
	background-color:transparent;
	left:0;
	top:0px;
}
.gnav.gnav-smartphone .hid-menu a{
	display:block !important;
}
.gnav.gnav-smartphone li a:after{
	font-family:"FontAwesome" !important;
	content:"\f105" !important;
	position:absolute !important;
	right:10px !important;
	top:0px !important;
	font-size:20px !important;
	width:auto !important;
	height:auto !important;
	background-color:transparent;
}
.gnav.gnav-smartphone li.current a,
.gnav.gnav-smartphone li a:hover{
	color:#fff;
	background-color:rgba(13,20,42,0.6);
}

/*---------------トリガーアイコン---------------*/

#panel-btn{
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
  border-radius: 50%;
}
#panel-btn:hover{
}
#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 25px;
  height: 2px;
  margin: -1px 0 0 -10px;
  background: #002f68;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 25px;
  height: 2px;
  background: #002f68;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -6px;
}
#panel-btn-icon:after{
  margin-top: 4px;
}
#panel-btn .close{
  background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after{
  margin-top: 0;
}
#panel-btn .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#panel-btn .close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

/*---------------------------------------------------------------------
つなぎタイトル
---------------------------------------------------------------------*/
.sub-tit{
margin:0 0 10%;
text-align:center;
color:#777;
font-size:2rem;
letter-spacing:0.3em;
}
.sub-tit-02{
margin:0 0 3%;
text-align:center;
color:#777;
font-size:2rem;
letter-spacing:0.3em;
}
.bloc-tit-02{
	font-size:2.6rem;
	position:relative;
	padding-bottom:0.9em;
	margin-bottom:2em;
}
.bloc-tit-02:after{
	content: "";
    position: absolute;
    left: 47%;
    right: 0%;
    bottom: 0;
    width:6%;
    border-bottom: 1px solid #ffff00;
	
}
/*---------------------------------------------------------------------
ブロック01
---------------------------------------------------------------------*/

.bloc-01{
	padding:5% 0px 0px 0px;
}
.separate{
	padding:3%;
}
.bloc-01-left-text{
	padding:3%;
}
.bloc-01-tit{
	padding:2% 2% 2%;
	width:100%;
}
.bloc-01-tit:after{
	content:"";
	display:block;
	clear:both;
}
.bloc-01-tit-left{
	text-align:left;
	float:left;
	padding-right:2%;
	border-right:1px solid #ccc;
}
.bloc-01-tit-right{
	padding-left:2%;
	padding-top:1em;
	float:left;
}
.bloc-01-right{
	width:100%;
}



/*---------------------------------------------------------------------
ブロック02
---------------------------------------------------------------------*/
.bloc-02{
	margin:10% 0;
	
}
.bloc-02-image{
	width:100%;
	height:400px;
	position:relative;
    	overflow: hidden;
	margin:0 0 3%;
}

@media screen and (max-width:768px){
.bloc-02-image{
	height:350px;
   	background-image: url('../images/top/bloc02_bg.jpg');
        background-size: cover;
}
}
.bloc-02-copy{
	position:absolute;
	left:0;
  	z-index:2;
	display:table;
	width:100%;
	height:100%;
	 font-family:Helvetica, Arial, sans-serif;
}
.bloc-02-copy-inner{
	display:table-cell;
	height:100%;
	vertical-align:middle;
	text-align:center;
	color:#fff;
  	z-index:2;
}
.bloc-02-copy-tit{
	font-size:4rem;
	padding:3em 1em;
	border:1px solid rgba(255,255,255,0.5);
	display:inline-block;
}
@media screen and (max-width:768px){
.bloc-02-copy-tit{
	border:1px solid rgba(255,255,255,0);
}
}
.prlx {
    overflow: hidden;
    position: relative;
    z-index:1;
}

@media screen and (max-width:768px){
.prlx {
    display:none;
}

}
.prlx1 {
	height: 70vh;
}
.img {
        background-position: 50%;
        background-size: cover;
        display: none;
        position: absolute;
        width: 100%;
    z-index:1;
      }

@media screen and (max-width:768px){
.img {
 background-position: 30% 50%;
      
      }
}
.img1 {
    background-image: url('../images/top/bloc02_bg.jpg');
    height: 90vh;
    top: -10vh;
  }


/*---------------------------------------------------------------------
ブロック03
---------------------------------------------------------------------*/
.bloc-03{
	width:100%;
	position:relative;
    	overflow: hidden;
	margin:0 0 10%;
	
}
.bloc-03-cont{
	margin:0 0 0%;
	
}
.bloc-03-cont:after{
	content:"";
	clear:both;
	display:block;
	
}
.bloc-03-left{
    	width:40%;
	height:800px;
	float:left;
	color:#fff;
	text-align:center;
	display:table;
    	background-image: url('../images/top/bloc03_bg.jpg');
	    background-size:cover;
	background-position:left top;
}

@media screen and (max-width:1080px){
.bloc-03-left{
	height:700px;
}
}
@media screen and (max-width:980px){
.bloc-03-left{
    	width:100%;
	height:350px;
}	  
}
.bloc-03-left-inner{
    	width:100%;
	height:100%;
	padding:0 1em;
	vertical-align:middle;
	text-align:center;
	display:table-cell;
}
.bloc-03-right{
    	width:60%;
	height:800px;
	float:right;
	display:table;
}
@media screen and (max-width:1080px){
.bloc-03-right{
	height:700px;
}
}
@media screen and (max-width:980px){
.bloc-03-right{
    	width:100%;
	height:350px;
	float:left;
}	  
}
.bloc-03-tr{
	display:table-row;
}
.bloc-03-tr .num{
	display:block;
	font-size:5rem;
	 font-family:Helvetica, Arial, sans-serif;
	color:#8c99c1;
	opacity:0.6;
}
.table--nested {
    display: table;    
    width:100%;
	height:100%;
}
.table--nested-td {
    display: table-cell;    
    width:50%;
	height:100%;
	vertical-align:middle;
	text-align:center;
}

.bloc-03-1clm{
	display:table-cell;
	width:33%;
	vertical-align:middle;
	text-align:center;
}
.bloc-03-2clm{
	display:table-cell;
	width:67%;
	vertical-align:middle;
	text-align:center;
}
._bg01{
	background-color:#fff;
	font-size:110%;
	padding:1em;
}
._bg02{
	background-color:#fff;
	font-size:110%;
	padding:1em;
}
._img01{
    	background-image: url('../images/top/bloc03_img02.jpg');
	background-size:cover;
	background-position:bottom center;
}
._img02{
    	background-image: url('../images/top/bloc03_img01.jpg');
	background-size:cover;
	background-position:center center;
}
._img03{
    	background-image: url('../images/top/bloc03_img03.jpg');
	background-size:cover;
	background-position:center center;
}
._img04{
    	background-image: url('../images/top/bloc03_img04.jpg');
	background-size:cover;
	background-position:center center;
}

.bloc-03-left ul{
	margin-top:4em;
}
.bloc-03-left li{
	font-size:1.8rem;
	margin-bottom:1em;
}

/*---------------------------------------------------------------------
ブロック04
---------------------------------------------------------------------*/
.bloc-04{
	width:100%;
	position:relative;
    	overflow: hidden;
	margin:0 0 10%;
	width:100%;
	
}
.bloc-04-icon div{
	width:33%;
	float:left;
	padding:0 1em;
}

.bloc-04-icon img{
	width:130px !important;
	margin-bottom:0.5em;
}
.bloc-04-tit{
	padding:2% 2% 3%;
	width:100%;
}
.bloc-04-tit:after{
	content:"";
	display:block;
	clear:both;
}
.bloc-04-tit-left{
	text-align:left;
	float:left;
	padding-right:2%;
	border-right:1px solid #ccc;
}
.bloc-04-tit-right{
	padding-left:2%;
	padding-top:1em;
	float:left;
}
/*---------------------------------------------------------------------
求人
---------------------------------------------------------------------*/
#recruit{
	margin:0 0px 100px 0px;
	width:100%;
	
}
.rec-dot{
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	z-index:2;
	
}
.recruit-slide{
	text-align:center;
	width:100%;
	background-color:#f2ece3;
	display:table;
    	background-image: url('../images/top/rec-bg.jpg');
	background-position:top center;
	background-repeat:no-repeat;
}
.recruit-tit{
	width:100%;
	height:97%;
	padding-bottom:4%;
	display:table-cell;
	vertical-align:bottom;
	color:#fff;
}
.rec-more-btn{
	position:absolute;
	bottom:0px;
	text-align:center;
	width:100%;
	z-index:2;
	
}
.rec-more-btn a{
	font-size:1.8rem;
	padding:0.5em 3em;
	margin:0 auto;
	background-color:#fff;
	color:#001a71;
	display:inline-block;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
	
}
.rec-more-btn a:hover{
	background-color:#001a71;
	color:#fff;
}
.recruit-copy{
	text-align:center;
	width:70%;
	margin:0 auto;
	
}
.recruit-copy-02{
	text-align:left;
	width:80%;
	margin:0 auto;
	
}
.recruit-copy-03{
	text-align:right;
	width:80%;
	margin:0 auto;
	
}

@media only screen and (max-width:768px) {
.recruit-copy{
	width:90%;
}
.recruit-copy-02{
	width:50%;
	float:left;
}
.recruit-copy-03{
	width:50%;
	float:right;
}
}
.recruit-copy .tit{
  margin-top:1.5em;
  color:#fff;
  text-align:center;
  display:inline-block;
  font-size: 2.8rem;
  letter-spacing:0.03em;
  padding:6% 3%;
  position:relative;
}
.recruit-copy-02 .tit,
.recruit-copy-03 .tit{
  color:rgba(0,0,0,0.6);
  text-align:center;
  display:inline-block;
  font-size: 2.8rem;
  color:#fff;
  letter-spacing:0.03em;
  padding:6% 3%;
  position:relative;
}
.recruit-copy .tit:before,
.recruit-copy-02 .tit:before,
.recruit-copy-03 .tit:before{
  width:100%;
  position:absolute;
  left:0%;
  top:6%;
  content:"";
  height:1px;
  background-color:#ccc; 
}
.recruit-copy .tit:after,
.recruit-copy-02 .tit:after,
.recruit-copy-03 .tit:after{
  width:100%;
  position:absolute;
  left:0%;
  bottom:6%;
  content:"";
  height:1px;
  background-color:#ccc; 
}

@media only screen and (max-width:768px) {
.recruit-copy .tit,
.recruit-copy-02 .tit,
.recruit-copy-03 .tit{
  font-size: 2rem;
}
}
/*---------------------------------------------------------------------
ニュース
---------------------------------------------------------------------*/
.news{
	width:100%;
	position:relative;
	margin:0 0 10%;
	
}
.news-inner{
	width:100%;
	margin:0 auto;
}
.news-title{
	font-size:2.6rem;
	text-align:center;
	position:relative;
	font-weight:bold;
	margin-bottom:2em;
	display:block;
	padding:0 10%;
}
.news-title a{
	color:#001a71;
}
.news-icon{
	margin-left:0.3em;
}

.news-title:before{
	content:"";
	position:absolute;
	width:30%;
	left:0;
	top:50%;
	border-top:1px solid #333;
}
.news-title:after{
	content:"";
	position:absolute;
	width:30%;
	right:0%;
	top:50%;
	border-top:1px solid #333;
}
.news-date{
 	color:#fff;
	display:block;
	font-size:90%;
	float:left;
	margin-right:2%;
	width:120px;
	background-color:#999;
	text-align:center;
	
}

.news-list li{
	padding:2%;
	line-height:1.4em !important;
	border-bottom:1px dotted #ccc;
	
}

.news-list li:after{
	content:"";
	display:block;
	clear:both;
	
}
.news-list li a:hover{
	text-decoration:underline;
}
@media screen and (max-width:768px){ 
.news-date{
	float:auto;
	margin-bottom:2%;
	padding:1%;
	width:120px;
	
}

.news-txt{
	width:100%;
	float:left;
	display:block;
}
}


/*---------------------------------------------------------------------
マップ
---------------------------------------------------------------------*/
#map_canvas{
	width:100%;
	height:500px;
	margin:0 0 10%;
}
@media screen and (max-width:768px){
    #map_canvas{
	    height:300px;
    }
}

/*---------------------------------------------------------------------
CTA
---------------------------------------------------------------------*/

.cta-marker{
	display:inline-block;
	padding:0 1em;
	margin-right:0.5em;
	font-weight:bold;
	background-color:#05057e;
	border-radius:20px;
	
}
.cta-tel{
	font-size:5rem;
	margin-bottom:20px;
	font-weight:bold;
	color:#fff;
   	 text-shadow: 0 0 4px rgba(0,0,0,0.7);
	 font-family:Helvetica, Arial, sans-serif;
}
@media screen and (max-width:599px){
.cta-tel{
	font-size:3.5rem;
	color:#001a71;
   	 text-shadow: 0 0 4px rgba(0,0,0,0);
}
}
.cta-btn a{
	font-size:1.6rem;
	padding:0.5em 3em;
	background-color:#001a71;
	color:#fff;
	text-align:center;
	display:inline-block;
}
.cta-btn a:hover{
	background-color:#000033;
}
.cta-box{
	font-size:1.8rem;
	line-height:2;
	margin-bottom:10px;
	color:#fff;
    text-shadow: 0 0 4px rgba(0,0,0,0.7);

}

@media screen and (max-width:599px){
.cta-box{
	text-align:left;
	line-height:1.6;
}
}

.panel-bg,
.panel {
    background: url("../images/fv/05.jpg") no-repeat center top;
    -webkit-background-size: cover;
    background-size: cover;
}
.panel {
    color: #000;
    position: relative;
}
 
.panel-bg {
    position: absolute;
    background-clip: content-box;
    width: 100%;
    height: 100%;
    padding: 4%;
    top: 0;
    left: 0;
    -webkit-filter: blur(20px);
    -moz-filter: blur(20px);
    filter: blur(20px);
}
.panel-in {
    padding: 4%;
    position: relative;
}
.panel-main {
    width: 900px;
    margin: 0 auto;
    padding: 2%;
    z-index: 30;
    position: relative;
    background: rgba(50,50,50,0.1);
}
@media (max-width: 900px) {
    .panel-main {
        width: 100%;
    }
}
/*---------------------------------------------------------------------
枠
---------------------------------------------------------------------*/
.bd{
    width: 100%;
    height: 100%;
    text-align: center;
    position: relative;
    padding:5% 3%;
}

.bd div.bdT{
    width: 100%;
    height:1px;
    top:0;
    left:0;
    background: #fff;
     position:absolute;
     -webkit-transition:all 1s ease-in-out;
     transition:all 1s ease-in-out;
}
.bd div.bdB{
    width: 100%;
    height:1px;
    bottom:0;
    right:0;
    background: #fff;
     position:absolute;
     -webkit-transition:all 1s ease-in-out;
     transition:all 1s ease-in-out;
}
.bd div.bdR{
    height:100%;
    width :1px;
    right:0;
    top:0;
    background: #fff;
     position:absolute;
     -webkit-transition:all 1s ease-in-out;
     transition:all 1s ease-in-out;
}
.bd div.bdL{
    height:100%;
    width :1px;
    left:0;
    bottom:0;
    background: #fff;
     position:absolute;
     -webkit-transition:all 1s ease-in-out;
     transition:all 1s ease-in-out;
}

.active .bd div.bdT{
    width: 100%;
    height:1px;
    top:0;
    left:0;
}
.active .bd div.bdB{
    width: 100%;
    height:1px;
    bottom:0;
    right:0;
}
.active .bd div.bdR{
    height:100%;
    width :1px;
    right:0;
    top:0;
}
.active .bd div.bdL{
    height:100%;
    width :1px;
    left:0;
    bottom:0;
}
.bd div.bdT{
    width: 0;
}
.bd div.bdB{
    width: 0;
}
.bd div.bdR{
    height:0;
}
.bd div.bdL{
    height:0;
}
/*---------------------------------------------------------------------
動画
---------------------------------------------------------------------*/
#movie-area{
	position:relative;
	z-index:1;
	margin:0 0 10%;
}
#movie-area:after{
	content:"";
	display:block;
	clear:both;
}

#movie{
  position: relative;
  width: 100%;  overflow:hidden;
  text-align:center;
  z-index:1;
}

@media screen and (min-width:1155px){
#movie{
  height: 500px;
}
}


#movie img{
  width: 100%;
}
#movie:after{
	content:"";
	display:block;
	clear:both;
}
.pattern {
  background: url(../images/movie/movie-dot.png);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
}
video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  min-width: 320px;
  min-height: auto;
}
/*---------------------------------------------------------------------
ムービー上のコピー
---------------------------------------------------------------------*/

#oncopy{
  z-index:100;
    position: absolute;
    top:45%;
    left:0%;
  width: 100%;
}


#oncopy p{
    position: absolute;
    text-align:center;
    color:#fff;
    top:0%;
    right:0%;
  width: 100%;
	text-shadow: 0 0 4px rgba(0,0,0,0.7);
}

/*---------------------------------------------------------------------
YOUTUBE
---------------------------------------------------------------------*/
.youtube {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    margin-bottom:10%;
    height: 0;
    overflow: hidden;
}
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*---------------------------------------------------------------------
スマホの動画処理
---------------------------------------------------------------------*/
#movie-sp{
 display:none;
  position: relative;
  width: 100%;  overflow:hidden;
  text-align:center;
  z-index:1;
}
.sp-movie--horizontal {
	width: 100%;
	height: 390px;
}
@media screen and (max-width:768px){
    .sp-movie--horizontal {
	    height: 280px;
    }
}
@media screen and (max-width:599px){
    sp-movie--horizontal {
	    height: 200px;
    }
}
.sp-movie--horizontal .box {
	width: 100%;
	height: 100%;
	display:table;
}
.sp-movie--horizontal .box-copy {
	font-size:3rem;
}

/*---------------------------------------------------------------------
フッター
---------------------------------------------------------------------*/

.footer{
    background-color:#efefef;
    padding:3% 0 0 0;
    position: relative;
    width: 100%;
    text-align:left !important;

}
@media screen and (max-width:768px){ 
.footer{
    position: relative;
}
}

#movie-area-03-sp .footer{
    position: static;
}

.footer a,
.footer-sub a{
    font-size:1.4rem;
}

.footer-inner{
    width:1160px;
    margin:0 auto;
    background-size:contain;

}

@media screen and (max-width:1160px){
    .footer-inner{
	width:100%;
    
    }
}
.footer-tit{
    width:100%;
    float:left;
    font-size:1.4rem;
    margin-bottom:2%;
}




.footer-01{
    width:30%;
    float:left;
    margin-bottom:3%;
    font-size:1.4rem;
}

@media screen and (max-width:768px){
.footer-01{
    width:100%;
    float:left;
    margin-bottom:3%;
}
}
.footer-02{
    width:60%;
    float:right;
}
.footer-02 li{
    width:25%;
    float:left;
    padding:0 0 2% 0;
    
}
.footer-02 li.end{
    width:100%;
    float:left;
    padding:0 0 2% 0;
    
}
.footer-03{
   width:45%;
    float:left;
    font-size:1.3rem;
    
}

@media screen and (max-width:768px){
    .footer-03{
	width:100%;
	float:left;
	margin-bottom:3%;
    }
    .footer-02{
	width:100%;
	float:left;
    }
    .footer-02 li{
    width:100%;
    float:left;
     
    }
    .footer-02 li a{
    padding:1.5% 0;
    border-bottom:1px solid #ccc;
     display:block;
    }
}

@media screen and (max-width: 599px){
    .footer-02 li{
    font-size:1.8rem;
    }
}
.cpr{
	 padding:2% 0;
	 color:#fff;
	 background-color:#001a71;
 }
.cpr-right{
    float:right;
   width:53%;
    font-size:1.2rem;
}
.cpr-left{
	float:left;
    width:40%;
    font-size:1.2rem;
	
}
.cpr-right li{
    text-align:right;
    float:right;
    padding:0 2% 0 0;
    font-size:1.2rem;
    
}
.cpr-right li a{
    color:#fff;
    
}
@media screen and (max-width:768px){
    .cpr-left{
	width:100%;
	float:left;
    }
    .cpr-right{
	width:100%;
	float:left;
    }
    .cpr-right li{
    width:100%;
    float:left;
    text-align:left;
    padding:0 0 2% 0;
     
    }
    .cpr-right li a{
    padding:1.5% 0;
    border-bottom:1px solid #444;
     display:block;
    }
}
@media screen and (max-width: 599px){
    .cpr-right li{
    font-size:1.8rem;
    }
}



#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index:99999;
}
 
@media screen and (max-width: 1024px){
#pageTop {
  position: fixed;
  bottom: 1%;
  right: 1%;
  z-index:99999;
}
}
@media screen and (max-width: 768px){
.recruit-home #pageTop {
  position: fixed;
  bottom: 80px;
  right: 1%;
  z-index:99999;
}
}
#pageTop a {
  display: block;
  z-index: 999;
  width: 50px;
  height: 50px;
  line-height: 50px;
  background-color: rgba(0,0,0,0.3);
  /*background-color: rgba(0,26,113,0.95);*/
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  font-size:18px;
}
 
#pageTop a:hover {
  text-decoration: none;
  background-color: rgba(0,0,0,0.5);
}