@charset "UTF-8";
/* CSS Document */
*{
	margin: 0px;
	padding: 0px;
}
body {
	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	
	background-color: #FFF;
	color: #000;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
    font-weight: normal;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.13em;

}
body{
	
}
.wrapper{
	overflow: hidden;
}
::selection {
	background-color:#016035;
	color: #FFF;/* Safari */
}

::-moz-selection {
	background-color:#016035;
	color: #FFF;/* Firefox */
}
.clearfix {
	clear: both;
}
.onPc{
	display:block !important;
}
.onSmt{
	display:none !important;
}
.headclearfix {
	clear: both;
	width:100%;
	height:1px;
	display:block;
	float:left;
	margin-bottom:-1px;
}
a{
	color: #000;
}
a:hover{
	color: #666;
}
a img.linkimg{
background:none!important;
-webkit-transition: 0.3s ease-in-out;  
-moz-transition: 0.3s ease-in-out; 
-o-transition: 0.3s ease-in-out;  
transition: 0.3s ease-in-out;  
}
a:hover img.linkimg{
opacity:0.7;
filter:alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
background:none!important;
}
.imground{
	-webkit-border-radius: 4px;
	-khtml-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.imgshadow{
    box-shadow: 0 12px 10px -6px rgba(0,0,0,.6);
}
.imgCenter{
	width:100%;
	height:auto;
	float:left;
	display:table;
	text-align:center;
}
.imgLeft{
	width:100%;
	height:auto;
	float:left;
	display:table;
}
/* Space */
.mt0{ margin-top:0;}
.mt05{ margin-top:5px;}
.mt10{ margin-top:10px;}
.mt15{ margin-top:15px;}
.mt20{ margin-top:20px;}
.mt25{ margin-top:25px;}
.mt30{ margin-top:30px;}
.mt40{ margin-top:40px;}
.mt50{ margin-top:50px;}
.mt60{ margin-top:60px;}
.mt70{ margin-top:70px;}
.mt80{ margin-top:80px;}
.mt90{ margin-top:90px;}
.mt100{ margin-top:100px;}
.mt110{ margin-top:110px;}
.mt120{ margin-top:120px;}
.mt130{ margin-top:130px;}
.mt140{ margin-top:140px;}
.mt150{ margin-top:150px;}
.mt160{ margin-top:160px;}

.mr0{ margin-right:0;}
.mr05{ margin-right:5px;}
.mr10{ margin-right:10px;}
.mr15{ margin-right:15px;}
.mr20{ margin-right:20px;}
.mr30{ margin-right:30px;}
.mr60{ margin-right:60px;}

.mb0{ margin-bottom:0;}
.mb05{ margin-bottom:5px;}
.mb10{ margin-bottom:10px;}
.mb15{ margin-bottom:15px;}
.mb20{ margin-bottom:20px;}
.mb25{ margin-bottom:25px;}
.mb30{ margin-bottom:30px;}
.mb40{ margin-bottom:40px;}
.mb50{ margin-bottom:50px;}
.mb60{ margin-bottom:60px;}
.mb70{ margin-bottom:70px;}
.mb80{ margin-bottom:80px;}
.mb90{ margin-bottom:90px;}
.mb100{ margin-bottom:100px;}
.mb110{ margin-bottom:110px;}
.mb120{ margin-bottom:120px;}
.mb130{ margin-bottom:130px;}
.mb140{ margin-bottom:140px;}
.mb150{ margin-bottom:150px;}
.mb160{ margin-bottom:160px;}
.mb170{ margin-bottom:170px;}
.mb180{ margin-bottom:180px;}
.mb190{ margin-bottom:190px;}
.mb200{ margin-bottom:200px;}

.ml0{ margin-left:0;}
.ml05{ margin-left:5px;}
.ml10{ margin-left:10px;}
.ml15{ margin-left:15px;}
.ml20{ margin-left:20px;}
.ml30{ margin-left:30px;}
.ml150{ margin-left:150px;}

.mW05{ margin:0 5px;}
.mW10{ margin:0 10px;}
.mW15{ margin:0 15px;}
.mW20{ margin:0 20px;}
.mW30{ margin:0 30px;}

.pt0{ padding-top:0;}
.pt02{ padding-top:2px;}
.pt03{ padding-top:3px;}
.pt04{ padding-top:4px;}
.pt05{ padding-top:5px;}
.pt10{ padding-top:10px;}
.pt15{ padding-top:15px;}
.pt20{ padding-top:20px;}
.pt30{ padding-top:30px;}
.pt40{ padding-top:40px;}
.pt50{ padding-top:50px;}
.pt60{ padding-top:60px;}
.pt70{ padding-top:70px;}
.pt80{ padding-top:80px;}
.pt90{ padding-top:90px;}
.pt100{ padding-top:100px;}

.pr0{ padding-right:0;}
.pr05{ padding-right:5px;}
.pr10{ padding-right:10px;}
.pr15{ padding-right:15px;}
.pr20{ padding-right:20px;}
.pr30{ padding-right:30px;}
.pr40{ padding-right:40px;}
.pr50{ padding-right:50px;}
.pr60{ padding-right:60px;}
.pr70{ padding-right:70px;}
.pr80{ padding-right:80px;}
.pr90{ padding-right:90px;}
.pr100{ padding-right:100px;}
.pr110{ padding-right:110px;}
.pr120{ padding-right:120px;}


.pb0{ padding-bottom:0;}
.pb03{ padding-bottom:3px;}
.pb04{ padding-bottom:4px;}
.pb05{ padding-bottom:5px;}
.pb07{ padding-bottom:7px;}
.pb10{ padding-bottom:10px;}
.pb15{ padding-bottom:15px;}
.pb20{ padding-bottom:20px;}
.pb30{ padding-bottom:30px;}
.pb40{ padding-bottom:40px;}
.pb50{ padding-bottom:50px;}
.pb60{ padding-bottom:60px;}
.pb70{ padding-bottom:70px;}
.pb80{ padding-bottom:80px;}
.pb90{ padding-bottom:90px;}
.pb100{ padding-bottom:100px;}

.pl0{ padding-left:0;}
.pl05{ padding-left:5px;}
.pl10{ padding-left:10px;}
.pl15{ padding-left:15px;}
.pl20{ padding-left:20px;}
.pl30{ padding-left:30px;}
.pl40{ padding-left:40px;}
.pl50{ padding-left:50px;}
.pl60{ padding-left:60px;}
.pl70{ padding-left:70px;}
.pl80{ padding-left:80px;}
.pl90{ padding-left:90px;}
.pl100{ padding-left:100px;}
.pl110{ padding-left:110px;}
.pl120{ padding-left:120px;}

.pW05{ padding:0 5px;}
.pW10{ padding:0 10px;}
.pW15{ padding:0 15px;}
.pW20{ padding:0 20px;}
.pW30{ padding:0 30px;}

.pd05{ padding: 5px;}
.pd10{ padding: 10px;}
.pd15{ padding: 15px;}
.pd20{ padding: 20px;}
/* Space */
.header {
	width: 100%;
	height: auto;
	display: block;
	position: fixed;
	top: 0px;
	z-index: 1000;
	background-color: #FFF;
	transition-property: all;
	transition: 0.2s ease;
}
.header.on {
    background-color: #FFF;
}
.box1080{
	width:100%;
	height:auto;
	margin: 0 auto;
	max-width: 1120px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
    position: relative;
   
}
.box960{
	width:100%;
	display:table;
	height:auto;
	margin: 0 auto;
	max-width: 1000px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
    position: relative;
    
}

.box800{
	width:100%;
	height:auto;
	margin: 0 auto;
	max-width: 840px;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
    position: relative;
    z-index: inherit;
}
.box600{
	width:100%;
	height:auto;
	margin: 0 auto;
	max-width: 600px;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    position: relative;
    
}
.box1280{
	width:100%;
	height:auto;
	margin: 0 auto;
	max-width:1320px;
	padding-left: 20px;
	padding-right: 20px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    position: relative;
    
}
.box1280Pd{
	width:100%;
	height:auto;
	margin: 0 auto;
	max-width:1280px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 40px;
	padding-right: 40px;

    position: relative;
    
}
.box1600{
	width:100%;
	display:table;
	height:auto;
	margin: 0 auto;
	max-width:1600px;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
    position: relative;
    
}
.box1600Pd{
	width:100%;
	display:table;
	height:auto;
	margin: 0 auto;
	max-width:1600px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 40px;
	padding-right: 40px;
	padding-top: 60px;
	padding-bottom: 60px;
}
.boxFull{
	width:100%;
	display:table;
	height:auto;
	margin: 0 auto;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    position: relative;
}
.headLogo{
	width: auto;
	height: auto;
	display:block;
	position: relative;
	float: left;
	transition-property: all;
	transition: 0.2s ease;
    opacity:1.0;
	/*filter:alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";*/
	margin-top: 40px;
	margin-left: 40px;
}

.on .headLogo{
	
}
.headLogo img{
	height: 40px;
	width:auto;
	transition-property: all;
	transition: 0.2s ease;
    display: block;
}
.headLogo.changeColor img{
	/*-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);*/
}
.on .headLogo.changeColor img{
	/*-webkit-filter: none;
	filter: none;*/
}
.headLogo img.whtLogo{
	display: none;
}
.headLogo img.baseLogo{
	display: block;
}
.on .headLogo img.whtLogo{
	
	display: block;
}
.on .headLogo img.baseLogo{
	display: none;
}
.contentBox {
	height: auto;
	width: 100%;
	margin: 0 auto;
	display: table;
	
    position: relative;
}

.contentBoxGrey {
	height: auto;
	width: 100%;
	margin: 0 auto;
display: table;
	background-color:#f8f8f8;
    position: relative;
}


.ph100{
    width:100%;
	height:auto;
	float:left;
	display:inline-block;
    position: relative;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    z-index: 0;
}
.ph100 img{
    width:100%;
	height:auto;
	float:left;
    z-index: 0;
    position: relative;
}
.ph80{
    width:100%;
	height:auto;
	float:left;
	display:inline-block;
    position: relative;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    z-index: 0;
    text-align: center;
}
.ph80 img{
    width:80%;
	height:auto;
    z-index: 0;
    position: relative;
}
.footBox {
	height: auto;
	width: 100%;
	margin: 0 auto;
	
	position: relative;
	z-index: 0;
	padding-top: 120px;
	padding-bottom: 120px;
	background-color: #FFF;
}

.moreBtn{
	width:100%;
	height:auto;
	float:left;
	display:flex;
	text-align:center;
    position: relative;
	justify-content: center;
}

.moreBtn a{
    width: 100%;
    height: auto;
    display: flex;

    line-height: 40px;
    font-size: 14px;
    color: #FFF;
    text-decoration: none;
    transition-property: all;
    transition: 0.2s ease;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: 900;
    padding: 5px 0;
    position: relative;
    letter-spacing: 0.15em;
    max-width: 200px;
	font-family: 'Roboto', sans-serif;
	border-radius: 40px;
	align-items: center;
	justify-content: center;
	background-color: #00a057;
	background-image: url("../images/arrow_left_wht.png");
background-size: 14px auto;
background-position: 90% center;
background-repeat: no-repeat;
}
.moreBtn a{
}
.moreBtn.t-left{
    justify-content: left;
}
.moreBtn a::before{

}
.moreBtn a.c-org{
    background-color: #FFAD0E;
}
.moreBtn a.c-blk{
    color: #000;
    border-color: #000;
}
.moreBtn a.c-blk::before{
    
}

.moreBtn a span{
   
}
.moreBtn a:hover{
    opacity: 0.8;
	background-position: 92% center;
}
.moreBtn a.wht:hover{
    background-color: #FFF;
    color: #774b65;
}
.moreBtn a.wht:hover::before{
    background-color: #774b65;
}
.moreBtn a:hover::before{
    
}
.moreBtn.t-line a{
	background-color: #FFF;
    border: #5a7c6d 1px solid;
	color: #5a7c6d;
}
.moreBtn.t-big a{
	max-width: 300px;
	 padding: 10px 0;
}
.goTopBtn{
	width:80px;
	height:80px;
	display:inline-block;
	position:fixed;
	right: 20px;
	bottom:-90px;
	z-index:100;
	transition-property: all;
	transition: 0.6s ease;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    padding: 20px;
	
	background-color: #FFF;
}
.goTopBtn a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.goTopBtn.on{
	bottom: 20px;
}
.goTopBtn.on:hover{
	
}
.goTopBtn img{
	width:100%;
	height:auto;
	
}
.goTopBtn img:hover{
	
}

.copyright{
	width:50%;
	height:auto;
	float:left;
	display:inline-block;
	font-size:11px;
	color:#000;
	line-height:20px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	text-align: right;
	letter-spacing: 0.1em;
}
.text60{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:60px;
	text-align:left;
	line-height:1.4em;
}
.text30{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:30px;
	text-align:left;
	line-height:1.4em;
}
.text30Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:30px;
	text-align:center;
	line-height:1.4em;
}
.text36{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:36px;
	text-align:left;
	line-height:1.4em;
}
.text36Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:36px;
	text-align:center;
	line-height:1.4em;
    position: relative;
}
.text42{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:42px;
	text-align:left;
	line-height:1.4em;
    position: relative;
}
.text42Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:42px;
	text-align:center;
	line-height:1.4em;
    position: relative;
}
.text48{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:48px;
	text-align:left;
	line-height:1.4em;
    position: relative;
}
.text48Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:48px;
	text-align:center;
	line-height:1.4em;
    position: relative;
}
.text24Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:24px;
	text-align:center;
	line-height:1.6em;
}
.text24{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:24px;
	text-align:left;
	line-height:1.6em;
}
.text22{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:22px;
	text-align:left;
	line-height:1.6em;
}
.text22Center{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:22px;
	text-align: center;
	line-height:1.6em;
}
.text20{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:20px;
	text-align:left;
	line-height:1.6em;
}
.text20Center{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:20px;
	text-align: center;
	line-height:1.6em;
}
.text18{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:18px;
	text-align:left;
	line-height:1.8em;
}
.text18Center{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:18px;
	text-align: center;
	line-height:1.8em;
}
.text16{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:16px;
	text-align:left;
	line-height:1.8em;
}
.text16Center{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:16px;
	text-align:center;
	line-height:1.8em;
}
.text15{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:15px;
	text-align:left;
	line-height:2.4em;
}
.text14{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:14px;
	text-align:left;
	line-height:1.8em;
}
.text14Center{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:14px;
	text-align:center;
	line-height:1.8em;
    position: relative;
}
.text12{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:12px;
	text-align:left;
	line-height: 2em;
}
.text12Center{
	 display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:12px;
	text-align:center;
	line-height: 2em;
}

