@charset "utf-8";
/* CSS Document */

body {
	font-family: "Noto Sans Japanese", sans-serif;
	color:#111111;
    font-size:62.5%;
	line-height:1.6em;
    -webkit-text-size-adjust: 100%;
}

/*レスポンシブ用イメージ*/
img{
max-width: 100%;
height: auto;
width /***/:auto;　
}



/* レスポンシブで画像を切り替える（CSS） */
@media screen and (min-width: 769px) {
    .sp {
        display:none !important; /* PC用画像を非表示にする */
    }
}

/* レスポンシブで画像を切り替える（CSS） */
@media screen and (max-width: 768px) {
    .pc {
        display:none !important; /* PC用画像を非表示にする */
    }
}

/*共通*/

table{
	text-align:center;
	width:96%;
	margin:30px auto;
	border-top:#dadada solid 1px;
}
table th,
table td{
	padding:10px 25px;
	border-bottom:#dadada solid 1px;
	vertical-align:top;
	font-weight:normal;
	text-align:left;
	line-height:1.8em;
}
table th{
	font-size:1.5em;
	font-weight:300;
	letter-spacing:0.05em;
/*	background: #f3f3f3;*/
}
table td{
	font-size:1.5em;
	text-align:left;
}
table td a{
	color: #055298;
	text-decoration: underline;
}
table td a:hover{
	color: #4cabe7;
}

/*ページ共通*/

section{
	position:relative;
	padding-bottom: 30px;
}
section.glay{
	background: #edeff1;
	padding: 10px 0;
	padding-bottom: 30px;
}


#access{
	margin-top: -100px;
	padding-top: 100px;
}
.Topinner{
	max-width: 1200px;
	text-align:center;
	margin:0 auto;
	padding:0;
	overflow:hidden;
	position:relative;
}
.inner{
	max-width:1200px;
	text-align:center;
	margin:50px auto;
	padding:0;
}
.inner .contents{
	max-width:1080px;
	text-align:center;
	margin: 10px auto;
}

section p{
	font-size:1.6em;
	line-height:2em;
	text-align:left;
	margin:10px auto;
	padding:10px 20px;
}
section ul,
section ol {
	text-align:left;
	margin:10px auto 20px 30px;
	padding:10px 20px;
}
section ul li{
	font-size:1.6em;
	line-height:2em;
	list-style:disc;
}
section ol li{
	font-size:1.6em;
	line-height:2em;
	list-style: decimal;
}
section .movie{
	width: 90%;
	margin: auto;
	padding: 10px;
}
section .movie video{
	width: 100%;
	height: auto;
}

@media screen and (max-width: 960px){
section{
	padding-bottom: 20px;
}
section.glay{
	padding-bottom: 20px;
}
section p{
	font-size:1.5em;
	line-height:2em;
	text-align:left;
	margin:10px auto;
	padding:10px 20px;
}
section ol li{
	font-size:1.5em;
	line-height:2em;
}
section ul li{
	font-size:1.5em;
	line-height:2em;
}
}
	
@media screen and (max-width: 600px){

section{
	padding-bottom: 10px;
}
section.glay{
	padding-bottom: 10px;
}
	section p{
	font-size:1.4em;
	line-height:1.8em;
	text-align:left;
	margin:10px auto;
	padding:10px 20px;
}
section ol li{
	font-size:1.4em;
	line-height:1.8em;
}
section ul li{
	font-size:1.4em;
	line-height:1.8em;
}
table{
	margin:20px auto;
}
table th{
	display:block;
	width:100%;
	text-align:left !important;
	font-size:1.4em;
	border-right:none;
	padding:5px 15px;
	background: #edeff1;
	border-bottom:#f3f3f3;
}
table td{
	display:block;
	width:100%;
	font-size:1.4em;
	padding:8px 15px;
}
.inner{
	margin:30px auto;
}	
}
@media screen and (max-width: 480px){

section{
	padding-bottom: 0px;
}
section.glay{
	padding-bottom: 0px;
}
section p{
	font-size:1.3em;
	text-align:left;
	margin:5px auto;
	padding:5px 20px;
}
section ul,
section ol {
	text-align:left;
	margin:5px auto 20px 10px;
	padding:5px 20px;
}
section ol li{
	font-size:1.3em;
	line-height:2em;
}
section ul li{
	font-size:1.3em;
	line-height:2em;
}
table th{
	display:block;
	width:100%;
	text-align:left !important;
	font-size:1.3em;
	border-right:none;
	padding:5px 15px;
	background: #edeff1;
	border-bottom:#f3f3f3;
}
table td{
	display:block;
	width:100%;
	font-size:1.3em;
	padding:5px 15px;
}
.inner{
	margin:20px auto;
}
}





/*******************
トップページ
********************/
.maintop{
	position: relative;
	text-align: center;
	margin: 100px auto 0;
	width: 100%;
}
.maintop img{
	width: 100%;
}

