@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.1em;
	line-height: 1.8em;
}
body{
	
}
.wrapper{
	overflow: hidden;
}
::selection {
    background-color: #B89C02;
    color: #FFF;/* Safari */
}

::-moz-selection {
	background-color:#B89C02;
	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 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{
	border-radius: 16px;
}
.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;
	
	transition-property: all;
	transition: 0.2s ease;
}
.header.on {
    
}
.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: 300px;
	height: 120px;
	display:flex;
	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: 0px;
	margin-left: 0px;
	box-sizing: border-box;
	justify-content: center;
	align-items: center;
	background-color: #FCDC2E;
	top: 0;
	left: 0;
}

.on .headLogo{
	
}
.headLogo img{
	height: 36px;
	width:230px;
	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: 80px;
	padding-bottom: 120px;
	background-color: #FCDC2E;
}

.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: 600;
    padding: 10px 0;
    position: relative;
    letter-spacing: 0.1em;
    max-width: 240px;
	
	border-radius: 0px;
	padding-left: 20px;
	background-color: #000;
}
.moreBtn a::before{
	content: '';
	width: 30px;
	height: 1px;
	background-color: #FFF;
	position: absolute;
	top: 50%;
	right: 0;
	transition-property: all;
    transition: 0.2s ease;
}
.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{
    
}
.moreBtn a:hover::before{
    width: 20px;
}
.moreBtn a.wht:hover{
    background-color: #FFF;
    color: #774b65;
}
.moreBtn a.wht:hover::before{
    background-color: #774b65;
}
.moreBtn.t-blkLine a{
	background-color: transparent;
    border: #000 1px solid;
	color: #000;
}
.moreBtn.t-blkLine a::before{
	background-color: #000;
}
.moreBtn.t-blkLine a:hover{
	background-color: #000;
	color: #FFF;
}
.moreBtn.t-blkLine a:hover::before{
	background-color: #FFF;
}
.moreBtn.t-whtLine a{
	background-color: transparent;
    border: #FFF 1px solid;
	color: #FFF;
}
.moreBtn.t-whtLine a::before{
	background-color: #FFF;
}
.moreBtn.t-big a{
	max-width: 300px;
}
.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: #000;
}
.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:100%;
	height:auto;
	float:left;
	display:inline-block;
	font-size:12px;
	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: 'Cormorant Garamond', serif;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.1em;
	margin-top: 10px;
}
.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.5em;
}
.text30Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:30px;
	text-align:center;
	line-height:1.5em;
}
.text36{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:36px;
	text-align:left;
	line-height:1.5em;
}
.text36Center{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	font-size:36px;
	text-align:center;
	line-height:1.5em;
    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: #FDE668;
	
	max-height: 900px;
	padding-right: 100px;
	padding-bottom: 120px;
	/*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;
}
.mainTitle span{
	font-size: 0.8em;
}
.fontJp01{
	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
.fontJp02{
	font-family: 'Shippori Mincho', serif;
}
.fontEn01{
	font-family: 'Cormorant Garamond', serif;
	font-family: 'Roboto', sans-serif;
}
.fontEn02{
	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;
	
}
.footLogo img{
	width: 260px;
	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{
	
}

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


.bd300{
	font-weight: 300;
}
.bd200{
	font-weight: 200;
}
.bd700{
	font-weight: 700;
}
.bd900{
	font-weight: 900;
}
/*MABUCHI*/
#menuButton {
    display: block;
    height: 100px;
    right: 0px;
    position: fixed;
    top: 0px;
    width: 100px;
    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: #FCDC2E;
    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;
	display: none;
}
#menuButton.active::before {
	content: 'CLOSE';
}
#menuButton::before {
}
#menuButton.on {
    
}

#menuButton span {
    display: block;
    background-color: #333;
    width: 50px;
    height: 2px;
    position: absolute;
    left: 25px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
	border-radius: 10px;
}
#menuButton span:first-child {
    top: 35px;
}
#menuButton span:nth-child(2) {
    margin-top: -1px;
    top: 50%;
	width: 40px;
}
#menuButton span:last-child {
    bottom: 35px;
	width: 30px;
}
#menuButton.active span{
      
}
#menuButton.active span:first-child {
    -webkit-transform: translateY(14px) rotate(45deg);
    -moz-transform: translateY(14px) rotate(45deg);
    -ms-transform: translateY(14px) rotate(45deg);
    transform: translateY(14px) rotate(45deg);
}
#menuButton.active span:nth-child(2) {
    opacity: 0;
}
#menuButton.active span:last-child {
    -webkit-transform: translateY(-14px) rotate(-45deg);
    -moz-transform: translateY(-14px) rotate(-45deg);
    -ms-transform: translateY(-14px) rotate(-45deg);
    transform: translateY(-14px) rotate(-45deg);
	width: 50px;
}
#overlay{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 1100;
    background-color: #FDE668;
    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;
	background-image: url("../images/bg_m02.png");
background-size: 100% auto;
background-position: center bottom;
background-repeat: no-repeat;
}
#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: 1200px;
    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;
}

.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: 500;
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
}
.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: #000;
	font-weight: 600;
	margin-bottom: 20px;
	position: relative;
}
.footTitle a{
	color: #000;
	text-decoration: none;
}
.footTitle a:hover{
	text-decoration: underline;
}
.fontMc{
	font-family: 'Shippori Mincho', 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;
}

.ls005{
	letter-spacing: 0.05em;
}
.ls008{
	letter-spacing: 0.08em;
}
.ls15{
	letter-spacing: 0.15em;
}

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

