@charset "utf-8";


/*
light 300
regular 400
medium 500
bold 700
*/
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 default
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
/*
font-family: 'Noto Sans JP', sans-serif;

*/


body{
	font-family: 'Noto Serif JP', serif;
  position: relative;
  font-size: 1.6rem;
  font-weight: 500;
  color: #000;
}
html{
	font-size:62.5%;
}

.font-serif{
	font-family: 'Noto Serif JP', serif;
}

.font-sans-serif{
	font-family: 'Noto Sans JP', sans-serif;
}

img{
  max-width: 100%;
  line-height: 0;
	vertical-align: bottom;
}
*{ box-sizing: border-box;}
table{border-collapse:collapse;border-spacing:0;}
a{outline:none !important;}
a:focus{outline:none !important;}
a:link{color: #000; text-decoration:none;}
a:visited{color: #000; text-decoration:none;}
a:hover{color: #000; text-decoration:underline;}
a:active{color: #000; text-decoration:underline;}


.w100{
  width: 100%;
}

.hidden-title{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  border: 0px none;
}

.color-accent{
	color:#40B7BD;
}

.relative{
		position: relative;
}
.bold{
	font-weight: bold;
}
section{
	position: relative;
	overflow: hidden;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 hover
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
.over input,
.over a{
  text-decoration: none;
}
#page_top > img:hover,
.over input:hover,
.over a:hover,
.over li a:hover{
	filter: alpha(opacity=70);
	moz-opacity: 0.5;
	opacity: 0.5;
  transition: opacity 0.3s;
  text-decoration: none;
}
.txt_c{text-align:center;}
.txt_r{text-align:right;}
.txt_l{text-align:left;}


#page_top > img{
	cursor: pointer;
}

header{
	position: relative;
}


.page-404{
	padding: 80px 16px;
}

.page-404 h2{
	font-size: 2rem;
	margin-bottom: 1em;
}

.eff-fadeup {
	opacity: 0;
	transform: translate(0, 60px);
	-webkit-transform: translate(0, 60px);
	transition: .8s;

}
.fadeup {
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}


@-webkit-keyframes zoomUp {
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}

@keyframes zoomUp { /* 1.15倍させる指定 */
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}


.swiper-slide {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  
    -webkit-animation: zoomUp 10s linear 0s;
    animation: zoomUp 10s linear 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards ;
  
  
}

.slide-img img{
  display: block;
  width: 100%;
}

#page_top{
	display: block;
	width: 48px;
	height: 48px;
	position: fixed;
	right: 40px;
	bottom: 40px;
	z-index: 10;	
}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 PC
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

@media screen and (min-width: 769px) {
  .sp{display:none !important;}
  .inner{
    max-width: 1032px;
    padding: 0px 16px;
    margin: 0 auto;
  }
  
	.anc{
	   margin-top:-80px;
	  padding-top:80px;
	}  
  header{
    background-color: rgba(255, 255, 255, 0.5);
	  border-bottom: 1px solid #D8D8D8;
 /*
    position: fixed;
    z-index: 999;
    padding:16px;
*/
  }
  
  .header-area{
	  position: relative;
	  height: 130px;
	  width: 100%;
	  border-bottom: 1px solid #D8D8D8;
  }
	
	header h1{
		position: absolute;
		top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	}

	.logo img{
		width:82px;
	}
	
	header .link-area{
		width: 100%;
		max-width: 1032px;
	  display: flex;
	  align-items: center;
	  justify-content: flex-end;
    padding: 0px 16px;
    margin: 0 auto;
	  height: 130px;
	}
	
	header .link{
		display: flex;
		align-items: center;

	}
	footer .link4 img,
	header .link img{
		width: 24px;
	}
	
	header .link {
		font-size: 12px;
	}
	footer .icon-fb,
	header .icon-fb{
		margin-right: 8px;
	}

	footer .btn-online,
	header .btn-online{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 200px;
		height: 40px;
		text-align: center;
		border: 1px solid #D8D8D8;
		border-radius: 20px;
		margin-right: 30px;
		background-color: #ffffff;
	}
	
	header .btn-online span{
		display: flex;
	}
	
	header .btn-online span:after{
		content: "";
		width: 18.3843px;
		height: 19px;
		display: inline-block;
	  background-image: url('../images/icon_cart.png');
	  background-position: center center;
	  background-size:contain;
	  background-repeat: no-repeat;
	  margin-left: 16px;
	}
	
	header .nav ul{
		display: flex;
		justify-content:space-between;
		align-items: center;
		font-size: 1.6rem;
	}
	
	header .nav ul li{
		width: 200px;
		text-align: center;
		padding: 14px 0;
	}
	header .nav ul li a{
		display: block;
		border-right: 1px solid #D8D8D8;
	}
	header .nav ul li:first-child a{
			border-left: 1px solid #D8D8D8;
	}
	
	
	footer{
		background-color: #E0E0E0;
		padding: 75px 0 20px;
		font-size: 1.4rem;
	}
	footer .link1 img{
		width: 194px;
	}
	footer .link1 ,
	footer .link2 ,
	footer .link3 {
		width: 250px;
	}
	footer .link1{
		margin-right: 20px;		
	}

	
	footer .link4 {
		width: 240px;
	}
	
	footer .link2{
		min-width: 200px;
	}
	
	
	footer .links-wrap{
		display: flex;
		justify-content:center;
		margin-bottom: 65px;
	}
	
	footer .links-wrap a > span:after{
		content: "";
		width: 5.833px;
		height: 10px;
		display: inline-block;
	  background-image: url('../images/icon_arrow.png');
	  background-position: center center;
	  background-size:contain;
	  background-repeat: no-repeat;
	  margin-left: 16px;
	}
	footer .link3 li,
	footer .link2 li{
		margin-bottom: 1em;
	}
	footer .btn-online{
		margin-bottom: 20px;
		margin-right: 0;
		width: 240px;
		height: 48px;
		border-radius: 24px;

	}	
	
	footer .sns-links{
		text-align: right;
		margin-right: 40px;
	}
	footer .copy{
		font-size: 1.2rem;
		color: #7F7F7F;
		text-align: center;
	}
	
	.bg-img .catch{
		padding-left: 20%;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 SP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

@media screen and (max-width: 768px) {

  html {
   font-size: 1.3333vw;
  }

  body{
    font-size: 2.4rem;
  }
  body img{width:100%;}
  .pc{display:none !important;
  }
	.anc{
	  margin-top:-12vw;
	  padding-top:12vw;
	}
	main{
		padding-top: 12vw;
	}
  .inner{
    padding: 0 4vw;
    margin: 0 auto;
  }
  
  section{
    overflow: hidden;
  }
  
  header{
    width: 100%;
    height: 12vw;
    background-color: rgba(255, 255, 255, 1);
    position: fixed;
    z-index: 999;
  }
	.logo img{
		width:7.4667vw;
	}
	.header-area{
		display: flex;
		align-items: center;
		justify-content: space-between;
    height: 12vw;
    padding: 0 3.7333vw;
	}
		
	h1 a img{
		display: block;
	}
	
	header .btn-online{
		display: block;
		width: 7.4667vw;
		height: 7.4667vw;
		border-radius: 50%;
		border: 1px solid #D8D8D8;
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 1em;
	}
	
	header .btn-online img{
		width: 3.6vw;
	}

	header .link{
		display: flex;
		align-items: center;
	}
	
	header .link li:first-child{
		margin-right: 4vw;
	}
  .btn-menu{
    display: block;
    position: relative;
    width: 6.4vw;
    height: 6.4vw;
    background-color: rgba(255, 255, 255, 1);
  }

  
  .btn-menu span{
    position: absolute;
    width: 6.4vw;
    height: 2px;
    background-color: #40B7BD;
    -webkit-transition: transform .4s;
    transition: transform .4s;
  }
  .btn-menu span:nth-of-type(1){
    top:0.8vw;
  }
  .btn-menu span:nth-of-type(2){
    top:calc(50% - 1px);
  }
  .btn-menu span:nth-of-type(3){
    bottom:0.8vw;
  }
  .btn-menu.active span:nth-of-type(1) {
    transform: translateY(2.2667vw) rotate(-315deg);
  }
  .btn-menu.active span:nth-of-type(2) {
    opacity: 0;
    transition:opacity 0.3s ease-in-out;
  }
  .btn-menu.active span:nth-of-type(3) {
    transform: translateY(-2.2667vw) rotate(315deg);
  }


  header .nav{
    display: block;
    position: absolute;
    transition: 0.5s ease-in-out;
    overflow: hidden;
		width: 100%;
    left:0;
    top:12vw;
    background-color: rgba(255, 255, 255, 0.85);
    white-space: nowrap;
    max-height: 0;
    overflow-y: auto;
 }
  
  header .nav .inner{
    padding: 2em 0;
  }

  header .nav.active{
    max-height: 100vh;
  }

  header .nav li{
    text-align: center;
    margin-bottom: 1em;
  }
  header .nav li > a {
		display: block;
    text-decoration: none;
    color: #757575;
    padding: 1em 0;
    font-size: 2.8rem;
  }
 /* 
  header .nav li > a:hover {
    color: #ff1493;
  }
  
*/
	header .btn-online2{
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 2.1rem !important;
		width: 48vw;
		height: 9.6vw;
		text-align: center;
		border: 1px solid #D8D8D8;
		border-radius: 4.8000vw;
		background-color: #ffffff;
		padding:  0;
		margin: 3em auto 0;
		line-height: 2.5rem;
	}

	footer .links-wrap a > span:after,
	header .btn-online2 span:after{
		content: "";
		width: 1.1vw;
		height: 2vw;
		display: inline-block;
	  background-image: url('../images/icon_arrow.png');
	  background-position: center center;
	  background-size:contain;
	  background-repeat: no-repeat;
	  margin-left: 3.6vw;
	}
	
	header .sns-links{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
	}
	header .sns-links a{
		margin: 0 1em;
	}
	
	header .sns-links img{
		width: 6.4vw;
		height: 6.4vw
	}	
	
	
	footer{
		background-color: #E0E0E0;
		padding: 10.6667vw 0 2vw;
		font-size: 1.4rem;
	}
	footer .links-wrap{
		display: flex;
		flex-wrap: wrap;	
		justify-content: center;
		font-size: 2.1rem;
	}
	footer .link1{
		width: 100%;
		margin-bottom: 9.33vw;
	}
	footer .link3,
	footer .link2{
		width: 50%;
	}
	footer .link4{
		display: inline-block;
	}

	
	footer .link1 img{
		width: 40vw;
	}

	footer .link2{
		margin-bottom: 8vw;
	}
	footer .link3 li,
	footer .link2 li{
		margin-bottom: 1em;
	}
	footer .btn-online{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48vw;
		height: 9.6vw;
		text-align: center;
		border: 1px solid #D8D8D8;
		border-radius: 4.8vw;
		background-color: #ffffff;

	}	
	
	footer .sns-links img{
		width: 6.4vw;
		height: 6.4vw;
	}
	
	footer .sns-links{
		display: flex;
		justify-content:center;
		
	}
	footer .sns-links a{
		margin: 6.6667vw;
	}	
	
	footer .copy{
		font-size: 1.2rem;
		color: #7F7F7F;
		text-align: center;
	}
		
	.bg-img{
		justify-content: center;
	}
	.bg-img .catch{
		text-align: center;
		padding: 1em;
	}
	
	#page_top{
		display: block;
		width: 8vw;
		height: 8vw;
		right: 5.3333vw;
		bottom: 5.3333vw;
	}	
}


/* top page */

section h2{
	font-size: 3.2rem;
	letter-spacing: 0.1em;
	margin-bottom: 16px;
}
section h2 + .sub-title{
	letter-spacing: 0.1em;
}

/* main bg*/
.bg-img{
	position: relative;
	width: 100%;
	height: 720px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
}
.sec-visual{
	position: relative;
}
.sec-visual .catch{
	width: 100%;
	display: inline-block;
	position: absolute;
	top:50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
	padding-left: 20%;
}
.sec-visual .catch-icon{
	width: 72px;
}
.sec-visual h2{
	color: #ffffff;
	font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
	.bg-img{
		height: 120vw;
	}
	.sec-visual .catch{
		text-align: center;
		padding-left: 0;
	}
	
	.sec-visual .catch-icon{
		width: 9.6vw;
	}
	.sec-visual h2{
		font-size: 4.4rem;
	}
		
}


.breadcrumb{
	font-size: 12px;
	padding: 16px 0;
}
.breadcrumb a{ 
	display: block;
}
.breadcrumb ul{
	display: flex;
	align-items: center;
	height: 14px;
}

.breadcrumb ul li{
	position: relative;
}
.breadcrumb .home{
	margin-right: 24px;
}
.breadcrumb .home img{
	display: block;
	width: 13.24px;
	height: 12px;
}

.breadcrumb .home:after{
	display: block;
	height: 16px;
	position: absolute;
	top:0;
	right: -16px;
	content: ">";
	font-size: 12px;
	line-height: 1em;
	
}

.mv-img{
	width: 100%;
	height: 160px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

.top-title{
	width: 100%;
	text-align: center;
	display: block;
	position: absolute;
	top:50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
	font-size: 3.2rem;
	color: #ffffff;
}

@media screen and (max-width: 768px) {
	.mv-img{
		height: 33.3333vw;
	}
	.top-title{
		font-size: 4.8rem;
	}
}

/* news */
.sec-news{
	padding: 100px 0 0;
	margin-bottom: 50px;
}

.sec-news .inner{
	display: flex;
}

.sec-news .news-box{
	width: 240px;
}
.sec-news ul{
	width: calc(100% - 240px);
	border-top: 1px solid #D8D8D8;
}

.sec-news ul > li{
	border-bottom: 1px solid #D8D8D8;
	position: relative;
}

.sec-news ul > li:after{
	content: "";
	position: absolute;
	width: 7px;
	height: 12px;
	display: inline-block;
  background-image: url('../images/icon_arrow.png');
  background-position: center center;
  background-size:contain;
  background-repeat: no-repeat;
	top:calc(50% - 6px);
	right: 60px;
}
.sec-news ul > li > a{
	display: flex;
	font-size: 1.4rem;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 1em 80px 1em 0;
}

.sec-news .date{
	color:  #747474;
	margin-right: 25px;
}

@media screen and (max-width: 768px) {
	section h2{
		font-size: 2.8rem;
		margin-bottom: 0;
		margin-right: 1em;
	}
	section h2 + .sub-title{
		letter-spacing: 0.1em;
	}

	.sec-news{
		padding: 6.4vw 0 0;
		margin-bottom: 6.4vw;
	}
	.sec-news .inner{
		display: block;
	}

	.sec-news .news-box{
		display: flex;
		align-items: flex-end;
		width: 100%;
		margin-bottom: 1em;
	}
	.sec-news ul{
		width: 100%;
	}
	.sec-news ul > li > a{
		font-size: 2.1rem;
		padding: 1em 6.6667vw 1em 0;
	}
	
	.sec-news ul > li:after{
			width: 1.3333vw;
	height: 2.1333vw;
	top:calc(50% - 1.0667vw);
	right: 0;

	}	
	.sec-news .date{
		font-size: 2.1rem;
		margin-right: 4.8vw;
	}
}
/* about */
.sec-about{
	text-align: center;
	padding-top: 50px;
	padding-bottom: 50px;
}
.sec-about .img{
	width: 96px;
	margin-bottom: 40px;
}
.sec-about h2{
	line-height: 1em;
}
.sec-about .sub-title{
	margin-bottom: 60px;
}
.sec-about p{
	line-height: 2.2em;
	position: relative;
	z-index: 2;
}
.sec-about .dec2,
.sec-about .dec1{
	position: absolute;
}

.sec-about .dec1{
	width: 393px;
	top:-66px;
	left: calc(50% - 600px);
}
.sec-about .dec2{
	width: 390px;
	top:-75px;
	left: calc(50% + 260px);
}


@media screen and (max-width: 768px) {
	
	.sec-about .img{
		width: 12.8vw;
		margin-bottom: 5.3333vw;
	}
	.sec-about{
		padding-bottom: 58.6667vw;
		padding-top: 6.6667vw;
	}
	.sec-about h2{
		font-size: 4.0rem;
		margin-bottom: 0.7em;
	}
	.sec-about .sub-title{
		margin-bottom: 8vw;
	}

	.sec-about .dec2,
	.sec-about .dec1{
	}
	
	.sec-about .dec1{
		width: 52.4000vw;
		top:45vw;
		left: calc(50% - 52vw);
	}
	.sec-about .dec2{
		width: 52vw;
		top:45vw;
		left: calc(50% + 2vw);
	}
}


.btn{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 240px;
	height: 48px;
	text-align: center;
	border: 1px solid #D8D8D8;
	border-radius: 24px;
	background-color: #ffffff;
	text-decoration: none;
	margin: 0 auto;
}

.btn > span:after{
		content: "";
		width: 7px;
		height: 12px;
		display: inline-block;
	  background-image: url('../images/icon_arrow.png');
	  background-position: center center;
	  background-size:contain;
	  background-repeat: no-repeat;
	  margin-left: 20px;
}	

.sec-business{
	margin-bottom: 80px;
}
.sec-products .products-inner,
.sec-business .business-inner{
	display: flex;
}
.sec-company .info,
.sec-products .info,
.sec-business .info{
	line-height: 2.2em;
	margin-bottom: 40px;
}
.right-box,
.left-box{
	width: 50%;
}

.sec-products h2,
.sec-business h2{
	line-height: 0.8em;
}

.sec-products .sub-title,
.sec-business .sub-title{
	margin-bottom: 34px;
}

.sec-products .right-box,
.sec-business .left-box{
	background-color: #E4F5F6;
	text-align: center;

}

.sec-business .left-box-inner{
		max-width: 516px;
		margin-left: auto;
		padding: 0 16px;
		min-height: 420px;
		padding-top: 50px;
		padding-bottom: 1em;
}
.sec-products .right-box-inner{
		max-width: 516px;
		margin-right: auto;
		padding: 0 16px;
		min-height: 420px;
		padding-top: 50px;
		padding-bottom: 1em;
}

.sec-products .left-box,
.sec-business .right-box{
	min-width: 400px;
}

.sec-products .bg,
.sec-business .bg{
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;

}
.sec-products{
	margin-bottom: 136px;
}


.sec-company{
	min-height: 520px;
	background-image: url('../images/top/top_bg03.jpg');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-bottom: 136px;
	padding: 75px 16px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.sec-company .company-inner{
	width: 100%;
	max-width: 800px;
}
.sec-company .box{
	display: block;
	text-align: center;
	background-color: #FFFFFF;
	padding: 38px 16px 45px;
	
}
.sec-company h2{
	line-height: 1.5em;
}
.sec-company .sub-title{
	margin-bottom: 34px;
}

@media screen and (max-width: 768px) {

	.btn{
		width: 48vw;
		height: 9.6vw;
		border-radius: 4.8vw;
	}
	
	.btn > span:after{
			width: 1.4667vw;
			height: 2.4000vw;
		  margin-left: 4vw;
	}	
	.sec-business{
		margin-bottom: 10.6667vw;	
	}
	.sec-products{
		margin-bottom: 18.6667vw;
	}

	.sec-products .products-inner,
	.sec-business .business-inner{
		flex-wrap: wrap;	
	}
	
	.right-box,
	.left-box{
		width: 100%;
	}
	.sec-products .left-box{
		order: 2;
	}
	.sec-products .bg,
	.sec-business .bg{
		width: 100%;
		height: 58.2667vw;
	}
	
	.sec-products .right-box-inner,
	.sec-business .left-box-inner{
		max-width: 100%;
		min-height: auto;
		margin-bottom: 8vw;
	}
	.sec-products .left-box,
	.sec-business .right-box{
		min-width: auto;
	}

	.sec-company h2,
		.sec-products h2,
		.sec-business h2{
			font-size: 4rem;
			line-height: 1.75em;
			margin: 0;
		}
	.sec-company .sub-title,
		.sec-products .sub-title,
		.sec-business .sub-title{
			margin-bottom: 3em;
		}
	
	.sec-company{
		min-height: auto;
		margin-bottom: 18.6667vw;
		padding: 10.6667vw 4vw;
		
	}
	.sec-company .company-inner{
		max-width: 100%;
	}
	.sec-company .box{
		display: block;
		text-align: center;
		background-color: #FFFFFF;
		padding: 4vw 4vw 5.3333vw;
	}
	
	.sec-company .sub-title{
		margin-bottom: 3em;
	}
}



/* business */
.sec-commitment{
	padding: 55px 0;
	margin-bottom: 70px;
}
.sec-reason h2,
.sec-commitment h2{
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 74px;
}
.sec-commitment .list{
	display: flex;
	justify-content: space-between;
}

.sec-commitment .list > li{
	width: calc(33.33% - 12px);
}
.sec-commitment .list p{
	font-size: 2.4rem;
	line-height: 1.54em;
	text-align: center;
	margin-top: -70px;
}
.sec-reason{
	margin-bottom: 100px;
}
.sec-reason h2{
	margin-bottom: 65px;
}
.sec-reason .info-box{
	display: flex;
	justify-content: space-between;
	margin-bottom: 75px;
}
.sec-reason .left-box{
	width: calc(100% - 260px);
}
.sec-reason .right-box{
	width: 260px;
	text-align: center;
}
.sec-reason .right-box img{
	width: 183px;
	
}
.sec-reason p{
	line-height: 2.1875em;
}

.sec-reason .list p{
	line-height: 1.75em;
	padding-top: 1em;
	margin-bottom: 3em;
}
.sec-reason .list{
	display: flex;
	flex-wrap: wrap;	
	justify-content:center;
	max-width: 800px;
	margin: 0 auto;
}

.sec-reason .list > li{
	width: 33.33%;
}

.sec-reason .list .list-inner{
	max-width: 204px;
	text-align: center;
	margin: 0 auto;
	position: relative;
}
.sec-reason .list .list-inner img{
	position: relative;
	z-index: 3;
}
.sec-reason .dec1:before{
	content: "";
	display: block;
	position: absolute;
	width: 169px;
	height: 104px;
	top:0;
	left: -68px;
	background-image: url('../images/business/img_business_dec1.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.sec-reason .dec2:before{
	content: "";
	display: block;
	position: absolute;
	width: 186px;
	height: 43px;
	top:160px;
	right: -110px;
	background-image: url('../images/business/img_business_dec2.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.sec-reason .dec3:before{
	content: "";
	display: block;
	position: absolute;
	width: 186px;
	height: 43px;
	top:23px;
	left: -106px;
	background-image: url('../images/business/img_business_dec3.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}


.sec-reason .dec4:before{
	content: "";
	display: block;
	position: absolute;
	width: 169px;
	height: 104px;
	top:86px;
	right: -110px;
	background-image: url('../images/business/img_business_dec4.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

@media screen and (max-width: 768px) {
	.sec-commitment{
		padding: 7.3333vw 0;
		margin-bottom: 9.3333vw;
	}
	.sec-reason h2,
	.sec-commitment h2{
		font-size: 4rem;
		margin-bottom: 9.8667vw;
	}
	.sec-commitment .list{
		display: block;
	}
	
	.sec-commitment .list > li{
		width: 100%;
	}
	.sec-commitment .list p{
		font-size: 3.2rem;
		margin-top: -9.3333vw;
		margin-bottom: 3em;
	}
	.sec-reason{
		margin-bottom: 13.3333vw;
	}
	.sec-reason h2{
		margin-bottom: 8.6667vw;
	}
	.sec-reason .info-box{
		display: flex;
		flex-wrap: wrap;	
		margin-bottom: 10vw;
	}
	.sec-reason .left-box{
		width: 100%;
		margin-bottom: 3em;
	}
	.sec-reason .right-box{
		width: 100%;
		text-align: center;
	}
	.sec-reason .right-box img{
		width: 30%;
		
	}
	.sec-reason p{
		line-height: 2.1875em;
	}
	
	.sec-reason .list p{
		line-height: 1.75em;
		padding-top: 1em;
		margin-bottom: 3em;
	}
	.sec-reason .list > li{
		width: 100%;
	}
	
	.sec-reason .list .list-inner{
		max-width: 100%;
	}
	.sec-reason .list .list-inner img{
		width: 54.4vw;
	}
	.sec-reason .dec1:before{
	
		width: 45.0667vw;
		height: 27.7333vw;
		left: -18.1333vw;
	}
	.sec-reason .dec2:before{
	
		width: 49.6000vw;
		height: 11.4667vw;
		top:42.6667vw;
		right: -29.3333vw;
	}
	.sec-reason .dec3:before{
		width: 49.6000vw;
		height: 11.4667vw;
		top:6.1333vw;
		left: -28.2667vw;
	}
	.sec-reason .dec4:before{
		width: 45.0667vw;
		height: 27.7333vw;
		top:22.9333vw;
		right: -29.3333vw;
	}

}


/* product */
/*
.sec-product {
	padding:80px 0; 
}
.sec-product .box{
	display: flex;
}
.sec-product .left-box{
	width: 50%;
	padding-right: 20px;
}

.sec-product .main-slider{
	margin-bottom: 16px;
}
.sec-product .right-box{
	width: 50%;	
	padding-left: 30px;
}
.sec-product img{
	vertical-align: bottom;
}


.icon-title{
	position: relative;
	padding-left: 30px;

}

.icon-title:after{
	position: absolute;	
	content: "";
	display: block;
	width: 13px;
	height: 12px;
	background-image: url('../images/icon_title.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	top:calc(50% - 4px);
	left: 0;	

}
.sec-product h2{
	font-size: 2.8rem;
}

.sec-product h3{
	font-size: 2.4rem;
	margin-bottom: 1em;
	
}
.sec-product h3 + p{
	margin-bottom: 1em;
}
.sec-product .text-box > li{
	display: flex;
	font-size: 1.4rem;
}
.sec-product .text-box .title{
	background-color: #F2F2F2;
	min-width: 100px;
	margin-bottom: 5px;
	text-align: center;
}
.sec-product .text-box p{
	padding: 1em;
}
*/
.page-navi{
	margin-bottom: 130px;
}

.wp-pagenavi {
	clear: both;
	text-align:center;

}
.wp-pagenavi a, .wp-pagenavi span {
	color: #40B7BD;
	background-color: #FFFFFF;
	padding: 8px 15px;
	margin: 0 8px;
	white-space: nowrap;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration: none;
	background-color: #C6E9EB;
}
.wp-pagenavi a:hover{
	color: #fff;
	background-color: #40B7BD;
}
.wp-pagenavi span.current{
	color: #fff;
	background-color: #40B7BD;
}
    
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink{
	background-color: #F2F2F2;
	color: #000;
}
@media screen and (max-width: 768px) {
	.sec-product {
		padding:10.6667vw 0; 
	}
	.sec-product .box{
		display: block;
	}
	.sec-product .left-box{
		width: 100%;
		padding-right: 0;
		margin-bottom: 2em;
	}
	
	.sec-product .main-slider{
		margin-bottom: 16px;
	}
	.sec-product .right-box{
		width: 100%;	
		padding-left: 0;
	}
	
	.icon-title{
		position: relative;
		padding-left: 1.5em;
		margin-bottom: 1em;
	}
	
	.icon-title:after{
		width: 3.4667vw;
		height: 3.2000vw;
		top:calc(50% - 1.3333vw);
	}
	.sec-product h2{
		font-size: 3.2rem;
	}
	
	.sec-product h3{
		font-size: 2.8rem;
		margin-bottom: 1em;
		
	}
	.sec-product h3 + p{
		margin-bottom: 1em;
	}
	.sec-product .text-box > li{
		font-size: 2.4rem;
	}
	.sec-product .text-box .title{
		min-width: 7em;
		margin-bottom: 5px;
	}
	.sec-product .text-box p{
		padding: 1em;
	}
	.page-navi{
		margin-bottom: 17.3333vw;
	}
	
}

/* company */
.sec-greeting{
	padding: 50px 0 40px;
}
.sec-greeting h2{
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 65px;
}
.sec-greeting p{
	line-height: 2.1875em;
	margin-bottom: 2.5em;
}

.sec-greeting p.name{
	text-align: right;
}
.sec-greeting .box{
	display: flex;
	justify-content: space-between;
}

.sec-greeting .left-box{
	width: 100%;
	max-width: 747px;
}

.sec-greeting .right-box{
	text-align: right;
	max-width: 228px;
	position: relative;
}
.sec-greeting .right-box img{
	width: 204px;
	height: 204px;
	border-radius: 102px;
	overflow: hidden;
	position: relative;
	z-index: 2;
	vertical-align: bottom;
	
}

.sec-greeting .right-box:before{
	content: "";
	display: block;
	position: absolute;
	width: 169px;
	height: 104px;
	top:125px;
	left: 0;
	background-image: url('../images/company/company_dec1.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

.sec-history{
	background-color: #E4F5F6;
	padding: 70px 0;
	
}


.sec-history:before{
	content: "";
	display: block;
	position: absolute;
	width: 186px;
	height: 43px;
	top:30px;
	left: calc(50% + 332px);
	background-image: url('../images/company/company_dec2.png');
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}


.sec-history h2{
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 70px;
}
.sec-history .box{
	display: flex;
}
.sec-history .left-box{
	width: 374px;
}

.sec-history .right-box{
	width: calc(100% - 374px);
}
.sec-history .left-box img{
	width: 320px;
}

.sec-history .right-box li{
	display: flex;
	margin-bottom: 28px;
}

.sec-history .right-box .date{
	width: 106px;
	color: #40B7BD;
}


.sec-company-profile{
	padding: 70px;	
}
.sec-company-profile h2{
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 74px;

}

.sec-dms{
	margin-bottom: 80px;
}

.sec-fc{
	margin-bottom: 130px;

}
.sec-fc h2,
.sec-dms h2{
	font-size: 2.8rem;
	margin-bottom: 1em;
}


.sec-fc .sub-inner,
.sec-dms .sub-inner,
.sec-company-profile .sub-inner{
		padding: 0 20px;

}

.sec-fc .list,
.sec-dms .list{
	margin-bottom: 16px;
}
.sec-company-profile .list{
	margin-bottom: 50px;
}

.sec-fc .list li,
.sec-dms .list li,
.sec-company-profile .list li{
	display: flex;
	border-bottom: 1px solid #C6E9EB;
	padding: 0.78em 0;
	font-family: 'Noto Sans JP', sans-serif;
}
.sec-fc .list li:first-child,
.sec-dms .list li:first-child,
.sec-company-profile .list li:first-child{
	border-top: 1px solid #C6E9EB;
}

.sec-fc .title,
.sec-dms .title,
.sec-company-profile .title{
	width: 200px;
	text-align: center;
}
.sec-fc .text,
.sec-dms .text,
.sec-company-profile .text{
	width: calc(100% - 200px);
}

.gmap {
height: 0;
overflow: hidden;
padding-bottom: 300px;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.sns-links{
	width: 200px;
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
	
}
.sns-links a{
	display: block;
	margin: 0 6px;
}
.sns-links img{
	width: 36px;
}


@media screen and (max-width: 768px) {
	.sec-greeting{
		padding: 6.6667vw 0;
	}
	.sec-greeting h2{
		font-size: 4rem;
		margin-bottom: 6.6667vw;
		margin-right: 0;
	}
	
	.sec-greeting .box{
		display: block;
		position: relative;
	}
	
	.sec-greeting .left-box{
		max-width: 100%;
	}
	
	.sec-greeting .right-box{
		position: absolute;
		left: 4vw;
		bottom: -4vw;
		text-align: left;
		max-width: 100%;
	}
	.sec-greeting .right-box img{
		width: 27.2000vw;
		height: 27.2000vw;
		border-radius: 13.6000vw;	
	}
	
	.sec-greeting .right-box:before{
		width: 22.5333vw;
		height: 13.8667vw;
		top:16.6667vw;
		left: -2.9333vw;
	}
	
	.sec-history{
		padding: 9.3333vw 0;
		
	}
	
	
	.sec-history:before{
		content: "";
		display: block;
		position: absolute;
		width: 24.8000vw;
		height: 5.7333vw;
		top:4vw;
		left: 80%;
		background-image: url('../images/company/company_dec2.png');
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	
	
	.sec-history h2{
		font-size: 4rem;
		margin-bottom: 9.3333vw;
	}
	.sec-history .box{
		display: block;
	}
	.sec-history .left-box{
		width: 100%;
		margin-bottom: 3em;
	}
	
	.sec-history .right-box{
		width: 100%;
	}
	.sec-history .left-box img{
		width: 100%;
	}
	
	.sec-history .right-box li{
		margin-bottom: 2em;
	}
	
	.sec-history .right-box .date{
		width: 6em;
	}
	
	
	
	
	.sec-company-profile{
		padding: 9.3333vw 0;	
	}
	.sec-company-profile h2{
		font-size: 4rem;
		margin-bottom: 9.3333vw;
	}
	
	.sec-fc,
	.sec-dms{
		margin-bottom: 9.3333vw;
	}
	

	.sec-fc h2,
	.sec-dms h2{
		font-size: 3.2rem;
		margin-bottom: 1em;
	}
	
	
	.sec-fc .sub-inner,
	.sec-dms .sub-inner,
	.sec-company-profile .sub-inner{
		padding: 0;
	}
	
	.sec-dms .list{
		margin-bottom: 1em;
	}
	.sec-fc .list,
	.sec-company-profile .list{
		margin-bottom: 6.6667vw;
	}

	
	.sec-fc .title,
	.sec-dms .title,
	.sec-company-profile .title{
		width: 8em;
	}
	.sec-fc .text,
	.sec-dms .text,
	.sec-company-profile .text{
		width: calc(100% - 8em);
	}
	
	.gmap {
		padding-bottom: 56.25%;
	}

	.sns-links{
		width: 8em;
		margin-bottom: 2em;
		
	}
	.sns-links a{
		margin: 0 1.3333vw;
	}
	.sns-links img{
		width: 8vw;
	}

}


/* contact */

textarea,
input[type="submit"],
input[type="email"] ,
input[type="text"] {
  padding: 0.5em 1em;
  border: none;
  border-radius: 0;
  outline: none;
  appearance: none;
  background: none;
  font-size: 1.6rem;
  background: #ffffff;
  border: 1px solid #CFCFCF;
 }
.mw_wp_form input[type="file"] {
	display: inline-block;
	width: auto;
}
.mwform-file-delete {
    cursor: pointer;
    visibility: hidden;
}

.sec-rcruitment,
.sec-contact{
	padding: 50px 0 140px;
}

.sec-rcruitment .info,
.sec-contact .info{
	text-align: center;
	line-height: 2.1875em;
	margin-bottom: 70px;
}

.form{
	font-family: 'Noto Sans JP', sans-serif;
	background-color: #E4F5F6;
	padding: 80px 55px;
}
.form-group{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 32px;
}

.form-group > .title{
	width: 268px;
}
.form-group > .title > span{
	padding: 0.2em 1em;
	line-height: 1em;
	font-size: 1.2rem;
	height: 20px;
	background-color: #40B7BD;
	border-radius: 10px;
	color: #ffffff;
	margin-left: 2em;

	
	
}
.form-group > .title > span.txt{
	font-size: 1.4rem;
	background-color: transparent;
	margin: 0;
	padding: 0;
	color: #757575;
}

.form-group textarea,
.form-group input[type="email"] ,
.form-group input[type="text"]
{
	width: calc(100% - 268px);
	min-width: calc(100% - 268px);
	max-width: calc(100% - 268px);
}
.form .bottom-box{
	text-align: center;
	padding-top: 50px;
}
input[type="submit"] {
	width: 240px;
	height: 48px;
	line-height: 0;
	text-align: center;
	background-color: #40B7BD;
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	font-size: 2.4rem;
	border-radius: 24px;
}


.form-group > div {
    width: calc(100% - 268px);
		text-align: left;
}
input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
    text-align: left;
}
.mwform-checkbox-field input, .mwform-radio-field input {
    margin-right: 5px;
}


@media screen and (max-width: 768px) {
	.sec-rcruitment,
	.sec-contact{
		padding: 6.6667vw 0;
	}
	
	.sec-rcruitment .info,
	.sec-contact .info{
		text-align: left;
		margin-bottom: 9.3333vw;
	}
	
	.form{
		padding: 10.6667vw 4vw;
	}
	.form-group{
		display: block;
		margin-bottom: 1em;
	}
	
	.form-group > .title{
		display: block;
		width: 100%;
		margin-bottom: 0.5em;
		font-size: 16px;
	}
	.form-group > .title > span{
		font-size: 12px;
	}
	.form-group > .title > span.txt{
		font-size: 14px;
	}
	
	.form-group textarea,
	.form-group input[type="email"] ,
	.form-group input[type="text"]
	{
		display: block;
		width: 100%;
		min-width: 100%;
		max-width: 100%;
		font-size: 16px;
		
	}
	.form .bottom-box{
		text-align: center;
		padding-top: 50px;
	}
	input[type="submit"] {
		width: 100%;
		font-size: 24px;
	}
	
	
	.form-group > div {
	    width: 100%;
	}
}

/* news */
.sec-news-single{
	padding: 50px 0;	
}
.sec-news-single .contents{
	padding-top: 2em;
}
.sec-news-single .contents p{
	line-height: 1.75em;
	margin-bottom: 2em;
}
.sec-news-single h2.line{
	border-bottom: 2px solid #D8D8D8;
	line-height: 1.5em;
	padding-bottom: 10px;
	margin: 0;
}

.sec-news-single .date{
	text-align: right;
}



/* provider　*/
.sec-provider{
	padding:30px 0; 
}

.list-provider{
	display: flex;
		flex-wrap: wrap;	
	
}

.sec-provider h2{
	text-align: center;
	font-size: 2.4rem;
}

.sec-provider h3{
	font-size: 1.8rem;
	line-height: 1.2em;
	margin-bottom: 0;
}
.sec-provider p{
	font-size: 1.4rem;
	color: #aeaeae;
}
.list-provider .text-box{
		padding: 0.5em 1em;

}

.list-provider .sub-box{
	width: 25%;
	padding: 10px 10px;
}

.list-provider .sub-box-inner{
	border: 1px solid #b2b2b2;
}

.list-provider img{
	width: 100%;
}

.sec-provider-detail .img-box{
	display: flex;
	margin-bottom: 10px;
}

.sec-provider-detail .box{
	border: 1px solid #a4a4a4;
/*	border-radius: 10px;*/
	margin-bottom: 10px;
	padding: 1em;
}

.sec-auto{
	padding: 50px 0;
}