.bd{
	font-weight: bold;
}

.gNavi {
	width: auto;
	height: auto;
	display:block;
    float: right;
	background-color: #FFF;
	position: relative;
	margin-right: 120px;
}
.gNavi ul{
	width: auto;
	height: auto;
	float: right;
	display:block;
	position: relative;
	
}
.gNavi li{
	width: auto;
	height: auto;
	float: left;
	display:block;
	position: relative;
}
.gNavi li a,.gNavi li span{
	width: auto;
	height: auto;
	font-size:14px;
	line-height:20px;
	text-align:center;
    color: #333;
	display:inline-block;
	text-decoration:none;
	font-weight: 600;
	transition-property: all;
	transition: 0.2s ease;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
    padding: 50px 30px;
	position: relative;
    cursor: pointer;
    letter-spacing: 0.13em;
	
}

.on .gNavi li a{
	color: #000;
}
.pageFix .gNavi li a{
	color: #000;
}
.gNavi li a:hover{
	/*background-color: rgba(0,0,0,0.05);*/
}
.gNavi li a:hover span{
   
}
.gNavi li.add a{
	/*background-color: rgba(0,0,0,0.05);*/
}
.gNavi li.add a span{
    color: #FFF;
}


.grn{
	color: #00a057;
}
.gry{
	color: #666;
}
.gry02{
	color: #999;
}
.flex {
    display: flex;
    width: 100%;
    height: auto;
    flex-flow: row wrap;
}
.itemCenter{
	align-items: center;
}
.bd500{
	font-weight: 500;
}
.heroImage{
	width: 100%;
	height: 100vh;
	float: left;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	
	position: relative;
	background-color: #f2f2f2;
	max-height: 1200px;
	/*display: flex;
	align-items: center;*/
}
.heroImage::after{
	content: '';
	width: 120px;
	height: 100%;
	background-color: #FFF;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
}
.heroScroll{
	width: 35px;
	height: auto;
	position: absolute;
	bottom: 0;
	right: 10%;
}
.heroScroll img{
	width: 100%;
	height: auto;
}