.maintop .catch_welfare,
.maintop .catch_agv{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 10%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
}
.maintop .catch_ele,
.maintop .catch_ozon,
.maintop .catch_linear{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

.maintop .catch_ele .box,
.maintop .catch_welfare .box,
.maintop .catch_ozon .box,
.maintop .catch_linear .box,
.maintop .catch_agv .box{
	color: #fff;
	display: inline-block;
	padding: 30px 50px;
  position: relative;
	
}
.maintop .catch_ele .box::before{
	background: rgba(29,112,173,0.7);
  position: relative;
  content: '';/*ボックス作成*/
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  transform: skew(-15deg);
	
}
.maintop .catch_welfare .box::before{
	background: rgba(212,193,37,0.7);
  position: relative;
  content: '';/*ボックス作成*/
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  transform: skew(-15deg);
	
}
.maintop .catch_ozon .box::before{
	background: rgba(48,145,94,0.7);
  position: relative;
  content: '';/*ボックス作成*/
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  transform: skew(-15deg);
	
}
.maintop .catch_linear .box::before{
	background: rgba(118,73,144,0.7);
  position: relative;
  content: '';/*ボックス作成*/
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  transform: skew(-15deg);
	
}
.maintop .catch_agv .box::before{
	background: rgba(188,97,88,0.7);
  position: relative;
  content: '';/*ボックス作成*/
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  transform: skew(-15deg);
	
}
.maintop .catch_welfare .box h2,
.maintop .catch_ele .box h2,
.maintop .catch_ozon .box h2{
	font-size: 6.0em;
	line-height: 1.5em;
	font-family: "Sawarabi Mincho";
	font-weight: normal;
	color: #fff;
	padding-bottom: 30px;
	display: inline-block;
	min-width: 400px;
}
.maintop .catch_linear .box h2,
.maintop .catch_agv .box h2{
	font-size: 4.5em;
	line-height: 1.4em;
	font-family: "Sawarabi Mincho";
	font-weight: normal;
	color: #fff;
	padding-bottom: 20px;
	display: inline-block;
	min-width: 400px;
}
.maintop .catch_welfare .box h2:after,
.maintop .catch_ele .box h2:after,
.maintop .catch_ozon .box h2:after,
.maintop .catch_linear .box h2:after,
.maintop .catch_agv .box h2:after {
	content: "";
	display: block;
	height: 1px;
	background: -webkit-linear-gradient(left, transparent, rgb(255,255,255) 30%, rgb(255,255,255) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(255,255,255) 30%, rgb(255,255,255) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(255,255,255) 30%, rgb(255,255,255) 70%, transparent);
}
.maintop .catch_welfare .box .txt,
.maintop .catch_ele .box .txt,
.maintop .catch_ozon .box .txt,
.maintop .catch_linear .box .txt,
.maintop .catch_agv .box .txt{
	font-size: 2.2em;
	line-height: 1.5em;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.maintop .catch_ozon .mainbtn,
.maintop .catch_linear .mainbtn{
	margin: 30px 20px 0;
}
.maintop .catch_agv .mainbtn{
	margin: 10px auto 0;
	text-align: center;
	width: 100%;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
.maintop .catch_ozon .mainbtn a{
	display: block;
	background: #31915e;
	padding: 12px 10px;
	text-align: center;
	color: #fff;
	font-size: 1.5em;
	border: 3px solid #64ad86;
	width: 280px;
}
.maintop .catch_ozon .mainbtn a:hover{
	background: #64ad86;
	border: 3px solid #31915e;
}
.maintop .catch_linear .mainbtn a{
	background: #764990;
	display: block;
	padding: 12px 10px;
	text-align: center;
	color: #fff;
	font-size: 1.5em;
	border: 3px solid #9877ac;
	width: 280px;
}
.maintop .catch_linear .mainbtn a:hover{
	background: #9877ac;
	border: 3px solid #764990;
}
.maintop .catch_agv .mainbtn a{
	background: #bc6158;
	display: block;
	padding: 12px 10px;
	text-align: center;
	color: #fff;
	font-size: 1.5em;
	border: 3px solid #cd8982;
	width: 280px;
}
.maintop .catch_agv .mainbtn a:hover{
	background: #cd8982;
	border: 3px solid #bc6158;
}

#product{
	margin-top:-105px;
	padding-top:105px;
}

.TopNews,
.TopCompany,
.TopProducts,
.TopRecruit{
	overflow: hidden;
	margin: 50px auto;
	padding: 0;
}

.TopNews .NewsTitle{
	background: #2a5584;
	width: 20%;
	position: relative;
	height: 108px
}
.TopNews .NewsTitle::after{
	position: absolute;
	right: -50px;
	top: 0;
	content: "";
  width: 0;
  height: 0;
  border-right: 50px solid transparent;
  border-top: 108px solid #2c5383;	
}
.TopNews .NewsTitle h3{
	font-family: "Sawarabi Mincho";
	color: #fff;
	line-height: 1.6em;
	font-size: 2.8em;
}
.TopNews .NewsTitle .en{
	font-family: 'Vollkorn', serif;
	color: #fff;
	line-height: 1.6em;
	font-size: 1.5em;
}
.TopNews .NewsList{
	width: 75%;
	margin-left: 5%;
}
.TopNews .NewsList table{
	margin: 5px auto;
}
.TopNews .newsbtn{
	text-align: right;
	margin: 0px 20px 10px auto;
}
.TopNews .newsbtn a{
	background: #055298;
	text-align: center;
	color: #fff;
	padding: 8px 20px;
	font-size: 1.5em;
	display: inline-block;
}
.TopNews .newsbtn a:hover{
	background: #4cabe7;
}

.TopCompany h3,
.TopProducts h3,
.TopRecruit h3{
	font-family: "Sawarabi Mincho";
	line-height: 1.6em;
	font-size: 3.5em;
	border-bottom:1px solid #333;
	display: inline-block;
	font-weight: normal;
	padding: 5px 20px;
}
.TopCompany .en,
.TopProducts .en,
.TopRecruit .en{
	font-family: 'Vollkorn', serif;
	color: #2a5584;
	line-height: 1.6em;
	font-size: 1.5em;
	padding: 5px 10px 0;
}
.TopCompany a,
.TopRecruit a{
	color: #333;
	text-decoration: none;
	display: block;
}

.TopCompany .photo{
	width: 50%;
}

.TopCompany .Flexbox .CompanyInfo{
	width: 50%;
	background: #f3f3f3;
	border-top:5px solid #f6f6f6;
	border-right:5px solid #f6f6f6;
	border-bottom:5px solid #f6f6f6;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	position: relative;
}
.TopCompany .Flexbox .CompanyInfo::after{  
	content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-bottom: 30px solid #2a5584;
  border-left: 30px solid transparent;
}


.TopProducts .Flexboxcenter{
	margin: 20px auto;
}
.TopProducts .Flexboxcenter .Products01,
.TopProducts .Flexboxcenter .Products02,
.TopProducts .Flexboxcenter .Products03,
.TopProducts .Flexboxcenter .Products04,
.TopProducts .Flexboxcenter .Products05{
	padding: 10px 20px;
	position: relative;
	width: 33.3333%;
}
.TopProducts .Flexboxcenter .Products01 .ico,
.TopProducts .Flexboxcenter .Products02 .ico,
.TopProducts .Flexboxcenter .Products03 .ico,
.TopProducts .Flexboxcenter .Products04 .ico,
.TopProducts .Flexboxcenter .Products05 .ico{
	margin-top: -50px;
	max-width: 80%;
	margin: -50px auto 10px;
}



.TopRecruit .photo{
	width: 50%;
}

.TopRecruit .RecruitInfo{
	width: 50%;
	background: #f3f3f3;
	border-top:5px solid #f6f6f6;
	border-left:5px solid #f6f6f6;
	border-bottom:5px solid #f6f6f6;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	position: relative;
}

.TopRecruit .RecruitInfo::after{  
	content: "";
  position: absolute;
  bottom: 0;
	left: 0;
  width: 0;
  height: 0;
  border-bottom: 30px solid #2a5584;
  border-right: 30px solid transparent;
}



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

.maintop .catch_welfare,
.maintop .catch_agv{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 5%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
}
.maintop .catch_ele .box,
.maintop .catch_welfare .box,
.maintop .catch_ozon .box,
.maintop .catch_linear .box,
.maintop .catch_agv .box{
	color: #fff;
	display: inline-block;
	padding: 15px 30px;
  position: relative;
	
}
.maintop .catch_welfare .box h2,
.maintop .catch_ele .box h2,
.maintop .catch_ozon .box h2{
	font-size: 5.0em;
	line-height: 1.5em;
	padding-bottom: 30px;
	min-width: 350px;
}
.maintop .catch_linear .box h2,
.maintop .catch_agv .box h2{
	font-size: 3.5em;
	line-height: 1.4em;
	padding-bottom: 20px;
	min-width: 350px;
}
.maintop .catch_welfare .box .txt,
.maintop .catch_ele .box .txt,
.maintop .catch_ozon .box .txt,
.maintop .catch_linear .box .txt,
.maintop .catch_agv .box .txt{
	font-size: 1.8em;
	line-height: 1.5em;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
}

.maintop .catch_ozon .mainbtn a,
.maintop .catch_linear .mainbtn a,
.maintop .catch_agv .mainbtn a{
	padding: 10px 10px;
	font-size: 1.4em;
	width: 260px;
}
}


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

.maintop .catch_welfare,
.maintop .catch_agv{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 3%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
}
.maintop .catch_ele .box,
.maintop .catch_welfare .box,
.maintop .catch_ozon .box,
.maintop .catch_linear .box,
.maintop .catch_agv .box{
	color: #fff;
	display: inline-block;
	padding: 10px 20px;
  position: relative;
	
}
.maintop .catch_welfare .box h2,
.maintop .catch_ele .box h2,
.maintop .catch_ozon .box h2{
	font-size: 4.0em;
	line-height: 1.4em;
	padding-bottom: 20px;
	min-width: 300px;
}
.maintop .catch_linear .box h2,
.maintop .catch_agv .box h2{
	font-size: 3.0em;
	line-height: 1.3em;
	padding-bottom: 10px;
	min-width: 300px;
}
.maintop .catch_welfare .box .txt,
.maintop .catch_ele .box .txt,
.maintop .catch_ozon .box .txt,
.maintop .catch_linear .box .txt,
.maintop .catch_agv .box .txt{
	font-size: 1.6em;
	line-height: 1.4em;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
}

.maintop .catch_ozon .mainbtn a,
.maintop .catch_linear .mainbtn a,
.maintop .catch_agv .mainbtn a{
	padding: 10px 10px;
	font-size: 1.4em;
	width: 200px;
}
.maintop .catch_agv .mainbtn{
	margin: 10px 10px 0;
	text-align: center;
	width: auto;
}
	
.TopNews,
.TopCompany,
.TopProducts,
.TopRecruit{
	overflow: hidden;
	margin: 30px auto;
	padding: 0;
}

.TopNews .NewsTitle h3{
	font-family: "Sawarabi Mincho";
	color: #fff;
	line-height: 1.6em;
	font-size: 2.3em;
}
.TopNews .NewsTitle .en{
	font-family: 'Vollkorn', serif;
	color: #fff;
	line-height: 1.6em;
	font-size: 1.4em;
}


.TopCompany h3,
.TopProducts h3,
.TopRecruit h3{
	line-height: 1.6em;
	font-size: 2.8em;
	padding: 5px 20px;
}
.TopCompany .en,
.TopProducts .en,
.TopRecruit .en{
	line-height: 1.6em;
	font-size: 1.4em;
}

}
@media screen and (max-width: 600px){
	
.maintop .catch_welfare,
.maintop .catch_agv{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 3%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
}
.maintop .catch_ele .box,
.maintop .catch_welfare .box,
.maintop .catch_ozon .box,
.maintop .catch_linear .box,
.maintop .catch_agv .box{
	color: #fff;
	display: inline-block;
	padding: 10px 10px;
  position: relative;
	
}
.maintop .catch_welfare .box h2,
.maintop .catch_ele .box h2,
.maintop .catch_ozon .box h2{
	font-size: 3.0em;
	line-height: 1.4em;
	min-width: 350px;
}
.maintop .catch_linear .box h2,
.maintop .catch_agv .box h2{
	font-size: 2.0em;
	line-height: 1.3em;
	min-width: 350px;
}
.maintop .catch_welfare .box .txt,
.maintop .catch_ele .box .txt,
.maintop .catch_ozon .box .txt,
.maintop .catch_linear .box .txt,
.maintop .catch_agv .box .txt{
	font-size: 1.4em;
	line-height: 1.3em;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
}

.maintop .catch_ozon .mainbtn a,
.maintop .catch_linear .mainbtn a,
.maintop .catch_agv .mainbtn a{
	padding: 8px 10px;
	font-size: 1.3em;
	width: auto;
}
.maintop .catch_ozon .mainbtn,
.maintop .catch_linear .mainbtn{
	margin: 10px 10px 0;
	text-align: center;
	width: auto;
}
.maintop .catch_agv .mainbtn{
	margin: 10px 10px 0;
	text-align: center;
	width: auto;
}

.TopNews,
.TopCompany,
.TopProducts,
.TopRecruit{
	overflow: hidden;
	margin: 20px auto;
	padding: 0;
}

.TopNews .NewsTitle{
	background: #2a5584;
	width: 20%;
	position: relative;
	height: 88px
}
.TopNews .NewsTitle::after{
	position: absolute;
	right: -50px;
	top: 0;
	content: "";
  width: 0;
  height: 0;
  border-right: 50px solid transparent;
  border-top: 88px solid #2c5383;	
}
.TopNews .NewsTitle h3{
	font-family: "Sawarabi Mincho";
	color: #fff;
	line-height: 1.5em;
	font-size: 1.8em;
}
.TopNews .NewsTitle .en{
	font-family: 'Vollkorn', serif;
	color: #fff;
	line-height: 1.5em;
	font-size: 1.3em;
}
.TopNews .NewsList{
	width: 75%;
	margin-left: 5%;
}
.TopNews .NewsList table{
	margin: 5px auto;
}


.TopCompany h3,
.TopProducts h3,
.TopRecruit h3{
	line-height: 1.5em;
	font-size: 2.5em;
	padding: 5px 10px;
}
.TopCompany .en,
.TopProducts .en,
.TopRecruit .en{
	font-family: 'Vollkorn', serif;
	color: #2a5584;
	line-height: 1.5em;
	font-size: 1.4em;
	padding: 5px 10px 0;
}

.TopCompany .photo{
	width: 90%;
	margin: 0 5%;
}
	

.TopCompany .Flexbox .CompanyInfo{
	width: 90%;
	margin: 0 5%;
	border-top:none;
	border-right:5px solid #f6f6f6;
	border-bottom:5px solid #f6f6f6;
	border-left:5px solid #f6f6f6;
	margin: 0 auto;
}


.TopProducts .Flexboxcenter{
	margin: 20px auto;
}
.TopProducts .Flexboxcenter .Products01,
.TopProducts .Flexboxcenter .Products02,
.TopProducts .Flexboxcenter .Products03,
.TopProducts .Flexboxcenter .Products04,
.TopProducts .Flexboxcenter .Products05{
	width: 50%;
	padding: 10px;
}
.TopProducts .Flexboxcenter .Products01 .ico,
.TopProducts .Flexboxcenter .Products02 .ico,
.TopProducts .Flexboxcenter .Products03 .ico,
.TopProducts .Flexboxcenter .Products04 .ico,
.TopProducts .Flexboxcenter .Products05 .ico{
	max-width: 80%;
	margin: -30px auto 0px;
}

.TopRecruit .photo{
	width: 90%;
	margin: 0 5%;
	order: 1;
}

.TopRecruit .RecruitInfo{
	width: 90%;
	margin: 0 5%;
	background: #f3f3f3;
	border-top:none;
	border-left:5px solid #f6f6f6;
	border-bottom:5px solid #f6f6f6;
	border-right:5px solid #f6f6f6;
	order: 2;
}	
}

