/*リセットCSS
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}

body {
line-height:1;
}

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

nav ul {
list-style:none;
}

blockquote, q {
quotes:none;
}

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

a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
color: #898989;
text-decoration: none;
}

/* change colours to suit your needs */
ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}
	
img{
	vertical-align:top;
}

/* change colours to suit your needs */
mark {
background-color:#ff9;
color:#000;
font-style:italic;
font-weight:bold;
}

del {
text-decoration: line-through;
}

abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}

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

/* change border colour to suit your needs */
hr {
display:block;
height:1px;
border:0;
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}

input, select {
vertical-align:middle;
}


/*ベース　CSS*/
html {
	overflow-y: scroll;
    box-sizing: border-box;
}

html, body {
	position: relative;
	width: 100%;
	margin: 0;
	color: #898989;
	background-color: #f6f6f6;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
	letter-spacing: 0.05em;
	font-size: 16px;
	line-height: 1.7;
	z-index: -1;
}

body {
	position: relative;
}

h1, h2, h3, h4, h5, h6{
	font-weight:normal;
}

li{
	list-style:none;
}

.Len{
	font-family: 'Oswald', sans-serif;
}


/*-----------------------------------------------------
slicknav
-------------------------------------------------------*/

/*!
 * SlickNav Responsive Mobile Menu v1.0.5.5
 * (c) 2015 Josh Cope
 * licensed under MIT
 */

.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
}

.slicknav_menu {
	*zoom: 1;
}
.slicknav_menu .slicknav_menutxt {
	display: block;
	float: left;
}
.slicknav_menu .slicknav_icon {
	float: left;
}
.slicknav_menu .slicknav_icon:before {
	background: transparent;
	display: block;
	content: "";
	position: absolute;
}
.slicknav_menu .slicknav_no-text {
	margin: 0;
}
.slicknav_menu .slicknav_icon-bar {
	display: block;
}
.slicknav_menu:before {
	content: " ";
	display: table;
}
.slicknav_menu:after {
	content: " ";
	display: table;
	clear: both;
}
.slicknav_nav {
	clear: both;
}
.slicknav_nav ul {
	display: block;
}
.slicknav_nav li{
	display: block;
	text-align:center;
	background-color:#333;
	border-bottom:1px solid #424242;
}
.slicknav_nav li a{
	display: block;
	padding: 20px;
}

/*フォント*/


/*
10px	0.625rem
11px	0.6875rem
12px	0.75rem
13px	0.8125rem
14px	0.875rem
15px	0.9375rem
16px	1rem
17px	1.0625rem
18px	1.125rem
19px	1.1875rem
20px	1.25rem
21px	1.3125rem
22px	1.375rem
23px	1.4375rem
24px	1.5rem
25px	1.5625rem
26px	1.625rem
27px	1.6875rem
28px	1.75rem
29px	1.8125rem
30px	1.875rem
31px	1.9375rem
32px	2rem
33px	2.0625rem
34px	2.125rem
35px	2.1875rem
36px	2.25rem
37px	2.3125rem
38px	2.375rem
39px	2.4375rem
40px	2.5rem
41px	2.5625rem
42px	2.625rem
43px	2.6875rem
44px	2.75rem
45px	2.8125rem
46px	2.875rem
47px	2.9375rem
48px	3rem
49px	3.0625rem
50px	3.125rem
51px	3.1875rem
52px	3.25rem
53px	3.3125rem
54px	3.375rem
55px	3.4375rem
56px	3.5rem
57px	3.5625rem
58px	3.625rem
59px	3.6875rem
60px	3.75rem
61px	3.8125rem
62px	3.875rem
63px	3.9375rem
64px	4rem
70px = 4.375rem
80px = 5rem
90px = 5.625rem
100px = 6.25rem
107px = 6.688rem
120px = 7.5rem
166px = 10.38rem
https://daniellamb.com/experiments/px-to-rem-calc/
*/
	.lead{
    	word-break: break-all;
	}
@media only screen and (max-width: 767px){
	html, body {
	}
	#sp_menu .slicknav_nav{
		font-size: 4.375vw;
	}
	#sp_menu .slicknav_nav .child{
		font-size: 3.125vw;
	}
	.header #menu li{
	}
	.header #menu li .child li{
	}
	.follower span {
	}
	.vertical {
		position: absolute;
		bottom: 60px;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		margin: auto;
		
	}

	.lead,.caseWrap .case-box dl,.dlBoxWp .dlBox dl,.JobBtn,.linkWp a{
		font-size: 3.125vw;
		line-height: 2.0;
	}

	.orgBox .org{
		font-size: 2.5vw;
		line-height: 2.0;
	}
	.org{
		font-size: 3.75vw;
		line-height: 2.0;
		
	}
	.enCt {
		font-size: 3.125vw;
		font-weight: 200;
		display: block;
		line-height: 1.4;
	}
	.enCt2 {
		font-size: 2.5vw;
		font-weight: 200;
		display: block;
		line-height: 1.4;
	}
	
	.business-box h2,.entryBtn,.btn3vr,.busDataWp .busDataInr .box h2,.nextAea .nextAeaInr .data h3{
		font-size: 3.75vw;
	}
	.header #menu li .child li{
		color: #898989;
	}

	.header #menu li .child li a{
		color: #FFF;
	}
	.slicknav_nav a {
		color: #FFF;
	}

	.footer .footer-inr .list a{
		color: #FFF;
		
	}
	
	.footer .footer-inr .copyright{
		color: #FFF;
		
	}
	.newsWrap .newsList .genle_01,.newsWrap .newsList .genle_02{
		color: #FFF;
		font-size: 2.5vw;
	}
	
	.fmWrap dl dt{
		font-weight: bold;
		font-size: 4.375vw;
		
	}
	input[type="submit"], input[type="button"] { -webkit-appearance: none; }
	.newsWrap .allView,.Mapbtn{
		font-size: 3.125vw;
		
	}

	.innerWp .bgTxt {
		font-size: 40vw;
		line-height: 1;
		letter-spacing: 0.04em;
	}

	.newsWrap .newsList .td-date{
		font-size:3.125vw;
	}

	.newsWrap .title h2{
		font-size: 11vw;
		font-weight: 200;
	}
	.page-5 .access .number {
		font-size: 8.125vw;
		font-weight: 200;
	}

	.page-5 .access h2 {
		font-size: 3.75vw;
	}

	.page-5 .access .tel {
		line-height: 1.0;	
	}
	.page-5 .Button a{
		text-align: left;
		color: #FFF;
	}
	.page-5 h2{
		font-size: 6.25vw;
		line-height: 1;
	}
	
	.page-5 .content{
		text-align: center;
	}

	.innerWp .page-4 .bgTxt.bgTxt01,.prodData .bgTxt.bgTxt01,.innerWp .page-2 .bgTxt.bgTxt01 {
		color: #8a8b8b;
		font-weight: 700;
	}

	.page-1{
		text-align: center;
	}

	.caseWrap .case-box .title .wrap{
		color: #FFF;
	}
	
	.caseWrap .case-box .title .wrap h2,.map h2,.step{
		font-size: 4.375vw;
	}
	
	.caseWrap .case-box .title .wrap h3{
		font-size: 6.25vw;
		line-height: 1.6;
	}
	
	/*20200330*/

	.kv_bg .kv-v-txt {
		color: #FFF;
		text-align: center;
	}
	.kv-v-txt h1 {
		font-size: 0.9375rem;
		line-height: 2.0;
	}

	.kv-v-txt .tls{
		/*font-size: 8.125vw;*/
		font-size: 14vw;
		font-weight: 200;
		line-height: 1.4;
	}
	.title_scd .tl{
		font-size: 3.75vw;
    	line-height: 1.6;
	}
	
	.title_scd .tlCy{
		font-size: 5.625vw;
    	line-height: 1.6;
		
	}
	
	.nextAea .nextAeaInr .data h4,.nextWp .nextInr .txtAreas h4{
		font-size: 5.625vw;
    	line-height: 1.6;
		
	}
	.timelineWrap .his1 {
		font-size: 8.125vw;
		font-weight: 200;
	}

	.btnWp .button {
		text-align: center;
		text-decoration: none;
		font-size:3.125vw;
	}
	.tp1 {
		color: #fff;
	}
	.disabledBtn {
		text-align: center;
		text-decoration: none;
		font-size:3.125vw;
	}
	.step li{
		position: relative;
		padding: 0 30px;
	}	
	
	/*20200330*/

}

@media only screen and (min-width: 768px){
	html, body {
	}
	#sp_menu .slicknav_nav{
		font-size: 1.25rem;
	}
	#sp_menu .slicknav_nav .child{
		font-size: 0.8125rem;
	}
	.header #menu li{
	}
	.header #menu li .child li{
	}
	.follower span {
	}
	.vertical {
	}
	.header #menu li .child li{
		color: #898989;
	}

	.header #menu li .child li a{
		color: #FFF;
	}
	.slicknav_nav a {
		color: #fff;
	}
	.slicknav_nav li a{
	}
	.lead,.caseWrap .case-box dl,.dlBoxWp .dlBox dl{
		font-size: 0.9375rem;
		line-height: 2.0;
	}
	

	.orgBox .org{
		font-size: 0.8125rem;
		line-height: 2.0;
	}
	.enCt {
		font-size: 0.9375rem;
		font-weight: 200;
	}
	.enCt2 {
		font-size: 0.8125rem;
		font-weight: 200;
	}
	
	.business-box h2,.entryBtn,.btn3vr,.busDataWp .busDataInr .box h2,.nextAea .nextAeaInr .data h3{
		font-size: 1rem;
	}
	
	
	.footer .footer-inr .list a{
		color: #FFF;
		
	}
	
	.footer .footer-inr .copyright{
		color: #FFF;
		
	}
	.newsWrap .newsList .genle_01,.newsWrap .newsList .genle_02{
		color: #FFF;
		font-size: 0.75rem;
	}
	input[type="submit"], input[type="button"] { -webkit-appearance: none; }
	.newsWrap .allView,.Mapbtn{
		font-size: 0.9375rem;
		
	}

	.innerWp .bgTxt {
		font-size: 26vw;
		line-height: 1;
		letter-spacing: 0.04em;
	}

	.newsWrap .newsList .td-date{
		font-size:0.9375rem;
	}

	.newsWrap .title h2{
		font-size: 3.4375rem;
		font-weight: 200;
	}
	.page-5 .access .number {
		font-size: 1.875rem;
		font-weight: 200;
	}

	.page-5 .access h2 {
		font-size: 0.9375rem;
	}

	.page-5 .access .tel {
		line-height: 1.0;	
	}
	.page-5 .Button a{
		text-align: left;
		color: #FFF;
	}
	.page-5 h2{
		font-size: 1.875rem;
		line-height: 1;
	}
	
	.page-5 .content{
		text-align: center;
	}

	.innerWp .page-4 .bgTxt.bgTxt01,.prodData .bgTxt.bgTxt01,.innerWp .page-2 .bgTxt.bgTxt01 {
		color: #8a8b8b;
		font-weight: 700;
	}

	.page-1{
		text-align: center;
	}

	.caseWrap .case-box .title .wrap{
		color: #FFF;
	}
	
	.caseWrap .case-box .title .wrap h2{
		font-size: 1.375rem;
	}
	
	.caseWrap .case-box .title .wrap h3{
		font-size: 1.875rem;
		line-height: 1.6;
	}
	
	
	
	/*20200330*/

	.kv_bg .kv-v-txt {
		color: #FFF;
		text-align: center;
	}
	.kv-v-txt h1 {
		font-size: 0.9375rem;
		line-height: 2.0;
	}

	.kv-v-txt .tls{
		font-size: 4.375rem;
		font-weight: 200;
	}
	.title_scd .tl{
		font-size: 1.25rem;
		line-height: 2.0;
	}
	
	.title_scd .tlCy{
		font-size: 1.875rem;
		line-height: 1.6;
		
	}
	
	
	.nextAea .nextAeaInr .data h4,.nextWp .nextInr .txtAreas h4{
		font-size: 1.875rem;
		line-height: 1.6;
		
	}
	
	.timelineWrap .his1 {
		font-size: 3.4375rem;
		font-weight: 200;
	}

	.btnWp .button {
		text-align: center;
		text-decoration: none;
		font-size: 1.125rem;
	}
	.tp1 {
		color: #fff;
	}
	.disabledBtn {
		text-align: center;
		text-decoration: none;
		font-size: 1.125rem;
	}
	.step li{
		position: relative;
		padding: 0 30px;
	}	
	
	/*20200330*/
	
	

}

@media only screen and (min-width: 1230px){
	html, body {
	}
	.header #menu li{
		font-size: 1.125rem;
	}
	.header #menu li .child li{
		font-size: 0.875rem;
	}
	.follower span {
	}
	.vertical {
	}

	.header #menu li .child li{
		color: #898989;
	}

	.header #menu li .child li a{
		color: #FFF;
	}
	.slicknav_nav a {
		color: #fff;
	}
	.slicknav_nav li a{
	}
	.lead,.caseWrap .case-box dl,.dlBoxWp .dlBox dl{
		font-size: 0.9375rem;
		line-height: 2.0;
	}
	.enCt {
		font-size: 0.9375rem;
		font-weight: 200;
	}
	.enCt2 {
		font-size: 0.8125rem;
		font-weight: 200;
	}
	
	.business-box h2,.entryBtn,.btn3vr,.busDataWp .busDataInr .box h2,.nextAea .nextAeaInr .data h3{
		font-size: 1.125rem;
	}
	
	
	.footer .footer-inr .list a{
		color: #FFF;
		
	}
	
	.footer .footer-inr .copyright{
		color: #FFF;
		
	}
	.newsWrap .newsList .genle_01,.newsWrap .newsList .genle_02{
		color: #FFF;
		font-size: 0.75rem;
	}
	.newsWrap .allView,.Mapbtn{
		font-size: 0.9375rem;
		
	}

	.innerWp .bgTxt {
		font-size: 26vw;
		line-height: 1;
		letter-spacing: 0.04em;
	}

	.newsWrap .newsList .td-date{
		font-size:0.9375rem;
	}

	.newsWrap .title h2{
		font-size: 3.4375rem;
		font-weight: 200;
	}
	.page-5 .access .number {
		font-size: 2.1875rem;
		font-weight: 200;
	}

	.page-5 .access h2 {
		font-size: 1.0625rem;
	}

	.page-5 .access .tel {
		line-height: 1.0;	
	}
	.page-5 .Button a{
		text-align: left;
		color: #FFF;
	}
	.page-5 h2{
		font-size: 2.1875rem;
		line-height: 1;
	}
	
	.page-5 .content{
		text-align: center;
	}

	.innerWp .page-4 .bgTxt.bgTxt01,.prodData .bgTxt.bgTxt01,.innerWp .page-2 .bgTxt.bgTxt01 {
		color: #8a8b8b;
		font-weight: 700;
	}

	.page-1{
		text-align: center;
	}

	.caseWrap .case-box .title .wrap{
		color: #FFF;
	}
	
	.caseWrap .case-box .title .wrap h2,.data h2{
		font-size: 1.375rem;
	}
	
	.caseWrap .case-box .title .wrap h3{
		font-size: 2.1875rem;
		line-height: 1.6;
	}

	.kv_bg .kv-v-txt {
		color: #FFF;
		text-align: center;
	}
	.kv-v-txt h1 {
		font-size: 0.9375rem;
		line-height: 2.0;
	}

	.kv-v-txt .tls{
		font-size: 4.375rem;
		font-weight: 200;
	}
	.title_scd .tl{
		font-size: 1.25rem;
		line-height: 2.0;
	}
	
	.title_scd .tlCy{
		font-size: 2.1875rem;
		line-height: 1.6;
		
	}
		.nextAea .nextAeaInr .data h4,.nextWp .nextInr .txtAreas h4{
		font-size: 1.875rem;
		line-height: 1.6;
		
	}
	.timelineWrap .his1 {
		font-size: 3.4375rem;
		font-weight: 200;
	}

	.btnWp .button {
		text-align: center;
		text-decoration: none;
		font-size: 1.125rem;
	}
	.tp1 {
		color: #fff;
	}
	.disabledBtn {
		text-align: center;
		text-decoration: none;
		font-size: 1.125rem;
	}
	.step li{
		position: relative;
		padding: 0 30px;
	}	

	
}



/*HEADER*/
@media only screen and (max-width: 767px){
	#sp_menu{
		display: block;
	}
	
	#menu,#lang-menu{
		display: none;
	}
	#cursor{
		display: none;
		
	}
}

@media only screen and (min-width: 768px){
	#sp_menu{
		display: block;
	}
	
	#menu,#lang-menu{
		display: none;
	}
	#cursor{
		display: none;
		
	}
}

@media only screen and (min-width: 1230px){
	#sp_menu{
		display: none;
	}
	#menu,#lang-menu{
		display: block;
	}
	#cursor{
		display: block;
		
	}
}

#sp_menu{
	width: 100%;
	background-color: #FFF;
}

/* 通常のアイコンを消す */
.slicknav_menu .slicknav_icon{
  display:none;
}
/* 背景画像を設定 */
.slicknav_btn{
	width:60px;
	height:60px;
	padding:0;
	border-radius:0;
	background-color: #898989;
	position: relative;
	display: block;
	vertical-align: middle;
	float: right;
	cursor: pointer;
}