.wht{
	color: #FFF;
}

.font07{
	font-size: 0.7em;
}
.font08{
	font-size: 0.8em;
}
.font09{
	font-size: 0.9em;
}
.font13{
	font-size: 1.3em;
}
.mainTitle span{
	font-size: 0.8em;
}

.fontEn{
	font-family: 'Roboto', sans-serif;
}

.bd900{
	font-weight: 900;
}
.footLogo{
	width:100%;
	height:auto;
	float:left;
	display:block;
    position: relative;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	margin-bottom: 20px;
}
.footLogo img{
	width: 200px;
	height: auto;
}
.snsList {
    width: 100%;
    height: auto;
    float: left;
    display: inline-block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 40px;
}
.snsList a {
    text-decoration: none;
    margin-right: 8px;
    margin-left: 8px;
}
.snsList img {
    width: 36px;
    height: auto;
}

#menuButton{
	display: none;
}

#overlay{
	display: none;
}
#overlayBg{
	display: none;
}


.bd300{
	font-weight: 300;
}
.bd200{
	font-weight: 200;
}
.bd700{
	font-weight: 700;
}
.bd900{
	font-weight: 900;
}
/*s-tec*/
#menuButton {
    display: block;
    height: 120px;
    right: 0px;
    position: fixed;
    top: 0px;
    width: 120px;
	border: 0px solid #5a7c6d;
	z-index: 1200;
	cursor: pointer;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
	background-color: #FFF;
}
#menuButton::before {
	content: 'MENU';
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 10px;
	font-size: 11px;
	line-height: 20px;
	left: 0;
	font-family: 'Roboto', sans-serif;
	font-weight: bold;
	letter-spacing: 0.3em;
	box-sizing: border-box;
	margin-left: 0.15em;
}
#menuButton.active::before {
	content: 'CLOSE';
}
#menuButton::before {
}
#menuButton.on {
    
}

#menuButton span {
    display: block;
    background-color: #000;
    width: 60px;
    height: 2px;
    position: absolute;
    left: 30px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
	border-radius: 10px;
}
#menuButton span:first-child {
    top: 50px;
}
/*#menuButton span:nth-child(2) {
    margin-top: -1px;
    top: 50%;
}*/
#menuButton span:last-child {
    bottom: 50px;
	width: 40px;
}
#menuButton.active span{
      
}
#menuButton.active span:first-child {
    -webkit-transform: translateY(9px) rotate(45deg);
    -moz-transform: translateY(9px) rotate(45deg);
    -ms-transform: translateY(9px) rotate(45deg);
    transform: translateY(9px) rotate(45deg);
}
/*#menuButton.active span:nth-child(2) {
    opacity: 0;
}*/
#menuButton.active span:last-child {
    -webkit-transform: translateY(-9px) rotate(-45deg);
    -moz-transform: translateY(-9px) rotate(-45deg);
    -ms-transform: translateY(-9px) rotate(-45deg);
    transform: translateY(-9px) rotate(-45deg);
	width: 60px;
}
#overlay{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 1100;
    background-color: #FFF;
    overflow: scroll;
    right: -110%;
    display: flex;
	transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
	-webkit-overflow-scrolling: touch;
	align-items: center;
}
#overlay::before{
	content: '';
	width: 0;
	height: 1px;
	background-color: #eee;
	position: absolute;
	top: 120px;
	right: 0;
	transition: all 1.4s;
    -webkit-transition: all 1.4s;
    -moz-transition: all 1.4s;
}
#overlay::after{
	content: '';
	width: 1px;
	height: 1px;
	background-color: #eee;
	position: absolute;
	top: 0;
	right: 120px;
	transition: all 1.4s;
    -webkit-transition: all 1.4s;
    -moz-transition: all 1.4s;
}
#overlay.openMenu::before{
	width: 0px;
}
#overlay.openMenu::after{
	height: 0px;
}
#overlay.openMenu{
	right: 0;
}
#overlay .box800 {
    position: relative;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding: 0 30px;
	width: 100%;
	margin-bottom: 0px;
    max-width: 1000px;
    margin-top: 60px;
	margin-bottom: 60px;
}
.box1280Pd{
	width:100%;
	height:auto;
	margin: 0 auto;
	max-width:1280px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	padding-left: 40px;
	padding-right: 40px;

    position: relative;
    
}