@media screen and (max-width: 480px){	
	
.maintop .catch_welfare,
.maintop .catch_agv{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
}

.maintop .catch_welfare .box h2,
.maintop .catch_ele .box h2,
.maintop .catch_ozon .box h2{
	font-size: 2.0em;
	line-height: 1.4em;
	min-width: 280px;
}
.maintop .catch_linear .box h2,
.maintop .catch_agv .box h2{
	font-size: 1.8em;
	line-height: 1.3em;
	min-width: 280px;
}
.maintop .catch_welfare .box .txt,
.maintop .catch_ele .box .txt,
.maintop .catch_ozon .box .txt,
.maintop .catch_linear .box .txt,
.maintop .catch_agv .box .txt{
	font-size: 1.1em;
	line-height: 1.3em;
	color: #fff;
	font-weight: normal;
	letter-spacing: 0.05em;
}	
	
.maintop .catch_ozon .mainbtn,
.maintop .catch_linear .mainbtn,
.maintop .catch_agv .mainbtn{
	display: none;
}
	

.TopNews .NewsTitle{
	background: #2a5584;
	width: 50%;
	margin: 10px 50% 10px 0;
	position: relative;
	height: 58px;
}
.TopNews .NewsTitle::after{
	position: absolute;
	right: -30px;
	top: 0;
	content: "";
  width: 0;
  height: 0;
  border-right: 30px solid transparent;
  border-top: 58px solid #2c5383;	
}
.TopNews .NewsTitle h3{
	font-size: 1.8em;
}
.TopNews .NewsTitle .en{
	font-size: 1.2em;
}
.TopNews .NewsList{
	width: 90%;
	margin:5px 5%;
}
.TopNews .NewsList table{
	margin: 0 auto;
}


.TopCompany h3,
.TopProducts h3,
.TopRecruit h3{
	font-size: 2.0em;
}
.TopCompany .en,
.TopProducts .en,
.TopRecruit .en{
	font-size: 1.2em;
}

.TopProducts .Flexboxcenter{
	margin: 20px auto;
}
.TopProducts .Flexboxcenter .Products01,
.TopProducts .Flexboxcenter .Products02,
.TopProducts .Flexboxcenter .Products03,
.TopProducts .Flexboxcenter .Products04,
.TopProducts .Flexboxcenter .Products05{
	padding: 5px;
}
}




/*中ページ共通タイトル部分*/

.main{
	margin: 100px auto 0;
	position: relative;
}
.mainimg{
	position: relative;
}
.spmain{
	display: none;
}
.pcmain img{
	width: 100%;
}
.spmain img{
	width: 100%;
}
.main .txt{
	position: absolute;
	text-align: center;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	
}
.main .txt h2{
	color: #fff;
	font-size: 3.8em;
	font-family: "Sawarabi Mincho";
	line-height: 1.6em;
	font-weight: normal;
	letter-spacing: 0.05em;
}
.main .txt h2::after{
	border-bottom:1px solid #fff;
	content: "";
	display: block;
	width: 100%;
}
.main .txt .en{
	color: #fff;
	font-family: 'Vollkorn', serif;
	font-size: 2.2em;
	padding: 10px;
}
.bread{
	margin: 0 20px;
}
.bread p{
	font-size: 1.4em;
	line-height: 1.5em;
}
.bread p a{
	color: #333;
}
.bread p a:hover{
	color: #4cabe7;
}