.fullCnt{
	width: 100%;
	position: relative;
}
.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;
	
	top: 0;
	left: 0;
	z-index: 100;
}
.heroCc{
	width: 100%;
	position: absolute;
	bottom: 0px;
	right: 0px;
	box-sizing: border-box;
	padding-bottom: 40px;
	padding-right: 60px;
	text-align: right;
}
.heroCc img{
	width: 100%;
	height: auto;
	max-width: 1000px;
}
.headTel{
	width: auto;
height: 100px;
display: block;
position: absolute;
float: left;
transition-property: all;
transition: 0.2s ease;
opacity: 1.0;
filter: alpha(opacity=100);
box-sizing: border-box;
justify-content: flex-start;
align-items: center;
background-color: #f8f8f8;
	right: 100px;
	top: 0;
	color: #000;
	text-align: left;
	flex-wrap: wrap;
	font-size: 24px;
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 20px;
	font-weight: 500;
	letter-spacing: 0.05em;
}
.headTel span{
	width: 100%;
	font-size: 12px;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
}
.lh20{
	line-height: 2.0em;
}
.lh24{
	line-height: 2.4em;
}
.topText{
	line-height: 3.2em;
	font-weight: 500;
}
.topLogoCenter{
	display: block;
    float: left;
    height: auto;
    width: 100%;
	text-align: center;
}
.topLogoCenter img{
	width: 240px;
	height: auto;
}
.secTitle{
	display: block;
float: left;
height: auto;
width: 100%;
font-size: 48px;
line-height: 1em;
	font-family: 'Cormorant Garamond', serif;
	font-family: 'Roboto', sans-serif;
	color: #000;
	font-weight: 600;
	position: relative;
}
.secTitle span{
	color: #333;
	margin-left: 15px;
	padding-left: 15px;
	font-size: 16px;
	font-family: 'Shippori Mincho', serif;
	font-family: 'Noto Sans JP',sans-serif;
	font-weight: 600;
	position: relative;
}
.secTitle span::before{
	content: '';
	width: 8px;
	height: 1px;
	background-color: #999;
	position: absolute;
	top: 50%;
	left: -4px;
}
.secTitle.wht,.secTitle.wht span{
	color: #FFF;
}
.secTitle.wht span::before{
	background-color: #FFF;
}
.secTitle.blk,.secTitle.blk span{
	color: #000;
}
.secTitle.t-big{
	font-size: 56px;
}
.secTitle.t-min{
	font-size: 24px;
}
.secTitle.t-center{
	text-align: center;
}
.bgSky{
	background-color: #5788c2;
}
.bgM01{
	background-image: url("../images/bg_m02.png");
background-size: 100% auto;
background-position: center bottom;
background-repeat: no-repeat;
}
.box30{
	width: 30%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
}
.box40{
	width: 40%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
}
.box50{
	width: 50%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
}

