@charset "utf-8";
#wrapper{
	color:#333;}
.wrap1050{max-width:1050px; margin:auto;}
a:hover{ text-decoration:none;}
/***********************************************************
メインビジュアル画像
***********************************************************/
#main{
	background:url(../img/topimg.png) no-repeat 100% center;
	position:relative;
	width: 1050px;
    height: 573px;
	margin:auto;}

/***********************************************************
メインビジュアル内
***********************************************************/
#gnav{
	position: absolute;
    bottom: 25px;
    background-color:rgba(183, 111, 2, 0.5);
    width: 100%;
	font-size: 16px;}
	#gnav ul{
		width:96.5%;
		margin:auto;}
		#gnav li{
			display: inline;
			float: left;
			min-width: 220px;
			text-align: center;
			margin-right: 16px;}
		#gnav li:last-child{
			margin-right: 0px;}
			#gnav li a {
				display: block;
				background-color:rgba(106, 57, 6, 0.7);
				color: #ffffff;
				margin: .5em auto;
				line-height: 1;
				font-weight: 500;
				padding: .5em 2em;}
			#gnav li a:hover {
				background-color: rgba(255, 255, 255, 0.8);
					color: #a48b78;}
/***********************************************************
section2*about
***********************************************************/
#about{
    margin:50px auto;
	text-align:center;
	width:909px;}
	#about img{
		vertical-align: baseline;}
	#about h1{
		font-size:28px;
		font-weight:500;
		line-height: 1.3;
		margin-bottom:30px;
		letter-spacing: -1px;}
		#about h1 span{
			font-size:15px;
			margin: 0 5px;}
	#about h3{
		font-size: 28px;
		font-weight: 500;
		line-height: 1.3;
		border-top: 1px solid;
		border-bottom: 1px solid;
		margin: 50px auto;
		padding:50px 0;}
/***********************************************************
section3*merit
***********************************************************/
#merit{
    padding: 0;
	width:909px;
	text-align:center;
	margin:100px auto;}
	#merit h2{
		font-size: 27px;
		color: #FFFFFF;
		background-color:#8d93c8;
		letter-spacing:3px;
		line-height: 1.3;
		padding: 15px 0;
		text-align:center;
		margin:0 auto 50px;}
	#linButton {
		border: 5px solid #79a1cc; background: #e8f0f9; padding: 25px; box-sizing: border-box;}
    #linButton span{color: #fff;text-align: center;margin: 0 auto;padding: 15px;display: block;}
    #merit h2.pp{
	background-color: #7079c7;
	margin-bottom: 0;
	font-size: 30px;
	font-weight: bold;
}
		/*#linButton span:first-child{
			float:left;    text-align: left;}
		#linButton span:last-child{
			float:right;}*/
#linButton p.title_sub{
	line-height: 1; margin-top: .5em; letter-spacing: 1.5px; color:#555; font-size: 24px;
}



		/*#linButton a:hover{
			filter: alpha(opacity=80);
			-moz-opacity: 0.8;
			opacity: 0.8;
			outline:none;}
		#linButton h5{
			font-size: 25px; color: #000; font-weight: 600; line-height: 1; margin-top: 1em;}
		#linButton p{
			font-size: 16px; color: #000; line-height: 1; margin-top: .5em;}
		#linButton small{
			line-height: 1; margin-top: 50px; display:block;}*/
	#merit h4, #jirei p.introsub{
		font-size:27px;
	    margin: 0 auto 30px;
		position: relative;
		text-align: center;}
		#merit h4 span, #jirei p.introsub span{
			position: relative;
			z-index: 2;
			display: inline-block;
			margin: 0 4em;
			padding: 0 1em;
			background-color: #fff;
			text-align: left;}
		#merit h4::before, #jirei p.introsub::before {
			position: absolute;
			top: 50%;
			z-index: 1;
			content: '';
			display: block;
			width: 100%;
			height: 1px;
			background: #ccc;
			background: -webkit-linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);
			background: linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);}
	#graph{
		position:relative;
		z-index:5;}
	#matGry{
		background-color:#edf1b0;
		position:relative;
		z-index:1;
		top:-20px;
		padding:50px 0 30px;}
		#strong{
			font-size:36px;
			color:#956134;}
			#strong span{
				font-size:18px;
				margin: 0 5px;}
		.txtPoint{
			font-size: 27px;
			background-color: #FFFFFF;
			border-radius: 50px;
			line-height: 1;
			letter-spacing:-1px;
			padding: 30px 0;
			text-align: center;
			width: 70%;
			margin: 30px auto 50px;}