section .inner h2{
	font-size: 3.5em;
	font-weight: 500;
	line-height: 1.6em;
	text-align: center;
	margin: 30px auto 0;
	min-width: 350px;
	letter-spacing: 0.05em;
	display: inline-block;
}
section .inner h2::after{
	margin-top: 10px;
	margin-bottom: 10px;
	content: "";
	display: block;
	height: 1px;
	width: 120%;
	margin-left: -10%;
	background: -webkit-linear-gradient(left, transparent, rgb(5,82,152) 30%, rgb(5,82,152) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(5,82,152) 30%, rgb(5,82,152) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(5,82,152) 30%, rgb(5,82,152) 70%, transparent);
	
}
section .inner h2.welfare_line,
section .inner h2.ele_line,
section .inner h2.ozon_line,
section .inner h2.linear_line,
section .inner h2.agv_line{
	margin: 0px auto 0;
}
section .inner h2.welfare_line::after{
	background: -webkit-linear-gradient(left, transparent, rgb(212,193,37) 30%, rgb(212,193,37) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(212,193,37) 30%, rgb(212,193,37) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(212,193,37) 30%, rgb(212,193,37) 70%, transparent);
}
section .inner h2.ele_line::after{
	background: -webkit-linear-gradient(left, transparent, rgb(29,112,173) 30%, rgb(29,112,173) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(29,112,173) 30%, rgb(29,112,173) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(29,112,173) 30%, rgb(29,112,173) 70%, transparent);
}
section .inner h2.ozon_line::after{
	background: -webkit-linear-gradient(left, transparent, rgb(48,145,94) 30%, rgb(48,145,94) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(48,145,94) 30%, rgb(48,145,94) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(48,145,94) 30%, rgb(48,145,94) 70%, transparent);
}
section .inner h2.linear_line::after{
	background: -webkit-linear-gradient(left, transparent, rgb(118,73,144) 30%, rgb(118,73,144) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(118,73,144) 30%, rgb(118,73,144) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(118,73,144) 30%, rgb(118,73,144) 70%, transparent);
}
section .inner h2.agv_line::after{
	background: -webkit-linear-gradient(left, transparent, rgb(188,97,88) 30%, rgb(188,97,88) 70%, transparent);
	background: -o-linear-gradient(left, transparent, rgb(188,97,88) 30%, rgb(188,97,88) 70%, transparent);
	background: linear-gradient(to right, transparent, rgb(188,97,88) 30%, rgb(188,97,88) 70%, transparent);
}
section .inner h3{
	font-size: 3.0em;
	line-height: 1.5em;
	text-align: center;
	margin: 30px auto 5px;
	font-family: "Sawarabi Mincho";
}

section .inner .en{
	font-size: 1.5em;
	line-height: 1.4em;
	text-align: center;
	margin: 0px auto 30px;
	font-family: 'Vollkorn', serif;
	color: #055298;
}
@media screen and (min-width:1200px){
.main .txt h2{
	font-size: 5.0em;
}
.main .txt .en{
	font-size: 3.0em;
	padding: 15px;
}
section .inner h3{
	width: 98%;
	}
}
@media screen and (max-width: 960px){

.main .txt h2{
	font-size: 3.2em;
}
.main .txt .en{
	font-size: 2.0em;
	padding: 10px;
}
	
section .inner h2{
	font-size: 3em;
	margin: 20px auto 0;
	min-width: 300px;
}
section .inner h3{
	width: 96%;
	font-size: 2.5em;
	margin: 30px auto 5px;
}
section .inner .en{
	font-size: 1.4em;
}
	
}

@media screen and (max-width: 800px){
.pcmain{
	display: none;
}
.spmain{
	display: block;
}
.maintop{
	margin: 90px auto 0;
}
.main{
	margin: 90px auto 0;
	position: relative;
}
}
@media screen and (max-width: 680px){
	
section .inner h2{
	font-size: 3.0em;
	font-weight: 400;
	margin: 20px auto 0;
	width: 350px;
	min-width: 300px;
}
section .inner h2::after{
	margin-top: 5px;
	margin-bottom: 10px;
}
section .inner h3{
	margin: 10px auto 5px;
}
	
section .inner .en{
	font-size: 1.3em;
	margin: 0px auto 20px;
}
.bread p{
	font-size: 1.3em;
	line-height: 1.5em;
}
.main .txt h2{
	font-size: 3.0em;
}
.main .txt .en{
	font-size: 1.8em;
	padding: 10px;
}
}
@media screen and (max-width: 480px){

	
section .inner h2{
	font-size: 2.6em;
	margin: 10px auto 0;
	width: auto;
}
section .inner h3{
	font-size: 2.2em;
	margin: 10px auto 5px;
}
section .inner .en{
	font-size: 1.2em;
}
.bread p{
	font-size: 1.2em;
	line-height: 1.5em;
}
	
}



/*****************
会社紹介
******************/

.Greeting .txt{
	width: 70%;
	padding: 10px;
}
.Greeting .txt h4{
	color: #055298;
	font-size: 2.5em;
	line-height: 1.6em;
	font-family: "Sawarabi Mincho";
	text-align: left;
	margin: 20px;
	letter-spacing: 0.05em;
}
.Greeting .txt .name{
	margin: 20px 20px 20px 20px;
	font-size: 2.2em;
	line-height: 1.6em;
	font-family: "Sawarabi Mincho";
	text-align: right;
	letter-spacing: 0.05em;
}
.Greeting .photo{
	width: 30%;
	padding: 10px;
}
.Outline h4,
	.Contact h4,
	.News h4{
	font-size: 1.8em;
	line-height: 1.6em;
	text-align: left;
	padding: 10px;
	color: #055298;
	font-weight: 700;
	border-top:3px solid #055298;
	border-bottom:1px solid #dfdfdf;
	margin: 10px;	
}
.Access .map{
	border: 1px solid #dfdfdf;
	margin: 10px 20px;
}
.Access table{
	border:none;
	margin:10px 10px 0;
}
.Access table th,
.Access table td{
	border:none;
}
.Outline table th,
.Access table th,
.Contact table th,
.Recruit table th,
.Topics table th{
	white-space: nowrap;
	color: #055298;
	font-weight: 500;
}
.Environmental h4{
	color: #055298;
	font-size: 2.2em;
	line-height: 2.0em;
	font-family: "Sawarabi Mincho";
	text-align: left;
	margin: 30px 20px 20px;
}
.Activity .Flexbox .photo{
	width: 50%;
	padding: 10px;
}
.Activity .Flexbox .photo p{
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 960px){
	
.Greeting .txt h4{
	font-size: 2.2em;
	line-height: 1.6em;
	margin: 20px;
}
	
}
@media screen and (max-width: 680px){
		
.Greeting .txt h4{
	font-size: 2.0em;
	line-height: 1.6em;
	margin: 15px;
	letter-spacing: 0;
}
.Greeting .txt .name{
	font-size: 1.8em;
	margin: 15px;
}
.Greeting .txt{
	width: 100%;
	padding: 0px 10px;
	order: 2;
}
.Greeting .photo{
	width: 100%;
	padding: 0px 10px;
	order: 1;
}
.Greeting .photo img{
	max-width: 60%;
}
.Outline h4,
	.Contact h4,
	.News h4{
	font-size: 1.6em;
	padding: 8px;	
}		
.Environmental h4{
	font-size: 1.6em;
	line-height: 1.6em;
	margin: 15px;
	letter-spacing: 0;
}		
.Environmental h4 br{
	display: none;
}
.Activity .Flexboxcenter .photo{
	padding: 5px;
}
}
@media screen and (max-width: 480px){
		
.Greeting .txt h4{
	font-size: 1.8em;
	line-height: 1.6em;
	margin: 10px;
}
.Greeting .txt .name{
	font-size: 1.6em;
	margin: 10px;
}
.Outline h4,
	.Contact h4,
	.News h4{
	font-size: 1.5em;
	padding: 8px;
		
}		
.Greeting .txt h4{
	font-size: 1.4em;
	line-height: 1.6em;
	margin: 10px;
}
.Activity .Flexbox .photo{
	width: 100%;
	padding: 10px;
}
	
}

.Contact div label{
	display: inline-block;
	min-width: 32%;
}
.Contact input[type=text], .Contact textarea{
	border: 1px solid #bfbfbf;
	outline: none;
	padding: 5px 10px;
	width: 80%;
	margin-bottom:5px;
}
.PrivacyPolicy h4{
	color: #055298;
	font-size: 2.2em;
	line-height: 1.6em;
	margin: 40px 20px 10px;
	text-align: left;
}
.Contact .fas{
	background: #055298;
	border:3px solid #447db2;
	color: #fff;
	padding: 15px 60px;
	font-size: 1.5em;
}
.Contact .fas:hover{
	background: #447db2;
	border:3px solid #055298;
}

@media screen and (max-width: 960px){
.PrivacyPolicy h4{
	font-size: 2.0em;
	margin: 40px 20px 10px;
}
}

@media screen and (max-width: 680px){	
.PrivacyPolicy h4{
	font-size: 1.8em;
	margin: 30px 20px 10px;
}
.Contact input[type=text], .Contact textarea{
	border: 1px solid #bfbfbf;
	outline: none;
	padding: 5px 10px;
	width: 96%;
	margin-bottom:5px;
}
.Contact .fas{
	padding: 12px 60px;
	font-size: 1.4em;
}
}