.box60{
	width: 60%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
}
.box70{
	width: 70%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
}
.t-qcdse{
	position: relative;
	top: -80px;
	margin-bottom: -80px;
}
.topBisPh{
	width: calc(100% - 60px);
	height: 300px;
	float: left;
	position: relative;
	background-image: url("../images/solution/sec_bg01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	max-width: calc(50% + 540px);
	border-radius: 0 32px 32px 0;
}
.topBisPh.t-business01{
	background-image: url("../images/business/sec_bg01.jpg");
}
.topBisPh.t-solution01{
	background-image: url("../images/solution/sec_bg01.jpg");
}
.topBisPh.t-solution03{
	background-image: url("../images/solution/sec_bg03.jpg");
}
.topBisPh02{
	width: calc(100% - 60px);
	height: 300px;
	float: right;
	position: relative;
	background-image: url("../images/business/sec_bg01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	max-width: calc(50% + 540px);
	border-radius: 32px 0 0 32px;
}
.topBisPh02.t-solution02{
	background-image: url("../images/solution/sec_bg02.jpg");
}
.bgTopSky{
	position: relative;
}
.bgTopSky::before{
	content: '';
	width: 100%;
	height: 50%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #FDE668;
}
.bgBottomSky{
	position: relative;
}
.bgBottomSky::before{
	content: '';
	width: 100%;
	height: 50%;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #FDE668;
}
.whtLineBox{
	width: 100%;
    height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	border: #FFF 1px solid;
	padding: 40px;
}
.column3::after {
  content: "";
  display: block;
  width: calc(33.3333% - 30px);
  height: 0;
}
.pdBox{
	width: calc(33.3333% - 30px);
	margin-bottom: 60px;
	position: relative;
	transition-property: all;
transition: 0.2s ease;
}
.pdBox:hover{
	/*opacity: 0.8;*/
}
.pdBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 11;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.pdInfo{
	width: 100%;
	height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	margin-top: 30px;
}
.catTag{
	width: 100%;
	height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
}
.catTag a,.catTag span{
	width: auto;
height: auto;
font-size: 12px;
line-height: 24px;
padding: 0 10px;
display: inline-block;
position: relative;
color: #999;
letter-spacing: 0.05em;
text-decoration: none;
box-sizing: border-box;
border: #999 1px solid;
transition-property: all;
transition: 0.2s ease;
	margin-right: 5px;
	margin-bottom: 5px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}
.pdBox .catTag{
	margin-top: 10px;
}
.bgYlwMlogo{
    background-image: url("../images/bg_m02.png");
    background-size: 100% auto;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-color: #FDE668;
}
.bgYlwMlogo02{
    background-image: url("../images/bg_m02.png");
    background-size: 100% auto;
    background-position: center calc(100% - 80px);
    background-repeat: no-repeat;
    background-color: #FDE668;
}
.bgBlueMlogo{
	background-image: url("../images/bg_m01.png");
background-size: 100% auto;
background-position: center bottom;
background-repeat: no-repeat;
	background-color: #5788c2;
}
.topRecruitLeft{
	width: 50%;
	height: 600px;
    float: left;
    box-sizing: border-box;
	position: relative;
	background-image: url("../images/top/recruit_bg.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	border-radius: 0 16px 16px 0;
	top: -80px;
	margin-bottom: -80px;
}
.recPointBox{
	width: 30.3333%;
	position: relative;
}
.recPointBox .ph100 {
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	margin-bottom: 20px;
}
.recPointBox .ph100 img{
	border-radius: 100%;
}
.t-recruitCc{
	position: relative;
	left: -33px;
}
.t-recruitCc img{
	position: relative;
	max-width: 380px;
}
.newsList{
	width: 100%;
	height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	border-top: #d2d2d2 1px solid;
	
}
.newsList dl{
	width: 100%;
	height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	border-bottom: #d2d2d2 0px dotted;
	padding: 30px 0;
	transition-property: all;
transition: 0.2s ease;
}
.newsList dl:hover{
	background-color: rgba(0,0,0,0.05);
}
.newsList dl a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 11;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}

.newsList dl dt{
	width: 120px;
	height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	font-size: 13px;
	line-height: 26px;
	color: #999;
	font-weight: 500;
}
.newsList dl dd{
	width: calc(100% - 120px);
	height: auto;
    float: left;
    box-sizing: border-box;
	position: relative;
	font-size: 16px;
	line-height: 26px;
	color: #333;
}
.newsList.p-news{
	border-top: #000 1px solid;
}
.newsList.p-news dl{
	border-bottom: #d2d2d2 1px dotted;
	padding: 40px 0;
}
.newsList.p-news dl:last-child{
	border-bottom: #000 1px solid;
}
.bgBottomFoot{
	position: relative;
}
.bgBottomFoot::before{
	content: '';
	width: 100%;
	height: 50%;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #FCDC2E;
}
.bottomContact{
	width: calc(100% - 40px);
height: 240px;
margin: 0 auto;
max-width: 1080px;
-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: #000;
	
	display: flex;
	align-items: center;
	padding-left: 60px;
	transition-property: all;
transition: 0.2s ease;
}
.bottomContact::before {
  content: '';
  width: 100px;
  height: 1px;
  background-color: #FFF;
  position: absolute;
  top: 50%;
  right: 0;
  transition-property: all;
  transition: 0.2s ease;
}
.bottomContact:hover{
	background-color: #333;
}
.bottomContact a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 11;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.bottomContact .box800{
	display: table;
	max-width: 900px;
}
.contactBtn{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
}
.contactBtn a{
	width: 100%;
height: auto;
display: flex;
line-height: 40px;
font-size: 16px;
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: 600;
padding: 5px 0;
position: relative;
letter-spacing: 0.05em;
max-width: 240px;
font-family: 'Cormorant Garamond', serif;
border-radius: 0px;
padding-left: 20px;
	border: #FFF 1px solid;
	
}
.contactBtn a::before{
	content: '';
width: 30px;
height: 1px;
background-color: #FFF;
position: absolute;
top: 50%;
right: 0;
transition-property: all;
transition: 0.2s ease;
}
.contactBtn a:hover{
	background-color: #FFF;
	color: #000;
}
.contactBtn a:hover::before{
	background-color: #000;
	width: 20px;
}
.contactLeftBox{
	padding-left: 40px;
	border-left: #FFF 1px solid;
	
}
.footBottom{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
	margin-top: 60px;
}
.footSubMenu{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
	color: #FFF;
	font-size: 13px;
	line-height: 1.6em;
	font-family: 'Noto Sans JP',sans-serif;
}
.footSubMenu a{
	color: #FFF;
	text-decoration: none;
	margin-right: 20px;
}
.footSubMenu a:hover{
	text-decoration: underline;
}
.footSns{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
	margin-top: 20px;
}
.footSns a{
	margin-right: 15px;
}
.footSns img{
	width: 40px;
	height: 40px;
}
.sdgsBn{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
}
.sdgsBn img{
	width: 240px;
	height: auto;
}
.sdgsBn.p-concept img{
	width: 300px;
	height: auto;
	border: #009dda 1px solid;
}
.cnt{
	position: relative;
}
.sideBtn{
	width: 150px;
height: auto;
float: right;
display: block;
text-align: left;
position: relative;
	top: -40px;
	margin-bottom: -40px;
}
.sideBtn a{
	width: 100%;
height: auto;
display: flex;
line-height: 38px;
font-size: 14px;
color: #000;
text-decoration: none;
transition-property: all;
transition: 0.2s ease;
box-sizing: border-box;
font-weight: 600;
padding: 0px 0;
position: relative;
letter-spacing: 0.05em;
max-width: 150px;
font-family: 'Cormorant Garamond', serif;
border-radius: 0px;
padding-left: 15px;
	border: #000 1px solid;
}
.sideBtn a::before {
  content: '';
  width: 30px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 0;
  transition-property: all;
  transition: 0.2s ease;
}
.sideBtn a:hover{
	background-color: #000;
	color: #FFF;
}
.sideBtn a:hover::before {
	background-color: #FFF;
}
.sideBtn.t-whtLine a{
	color: #FFF;
	border-color: #FFF;
}
.sideBtn.t-whtLine a::before{
	background-color: #FFF;
}
.sideBtn.t-whtLine a:hover{
	color: #000;
	background-color: #FFF;
}
.sideBtn.t-whtLine a:hover::before{
	background-color: #000;
}
.bizBox{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
	transition-property: all;
transition: .2s ease;
}
.bizBox:hover{
	opacity: 0.8;
}
.bizBox 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: .2s ease;
}
.bizBox img{
	width: 100%;
	height: auto;
	float: left;
}
.bizMore{
	width:100%;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	box-sizing: border-box;
	padding-left: 30px;
	font-size: 24px;
	line-height: 1;
	background-color: #FFF;
	color: #000;
	position: absolute;
	bottom: 0;
	right: 0;
	max-width: 300px;
	font-weight: 500;
}
.bizMore::before{
	content: '';
width: 30px;
height: 1px;
background-color: #000;
position: absolute;
top: 50%;
right: 0;
transition-property: all;
transition: 0.2s ease;
}
.bizMore.t-blue{
	background-color: #477294;
	color: #FFF;
}
.bizMore.t-blue::before{
	background-color: #FFF;
}
.bizMore.t-blk{
	background-color: #000;
	color: #FFF;
}
.bizMore.t-blk::before{
	background-color: #FFF;
}
.heroText{
	width: 100%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
	font-size: 72px;
	color: #FFF;
	line-height: 1;
	margin-top: 10px;
	margin-bottom: 10px;
	font-weight: 600;
	letter-spacing: 0.10em;
	text-shadow: 0px 0px 20px rgba(0,0,0,0.80);
	
}
.heroText span{
	display: inline-block;
}
.heroText span.subTxt{
	font-size: 0.6em;
}
.menuLeft{
	width: 30%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
}
.menuRight{
	width: 70%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
}
.menuLogo img{
	width: 220px;
	height: auto;
}
.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: 600;
	font-family: 'Cormorant Garamond', serif;
	font-family: 'Roboto', sans-serif;
	letter-spacing: 0.05em;
}
.menuSpTitle a{
	text-decoration: none;
	color: #000;
	transition-property: all;
transition: 0.2s ease;
	
}
.menuSpTitle:hover a{
	background-color: rgba(0,0,0,0.05);
}
.menuSpTitle span {
  color: #000;
  font-size: 13px;
	position: relative;
	top: -1px;
  font-weight: 600;
  margin-left: 15px;
  letter-spacing: 0.05em;
	font-family: 'Noto Sans JP',sans-serif;
}
.halfBox{
	width: 50%;
height: auto;
float: left;
display: block;
text-align: left;
position: relative;
}
.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;
}
.menuContactBtn{
	width: 100%;
	position: relative;
	
}
.menuContactBtn a{
	width: 100%;
height: auto;
display: block;
line-height: 40px;
font-size: 30px;
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: 600;
padding: 25px 0;
position: relative;
letter-spacing: 0.05em;
font-family: 'Cormorant Garamond', serif;
	font-family: 'Roboto', sans-serif;
border-radius: 0px;
padding-left: 60px;

	text-align: left;
	background-color: #000;
}
.menuContactBtn a::before{
	content: '';
width: 40px;
height: 1px;
background-color: #FFF;
position: absolute;
top: 50%;
right: 0;
transition-property: all;
transition: 0.2s ease;
}
.menuContactBtn a span{
	color: #FFF;
font-size: 13px;
position: relative;
top: 0px;
font-weight: 600;
margin-left: 15px;
letter-spacing: 0.05em;
font-family: 'Noto Sans JP',sans-serif;
}
.menuContactBtn.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;
}
.menuContactBtn.menuDisNon.t-delay{
	transition-delay: 0.9s;
}
.openMenu .menuContactBtn.menuDisNon {
  opacity: 1.0;
  filter: alpha(opacity=100);
  -ms-filter: "alpha( opacity=100 )";
  top: 0px;
}
.pageTop{
	margin-top: 100px;
}
.bc{
	color: #000;
display: block;
float: left;
font-size: 11px;
height: auto;
letter-spacing: 0.05em;
line-height: 20px;

margin-top: 10px;
width: 100%;
box-sizing: border-box;
	text-align: right;
	font-weight: 500;
	letter-spacing: 0.08em;
}
.bc a{
	color: #666;
	text-decoration: none;
}
.bc a:hover{
	color: #000;
	text-decoration: underline;
}