/***********************************************************
section4*solution
***********************************************************/
#solution{
    padding: 0 0 50px;
	background-color: rgba(141, 147, 200, 0.40);
	margin:50px auto 10px;
	position:relative;}
	#solution h3{
		font-size: 40px;
		color: #8d93c8;
		border:8px solid;
		background-color:#FFFFFF;
		border-radius:60px;
		line-height: 1;
		padding: 20px 0;
		text-align:center;
		width:58%;
		margin:0 auto 50px;
		position: absolute;
		top: -30px;
		left: 0;
		right: 0;}
	#innerBox{
		width:909px;
		margin:auto;
		padding-top: 100px;}
		.readmore {
			max-height: 0;
			width:auto;
			background-color: #ffffff;}
		.readmore dt{
			font-size:24px;
			background-color:#edf1b0;
			text-align:center;
			line-height: 1.3;
			position:relative;}
			.caseAicon{
				position:relative;
				width:100%;}
				.caseTxt{
					position:absolute;
					left:0;
					right:0;
					top:0;
					bottom:0;
					margin:auto;height: 52px;
    vertical-align: middle;
					color:#FFFFFF;
					line-height:1;
					letter-spacing:3px;
					font-family: Tahoma, Geneva, sans-serif;}
			.overview{
				display:block;
				padding:1.5em 0;
				letter-spacing:-1px;}
		.readmore dd{
			width:641px;
			margin:50px auto;
			font-size:14px;
			letter-spacing:-1px;}
		.titleBar:after{
			content:" ";
			background-image: url(../img/detail.png);
			background-repeat:no-repeat;
			width:156px;
			height:30px;
			position:absolute;
			bottom: -12px;
			right: 0;}
	a.open, a.close {
		background-color: #FFFFFF;
		text-align: center;
		padding: 0.3em 0;
		font-size: 16px;
		font-weight:600;}
	a.close {
		background-color: rgba(244,244,244,1.00);}
		#borderBox{
			padding: 8px;
			background-color: #ffffff;}
			#borderBox table{
				border: 1px solid #ffffff;
				width: 100%;
				font-size:14px;}
				#borderBox td,#borderBox th{
					border:1px solid;
					padding:1.5em 1em;
					line-height: 1;
					vertical-align: middle;
					text-align: center;}
				#borderBox td:first-child,#borderBox th:first-child{
					border-left:none;}
				#borderBox td:last-child,#borderBox th:last-child{
					border-right:none;}
				#borderBox th{
					font-weight:600;}
				#borderBox th span{
					font-size:11px;
					display:block;
					font-weight:normal;}
				#borderBox tr.bgPink td,#borderBox tr.bgPink th{
					background-color:#fdeff5;
					border-bottom:1px solid;}
		.fs1{
			font-size:1.1em;}
		#topBorder td,#topBorder th{
			border-top:none;}
		#bottomBorder td,#bottomBorder th{
			border-bottom:none;}

/***********************************************************
section5*contact
***********************************************************/
#contact{
	margin: 60px auto;
	width: 1050px;
	position: relative;}
	#contact h4{
		position: absolute;
		left: 60px;
		color: #ffffff;
		top: 70px;
		font-size: 40px;
		width: 500px;
		line-height: 1.3;}
	#contact p{
		position: absolute;
		left: 60px;
		color: #ffffff;
		bottom: 70px;
		font-size: 23px;
		width: 500px;
		width: 520px;
		letter-spacing: -1px;}
	#contact a{
		display: block;
		background-color: rgba(130, 0, 16, 0.8);
		color: #fff;
		border-radius: 30px;
		position: absolute;
		bottom: 50px;
		right: 50px;
		margin: auto;
		width: 310px;
		font-size: 16px;
		padding: .4em 1em;
		text-align: center;
		line-height: 1;}
		#contact a:hover {
			filter:alpha(opacity=80);
			-moz-opacity: 0.8;
			opacity: 0.8;}