@media screen and (max-width: 480px){
.PrivacyPolicy h4{
	font-size: 1.8em;
	margin: 20px 20px 5px;
}
}
/*****************
製品紹介
******************/

.Product .Product_ico{
	width: 90px;
	height: 90px;
	margin: 0 auto;
}
.Product h4{
	font-size: 3.5em;
	color: #e65718;
	margin: 50px auto 20px;
	line-height: 1.6em;
	text-align: center;
	font-weight: 400;
}
.Product h4.other{
	color: #2c5282;
	border-bottom:2px solid #4cabe7;
}
.Product h5{
	font-size: 1.8em;
	line-height: 1.6em;
	text-align: left;
	padding: 10px;
	font-weight: 700;
	border-bottom:1px solid #dfdfdf;
	margin: 30px 10px 10px;
	background: #f7fafc;	
}
.Product.Ele h5{
	color: #1c6fac;
	border-top:3px solid #1c6fac;
}
.Product.Welfare h5{
	color: #a1910f;
	border-top:3px solid #cebe29;
}
.Product.Ozon h5{
	color: #30915e;
	border-top:3px solid #30915e;
}
.Product.Linear h5{
	color: #724990;
	border-top:3px solid #724990;
}
.Product.Ozon h3{
	background: #30915e;
	color: #fff;
	padding: 5px 10px;
	font-family: "Noto Sans Japanese", sans-serif;
	margin: 5% auto 3%;
	font-size: 22px;
	width: 98%;
}
.Product.Linear h3{
	background: #724990;
	color: #fff;
	padding: 5px 10px;
	font-family: "Noto Sans Japanese", sans-serif;
	margin: 5% auto 3%;
	font-size: 22px;
	width: 98%;
}
.Product.Agv h5{
	color: #bc6158;
	border-top:3px solid #bc6158;
}
.Product h6{
	font-size: 1.8em;
	color: #fff;
	margin: 20px auto;
	line-height: 1.6em;
	text-align: center;
	font-weight: 400;
	padding: 8px;
	max-width: 96%;
}
.Product.Ele h6{
	background: #1c6fac;
	position: relative;
}
.Product.Ele h6 span{
	font-size: 1.2em;
	position: absolute;
	left: 5%;
	top: 5px;
	font-weight: bold;
}
.Product.Welfare h6{
	background: #cebe29;
}
.Product.Ozon h6{
	background: #30915e;
}
.Product.Linear h6{
	background: #724990;
}
.Product.Agv h6{
	background: #bc6158;
}

.Product .Point .one,
.Product .Point .two,
.Product .Point .three{
	width: 29.3333%;
	margin: 2%;
	padding: 20px 5px;
	background: #f7fafc;
	border: 3px solid #d6d6d6;
	overflow: hidden;
	z-index: -2;
}
.Product .Point .midashi{
	font-size: 2.2em;
	line-height: 1.5em;
	margin: 40px auto 10px;
	text-align: center;
}
.Product .dia {
	color: #fff;
	font-size: 6.0em;
	padding: 10px;
	font-weight: 500;
	position: relative;
	z-index: 2;
	width: 100%;
}
.Product .dia::before {
	content: "";
	position: absolute;
	top: -25px;
	left: 50%;
	text-align: center;
	width: 100px;
	height: 100px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transform-origin: 0 100%;
	-moz-transform-origin: 0 100%;
	-ms-transform-origin: 0 100%;
	-o-transform-origin: 0 100%;
	transform-origin: 0 100%;
	z-index: -1;
}
.Product.Welfare .dia::before {
	background: #cebe29;
}
.Product.Ele .dia::before {
	background: #1c6fac;
}
.Product.Ozon .dia::before {
	background: #30915e;
}
.Product.Linear .dia::before {
	background: #724990;
}
.Product.Agv .dia::before {
	background: #bc6158;
}
.Product .linkbtn {
	margin: 30px auto;
}
.Product .linkbtn .btn{
	width: 50%;
	padding: 30px;
}
.Product .linkbtn .voice_btn{
	width: 33.3333%;
	padding: 20px;
}
.Product .linkbtn .btn a,
.Product .Exe .btn a,
.Product .linkbtn .voice_btn a{
	display: block;
	color: #fff;
	font-size: 1.8em;
	padding: 10px 20px;
	background: #055298;
	border: 3px solid #447db2;
	max-width: 430px;
	margin: 0 auto;
}
.Product .linkbtn .btn a:hover,
.Product .Exe .btn a:hover,
.Product .linkbtn .voice_btn a:hover{
	background: #447db2;
	border: 3px solid #055298;	
}
.Product ul li{
	list-style: none;
}
.Product.Ozon table th{
	color: #30915e;
	font-weight: bold;
	white-space: nowrap;
}
.Product.Linear table th{
	color: #724990;
	font-weight: bold;
	white-space: nowrap;
}
.Product.Ozon .seizoumoto table,
.Product.Linear .seizoumoto table{
	max-width: 60%;
}
.Product.Ozon .seizoumoto table th{
	background:  #30915e;
	color: #fff;
	font-weight: bold;
	white-space: nowrap;
}
.Product.Linear .seizoumoto table th{
	background: #724990;
	color: #fff;
	font-weight: bold;
	white-space: nowrap;
}
.Product.Agv table th{
	color: #bc6158;
	font-weight: bold;
	white-space: nowrap;
}
.Product .waku{
	border:  1px solid #dfdfdf;
	padding: 10px 5px;
	margin: 0 20px;
}
.Product .waku ul{
	padding: 10px 5px 10px 25px;
	margin: 0;
}
.Product .waku ul li{
	margin: 0;
	padding: 5px 0;
	list-style: circle;
	line-height: 1.4em;
}
.Product .wakuF{
	border:  1px solid #dfdfdf;
	padding: 10px;
}
.Product .wakubk{
	background: #f3f3f3;
	padding: 20px;
}
.Product .wakubk table{
	border: none;
	margin: 0 20px;;
}
.Product .wakubk table th,
.Product .wakubk table td{
	border: none;
}
.Product .wakubk table td a{
	color: #333;
	text-decoration: none;
}
.Product .wakubk table td a:hover{
	color: #1c6fac;
}

.Product .Flexbox .photo{
	width: 50%;
	padding: 10px;
}
.Product .w50,
.Product .w50o,
.Product .w50t,
.Recruit .w50{
	width: 48%;
	margin: 10px 1%;
	padding: 5px;
}
.Product .w30t,
.Product .w30coms{
	width: 31.3333%;
	margin: 10px 1%;
	padding: 5px;
}
.Product .w100,
.Recruit .w100{
	width: 96%;
	margin: 10px 2%;
	padding: 5px;
}
.wZdankailast{
	width: 100%;
}
.Product .w30{
	width: 31.3333%;
	padding: 10px 3px;
	margin: 5px 1%;
}
.Product .Elebox{
	width: 48%;
	margin: 0 1%;
}
.Product .w50 p,
.Product .w100 p,
.Product .w30 p{
	margin: 0;
	padding: 0;
	text-align: center;
}
.Product .cap{
	font-size: 1.4em;
	line-height: 1.4em;
	text-align: left;
	color: #555;
	margin: 10px 20px;
}
.Product .pname{
	font-size: 1.8em;
	line-height: 1.4em;
	font-weight: 500;
	text-align: left;
	padding: 5px 10px;
	margin: 10px;
	border-left:5px solid #2e8d62;
}
.Product .lname{
	font-size: 1.8em;
	line-height: 1.4em;
	font-weight: 500;
	text-align: left;
	padding: 5px 10px;
	margin: 10px;
	border-left:5px solid #724990;
}
.Product .mw900{
	max-width: 900px;
	margin: 0 auto;
}
.Product .OzonPointList{
	margin: 20px auto;
	max-width: 96%;
	
}
.Product .OzonPoint{
	width: 20%;
	padding: 10px;
	border:1px solid #dfdfdf;
}
.Product .Linearphoto{
	width: 70%;
	padding: 5px;
}
.Product .Linearsuppliers{
	width: 30%;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	
}