.slicknav_open.slicknav_btn{
	background-color: #898989;
}


#sp_menu .slicknav_open .child a{
	background:none;
}

/*MENU*/
@media only screen and (max-width: 767px){
	
	/*▼▼▼▼▼▼▼▼▼▼▼▼20200417*/
	.spOn{
		opacity: 0;
	}
	
	.page-21 {
		width: 100%;
		margin: 0 auto 0;
		padding: 0 0 0 0;
		z-index: 1;
	}
	
	.nextWp{
		
	}
	
	.nextWp .nextInr{
		position: relative;
		
	}
	
	.nextWp .nextInr.left{
		margin-bottom: 30px;
		padding-right: 20px;
		
	}
	
	.nextWp .nextInr.left .nextBx{
		padding-left: 40px;
	}
	.nextWp .nextInr.right .nextBx{
		padding-right: 40px;
	}
	
	.nextWp .nextInr.right{
		text-align: right;
		padding-left: 20px;
		margin-bottom: 20px;
		
	}
	
	.nextWp .nextInr a{
		display: block;
		position: relative;
		padding: 30px 20px;
		background-color: #FFF;
		border-radius: 3px 3px 3px 3px;
		
	}

	.nextWp .nextInr.left a:before {
		display: none;
	}

	.nextWp .nextInr.right a:before {
		display: none;
	}
	
	.nextWp .nextInr{
		position: relative;
		
	}
	
	.page-20 {
		width: 100%;
		margin: 0 auto 0;
		padding: 0 0 0 0;
		z-index: 1;
		background-color: #FFF;
	}
	
	.nextAea{
		padding: 0 20px 30px;
		margin-bottom: 20px;
	}
	
	.nextAea .nextAeaInr{
		display: flex;
		
		border-bottom: 1px solid #dfdfdf;
		padding: 30px 0;
		background-color: #FFF;
		align-items: center;
		
	}
	
	.nextAea .nextAeaInr:last-child{
		border-radius: 0px 0px 3px 3px;
	}
	.nextAea .nextAeaInr:first-child{
		border-radius: 3px 3px 0px 0px;
		border-top: 1px solid #dfdfdf;
	}
	
	.nextAea .nextAeaInr .img a{
		display: block;
		overflow: hidden;
		
	}
	
	.nextAea .nextAeaInr .img{
		width: 30%;
		overflow: hidden;
		
	}
	
	.nextAea .nextAeaInr .img a:hover img {
		transform: scale(1.1);
	}

	.nextAea .nextAeaInr .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.nextAea .nextAeaInr .data{
		width: 70%;
		
	}
	
	.nextAea .nextAeaInr .dataBx{
		padding-left: 20px;
		
	}
	.nextBx .imgAreas{
		margin-bottom: 30px;
		overflow: hidden;
		
	}
	
	.nextBx .txtAreas span{
		display: inline-block;
		background-color: #898989;
		color: #FFF;
		border-radius: 6px;
		content: "";
		padding: 0px 20px;
		margin: 0 0 20px 0;
	}
	
	.nextBx h4{
		padding-bottom: 20px;
	}
	.nextAea .nextAeaInr .data h4{
		padding-top: 25px;
		
	}
	
	.nextWp .nextInr.left .nextBx:after{
		content: "";
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		left: 20px;
		top: 50%;
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw4_b.png);
	}
	
	.nextWp .nextInr.right .nextBx:after{
		content: "";
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		right: 20px;
		top: 50%;
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw5_b.png);
	}

	.nextInr a img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.nextInr a:hover img {
		transform: scale(1.1);
	}
	
	
	/*▲▲▲▲▲▲▲▲▲▲▲▲20200417*/	
