@charset "UTF-8";
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -webkit-appearance: none;
  outline: none;
  -moz-osx-font-smoothing: grayscale;
}
/* reset
----------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

button:focus {
  outline: none;
}

button {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
}

input[type="text"],
input[type="search"],
input[type="submit"],
input[type="reset"] {
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  outline: none;
}

input[type="submit"],
input[type="reset"] {
  cursor: pointer;
}

button:focus {
  outline: none;
}

button {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
}

input[type="text"],
input[type="search"],
input[type="submit"],
input[type="reset"] {
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  outline: none;
}

input[type="submit"],
input[type="reset"] {
  cursor: pointer;
}

/* base
----------------------------------------------------------*/
html {
  height: 100%;
  font-size: 62.5%;
}

body {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #333;
  -webkit-text-size-adjust: 100%;
}
h1,h2,h3,h4,h5 {
	line-height:1.47;
}


img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

a {
  text-decoration: none;
  color: #333;
  transition:all .5s;
}
a:hover {
	opacity:.8;
}
strong {
    font-weight: bold;
}
.preloader,.preloader__img{top:0;bottom:0;left:0;right:0}
.preloader{position:fixed;background:#fff;overflow:hidden;z-index:1000}
.preloader__img{position:absolute;margin:auto;z-index:7}
{
	width:100%;
	height:100vh;
	min-height:640px;
	position:relative;
}
footer {
	width:100%;
	position:fixed;
	bottom:0;
}
.forSp {
	display:none;
}
.home_wrap {
	overflow-y:auto;
}
.home_container {
	width:100%;
	height:100%;
	/*min-height: 600px;*/
	position:relative;
}
.pc .home_container {
	min-width:768px;
}
.home_container h1  {
	margin:0 auto;
	padding:20px 60px 40px;
	text-align:center;
}
.home_container h1 img {
	width:400px;
}
.swiper-wrapper {
	position:fixed;
	width:100%;
	height:100vh;
	top:0;
	left:0;
}
.swiper-container {
	position:absolute;
	top:0;
	width:100%;
	height:100%;
	z-index:-100;
}
.swiper-wrapper div {
	height:100%;
}
.slide01 {
	background:url(../img/slide01.jpg) no-repeat center top;
	background-size:cover;
}
.slide02 {
	background:url(../img/slide06.jpg) no-repeat center top;
	background-size:cover;
}
.slide03 {
	background:url(../img/slide03.jpg) no-repeat center top;
	background-size:cover;
}
.slide04 {
	background:url(../img/slide04.jpg) no-repeat center top;
	background-size:cover;
}
.slide05 {
	background:url(../img/slide05.jpg) no-repeat center top;
	background-size:cover;
}
/*.btn_to_site_wrap {
	padding-bottom:120px;
}*/
.hikui .btn_to_site_wrap {
	padding-bottom:30px;
}
.hikui footer {
	position:relative;
}
.btn_to_site {
    max-width: 1280px;
    /*position: absolute;
    bottom: 200px;*/
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    -webkit-justify-content:space-between;
    justify-content: space-between;
		flex-wrap: wrap;
    padding: 0 20px;
		margin-right:auto;
		margin-left:auto;
}
.btn_to_site li {
	width:50%;
	padding:10px 10px;
	/* background:rgba(255,255,255,.3);
	box-shadow:0px 0px 5px #333; */
}
.btn_to_site a {
	height:100%;
	padding:5px 10px;
	display:block;
	color:#fff;
	font-weight:bold;
	font-size:22px;
	text-align:center;
}
.btn_to_site a span.site {
	font-size:18px;
}
/*@media screen and (max-width:360px) {
	.home_container h1 {
		padding: 20px 40px 20px;
	}
	.btn_to_site a span.site {
		display:block;
	}
	.btn_to_site {
		bottom:160px;
	}
}*/

.btn_to_site a:after {
	content:'\f152';
	font-family:FontAwesome;
	display:block;
}
.btn_to_site .recnavi a {
	font-size:13px;
	padding:10px;
}
.btn_to_site .recnavi img {
	margin-top:4px;
}
.btn_to_site .recnavi a:after {
	content:'';
	display:none;
}
@media screen and (max-width:768px) {
	.btn_to_site .recnavi a {
	font-size:10px;
	padding:6px 5px 7px;
	}
	.btn_to_site .recnavi img {
		width:120px;
	}
	.forSp {
		display:block;
	}
	.forPc {
		display:none;
	}
	.slide01 {
	background:url(../img/slide_sp01.jpg) no-repeat center top;
	background-size:cover;
}
.slide02 {
	background:url(../img/slide_sp06.jpg) no-repeat center top;
	background-size:cover;
}
.slide03 {
	background:url(../img/slide_sp03.jpg) no-repeat center top;
	background-size:cover;
}
.slide04 {
	background:url(../img/slide_sp04.jpg) no-repeat center top;
	background-size:cover;
}
.slide05 {
	background:url(../img/slide_sp05.jpg) no-repeat center top;
	background-size:cover;
}
.btn_to_site {
	flex-wrap: wrap;
	/*bottom:140px;*/
	/* bottom:22%;
	position:absolute; */
}
.btn_to_site li {
	width:100%;
	margin-bottom:0px;
	padding:5px 10px;
}
.btn_to_site li a {
	padding:10px 5px;
}
.btn_to_site a:after {
	display:inline-block;
	float:right;
}
}
.btn_to_site div.cover {
	padding:3px;
	background: rgba(255,255,255,.3);
    box-shadow: 0px 0px 5px #333;
}

.to_shinsotsu a {
	background: rgb(212,25,32);
	background: -moz-linear-gradient(left, rgba(212,25,32,1) 0%, rgba(238,28,35,1) 100%);
	background: -webkit-linear-gradient(left, rgba(212,25,32,1) 0%,rgba(238,28,35,1) 100%);
	background: linear-gradient(to right, rgba(212,25,32,1) 0%,rgba(238,28,35,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d41920', endColorstr='#ee1c23',GradientType=1 );
}
.to_chuto a {
	background: rgb(0,102,179);
	background: -moz-linear-gradient(left, rgba(0,102,179,1) 0%, rgba(0,87,153,1) 100%);
	background: -webkit-linear-gradient(left, rgba(0,102,179,1) 0%,rgba(0,87,153,1) 100%);
	background: linear-gradient(to right, rgba(0,102,179,1) 0%,rgba(0,87,153,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0066b3', endColorstr='#005799',GradientType=1 );
}
.to_engineer a {
	background: #212A6D;
}
.to_comeback a {
	background: #19a2cf;
}
footer a {
	color:#fff;
	font-weight:bold;
	display:block;
	text-align:center;
	font-size:16px;
}
footer ul {
	border-top: 3px solid #fff;
}
footer ul:after {
	content:'';
	display:block;
	clear:both;
}
.to_nextage a {
	padding:15px 5px;
	border-bottom:3px solid #fff;
	background: #005bac;
}
.to_nextage a:after {
	content:'\f0a9';
	font-family:FontAwesome;
	padding-left:15px;
}
.btn_tw {
	background: #4caaf0;
}
.btn_tw a {
	padding:10px 5px;
	font-size:12px;
}
.btn_tw a:before {
	content:'\f099';
	font-family:FontAwesome;
	padding-right:15px;
	font-size:16px;
}
.btn_fb {
	background: #37589b;
}
.btn_fb a {
	padding:10px 5px;
	font-size:12px;
}
.btn_fb a:before {
	content:'\f09a';
	font-family:FontAwesome;
	padding-right:15px;
	font-size:16px;
}

.btn_tw,
.btn_fb {
	width:50%;
	float:right;
	border-bottom:3px solid #fff;
}
.copyright {
	padding:5px;
	background: #fff;
	text-align:center;
	font-weight:bold;
	font-size:10px;
}

@media screen and (max-width:767px) {
	.btn_to_site li a {
padding: 8px 10px;
}
.btn_to_site li {
    padding: 5px 0px;
}
}
@media only screen and (orientation: landscape) and (max-width: 768px) {
	.home_container h1 {
		width: 200px;
		padding: 5px 30px 40px;
	}	
	.btn_to_site {
		bottom: 160px;
	}
	.home_container h1 {
	width:240px;
	padding: 10px 30px 40px;
}
footer ul {
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	flex-direction:row-reverse;
	align-items:stretch;
}
.to_nextage {
	width:50%;
}
.btn_to_site a:after {
	padding-left:15px;
	display:inline;
}
.btn_tw,
.btn_fb {
	width:25%;
	float:none;
}
.btn_tw a,
.btn_fb a {
	padding: 15px 5px;
}
.to_chuto.recnavi img {
	width:120px;	
}
.to_chuto.recnavi a {
	font-size:10px;
}
}
@media screen and (min-width:768px) {
	
	/*.btn_to_site {
    	bottom: 60px;
	}*/
	.btn_to_site a {
	    padding: 20px 10px;
		font-size:32px;
		letter-spacing:1px;
	}
	.btn_to_site a span.site {
    	font-size: 24px;
		padding-left:3px;
	}
	footer ul {
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	flex-direction:row-reverse;
	align-items:stretch;
}
.to_nextage {
	width:50%;
}
.btn_to_site a:after {
	padding-left:15px;
	display:inline;
}
.btn_tw,
.btn_fb {
	width:25%;
	float:none;
}
.btn_tw a,
.btn_fb a {
	padding: 15px 5px;
}
.low .home_container h1 {
	margin-bottom:50px;
}
.low .home_container h1 img {
	width:400px;
}
.low .home_wrap,
.swiper-wrapper, .swiper-container {
	/* height:100%; */
	min-height:740px;
}
.low .home_container {
	height:700px;
}
.low footer {
	position:relative;
}
.low .btn_to_site {
	position:relative;
	bottom:0;
}
.low .btn_to_site li {
	margin-bottom:40px;
}

.high .home_container h1 img {
	width:auto;
}
.high .home_container h1 {
	padding-top:50px;
}
}
@media screen and (min-height:880px) {
	.btn_to_site_wrap {
		padding-top:8vh;
	}
}
@media screen and (min-height:880px) and (max-width:768px) {
	.btn_to_site_wrap {
    padding-top: 2vh;
	}
}
@media screen and (max-width:768px) {
	.btn_to_site_wrap {
    padding-top: 1vh;
		padding-bottom: 10px;
	}
	/* footer {
    position: relative;
	} */
}
@media screen and (max-width:767px) {
	.home_container h1 {
    padding: 20px 60px 20px;
	}
	footer {
    position: relative;
	}
}
@media screen and (max-width:767px) and (min-height:737px) {
	footer {
    position: fixed;
	}
}
@media screen and (min-width:769px) and (max-height:680px) {
	footer {
    position: relative;
	}.btn_to_site_wrap {
    padding-bottom: 50px;
	}
}
@media screen and (max-width:320px) {
	.btn_to_site li a {
    padding: 5px 5px;
    font-size: 18px;
	}
.btn_to_site_wrap {
    padding-bottom: 20px;
}
}