.Product .Exe{
	width: 33.3333%;
	padding: 25px;
}
.Product .Exe .photo{
	border: 2px solid #d6d6d6;
	background: #f7fafc;
	display: block;
	text-align: center;
	margin: 10px auto;
	padding: 0;
	display: block;
}
.Product .Exe .photo img{
	object-fit: contain;
	width: 100%;
	height: 300px;
}
.Linear .Exe .cat{
	font-size: 1.5em;
	padding: 5px 10px;
	display: inline-block;
	background: #724990;
	color: #fff;
	margin: 5px auto;
}
.Ozon .Exe .cat{
	font-size: 1.5em;
	padding: 5px 10px;
	display: inline-block;
	background: #30915e;
	color: #fff;
	margin: 5px auto;
}
.Agv .Exe .cat{
	font-size: 1.5em;
	padding: 5px 10px;
	display: inline-block;
	background: #bc6158;
	color: #fff;
	margin: 5px auto;
}
.Product .Exe .title{
	font-size: 1.8em;
	margin: 10px auto 20px;
}

.Product .VoiceList{
	margin: 50px auto;
}

.Product .lineartitle{
	font-size: 2.2em;
	color: #764990;
	line-height: 1.6em;
	text-align: center;
	}
.Product .ozontitle{
	font-size: 2.2em;
	color: #30915e;
	line-height: 1.6em;
	text-align: center;
	}
.Product .agvtitle{
	font-size: 2.2em;
	color: #bc6158;
	line-height: 1.6em;
	text-align: center;
	}
.Product .Voice_btn{
	font-size: 1.6em;
	line-height: 1.4em;
	text-align: center;
	position: absolute;
	right: 0;
	top:-30px;
}
.Product.Linear .Voice_btn a{
	background: #764990;
	position: relative;
	color: #fff;
	padding: 5px 20px;
	height: 35px;
	display: block;
}
.Product.Linear .Voice_btn a::before{
	position: absolute;
	left: -15px;
	top:0px;
	content: "";
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-top: 35px solid #764990;	
}
.Product.Linear .Voice_btn:hover a{
	background: #ad89c7;
}
.Product.Linear .Voice_btn:hover a::before{
  border-top: 35px solid #ad89c7;
}
.Product.Ozon .Voice_btn a{
	background: #30915e;
	position: relative;
	color: #fff;
	padding: 5px 20px;
	height: 35px;
	display: block;
}
.Product.Ozon .Voice_btn a::before{
	position: absolute;
	left: -15px;
	top:0px;
	content: "";
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-top: 35px solid #30915e;	
}
.Product.Ozon .Voice_btn:hover a{
	background: #6cba91;
}
.Product.Ozon .Voice_btn:hover a::before{
  border-top: 35px solid #6cba91;
}
.Product.Agv .Voice_btn a{
	background: #bc6158;
	position: relative;
	color: #fff;
	padding: 5px 20px;
	height: 35px;
	display: block;
}
.Product.Agv .Voice_btn a::before{
	position: absolute;
	left: -15px;
	top:0px;
	content: "";
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-top: 35px solid #bc6158;	
}
.Product.Agv .Voice_btn:hover a{
	background: #c38079;
}
.Product.Agv .Voice_btn:hover a::before{
  border-top: 35px solid #c38079;
}
.Product .Movie{
	margin: 10px auto;
	padding: 10px;
	text-align: center;
	width: 100%;
}
.Product .Movie video{
	width: 100%;
	max-width: 640px;
}
@media screen and (max-width: 960px){

.Product .Product_ico{
	width: 60px;
	height: 60px;
}
.Product h4{
	font-size: 3.0em;
	margin: 40px auto 20px;
}
.Product h5{
	font-size: 1.6em;
	line-height: 1.6em;
	text-align: left;
	padding: 10px;
	font-weight: 700;
	border-bottom:1px solid #dfdfdf;
	margin: 10px;
	background: #f7fafc;	
}
.Product h6{
	font-size: 1.5em;
	font-weight: bold;
}

.Product .Point .one,
.Product .Point .two,
.Product .Point .three{
	width: 31.3333%;
	margin: 1%;
	padding: 15px 5px;
	background: #f7fafc;
	border: 3px solid #d6d6d6;
	overflow: hidden;
	z-index: -2;
}
.Product .Point .midashi{
	font-size: 1.8em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 40px auto 10px;
	text-align: center;
}
.Product .dia {
	color: #fff;
	font-size: 4.0em;
	padding: 5px 10px 10px;
	font-weight: 400;
	position: relative;
	z-index: 2;
	width: 100%;
}
.Product .dia::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 50%;
	text-align: center;
	width: 80px;
	height: 80px;
	
}
.Product .linkbtn {
	margin: 10px auto 20px;
}
.Product .linkbtn .btn{
	width: 50%;
	padding: 20px 10px;
}
.Product .linkbtn .voice_btn{
	padding: 20px 10px;
	}
.Product .linkbtn .btn a,
.Product .Exe .btn a,
.Product .linkbtn .voice_btn a{
	display: block;
	color: #fff;
	font-size: 1.6em;
	padding: 10px;
}
.Product .w30{
	width: 48%;
	padding: 10px 3px;
	margin: 5px 1%;
}
.Product .w50,
.Recruit .w50{
	width: 94%;
	margin: 5px auto;
}
.Product .w50 h6{
	margin: 10px auto;
	max-width: 100%;
}
.Product .OzonPoint{
	width: 33.3333%;
	padding: 5px;
	border:1px solid #dfdfdf;
}
.Product .Linearphoto{
	width: 60%;
	padding: 5px;
}
.Product .Linearsuppliers{
	width: 40%;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	
}
.Product .lineartitle,
.Product .ozontitle,
.Product .agvtitle{
	font-size: 2.0em;
	}
.Product .Exe{
	width: 33.3333%;
	padding: 20px;
}
.Product .Exe .photo img{
	object-fit: contain;
	width: 100%;
	height: 250px;
}
}

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

.Product h4{
	font-size: 2.5em;
	margin: 30px auto 10px;
}
.Product h5{
	font-size: 1.6em;
	padding: 8px;	
}
.Product h6{
	font-size: 1.4em;
	margin: 20px auto 10px;
	padding: 5px;
}
	
.Product .Point .one,
.Product .Point .two,
.Product .Point .three{
	width: 90%;
	margin: 1% 5%;
	padding: 5px 5px 5px;
	background: #f7fafc;
	border: 1px solid #d6d6d6;
	overflow: hidden;
	z-index: -2;
}
.Product .dia {
	font-size: 4.0em;
}
.Product .dia::before {
	width: 60px;
	height: 60px;
	
}
.Product .linkbtn .btn{
	width: 100%;
	padding: 10px;
}
.Product .linkbtn .btn a,
.Product .Exe .btn a,
.Product .linkbtn .voice_btn a{
	display: block;
	color: #fff;
	font-size: 1.5em;
	padding: 10px;
}
.Product .waku{
	padding: 10px;
	margin: 0 10px;
}
.Product .wakubk{
	padding: 10px;
}
.Product .wakubk table{
	margin: 0 10px;;
}
.Product .Flexbox .photo{
	width: 50%;
	padding:5px;
}
.Product .w30{
	width: 94%;
	margin: 5px auto;
	padding: 5px;
}
.Product .w100,
.Recruit .w100{
	width: 100%;
	margin: 5px auto;
}
.Product .w50o,
.Product .w50t{
	width: 100%;
	margin: 5px auto;
}
.Product .Elezu{
		order: 1;
	}
.Product .Eleexe{
		order: 2;
	}
.Product .OzonPoint{
	width: 50%;
	padding: 5px;
	border:1px solid #dfdfdf;
}
.Product .Linearphoto{
	width: 100%;
	padding: 5px;
}
.Product .Linearsuppliers{
	width: 100%;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	
}
.Product .pname{
	font-size: 1.6em;
}
.Product .lname{
	font-size: 1.6em;
}
.Product .Exe{
	width: 50%;
	padding: 10px;
}
.Product .Exe .photo img{
	object-fit: contain;
	width: 100%;
	height: 200px;
}
.Linear .Exe .cat,
.Ozon .Exe .cat,
.Agv .Exe .cat{
	font-size: 1.4em;
	margin: 0 auto;
}
.Product .Exe .title{
	font-size: 1.5em;
	margin: 10px auto 10px;
	font-weight: 500;
}
.Product .VoiceList{
	margin: 30px auto;
}
.Product .lineartitle,
.Product .ozontitle,
.Product .agvtitle{
	font-size: 1.8em;
	font-weight: 500;
	}

.Product .Voice_btn{
	font-size: 1.6em;
	line-height: 1.4em;
	text-align: right;
	position: relative;
	right: inherit;
	top:inherit;
	margin: 10px 0 0 auto;
	display: Flex;
	justify-content: flex-end;
}

}

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