/**/
	
	
	
	.orgWp{
		width: 100%;
		display: table;
		padding: 30px 0;
		
	}
	
	.orgWp .orgBox{
		display:table-cell;
    	vertical-align: top;
	}
	
	.orgWp .orgBox.Lft{
		width: 100%;
		position: relative;
	}
	
	.orgWp .orgBox.rgt{
		padding-top: 107px;
		position: relative;
	}
	
	.orgWp .orgBox.Lft::before {
		content: '';
		display: block;
		width: 100%;
		height: 399px;
		bottom: 25px;
		left: 25px;
		position: absolute;
		margin: auto;
		border-top: 1px #dfdfdf solid;
		border-left: 1px #dfdfdf solid;
		border-bottom: 1px #dfdfdf solid;
	}
	.orgWp .orgBox.Lft::after {
		content: '';
		display: block;
		width: 1px;
		height: 167px;
		top: 51px;
		left: 25px;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
	}
	
	.orgWp .orgBox.rgt::before {
		content: '';
		display: block;
		width: 1px;
		height: 320px;
		bottom: 105px;
		left: -21px;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
	}
	
	.orgBox .org {
		display: block;
		width: 110px;
		text-align: center;
		padding: 15px 0;
		background-color: #FFF;
		border: 1px #dfdfdf solid;
		position: relative;
	}
	
	.orgBox.rgt .org {
		width: 70px;
	}
	.orgBox.Lft .org.org3,.orgBox.Lft .org.org11 {
		width: 95px;
	}
	
	.orgBox.Lft .org.org1{
		width: 80px;
	}
	
	.orgWp .org2{
		margin-top: 30px;
		margin-left:  45px;
	}
	
	.orgWp .org3{
		margin-top: 56px;
		margin-left:  50%;
	}
	.orgWp .org3::before {
		content: '';
		display: block;
		width: 1px;
		height: 141px;
		bottom: 0;
		left: 50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		z-index: -1;
	}	
	
	.orgWp .org4{
		margin-top: 241px;
		margin-left:  45px;
	}	
	
	.orgWp .org11{
		margin-left: 50%;
	}
	.orgWp .org11::before {
		content: '';
		display: block;
		width: 1px;
		height: 153px;
		top: 0;
		left: 50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		z-index: -1;
	}	
	
	.orgWp .org5{
		margin-top: 28px;
		
	}
	.orgWp .org5::before {
		display: none;
	}	
	
	.orgWp .org6{
		margin-top: 28px;
		
	}
	.orgWp .org6::before {
    content: '';
    display: block;
		width: 30%;
		height: 1px;
		top: 0;
		bottom:0;
		left: -30%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org7{
		margin-top: 28px;
		
	}
	.orgWp .org7::before {
    content: '';
    display: block;
		width: 30%;
		height: 1px;
		top: 0;
		bottom:0;
		left: -30%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org8{
		margin-top: 28px;
		
	}
	.orgWp .org8::before {
    content: '';
    display: block;
		width: 30%;
		height: 1px;
		top: 0;
		bottom:0;
		left: -30%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org9{
		margin-top: 28px;
		
	}
	.orgWp .org9::before {
    content: '';
    display: block;
		width: 30%;
		height: 1px;
		top: 0;
		bottom:0;
		left: -30%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org10{
		margin-top: 28px;
		
	}
	
/**/
	
	
	.arw2::after {
		display: block;
		position: absolute;
		content: "";
		right: 39px;
		bottom: -33px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #898989;
		transform: rotate(135deg);
	}
	
	.flows{
		margin-top: 30px;
	}
	.selectbox{
		position:relative;
	}
	.selectbox::after{
		position: absolute;
		top: 35%;
		right: 3%;
		margin-top: -8px;
		content: "▼";
		color: #333;
		pointer-events: none;
	}
 
	select{
		width: 100%;
		border: none;
		-webkit-appearance:none;
	}

	.arw2::before {
		display: block;
		position: absolute;
		content: "";
		right: 44px;
		bottom: -35px;
		width: 1px;
		height: 25px;
		background: #FFF;
	}
	.brn {
		display: none;
	}
	.page-1{
		padding:  30px 20px;
		text-align: center;
	}

	.logo{
		position: absolute;
		top: 12px;
		left: 20px;
		width: 145px;
	}
	.l-index-kv__read {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		margin: auto;
		width: 80%;
	}

	.l-index-kv__read img{
		width: 100%;
	}
	#left_link{
		display: none;
	}
	
	/*メニューボタンのエフェクト*/
	#panel-btn-icon,
	#panel-btn-icon span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box;
	}
	#panel-btn-icon {
	z-index: 20;
	position: absolute;
	right: 0;
	top: 0px;
	width: 60px;
	height: 60px;
	}
	#panel-btn-icon span {
	position: absolute;
	right: 0;
	left: 0;
	z-index: 9;
	width: 22px;
	height: 2px;
	margin: auto;
	background: #fff;
	}
	#panel-btn-icon span:nth-of-type(1) {
	top: calc(50% - 7px);
	}
	#panel-btn-icon span:nth-of-type(2) {
	top: 0;
	bottom: 0;
	}
	#panel-btn-icon span:nth-of-type(3) {
	bottom: calc(50% - 7px);
	}
	.slicknav_open #panel-btn-icon span:nth-of-type(1) {
	transform: translateY(6px) rotate(-45deg);

	}
	.slicknav_open #panel-btn-icon span:nth-of-type(2) {
	opacity: 0;
	}
	.slicknav_open #panel-btn-icon span:nth-of-type(3) {
	transform: translateY(-6px) rotate(45deg);
	}
	


	#sp_menu .slicknav_collapsed a {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: 24px;
		background-image: url(../images/arw7.png);
	}
	#sp_menu .slicknav_open a {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: 24px;
		background-image: url(../images/arw8.png);
	}
	.slicknav_arrow {
		display: none;
	}
	
	.slicknav_nav li ul li {
		background-color: #454545;
		border-bottom: 1px solid #606060;
	}
	
	.innerWpContact{
		width: 100%;
		position: relative;
		background-color: #FFF;
	}
	
	.inner{
		position: relative;
	}
	.innerWp .page-2::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #949595;
		z-index: -2;
		
	}
	.innerWp .page-4::after {
		
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #949595;
		z-index: -2;
	}
	.businessWrap{
		display: flex;
		flex-wrap: wrap;
		justify-content:space-between;
		padding:  0 20px;
	}
	.businessWrap a{
		margin-bottom: 30px;
		width: 48%;
	}
	
	.businessWrap .business-box{
    	position:relative;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));
		
	}
	.businessWrap .business-box .img{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessWrap .business-box img{
		width: 100%;
		vertical-align: bottom;
	}
	
	.businessWrap a:hover img {
		transform: scale(1.1);
	}

	.businessWrap .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.page-5 h2{
		padding-bottom: 20px;
	}
	
	.businessWrap .business-box .title{
		position: absolute;
		width: 90%;
		bottom: -10px;
		left: 0;
		right: 0;
		/* height: 100%; */
		margin: 0 auto 0;
		padding: 0;
		background: #FFF;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.businessWrap .business-box .title .wrap{
		padding: 10px;
	}
	
	.caseWrap{
	}
	.caseWrap a{
		display: block;
	}
	
	.caseWrap .case-box{
    	position:relative;
		
	}
	
	.caseWrap .case-box dl{
		display:flex;
		flex-wrap: wrap;
		padding-top: 20px;
		
	}
	
	.caseWrap .case-box dl dt{
		position: relative;
		width: 20%;
		box-sizing: border-box;
	}
	
	.caseWrap .case-box dl dt:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 1px;
		height: 50%;
		background-color: #b7b7b7;
	}
	
	.caseWrap .case-box dl dd{
		width: 80%;
		box-sizing: border-box;
	}
	
	.caseWrap .case-box .img{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));
	}
	.caseWrap .case-box img{
		width: 100%;
		vertical-align: bottom;
	}
	
	.caseWrap a:hover img {
		transform: scale(1.1);
	}

	.caseWrap .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	
	.caseWrap .case-box .title{
		width: 100%;
	}
	
	.caseWrap .case-box .title .wrap{
		padding: 30px 0 0 0;
	}
	
	.caseWrap .case-box .title .wrap h2{
	}
	
	.caseWrap .case-box .title .wrap h3{
		padding: 20px 0;
	}
	
	.innerWp{
		width: 100%;
		position: relative;
	}
	
	.page-5{
		margin: 0 auto;
		padding:  30px 20px 0 20px;
	}
	
	.page-5 .Button{
		padding-top: 20px;
	}
	.page-5 .Button a{
		padding: 20px 0;
    	width: 100%;
		display: inline-block;
		background-color: #898989;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.page-5 .Button span{
		position: relative;
    	display: block;
		padding: 0 20px;
	}
	.page-5 .Button span::after {
		display: block;
		position: absolute;
		content: "";
		right: 23px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.page-5 .Button span::before {
		display: block;
		position: absolute;
		content: "";
		right: 20px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}

	.page-5 .access {
		text-align: left;
		margin-top: 30px;
		background-color: #FFF;
	}

	.page-5 .access .office {
		border-bottom:1px solid #dfdfdf;
	}
	
	.page-5 .access .office-inr {
		padding: 20px 0;
		text-align: center;
	}
	
	.page-5 .access .office:last-child {
	}
	
	.page-5 .access .office:first-child{
		border-top:1px solid #dfdfdf;
	}

	.page-5 .access h2 {
		padding-bottom: 5px;
	}

	.page-5 .access .tel {
		display: inline;	
	}

	.page-5 .access .number {
		display: inline;	
	}

	.business-box h2{
		position: relative;
		padding-top: 5px;
	}

	
	.alink{
		display: block;
		width: 100%;
	}
	
	.page-4{
		margin: 0 auto;
		padding:  30px 20px;
	}
	
	.page-3{
		margin: 0 auto;
		padding:  30px 0;
	}
	
	.newsWrap{
		padding: 0 20px;
	}
	
	.page-7 .newsWrap{
		padding: 0 0;
	}
	
	.newsWrap .title{
		padding: 0 0;
		text-align: center;
	}
	
	.newsWrap .newsList .news{
		border-bottom:  1px solid #dfdfdf;
		padding: 20px 0;
	}	
	
	.newsWrap .newsList .news:first-child{
	}
	
	.newsWrap .newsList .notice-info{
		padding-bottom: 1px;
		
	}
	
	.newsWrap .newsList .td-date{
		margin-right: 10px;
	}
	
	.newsWrap .newsList .genle_02{
		background-color: #d80e0e;
		padding: 3px 15px;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.newsWrap .newsList .genle_01{
		background-color: #898989;
		padding: 3px 15px;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.newsWrap .allView,.Mapbtn{
		position: relative;
		margin-top: 30px;
		display: inline-block;
		
	}
	
	.newsWrap .allView::after,.Mapbtn::after {
		display: block;
		position: absolute;
		content: "";
		right: -47px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.newsWrap .allView::before,.Mapbtn::before {
		display: block;
		position: absolute;
		content: "";
		right: -50px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}
	
	.page-2{
		margin: 0 auto;
		padding:  30px 0 10px 0;
	}
	
	.innerWp .page-2 .mask{
		
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
    	z-index: -1;
	}
	.innerWp .page-4 .mask {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
    	z-index: -1;
	}
	.innerWp .bgTxt {
		z-index: 2;
	}

	.innerWp .page-2 .bgTxt.bgTxt01 {
		position: absolute;
		left: -20px;
    	bottom: -20px;
	}

	.innerWp .page-4 .bgTxt.bgTxt01 {
		position: absolute;
		right: -20px;
		bottom: -20px;
	}

	
	.footer{
		text-align: center;
		background-color: #898989;
	}
	
	.footer .footer-inr{
		margin: 0 auto;
		padding: 30px 0;
	}
	.footer .footer-inr .list{
		padding-bottom: 30px;
	}
	.footer .footer-inr .list ul{
		padding: 0 20px;
		border-bottom:  1px solid #a9aaaa;
	}
	
	.footer .footer-inr .list li{
		display: inline-block;
		padding:  0 15px 30px 15px;
		
	}
	
/*20200330*/
	
	
	#kv-visual-snd .kv_bg {
		width: 100%;
		height: 360px;
		background-size: cover;
		background-position: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#kv-visual-snd .kv_bg.caseBg {
		background-image: url(../images/caseBg.jpg);
	}
	#kv-visual-snd .kv_bg.companyBg {
		background-image: url(../images/companyBg.jpg);
	}
	#kv-visual-snd .kv_bg.otherBg {
		background-image: url(../images/otherBg.jpg);
	}
	#kv-visual-snd .kv_bg.newsBg {
		background-image: url(../images/newsBg.jpg);
	}
	#kv-visual-snd .kv_bg.contactBg {
		background-image: url(../images/contactBg.jpg);
	}
	#kv-visual-snd .kv_bg.recruitBg {
		background-image: url(../images/recruitBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessVrBg {
		background-image: url(../images/businessVrBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessCgBg {
		background-image: url(../images/businessCgBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessCadBg {
		background-image: url(../images/businessCadBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessMedicalBg {
		background-image: url(../images/businessMedicalBg.jpg);
	}
	#kv-visual-snd .kv_bg.productsBg {
		background-image: url(../images/productsBg.jpg);
	}
	.kv_bg .kv-v-txt {
		padding: 0 0 0 0;
	}
	.page-6 {
		width: 100%;
		margin: 0 auto 0;
		padding: 0 0 0 0;
		z-index: 1;
	}
	.page-7 {
		margin: 0 auto 0;
		padding: 0 20px 30px 20px;
		z-index: 1;
	}
	.page-8 {
		margin: 0 auto 0;
		padding: 0 20px 30px;
		z-index: 1;
	}
	.page-10 {
		width: 100%;
		margin: 0 auto 0;
		padding: 0 0 20px 0;
		z-index: 1;
	}
	.page-11 {
		margin: 0 auto 0;
		padding: 20px 20px 30px 20px ;
		z-index: 1;
	}
	
	.dlBoxWp {
		position: relative;
		margin: 0 auto;
		text-align: left;
	}
	
	.txR{
		display: block;
		text-align:  right;
		padding-top: 30px;
	}
	
	.txR2{
		display: block;
		text-align:  right;
	}

	.dlBoxWp .dlBox.rgt p{
		padding-top: 30px;
	}

	.dlBoxWp .dlBox.lft p{
		padding-top: 20px;
	}
	
	.imgAea{
		padding-bottom: 0;
	}
	
	.imgAea img{
		width: 100%;
	}
	
	.dlBoxWp .dlBox dl {
		border-bottom: 1px #dfdfdf solid;
		padding-top: 20px;
		padding-bottom: 20px;
		margin: 0;
		display: table;
		width: 100%;
	}
	.dlBoxWp .dlBox dl dt {
		vertical-align: top;
		display: table-cell;
		width: 30%;
		margin: 0;
		padding: 0;
	}
	.dlBoxWp .dlBox dl dd {
		vertical-align: top;
		margin: 0;
		padding: 0;
	}
	
	.tlMt{
		margin-top: 10px;
	}
	.title_scd{
		padding: 30px 20px 30px 20px;
		text-align: center;
		background-color: #FFF;
	}
	
	.title_scd .tl{
		padding: 0 0 10px 0;
	}
	
	.innerWp .page-10::after {
	}
	
	.timelineWrap {
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.timelineWrap:before {
		content: "";
		position: absolute;
		left: 20px;
		bottom: 0;
		top: 0;
		width: 1px;
		height: 100%;
		border-right: 1px solid #dfdfdf;
		z-index: -1;
	}
	.timeline {
		width: 100%;
	}
	.timeline .year {
		padding: 15px 0 ;
		margin-bottom: 15px;
		background-color: #f6f6f6;
	}
	.timeline .detail {
		position: relative;
		margin: 0 0 15px 50px;
	}
	.timeline .month {
	}
	.timeline .detail.hisL {
	    margin: 0 0 15px 50px;
		text-align: left;
		position: relative;
	}
	.hisL .month {
		padding: 0 0 0 0;
	}
	.timeline .month+p {
		overflow: hidden;
	}
	.timeline .detail.hisL:after {
		content: "";
		position: absolute;
		right: 0;
		left: -38px;
		top: 2px;
		width: 10px;
		height: 10px;
		border: 5px solid #898989;
		background-color: #f6f6f6;
		border-radius: 50%;
	}
	.timeline .detail:after {
		content: "";
		position: absolute;
		right: 0;
		left: -38px;
		top: 2px;
		width: 10px;
		height: 10px;
		border: 5px solid #898989;
		background-color: #f6f6f6;
		border-radius: 50%;
	}
	.msg {
		padding-top: 30px;
		width: 100%;
	}
	.msg h2 {
		padding-bottom: 20px;
	}
	
	.acmapWrap{
		
	}
	
	.acmapWrap .acmapBox{
		padding: 30px 20px 0 20px;
		
	}
	
	.acmapWrap .map{
		padding: 0 0 30px;
		
	}
	
	.acmapWrap .map .mapInr{
		padding: 5px;
		background-color: #FFF;
		
	}
	
	.acmapWrap .data{
		padding: 0 0 0;
		
	}
	
	.acmapBox.rev{
		flex-flow: row-reverse;
		
	}
	
	.linkWp{
		padding-top: 30px;
		width: 100%;
	}
	.linkWp li a{
		color: #FFF;
		display: block;
		width: 100%;
		padding: 15px 0;
		text-align: center;
	}
	.linkWp li{
		position: relative;
		margin-bottom: 1px;
    	background-color: #898989;
	}
	
	.linkWp li:first-child{
		border-radius: 3px 3px 0 0 / 3px 3px 0 0;
	}
	
	.linkWp li:last-child{
		border-radius: 0 0 3px 3px / 0 0 3px 3px;
	}
	.linkWp li:before {
	}
	.linkWp li:before {
	}
	.mod-ol > li {
		display: table-row;
		counter-increment: table-ol;
	}
	.mod-ol > li:before {
		content: counter(table-ol) ".";
		display: table-cell;
		padding-right: 10px;
	}
	.ohBx{
		padding-top: 30px;
	}
	.mod-ul {
		display: table;
		border-collapse: separate;
		border-spacing: 0 .6em;
	}
	.mod-ul > li {
    	display: table-row;
	}
	.mod-ul > li:before {
		content: "\2022";
		display: table-cell;
		padding-right: 10px;
	}
	.txt-blank .Mapbtn{
		margin-top: 10px;
	}
	
	.fmWrap{
	}
	
	.fmWrap dl {
		width: 100%;
		border-top: 1px solid #dfdfdf;
		padding: 0 0 20px 0 ;
		margin: 0;
	}
	.fmWrap dl dt {
		padding: 20px 0 0 0;
	}
	.fmWrap dl dd {
		padding: 10px 0 0 0;
	}	
		
	.fmWrap dl .typ1 {
		padding: 0 0;
		margin: 0;
	}
	.fmWrap dl .typ2 {
		vertical-align: middle;
		padding: 10px 0 0 0;
		margin: 0;
	}
	.fmWrap dl .typ3 {
		padding: 0 0;
		vertical-align: middle;
	}
	.fmWrap dl dt .wps5 {
		border-collapse: separate;
		border-spacing: 0 0;
	}
	.fmWrap dl dt .left {
	}
	.fmWrap dl dt .right {
	}
	.fmWrap dl select {
		border: 0;
		padding: 10px;
		margin: 10px 0 0 0;
		background-color: #FFF;
  		box-sizing: border-box;
	}
	.fmWrap dl input[type=text] {
		border: 0;
		padding: 10px;
		margin: 10px 0 0 0;
		background-color: #FFF;
		width: 100%;
  		box-sizing: border-box;
	}
	.fmWrap dl textarea {
		border: 0;
		padding: 10px;
		margin: 10px 0 0 0;
		background-color: #FFF;
		width: 100%;
  		box-sizing: border-box;
	}
	
	.btnWp .button {
		width: 100%;
		max-width: 550px;
		margin: 0 auto;
		display: block;
		padding: 15px;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
	}
	.tp1{
		background-color: #898989;
	}
	.btnWp input[type="button"][disabled] {
		background-color: #d6d6d6;
	}
	
	.fmWrap dl.lstTd{
		padding-bottom: 20px;
    	border-bottom: 1px solid #dfdfdf;
		
	}
	
	.btnWp{
		margin: 30px 0 0;
		position: relative;
	}
	.disabledBtn.on{
		display: none;
	}
	.disabledBtn {
		width: 100%;
		max-width: 550px;
		display: block;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
		padding: 12px 0 12px ;
		background-color: #d6d6d6;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		margin: auto;
		z-index: 2;
	}
	.step{
		display: flex;
		justify-content: center;
		align-items: center;
		margin-top: 15px;
	}
	.step li{
		position: relative;
		padding: 0 30px;
	}
	.step li::after {
		display: block;
		position: absolute;
		content: "";
		left: -10px;
		top: 14px;
		width: 18px;
		height: 1px;
		transform: rotate(-60deg);
		background-color: #dfdfdf;
	}
	.step li:first-child::after {
		display: none;
	}
	
	.mWap .wrap6{
		
	}
	
	.step li.st{
		color: #dfdfdf;
		
	}
	.ft_red,.fRed{
		color: #d80e0e;
	}
	
	.atBx{
		padding: 0;
		height: 300px;
		background-color: #FFF;
		overflow-y: scroll;
    	margin-top: 10px;
		margin-bottom: 0;
		width: 100%;
	}
	
	.atBx p{
		padding: 10px;
	}
	
	.spTatn{
		padding-top: 30px;	
	}
	
	.btn3vr{
		width: 100%;
		margin: 30px auto;
		display: block;
		padding: 10px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
		background-color: #898989;
		color: #FFF;
	}
	
	.txt04{
		padding-top: 10px;
	}
	
	.linkBk{
		
	}
	
	.error{
		padding: 10px 20px 20px 20px;
		margin-top: 15px;
    	border: 1px solid #dfdfdf;
	}
	.fmWrap .txt{
		padding-top: 10px;	
	}
	.linkTx1{
		padding-top: 15px;	
	}
	
	.ckBx2{
		padding-top: 15px;	
    	border-bottom: 1px solid #dfdfdf;
	}
	
	.ckBx2 .wps5{
		padding:  0 0;
		
	}
	.businessList{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.businessList a {
		width: 100%;
		margin-top: 10px;
	}
	.businessList .title {
		width: 100%;
		margin: 0 auto 0;
		padding: 0;
		background: #FFF;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessList .title .wrap {
		padding: 15px;
	}
	
	.entBWp{
		padding: 20px 0 0 0;
	}
	
	.imgAea .slick-list{
		background-color: #FFF;
	}
	
	.imgAea .slick-dots{
    	padding: 0 0 30px 0;
	}
	
	.sps1{
		margin: 0 0 0 0;
	}
	
	.entryBtn{
		width: 100%;
		margin: 10px auto 0;
		display: block;
		padding: 15px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: none;
		transition: all .3s;
		background-color: #898989;
		color: #FFF;
	}
	
	.Jobtxt{
		/*display: none;*/
		padding: 0 0 0 0;
	}
	
	.JobBtn{
		width: 100%;
		margin: 10px auto 0;
		display: block;
		padding: 15px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: none;
		transition: all .3s;
		background-color: #FFF;
		position: relative;
	}
	
	.JobBtn::before, .JobBtn::after {
		position: absolute;
		top: 50%;
		right: 5%;
		transform: translateY(-50%) translateX(0);
		margin: auto;
		content: '';
		display: inline-block;
		width: 13px;
		height: 1px;
		background-color: #898989;
	}
	
	.JobBtn::after {
		transform: rotate(90deg);
	}
	.JobBtn.active::before {
		background-color: #FFF;
	}
	.JobBtn.active::after {
		display: none;
	}
	
	.JobBtn.active{
		background-color: #898989;
		color: #FFF;
	}
	.data h2{
		display: none;
	}
	.map h2{
		display:block;
	}
	
	.map h2 {
		padding-bottom: 10px;
		margin-bottom: 20px;
		border-bottom: 1px #dfdfdf solid;
	}
	.acmapWrap{
		padding-bottom: 30px;
	}
	.f-grid{
		width: 100%;
		background-color: #FFF;
	}
	.f-grid ul{
		display: flex;
		margin: 0 auto 0;
		padding: 25px 20px 25px 20px;
	}
	.f-grid li{
	}
	.f-grid li .iMlg{
		display: block;
	}
	.f-grid li .iMlg img{
		width: 75%;
	}
	
	.page-2 .wrap .enCt,.page-7 .wrap .enCt{
		display: none;
	}
	
	/*20200330*/
	
/*▼▼▼▼▼▼▼▼20200406SP*/
	.movieWrp{
		padding: 0 0 0 0;
		background-color: #FFF;
		text-align: center;
	
	}
	.movieInr{
		position: relative;
		width: 80%;
		margin: 0 auto 30px;
		padding-top: 56.25%;
		display: inline-block;
	}

	.movieInr iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
	.swipeboxWrap{
		width: 100%;
		background-color: #FFF;
	}
	.swipeboxWrap.last{
		
	}
	.swipeboxWrap .swipeboxInr{
		border: 1px solid #dfdfdf;
		display: inline-block;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		background-color: #FFF;
		margin: 0 20px 30px;
		text-align: center;
	}
	
	.swipeboxInr a{
		display: block;
		padding: 20px;
		position: relative;
	}
	
	.swipeboxInr a:before {
		position: absolute;
		bottom: 0;
		right: 0;
		margin: auto;
		content: "";
		width: 40px;
		height: 40px;
		background-image: url(../images/arw6.png);
		background-color: #898989;
		background-position: center;
		background-size: 17px;
    	background-repeat: no-repeat;
		transition: all 0.4s ease-out;
	}
	
	.swipeboxInr a:hover:before {
		background-color: #949595;
	}
	
	.swipeboxWrap .swipeboxInr img{
		margin: 0 auto;
		max-width: 100%;
		
	}
	
	.swipebox-html body:not(.touchdevice) *{cursor: auto;}

	.busData{
		padding: 0 20px 0 20px;
		background-color: #FFF;
	}
	.busDataWp{
		width: 100%;
		
	}
	
	.prodDataBx{
		padding-top: 30px;
		background-color: #FFF;
	}
	
	.busDataWp .busDataInr{
		padding-bottom:  30px;
	}	
	
	.busDataWp .busDataInr .box{
		padding-top: 20px;
	}
	
	.busDataInr .pic{
		padding-bottom: 15px;
		
	}
	.busDataWp .busDataInr .box h2{
		padding-bottom: 10px;
	}
	
	.busDataWp .busDataInr .box .number{
		position: relative;
	}
	
	.busDataWp .busDataInr .box .number:before {
		font-family: 'Oswald', sans-serif;
		position: absolute;
		top: -25px;
		left: 0px;
		margin: 0;
		vertical-align: middle;
		width: 20px;
		font-weight: 200;
	}
	
	.busDataWp .busDataInr .box .no1:before {
		content: "01";
	}
	
	.busDataWp .busDataInr .box .no2:before {
		content: "02";
	}
	
	.busDataWp .busDataInr .box .no3:before {
		content: "03";
	}
	
	.busDataWp .busDataInr img{
		width: 100%;
		
	}	
	
	.caseData{
		padding: 0 20px 30px;
		background-color: #FFF;
	}
	.caseDataWp{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		
	}
	
	.caseDataWp .caseDataInr{
		padding: 20px;
		background-color: #898989;
		
	}
	
	.caseDataWp .caseDataInr:nth-child(odd){
		background: #949595;
	}
	
	.caseDataWp .caseDataTl{
		padding: 0 0 0 0 ;
		
	}
	
	.caseDataWp .caseDataName{
		display: inline-block;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		text-align: center;
		padding: 3px 20px;
		background-color: #FFF;
		
	}
	
	.caseDataWp .caseDataCm{
		padding: 20px 0 0 0;
		color: #FFF;
		
	}
	.page-12 {
		margin: 0 auto 0;
		padding: 20px 20px 0 20px ;
		z-index: 1;
	}
	.page-13 {
		margin: 0 auto 0;
		padding: 0 20px 30px 20px ;
		z-index: 1;
	}
	.page-12 .title_scd{
		padding: 0 0 30px 0;
		background: none;
	}
	
	.caseLtWp{
		padding-bottom: 20px;
	}
	.caseLtWp:last-child{
	}
	.caseLtWp .caseLtInr{
	}
	.caseLtWp .caseLtTl{
		
	}
	
	.caseLtWp .caseLtTl span{
		position: relative;
	}
	
	.caseLtWp .caseLtTl span:before
	{
		position: absolute;
		bottom: -3px;
		right: -20px;
		content: '\FF1A';
		text-align: center;
	}
	
	.caseLtWp .caseLtDt{
		
	}
	.caseLtWp .caseLtDt ul{
		padding-top: 10px;
	}
	
	.caseLtWp .caseLtDt ul li{
		display: inline-block;
		background-color: #898989;
		color: #FFF;
		border-radius: 20px;
		content: "";
		padding: 3px 25px;
		margin:  0 5px 10px 0;
	}
	
	.caseLtWp .caseLtDt ul li.op{
		opacity: .3;
	}
	
	.flow{
		width: 100%;
		position: relative;
		display: inline-block;
		background-color: #FFF;
	    z-index: -2;
		padding-bottom: 30px;
	}
	
	.brTp{
		border-top: 1px solid #dfdfdf;
	}
	
	.flow::before {
		content: '';
		display: block;
		width: 1px;
		height: 90%;
		position: absolute;
		margin: auto;
		background-color: #dfdfdf;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: -1;
	}
	
	.flow ol{
		padding: 0 20px;
	}
	
	.flow li{
		display: flex;
		border: 1px solid #dfdfdf;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		margin-bottom: 30px;
	}
	
	.flow li .mTx{
		padding: 15px 0;
		background-color: #FFF;
		flex: 1;
		
	}
	.flow li span{
		display: block;
		text-align: center;
		
	}
	.flow li .Len{
		background-color: #efefef;
		padding: 15px;
		
	}
	.flow li:before {
		/*content: counter(table-ol) ".";
		display: table-cell;*/
	}
	.flow li:last-child {
		margin-bottom: 0px;
	}
	
	.caseData.pt0{
		padding-top: 0px;
		
	}
	
	.prodData.caseVer{
		margin: 0 0;
		padding-top: 0px;
		background-color: #FFF;
		
	}
	
	.prodData{
		width: 100%;
		padding: 30px 0;
		position: relative;
		overflow: hidden;
	}
	.prodData .mask::after{
		display: block;
    	content: "";
		position: absolute;
		top:0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #949595;
	}
	.prodDataWp{
		padding: 0 30px;
		max-width: 75%;
		margin: 0 auto;
		
	}
	
	.prodDataWp .prodDataInr{
		
	}
	
	.prodData .slick-prev {
		left: -40px;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		font-size: 0;
		line-height: 0;
		position: absolute;
		top: 50%;
		display: block;
		width: 20px;
		height: 20px;
		padding: 0;
		-webkit-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
		cursor: pointer;
		color: transparent;
		border: none;
		outline: none;
		background: transparent;
	}
	
	.prodData .slick-next {
		right: -40px;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		line-height: 1;
		opacity: .75;
		color: white;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		color: #000;
		width: 30px;
		height: 30px;
	}
	.prodData .slick-prev {
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw4.png);
	}
	
	.prodData.caseVer .slick-prev {
		background-image: url(../images/arw4_b.png);
	}
	
	.prodData .slick-next {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw5.png);
	}
	
	.prodData.caseVer .slick-next {
		background-image: url(../images/arw5_b.png);
	}
	
	.prodData .slick-list,.prodData .imgAea{
		padding: 0;
	}
	
	.prodData .mask {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		z-index: -1;
	}
	.prodData .bgTxt.bgTxt01 {
		position: absolute;
		left: -6%;
		bottom: -7%;
	}
	
	/*▲▲▲▲▲▲▲▲▲▲▲▲20200406SP*/

}

@media only screen and (min-width: 768px){
	.arw2::after {
		display: block;
		position: absolute;
		content: "";
		right: 9px;
		bottom: -48px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #FFF;
		transform: rotate(135deg);
	}

	.arw2::before {
		display: block;
		position: absolute;
		content: "";
		right: 14px;
		bottom: -50px;
		width: 1px;
		height: 30px;
		background: #FFF;
	}
	.selectbox{
		position:relative;
	}
	.selectbox::after{
		position: absolute;
		top: 35%;
		right: 3%;
		margin-top: -8px;
		content: "▼";
		color: #333;
		pointer-events: none;
	}
 
	select{
		width: 100%;
		border: none;
		-webkit-appearance:none;
	}

	#right_link {
		right: 3%;
		top: 50%;
	}
	.vertical {
		writing-mode: vertical-lr;
		position: absolute;
	}
	.page-1{
		padding:  40px 20px;
		text-align: center;
	}
	#sp_menu .slicknav_collapsed a {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: 24px;
		background-image: url(../images/arw7.png);
	}
	#sp_menu .slicknav_open a {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: 24px;
		background-image: url(../images/arw8.png);
	}
	.slicknav_arrow {
		display: none;
	}
	
	.slicknav_nav li ul li a {
		background:none;
	}
	
	.slicknav_nav li ul li {
		background-color: #454545;
		border-bottom: 1px solid #606060;
	}
	.vertical_container{
		display:block;
	}
	.logo{
		position: absolute;
		top: 31px;
		left: 40px;
		width: 190px;
	}
	
	
	
	/*メニューボタンのエフェクト*/
	#panel-btn-icon,
	#panel-btn-icon span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box;
	}
	#panel-btn-icon {
	z-index: 20;
	position: absolute;
	right: 0;
	top: 0px;
	width: 60px;
	height: 60px;
	}
	#panel-btn-icon span {
	position: absolute;
	right: 0;
	left: 0;
	z-index: 9;
	width: 22px;
	height: 2px;
	margin: auto;
	background: #fff;
	}
	#panel-btn-icon span:nth-of-type(1) {
	top: calc(50% - 7px);
	}
	#panel-btn-icon span:nth-of-type(2) {
	top: 0;
	bottom: 0;
	}
	#panel-btn-icon span:nth-of-type(3) {
	bottom: calc(50% - 7px);
	}
	.slicknav_open #panel-btn-icon span:nth-of-type(1) {
	transform: translateY(6px) rotate(-45deg);

	}
	.slicknav_open #panel-btn-icon span:nth-of-type(2) {
	opacity: 0;
	}
	.slicknav_open #panel-btn-icon span:nth-of-type(3) {
	transform: translateY(-6px) rotate(45deg);
	}
	
	.slicknav_btn,.slicknav_open.slicknav_btn {
		background-color: #FFF;
	}
	
	#panel-btn-icon span {
		background: #898989;
	}
	
	
	
	
	
	
	
	
	.header {
		position: relative;
		width: 100%;
		height: 116px;
		top: 0;
		z-index: 2;
	}
	
	
	
	
	


	.header .top-head{
		position: relative;
		max-width: 1400px;
		height: 100%;
		margin: 0 auto;
		background-color: #fff;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));

	}

	.header .top-head .header-inner{
		position: relative;
		height: 100%;
		margin: 0 auto;

	}
	
	.slicknav_btn{
		position: absolute;
		top: 26px;
		right: 40px;
		
	}
	.l-index-kv__read {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		margin: auto;
		width: 600px;
	}

	.l-index-kv__read img{
		margin-top: 105px;
		width: 100%;
	}
	.slicknav_nav {
		position: absolute;
		width: 100%;
		top: 116px;
	}
	
	
	#sp_menu .slicknav_collapsed a,#sp_menu .slicknav_open a {
		background-size: 34px;
	}
	
	

	
	.innerWpContact{
		margin-top: 50px;
		width: 100%;
		position: relative;
		background-color: #FFF;
	}
	
	.inner{
		position: relative;
	}
	.innerWp .page-2::after {
		content: '';
		position: absolute;
		top: 0;
		right: 0%;
		width: 100%;
		height: 100%;
		background-color: #949595;
		z-index: -2;
	}
	.innerWp .page-4::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #949595;
		z-index: -2;
	}
	.businessWrap{
		display: flex;
		justify-content:space-between;
	}
	.businessWrap a{
		width: 24%;
	}
	
	.businessWrap .business-box{
    	position:relative;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));
		
	}
	.businessWrap .business-box .img{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessWrap .business-box img{
		width: 100%;
		vertical-align: bottom;
	}
	
	.businessWrap a:hover img {
		transform: scale(1.1);
	}

	.businessWrap .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	
	.businessWrap .business-box .title{
		position: absolute;
		width: 90%;
		bottom: -10px;
		left: 0;
		right: 0;
		/* height: 100%; */
		margin: 0 auto 0;
		padding: 0;
		background: #FFF;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.businessWrap .business-box .title .wrap{
		padding: 20px 10px;
	}
	
	.caseWrap{
	}
	.caseWrap a{
		display: block;
	}
	
	.caseWrap .case-box{
		display: flex;
		justify-content:space-between;
    	position:relative;
		align-items: center;
		
	}
	
	.caseWrap .case-box dl{
		display:flex;
		flex-wrap: wrap;
		padding-top: 20px;
		
	}
	
	.caseWrap .case-box dl dt{
		position: relative;
		width: 20%;
		box-sizing: border-box;
	}
	
	.caseWrap .case-box dl dt:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 1px;
		height: 50%;
		background-color: #b7b7b7;
	}
	
	.caseWrap .case-box dl dd{
		width: 80%;
		box-sizing: border-box;
	}
	
	.caseWrap .case-box .img{
		width: 50%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));
	}
	.caseWrap .case-box img{
		width: 100%;
		vertical-align: bottom;
	}
	
	.caseWrap a:hover img {
		transform: scale(1.1);
	}

	.caseWrap .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	
	.caseWrap .case-box .title{
		width: 50%;
	}
	
	.caseWrap .case-box .title .wrap{
		padding: 0 0 0 30px;
	}
	
	.caseWrap .case-box .title .wrap h2{
	}
	
	.caseWrap .case-box .title .wrap h3{
		padding: 30px 0;
	}
	
	.innerWp{
		width: 100%;
		position: relative;
	}
	
	.page-5{
		width: 100%;
		margin: 0 auto;
		padding:  50px 0 0 0;
	}
	
	.page-5 .content{
		padding:  0 30px;
	}
	
	.page-5 h2{
		padding-bottom: 30px;
	}
	
	.page-5 .Button{
		padding-top: 30px;
	}
	.page-5 .Button a{
		padding: 30px;
    	width: 250px;
		display: inline-block;
		background-color: #898989;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.page-5 .Button span{
		position: relative;
	    width: 100%;
    	display: block;
	}
	.page-5 .Button span::after {
		display: block;
		position: absolute;
		content: "";
		right: 3px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.page-5 .Button span::before {
		display: block;
		position: absolute;
		content: "";
		right: 0px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}

	.page-5 .access {
		border: 1px solid #dfdfdf;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		display: flex;
		flex-wrap: wrap;
		justify-content:space-between;
		text-align: left;
		margin-top: 50px;
		background-color: #FFF;
	}

	.page-5 .access .office {
		width: 33%;
		margin: 40px 0;
	}
	
	.page-5 .access .office-inr {
		padding: 0 10%;
	}
	
	.page-5 .access .office:last-child {
		border-left:1px solid #dfdfdf;
	}
	
	.page-5 .access .office:first-child{
		border-right:1px solid #dfdfdf;
	}

	.page-5 .access h2 {
		padding-bottom: 30px;
	}

	.page-5 .access .tel {
		display: block;	
	}

	.page-5 .access .number {
		padding-bottom: 10px;
		display: block;
	}

	.business-box h2{
		position: relative;
	}
	.business-box h2::after {
	}

	.business-box h2::before {
	}
	.alink{
		display: block;
		width: 100%;
	}
	
	.page-4{
		width: 100%;
		margin: 0 auto;
		padding:  50px 0;
	}
	
	.page-4 .content{
		padding: 0 30px;
	}
	
	.page-3{
		width: 100%;
		margin: 0 auto;
		padding:  50px 0;
	}
	
	.page-3 .content{
		padding: 0 30px;
	}
	
	.newsWrap{
		display: flex;
		align-items: center;
	}
	
	.newsWrap .title{
		padding: 0 50px 0 20px;
		flex: 1;
	}
	
	.position3 .newsWrap .newsList{
		width: 70%;
	}
	
	    
	
	.newsWrap .newsList .news{
		border-bottom:  1px solid #dfdfdf;
		padding: 30px 0;
	}	
	
	.newsWrap .newsList .news:first-child{
		padding-top: 0px;
	}
	
	.newsWrap .newsList .notice-info{
		padding-bottom: 10px;
		
	}
	
	.newsWrap .newsList .td-date{
		margin-right: 10px;
	}
	
	.newsWrap .newsList .genle_02{
		background-color: #d80e0e;
		padding: 3px 15px;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.newsWrap .newsList .genle_01{
		background-color: #898989;
		padding: 3px 15px;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.newsWrap .allView,.Mapbtn{
		position: relative;
		margin-top: 30px;
		display: inline-block;
		
	}
	
	.newsWrap .allView::after,.Mapbtn::after {
		display: block;
		position: absolute;
		content: "";
		right: -47px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.newsWrap .allView::before,.Mapbtn::before {
		display: block;
		position: absolute;
		content: "";
		right: -50px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}
	
	.page-2{
		width: 100%;
		margin: 0 auto;
		padding:  50px 0;
	}
	.brn {
		display: none;
	}
	.page-2 .content{
		padding:  0 30px;
	}
	
	.innerWp .page-2 .mask{
		content: '';
		position: absolute;
		top: 0;
		right: 0%;
		width: 100%;
		height: 100%;
		overflow: hidden;
    	z-index: -1;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.innerWp .page-4 .mask {
		content: '';
		position: absolute;
		top: 0;
		left: 0%;
		width: 100%;
		height: 100%;
		overflow: hidden;
    	z-index: -1;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.innerWp .bgTxt {
		z-index: 2;
	}

	.innerWp .page-2 .bgTxt.bgTxt01 {
		position: absolute;
		left: 6%;
    	bottom: -7%;
	}

	.innerWp .page-4 .bgTxt.bgTxt01 {
		position: absolute;
		right: 6%;
		bottom: -7%;
	}
	
	.page-1{
		margin: 0 auto;
		padding:  50px 30px;
	}

	
	.footer{
		background-color: #898989;
		
	}
	
	.footer .footer-inr{
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 auto;
		padding: 50px 30px;
	}
	
	.footer .footer-inr .list ul{
		display: flex;
		
	}
	
	.footer .footer-inr .list li{
		display: inline-block;
		padding-right: 30px;
		
	}
	.f-grid{
		width: 100%;
		background-color: #FFF;
	}
	.f-grid ul{
		display: flex;
		margin: 0 auto 0;
		padding: 50px 30px 50px 30px;
	}
	.f-grid li{
		margin-right: 45px;
	}
	.f-grid li .iMlg{
		display: block;
	}
	
	.page-2 .wrap .enCt,.page-7 .wrap .enCt{
		display: none;
	}
	
	#kv-visual-snd .kv_bg {
		width: 100%;
		height: 400px;
		background-size: cover;
		background-position: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#kv-visual-snd .kv_bg.caseBg {
		background-image: url(../images/caseBg.jpg);
	}
	#kv-visual-snd .kv_bg.companyBg {
		background-image: url(../images/companyBg.jpg);
	}
	#kv-visual-snd .kv_bg.otherBg {
		background-image: url(../images/otherBg.jpg);
	}
	#kv-visual-snd .kv_bg.newsBg {
		background-image: url(../images/newsBg.jpg);
	}
	#kv-visual-snd .kv_bg.contactBg {
		background-image: url(../images/contactBg.jpg);
	}
	#kv-visual-snd .kv_bg.recruitBg {
		background-image: url(../images/recruitBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessVrBg {
		background-image: url(../images/businessVrBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessCgBg {
		background-image: url(../images/businessCgBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessCadBg {
		background-image: url(../images/businessCadBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessMedicalBg {
		background-image: url(../images/businessMedicalBg.jpg);
	}
	#kv-visual-snd .kv_bg.productsBg {
		background-image: url(../images/productsBg.jpg);
	}
	.kv_bg .kv-v-txt {
		padding: 0 0 50px 0;
		text-align: center;
	}
	.page-6 {
		padding: 50px 0 0 0;
		z-index: 1;
	}
	.page-6.wit {
		background-color: #FFF;
	}
	.page-7 {
		padding: 50px 30px 0 30px;
		z-index: 1;
	}
	.page-8 {
		padding: 0 30px;
		z-index: 1;
	}
	.page-10 {
		margin: 50px auto 0;
		padding: 50px 0 0 0;
		z-index: 1;
	}
	.page-11 {
		margin: 0 auto;
		padding: 50px 0;
		z-index: 1;
	}
	
	.dlBoxWp {
		display: flex;
		position: relative;
		margin: 0 auto;
		text-align: left;
		padding: 0 30px;
	}
	
	.txR{
		display: block;
		text-align:  right;
		padding-top: 30px;
	}
	
	.txR2{
		display: block;
		text-align:  right;
		padding-top: 20px;
	}

	.dlBoxWp .dlBox.rgt {
		width: 50%;
		margin-right: 25px;
	}

	.dlBoxWp .dlBox.lft {
		width: 50%;
		margin-left: 10px;
	}
	
	.imgAea{
		padding: 0 0 50px 0;
	}
	
	.imgAea img{
		width: 100%;
	}
	
	.dlBoxWp .dlBox dl {
		border-bottom: 1px #dfdfdf solid;
		padding-top: 30px;
		padding-bottom: 30px;
		margin: 0;
		display: table;
		width: 100%;
	}
	.dlBoxWp .dlBox dl dt {
		vertical-align: top;
		display: table-cell;
		width: 135px;
		margin: 0;
		padding: 0;
	}
	.dlBoxWp .dlBox dl dd {
		vertical-align: top;
		display: table-cell;
		margin: 0;
		padding: 0;
	}
	
	.tlMt{
		margin-top: 25px;
	}
	.title_scd{
		padding: 0 30px 50px;
		text-align: center;
		
	}
	
	.title_scd .tl{
		padding-bottom: 10px;
	}
	
	
	
	.orgWp{
		width: 100%;
		display: table;
		padding: 0;
		
	}
	
	.orgWp .orgBox{
		display:table-cell;
    	vertical-align: top;
	}
	
	.orgWp .orgBox.Lft{
		width: 100%;
		position: relative;
	}
	
	.orgWp .orgBox.rgt{
		padding-top: 192px;
		position: relative;
	}
	
	.orgWp .orgBox.Lft::before {
		content: '';
		display: block;
		width: 100%;
		height: 434px;
		bottom: 28px;
		left: 112px;
		position: absolute;
		margin: auto;
		border-top: 1px #dfdfdf solid;
		border-left: 1px #dfdfdf solid;
		border-bottom: 1px #dfdfdf solid;
	}
	.orgWp .orgBox.Lft::after {
		content: '';
		display: block;
		width: 1px;
		height: 195px;
		top: 58px;
		left: 112px;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
	}
	
	.orgWp .orgBox.rgt::before {
		content: '';
		display: block;
		width: 1px;
		height: 349px;
		bottom: 116px;
		left: -49%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
	}
	
	.orgBox .org {
		display: block;
		width: 170px;
		text-align: center;
		padding: 15px 0;
		background-color: #FFF;
		border: 1px #dfdfdf solid;
		position: relative;
	}
	
	.orgWp .org.org1{
		width: 220px;
	}
	
	.orgWp .org2{
		margin-top: 56px;
		margin-left:  30%;
	}
	
	.orgWp .org3{
		margin-top: 56px;
		margin-left:  50%;
	}
	.orgWp .org3::before {
		content: '';
		display: block;
		width: 1px;
		height: 141px;
		bottom: 0;
		left: 50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		z-index: -1;
	}	
	
	.orgWp .org4{
		margin-top: 261px;
		margin-left:  30%;
	}
	
	.orgWp .org11{
		margin-top:  50px;
		margin-left: 50%;
	}
	.orgWp .org11::before {
		content: '';
		display: block;
		width: 1px;
		height: 153px;
		top: 0;
		left: 50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		z-index: -1;
	}	
	
	.orgWp .org5{
		margin-top: 28px;
		
	}
	.orgWp .org5::before {
		content: '';
		display: block;
		width: 50%;
		height: 1px;
		top: 0;
		bottom:0;
		left: -50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org6{
		margin-top: 28px;
		
	}
	.orgWp .org6::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org7{
		margin-top: 28px;
		
	}
	.orgWp .org7::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org8{
		margin-top: 28px;
		
	}
	.orgWp .org8::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org9{
		margin-top: 28px;
		
	}
	.orgWp .org9::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org10{
		margin-top: 28px;
		
	}
	.timelineWrap {
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.timelineWrap:before {
		content: "";
		position: absolute;
		left: 49.8%;
		bottom: 0;
		top: 0;
		width: 1px;
		height: 100%;
		border-right: 1px solid #dfdfdf;
		z-index: -1;
	}
	.timeline {
		width: 100%;
	}
	.timeline .year {
		text-align: center;
		padding: 35px 0;
		margin-bottom: 35px;
		background-color: #f6f6f6;
	}
	.timeline .detail {
		position: relative;
		margin: 0 auto 50px 50%;
	}
	.timeline .month {
		float: left;
		min-width: 22px;
		text-align: center;
		padding: 0 23px 0 40px;
	}
	.timeline .detail.hisL {
		margin: 0 50% 50px 0;
		text-align: right;
		position: relative;
	}
	.hisL .month {
		float: right;
		padding: 0 40px 0 23px;
	}
	.timeline .month+p {
		overflow: hidden;
	}
	.timeline .detail.hisL:after {
		content: "";
		position: absolute;
		right: -9px;
		left: auto;
		top: 6px;
		width: 10px;
		height: 10px;
		border: 5px solid #898989;
		background-color: #f6f6f6;
		border-radius: 50%;
	}
	.timeline .detail:after {
		content: "";
		position: absolute;
		left: -11px;
		top: 6px;
		width: 10px;
		height: 10px;
		border: 5px solid #898989;
		background-color: #f6f6f6;
		border-radius: 50%;
	}
	.msg {
		padding-top: 50px;
		width: 100%;
		text-align: center;
	}
	.msg h2 {
		padding-bottom: 20px;
	}
	
	.acmapWrap{
		
	}
	
	.acmapWrap .acmapBox{
		display: flex;
		flex-wrap: wrap;
		justify-content:space-between;
		padding-top: 50px;
		
	}
	
	.acmapWrap .map{
		width: 47.5%;
		
	}
	
	.acmapWrap .map .mapInr{
		padding: 10px;
		background-color: #FFF;
		
	}
	
	.acmapWrap .data{
		width: 47.5%;
		
	}
	
	.acmapBox.rev{
		flex-flow: row-reverse;
		
	}
	.data h2{
		width: 100%;
		padding-bottom: 30px;
		margin-bottom: 30px;
		border-bottom: 1px #dfdfdf solid;
	}
	
	.linkWp{
		width: 100%;
	}
	.linkWp li a{
		color: #FFF;
		display: block;
		width: 100%;
		padding: 70px 0;
		text-align: center;
	}
	.linkWp li{
		position: relative;
		margin-bottom: 1px;
    	background-color: #898989;
	}
	
	.linkWp li:first-child{
		border-radius: 3px 3px 0 0 / 3px 3px 0 0;
	}
	
	.linkWp li:last-child{
		border-radius: 0 0 3px 3px / 0 0 3px 3px;
	}
	.linkWp li:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
	}
	.linkWp li:before {
		right: 70px;
		width: 8px;
		height: 8px;
		border-top: 1px solid #FFF;
		border-right: 1px solid #FFF;
		transform: rotate(45deg);
	}
	.mod-ol > li {
		display: table-row;
		counter-increment: table-ol;
	}
	.mod-ol > li:before {
		content: counter(table-ol) ".";
		display: table-cell;
		padding-right: 10px;
	}
	.ohBx{
		padding-top: 70px;
	}
	.mod-ul {
		display: table;
		border-collapse: separate;
		border-spacing: 0 .6em;
	}
	.mod-ul > li {
    	display: table-row;
	}
	.mod-ul > li:before {
		content: "\2022";
		display: table-cell;
		padding-right: 10px;
	}
	.txt-blank .Mapbtn{
		margin-top: 10px;
	}
	
	.fmWrap{
		margin: 50px 0;
	}
	
	.fmWrap dl {
		width: 100%;
		display: table;
		border-top: 1px solid #dfdfdf;
		padding: 0;
		margin: 0;
	}
	.fmWrap dl dt {
		display: table-cell;
		width: 25%;
		padding: 8px 0;
		vertical-align: middle;
	}
	.fmWrap dl .typ1 {
		display: table-cell;
		width: 50%;
		vertical-align: middle;
		padding: 8px 0;
		margin: 0;
	}
	.fmWrap dl .typ2 {
		display: table-cell;
		width: 25%;
		vertical-align: middle;
		padding: 8px 0 8px 15px;
		margin: 0;
	}
	.fmWrap dl .typ3 {
		display: table-cell;
		width: 75%;
		padding: 8px 0;
		vertical-align: middle;
	}
	.fmWrap dl dt .wps5 {
		width: 100%;
		display: table;
		border-collapse: separate;
		border-spacing: 20px 0;
	}
	.fmWrap dl dt .left {
		width: 80%;
		display: table-cell;
		vertical-align: middle;
	}
	.fmWrap dl dt .right {
		width: 22%;
		display: table-cell;
		vertical-align: middle;
	}
	.fmWrap dl select {
		border: 0;
		padding: 15px;
		margin: 15px 0;
		background-color: #FFF;
	}
	.fmWrap dl input[type=text] {
		border: 0;
		padding: 15px;
		margin: 15px 0;
		background-color: #FFF;
		width: 93%;
	}
	.fmWrap dl textarea {
		border: 0;
		padding: 15px;
		margin: 15px 0;
		background-color: #FFF;
		width: 62%;
	}
	
	.btnWp .button {
		width: 100%;
		max-width: 550px;
		margin: 0 auto;
		display: block;
		padding: 25px;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
	}
	.tp1{
		background-color: #898989;
	}
	.btnWp input[type="button"][disabled] {
		background-color: #d6d6d6;
	}
	
	.fmWrap dl.lstTd{
		padding-bottom: 20px;
    	border-bottom: 1px solid #dfdfdf;
		
	}
	
	.btnWp{
		margin-top: 50px;
		position: relative;
	}
	.disabledBtn.on{
		display: none;
	}
	.disabledBtn {
		width: 100%;
		max-width: 550px;
		display: block;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
		padding: 21px 0 20px ;
		background-color: #d6d6d6;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		margin: auto;
		z-index: 2;
	}
	.step{
		display: flex;
		justify-content: center;
		align-items: center;
		margin-top: 35px;
	}
	.step li{
		position: relative;
		padding: 0 30px;
	}
	.step li::after {
		display: block;
		position: absolute;
		content: "";
		left: -10px;
		top: 21px;
		width: 18px;
		height: 1px;
		transform: rotate(-60deg);
		background-color: #dfdfdf;
	}
	.step li:first-child::after {
		display: none;
	}
	
	.step li.st{
		color: #dfdfdf;

		
	}
	.ft_red,.fRed{
		color: #d80e0e;
	}
	
	.atBx{
		padding: 20px;
		height: 300px;
		background-color: #FFF;
		overflow-y: scroll;
    	margin-top: 25px;
		margin-bottom: 20px;
		width: 61%;
	}
	
	.btn3vr{
		width: 100%;
		max-width: 550px;
		margin: 70px auto;
		display: block;
		padding: 25px;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
		background-color: #898989;
		color: #FFF;
	}
	
	.linkBk{
		
	}
	
	.error{
		padding: 35px;
		margin-top: 35px;
    	border: 1px solid #dfdfdf;
	}
	.fmWrap .txt{
		padding-top: 35px;	
	}
	.linkTx1{
		padding-top: 35px;
	}
	
	.ckBx2{
		padding-top: 35px;
    	border-bottom: 1px solid #dfdfdf;
	}
	
	.ckBx2 .wps5{
		padding:  15px 0;
		
	}
	.businessList{
		display: flex;
    	justify-content: space-between;
	}
	.businessList a {
		width: 23%;
	}
	.businessList .title {
		width: 100%;
		margin: 0 auto 0;
		padding: 0;
		background: #FFF;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessList .title .wrap {
		padding: 25px 10px 25px 10px;
	}
	
	.JobBxWrap{
		padding: 0 30px;
	}
	
	.entryBtn{
		width: 100%;
		margin: 30px auto 0;
		display: block;
		padding: 30px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: none;
		transition: all .3s;
		background-color: #898989;
		color: #FFF;
	}
	
	.Jobtxt{
		/*display: none;*/
		padding: 35px 0 0 0;
	}
	
	.JobBtn{
		width: 100%;
		margin: 10px auto 0;
		display: block;
		padding: 50px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: none;
		transition: all .3s;
		background-color: #FFF;
		position: relative;
	}
	
	.JobBtn::before, .JobBtn::after {
		position: absolute;
		top: 50%;
		right: 5%;
		transform: translateY(-50%) translateX(0);
		margin: auto;
		content: '';
		display: inline-block;
		width: 13px;
		height: 1px;
		background-color: #898989;
	}
	
	.JobBtn::after {
		transform: rotate(90deg);
	}
	.JobBtn.active::before {
		background-color: #FFF;
	}
	.JobBtn.active::after {
		display: none;
	}
	
	.JobBtn.active{
		background-color: #898989;
		color: #FFF;
	}
	.data h2{
		display:block;
	}
	.map h2{
		display: none;
	}
	.f-grid{
		width: 100%;
		background-color: #FFF;
	}
	.f-grid ul{
		display: flex;
		padding: 30px;
	}
	.f-grid li{
		margin-right: 45px;
	}
	.f-grid li .iMlg{
		display: block;
	}
	
	/*▼▼▼▼▼▼▼▼20200406*/
	.movieWrp{
		padding: 0 50px 0;
		background-color: #FFF;
		text-align: center;
	
	}
	.movieInr{
		position: relative;
		width: 80%;
		margin: 0 auto 50px;
		padding-top: 56.25%;
		display: inline-block;}

	.movieInr iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
	.swipeboxWrap{
		border: 1px solid #dfdfdf;
		display: inline-block;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		background-color: #FFF;
		margin: 0 30px;
		text-align: center;
	}
	.swipeboxWrap.last{
		margin-bottom: 50px;
		
	}
	.swipeboxInr{
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		background-color: #FFF;
	}
	
	.swipeboxInr a{
		display: block;
		padding: 20px;
		position: relative;
	}
	
	.swipeboxInr a:before {
		position: absolute;
		bottom: 0;
		right: 0;
		margin: auto;
		content: "";
		width: 50px;
		height: 50px;
		background-image: url(../images/arw6.png);
		background-color: #898989;
		background-position: center;
		background-size: 17px;
    	background-repeat: no-repeat;
		transition: all 0.4s ease-out;
	}
	
	.swipeboxInr a:hover:before {
		background-color: #949595;
	}
	
	.swipeboxWrap .swipeboxInr img{
		margin: 0 auto;
		max-width: 80%;
		
	}
	
	.swipebox-html body:not(.touchdevice) *{cursor: auto;}

	.busData{
		padding: 0 30px 50px 30px;
	}
	.busDataWp{
		width: 100%;
		display: flex;
		justify-content:space-between;
	    flex-wrap: wrap;
		
	}
	
	.busDataWp .busDataInr{
		width: 32%;
	}	
	
	.busDataWp .busDataInr .box{
		padding-top: 50px;
	}
	
	.busDataWp .busDataInr .box h2{
		padding-bottom: 10px;
	}
	
	.busDataWp .busDataInr .box .number{
		position: relative;
	}
	
	.busDataWp .busDataInr .box .number:before {
		font-family: 'Oswald', sans-serif;
		position: absolute;
		top: -28px;
		left: 0px;
		margin: 0;
		vertical-align: middle;
		width: 20px;
		font-weight: 200;
	}
	
	.busDataWp .busDataInr .box .no1:before {
		content: "01";
	}
	
	.busDataWp .busDataInr .box .no2:before {
		content: "02";
	}
	
	.busDataWp .busDataInr .box .no3:before {
		content: "03";
	}
	.busDataWp .busDataInr .box .no4:before {
		content: "04";
	}
	.busDataWp .busDataInr .box .no5:before {
		content: "05";
	}
	.busDataWp .busDataInr .box .no6:before {
		content: "06";
	}
	
	.busDataWp .busDataInr img{
		width: 100%;
		
	}	
	
	.caseData{
		padding: 50px 30px ;
	}
	.caseDataWp{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		
	}
	
	.caseDataWp .caseDataInr{
		background-color: #898989;
		
	}
	
	.caseDataWp .caseDataInr:nth-child(odd){
		background: #949595;
	}
	
	.caseDataWp .caseDataTl{
		padding: 30px 30px 0 30px;
		
	}
	
	.caseDataWp .caseDataName{
		display: inline-block;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		text-align: center;
		padding: 5px 30px;;
		background-color: #FFF;
		
	}
	
	.caseDataWp .caseDataCm{
		padding: 15px 30px 30px 30px;
		color: #FFF;
		
	}
	.page-12 {
		margin: 0 auto;
		padding: 50px 0 0 0;
		z-index: 1;
	}
	
	.caseLtWp{
		padding-bottom: 30px;
	}
	.caseLtWp:last-child{
		padding-bottom: 0px;
	}
	.caseLtWp .caseLtInr{
	}
	.caseLtWp .caseLtTl{
		margin-bottom: 10px;
		
	}
	
	.caseLtWp .caseLtTl span{
		position: relative;
	}
	
	.caseLtWp .caseLtTl span:before
	{
    position: absolute;
    bottom: -5px;
    right: -20px;
    content: '\FF1A';
    text-align: center;
}
	
	.caseLtWp .caseLtDt{
		
	}
	.caseLtWp .caseLtDt ul{
	}
	
	.caseLtWp .caseLtDt ul li{
		display: inline-block;
		background-color: #898989;
		color: #FFF;
		border-radius: 20px;
		content: "";
		padding: 3px 25px;
		margin:  0 5px 10px 0;
	}
	
	.caseLtWp .caseLtDt ul li.op{
		opacity: .3;
	}
	
	.flow{
		width: 100%;
		position: relative;
		margin-bottom: 50px;
		display: inline-block;
	}
	
	.flow ol::before {
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		position: absolute;
		margin: auto;
		background-color: #dfdfdf;
		top: 50%;
		left: 0%;
		transform: translateY(-50%);
		z-index: -1;
	}
	
	.flow ol{
		margin: 0 30px;
		display: flex;
		justify-content:space-between;
		align-items: center;
		position: relative;
	}
	
	.flow li{
		/*width: 12.5%;*/
		border: 1px solid #dfdfdf;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		/*position: relative;
		display: table-row;
		counter-increment: table-ol;*/
	}
	
	.flow li .mTx{
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		padding: 0 20px;
		height: 230px;
		background-color: #FFF;
		
	}
	.flow li span{
		display: block;
		text-align: center;
		
	}
	.flow li .Len{
		background-color: #efefef;
		padding: 20px 20px;
		
	}
	.flow li:before {
		/*content: counter(table-ol) ".";
		display: table-cell;*/
	}
	
	.caseData.pt0{
		padding-top: 0px;
		
	}
	
	.prodData.caseVer{
		margin: 0 30px;
		width: auto;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: 1px solid #dfdfdf;
		background-color: #FFF;
		
	}
	
	.prodData{
		width: 100%;
		padding: 50px 0;
		position: relative;
		overflow: hidden;
	}
	.prodData .mask::after{
		display: block;
    	content: "";
		position: absolute;
		top:0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #949595;
	}
	.prodDataWp{
		padding: 0 50px;
		max-width: 85%;
		margin: 0 auto;
		
	}
	
	.prodDataWp .prodDataInr{
		
	}
	
	.prodData .slick-prev {
		left: -50px;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		font-size: 0;
		line-height: 0;
		position: absolute;
		top: 50%;
		display: block;
		width: 20px;
		height: 20px;
		padding: 0;
		-webkit-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
		cursor: pointer;
		color: transparent;
		border: none;
		outline: none;
		background: transparent;
	}
	
	.prodData .slick-next {
		right: -50px;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		line-height: 1;
		opacity: .75;
		color: white;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		color: #000;
		width: 35px;
		height: 35px;
	}
	.prodData .slick-prev {
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw4.png);
	}
	
	.prodData.caseVer .slick-prev {
		background-image: url(../images/arw4_b.png);
	}
	
	.prodData .slick-next {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw5.png);
	}
	
	.prodData.caseVer .slick-next {
		background-image: url(../images/arw5_b.png);
	}
	
	.prodData .slick-list,.prodData .imgAea{
		padding: 0;
	}
	
	.prodData .mask {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		z-index: -1;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.prodData .bgTxt.bgTxt01 {
		position: absolute;
		left: -6%;
		bottom: -7%;
	}
	
	/*▲▲▲▲▲▲▲▲▲▲▲▲20200406*/
	
	
	
	/*▼▼▼▼▼▼▼▼▼▼▼▼20200417*/

	
	.page-21 {
		margin: 0 auto 0;
		padding: 50px 0 0 0;
		z-index: 1;
	}
	
	.nextWp{
		display: flex;
		justify-content: space-between;
		
	}
	
	.nextWp .nextInr{
		width: 48.5%;
		position: relative;
		background-color: #FFF;
		
	}
	
	.nextWp .nextInr.left{
		
	}
	
	.nextWp .nextInr.right{
		text-align: right;
		
	}
	
	.nextWp .nextInr a{
		display: block;
		position: relative;
		border-radius: 3px 3px 3px 3px;
		
	}
	
	.nextWp .nextInr.left a{
		padding: 50px 30px 50px 60px;
		
	}
	
	.nextWp .nextInr.right a{
		padding: 50px 60px 50px 30px;
	}
	
	.nextWp .nextInr{
		position: relative;
		
	}
	
	.page-20 {
		margin: 50px auto 0;
		padding: 50px 0;
		z-index: 1;
		background-color: #FFF;
	}
	.innerWp .page-20::after {
	}
	
	.nextAea{
		width: auto;
		padding: 0px 30px;
	}
	
	.nextAea .nextAeaInr{
		display: flex;
		border-left: 1px solid #dfdfdf;
		border-right: 1px solid #dfdfdf;
		border-bottom: 1px solid #dfdfdf;
		padding: 50px 30px;
		background-color: #FFF;
		align-items: center;
		
	}
	
	.nextAea .nextAeaInr:last-child{
		border-radius: 0px 0px 3px 3px;
	}
	.nextAea .nextAeaInr:first-child{
		border-radius: 3px 3px 0px 0px;
		border-top: 1px solid #dfdfdf;
	}
	
	.nextAea .nextAeaInr .img a{
		display: block;
		overflow: hidden;
		
	}
	
	.nextAea .nextAeaInr .img{
		width: 40%;
		overflow: hidden;
		
	}
	
	.nextAea .nextAeaInr .img a:hover img {
		transform: scale(1.1);
	}

	.nextAea .nextAeaInr .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.nextAea .nextAeaInr .data{
		width: 60%;
		
	}
	
	.nextAea .nextAeaInr .dataBx{
		padding-left: 50px;
		
	}
	.nextBx .imgAreas{
		margin-bottom: 30px;
		overflow: hidden;
		
	}
	
	.nextBx .txtAreas span{
		display: inline-block;
		background-color: #898989;
		color: #FFF;
		border-radius: 6px;
		content: "";
		padding: 0px 20px;
		margin: 0 0 20px 0;
	}
	
	.nextBx h4{
		padding-bottom: 20px;
	}
	.nextAea .nextAeaInr .data h4{
		padding-top: 25px;
		
	}
	
	.nextWp .nextInr.left .nextBx:after{
		content: "";
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		left: 20px;
		top: 50%;
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw4_b.png);
	}
	
	.nextWp .nextInr.right .nextBx:after{
		content: "";
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		right: 20px;
		top: 50%;
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw5_b.png);
	}

	.nextInr a img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.nextInr a:hover img {
		transform: scale(1.1);
	}
	
	
	/*▲▲▲▲▲▲▲▲▲▲▲▲20200417*/
	
	
}
@media only screen and (min-width: 1230px){
	
	.page-2 .wrap .enCt,.page-7 .wrap .enCt{
		display: block;
	}
	.page-2 .content,.page-3 .content,.page-4 .content,.page-5 .content{
		padding:  0 0;
	}
	.arw2::after {
		display: block;
		position: absolute;
		content: "";
		right: 9px;
		bottom: -48px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #FFF;
		transform: rotate(135deg);
	}

	.arw2::before {
		display: block;
		position: absolute;
		content: "";
		right: 14px;
		bottom: -50px;
		width: 1px;
		height: 30px;
		background: #FFF;
	}
	#right_link {
		right: 3%;
		top: 50%;
	}
	.vertical {
		writing-mode: vertical-lr;
		position: absolute;
	}
		#js-wrapper{
		overflow: hidden;
	}
	
	.langs{
		display: none;
	}
	.header {
		position: fixed;
		width: 100%;
		height: 116px;
		top: 0;
		z-index: 2;
	}
	.brn {
		display: block;
	}
	.header .top-head{
		width: calc(100% - 128px);
		border-radius: 0 0 3px 3px / 0 0 3px 3px;

	}
	.logo{
		position: relative;
		width: 190px;
		top:0;
		left: 0;
	}
	
	
	.header .top-head .header-inner{
		display:flex; 
		flex-wrap: wrap;
		position: relative;
		width: calc(100% - 128px);
		height: 100%;
		margin: 0 auto;
		align-items: center;  /* 子要素をflexboxにより中央に配置する */

	}
	#lang-menu {
		position: relative;
		display: inline-block;
		overflow: hidden;
	}

	#lang-menu a .jp {
		display: block;
		animation-name:menu-first-in;
		animation-duration: .6s;
		animation-timing-function: cubic-bezier(0.32, 0.95, 0.6, 1);
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
	}

	#lang-menu a:hover .jp{
		animation-name: menu-first-out;
		animation-duration: .6s;
		animation-timing-function: cubic-bezier(0.32, 0.95, 0.6, 1);
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
	}

	#lang-menu a .en {
		display: block;
		animation-name: menu-out;
		animation-duration: .6s;
		animation-timing-function: cubic-bezier(0.32, 0.95, 0.6, 1);
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
		position: absolute;
		top: 0;
		left: 50%;
		width: 100%;
		opacity: 1;
		transform: translateX(-50%);
		white-space: nowrap;
	}



	#lang-menu a:hover .en{
		animation-name: menu-in;
		animation-duration: .6s;
		animation-timing-function: cubic-bezier(0.32, 0.95, 0.6, 1);
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
		opacity: 1;
	}
	
	#lang-menu .lang{
		position: relative;
		overflow: hidden;
	}
	
	.innerWpContact{
		width: 100%;
		margin-top: 70px;
		position: relative;
		background-color: #FFF;
	}
	
	.inner{
		position: relative;
	}
	.innerWp .page-2::after {
		content: '';
		position: absolute;
		top: 0;
		right: 10%;
		width: 200%;
		height: 100%;
		background-color: #949595;
		z-index: -2;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.innerWp .page-4::after {
		content: '';
		position: absolute;
		top: 0;
		left: 10%;
		width: 200%;
		height: 100%;
		background-color: #949595;
		z-index: -2;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessWrap{
		display: flex;
		justify-content:space-between;
	}
	.businessWrap a{
		width: 24%;
	}
	
	.businessWrap .business-box{
    	position:relative;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));
		
	}
	.businessWrap .business-box .img{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessWrap .business-box img{
		width: 100%;
		vertical-align: bottom;
	}
	
	.businessWrap a:hover img {
		transform: scale(1.1);
	}

	.businessWrap .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	
	.businessWrap .business-box .title{
		position: absolute;
		width: 90%;
		bottom: -10px;
		left: 0;
		right: 0;
		/* height: 100%; */
		margin: 0 auto 0;
		padding: 0;
		background: #FFF;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.businessWrap .business-box .title .wrap{
		padding: 40px 30px;
	}
	
	.caseWrap{
	}
	.caseWrap a{
		display: block;
	}
	
	.caseWrap .case-box{
		display: flex;
		justify-content:space-between;
    	position:relative;
		align-items: center;
		
	}
	
	.caseWrap .case-box dl{
		display:flex;
		flex-wrap: wrap;
		padding-top: 20px;
		
	}
	
	.caseWrap .case-box dl dt{
		position: relative;
		width: 20%;
		box-sizing: border-box;
	}
	
	.caseWrap .case-box dl dt:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 1px;
		height: 50%;
		background-color: #b7b7b7;
	}
	
	.caseWrap .case-box dl dd{
		width: 80%;
		box-sizing: border-box;
	}
	
	.caseWrap .case-box .img{
		width: 50%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		filter: drop-shadow(0 0 2px rgba(0,0,0,0.2));
	}
	.caseWrap .case-box img{
		width: 100%;
		vertical-align: bottom;
	}
	
	.caseWrap a:hover img {
		transform: scale(1.1);
	}

	.caseWrap .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	
	.caseWrap .case-box .title{
		width: 50%;
	}
	
	.caseWrap .case-box .title .wrap{
		padding: 0 0 0 70px;
	}
	
	.caseWrap .case-box .title .wrap h2{
	}
	
	.caseWrap .case-box .title .wrap h3{
		padding: 30px 0;
	}
	
	.innerWp{
		width: 100%;
		position: relative;
	}
	
	.page-5{
		width: calc(100% - 128px);
	    max-width: 1400px;
		margin: 0 auto;
		padding:  70px 0 0 0;
	}
	
	.page-5 h2{
		padding-bottom: 30px;
	}
	
	.page-5 .Button{
		padding-top: 30px;
	}
	.page-5 .Button a{
		padding: 30px;
    	width: 250px;
		display: inline-block;
		background-color: #898989;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.page-5 .Button span{
		position: relative;
	    width: 100%;
    	display: block;
	}
	.page-5 .Button span::after {
		display: block;
		position: absolute;
		content: "";
		right: 3px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.page-5 .Button span::before {
		display: block;
		position: absolute;
		content: "";
		right: 0px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}

	.page-5 .Button a:hover span::before {
		animation-name: scl_pnr1;
		animation-duration: .8s;
	}

	.page-5 .access {
		border: 1px solid #dfdfdf;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		display: flex;
		flex-wrap: wrap;
		justify-content:space-between;
		text-align: left;
		margin-top: 70px;
		background-color: #FFF;
	}

	.page-5 .access .office {
		width: 33%;
		margin: 60px 0;
	}
	
	.page-5 .access .office-inr {
		padding: 0 15%;
	}
	
	.page-5 .access .office:last-child {
		border-left:1px solid #dfdfdf;
	}
	
	.page-5 .access .office:first-child{
		border-right:1px solid #dfdfdf;
	}

	.page-5 .access h2 {
		padding-bottom: 30px;
	}

	.page-5 .access .tel {
		display: block;	
	}

	.page-5 .access .number {
		padding-bottom: 10px;
		display: block;
	}

	.business-box h2{
		position: relative;
		padding-top: 10px;
	}
	.business-box h2::after {
		display: block;
		position: absolute;
		content: "";
		right: 3px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.business-box h2::before {
		display: block;
		position: absolute;
		content: "";
		right: 0px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}

	a:hover .business-box h2::before {
		animation-name: scl_pnr1;
		animation-duration: .8s;
	}

	
	.alink{
		display: block;
		width: 100%;
	}
	
	.page-4{
		width: calc(100% - 128px);
	    max-width: 1400px;
		margin: 0 auto;
		padding:  70px 0;
	}
	
	.page-3{
		width: calc(100% - 128px);
	    max-width: 1400px;
		margin: 0 auto;
		padding:  70px 0;
	}
	
	.newsWrap{
		display: flex;
		align-items: center;
	}
	
	.newsWrap .title{
		padding: 0 13%;
		flex: 1;
		min-width: 120px;
	}
	.newsList{
		width: 100%;
	}
	
	.newsWrap .newsList .news{
		border-bottom:  1px solid #dfdfdf;
		padding: 30px 0;
	}	
	
	.newsWrap .newsList .news:first-child{
		padding-top: 0px;
	}
	
	.newsWrap .newsList .notice-info{
		padding-bottom: 10px;
		
	}
	
	.newsWrap .newsList .td-date{
		margin-right: 10px;
	}
	
	.newsWrap .newsList .genle_02{
		background-color: #d80e0e;
		padding: 3px 15px;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.newsWrap .newsList .genle_01{
		background-color: #898989;
		padding: 3px 15px;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.newsWrap .allView,.Mapbtn{
		position: relative;
		margin-top: 30px;
		display: inline-block;
		
	}
	
	.newsWrap .allView::after,.Mapbtn::after {
		display: block;
		position: absolute;
		content: "";
		right: -47px;
		bottom: 3px;
		width: 11px;
		height: 11px;
		border-top: 1px solid #b9b9b9;
		transform: rotate(45deg);
	}

	.newsWrap .allView::before,.Mapbtn::before {
		display: block;
		position: absolute;
		content: "";
		right: -50px;
		bottom: 8px;
		width: 30px;
		height: 1px;
		background: #b9b9b9;
	}

	.newsWrap a:hover.allView::before,a:hover.Mapbtn::before {
		animation-name: scl_pnr1;
		animation-duration: .8s;
	}
	
	.page-2{
		width: calc(100% - 128px);
	    max-width: 1400px;
		margin: 0 auto;
		padding:  70px 0;
	}
	
	.innerWp .page-2 .mask{
		content: '';
		position: absolute;
		top: 0;
		right: 10%;
		width: 110%;
		height: 100%;
		overflow: hidden;
    	z-index: -1;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.innerWp .page-4 .mask {
		content: '';
		position: absolute;
		top: 0;
		left: 10%;
		width: 110%;
		height: 100%;
		overflow: hidden;
    	z-index: -1;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.innerWp .bgTxt {
		z-index: 2;
	}

	.innerWp .page-2 .bgTxt.bgTxt01 {
		position: absolute;
		left: 6%;
    	bottom: -7%;
	}

	.innerWp .page-4 .bgTxt.bgTxt01 {
		position: absolute;
		right: 6%;
		bottom: -7%;
	}
	
	.page-1{
		width: calc(100% - 128px);
	    max-width: 1400px;
		margin: 0 auto;
		padding:  70px 0;
	}

	
	.footer{
		background-color: #898989;
		
	}
	
	.footer .footer-inr{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto;
		padding: 70px 0;
	}
	
	.footer .footer-inr .list ul{
		display: flex;
		
	}
	
	.footer .footer-inr .list li{
		display: inline-block;
		padding-right: 30px;
		
	}
	
	
	
	#kv-visual-snd .kv_bg {
		width: 100%;
		height: 650px;
		background-size: cover;
		background-position: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#kv-visual-snd .kv_bg.caseBg {
		background-image: url(../images/caseBg.jpg);
	}
	#kv-visual-snd .kv_bg.companyBg {
		background-image: url(../images/companyBg.jpg);
	}
	#kv-visual-snd .kv_bg.otherBg {
		background-image: url(../images/otherBg.jpg);
	}
	#kv-visual-snd .kv_bg.newsBg {
		background-image: url(../images/newsBg.jpg);
	}
	#kv-visual-snd .kv_bg.contactBg {
		background-image: url(../images/contactBg.jpg);
	}
	#kv-visual-snd .kv_bg.recruitBg {
		background-image: url(../images/recruitBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessVrBg {
		background-image: url(../images/businessVrBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessCgBg {
		background-image: url(../images/businessCgBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessCadBg {
		background-image: url(../images/businessCadBg.jpg);
	}
	#kv-visual-snd .kv_bg.businessMedicalBg {
		background-image: url(../images/businessMedicalBg.jpg);
	}
	#kv-visual-snd .kv_bg.productsBg {
		background-image: url(../images/productsBg.jpg);
	}
	.kv_bg .kv-v-txt {
		padding: 0 0 70px 0;
	}
	.page-6 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: -160px auto 0;
		padding: 70px 0 0 0;
		z-index: 1;
	}
	.page-7 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto;
		padding: 70px 0 0 0;
		z-index: 1;
	}
	#en .page-7 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto;
		padding: 70px 0;
		z-index: 1;
	}
	#en .footer .footer-inr{
		justify-content: flex-end;
	}
	.page-8 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto;
		padding: 0 0 0 0;
		z-index: 1;
	}
	.page-10 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 70px auto 0;
		padding: 70px 0 0 0;
		z-index: 1;
	}
	.page-11 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto;
		padding: 70px 0;
		z-index: 1;
	}
	.page-13 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 70px auto 0;
		padding: 70px 0 0 0;
		z-index: 1;
	}
	
	.dlBoxWp {
		display: flex;
		position: relative;
		margin: 0 auto;
		text-align: left;
	}
	
	.txR{
		display: block;
		text-align:  right;
		padding-top: 50px;
	}
	
	.txR2{
		display: block;
		text-align:  right;
		padding-top: 20px;
	}

	.dlBoxWp .dlBox.rgt {
		width: 50%;
		margin-right: 25px;
	}

	.dlBoxWp .dlBox.lft {
		width: 50%;
		margin-left: 25px;
	}
	
	.imgAea{
		padding-bottom: 70px;
	}
	
	.imgAea img{
		width: 100%;
	}
	
	.dlBoxWp .dlBox dl {
		border-bottom: 1px #dfdfdf solid;
		padding-top: 30px;
		padding-bottom: 30px;
		margin: 0;
		display: table;
		width: 100%;
	}
	.dlBoxWp .dlBox dl dt {
		vertical-align: top;
		display: table-cell;
		width: 135px;
		margin: 0;
		padding: 0;
	}
	.dlBoxWp .dlBox dl dd {
		vertical-align: top;
		display: table-cell;
		margin: 0;
		padding: 0;
	}
	
	.tlMt{
		margin-top: 25px;
	}
	.title_scd{
		padding: 0 15% 70px;
		text-align: center;
		
	}
	
	.title_scd .tl{
		padding-bottom: 10px;
	}
	
	.innerWp .page-6::after {
		content: '';
		position: absolute;
		top: 0;
		right: 10%;
		width: 200%;
		height: 100%;
		background-color: #FFF;
		z-index: -2;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.innerWp .page-10::after {
		content: '';
		position: absolute;
		top: 0;
		right: 10%;
		width: 200%;
		height: 100%;
		background-color: #FFF;
		z-index: -2;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.innerWp .page-13::after {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background-color: #FFF;
		z-index: -2;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.orgWp{
		width: 100%;
		display: table;
		padding: 0;
		
	}
	
	.orgWp .orgBox{
		display:table-cell;
    	vertical-align: top;
	}
	
	.orgWp .orgBox.Lft{
		width: 100%;
		position: relative;
	}
	
	.orgWp .orgBox.rgt{
		padding-top: 202px;
		position: relative;
	}
	
	.orgWp .orgBox.Lft::before {
		content: '';
		display: block;
		width: 100%;
		height: 434px;
		bottom: 28px;
		left: 112px;
		position: absolute;
		margin: auto;
		border-top: 1px #dfdfdf solid;
		border-left: 1px #dfdfdf solid;
		border-bottom: 1px #dfdfdf solid;
	}
	.orgWp .orgBox.Lft::after {
		content: '';
		display: block;
		width: 1px;
		height: 206px;
		top: 58px;
		left: 112px;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
	}
	
	.orgWp .orgBox.rgt::before {
		content: '';
		display: block;
		width: 1px;
		height: 349px;
		bottom: 116px;
		left: -49%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
	}
	
	.orgBox .org {
		display: block;
		width: 190px;
		text-align: center;
		padding: 15px 20px;
		background-color: #FFF;
		border: 1px #dfdfdf solid;
		position: relative;
	}
	
	.orgWp .org2{
		margin-top: 66px;
		margin-left:  30%;
	}
	
	.orgWp .org3{
		margin-top: 56px;
		margin-left:  50%;
	}
	.orgWp .org3::before {
		content: '';
		display: block;
		width: 1px;
		height: 141px;
		bottom: 0;
		left: 50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		z-index: -1;
	}	
	
	.orgWp .org4{
		margin-top: 261px;
		margin-left:  30%;
	}	
	
	.orgWp .org11{
		margin-left: 50%;
	}
	.orgWp .org11::before {
		content: '';
		display: block;
		width: 1px;
		height: 153px;
		top: 0;
		left: 50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		z-index: -1;
	}	
	
	.orgWp .org5{
		margin-top: 28px;
		
	}
	.orgWp .org5::before {
		content: '';
		display: block;
		width: 50%;
		height: 1px;
		top: 0;
		bottom:0;
		left: -50%;
		position: absolute;
		margin: auto;
		border-left: 1px #dfdfdf solid;
		border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org6{
		margin-top: 28px;
		
	}
	.orgWp .org6::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org7{
		margin-top: 28px;
		
	}
	.orgWp .org7::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org8{
		margin-top: 28px;
		
	}
	.orgWp .org8::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org9{
		margin-top: 28px;
		
	}
	.orgWp .org9::before {
    content: '';
    display: block;
    width: 50%;
    height: 1px;
    top: 0;
	bottom:0;
    left: -50%;
    position: absolute;
	margin: auto;
	border-left: 1px #dfdfdf solid;
	border-bottom: 1px #dfdfdf solid;
	}	
	
	.orgWp .org10{
		margin-top: 28px;
		
	}
	.timelineWrap {
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.timelineWrap:before {
		content: "";
		position: absolute;
		left: 49.8%;
		bottom: 0;
		top: 0;
		width: 1px;
		height: 100%;
		border-right: 1px solid #dfdfdf;
		z-index: -1;
	}
	.timeline {
		width: 100%;
	}
	.timeline .year {
		text-align: center;
		padding: 35px 0;
		margin-bottom: 35px;
		background-color: #f6f6f6;
	}
	.timeline .detail {
		position: relative;
		margin: 0 auto 50px 50%;
	}
	.timeline .month {
		float: left;
		min-width: 22px;
		text-align: center;
		padding: 0 23px 0 40px;
	}
	.timeline .detail.hisL {
		margin: 0 50% 50px 0;
		text-align: right;
		position: relative;
	}
	.hisL .month {
		float: right;
		padding: 0 40px 0 23px;
	}
	.timeline .month+p {
		overflow: hidden;
	}
	.timeline .detail.hisL:after {
		content: "";
		position: absolute;
		right: -9px;
		left: auto;
		top: 6px;
		width: 10px;
		height: 10px;
		border: 5px solid #898989;
		background-color: #f6f6f6;
		border-radius: 50%;
	}
	.timeline .detail:after {
		content: "";
		position: absolute;
		left: -11px;
		top: 6px;
		width: 10px;
		height: 10px;
		border: 5px solid #898989;
		background-color: #f6f6f6;
		border-radius: 50%;
	}
	.msg {
		padding-top: 50px;
		width: 100%;
		text-align: center;
	}
	.msg h2 {
		padding-bottom: 20px;
	}
	
	.acmapWrap{
		
	}
	
	.acmapWrap .acmapBox{
		display: flex;
		flex-wrap: wrap;
		justify-content:space-between;
		padding-top: 70px;
		
	}
	
	.acmapWrap .map{
		width: 47.5%;
		
	}
	
	.acmapWrap .map .mapInr{
		padding: 10px;
		background-color: #FFF;
		
	}
	
	.acmapWrap .data{
		width: 47.5%;
		
	}
	
	.acmapBox.rev{
		flex-flow: row-reverse;
		
	}
	.data h2{
		width: 100%;
		padding-bottom: 30px;
		margin-bottom: 30px;
		border-bottom: 1px #dfdfdf solid;
	}
	
	.linkWp{
		width: 100%;
	}
	.linkWp li a{
		color: #FFF;
		display: block;
		width: 100%;
		padding: 70px 0;
		text-align: center;
	}
	.linkWp li{
		position: relative;
		margin-bottom: 1px;
    	background-color: #898989;
	}
	
	.linkWp li:first-child{
		border-radius: 3px 3px 0 0 / 3px 3px 0 0;
	}
	
	.linkWp li:last-child{
		border-radius: 0 0 3px 3px / 0 0 3px 3px;
	}
	.linkWp li:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
	}
	.linkWp li:before {
		right: 70px;
		width: 8px;
		height: 8px;
		border-top: 1px solid #FFF;
		border-right: 1px solid #FFF;
		transform: rotate(45deg);
	}
	.mod-ol > li {
		display: table-row;
		counter-increment: table-ol;
	}
	.mod-ol > li:before {
		content: counter(table-ol) ".";
		display: table-cell;
		padding-right: 10px;
	}
	.ohBx{
		padding-top: 70px;
	}
	.mod-ul {
		display: table;
		border-collapse: separate;
		border-spacing: 0 .6em;
	}
	.mod-ul > li {
    	display: table-row;
	}
	.mod-ul > li:before {
		content: "\2022";
		display: table-cell;
		padding-right: 10px;
	}
	.txt-blank .Mapbtn{
		margin-top: 10px;
	}
	
	.fmWrap{
		margin: 70px 0;
	}
	
	.fmWrap dl {
		width: 100%;
		display: table;
		border-top: 1px solid #dfdfdf;
		padding: 0;
		margin: 0;
	}
	.fmWrap dl dt {
		display: table-cell;
		width: 25%;
		padding: 8px 0;
		vertical-align: middle;
	}
	.fmWrap dl .typ1 {
		display: table-cell;
		width: 50%;
		vertical-align: middle;
		padding: 8px 0;
		margin: 0;
	}
	.fmWrap dl .typ2 {
		display: table-cell;
		width: 25%;
		vertical-align: middle;
		padding: 8px 0;
		margin: 0;
	}
	.fmWrap dl .typ3 {
		display: table-cell;
		width: 75%;
		padding: 8px 0;
		vertical-align: middle;
	}
	.fmWrap dl dt .wps5 {
		width: 100%;
		display: table;
		border-collapse: separate;
		border-spacing: 20px 0;
	}
	.fmWrap dl dt .left {
		width: 80%;
		display: table-cell;
		vertical-align: middle;
	}
	.fmWrap dl dt .right {
		width: 22%;
		display: table-cell;
		vertical-align: middle;
	}
	.fmWrap dl select {
		border: 0;
		padding: 15px;
		margin: 15px 0;
		background-color: #FFF;
	}
	.fmWrap dl input[type=text] {
		border: 0;
		padding: 15px;
		margin: 15px 0;
		background-color: #FFF;
		width: 93%;
	}
	.fmWrap dl textarea {
		border: 0;
		padding: 15px;
		margin: 15px 0;
		background-color: #FFF;
		width: 62%;
	}
	
	.btnWp .button {
		width: 100%;
		max-width: 550px;
		margin: 0 auto;
		display: block;
		padding: 25px;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
	}
	.tp1{
		background-color: #898989;
	}
	.btnWp input[type="button"][disabled] {
		background-color: #d6d6d6;
	}
	
	.fmWrap dl.lstTd{
		padding-bottom: 20px;
    	border-bottom: 1px solid #dfdfdf;
		
	}
	
	.btnWp{
		margin-top: 70px;
		position: relative;
	}
	.disabledBtn.on{
		display: none;
	}
	.disabledBtn {
		width: 100%;
		max-width: 550px;
		display: block;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
		padding: 21px 0 20px ;
		background-color: #d6d6d6;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		margin: auto;
		z-index: 2;
	}
	.step{
		display: flex;
		justify-content: center;
		align-items: center;
		margin-top: 35px;
	}
	.step li{
		position: relative;
		padding: 0 30px;
	}
	.step li::after {
		display: block;
		position: absolute;
		content: "";
		left: -10px;
		top: 21px;
		width: 18px;
		height: 1px;
		transform: rotate(-60deg);
		background-color: #dfdfdf;
	}
	.step li:first-child::after {
		display: none;
	}
	
	.step li.st{
		color: #dfdfdf;
		
	}
	.ft_red,.fRed{
		color: #d80e0e;
	}
	
	.atBx{
		padding: 20px;
		height: 300px;
		background-color: #FFF;
		overflow-y: scroll;
    	margin-top: 25px;
		margin-bottom: 20px;
		width: 61%;
	}
	
	.btn3vr{
		width: 100%;
		max-width: 550px;
		margin: 50px auto;
		display: block;
		padding: 25px;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 40px;
		border: none;
    	transition: all .3s;
		background-color: #898989;
		color: #FFF;
	}
	
	.linkBk{
		
	}
	
	.error{
		padding: 35px;
		margin-top: 35px;
    	border: 1px solid #dfdfdf;
	}
	.fmWrap .txt{
		padding-top: 35px;	
	}
	.linkTx1{
		padding-top: 35px;
	}
	
	.ckBx2{
		padding-top: 35px;
    	border-bottom: 1px solid #dfdfdf;
	}
	
	.ckBx2 .wps5{
		padding:  15px 0;
		
	}
	.businessList{
		display: flex;
    	justify-content: space-between;
	}
	.businessList a {
		width: 22%;
		background: #FFF;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.businessList .title {
		width: 100%;
		margin: 0 auto 0;
		padding: 0;
	}
	.businessList .title .wrap {
		padding: 40px;
	}
	
	.entryBtn{
		width: 100%;
		margin: 70px auto 0;
		display: block;
		padding: 50px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: none;
		transition: all .3s;
		background-color: #898989;
		color: #FFF;
	}
	
	.Jobtxt{
		/*display: none;*/
		padding: 35px 0 0 0;
	}
	
	.JobBtn{
		width: 100%;
		margin: 10px auto 0;
		display: block;
		padding: 50px 0;
		text-align: center;
		text-decoration: none;
		outline: none;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: none;
		transition: all .3s;
		background-color: #FFF;
		position: relative;
	}
	
	.JobBtn::before, .JobBtn::after {
		position: absolute;
		top: 50%;
		right: 5%;
		transform: translateY(-50%) translateX(0);
		margin: auto;
		content: '';
		display: inline-block;
		width: 13px;
		height: 1px;
		background-color: #898989;
	}
	
	.JobBtn::after {
		transform: rotate(90deg);
	}
	.JobBtn.active::before {
		background-color: #FFF;
	}
	.JobBtn.active::after {
		display: none;
	}
	
	.JobBtn.active{
		background-color: #898989;
		color: #FFF;
	}
	.data h2{
		display:block;
	}
	.map h2{
		display: none;
	}
	.f-grid{
		width: 100%;
		background-color: #FFF;
	}
	.f-grid ul{
		display: flex;
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto 0;
		padding: 70px 0;
	}
	.f-grid li{
		margin-right: 45px;
	}
	.f-grid li .iMlg{
		display: block;
	}
	
	/* マウス追尾 CSS*/
	body:not(.touchdevice) .c-cursor {
		pointer-events: none;
	}
	body:not(.touchdevice) * {
		cursor: none;
	}
	.c-cursor {
		position: absolute;
		z-index: 10000;
	}

	body:not(.touchdevice) .c-cursor__pointer {
		height: 14px;
		left: -7px;
		opacity: 0;
		position: fixed;
		top: -7px;
		width: 14px;
		z-index: 10000;
	}

	body:not(.touchdevice) .c-cursor__pointer::before {
		content: '';
		display: block;
		background-color: #333;
		border-radius: 50%;
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		transition: all 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
		width: 100%;
	}

	.is-hover body:not(.touchdevice) .c-cursor__pointer::before {
		transform: scale(2);
	}
	
	
	/*▼▼▼▼▼▼▼▼20200406*/
	.movieWrp{
		padding: 0 70px 0;
		background-color: #FFF;
		text-align: center;
	
	}
	.movieInr{
		position: relative;
		width: 80%;
		margin: 0 auto 70px;
		padding-top: 56.25%;
		display: inline-block;
	}

	.movieInr iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
	.swipeboxWrap{
		border: 1px solid #dfdfdf;
		display: inline-block;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		background-color: #FFF;
		width: 100%;
		padding: 0;
		margin: 0;
		text-align: center;
	}
	.swipeboxWrap.last{
		margin-bottom: 70px;
		
	}
	.swipeboxInr{
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		background-color: #FFF;
	}
	
	.swipeboxInr a{
		display: block;
		padding: 30px;
		position: relative;
	}
	
	.swipeboxInr a:before {
		position: absolute;
		bottom: 0;
		right: 0;
		margin: auto;
		content: "";
		width: 70px;
		height: 70px;
		background-image: url(../images/arw6.png);
		background-color: #898989;
		background-position: center;
		background-size: 27px;
    	background-repeat: no-repeat;
		transition: all 0.4s ease-out;
	}
	
	.swipeboxInr a:hover:before {
		background-color: #949595;
	}
	
	.swipeboxWrap .swipeboxInr img{
		margin: 0 auto;
		max-width: 80%;
		
	}
	
	.swipebox-html body:not(.touchdevice) *{cursor: auto;}

	.busData{
		width: 100%;
		padding: 0 0 70px 0 ;
	}
	.busDataWp{
		width: 100%;
		display: flex;
		justify-content:space-between;
	    flex-wrap: wrap;
		
	}
	
	.busDataWp .busDataInr{
		width: 31.5%;
	}	
	
	.busDataWp .busDataInr .box{
		padding-top: 70px;
	}
	
	.busDataWp .busDataInr .box h2{
		padding-bottom: 10px;
	}
	
	.busDataWp .busDataInr .box .number{
		position: relative;
	}
	
	.busDataWp .busDataInr .box .number:before {
		font-family: 'Oswald', sans-serif;
		position: absolute;
		top: -35px;
		left: 0px;
		margin: 0;
		vertical-align: middle;
		width: 20px;
		font-weight: 200;
	}
	
	.busDataWp .busDataInr .box .no1:before {
		content: "01";
	}
	
	.busDataWp .busDataInr .box .no2:before {
		content: "02";
	}
	
	.busDataWp .busDataInr .box .no3:before {
		content: "03";
	}
	.busDataWp .busDataInr .box .no4:before {
		content: "04";
	}
	.busDataWp .busDataInr .box .no5:before {
		content: "05";
	}
	.busDataWp .busDataInr .box .no6:before {
		content: "06";
	}
	
	.busDataWp .busDataInr img{
		width: 100%;
		
	}	
	
	.caseData{
		width: 100%;
		padding: 70px 0 ;
	}
	.caseDataWp{
		width: 100%;
		overflow: hidden;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		
	}
	
	.caseDataWp .caseDataInr{
		display: flex;
		background-color: #898989;
		
	}
	
	.caseDataWp .caseDataInr:nth-child(odd){
		background: #949595;
	}
	
	.caseDataWp .caseDataTl{
		width: 15%;
		padding: 40px 0 40px 40px;
		
	}
	
	.caseDataWp .caseDataName{
		display: block;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		text-align: center;
		padding: 5px 30px;;
		background-color: #FFF;
		
	}
	
	.caseDataWp .caseDataCm{
		padding: 40px;
		color: #FFF;
		width: 85%;
		
	}
	.page-12 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto;
		padding: 70px 0 0 0;
		z-index: 1;
	}
	
	.caseLtWp{
		padding-bottom: 30px;
	}
	.caseLtWp:last-child{
		padding-bottom: 0px;
	}
	.caseLtWp .caseLtInr{
		display: flex;
	}
	.caseLtWp .caseLtTl{
		width: 25%;
		text-align: right;
		
	}
	
	.caseLtWp .caseLtTl span{
		position: relative;
	}
	
	.caseLtWp .caseLtTl span:before
	{
    position: absolute;
    bottom: -5px;
    right: -20px;
    content: '\FF1A';
    text-align: center;
}
	
	.caseLtWp .caseLtDt{
		width: 75%;
		
	}
	.caseLtWp .caseLtDt ul{
		padding-left: 30px;
	}
	
	.caseLtWp .caseLtDt ul li{
		display: inline-block;
		background-color: #898989;
		color: #FFF;
		border-radius: 20px;
		content: "";
		padding: 3px 25px;
		margin:  0 5px 10px 0;
	}
	
	.caseLtWp .caseLtDt ul li.op{
		opacity: .3;
	}
	
	.flow{
		width: 100%;
		position: relative;
		margin-bottom: 70px;
		display: inline-block;
	}
	
	.flow::before {
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		position: absolute;
		margin: auto;
		background-color: #dfdfdf;
		top: 50%;
		left: 0%;
		transform: translateY(-50%);
		z-index: -1;
	}
	
	.flow ol{
		width: 100%;
		margin: 0;
		display: flex;
		justify-content:space-between;
		align-items: center;
	}
	
	.flow li{
		/*width: 12.5%;*/
		border: 1px solid #dfdfdf;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		/*position: relative;
		display: table-row;
		counter-increment: table-ol;*/
	}
	
	.flow li .mTx{
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		padding: 0 20px;
		height: 230px;
		background-color: #FFF;
		
	}
	.flow li span{
		display: block;
		text-align: center;
		
	}
	.flow li .Len{
		background-color: #efefef;
		padding: 20px 20px;
		
	}
	.flow li:before {
		/*content: counter(table-ol) ".";
		display: table-cell;*/
	}
	
	.caseData.pt0{
		padding-top: 0px;
		
	}
	
	.prodData.caseVer{
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
		border: 1px solid #dfdfdf;
		background-color: #FFF;
		
	}
	
	.prodData{
		width: 100%;
		padding: 70px 0;
		position: relative;
		overflow: hidden;
	}
	.prodData .mask::after{
		display: block;
    	content: "";
		position: absolute;
		top:0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #949595;
	}
	.prodDataWp{
		padding: 0 70px;
		max-width: 75%;
		margin: 0 auto;
		
	}
	
	.prodDataWp .prodDataInr{
		
	}
	
	.prodData .slick-prev {
		left: -100px;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		font-size: 0;
		line-height: 0;
		position: absolute;
		top: 50%;
		display: block;
		width: 20px;
		height: 20px;
		padding: 0;
		-webkit-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
		cursor: pointer;
		color: transparent;
		border: none;
		outline: none;
		background: transparent;
	}
	
	.prodData .slick-next {
		right: -100px;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		line-height: 1;
		opacity: .75;
		color: white;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	
	.prodData .slick-prev, .prodData .slick-next {
		color: #000;
		width: 50px;
		height: 50px;
	}
	.prodData .slick-prev {
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw4.png);
	}
	
	.prodData.caseVer .slick-prev {
		background-image: url(../images/arw4_b.png);
	}
	
	.prodData .slick-next {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw5.png);
	}
	
	.prodData.caseVer .slick-next {
		background-image: url(../images/arw5_b.png);
	}
	
	.prodData .slick-list,.prodData .imgAea{
		padding: 0;
	}
	
	.prodData .mask {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		z-index: -1;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	.prodData .bgTxt.bgTxt01 {
		position: absolute;
		left: -6%;
		bottom: -7%;
	}
	
	.page-6.wit{
		background: none;
	}
	
	/*▲▲▲▲▲▲▲▲▲▲▲▲20200406*/
	
	/*▼▼▼▼▼▼▼▼▼▼▼▼20200417*/

	
	.page-21 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 0 auto 0;
		padding: 70px 0 0 0;
		z-index: 1;
	}
	
	.nextWp{
		display: flex;
		justify-content: space-between;
		
	}
	
	.nextWp .nextInr{
		width: 48%;
		position: relative;
		background-color: #FFF;
		
	}
	
	.nextWp .nextInr.left{
		
	}
	
	.nextWp .nextInr.right{
		text-align: right;
		
	}
	
	.nextWp .nextInr a{
		display: block;
		position: relative;
		padding: 70px;
		border-radius: 3px 3px 3px 3px;
		
	}

	.nextWp .nextInr.left:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 0;
		width: 200%;
		height: 100%;
		background-color: #FFF;
		z-index: -1;
		border-radius: 3px 3px 3px 3px;
	}

	.nextWp .nextInr.right:before {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		left: 0;
		width: 200%;
		height: 100%;
		background-color: #FFF;
		z-index: -1;
		border-radius: 3px 3px 3px 3px;
	}
	
	.nextWp .nextInr{
		position: relative;
		
	}
	
	.page-20 {
		width: calc(100% - 128px);
		max-width: 1400px;
		margin: 70px auto 0;
		padding: 70px 0 0 0;
		z-index: 1;
		background: none;
	}
	.innerWp .page-20::after {
		content: '';
		position: absolute;
		top: 0;
		left: 10%;
		width: 200%;
		height: 100%;
		background-color: #FFF;
		z-index: -2;
		border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
	}
	
	.nextAea{
		width: 100%;
		padding: 0 0 70px 0;
	}
	
	.nextAea .nextAeaInr{
		display: flex;
		border-left: 1px solid #dfdfdf;
		border-right: 1px solid #dfdfdf;
		border-bottom: 1px solid #dfdfdf;
		padding: 70px;
		background-color: #FFF;
		align-items: center;
		
	}
	
	.nextAea .nextAeaInr:last-child{
		border-radius: 0px 0px 3px 3px;
	}
	.nextAea .nextAeaInr:first-child{
		border-radius: 3px 3px 0px 0px;
		border-top: 1px solid #dfdfdf;
	}
	
	.nextAea .nextAeaInr .img a{
		display: block;
		overflow: hidden;
		
	}
	
	.nextAea .nextAeaInr .img{
		width: 40%;
		overflow: hidden;
		
	}
	
	.nextAea .nextAeaInr .img a:hover img {
		transform: scale(1.1);
	}

	.nextAea .nextAeaInr .img img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.nextAea .nextAeaInr .data{
		width: 60%;
		
	}
	
	.nextAea .nextAeaInr .dataBx{
		padding-left: 70px;
		
	}
	.nextBx .imgAreas{
		margin-bottom: 30px;
		overflow: hidden;
		
	}
	
	.nextBx .txtAreas span{
		display: inline-block;
		background-color: #898989;
		color: #FFF;
		border-radius: 6px;
		content: "";
		padding: 0px 20px;
		margin: 0 0 20px 0;
	}
	
	.nextBx h4{
		padding-bottom: 20px;
	}
	.nextAea .nextAeaInr .data h4{
		padding-top: 25px;
		
	}
	
	.nextWp .nextInr.left .nextBx:after{
		content: "";
		display: block;
		width: 30px;
		height: 30px;
		position: absolute;
		left: 0%;
		top: 50%;
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw4_b.png);
	}
	
	.nextWp .nextInr.right .nextBx:after{
		content: "";
		display: block;
		width: 30px;
		height: 30px;
		position: absolute;
		right: 0%;
		top: 50%;
		background-position: center left;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(../images/arw5_b.png);
	}

	.nextInr a img {
		width: 100%;
		transition: all 0.4s ease-out;
	}
	.nextInr a:hover img {
		transform: scale(1.1);
	}
	
	
	/*▲▲▲▲▲▲▲▲▲▲▲▲20200417*/
}


