
@charset "UTF-8";
/*基本*/
.mv{
	position: relative;
}
.mv >div{
	position: absolute;
	top: 50%;
	left: 13%;
	transform: translateY(-50%);
}
.mv h1{
	font-size: 34px;
	letter-spacing: 0.2em;
	line-height: 1;
	color: #fff;
	font-weight: 600;
	margin-bottom: 20px;
}
.h1_en{
	font-size: 13px;
	letter-spacing: 0.08em;
	margin-bottom: 20px;
	color: #fff;
	font-weight: 500;
}
.mv div p{
  color: #fff;
}
main{
	overflow: hidden;
}
main section {
  padding: 130px 0;
}
.inner{
	max-width: 1230px;
	padding: 0 15px;
	margin: 0 auto;
}

h2{
	font-size: 42px;
	margin-bottom: 15px;
	overflow: hidden;
	letter-spacing: -0.08em;
	font-weight: 600;
}
.h2_ja{
	font-size: 15px;
	letter-spacing: 0.46em;

}
.br-767,.br-500{
  display: none;
}
/*会社概要////////////*/
main section.company{
  padding-bottom: 0;
}
.company{
  background: #fff;
	text-align: center;
}
.company .h2_ja{
  margin-bottom: 110px;
}
.company-table{
  max-width: 1000px;
  text-align: justify;
  margin: 0 auto;
}
.table-inner {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 30px 0;
}
.table-inner.in2,
.table-inner.in3{
  align-items: flex-start;
}
.table-ttl{
  width: 25%;
  padding-left: 5px;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 2.2;
}
.table-read{
  width: 75%;
  padding-left: 120px;
  box-sizing: border-box;
  border-left: #d2d2d2 1px solid;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.2;
  letter-spacing: 0.16em;
}
/*アクセス////////////*/
main section.access{
  padding-bottom: 20px;
}
.access{
  background-color: #fff;
  text-align: center;
}
.access .h2_ja{
  margin-bottom: 60px;
}
.map{
  margin: 0 calc(50% - 50vw);
}
.map iframe{
  width: 100vw;
  height: 520px;
}
/*コンタクト////////////*/
.contact{
	background: #fff;
	text-align: center;
}
.contact .sub_text{
	margin: 50px 0 45px;
}
.contact a{
	display: inline-block;
	padding: 20px 45px;
	border: 1px solid #aaa;
	font-size: 14px;
	transition-duration: 0.3s;
}
.contact a:hover{
	background: #78b58e;
	border: 1px solid #78b58e;
	color: #fff;
}
@media (max-width:1450px){
	.mv >div{
		left: 30px;
	}
}
@media (max-width:1100px){
	.table-ttl{
    padding-left: 15px;
  }
}
@media (max-width:1000px){
	.mv h1{
		font-size: 23px;
	}
	.h1_en{
		margin-top: 10px;
	}
	h2{
		font-size: 32px;
	}
	.h2_ja{
		font-size: 12px;
	}
	.step_num span{
		font-size: 10px;
	}
	.step_num{
		font-size: 30px;
	}
	.flow_wrap{
		flex-wrap: wrap;
	}
	.flow_wrap .flow_li{
		width: 50%;
	}
	.flow_wrap .flow_li:nth-of-type(2)::after{
		display: none;
	}
	.flow_wrap .flow_li:nth-of-type(1),.flow_wrap .flow_li:nth-of-type(2){
		margin-bottom: 20px;
	}
	.flow_wrap .flow_li:nth-of-type(3):before{
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 40px solid transparent;
		border-bottom: 40px solid transparent;
		border-left: 25px solid #f9f9f9;
	}
	main section{
		padding: 100px 0;
	}
	.mv >div{
		top: 70%;
	}	
}
@media (max-width:768px){
	.mv h1{
		font-size: 18px;
	}
  .mv h1{
    margin-bottom: 12px;
  }
  .h1_en{
    margin-bottom: 12px;
  }
  .br-767{
    display: block;
  }
  .company .h2_ja{
    margin-bottom: 50px;
  }
  .table-read{
    padding-left: 60px;
    padding-right: 15px;
  }
}
@media (max-width:767px){
	.mv >div{
		top: 50%;
	}
}
@media (max-width:500px){

  main section{
		padding: 70px 0;
	}
  .company .h2_ja{
    margin-bottom: 30px;
  }
  .table-inner{
    padding: 20px 0;
  }
  .table-ttl{
    font-size: 15px;
    padding-left: 5px;
  }
  .table-read{
    padding-left: 25px;
	font-size: 15px;
  }
  .br-500{
    display: block;
  }
  .map iframe{
    height: 350px;
  }
}
@media (max-width:420px){
	.step_text{
		font-size: 12px;
	}
	.step{
		padding-bottom: 20px;
	}
}

/* inview */
h1.inview_top{
	opacity: 0;
	filter:blur(10px);
	transition-duration: 0.8s;
	transition-delay: 1.2s;
}
h1.inview_top.is-show{
	opacity: 1;
	filter: blur(0);
}
.h1_en.inview_top{
	opacity: 0;
	filter:blur(10px);
	transition-duration: 0.8s;
	transition-delay: 0.5s;
}
.h1_en.inview_top.is-show{
	opacity: 1;
	filter: blur(0);
}
p.inview_top.mv_text{
  opacity: 0;
	filter:blur(10px);
	transition-duration: 0.8s;
	transition-delay: 1.7s;
}
p.inview_top.mv_text.is-show{
  opacity: 1;
	filter: blur(0);
}
.block-revealer__element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #226293;
    pointer-events: none;
    opacity: 0;
}
/*文字の出現*/
.drop.inview{
	transform: translateY(-100%) rotate(-135deg);
	display: inline-block;
	transition: 0.6s;
}
.drop.inview:nth-of-type(2){
	transition-delay: 0.2s;
}
.drop.inview:nth-of-type(3){
	transition-delay: 0.4s;
}
.drop.inview:nth-of-type(4){
	transition-delay: 0.6s;
}
.drop.inview:nth-of-type(5){
	transition-delay: 0.8s;
}
.drop.inview:nth-of-type(6){
	transition-delay: 1s;
}
.drop.inview:nth-of-type(7){
	transition-delay: 1.2s;
}
.drop.inview:nth-of-type(8){
	transition-delay: 1.4s;
}
.drop.inview:nth-of-type(9){
	transition-delay: 1.6s;
}
.drop.inview.is-show{
	transform: translateY(0);
}

.business_text h2.inview{
	opacity: 0;
	filter: blur(10px);
	transition-duration: 1s;
	transition-delay: 0.5s;
}
.business_text h2.inview.is-show{
	opacity: 1;
	filter: blur(0);
}
.rec_img img{
	transform: scale(1.4);
	opacity: 0;
	transition-duration: 2s;
}
.rec_img img.img2{
	transition-delay: 0.3s;
}
.rec_img img.is-show{
	opacity: 1;
	transform: scale(1);
}
.flow_li{
	opacity: 0;
	transform: translateX(-5%);
	transition-duration: 1s;
}
.flow_li:nth-of-type(2){
	transition-delay: 0.3s;
}
.flow_li:nth-of-type(3){
	transition-delay: 0.6s;
}
.flow_li:nth-of-type(4){
	transition-delay: 0.9s;
}
.flow_li.is-show{
	transform: translateX(0);
	opacity: 1;
}
.job{
	opacity: 0;
	transition: 1s;
}
.job.is-show{
	opacity: 1;
}
.job:nth-of-type(2),.job:nth-of-type(3){
	transition-delay: 0.3s;
}
.job:nth-of-type(4){
	transition-delay: 0.6s;
}