@charset "utf-8";
/* CSS Document */

body {
     min-width:1200px;
   
	margin: 0;
	 /*  フォントの種類  */
  font-family: font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;;
  
  /*  フォントのサイズ  */
  font-size: 16px;
  
  /*  フォントの色  */
  color: #333;
  
  /* 文字間隔の調整の設定 */
  letter-spacing: 1.5px;
  
  /* 行間の設定 */
  line-height: 2.25;
}



.head {
	min-width:1260px;
	background:#032B5B;
	
	
	
}

.menu {
    position: relative;
    height: 50px;
    max-width: 1260px;
    margin: 0 auto;
	list-style: none;
	margin-left: auto;
	margin-right: auto;
	
	
}

.menu > li {
    float: left;
    width: 170px; /* グローバルナビ4つの場合 */
    height: 50px;
    line-height: 50px;
	list-style: none;
	text-align: center;
	
	
}

.menu > li a {
    display: block;
    background:#032B5B;
	text-decoration: none;
	color: #FFFFFF;
}

.menu > li a:hover {
    color: #FFFFFF;
	
}

ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
	
}

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

.menu__second-level li {
    border-top: 1px solid #111;
}


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

/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}


/*------------------ドロップダウン-----------------*/
.menu > li.menu__single {
    position: relative;
	
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 40px;
    width: 100%;
    background: #072A24;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
	
}

li.menu__single:hover ul.menu__second-level {
    top: 50px;
	background:#032B5B;
    visibility: visible;
    opacity: 0.8;
	list-style: none;
}

.fade {
  transition: all 2000ms;
  opacity: 0;
  visibility: hidden;
  transform: translate(0px, 50px);
}

.fadein {
  opacity: 1;
  visibility: visible;
  transform: translate(0px, 0px);
} 

/*------------------メイン画像-----------------*/




.main-vision {
 position   : relative;
  min-width: 1260px;
  height: 800px;
  overflow: hidden; 
 
	
}


.main-vision .bgImg {
   position   : absolute;
  top        : 0;
  left       : 0;
  bottom     : 0;
  right      : 0;
  opacity    : 0;
  animation  : bgAnime 25s infinite;   /* 3画像 × 各5s = 15s */
	
}


.main-vision .src1{
background-image : url("img/top-slide1.png");   /* 背景の画像を指定 */
background-size: 100% 800px;


}

			
		
.main-vision .src2{
background-image : url("img/top-slide2.png"); /* 背景の画像を指定 */
background-size: 100% 800px;
animation-delay  : 5s;
}

.main-vision .src3{
background-image : url("img/top-slide3.png"); /* 背景の画像を指定 */
background-size: 100% 800px;
animation-delay  : 11s;
}



.main-vision .src4{
background-image : url("img/top-slide4.png"); /* 背景の画像を指定 */
background-size: 100% 800px;
animation-delay  : 16s;
}

@keyframes bgAnime {
  0% {
		opacity: 0;
	}
	
	12.5% {
		opacity: 1;
	}

	37.5% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
}




.bxslider {
    min-width: 1260px;
    height: auto;
    display: block;
    background-color: #f5f5f5;
    overflow: hidden;
    
    
}

.bxslider img {
    min-width: 1260px;
    height: 1000px;
    display: block;
	text-align: center;
    background-color: black;
    overflow: hidden;
    
    
}


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

.cover {
	width:100%;
	height: 100%;
	
}

.back {
	min-width: 1260px;
	background:#F0F1F8;
	
}


.header {
	width: 100%;
	height :auto;
	margin: 0px auto;	
	overflow:hidden;
	margin-left: auto;
	margin-right: auto;
}

.header img {
	float: left;
	padding: 0;
	border-style: none;
}


#header-left {
	width:550px;
	height:auto;
	float:left;
	margin:0;
	padding:0;
}



#header-center {
	
	height:auto;
	float:right;
	font-size:12px;
	overflow:hidden;
	text-align:center;
	padding-bottom:10px;
	
}


div#header-right {
	width:210px;
	height:auto;
	float: right;
	margin-top:25px;
	
}





.contents1 {
	margin-top:60px; 
	margin-left: auto;
	margin-right: auto;
	width: 1200px;
	height: auto;
	
	
}


.contents1 h2 {
	width: 500px;
	text-align: center;
	color: #0CA1CF;
	margin-left: auto;
	margin-right: auto;
	height: 50px;
	
}

.sample3 {
	width:			350px;
	height:			235px;
	overflow:		hidden;
	margin:			10px 8px 10px 16px;
	position:		relative;
	display:  inline-block;
	float: left;
	
}


.sample3 .caption {
	font-size:		130%;
	color:			#fff;
	padding-top:		80px;
	padding-left:		0px;
}
.sample3 .mask {
	width:			100%;
	height:			100%;
	position:		absolute;
	top:			0;
	left:			0;
	opacity:		0;	/* マスクを表示しない */
	background-color:	rgba(0,0,0,0.4);
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.6s ease;
}
.sample3:hover .mask {
	opacity:		1;	/* マスクを表示する */
	padding-left:		90px;	/* 右にずらす */
}