.pageHeadPh{
	width: calc(100% - 100px);
	height: 360px;
	float: left;
	position: relative;
	background-image: url("../images/top/sec_bg01.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	
}
.pageHeadPh.p-concept{
	background-image: url("../images/concept/head.jpg");
}
.pageHeadPh.p-about{
	background-image: url("../images/about/head.jpg");
}
.pageHeadPh.p-company{
	background-image: url("../images/company/head.jpg");
}
.sky{
	color: #5788c2;
}
.blue{
	color: #477294;
}
.conceptPh{
	width: calc(50% - 30px);
	position: relative;
	margin-bottom: 60px;
}
.ulWht{
	position: relative;
	border-bottom: #FFF 2px solid;
	padding-bottom: 5px;
}
.ulBlue{
	position: relative;
	border-bottom: #000 2px solid;
	padding-bottom: 5px;
}
.flowPh{
	width: calc(33.3333% - 30px);
	position: relative;
	margin-bottom: 40px;
}
.flowNumber{
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0px;
	left:0px;
	text-align: center;
	font-size: 40px;
	line-height: 1;
	color: #000;
	font-weight: 800;
	z-index: 10;
	background-color:#f2f2f2 ;
}
.fukidashiBox{
    width: 100%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
    background-color: #edf4fa;
	background-color: #f2f2f2;
    padding: 40px;
    padding-bottom: 20px;
	border-radius: 16px;
}
.fukidashiBox:before {
  content: "";
  position: absolute;
  top: -40px;
  left: 75%;
  margin-left: -20px;
  border: 20px solid transparent;
  border-bottom: 20px solid #f2f2f2;
}
.greyBox{
	width: 100%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
    background-color: #f2f2f2;
	padding: 40px;
	border-radius: 16px;
}
.bgLblue{
	background-color: #74b1fc;
}
.lineBox{
	width: 100%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	padding: 40px;
	border: #000 1px solid;
}
.brandBox{
	width: 100%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.brandBox li{
	width: 33.3333%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 10px;
}
.brandBox li img{
	width: 100%;
	height: auto;
}
.whtBox{
	width: 100%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
    background-color: #FFF;
	padding: 40px;
}
.tuyomiBox{
	width: 100%;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
}
.tuyomiBox dt{
	width: 120px;
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	font-size: 80px;
	line-height: 1;
	color: #000;
	top: -8px;
	font-family: 'Roboto', sans-serif;
	font-weight: 600;
}
.tuyomiBox dd{
	width: calc(100% - 120px);
    height: auto;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	border-bottom: #000 2px solid;
	padding-bottom: 60px;
}
.tuyomiLink{
	width: 30.3333%;
	position: relative;
}
.tuyomiLink.colum2{
	width: 48%;
	margin-bottom: 40px;
}
.boxSubTitle{
	display: block;
float: left;
height: auto;
width: 100%;
font-size: 18px;
text-align: left;
line-height: 1em;
	font-weight: 600;
}
.boxSubTitle span{
	background-color: #000;
	color: #FFF;
	padding: 5px 15px;
}
.boxSubTitle.t-blk span{
	background-color: #000;
}
.lineBd{
	width: 100%;
    height: 1px;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	border-bottom: #d2d2d2 1px solid;
}
.blk{
	color: #000;
}
.fontNormal{
	font-weight: normal;
}
.halfSecPhRight{
	width: 50%;
height: 500px;
float: left;
box-sizing: border-box;
position: relative;
background-image: url("../images/top/recruit_bg.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
	
}
.halfSecPhRight.t-message{
	background-image: url("../images/top/sec_ceo.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-company{
	background-image: url("../images/company/bg_company.jpg");
	border-radius: 0 32px 32px 0;
}
.halfSecPhRight.t-staff{
	background-image: url("../images/top/sec_staff.jpg");
	border-radius: 0 32px 32px 0;
}
.halfLeftCnt{
	width: 100%;
    float: right;
    display: block;
	box-sizing: border-box;
    position: relative;
	max-width: 560px;
	padding-left: 20px;
	padding-right: 60px;
}
.halfRightCnt{
	width: 100%;
    float: left;
    display: block;
	box-sizing: border-box;
    position: relative;
	max-width: 560px;
	padding-left: 60px;
	padding-right: 20px;
}
.aboutMenu{
	width: 100%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	flex-wrap: wrap;
	justify-content: space-between;
}
.aboutMenu li{
	width: 18%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
}
.aboutMenu li a{
	width: 100%;
    height: 60px;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: center;
    position: relative;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	line-height: 1.4em;
	color: #000;
	border-bottom: #000 2px solid;
	text-decoration: none;
	transition-property: all;
transition: 0.2s ease;
	font-weight: 600;
}
.aboutMenu li a::before{
	content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 6px);
	right: 5px;
	transition-property: all;
transition: 0.2s ease;
}
.aboutMenu li a:hover{
	background-color: #000;
	color: #FFF;
}
.aboutMenu li a:hover::before{
	border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
}
.aboutMenu.column2 li{
	width: 48%;
}
.workListBox{
	width: 30.3333%;
	position: relative;
	margin-bottom: 60px;
}
.postYtBox{
	width: 100%;
height: auto;
margin: 0 auto;
max-width: 680px;
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;
}
.flowArrow{
	position: relative;
}
.flowArrow::before {
	content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: 0 10px;
  border-bottom: 4px solid #477294;
  border-right: 4px solid #477294;
  transform: rotate(45deg);
	position: absolute;
	bottom: -22px;
	left: calc(50% - 20px);
}
.dashBox{
	width: 100%;
height: auto;
float: left;
display: block;
box-sizing: border-box;
text-align: left;
position: relative;
padding: 20px;
	border:#000 1px dotted;
}
.dashBox dl{
	width: 100%;
height: auto;
float: left;
display: block;
box-sizing: border-box;
text-align: left;
position: relative;
	margin-bottom: 25px;
}
.dashBox dt{
	width: 100px;
height: auto;
float: left;
display: block;
box-sizing: border-box;
text-align: left;
position: relative;
	font-size: 14px;
	line-height: 1.8em;
	font-weight: 600;
	font-family: 'Noto Sans JP', sans-serif;
}
.dashBox dd{
	width: calc(100% - 100px);
height: auto;
float: left;
display: block;
box-sizing: border-box;
text-align: left;
position: relative;
	font-size: 14px;
	line-height: 1.8em;
	font-weight: normal;
	font-family: 'Noto Sans JP', sans-serif;
}
.sqHead{
	position: relative;
	padding-left: 20px;
}
.sqHead::before{
	content: '';
	width: 10px;
	height: 10px;
	background-color: #999;
	position: absolute;
	top: calc(50% - 5px);
	left: 0;
}
.checkList{
	width: 100%;
height: auto;
float: left;
display: block;
box-sizing: border-box;
text-align: left;
position: relative;
}
.checkList li{
	width: 100%;
height: auto;
float: left;
display: block;
box-sizing: border-box;
text-align: left;
position: relative;
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.8em;
	font-family: 'Noto Sans JP', sans-serif;
	padding-left: 24px;
	background-image: url("../images/about/icon_check.png");
background-size: 18px 18px;
background-position: left center;
background-repeat: no-repeat;
}
.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;
}
.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: 120px;
    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;
	font-family: 'Roboto', sans-serif;
}
.historyList dl dt::before {
    content: "";
    width: 8px;
    height: 8px;
    background-color: #999;
    position: absolute;
    top: 12px;
    left: 6.5px;
    border-radius: 0;
}
.historyList dl dd {
    width: calc(100% - 120px);
    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;
}
.mapBox{
	width: 100%;
height: auto;
display: block;
float: left;
position: relative;
box-sizing: border-box;
}
.mapBox iframe {
  width: 100%;
}
.mapPd{
	position: relative;
	padding-left: 1.3em;
}
.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;
}
.barTitleCenter{
	display: block;
float: left;
height: auto;
width: 100%;
font-size: 24px;
text-align: center;
line-height: 1.8em;
	background-color: #5788c2;
	color: #FFF;
	font-weight: 600;
	padding: 10px 15px;
	box-sizing: border-box;
}
.sky02{
	color: #019cd9;
}
.dotList{
	width: 100%;
height: auto;
display: block;
float: left;
position: relative;
box-sizing: border-box;
}
.dotList li{
	width: 100%;
height: auto;
display: block;
float: left;
position: relative;
box-sizing: border-box;
	margin-bottom: 10px;
	padding-left: 1.2em;
	font-size: 15px;
line-height: 1.8em;
}
.dotList li::before{
	content: "";
width: 8px;
height: 8px;
position: absolute;
top: 10px;
left: 0;
background-color: #999;
}
.dotList.t-sdgs li::before{
	background-color: #019cd9;
}
.sdgsIconList{
	width: 100%;
height: auto;
display: flex;
float: left;
position: relative;
box-sizing: border-box;
	justify-content: space-between;
	flex-wrap: wrap;
}
.sdgsIconList li{
	width: 48%;
height: auto;
display: block;
float: left;
position: relative;
box-sizing: border-box;
	margin-bottom: 15px;
}
.sdgsIconList li img{
	width: 100%;
height: auto;
	float: left;
}
.lBlueBox {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  box-sizing: border-box;
  text-align: left;
  position: relative;
  background-color: #edf4fa;
  padding: 40px;
}
.bgBlk {
  background-color: #000;
}
.bgLgrey{
	background-color: #f2f2f2;
}
.company_client {
  display: flex;
  flex-wrap: wrap;
}
.company_client li:not(:last-child)::after {
  content: "、";
}
.moreText{
	width: 100%;
height: auto;
float: left;
text-align: left;
position: relative;

}
.moreText a{
width: auto;
height: auto;
line-height: 40px;
font-size: 14px;
color: #000;
text-decoration: none;
transition-property: all;
transition: 0.2s ease;
box-sizing: border-box;
font-weight: 600;
	padding-right: 40px;
position: relative;
letter-spacing: 0.05em;

font-family: 'Cormorant Garamond', serif;
border-radius: 0px;

}
.moreText a::before {
  content: '';
  width: 30px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 0;
  transition-property: all;
  transition: 0.2s ease;
}
.moreText.t-wht a{
	color: #FFF;
}
.moreText.t-wht a::before{
	background-color: #FFF;
}
.pageNavi{
	width: 100%;
  height: auto;
  box-sizing: border-box;
  position: relative;
	float: left;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.pageNavi li{
	display: block;
	margin-left: 5px;
	margin-right: 5px;
}
.pageNavi li a{
	width: 40px;
	height: 40px;
	display: inline-block;
	box-sizing: border-box;
	border: #000 1px solid;
	color: #000;
	text-align: center;
	line-height: 36px;
	text-decoration: none;
	font-weight: 600;
	
}
.pageNavi li.active a{
	background-color: #000;
	color: #FFF;
}
.pageNavi li a:hover{
	background-color: #000;
	color: #FFF;
}
.postNavi{
	width: 100%;
  height: auto;
  box-sizing: border-box;
  position: relative;
	float: left;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: #000 1px solid;
	padding-top: 60px;
}
a.prevBtn{
line-height: 2em;
font-size: 14px;
color: #000;
text-decoration: none;
transition-property: all;
transition: 0.2s ease;
box-sizing: border-box;
font-weight: 500;
padding: 5px 20px;
position: relative;
letter-spacing: 0.08em;
border-radius: 0px;
align-items: center;
justify-content: flex-start;
font-family: 'Cormorant Garamond', serif;
	border: #000 1px solid;
	padding-left: 40px;
}
a.prevBtn::before {
  content: '';
  width: 20px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0px;
  background-color: #000;
}
a.nextBtn{
line-height: 2em;
font-size: 14px;
color: #000;
text-decoration: none;
transition-property: all;
transition: 0.2s ease;
box-sizing: border-box;
font-weight: 500;
padding: 5px 20px;
position: relative;
letter-spacing: 0.08em;
border-radius: 0px;
align-items: center;
justify-content: flex-end;
font-family: 'Cormorant Garamond', serif;
	border: #000 1px solid;
	padding-right: 40px;
}
a.nextBtn::before {
  content: '';
  width: 20px;
  height: 1px;
  position: absolute;
  top: 50%;
  right: 0px;
  background-color: #000;
}
.pjSpecList{
	width: 100%;
  height: auto;
  box-sizing: border-box;
  position: relative;
	float: left;
	display: flex;
	flex-wrap: wrap;
	background-color: #f2f2f2;
	padding: 40px;
	padding-bottom: 10px;
}
.pjSpecList dl{
	width: 100%;
  height: auto;
  box-sizing: border-box;
  position: relative;
	float: left;
	padding-right: 20px;
	margin-bottom: 30px;

}
.pjSpecList dl dt{
	display: block;
float: left;
height: auto;
width: 120px;
font-size: 14px;
text-align: left;
line-height: 28px;
	font-weight: 600;
	letter-spacing: 0.08em;
	margin-bottom: 5px;
	font-family: 'Noto Sans JP', sans-serif;
}
.pjSpecList dl dd{
	display: block;
	float: left;
	height: auto;
	width: calc(100% - 120px);
	font-size: 16px;
	text-align: left;
	line-height: 28px;
	font-weight: normal;
	letter-spacing: 0.08em;
	color: #000;
}
.bgBottomGrey{
	position: relative;
}
.bgBottomGrey::before{
	content: '';
	width: 100%;
	height: 50%;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #f2f2f2;
}
.bgTopGrey{
	position: relative;
}
.bgTopGrey::before{
	content: '';
	width: 100%;
	height: 50%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #f2f2f2;
}
.solutionMenu{
	width: 100%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	flex-wrap: wrap;
	justify-content:center;
}
.solutionMenu li{
	width: 23%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	margin-right: 1%;
	margin-right: 1%;
}
.solutionMenu li a{
	width: 100%;
    height: 60px;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	align-items: center;
	justify-content: flex-start;
	padding-left: 15px;
	font-size: 15px;
	line-height: 1.4em;
	color: #000;
	border: #000 1px solid;
	text-decoration: none;
	transition-property: all;
transition: 0.2s ease;
}
.solutionMenu li a::before{
	content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 6px);
	right: 5px;
	transition-property: all;
transition: 0.2s ease;
}
.solutionMenu li a:hover{
	background-color: #000;
	color: #FFF;
}
.solutionMenu li a:hover::before{
	border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
}
.newsTitle{
	display: block;
float: left;
height: auto;
width: 100%;
font-size: 30px;
text-align: left;
line-height: 1.5em;
position: relative;
	padding-bottom: 30px;
	border-bottom: #000 1px solid;
	font-weight: 600;
	margin-bottom: 60px;
}
.postBox {
  width: 100%;
  height: auto;
  display: block;
  float: left;
  padding-bottom: 60px;

}
.postBox p {
  font-size: 15px;
  line-height: 2.2em;
  word-break: break-all;
  text-decoration: none;
  margin: 5px 0 20px;
  text-align: left;
  text-indent: 0px;
  text-transform: none;
  white-space: normal;
  word-spacing: 0px;
	letter-spacing: 0.15em;
}
.postBox h1{
	font-size: 26px;
	line-height: 1.4;
	position: relative;
	padding-left: 0.8em;
	font-family: 'Shippori Mincho', serif;
	margin-bottom: 5px;
}
.postBox h1::before {
  content: '';
  width: 6px;
  height: 6px;
  position: absolute;
  top: 17px;
  left: 0px;
	background-color: #000;
}
.postBox h2{
	font-size: 22px;
	line-height: 1.4;
	font-family: 'Shippori Mincho', serif;
	padding-left: 0.8em;
	border-left: #000 2px solid;
	margin-bottom: 5px;
}
.postBox h3{
	font-size: 20px;
	line-height: 1.6;
	font-family: 'Shippori Mincho', serif;
}
.postBox h4{
	font-size: 16px;
	line-height: 1.6;
}
.postBox h5{
	font-size: 18px;
	line-height: 1.6;
	position: relative;
	padding-left: 1.2em;
}
.postBox h5::before{
	content: '';
width: 14px;
height: 1px;
background-color: #999;
position: absolute;
top: 15px;
left: 0;
}
.postBox img {
  max-width: 100%;
  height: auto;
}
.brandSubBox{
	width: 100%;
height: auto;
float: left;
box-sizing: border-box;
text-align: left;
position: relative;
display: flex;

flex-wrap: wrap;
}
.brandSubBox li {
  width: 33.3333%;
  height: auto;
  float: left;
  display: block;
  box-sizing: border-box;
  padding-right: 15px;
  margin-bottom: 15px;
	font-size: 16px;
	line-height: 1.5em;
	font-family: 'Noto Sans JP', sans-serif;
}
.w-btn.moreBtn a{
	width: 48%;
	margin-right: 2%;
}
.bgYlw{

    background-color: #FDE668;
}
.csBox{
	width: 30.3333%;
  height: auto;
  float: left;
  display: block;
  box-sizing: border-box;
	position: relative;
}
.csBox img{
	width: 100%;
	height: auto;
	float: left;
}
.csMore{
	width:auto;
	height: 60px;
	font-size: 24px;
	line-height: 30px;
	box-sizing: border-box;
	position: absolute;
	bottom: 0;
	right: 0;
	background-color: #FDE668;
	padding: 15px 40px 15px 25px;
	font-weight: 600;
}
.csMore::before{
	content: '';
width: 25px;
height: 1px;
background-color: #000;
position: absolute;
top: 50%;
right: 0;
transition-property: all;
transition: 0.2s ease;
}
.csMore span{
	font-size: 16px;
	margin-right: 5px;
}
.bgImg01{
	background-image: url("../images/top/sec_jinzai.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.blkBox{
	width: 100%;
  height: auto;
  float: left;
  display: block;
  box-sizing: border-box;
	position: relative;
	padding: 60px;
	background-color: rgba(0,0,0,0.86);
	border-radius: 16px;
}
.phGallery{
	width: 23%;
  height: auto;
  display: block;
  box-sizing: border-box;
	position: relative;
	margin-bottom: 40px;
}
.phGallery .ph100{
	margin-bottom: 10px;
}
.phGallery .ph100 img{
	transform:rotate(-2deg);
	/*border: #FFF 6px solid;*/
	 box-sizing: border-box;
	box-shadow: 3px 3px 10px rgba(0,0,0,0.20);
}
.phGallery.t02 .ph100 img{
	transform:rotate(2deg);
}
.phGallery.nonRotate .ph100 img{
	transform:rotate(0deg);
	box-shadow: 3px 3px 10px rgba(0,0,0,0.0);
}
.column3 .phGallery{
	width: 31.3333%;
}
.headEntryBtn{
	width: 260px;
height: 100px;
display: block;
position: absolute;
float: left;
transition-property: all;
transition: 0.2s ease;
opacity: 1.0;
filter: alpha(opacity=100);
box-sizing: border-box;
background-color: #000;
	right: 100px;
	top: 0;
	color: #FFF;
	text-align: left;
	flex-wrap: wrap;
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 30px;
	letter-spacing: 0.05em;
	font-size: 30px;
line-height: 1em;
font-family: 'Cormorant Garamond', serif;
	font-family: 'Roboto', sans-serif;
font-weight: 600;

}
.headEntryBtn:hover{
	background-color: #333;
}
.headEntryBtn::before {
  content: '';
  width: 30px;
  height: 1px;
  background-color: #FFF;
  position: absolute;
  top: 50%;
  right: 0;
  transition-property: all;
  transition: 0.2s ease;
}
.headEntryBtn a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 11;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.headEntryBtn span {
  margin-left: 15px;
  padding-left: 15px;
  font-size: 13px;
  font-family: 'Noto Sans JP',sans-serif;
  font-weight: 600;
  position: relative;
}
.headEntryBtn span::before {
  content: '';
  width: 8px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: -4px;
}
.rewardMenu{
	width: 100%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	flex-wrap: wrap;
	justify-content: space-between;

}
.rewardMenu li{
	width: 100%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	margin-bottom: 30px;
}
.rewardMenu li a{
	width: 100%;
    height: 60px;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	align-items: center;
	justify-content: flex-start;
	padding-left: 0px;
	font-size: 18px;
	line-height: 1.4em;
	color: #000;
	text-decoration: none;
	transition-property: all;
transition: 0.2s ease;
	border-bottom: #000 2px solid;
	font-weight: 500;
	padding-left: 60px;
}
.rewardMenu li a::before{
	content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 6px);
	right: 5px;
	transition-property: all;
transition: 0.2s ease;
}
.rewardMenu li a:hover{
	background-color: #000;
	color: #FFF;
}
.rewardMenu li a:hover::before{
	border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
}
.rewardMenu li a span{
	position: absolute;
	font-size: 36px;
	left: 0;
	font-weight: 600;
	font-family: 'Roboto', sans-serif;
}
table.basicTable {
  width: 100%;
  box-sizing: border-box;
  border: #000 1px solid;
}
table.basicTable tr {
  border-bottom: #000 1px solid;
}
table.basicTable th {
  width: 25%;
  box-sizing: border-box;
  border-right: #000 1px solid;
  padding: 8px;
  font-weight: 600;
  font-size: 16px;
  line-height: 23px;
  text-align: center;
}
table.basicTable td {
  padding: 8px;
  width: 20%;
  font-weight: 400;
  font-size: 16px;
  line-height: 23px;
  text-align: left;
	border-right: #000 1px solid;
}
.flowRightArrow{
	position: relative;
}
.flowRightArrow::before {
	content: "";
  position: absolute;
  top: 50%;
  left: calc(100% + 15px);
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #000;
}
.iconLink a{
	color: #000;
	display: flex;
	align-items: center;
	text-decoration: none;
}
.iconLink a:hover{
	text-decoration: underline;
}
.iconLink a img{
	margin-left: 5px;
	width: 16px;
	height: 16px;
}
.bottomMenu{
	width: 48%;
    float: left;
    display: block;
	box-sizing: border-box;
    text-align: left;
    position: relative;
}
.bottomMenu li{
	width: 100%;
    float: left;
	display: block;
	margin-bottom: 20px;
	
}
.bottomMenu 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: 28px;
line-height: 1em;
padding: 20px 20px;
text-decoration: none;
color: #000;
position: relative;
transition-property: all;
transition: 0.2s ease;
font-weight: 600;
font-family: 'Roboto', sans-serif;
letter-spacing: 0.05em;
	border: #000 1px solid;
}
.bottomMenu li a::before {
  content: '';
  width: 30px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 0;
  transition-property: all;
  transition: 0.2s ease;
}
.bottomMenu li a span {
  
  font-size: 13px;
  position: relative;
  top: -1px;
  font-weight: 600;
  margin-left: 15px;
  letter-spacing: 0.05em;
  font-family: 'Noto Sans JP',sans-serif;
}
.bottomMenu li a:hover{
	background-color: #000;
	color: #FFF;
}
.bottomMenu li a:hover::before {
	 width: 20px;
	background-color: #FFF;
}
.mLogo{
	width: 100%;
    display: block;
	box-sizing: border-box;
    text-align: center;
    position: relative;
}
.mLogo img{
	width: 60px;
	height: auto;
}
.jobMenu{
	width: 100%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	flex-wrap: wrap;
	justify-content: space-between;

}
.jobMenu li{
	width: 48%;
    height: auto;
    float: left;
    display: flex;
	box-sizing: border-box;
    text-align: left;
    position: relative;
	margin-bottom: 20px;
}
.jobMenu li a{
	width: 100%;
    height: 70px;
    float: left;
    display: inline-block;
	box-sizing: border-box;
    text-align: center;
    position: relative;
	padding-left: 0px;
	font-size: 18px;
	line-height: 40px;
	color: #000;
	text-decoration: none;
	transition-property: all;
transition: 0.2s ease;
	border: #000 1px solid;
	font-weight: 500;
	padding-top: 15px;
	
}
.jobMenu li a::before{
	content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 6px);
	right: 5px;
	transition-property: all;