@media only screen and (min-width: 1650px){
	
	.LeadTxt::after{
		display: block;
		position: absolute;
		font-family: 'Oswald', sans-serif;
		left: 3%;
		transform: rotate(180deg);
		top: 50%;
		text-align: center;
		margin: -100px 0 0 0;
		height: 200px;
		writing-mode: vertical-lr;
		font-size: 0.875rem;
		z-index: 1;
	}
	.txNo1::after{
		content: "Our Business";
	}
	.txNo2::after{
		content: "Case Study";
	}
	.txNo3::after{
		content: "Company Organization";
	}
	.txNo4::after{
		content: "Company Overview";
	}
	.txNo5::after{
		content: "President's Message";
	}
	.txNo6::after{
		content: "Company History";
	}
	.txNo7::after{
		content: "Company Access Map";
	}
	.txNo8::after{
		content: "Link";
	}
	.txNo9::after{
		content: "Security Policy";
	}
	.txNo10::after{
		content: "Mynumber Policy";
	}
	.txNo11::after{
		content: "Privacy Policy";
	}
	.txNo12::after{
		content: "Site Policy";
	}
	.txNo13::after{
		content: "Topics";
	}
	.txNo14::after{
		content: "Contact Form";
	}
	.txNo15::after{
		content: "Recruit Message";
	}
	.txNo16::after{
		content: "About Recruit";
	}
	.txNo17::after{
		content: "Entry Form";
	}
	.txNo18::after{
		content: "Our Products";
	}
	.txNo19::after{
		content: "Case Study";
	}
}


