@charset "UTF-8";
/*------------------------------------------------------------------------------------------------------------------------------------------------------------
	☆toppage
------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*--topheader--*/
#link {
 color: #0adfff;
 display: block;
 text-align: center;
 text-decoration: none;
}
#link:hover {
 color: #CCCCCC
}
#link, #link:hover {
 -webkit-transition: color 0.5s ease-out;
 -moz-transition: color 0.5s ease-out;
 -ms-transition: color 0.5s ease-out;
 -o-transition: color 0.5s ease-out;
 transition: color 0.5s ease-out;
}


h1 {
    position: relative;
    color: rgba(0, 0, 0, .3);
    font-size: 5rem;
}
h1:before {
    content: attr(data-text);
    position: absolute;
    overflow: hidden;
    max-width: 9em;
    white-space: nowrap;
    color: #fff;
    animation: loading 4.5s linear;

}






@keyframes loading {
    0% {
        max-width: 0;
    }
}



h1.maincopy {
 text-align: center;
 width: 100%;
 color: #fff;
 position: absolute;
 top: 40%;
 left: 50%;
 transform: translate(-50%, -50%) scale(1, 1);
 -webkit-transform: translate(-50%, -50%) scale(1, 1);
 -moz-transform: translate(-50%, -50%) scale(1, 1);
}


h1.maincopy img{
	width:315px;
	height:90px;
}





.topnav{
	font-size:0;
	line-height:0;
	vertical-align:0;
	margin:0 auto;
	text-align:center;
	width:960px;
	
 position: absolute;
 top: 58%;
 left: 50%;
 transform: translate(-50%, -50%) scale(1, 1);
 -webkit-transform: translate(-50%, -50%) scale(1, 1);
 -moz-transform: translate(-50%, -50%) scale(1, 1);
	
}


.topnav li{
	display:inline-block;
}

.topnav li a{
	color:#fff;
font-family: 'Teko', sans-serif;
font-weight:300;
font-size:20px;
font-size:2.0rem;
letter-spacing:0.5rem;
}


.topnav li a {
display: block;
  position: relative;
  text-decoration: none;
  margin: 0 30px;}
.topnav li a::before,
.topnav li a::after {
  border-bottom: solid 1px #e60012;
  bottom: 0;
  content: "";
  display: block;
  position: absolute;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
.topnav li a::before {
  left: 50%;
}
.topnav li a::after {
  right: 50%;
}
.topnav li a:hover::before,
.topnav li a:hover::after {
  width: 50%;
}




.snsnav{
	font-size:0;
	line-height:0;
	vertical-align:0;
	margin:0 auto;
	text-align:center;	
 position: absolute;
 top: 70%;
 left: 50%;
 transform: translate(-50%, -50%) scale(1, 1);
 -webkit-transform: translate(-50%, -50%) scale(1, 1);
 -moz-transform: translate(-50%, -50%) scale(1, 1);
 width:960px;
	
}


.snsnav li{
	display:inline-block;
	width:8%;
}

.snsnav li a{
	color:#808080;
font-size:20px;
font-size:2.0rem;
letter-spacing:0.5rem;
transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
}

.snsnav li a i{
	transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;

}

.snsnav li a i.fa-twitter:hover{
	color:#55ACEE;
}

.snsnav li a i.fa-facebook:hover{
	color:#305097;
}

.snsnav li a i.fa-instagram:hover{
	color:#fd1d1d;
}


.adress{
font-family: 'Teko', sans-serif;
letter-spacing:0.3rem;
	color:#fff;
 position: absolute;
 top: 80%;
 left: 50%;
	text-align:center;
	font-size:8px;
	font-size:0.8rem;
 transform: translate(-50%, -50%) scale(1, 1);
 -webkit-transform: translate(-50%, -50%) scale(1, 1);
 -moz-transform: translate(-50%, -50%) scale(1, 1);
}


.adress table{
	text-align:center;
	width:100%;
	margin-top:15%;
	opacity:0.8;
}




/*--topheader--*/
#mv {
 position: relative;
 z-index: 996;
 overflow: hidden;
}
#mv .sliderwidth ul li {
 height: 100vh !important;
 background-position: center top;
 background-image:url(/lib/cmn_img/mv01.jpg);
 background-attachment:fixed;
 background-size:cover;
 background-repeat:no-repeat;
 width: 100% ;
}
p.main_scroll {
 position: absolute;
 bottom: 20%;
 left: 15%;
}
/*--news--*/