/***********************************************************
sidenav
***********************************************************/
#wrapFull{ position:relative;}
#sidenav {
	left: 0;
	display:none;
	right: 0;
	bottom:0;
	z-index: 10;
	background-color: rgba(255, 255, 255, .8);
}
#sidenav h3 {
    font-size: 1.2em;
    margin-bottom: 8px;
    font-weight: 600;
    text-align: center;
	margin-top: 8px;
}
#sidenav ul {
	text-align:center;
}
#sidenav li {
	display:inline-block;
	vertical-align:bottom;
}
#sidenav a {
    background-color: #b70003;
    color: #fff;
    padding: .5em 2em;
	position:relative;
    border:1px solid;
}
#sidenav a:before {
	content: '\f105';
    position: absolute;
    right:10px;
    font-family: FontAwesome;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all .4s;
    transition: all .4s;

}
#sidenav a:hover {
    color: #b70003;
	background-color:#FFFFFF;
}

/***********************************************************
*jirei
***********************************************************/
#jirei{
    margin:50px auto;
	text-align:center;
	width:909px;}
	#jirei img{
		vertical-align: baseline;}
	#jirei h1{
		font-size:28px;
		font-weight:500;
		line-height: 1.3;
		margin-bottom:30px;
		letter-spacing: -1px;
		padding: 15px 0;
		color: #FFFFFF;
	  background-color: #8d93c8;}
		#jirei h1 span{
			font-size: 20px;
			color: #8d93c8;
			background-color: #FFFFFF;
			letter-spacing: 1px;
			border-radius: 60px;
			padding: 6px 16px;
			display: inline-block;
			margin-right: 10px;
			text-align: center;}
	#jirei h2{
			font-size:38px;
			font-weight:500;
			line-height: 1.3;
			margin-bottom:10px;
			letter-spacing: -1px;
			padding: 5px 0;
			color: #8d93c8}
	#jirei h3{
		font-size: 32px;
		color: #956134;
		font-weight: 500;
		line-height: 1.3;
		margin: 10px auto;
		padding:10px 0;}
	#jirei h4{
		font-size: 18px;
		margin: 0px auto;
		padding:10px 0;}
	#jirei h4 span{
		font-size: 14px;
		color: #FFFFFF;
		background-color: #956134;
		letter-spacing: 1px;
		border-radius: 60px;
		padding: 1px 8px;
		display: inline-block;
		margin-right: 5px;
		text-align: center;}

	.mat {
    background-color: #edf1b0;
    position: relative;
    z-index: 1;
		margin-top: 60px;
    padding: 20px 60px;}
		.mat p, .mat-pink p{
			text-align: left;
			margin: 30px auto;
		}
		.mat p.s-font, .mat-pink p.s-font{
			font-size:12px;
			text-align: center;
  		margin-top: 5px;
		}
	.mat-top{
			margin-top: 40px;
			}
.mat-pink{
	background-color: #ffe6e6;
	position: relative;
    z-index: 1;
	margin-top: 60px;
    padding: 20px 60px;}
.mat-pink ol{
	text-align: left;
	font-size: 1.3em;
    line-height: 1.8;
	counter-reset: cnt;
}
.mat-pink ol li{
	padding-left:1em;
	text-indent:-1em;}
.mat-pink ol li:before{
	content: counters(cnt, ".") ") ";
	counter-increment: cnt;

}
.mb0{margin-bottom: 0!important;}
/*add190523*/
.table{
	display: table;
}
.table > div{
	display: table-cell;
	vertical-align: middle;
}
.worksThumb {
	box-sizing: border-box;
    float: left;
	position: relative;
	font-size: 17px;
    width: 40%;
    background: #8d93c8;
    /*box-shadow: 0px 2px 2px rgba(10,42,89,0.2);
	width: 47.4%;*/
    margin: 0 4.6% 2.6% 0;
}

.worksThumb .jnum small{
	font-size: 20px;
	display: block;}
.worksThumb a{display: block;}
/*.worksThumb:nth-child(2n+1){margin: 0 10% 0 0;}*/
.worksThumb:first-child{margin-left:8%;}
.worksThumb img{
	width:100%;}
.worksThumb span{
	font-size: 16px;
	line-height: 1.5;
	display: block;
	padding: 15px 0;
    color: #fff;}
.worksThumb .cm{
	font-size: 20px;
	font-weight: bold;
	padding: 0px!important;
}
.worksThumb .jirei-top{
	position: absolute;
	right: 30px;
}

.fa-download{
	padding: 0 10px;
}
h4.dl-title{
	position: relative;
	display: inline-block;
	padding: 0 55px!important;
}
h4.dl-title:before, h4.dl-title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 50px;
  height: 1px;
  background-color: rgb(85, 85, 85);
}
h4.dl-title:before {
  left:0;
}
h4.dl-title:after {
  right: 0;
}


ul.pdfdl li{
	display: inline-block;
	padding: 0 10px;
}