.l-header__logo img{
	width: 100%
}

.l-header__logo a{
	display: block;
}

#lang-menu {
    padding: 0 0 0 20px ;
    margin: 0 0 0 20px;
    text-align: center;
	width: 60px;
	position: relative;
}

#lang-menu:before {
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
	left: 1px;
    width: 1px;
    height: 50%;
	background-color: #dfdfdf;
}


.header #menu{
	flex: 1;
}

#lang-menu a{
}

.arrow {
    position: relative;
}

.arrow a{
	display: block;
    padding: 20px;
}

.arrow:before {
    right: 3px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #898989;
    border-right: 1px solid #898989;
    transform: rotate(135deg);
}

/*

.arrow::after,.arrow:before {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
*/

.arrow::after, .arrow:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

.header #menu ul{
	display: flex;
	width: 100%;
	justify-content: flex-end;
}

.header #menu li{
	position:relative;
	padding:  43px 20px;
}

.header #menu li:hover::after {
    height: 5px;
}

.header #menu li:after {
    position: absolute;
    bottom: 0;
    right: 0;
	left: 0;
	margin: 0 auto;
    content: '';
    width: 36px;
    height: 0;
    background-color: #898989;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
}

.header #menu :last-child{
	
}

.header #menu li a{
}

.header #menu li .child{
    display: none;
    position: absolute;
    top: 116px;
    left: 50%;
	padding-top: 25px;
    transform: translate(-50%, 0);
    width: 200px;
	overflow:hidden;
}

