/* http: //jigsaw.w3.org/css-validator/ */

/* Scroll bar fix for Firefox */
html{
	height: 100%;
}

/* body */
body{
	color: #333;
	font-size: 15px;
	line-height: 1.75;
/*	word-break:break-all;
	word-wrap:break-word;*/
	position: relative;
	font-family:"ヒラギノ角ゴ Pro W3", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
}

dl, p, ul, ol {
	line-height: 1.75;
}

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

a{
	color: #fff;
}

a:link,a:visited,a:hover,a:active{
	color: #fff;
}

.wrapper{
	position: relative;
	margin:0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
}

body, html{
	height: 100%;
}

h2{
	font-size: 1.2em;
	margin:0;
	padding-bottom: 0;
}

.h2_com{
	font-weight: normal;
	color: #fc0;
}

/* background slideshow */
.bg-slider {
	width: 100vw;
	height: 100vh;
	background-position:center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}
.bg-slider__title{
	color: #fff;
	font-size: 24px;
	line-height: 1.5;
	font-weight: bold;
	text-align:center;
	text-shadow: 1px 3px 4px #000;
}

.company_link{
	line-height: 1.2;
	margin-top: 0;
	margin-bottom: 5px;
}

.company_link a{
	display: inline-block;
	width: 500px;
	max-width: 94%;
	padding-top: 3px;
	padding-bottom: 3px;
	background: rgba(0,0,0,0.5);
	text-decoration: none;
}

.company_link a:hover{
	background: rgba(0,0,0,0.7);
}


/* ### for PC and tablet ### */
@media (min-width: 768px){
	body{
		/*font-family: 'Noto Sans JP', sans-serif;*/
	}
	body .pc{
		display: block;
	}
	body .sp{
		display: none;
	}
	.wrapper{
		width:1000px;
	}
	h1{
		font-size: 2em;
		margin-top: 0;
		margin-bottom: 20px;
	}
}

/* ### for smartphone ### */
@media (max-width: 767px){
	body .pc{
		display: none;
	}
	body .sp{
		display: block;
	}
	.bg-slider__title{
		font-size: 20px;
	}
	.wrapper{
		width:100%;
	}
	h1{
		font-size: 1.3em;
		margin-top: 0;
		margin-bottom: 0;
	}
	h2{
		font-size: 1.1em;
	}
	.company_link a{
		font-size: 0.9em;
	}
}

body .mt0{
	margin-top: 0 !important;
}

body .mt10{
	margin-top: 10px !important;
}

body .mt20{
	margin-top: 20px !important;
}

body .mt30{
	margin-top: 30px !important;
}

body .mt40{
	margin-top: 40px !important;
}

body .mt50{
	margin-top: 50px !important;
}

body .mt60{
	margin-top: 60px !important;
}

body .mt70{
	margin-top: 70px !important;
}

body .mt80{
	margin-top: 80px !important;
}

body .mt90{
	margin-top: 90px !important;
}

body .mt100{
	margin-top: 100px !important;
}

body .mb0{
	margin-bottom: 0 !important;
}

body .mb10{
	margin-bottom: 10px !important;
}

body .mb20{
	margin-bottom: 20px !important;
}

body .mb30{
	margin-bottom: 30px !important;
}

body .mb40{
	margin-bottom: 40px !important;
}

body .mb50{
	margin-bottom: 50px !important;
}

body .mb60{
	margin-bottom: 60px !important;
}

body .mb70{
	margin-bottom: 70px !important;
}

body .mb80{
	margin-bottom: 80px !important;
}

body .mb90{
	margin-bottom: 90px !important;
}

body .mb100{
	margin-bottom: 100px !important;
}

.clear{
	clear: both;
}

.bold{
	font-weight: bold;
}

.small_font{
	font-size: 0.7em;
}

/* Swiper.js */
@-webkit-keyframes zoomUp {
	0% {
	-webkit-transform: scale(1);
	transform: scale(1);
	}
	100% {
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
	}
}
	
@keyframes zoomUp {
	0% {
	-webkit-transform: scale(1);
	transform: scale(1);
	}
	100% {
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
	}
}
	
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
	-webkit-animation: zoomUp 12s linear 0s;
	animation: zoomUp 12s linear 0s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
.swiper-slide {
	overflow: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.slide-img {
	background-size: cover;
	background-position: center center;
	height: 100vh;
}
	
#toppage .slide-img{
	height: 100vh;
}
	
.slide-text {
	position: absolute;
	z-index: 10;
	font-size: 24px;
	color: #fff;
	width: 100%;
	top: 50%;
	transform: translateY( -50% );
	text-align: center;
	font-weight: bold;
}
	
#toppage .slide-text{
	text-align: center;
/*	text-shadow: 0px 1px 5px black;*/
	text-shadow:0px 1px 5px rgba(0, 0, 0, 100),0px 1px 5px rgba(0, 0, 0, 100),0px 1px 5px rgba(0, 0, 0, 100);
	top: unset;
	bottom: 10%;
	transform: none;
}
	
.slide-text p{
	margin: 0;
}
	
.slide-text strong{
	color: #ff4444;
	font-size: 1.25em;
	font-weight: bold;
	background: linear-gradient(transparent 60%, #ffa 60%);
}

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


/* clearfix */
.clearfix:after{
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility:hidden;
	line-height:0;
}

.clearfix{display: inline-block;}

/* Hides from IE Mac \*/
* html .clearfix {height: 1%;}
.clearfix{display:block;}
/* End Hack */
