@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;
    }
}




/*--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% ;
}
h1.maincopy {
 text-align: center;
 width: 100%;
 color: #fff;
 position: absolute;
 top: 48%;
 left: 50%;
 transform: translate(-50%, -50%) scale(0.95, 0.95);
 transform: translate(-50%, -50%) scale(0.95, 0.95);
 -webkit-transform: translate(-50%, -50%) scale(0.95, 0.95);
 -moz-transform: translate(-50%, -50%) scale(0.95, 0.95);
}
p.main_scroll {
 position: absolute;
 bottom: 20%;
 left: 15%;
}
/*--news--*/



#news {
 background-color: rgba(0,0,0,0.8);
 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: 25px;
 width: 10%;
 min-height: 75px;
}
#news .newsname h2 {
 font-size: 18px;
 font-size: 1.8rem;
 text-align: center;
 letter-spacing: 0.5rem;
 color: #fff;
 font-weight:normal;
}
#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: #c3143b;
 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: #660018;
}
.day {
 border-left:1px solid #c3143b;
 padding: 0 2%;
 font-family: 'Teko', 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--*/


.twoinlineblock li div{
 width: 100% !important;
 overflow: hidden;
 position: relative;
}
.twoinlineblock li div a {
 background-size: cover;
 background-position: center center;
 background-repeat: no-repeat;
 display: block;
 overflow: hidden;
 padding-top: 53%;
 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;
}
.twoinlineblock li div a:hover {
 -webkit-transform: scale(1.05);
 transform: scale(1.05);
}
.twoinlineblock .tecnicalul01 a {
 background-image:url(/lib/cmn_img/top02.jpg);
}
.twoinlineblock .tecnicalul02 a {
 background-image:url(/lib/cmn_img/top03.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/top04.jpg);
 background-repeat:no-repeat;
 background-position:center center;
 background-size:cover;
 background-attachment:fixed;
}








/*--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: 65%;
 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/sales/sale01.jpg);
}

.inlineblocktop02 .tecnicalul02 a {
 background-image:url(/lib/cmn_img/rental/sale01.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 {
 background: rgba(195,20,59,0.7);
 float: none;
 padding-top: 5px;
 width: 100%;
 min-height: 35px;
 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: 0% !important;

}

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

}

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


h1 {
    font-size: 2.2rem;
}



h1 {
}
h1:before {
    content: attr(data-text);
    position: absolute;
    overflow: hidden;
    max-width: 15rem;
    white-space: nowrap;
    color: #fff;
    animation: loading 2s linear;

}


.inlineblocktop01 li{
  margin-right: 0 !important;
 width: 100% !important;
 margin-bottom:10px;
}


.inlineblocktop01 li.last{
 margin-bottom:0 ;
}
.inlineblocktop02 li{
 width:100% !important;
}


}