.header #menu li .child li:first-child{
	border-radius: 3px 3px 0 0 / 3px 3px 0 0;
}

.header #menu li .child li:last-child{
	border-radius: 0 0 3px 3px / 0 0 3px 3px;
}

.header #menu li .child li{
	display: block;
	height: auto;
	padding:0 0;
	width: 100%;
	background-color: #898989;
}

.header #menu li .child li:not(:first-child){
	border-top:1px solid #787878;
}

.header #menu li .child li a{
	display: block;
	padding: 15px 20px;
}






/*
.mOn {
    animation: mOnanime 2s 0s both;
}
 
@keyframes mOnanime {
    0% {
	opacity: 0;
    }
    100% {
	opacity: 1;
    }
}
*/

/*EN JP*/

@keyframes menu-first-in {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}


@keyframes menu-first-out {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  to {
    transform: translateY(100%);
    opacity: 0;
  }
}

@keyframes menu-in {
  0% {
  transform: translate(-50%, -100%);
  }
  to {
  transform: translate(-50%);
  }
}



@keyframes menu-out {
  0% {
    transform: translate(-50%);
  }
  to {
    transform: translate(-50%, -100%);
  }
}



.section{
	position: relative;
	width: 100%;
}

.l-index-kv{
	position: relative;
	width: 100%;
	overflow: hidden;
}