#news {
 background-color: rgba(0,104,150,0.9);
 position: absolute;
 bottom: 0%;
 left: 50%;
 transform:  translate(-50%, 0) scale(1, 1);
 transform:  translate(-50%, 0) scale(1, 1);
 -webkit-transform: translate(-50%, 0) scale(1, 1);
 -moz-transform: translate(-50%, 0) scale(1, 1);
 width: 100%;
}
#news .newsname {
 color: #fff;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 float: left;
 padding-top: 26px;
 width: 10%;
 min-height: 75px;
}
#news .newsname h2 {
 font-size: 14px;
 font-size: 1.4rem;
 text-align: center;
 letter-spacing: 0.1rem;
 color: #fff;
}
#news p.newstx {
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 float: right;
 min-height: 75px;
 padding-top: 20px;
 width: 90%;
}
#news p.newstx a {
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 color: #fff;
 font-size: 14px;
 font-size: 1.4rem;
 display: inline-block;
 padding: 8px 0 10px 0;
 overflow: hidden;
 white-space: nowrap;
 text-overflow: ellipsis;
 vertical-align: middle;
 width: 70%;
}
#news p.newstx a:hover {
 text-decoration: underline;
}
#news p.view a {
 background-color: #111;
 color: #fff;
 font-size: 12px;
 font-size: 1.2rem;
 font-weight: 600;
 display: inline-block;
 position: absolute;
 padding: 10px 4%;
 right: 1%;
 top: 18px;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
 letter-spacing: 0.2rem;
}
#news p.view a:hover {
 background-color: #00405c;
}
.day {
 border-left:1px solid #fff;
 padding: 0 2%;
font-family: 'Josefin Sans', sans-serif;
 font-size: 18px;
 font-size: 1.8rem;
 display: inline-block;
 color: #fff;
 letter-spacing: 0.1rem;
 width: auto;
}



/*--about--*/


.aboutbox{
 background-image:url(/lib/cmn_img/bg.jpg);
 background-repeat:no-repeat;
 background-position:center center;
}



/*--contents--*/


.toppadding {
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 padding: 5% 1% 5% 5%;
}
.topimgheight a {
 background-repeat: no-repeat;
 background-position: center center;
 background-size: cover;
 padding-top: 25%;
 overflow: hidden;
 display: block;
 position: relative;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
 width: 100%;
}
.topimgheight1 a {
 background-image: url(/lib/cmn_img/mission.jpg);
}
.topimgheight2 a {
 background-image: url(/lib/cmn_img/company.jpg);
}
.topimgheight3 a {
 background-image: url(/lib/cmn_img/recruit.jpg);
}
.topimgheight a:hover {
 -webkit-transform: scale(1.05);
 transform: scale(1.05);
}
.smtx {
 position: absolute;
 left: 0;
 bottom: 2.5%;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 text-align: left;
 font-family: 'Teko', sans-serif;
 font-size: 34px;
 font-size: 3.4rem;
 letter-spacing: 0.6rem;
 color: #fff;
 display: block;
 padding-left: 25px;
}
.smtx small {
 font-size: 16px !important;
 font-size: 1.6rem !important;
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
 letter-spacing: 0.1rem;
}
.smtx img {
 margin-right: 10px;
 margin-bottom: 14px;
}

/*--business--*/

.inlineblocktop01 li{
  margin-right: 0 !important;
 width: 33.3333% !important;
}
.inlineblocktop01 li div{
 width: 100% !important;
 overflow: hidden;
 position: relative;
}
.inlineblocktop01 li div a {
 background-size: cover;
 background-position: center center;
 background-repeat: no-repeat;
 display: block;
 overflow: hidden;
 padding-top: 100%;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
 margin-right:0 !important;
}
.inlineblocktop01 li div a:hover {
 -webkit-transform: scale(1.05);
 transform: scale(1.05);
}
.inlineblocktop01 .tecnicalul01 a {
 background-image:url(/lib/cmn_img/business01.jpg);
}
.inlineblocktop01 .tecnicalul02 a {
 background-image:url(/lib/cmn_img/business02.jpg);
}
.inlineblocktop01 .tecnicalul03 a {
 background-image:url(/lib/cmn_img/business03.jpg);
}



.inlineblocktop01 li div p.zoom{
position: absolute;
right: 0;
bottom: 0;
}

.inlineblocktop01 li div p.zoom img{
 width:50px;
}



/*--facility--*/

.facbg{
 background-image:url(/lib/cmn_img/fac.jpg);
 background-repeat:no-repeat;
 background-position:center center;
 background-size:cover;
}








/*--other--*/

.inlineblocktop02 li{
}
.inlineblocktop02 li div{
 width: 100% !important;
 overflow: hidden;
 position: relative;
}
.inlineblocktop02 li div a {
 background-size: cover;
 background-position: center center;
 background-repeat: no-repeat;
 display: block;
 overflow: hidden;
 padding-top: 83%;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
 margin-right:0 !important;
}
.inlineblocktop02 li div a:hover {
 -webkit-transform: scale(1.05);
 transform: scale(1.05);
}
.inlineblocktop02 .tecnicalul01 a {
 background-image:url(/lib/cmn_img/topbtm1.jpg);
}
.inlineblocktop02 .tecnicalul02 a {
 background-image:url(/lib/cmn_img/topbtm2.jpg);
}
.inlineblocktop02 .tecnicalul03 a {
 background-image:url(/lib/cmn_img/topbtm3.jpg);
}