.flex.t-reverse{
	flex-direction: row-reverse;
}

.lh20{
	line-height: 2.0em;
}
.gNavi li.headContactBtn a{
	background-color: #00a057;
	color: #FFF;
	width: 160px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	border-bottom-color: #00a057;
}
.gNavi li.headContactBtn.t02 a{
	background-color: #016035;
	border-bottom-color: #016035;
}
.gNavi li.rightBd a::before,.gNavi li.rightBd span::before{
	content: '';
	width: 1px;
	height: 20px;
	background-color: #333;
	position: absolute;
	top: calc(50% - 10px);
	right: 0;
}
.footMenu{
	width: 50%;
	position: relative;
	float: left;
	box-sizing: border-box;
}
.footMenu ul{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	position: relative;
}
.footMenu ul li{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	position: relative;
	margin-bottom: 20px;
}
.footMenu ul li a{
	display:inline-block;
    float: left;
    height: auto;
	font-size: 14px;
	line-height: 1.8em;
	position: relative;
	color: #000;
	font-weight: 600;
	text-decoration: none;
}
.footMenu ul li a:hover{
	text-decoration: underline;
}
.footTitle{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:18px;
	text-align:left;
	line-height:1.5em;
	color: #FFF;
	font-weight: 600;
	margin-bottom: 20px;
	position: relative;
}
.footTitle a{
	color: #FFF;
	text-decoration: none;
}
.footTitle a:hover{
	text-decoration: underline;
}
.fontMc{
	font-family: 'Shippori Mincho', serif;
}
.fontEn01{
	font-family: 'Roboto', sans-serif;
}
.fontEn02{
	font-family: 'Playfair Display', serif;
}
.bottomEntryBtn{
	width: 50%;
	height: 300px;
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background-color: #00a057;
	box-sizing: border-box;
	padding-left: 40px;
	background-image: url("../images/arrow_left_wht.png");
background-size: 30px auto;
background-position: 96% center;
background-repeat: no-repeat;
}
.bottomEntryBtn a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 1;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.bottomEntryBtn.t02{
	background-color: #016035;
}
.bottomEntryBtn .text48{
	line-height: 1;
	margin-bottom: 15px;
}
.bottomEntryBtn .text16{
	line-height: 1;
}
.megaBox {
  width: 100%;
  height: 0;
  padding: 0px;
  position: absolute;
  z-index: 1000;
  margin-top: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  right: 230px;
  top: 100px;
  transition-property: all;
  transition: 0.2s ease;
  overflow: hidden;
  background-color: #ffffee;
  background-color: #00bb66;
  box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.1);
  margin-left: 0px;
  max-width: 600px;
  opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "alpha( opacity=0 )";
}
#slideMenu02 .megaBox {
	right: 0px;
	max-width: 830px;
}
.add .megaBox {
  height: auto;
  transition-property: all;
  transition: 0.2s ease;
  border-top-width: 6px;
  opacity: 1;
  filter: alpha(opacity=100);
  -ms-filter: "alpha( opacity=100 )";
}
.gNavi li a:hover,.gNavi li span:hover{
	/*background-color: rgba(0,0,0,0.05);*/
	color: #00a057;
}
.gNavi li.add span{
	/*background-color: rgba(0,0,0,0.05);*/
	color: #00a057;
}
.gNavi li.add::before {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-bottom: 8px solid #00bb66;
  z-index: 10;
}
.mageInner{
	width: 100%;
    height: auto;
    float: left;
    display: inline-block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	padding: 40px 45px 20px;
}
.menuWork{
	width: 50%;
    height: auto;
    float: left;
    display: inline-block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
}
.menuMsg{
	width: 33.3333%;
    height: auto;
    float: left;
    display: inline-block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
}
.megaBottom{
	width: 100%;
    height: auto;
    float: left;
    display: flex;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	justify-content: flex-start;
	align-items: center;
	padding: 20px 0;
	font-size: 14px;
	color: #FFF;
	font-weight: 600;
	background-image: url("../images/arrow_left_wht.png");
background-size: 14px auto;
background-position: 100% center;
background-repeat: no-repeat;
}
.gNavi li.mega01 span,.gNavi li.mega02 span{
	background-image: url("../images/arrow_down_grn.png");
background-size: 14px auto;
background-position: center 90%;
background-repeat: no-repeat;
}
.gNavi li.mega01 span:hover,.gNavi li.mega01.add span,.gNavi li.mega02 span:hover,.gNavi li.mega02.add span{
	background-position: center 120%;
}
.bg01{
	background-image: url("../images/bg01.jpg");
background-size: cover;
background-position: center center;
background-repeat: repeat;
}
.secTitle{
	display: block;
float: left;
height: auto;
width: 100%;
font-size: 86px;
text-align: center;
line-height: 1.2em;
	font-family: 'Playfair Display', serif;
	font-weight: 500;
}
.secInner{
	width: 100%;
    height: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
}
.topLeftBox01{
	width: 50%;
    height: auto;
    float: left;
    display: flex;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
	padding-left: 20px;
	background-color: #FFF;
	z-index: 2;
	justify-content: flex-end;
	align-items: center;
}
.ls005{
	letter-spacing: 0.05em;
}
.ls008{
	letter-spacing: 0.08em;
}
.ls15{
	letter-spacing: 0.15em;
}
.topRightPh01{
	width: 50%;
	height: auto;
	float: right;
	background-color: #f2f2f2;
	z-index: 1;
	background-image: url("../images/processing01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.uLine{
	text-decoration: underline;
}

.flex.between {
    justify-content: space-between;
}
.fixFootSecSp{
	display: none;
}

.topSelectWork{
	width: 50%;
    height: auto;
    float: left;
    display: flex;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	padding: 100px 50px 60px;
	justify-content: center;
	align-items: center;
	border-bottom: #eee 1px solid;
	border-right: #eee 1px solid;
}
.topSelectCnt{
	width: 100%;
	max-width: 600px;
	position: relative;
}
.uLineBoldGrn{
	border-bottom: #00a057 3px solid;
}
.halfPhBox{
	width: 50%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
}
.halfTextBox{
	width: 50%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
	padding-left: 60px;
}
.yarigaiPh01{
	width: 80%;
	position: relative;
	max-width: 400px;
}
.yarigaiPh01 img{
	width: 100%;
	height: auto;
}
.yarigaiPh02{
	width: 100%;
	position: absolute;
	max-width: 300px;
	bottom: 0px;
	right: 0;
}
.yarigaiPh02 img{
	width: 100%;
	height: auto;
}
.barTitle{
	width: 100%;
height: auto;
float: left;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
position: relative;
display: block;
	
}
.barTitle p {
  display: inline;
  font-size: 24px;
  line-height: 1.4em;
  font-weight: 600;
  background-color: #00a057;
  color: #FFF;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  box-sizing: border-box;
  padding: 3px 10px;
}

.fullCnt{
	width: 100%;
	position: relative;
}
.bgLgrn{
	background-color: #def7ea;
}
.checkList{
	width: 100%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
}
.checkList li{
	width: 100%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
	font-size: 20px;
	font-weight: 600;
	font-family: 'Shippori Mincho', serif;
	color: #00a057;
	line-height: 1.4;
	margin-bottom: 20px;
	padding-left: 40px;
	background-image: url("../images/icon_check_red.png");
background-size: 28px auto;
background-position: left top;
background-repeat: no-repeat;
}
.halfBox{
	width: 50%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
}

.topSelectEn{
	font-family: 'Playfair Display', serif;
font-weight: 500;
	color: #00a057;
	font-size: 48px;
	line-height: 1;
	position: absolute;
	z-index: 2;
	top: -36px;
	left: 0;
}
.scrollBar{
	width: 2px;
	height: 120px;
	position: absolute;
	bottom: 0px;
	right: 60px;
	background-color: #000;
	z-index: 100;
}
.scrollBar::before{
	content: 'SCROLL';
	writing-mode: vertical-rl;
	font-family: 'Roboto', sans-serif;
	font-weight: 900;
	font-size: 12px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 3px;
}
.heroInner{
	width: 100%;
	height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: absolute;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding-left: 60px;
	padding-top: 120px;
	top: 0;
	left: 0;
	z-index: 100;
}
.heroCc{
	width: 95%;
	position: relative;
	max-width: 800px;
}
.heroText01{
	font-size: 36px;
	line-height: 1.2;
	padding: 5px 10px;
	display: inline-block;
	background-color: #FFF;
	color: #000;
	font-weight: 800;
	letter-spacing: 0.15em;
	margin-bottom: 10px;
	font-family: 'Noto Sans JP',sans-serif;
}
.heroText02{
	font-size: 48px;
	line-height: 1.2;
	padding: 5px 10px;
	display: inline-block;
	background-color: #FFF;
	color: #000;
	font-weight: 800;
	letter-spacing: 0.15em;
	font-family: 'Noto Sans JP', sans-serif;
}
.bisBox{
	width: 100%;
	height: 250px;
	float: left;
	display: block;
	background-color: #f2f2f2;
	background-image: url("../images/biz01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	position: relative;
	transition-property: all;
transition: 0.2s ease;
}
.bisBox::before{
	content: '';
	width: 0;
	height: 250px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background-color: rgba(0,0,0,0.0);
	transition-property: all;
transition: 0.2s ease;
}
.bisBox.t02{
	background-image: url("../images/biz02.jpg");
}
.bisBox.t03{
	background-image: url("../images/biz03.jpg");
}
.bisBox:hover::before{
	width: 100%;
}
.bisBox.t01:hover::before{
	background-color: rgba(255,173,14,0.70);
}
.bisBox.t02:hover::before{
	background-color: rgba(143,153,204,0.70);
}
.bisBox.t03:hover::before{
	background-color: rgba(243,166,174,0.70);
}
.bisBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.bg-c01{
	background-color: #222;
}
.reasonBox{
	width: calc(50% - 60px);
	padding: 60px 0 0 80px;
	box-sizing: border-box;
	margin-bottom: 100px;
	border-top: #000 2px solid;
	position: relative;
}
.rsNumber{
	width: 80px;
	height: 60px;
	font-size: 60px;
	line-height: 1;
	background-color: #FFF;
	position: absolute;
	top: -30px;
	left: 0;
	font-family: 'Roboto', sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	color: #00a057;
}
.solutionText dl{
	width: 100%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
	padding-left: 30px;
}
.solutionText dl dt{
	width: 180px;
	float: left;
	margin-top: 10px;
}
.solutionText dl dd{
	width: calc(100% - 180px);
	float: left;
}
.solutionText dl dd .text36{
	line-height: 1.6em;
	font-size: 34px;
}
.topSolutionBox{
	width: 25%;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
}
.topSolutionBox img{
	width: 100%;
	height: auto;
}
.topLeftBox01 .cnt{
	width: 100%;
	box-sizing: border-box;
	position: relative;
	max-width: 640px;
	padding-right: 60px;
}
.colmnBox{
	width: 22%;
	margin-left: 1.5%;
	margin-right: 1.5%;
	margin-bottom: 40px;
	position: relative;
	transition-property: all;
transition: 0.2s ease;
}
.colmnBox:hover{
	opacity: 0.8;
}
.colmnBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.colmnBox .ph100{
	margin-bottom: 30px;
}
.dayText{
	width: 100%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	text-align: right;
	font-size: 12px;
	font-weight: 600;
	font-family: 'Roboto', sans-serif;
	letter-spacing: 0;
	color: #999;
	margin-top: 20px;
}
.bgRecruit{
	background-image: url("../images/recruit_bg.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.recruitCc{
	width: 100%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	text-align: center;
}
.recruitCc img{
	width: 100%;
	height: auto;
	max-width: 800px;
}
.bottomContact {
  width: 100%;
	
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  background-color: #222;
  padding: 80px 0;
  transition-property: all;
  transition: 0.2s ease;
	overflow: hidden;
	
}
.bottomContact::before {
	content: '';
	border-top: 180px solid #333;
  border-right: 180px solid #333;
  border-bottom: 180px solid transparent;
	border-left: 180px solid transparent;
	position: absolute;
	top: 0;
	right: 0;
	transition-property: all;
  transition: 0.2s ease;
}
.bottomContact:hover {
	
}
.bottomContact:hover::before {
	right: -60px;
}
.bottomContact a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
	
}
.footBottom{
	width: 100%;
height: auto;
	float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
box-sizing: border-box;
position: relative;
padding-top: 40px;
padding-bottom: 20px;
	border-top: #000 1px solid;
	margin-top: 60px;
}
.footSubMenu {
  display: block;
  float: left;
  height: auto;
  width: 50%;
  font-size: 12px;
  text-align: left;
  line-height: 20px;
  color: #000;
}
.footSubMenu a {
  color: #000;
  text-decoration: none;
  margin-right: 20px;
}
.menuSpTitle{
	float: left;
height: auto;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
font-size: 28px;
line-height: 1em;
padding: 20px 0px;
text-decoration: none;
color: #000;
position: relative;
transition-property: all;
transition: 0.2s ease;
font-weight: 900;
	font-family: 'Roboto', sans-serif;
	letter-spacing: 0.10em;
}
.menuSpTitle a{
	text-decoration: none;
	color: #000;
	transition-property: all;
transition: 0.2s ease;
	
}
.menuSpTitle:hover a{
	background-color: rgba(0,0,0,0.10);
}
.menuSpTitle:first-letter{
	color: #00a057;
}
.menuSpTitle span {
  color: #000;
  font-size: 0.6em;
	position: relative;
	top: -1px;
  font-weight: 600;
  margin-left: 15px;
  letter-spacing: 0.1em;
	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
ul.menuSpList{
	float: left;
height: auto;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	margin-bottom: 15px;
}
ul.menuSpList li{
	float: left;
height: auto;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	margin-bottom: 15px;
}
ul.menuSpList li a{
	float: left;
height: auto;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
	font-size: 15px;
	line-height: 1.8em;
	padding-left: 1em;
	color: #666;
	text-decoration: none;
}
ul.menuSpList li a:hover{
	color: #000;
	text-decoration: underline;
}
.halfBox.menuDisNon{
	opacity: 0;
filter: alpha(opacity=0);
-ms-filter: "alpha( opacity=0 )";
top: -40px;
	transition-property: all;
transition-duration: .4s;
transition-timing-function: ease;
transition-delay: .4s;
}
.halfBox.menuDisNon.t-delay{
	transition-delay: .6s;
}
.openMenu .halfBox.menuDisNon {
  opacity: 1.0;
  filter: alpha(opacity=100);
  -ms-filter: "alpha( opacity=100 )";
  top: 0px;
}
.bisTitle{
    float: left;
    height: auto;
    width: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1;
    padding: 20px 40px;
	padding-right: 50px;
    background-color: #FFAD0E;
    position: absolute;
    bottom: 20px;
    right: 20px;
    color: #FFF;
    font-weight: 600;
	border-radius: 40px;
	background-image: url("../images/arrow_left_wht.png");
background-size: 14px auto;
background-position: calc(100% - 20px) center;
background-repeat: no-repeat;
	z-index: 3;
}
.t02 .bisTitle{
    background-color: #8F99CC;
}
.t03 .bisTitle{
    background-color: #f3a6ae;
}
.menuContactBtn {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
  margin-top: 40px;
	opacity: 0;
filter: alpha(opacity=0);
-ms-filter: "alpha( opacity=0 )";
top: -40px;
	transition-property: all;
transition-duration: .4s;
transition-timing-function: ease;
transition-delay: .8s;
}
.openMenu .menuContactBtn {
  opacity: 1.0;
  filter: alpha(opacity=100);
  -ms-filter: "alpha( opacity=100 )";
  top: 0px;
}
.menuContactBtn a {
  width: 100%;
  height: auto;
  display: inline-block;
  text-align: center;
  line-height: 50px;
  font-size: 28px;
  color: #fff;
  text-decoration: none;
  transition-property: all;
  transition: 0.2s ease;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  font-weight: 900;
  padding: 20px 0;
  position: relative;
  letter-spacing: 0.1em;
  background-color: #222;
  background-repeat: no-repeat;
	font-family: 'Roboto', sans-serif;
}
.menuContactBtn a:hover {
	background-color: #444;
}
.slick-slide img{
	width: 100%;
	height: auto;
	border-radius: 16px;
}
.slick-slide{
	box-sizing: border-box;
	padding: 20px 30px;
}
.solInfo{
	width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
	padding: 0 0px;
}
.solInfo .text18Center .uLine{
	border-bottom: #FFAD0E 2px solid;
	position: relative;
	display: inline-block;
	padding-bottom: 4px;
	text-decoration: none;
}
.solInfo .text14{
	text-align: justify;
}
.bgHalfBottomColor{
	position: relative;
}
.bgHalfBottomColor::before{
	content: '';
	width: 0%;
	height: 1px;
	position: absolute;
	top: 120px;
	left: 0;
	background-color: #d2d2d2;
}
.bgHalfBottomColor::after{
	content: '';
	width: calc(50% + 390px);
	height: 2px;
	position: absolute;
	bottom: 120px;
	right: 0;
	background-color: #000;
}
.bgHalfTopColor{
	position: relative;
}
.bgHalfTopColor::before{
	content: '';
	width: 100%;
	height: 160px;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #f2f2f2;
}
.section-lineup {
  overflow: hidden;
	padding-top: 30px;
}
.section-lineup .inner {
  margin: 0 auto;
  width: 100%;
	max-width: 1200px;
	padding-left: 60px;
	padding-right: 60px;
	box-sizing: border-box;
}
.section-lineup .slick-list {
  overflow: visible;
}
.section-lineup .slick-initialized .slick-slide{
	position: relative;
	transition-property: all;
transition: 0.2s ease;
}
.section-lineup .slick-initialized .slick-slide::after{
	content: 'MORE';
	font-size: 12px;
	line-height: 1;
	font-weight: 900;
	position: absolute;
	bottom: 0;
	right: 30px;
	color: #FFAD0E;
	letter-spacing: 0;
}
.section-lineup .slick-initialized .slick-slide:hover{
	opacity: 0.8;
}
.section-lineup .slick-initialized .slick-slide a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.tegakiImg{
	width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
	text-align: center;
}
.tegakiImg img{
	width: 100%;
	height: auto;
	max-width: 800px;
}
.pageTop{
	width: 100%;
float: left;
	margin-top: 120px;
	position: relative;
}
.pageTop::before{
	
}
.pageTop.p-about{
	
}
.pageImage{
	width: calc(100% - 400px);
	height: 400px;
	float: left;
	position: relative;
	background-image: url("../images/processing01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.p-about .pageImage{
	background-image: url("../images/about/ph04.jpg");
}
.p-food .pageImage{
	background-image: url("../images/biz01.jpg");
}
.p-iyaku .pageImage{
	background-image: url("../images/biz02.jpg");
}
.p-cosme .pageImage{
	background-image: url("../images/biz03.jpg");
}
.p-reason .pageImage{
	background-image: none;
	background-color: #f2f2f2;
}
.p-processing .pageImage{
	background-image: url("../images/processing01.jpg");
}
.p-solution .pageImage{
	background-image: url("../images/solution/ph01.jpg");
}
.p-company .pageImage{
	background-image: url("../images/company/ph01_02.jpg");
}
.pageTopText{
	width: 400px;
	height: 400px;
	float: left;
	position: relative;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	padding-left: 60px;
}
.bc{
	color: #000;
display: block;
float: left;
font-size: 11px;
height: auto;
letter-spacing: 0.05em;
line-height: 20px;
margin-bottom: 40px;
margin-top: 40px;
width: 100%;
box-sizing: border-box;
	text-align: left;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.bc a{
	color: #999;
	text-decoration: none;
}
.bc a:hover{
	color: #000;
	text-decoration: underline;
}
.aboutCanBox {
  width:100%;
  padding: 60px 80px 0 80px;
  box-sizing: border-box;
  margin-bottom: 100px;
  border-top: #000 2px solid;
  position: relative;
	float: left;
}
.bgBcLine{
	position: relative;
}
.bgBcLine::after {
  content: '';
  width: calc(50% + 640px);
  height: 1px;
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #000;
	z-index: 1;
}
.bgBcLine::before {
	content: '';
  width: 20px;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #FFF;
	z-index: 10;
}
.lh24{
	line-height: 2.4em;
}
.lineBox{
	width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
	border: #000 2px solid;
	padding: 40px;
}
.lineBox.c-org{
	border-color: #FFAD0E;
}
.lineBox.c-ppl{
	border-color: #8F99CC;
}
.lineBox.c-pnk{
	border-color: #f3a6ae;
}
.lineBox.c-grn{
	border-color: #00a057;
}
.lineBox.lineFat{
	border-width: 4px;
}
.pdTitle{
	width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
	font-size: 24px;
	line-height: 1.2;
	font-weight: 600;
}
.pdTitle span{
	border-bottom: #000 4px solid;
	display: inline-block;
	padding-bottom: 5px;
}
.pdTitle span.c-org{
	border-bottom-color: #FFAD0E;
}
.pdTitle span.c-ppl{
	border-bottom-color: #8F99CC;
}
.pdTitle span.c-pnk{
	border-bottom-color: #f3a6ae;
}
.pdTitle span.c-grn{
	border-bottom-color: #00a057;
}
.pdLineTitle{
	width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.2;
	font-weight: 600;
}
.pdLineTitle::before{
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	background-color: #000;
	top: calc(50% - 1px);
	left: 0;
	display: inline-block;
	z-index: 0;
}
.pdLineTitle span{
	background-color: #FFF;
	display: inline-block;
	padding-right: 20px;
	z-index: 1;
	position: relative;
}
.pdLineTitle span.t-grey{
	background-color: #f8f8f8;
}
.pdPh{
	width: 200px;
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
}
.pdPh img{
	width: 100%;
	height: auto;
}
.pdList{
	width: calc(100% - 200px);
  height: auto;
  float: left;
  display: block;
  position: relative;
	box-sizing: border-box;
	padding-left: 60px;
}
.pdList ul{
	width: 100%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
}
.pdList ul li{
	width: 50%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 15px;
	padding-left: 15px;
}
.pdList ul li::before{
	content: '';
	width: 4px;
	height: 4px;
	background-color: #aaa;
	position: absolute;
	top: 10px;
	left: 0;
	display: inline-block;
}
.bisBox.bottomMenu{
	width: 50%;
	height: 250px;
	
}
.org{
	color: #FFAD0E;
}
.ppl{
	color: #8F99CC;
}
.pnk{
	color: #f3a6ae;
}
.jissekiBox{
	width: 22%;
	margin-left: 1.5%;
	margin-right: 1.5%;
	margin-bottom: 40px;
	position: relative;
	transition-property: all;
transition: 0.2s ease;
}
.jissekiBox:hover{
	opacity: 0.8;
}
.jissekiBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.jissekiBox .ph100{
	margin-bottom: 30px;
}
.jissekiBox .text14{
	margin-top: 5px;
	color: #666;
}
.barTitle{
	width: 100%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	font-size: 24px;
	line-height: 1.4;
	border-bottom: #000 1px solid;
	padding-bottom: 30px;
	font-weight: 600;
	margin-bottom: 30px
}
.answerList{
	width: 100%;
height: auto;
float: left;
display: block;
position: relative;
box-sizing: border-box;
}
.answerList ul{
	width: 100%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
}
.answerList ul li{
	width: 100%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 15px;
	padding-left: 15px;
}
.answerList ul li::before{
	content: '';
	width: 4px;
	height: 4px;
	background-color: #aaa;
	position: absolute;
	top: 10px;
	left: 0;
	display: inline-block;
}
.answerList.t-mission ul li{
	font-size: 20px;
}
.answerList.t-mission ul li::before{
	top: 13px;
	background-color: #00a057;
}
.lineBox.nonBdGrey{
	border-width: 0px;
	background-color: #f2f2f2;
}
.solBox{
	width: 100%;
	height: 300px;
	float: left;
	display: block;
	background-color: #f2f2f2;
	background-image: url("../images/solution03.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	position: relative;
	transition-property: all;
transition: 0.2s ease;
	
}
.solBox::before{
	content: '';
	width: 0;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background-color: rgba(0,0,0,0.0);
	transition-property: all;
transition: 0.2s ease;
}

.solBox:hover::before{
	width: 100%;
	background-color: rgba(0,0,0,0.30);
}
.solBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.solList{
	width: 100%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	border-top: #000 1px solid;
}
.solList dl{
	width: 100%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	display: flex;
	border-bottom: #000 1px solid;
	padding: 60px 0;
	transition-property: all;
transition: 0.2s ease;
}
.solList dl::before{
	content: '';
position: absolute;
top: calc(50% - 10px);
right: 30px;
width: 20px;
height: 20px;
border-right: 2px solid #FFAD0E;
border-bottom: 2px solid #FFAD0E;
transform: rotate(-45deg);
transition: all ease 0.1s;
	transition-property: all;
transition: 0.2s ease;
}
.solList dl:hover{
	background-color: rgba(0,0,0,0.05);
}
.solList dl:hover::before{
	right: 20px;
}
.solList dl a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.solList dl dt{
	width: 200px;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	
}
.solList dl dt img{
	width: 100%;
	height: auto;
}
.solList dl dd{
	width: calc(100% - 200px);
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	padding-left: 60px;
	padding-right: 80px;
}
.jireiBox {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  position: relative;
  box-sizing: border-box;
  border: #000 1px solid;
  padding: 60px;
	margin-bottom: 40px;
}
.jireiBox dl {
  width: 100%;
  height: auto;
  float: left;
  position: relative;
  box-sizing: border-box;
}
.jireiBox dl dt{
	width: 40%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	
}
.jireiBox dl dt img{
	width: 100%;
	height: auto;
}
.jireiBox dl dd{
	width: 60%;
  height: auto;
  float: left;
  position: relative;
	box-sizing: border-box;
	padding-left: 60px;
}
.comBox{
	width: 100%;
	height: 300px;
	float: left;
	display: block;
	background-color: #f2f2f2;
	background-image: url("../images/company/ceo01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	position: relative;
	transition-property: all;
transition: 0.2s ease;
	margin-bottom: 40px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	box-sizing: border-box;
	padding-left: 60px;
}
.comBox .cnt{
	z-index: 8;
}
.comBox.t01{
	background-image: url("../images/company/ceo01_yoko.jpg");
	
}
.comBox.t02{
	background-image: url("../images/company/profile01_yoko.jpg");
	
}
.comBox.t03{
	background-image: url("../images/company/history01_yoko.jpg");
	
}
.comBox::before{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background-color: rgba(0,0,0,0.30);
	transition-property: all;
transition: 0.2s ease;
}

.comBox:hover::before{
	width: 100%;
	background-color: rgba(0,0,0,0.15);
}
.comBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.comBox .bisTitle{
	background-color: #00a057;
}
.cmMore{
	position: absolute;
	z-index: 8;
	font-size: 12px;
	line-height: 1;
	padding: 10px 30px;
	color: #FFF;
	border: #fff 1px solid;
	bottom: 20px;
	right: 20px;
	font-family: 'Roboto', sans-serif;
	font-weight: 900;
	border-radius: 30px;
	background-image: url("../images/arrow_left_wht.png");
background-size: 12px auto;
background-position: 90% center;
background-repeat: no-repeat;
	transition-property: all;
transition: 0.2s ease;
}
.comBox:hover .cmMore{
	background-color: #00a057;
	border-color:#00a057;
}
.whtBox {
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  background-color: #FFF;
  padding: 40px 60px;
    padding-bottom: 40px;
}
.whtBox.pageHead {
  padding-bottom: 0px;
  top: -80px;
  z-index: 10;
}
.pageHead .text30{
	font-size: 26px;
	line-height: 1.8;
}
.box800.w-960{
	max-width: 960px;
}
.ceoName {
  width: 100%;
  text-align: right;
  font-size: 20px;
  line-height: 1;
  font-weight: 600;
  float: left;
	letter-spacing: 0.1em;
}
.ceoName span {
  font-size: 0.7em;
  margin-right: 10px;
  font-weight: 500;
}
.companyList {
  width: 100%;
  height: auto;
  display: block;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  padding-bottom: 0px;
  margin-bottom: 40px;
}
.companyList dl {
  width: 100%;
  height: auto;
  display: block;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  
}
.companyList dl dt {
  width: 25%;
  height: auto;
  display: table;
  float: left;
  box-sizing: border-box;
  position: relative;
  font-size: 15px;
  line-height: 2em;
  font-weight: 600;
  color: #313131;
}
.companyList dl dd {
  width: 75%;
  height: auto;
  display: table;
  float: left;
  box-sizing: border-box;
  position: relative;
  font-size: 15px;
  line-height: 2em;
 
	padding-bottom: 40px;
  margin-bottom: 40px;
	border-bottom: #000 1px solid;
}
.companyList dl dd.nonBd {
	border-bottom-width: 0;
}
.mapBox{
	width: 100%;
height: auto;
display: block;
float: left;
position: relative;
box-sizing: border-box;
}
.mapBox iframe {
  width: 100%;
}
.historyList {
    width: 100%;
    height: auto;
    float: left;
    box-sizing: border-box;
    position: relative;
    display: block;
}
.historyList dl {
    width: 100%;
    height: auto;
    float: left;
    box-sizing: border-box;
    position: relative;
    display: block;
}
.historyList dl::before {
    content: "";
    width: 1px;
    height: 100%;
    background-color: #d2d2d2;
    position: absolute;
    bottom: 0;
    left: 10px;
}
.historyList dl:first-child::before {
    height: calc(100% - 20px);
}
.historyList dl:last-child::before {
    height: 20px;
    top: 0;
    bottom: initial;
}
.historyList dl dt {
    width: 160px;
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    display: block;
    letter-spacing: 0.03em;
    font-size: 16px;
    line-height: 1.8;
    color: #000;
    padding-left: 30px;
    padding-top: 1px;
	font-weight: bold;
}
.historyList dl dt::before {
    content: "";
    width: 8px;
    height: 8px;
    background-color: #00a057;
    position: absolute;
    top: 12px;
    left: 6.5px;
    border-radius: 0;
}
.historyList dl dd {
    width: calc(100% - 160px);
    height: auto;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    display: block;
    padding-bottom: 0px;
    margin-bottom: 40px;
	font-size: 16px;
	line-height: 1.8;
	
	color: #000;
	letter-spacing: 0.1em;
}
.historyList dl:last-child dd{
	padding-bottom: 0px;
    margin-bottom: 0px;
}
ol.policyText{
	width: 100%;
    height: auto;
    float: left;
	padding-left: 25px;
	 box-sizing: border-box;
    position: relative;
    display: block;
}
ol.policyText li{
	list-style-type: decimal;
	font-size: 15px;
	line-height: 2.4;
	margin-bottom: 20px;
}
.sitemapLink{
	width: 100%;
  height: auto;
  display: block;
  float: left;
  box-sizing: border-box;
  position: relative;
	font-size: 18px;
	line-height: 2;
	font-weight: 600;
	margin-bottom: 40px;
}
.sitemapLink.nonLink{
	margin-bottom: 10px;
}
.sitemapLink a{
	color: #000;
	text-decoration: underline;
}
.sitemapLink a:hover{
	color: #666;
}
.sitemapSubLink{
	width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.sitemapSubLink li{
	width: 33.3333%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
display: block;
	margin-bottom: 10px;
}
.sitemapSubLink li a{
	width: 100%;
  height: auto;
  display: block;
  float: left;
  box-sizing: border-box;
  position: relative;
	font-size: 15px;
	line-height: 1.6;
	font-weight: normal;
	padding-left: 1em;
	color: #666;
	text-decoration: none;
}
.sitemapSubLink li a:hover{
	color: #999;
	text-decoration: underline;
}