#left_link {
    left: 3%;
    transform: rotate(180deg);
    top: 50%;
}



.index-preloader{
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9999;
}

.index-preloader .index-preloader_bg{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #111;
}

.index-preloader .index-preloader_bg {
    transform: translateX(0) skewX(0);
    transform-origin: right bottom
}

.is-hidden .index-preloader_bg{
    transform: translateX(-100%) skewX(40deg);
    transition-duration: 1.2s;
    transition-timing-function: cubic-bezier(.785,.135,.15,.86)
}

.index-preloader.is-hidden{
	pointer-events: none;
}

.index-preloader_logo{
	position: relative;
	text-align: center;
	z-index: 10;
	width: 100%;
	max-width: 200px;
	transform-origin: center center;
	opacity: 1;
}

.index-preloader_logo img{
	width: 55%;
}

.index-preloader.is-hidden .index-preloader_logo{
	opacity: 0;
    transition-duration: .8s;
    transition-timing-function: cubic-bezier(.785,.135,.15,.86);	
}

.index-preloader_bar{
    height: 1px;
    z-index: 1;
	margin-top:  10px;
}

.index-preloader_bar .index-preloader_scroll{
    animation-name: scl_pnr;
    animation-duration: .8s;
    animation-iteration-count: infinite;
	background-color:  #898989;
    height: 1px;
	position: absolute;
	left: 0;
	right: auto;
}
	