transition: 0.2s ease;
}
.jobMenu li a:hover{
	opacity: 0.8;
}
.jobMenu li a:hover::before{
	border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
}
.jobMenu li a span{
	
	font-size: 24px;
	font-weight: 600;
}
.jobMenu li.t-bantou a{
    background-color: #FFF;
}
.jobMenu li.t-syokunin a{
    background-color: #000;
	color: #FFF;
}
.jobMenu li.t-syokunin a::before{
	border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
}
.jobMenu li.t-bantou a:hover::before{
	border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}
.flowList{
	width: 100%;
    float: left;
    display: inline-block;
	box-sizing: border-box;
    text-align: center;
    position: relative;
}
.flowList li{
	width: 100%;
height: 60px;
float: left;
display: inline-block;
box-sizing: border-box;
text-align: center;
position: relative;
padding-left: 0px;
font-size: 18px;
line-height: 40px;
color: #000;
text-decoration: none;
transition-property: all;
transition: 0.2s ease;
border: #000 1px solid;
	background-color: #FFF;
font-weight: 500;
padding-top: 10px;
	margin-bottom: 60px;
}
.flowList li::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: 0 10px;
  border-bottom: 4px solid #000;
  border-right: 4px solid #000;
  transform: rotate(45deg);
  position: absolute;
  bottom: -32px;
  left: calc(50% - 20px);
}
.flowList li:last-child{
	margin-bottom: 0;
}
.flowList li:last-child::before {
	display: none;
}
.flowList li.t-syokunin{
	background-color: #000;
	color: #FFF;
}
.shienBox{
	width: 32.3333%;
	position: relative;
	box-sizing: border-box;
	border: #000 1px solid;
	border-radius: 8px;
	padding: 40px;
}
.voiceFukidashi{
	width: 100%;
    float: left;
    display: block;
	box-sizing: border-box;
    position: relative;
	background-color: #f2f2f2;
	padding: 20px;
	border-radius: 16px;
	margin-top: 20px;
}
.voiceFukidashi:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #f2f2f2;
}
.staffBox{
	width: 30.3333%;
  height: auto;
  float: left;
  display: block;
  box-sizing: border-box;
	position: relative;
	margin-bottom: 60px;
	transition-property: all;
transition: 0.2s ease;
}
.staffBox:hover{
	opacity: 0.85;
}
.staffBox a{
	position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 11;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
transition-property: all;
transition: 0.2s ease;
}
.staffBox img{
	width: 100%;
	height: auto;
	float: left;
}
.staffMore{
	width:100%;
	height: auto;
	float: left;
	font-size: 22px;
	line-height: 30px;
	box-sizing: border-box;
	position: relative;
	text-align: right;
	padding: 15px 40px 15px 0px;
	font-weight: 600;
}
.staffMore::before{
	content: '';
width: 25px;
height: 1px;
background-color: #000;
position: absolute;
top: 50%;
right: 0;
transition-property: all;
transition: 0.2s ease;
}
.staffMore span{
	font-size: 14px;
	margin-right: 10px;
}
.between.clomun03{
	
}
.between.clomun03::after {
  content: "";
  display: block;
  width: 30.3333%;
  height: 0;
}
.profName{
	width: 100%;
height: auto;
display: block;
box-sizing: border-box;
position: absolute;
padding: 20px;
background-color: rgba(0,0,0,0.86);
border-radius: 8px;
	bottom: 20px;
	right: 20px;
	color: #FFF;
	max-width: 280px;
}
.profName .text16,.profName .text30{
	text-align: left;
}
.halfRightCnt.p-staff{
	max-width: 640px;
}
.halfLeftCnt.p-staff{
	max-width: 640px;
}
.profThumPh{
	width: 120px;
	float: left;
	position: relative;
}
.profThumPh img{
	width: 120px;
	height: 120px;
	border-radius: 100%;
}
.profRightText{
	width: calc(100% - 120px);
height: auto;
float: left;
box-sizing: border-box;
position: relative;
	padding-left: 40px;
}
.halfSecPhRight.t-staff-saitou01{
	background-image: url("../images/staff/saitou/ph01.jpg");
	border-radius: 0 32px 32px 0;
}
.halfSecPhRight.t-staff-saitou02{
	background-image: url("../images/staff/saitou/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-mabuchi01{
	background-image: url("../images/staff/mabuchi/ph01.jpg");
	border-radius: 0 32px 32px 0;
	background-position: left center;
}
.halfSecPhRight.t-staff-mabuchi02{
	background-image: url("../images/staff/mabuchi/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-nishimura01{
	background-image: url("../images/staff/nishimura/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-nishimura02{
	background-image: url("../images/staff/nishimura/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-suzuki01{
	background-image: url("../images/staff/suzuki/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-suzuki02{
	background-image: url("../images/staff/suzuki/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-funayama01{
	background-image: url("../images/staff/funayama/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-funayama02{
	background-image: url("../images/staff/funayama/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-ochiai01{
	background-image: url("../images/staff/ochiai/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-ochiai02{
	background-image: url("../images/staff/ochiai/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-hirade01{
	background-image: url("../images/staff/hirade/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-hirade02{
	background-image: url("../images/staff/hirade/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-takasu01{
	background-image: url("../images/staff/takasu/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-takasu02{
	background-image: url("../images/staff/takasu/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.halfSecPhRight.t-staff-wakabayashi01{
	background-image: url("../images/staff/wakabayashi/ph01.jpg");
	border-radius: 0 32px 32px 0;
	
}
.halfSecPhRight.t-staff-wakabayashi02{
	background-image: url("../images/staff/wakabayashi/ph02.jpg");
	border-radius: 32px 0px 0px 32px;
}
.bottomProfTitle{
	width: auto;
	font-weight: 600;
font-family: 'Roboto', sans-serif;
letter-spacing: 0.05em;
	position: absolute;
	font-size: 16px;
	line-height: 20px;
	z-index: 10;
	text-overflow: #000;
	background-color: #FDE668;
	top: -10px;
	left: 40px;
	padding: 0 10px;
	
}