.inlineblocktop02 li div p.zoom{
position: absolute;
right: 0;
bottom: 0;
}

.inlineblocktop02 li div p.zoom img{
 width:50px;
}



/*--action--*/

.btmact {
 font-size: 0;
 line-height: 0;
}
.btmact li {
 background: #f9f9f9;
 display: inline-block;
 margin-right: 3.5%;
 width: 31%;
 vertical-align: middle;
}
.btmact li.last {
 margin-right: 0;
}
.btmact li a span {
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
 font-size: 10px;
 font-size: 1rem;
 font-weight: normal;
}
.btmact li a {
 color: #111;
 background: #f9f9f9;
 display: block;
 text-align: center;
 padding: 25px 0;
 font-size: 15px;
 font-size: 1.5rem;
 font-weight: bold;
 letter-spacing: 0.3rem;
 font-family: 'Teko', sans-serif;
 line-height: 1;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
}
.btmact li a .fa {
 padding-right: 0;
 display: block;
 padding-bottom: 10px;
 font-size: 25px;
 font-size: 2.5rem;
}
.btmact li a:hover {
 background: #92e924;
 color: #fff;
}

@media only screen and (max-width: 1350px) {
/*------------------------------------------------------------------------------------------------------------------------------------------------------------
	☆toppage
------------------------------------------------------------------------------------------------------------------------------------------------------------*/


/*--topheader--*/
.topimgheight a {
 padding-top: 35%;
}



}

@media only screen and (max-width: 1150px) {
/*------------------------------------------------------------------------------------------------------------------------------------------------------------
	☆toppage
------------------------------------------------------------------------------------------------------------------------------------------------------------*/


}

@media only screen and (max-width: 960px) {
/*------------------------------------------------------------------------------------------------------------------------------------------------------------
	☆toppage
------------------------------------------------------------------------------------------------------------------------------------------------------------*/




/*--topheader--*/

#news {
 left: 50%;
 transform: translate(-50%, 0%) scale(1,1);
 -webkit-transform: translate(-50%, 0%) scale(1,1);
 -moz-transform: translate(-50%, 0%) scale(1,1);
 width: 100%;
}
#news .newsname {
 float: none;
 padding-top: 10px;
 width: 100%;
 min-height: 45px;
 border-left: none;
}
#news .newsname h2 {
 font-size: 16px;
 font-size: 1.6rem;
}
#news p.newstx {
 float: none;
 min-height: 30px;
 padding-top: 0;
 width: 100%;
}
#news p.newstx a {
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 color: #fff;
 font-size: 12px;
 font-size: 1.2rem;
 display: inline-block;
 padding: 10px 0 10px 0;
 overflow: hidden;
 white-space: nowrap;
 text-overflow: ellipsis;
 vertical-align: middle;
 width: 65%;
}
#news p.newstx a:hover {
 text-decoration: underline;
}
.day {
 padding: 0 2%;
 font-size: 14px;
 font-size: 1.4rem;
 display: inline-block;
 letter-spacing: 0.1rem;
 border:none;
}
.toppadding {
 padding: 0 0 25px 0;
}

/*
.inlineblocktop02 li:nth-child(2n) {

    margin-right: 2% !important;

}*/

/*.inlineblocktop02 li{
 width:32% !important;
}
*/.inlineblocktop02 li.last {
 margin-right:0 !important;

}
}
@media only screen and (max-width:760px) {
/*------------------------------------------------------------------------------------------------------------------------------------------------------------
	☆toppage
------------------------------------------------------------------------------------------------------------------------------------------------------------*/

body {
 background-position:center center;
}

h1.maincopy {
 top: 25%;
}


h1.maincopy img{
	width:230px;
	height:66px;
}





.topnav{
	width:100%;
 top: 52%;
	
}


.topnav li{
	display:block;
}




.snsnav{
	font-size:0;
	line-height:0;
	vertical-align:0;
	margin:0 auto;
	text-align:center;	
 position: absolute;
 top: 70%;
 left: 50%;
 transform: translate(-50%, -50%) scale(1, 1);
 -webkit-transform: translate(-50%, -50%) scale(1, 1);
 -moz-transform: translate(-50%, -50%) scale(1, 1);
 width:960px;
	
}


.snsnav li{
	display:inline-block;
	width:5%;
}



.adress{
 top: 85%;
}



.topnav li a {
display:inline-block;
}


}