@keyframes scl_pnr1 {
    0% {
        width: 30px;
    }

	50% {
        width: 45px;
    }

	100% {
       width: 30px;
    }
}

@keyframes scl_pnr {
    0% {
        width: 0%;
		left: 0;
		right: auto;
    }
	
	25% {
        width: 100%;
		left: 0;
		right: auto;
    }

    26% {
        width: 100%;
		right: 0;
		left: auto;
    }
	50% {
        width: 0;
		right: 0;
		left: auto;
    }
	51% {
        width: 0;
		left: 0;
		right: auto;
    }
	100% {
        width: 0;
		left: 0;
		right: auto;
    }
}

.delayed-show{
    opacity: 0;
    transform: translateY(30px);
    transition-property: opacity,-webkit-transform;
    transition-property: transform,opacity;
    transition-duration: 1s;
}

.delayed-show-view{
    opacity: 1;
    transform: translateY(0);
}

.businessWrap a:first-child .business-box{
	/*transition-delay : .1s;*/
}
.businessWrap a:nth-child(2) .business-box,.office:nth-child(2),.case-box .title,.newsList{
	transition-delay : .2s;
}
.businessWrap a:nth-child(3) .business-box,.office:nth-child(3){
	transition-delay : .4s;
}
.businessWrap a:last-child .business-box{
	transition-delay : .6s;
}

.busDataWp .busDataInr:first-child{
	/*transition-delay : .1s;*/
}
.busDataWp .busDataInr:nth-child(2){
	transition-delay : .1s;
}
.busDataWp .busDataInr:nth-child(3){
	transition-delay : .2s;
}
.busDataWp .busDataInr:nth-child(4){
	transition-delay : .3s;
}
.busDataWp .busDataInr:nth-child(5){
	transition-delay : .4s;
}
.busDataWp .busDataInr:nth-child(6){
	transition-delay : .5s;
}

.businessList a:nth-child(2) .business-box{
	transition-delay : .2s;
}
.businessList a:nth-child(3) .business-box{
	transition-delay : .4s;
}
.businessList a:nth-child(4) .business-box{
	transition-delay : .4s;
}
.flow li:nth-child(2){
	transition-delay : .1s;
}
.flow li:nth-child(3){
	transition-delay : .2s;
}
.flow li:nth-child(4){
	transition-delay : .3s;
}
.flow li:nth-child(5){
	transition-delay : .4s;
}
.flow li:nth-child(6){
	transition-delay : .5s;
}
.flow li:nth-child(7){
	transition-delay : .6s;
}
.flow li:nth-child(8){
	transition-delay : .7s;
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0 0 80px 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}




/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: 0px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 15px;
    padding: 0;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-size: 30px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '\2022';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, #left_link{
    left: 1.5%;
    transform: rotate(270deg);
    top: 50%;
	}
  *::-ms-backdrop, #right_link {
    transform: rotate(90deg);
	}
  *::-ms-backdrop, .LeadTxt::after {
    transform: rotate(270deg);
    left: 9%;
	}
  *::-ms-backdrop, .arw2::before{
    transform: rotate(90deg);
	  bottom:-8px;
	  right:-33px;
	}
  *::-ms-backdrop, .arw2::after{
    transform: rotate(45deg);
	  bottom:0px;
	  right:-45px;
	}
  *::-ms-backdrop, .top-head{
	  box-shadow: 0px 1px 6px rgba(0,0,0,0.2);
	}
	
}

#movie{
	width: 100%;
    height: 100%;
	overflow: hidden;
	position: relative;
}

#movieWrap{
	position: absolute;
	width: 100%;
	height: 100%;
	top:0;
	left: 0;
	opacity: .3;
	background-color: #000;
	z-index: -1;
}

.videoSp{
	width: 100%;
    height: 100%;
	overflow: hidden;
	position: relative;
}

.videoSp img{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	z-index: -2;
    height: 110%;
}

.videoSp .spOn{
	z-index: -3;
}

#video {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	z-index: -2;
    height: 110%;
	background-color: #000;
}
.l-index-kv {
    color: #FFF;
}

.validate-error {
	color: #d80e0e;	
}
@media only screen and (min-width: 768px) {
	.validate-error {
		margin-left: 20px;
	}
}