.img_wrap{
  border: 1px solid #ddd;
  width: 280px;
  height: auto;
  margin: 20px auto 0;
  transition-duration: 0.5s;
}
.img_wrap img{
  width: 100%;
  cursor: pointer;
}
.img_wrap:hover{
  box-shadow: 10px 10px 10px rgba(0,0,0,0.5);
  transform: translateY(-10px);
  transition-duration: 0.5s;
}

.contents4 h2 {
	width: 500px;
	text-align: center;
	color: #0CA1CF;
	margin-left: auto;
	margin-right: auto;
	height: 50px;
	
}



.contents4 h3 {
	width: 500px;
	text-align: center;
	color: #3FA9F5;
	margin-left: auto;
	margin-right: auto;
	
	
	
	
}



.section {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	margin-top: 40px;
	margin-bottom: 80px;
	

	
}

.co {
	width: 400px;
	height: auto;
	margin-left: 70px;
	margin-right: 30px;
	float: left;
}




.contents2 {
	width: 1200px;
	height: auto;
	margin-top:100px;
	margin-bottom: 50px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	
	
	
	
}

.co2 {
	width: 260px;
	height: auto;
	margin-left: 20px;
	margin-right: 20px;
	float: left;
}

.zoom_box {
 width:250px; 
 margin:0 auto; //サンプルで中央に寄せたいので書かせていただいております。
 overflow:hidden; //これを記述することではみ出た部分を非表示にします。
	
}

.zoom_box img{
 transition:1s all;

	
}

.zoom_box img:hover{
  transform:scale(1.2,1.2);
  transition:1s all;
}




.contents3 {
	min-width: 1260px;
	height: 300px;
	margin-top:80px;
	margin-bottom: 80px;
	margin-left: auto;
	margin-right: auto;
	background-image:url("recruit/img/rec-top2.jpg");
	text-align: center;
	color: #FFFFFF;
	overflow: hidden;
	background-size: cover;
}

.contents3 h1 {
	margin-top:40px;
	padding-top: 40px;
}



.button {
  display: inline-block;
  width: 200px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
}
.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}


.button {
  background-color: #59b1eb;
  color: #fff;
}
.button:hover {
  background-color: #ffaa00;
}




.contents4 {
	margin-top:60px; 
	margin-left: auto;
	margin-right: auto;
	width: 1260px;
	height: auto;
	text-align: center;
	list-style: none;
	
	
	
}

.contents4 ul {
  list-style: none;

}

.contents4 h2 {
	text-align: center;
	color: #0CA1CF;
	height: 50px;
	
}


.contents5 {
	margin-left: auto;
	margin-right: auto;
	width: 1260px;
	height: auto;
	margin-top: 60px;
	margin-bottom: 40px;
	text-align: center;
}

// CSS
.anim-box {
  background: linear-gradient(to right, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
  border-radius: 5px;
  max-width: 400px;
  height: 250px;
}

.anim-box.kiran {
  opacity: 1;
  overflow: hidden;
  position: relative;
  cursor: pointer;
}
.anim-box.kiran::before {
  background-color: #fff;
  content: "";
  display: block;
  position: absolute;
  top: -100px;
  left: 0;
  width: 30px;
  height: 100%;
  opacity: 0;
  transition: cubic-bezier(0.32, 0, 0.67, 0);
}
.anim-box.kiran:hover::before {
  animation: kiran 0.5s linear 1;
}
 
@keyframes kiran {
  0% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  20% {
    transform: scale(20) rotate(45deg);
    opacity: 0.6;
  }
  40% {
    transform: scale(30) rotate(45deg);
    opacity: 0.4;
  }
  80% {
    transform: scale(45) rotate(45deg);
    opacity: 0.2;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}


.reflection-img{
    width       :1260px;
    height      :250px;
    position    :relative;
    overflow    :hidden;
	margin-left: auto;
	margin-right: auto;
}
 
.reflection {
    height      :100%;
    width       :30px;
    position    :absolute;
    top         :-180px;
    left        :0;
    background-color: #fff;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflection 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 2s ease-in-out infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 2s ease-in-out infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 2s ease-in-out infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 2s ease-in-out infinite;
}
 
@keyframes reflection {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}
/*-------------フッター----------------*/

/*-------------------フッター開始------------------------------*/

#footer-wrap {
min-width:1260px;
	height:auto;
	margin-left:auto;
	margin-right:auto;
	background-color:#032B5B;
	color:#FFF;
    
}


#footer-wrap-in {
	width:1260px;
	margin: 40px auto;
	padding: 5px;
	overflow: hidden;
}


.sitemap {
	width:180px; 
	text-align:left;
	float: left;
	
}


.sitemap p{
	font-size:20px;
	font-style:normal;
	color:#FFF;
	text-align: left;
	padding-left: 10px;
	
}


.sitemap li{
	font-size:12px;
	color:#FFF;
	padding-left: 20px;
}


#f-logo {
	float: left;
	width:100%;
	
	
}
	
#f-logo p{
	text-align: center;
	color:#FFF;
	
}


a.white:link {
text-decoration:none;
color : #ffffff; 
}
a.white:visited {
text-decoration:none;
color : #ffffff; 
}
a.white:active {
text-decoration:none;
color : #ffffff; 
}
a.white:hover {
text-decoration:none;
color : #ffffff; 
}

/*フッター終了*/