.Product h4{
	font-size: 2.0em;
	margin: 20px auto 10px;
}
.Product h5{
	font-size: 1.5em;
	padding: 8px;
}
.Product h6{
	font-size: 1.3em;
	margin: 10px auto;
	padding: 5px;
}
.Product .OzonPoint{
	width: 100%;
	padding: 5px;
	border:1px solid #dfdfdf;
}
.Product .pname{
	font-size: 1.5em;
}
.Product .lname{
	font-size: 1.5em;
}
.Product .linkbtn .btn a,
.Product .Exe .btn a,
.Product .linkbtn .voice_btn a{
	font-size: 1.2em;
	padding: 5px;
}
.Product .Exe .photo img{
	object-fit: contain;
	width: 100%;
	height: 150px;
}
.Linear .Exe .cat,
.Ozon .Exe .cat,
.Agv .Exe .cat{
	font-size: 1.3em;
	margin: 0 auto;
}
.Product .VoiceList{
	margin: 20px auto;
}
.Product .lineartitle,
.Product .ozontitle,
.Product .agvtitle{
	font-size: 1.6em;
	}
	
.Product .w30t,.Product .w30coms{
	width: 100%;
	margin: 10px 1% 0;
	padding: 5px;
}
	.Product .w30coms img{
		max-width: 50%;
	}
}

.Message{
	position: relative;
}
.Message .catch{
	font-family: "Sawarabi Mincho"; 
	color: #055298;
	text-align: left;
	line-height: 2.0em;
	position: absolute;
	top: 30%;
	left: 8%;
	font-size: 3.2em;
}
.Mestitle{
	font-size: 2.2em;
	font-weight: 500;
	line-height: 1.8em;
	color: #055298;
	text-align: left;
	margin: 50px 20px 10px;
}
.futariname{
	font-size: 0.7em;
	padding: 0 5px;
	color: #fff;
	background: #4cabe7;
	margin-right: 10px;
	width: 65px;
	text-align: center;
}
/*
.Mestitle span.name{
	font-size: 0.7em;
	padding: 5px;
	color: #fff;
	background: #4cabe7;
	margin-right: 5px;
}
*/
.JobTitle{
	font-size: 2.2em;
	font-weight: 500;
	line-height: 1.8em;
	color: #055298;
	text-align: center;
	margin: 50px 20px 10px;
}
.Recruit .Benefitico{
	font-size: 3.5em;
	color: #055298;
	line-height: 1.5em;
	margin: 30px auto 20px;
	display: flex;
	align-items: center;
	max-width: 96%;
}
.Recruit .Benefitico:before,
.Recruit .Benefitico:after {
	content: "";
	flex-grow: 1;
	height: 3px;
	background: #055298;
	display: block;
}
.Recruit .Benefitico:before {
	margin-right: .5em;
}
.Recruit .Benefitico:after {
	margin-left: .5em;
}
.Recruit .btitle{
	font-size: 2.5em;
	color: #055298;
	line-height: 1.5em;
	margin: 10px auto 20px;
	font-weight: 500;
}
.Recruit .Entrybtn{
	margin: 20px auto 30px;
	text-align: center;
}
.Recruit .Entrybtn a{
	background: #e83927;
	color: #fff;
	font-size: 1.8em;
	padding: 15px 30px;
	text-align: center;
	display: inline-block;
	min-width: 340px;
}
.Recruit .Entrybtn a:hover{
	background: #bc1e0e;
}

.Recruit .main .catchL{
	font-family: "Sawarabi Mincho"; 
	clear: #fff;
	font-size: 3.2em;
	line-height: 1.8em;
	position: absolute;
	margin: auto;
	left: 5%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #fff;
}
.Recruit .main .catchR{
	font-family: "Sawarabi Mincho"; 
	clear: #fff;
	font-size: 3.2em;
	line-height: 1.8em;
	position: absolute;
	margin: auto;
	right: 5%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #fff;
}
.Recruit .main .catchZ{
	color: #fff;
	font-size: 3.2em;
	line-height: 1.6em;
	background: #2c5282;
	display: inline-block;
	text-align: center;
	position: absolute;
	bottom:15%;
	left: 0;
	right: 0;
	margin: auto;
	font-family: "Sawarabi Mincho";
	font-weight: normal;
	letter-spacing: 0.05em;
	padding: 5px 20px;
	width: 520px;
}
.Recruit .Profile{
	margin: 20px auto;
}
.Recruit .Profile .Posi{
	color: #2c5282;
	font-size: 1.8em;
	font-weight: 500;
	line-height: 1.5em;
	letter-spacing: 0.1em;
}
.Recruit .Profile .Name{
	font-size: 3.0em;
	font-weight: 400;
	line-height: 1.3em;
	margin: 10px auto 0;
	letter-spacing: 0.1em;
}
.Recruit .Profile .Nameen{
	font-size: 1.5em;
	font-weight: 400;
	color: #818588;
	line-height: 1.3em;
	letter-spacing: 0.1em;
}
.Recruit .Profile .about{
	font-size: 1.8em;
	font-weight: 400;
	line-height: 1.3em;
	margin: 20px auto 0;
}
.Recruit .fukidashi{
 	position: relative;
	display: inline-block;
	padding: 15px 50px;
	min-width: 120px;
 	max-width: 100%;
 	color: #fff;
	font-size: 2.2em;
	background: #2c5282;
	min-width: 280px;
	
}
.Recruit .fukidashi:before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
 	margin-left: -12px;
	border: 12px solid transparent;
	border-top: 12px solid #2c5282;
}
.JobList li{
	list-style: none;
	width: 25%;
	padding: 10px;
	text-align: center;
}
.JobList li a{
	color: #333;
}
.Recruit .fphoto img{
	width: 100%;	
}
.futari{
	width: 50%;
}
.zadankai{
	margin: 50px auto 20px;
}
.ztxt{
	width: 50%;
}
.zphoto{
	width: 50%;
	padding: 10px;
}
.nameb{
	font-size: 1.5em;
	padding: 10px;
	width: 60px;
	text-align: center;
	color: #fff;
	background: #4cabe7;
	margin-right: 10px;
	display: block;
}
.nameo{
	font-size: 1.5em;
	padding: 10px;
	width: 60px;
	text-align: center;
	color: #fff;
	background: #e78e4c;
	margin-right: 10px;
	display: block;
}
.nameg{
	font-size: 1.5em;
	padding: 10px;
	width: 60px;
	text-align: center;
	color: #fff;
	background: #4c9425;
	margin-right: 10px;
	display: block;
}
.wbox{
	background: #fff;
	margin-bottom: 10px;
  -webkit-flex: 1;
  flex: 1;
}
.gbox{
	background: #edeff1;
	margin-bottom: 10px;
  -webkit-flex: 1;
  flex: 1;
}

@media screen and (min-width: 1500px){
.Recruit .main .catchL{
	font-size: 3.6em;
	line-height: 2em;
	left: 10%;
}
.Recruit .main .catchR{
	font-size: 3.6em;
	line-height: 2em;
	right: 10%;
}
.Recruit .main .catchZ{
	font-size: 3.6em;
}
}
@media screen and (max-width: 960px){
.Message .catch{
	line-height: 1.8em;
	top: 20%;
	left: 5%;
	font-size: 2.8em;
}
.Mestitle{
	font-size: 2.0em;
	line-height: 1.5em;
	margin: 40px 20px 10px;
}
.JobTitle{
	font-size: 2.0em;
	line-height: 1.6em;
	margin: 40px 20px 10px;
}

.Recruit .main .catchL{
	font-size: 2.8em;
	line-height: 1.6em;
	left: 2%;
}
.Recruit .main .catchR{
	font-size: 2.8em;
	line-height: 1.6em;
	right: 2%;
}
.Recruit .main .catchZ{
	font-size: 2.6em;
	line-height: 1.6em;
	bottom:12%;
	width: 400px;
}
.Recruit .fukidashi{
	font-size: 2.0em;
}
}
@media screen and (max-width: 680px){
	
.Message .catch{
	position: relative;
	line-height: 1.8em;
	top: inherit;
	left: inherit;
	margin: 10px;
	font-size: 2.5em;
	text-align: center;
}
.Mestitle{
	line-height: 1.4em;
	margin: 20px 20px 10px;
}
	
.JobTitle{
	font-size: 1.8em;
	line-height: 1.6em;
	margin: 20px 20px 10px;
}
.Recruit .Entrybtn a{
	font-size: 1.6em;
	padding: 12px 50px;
	min-width: auto;
}

.Recruit .Benefitico{
	font-size: 3.0em;
	margin: 10px auto ;
}
.Recruit .btitle{
	font-size: 2.2em;
}

.Recruit .main .catchL{
	position: relative;
	text-align: center;
	padding: 10px;
	margin: -10px auto 10px;
	background: #2c5282;
	font-size: 2.2em;
	line-height: 1.6em;
	left: inherit;
	top: inherit;
	-webkit-transform: translateY(0%);
	-moz-transform: translateY(0%);
	-ms-transform: translateY(0%);
	-o-transform: translateY(0%);
	transform: translateY(0%);
}
.Recruit .main .catchR{
	position: relative;
	text-align: center;
	padding: 10px;
	margin: -10px auto 10px;
	background: #2c5282;
	font-size: 2.2em;
	line-height: 1.6em;
	right: inherit;
	top: inherit;
	-webkit-transform: translateY(0%);
	-moz-transform: translateY(0%);
	-ms-transform: translateY(0%);
	-o-transform: translateY(0%);
	transform: translateY(0%);
}
.Recruit .Profile .Posi{
	font-size: 1.6em;
}
.Recruit .Profile .Name{
	font-size: 2.5em;
}
.Recruit .Profile .Nameen{
	font-size: 1.4em;
}
.Recruit .Profile .about{
	font-size: 1.6em;
}
.Recruit .fukidashi{
	font-size: 1.6em;
	padding: 10px 10px;
	min-width: 200px;
	
}
.JobList li{
	list-style: none;
	width: 50%;
	padding: 5px;
	text-align: center;
}
.futari{
	width: 100%;
}
.zadankai{
	margin: 30px auto 20px;
}
	
.wbox{
	background: #fff;
	margin-bottom: 5px;
  -webkit-flex: 1;
  flex: 1;
}
.gbox{
	background: #edeff1;
	margin-bottom: 5px;
  -webkit-flex: 1;
  flex: 1;
}
	
.Flexboxnw{
		padding: 5px 10px;
	}
.ztxt{
	width: 100%;
}
.zphoto{
	width: 100%;
	padding: 10px;
}
.nameb,
.nameo,
.nameg{
	font-size: 1.3em;
	width: 50px;
}
}
@media screen and (max-width: 480px){
.Message .catch{
	font-size: 1.8em;
	line-height: 1.4em;
	font-weight: bold;
}
.Recruit .Entrybtn a{
	font-size: 1.5em;
}
.Recruit .btitle{
	font-size: 2em;
	margin: 10px auto;
}

.Recruit .main .catchL{
	font-size: 1.8em;
}
.Recruit .main .catchR{
	font-size: 1.8em;
}
.Recruit .main .catchZ{
	font-size: 1.8em;
	line-height: 1.6em;
	bottom:12%;
	width: 320px;
}
.and{
		width:100%;
	}
}

.Topics .Contents{
	width: 70%;
	padding: 10px;
}
.Topics .TopicNav{
	width: 30%;
	padding: 10px;
}

.Topics .TopicNav .TopicNavT{
	color: #fff;
	background: #055298;
	font-size: 1.8em;
	padding: 8px 10px;
	text-align: left;
	margin: 0 20px 10px;
}
.Topics .TopicNav ul {
	margin: 10px 20px;
}
.Topics .TopicNav ul li{
	list-style: none;
}

@media screen and (max-width: 960px){
.Topics .Contents{
	width: 100%;
	padding: 10px;
}
.Topics .TopicNav{
	width: 100%;
	padding: 10px;
}
.Topics .TopicNav .TopicNavT{
	font-size: 1.6em;
}
.Topics .TopicNav ul {
	margin: 10px 20px;
	display: Flex;
	flex-wrap: wrap;
}
.Topics .TopicNav ul li{
	list-style: none;
	width: 50%;
	padding: 5px;
}
}
.VoiceGalley{
	margin: 50px auto;
}
.VoiceGalley .thumb-item{
	text-align: center;
	max-width: 900px;
	margin: 30px auto 0;
	padding: 10px;
	width: 90%;
}
.VoiceGalley .thumb-item img{
	margin: auto;
	text-align: center;
	border: 3px solid #d6d6d6;
	max-height: 500px;
}

.VoiceGalley .thumb-item-nav img{
	object-fit: contain;
	height: 120px;
	width: 120px;
	margin: auto;
	text-align: center;
	border: 1px solid #d6d6d6;
}
.VoiceGalley .thumb-item-nav .slick-prev:before,
.VoiceGalley .thumb-item-nav .slick-next:before
{
    font-family: 'slick';
    font-size: 1.5em;
    line-height: 1;

    opacity: .75;
    color: #000;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media screen and (max-width: 960px){
.VoiceGalley .thumb-item-nav img{
	height: 90px;
	width: 90px;
}
}
@media screen and (max-width: 680px){
	
.VoiceGalley .thumb-item{
	margin: 10px auto 0;
}
.VoiceGalley{
	margin: 30px auto 20px;
}
.VoiceGalley .thumb-item-nav img{
	height: 70px;
	width: 70px;
}
}
@media screen and (max-width: 480px){
	
	.VoiceGalley .thumb-item-nav{
		display: none;
	}
}

.pagetop{
	position:fixed;
	bottom:60px;
	right:20px;
	z-index:100;
	width: 60px;
	height: 60px;
}


.maintop .ol_btn{
	margin: 20px auto;	
}
.maintop .ol_btn a{
  background: linear-gradient(to right, #bbea8c, #59cdb3, #4f8df7 ,#9be8fd);
  background: linear-gradient(120deg, #bbea8c 1%, #59cdb3 35%, #59cdb3 50%, #4f8df7 50%, #4f8df7 65%, #9be8fd 99%);
	display: block;
	padding: 12px 10px;
	text-align: center;
	margin: auto;
	color: #fff;
	font-size: 1.5em;
	border: 3px solid #8ddbc6;
	width: 320px;
}
.maintop .ol_btn a:hover{
  background: linear-gradient(to right, #69d6a9, #329881, #326bcc ,#73c5dc);
  background: linear-gradient(120deg, #bbea8c 1%, #72d9a5 35%, #72d9a5 50%, #6eaefd 50%, #6eaefd 65%, #9be8fd 99%);
	border: 3px solid #6ba4ce;
}

.BukkenBox{
	width: 48%;
	margin: 10px 1%;
	padding: 20px;
	border: 1px solid #ccc;
}
.BukkenBox .photo{
	width: 50%;
	text-align: center;
}
.BukkenBox .moviebox{
	width: 50%;
	text-align: center;
	border: none;
}
.BukkenBox .moviebox img{
	line-height: 0;
	vertical-align: bottom;
	display: block;
}
.BukkenBox .moviebox ul{
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.BukkenBox .moviebox ul li{
	margin: 5px;
	line-height: 1em;
	padding: 5px 5px;
	color: #000;
	border:1px solid #111;
	font-size: 1.4em;
}
.BukkenBox .photo p{
	text-align: center;
}
.BukkenBox .txt{
	width: 50%;
	padding: 0 10px;
	text-align: left;
	font-size:1.6em;
	line-height:1.6em;
	text-align:left;
}
.BukkenBox h4{
	color: #6c4b8c;
	border-bottom: 1px solid #6c4b8c;
	font-size: 18px;
	font-weight: bold;
	text-align: left;
	margin: 0;
	padding: 0;
	margin-bottom: 10px;
}
.BukkenBox .txt dl{
	display: flex;
	flex-wrap: wrap;
	margin: 10px auto;
}
.BukkenBox .txt dl dt{
	width: 40%;
	color: #6c4b8c;
}
.BukkenBox .txt dl dd{
	width: 60%;
	padding-left: 10px;
}
.BukkenBox .txt p{
	font-size: 0.9em;
	margin: 5px auto;
	line-height: 1.5em;
	padding: 0;
}
.BukkenBox.ozonmovie h4{
	color: #4d8f62;
	border-bottom: 1px solid #4d8f62;
}
.BukkenBox.ozonmovie .txt dl dt{
	width: 40%;
	color: #4d8f62;
}
@media screen and (max-width: 980px){
	
.BukkenBox{
	padding: 10px;
}	
}
@media screen and (max-width: 768px){
	
.BukkenBox{
	width: 96%;
	margin: 10px auto;
}
}
@media screen and (max-width: 480px){

.BukkenBox .photo{
	width: 100%;
	padding-bottom: 10px;
}
.BukkenBox .txt{
	width: 100%;
	padding: 10px;
	font-size:1.5em;
	line-height:1.5em;
}
}