@charset "utf-8";
/*------------------------------------------------------------
	company
------------------------------------------------------------*/
.gNavi ul li:nth-child(3) a::before {
	opacity: 1;
}
@media all and (min-width: 897px) {
	#main {
		margin-bottom: 40px;
	}
}
#main .topSec {
	margin: -17px auto 61px;
	max-width: 1480px;
}
#main .topSec dl {
	margin-bottom: 27px;
	padding: 22px 15px 24px 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #EDE3D9;
	font-feature-settings: "palt";
}
#main .topSec dl:last-child {
	margin-bottom: 0;
}
#main .topSec dt {
	padding-top: 10px;
	width: 325px;
	font-size: 6.05rem;
}
#main .topSec dd {
	width: calc(100% - 325px);
	letter-spacing: 0.05em;
	line-height: 1.84;
}
#main .guidlines {
	margin-bottom: 52px;
	padding: 56px 20px 95px;
	background: #F1F1F1;
}
#main .guidlines .content {
	max-width: 1310px;
}
#main .guidlines ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#main .guidlines li {
	padding: 3% 1% 4.2%;
	width: 31.84%;
	font-size: 2.608rem;
	letter-spacing: 0.05em;
	line-height: 1.53;
	text-align: center;
	background: #FFF;
	box-sizing: border-box;
}
#main .guidlines li .ttl {
	margin-bottom: 17%;
	font-size: 5rem;
	line-height: 1.2;
}
#main .about {
	margin-bottom: 145px;
}
#main .about .headLine01 {
	margin-bottom: 70px;
}
#main .about table {
	width: 100%;
	border-collapse: collapse;
}
#main .about th,
#main .about td {
	padding: 19px 0;
	width: 40%;
	font-size: 3.2rem;
	font-weight: normal;
	letter-spacing: 0.05em;
	line-height: 1.34;
	word-break: break-all;
	text-align: left;
	vertical-align: top;
	border-bottom: 2px solid #D9D9D9;
	box-sizing: border-box;
}
#main .about th {
	padding-left: 120px;
}
#main .about td {
	width: 60%;
}
#main .about td li:not(:last-child) {
	margin-bottom: 41px;
}
#main .about tr:last-child th,
#main .about tr:last-child td {
	border-bottom: none;
}
#main .history {
	padding: 75px 0 64px;
	background: #EDE3D9;
}
#main .history .headLine01 {
	margin-bottom: 87px;
}
#main .history .content {
	max-width: 1234px;
}
#main .history dt {
	padding: 2.9% 0 0 10%;
	float: left;
	clear: left;
	font-size: x-large;
}
#main .history dd {
	padding: 1.8% 0 2.3% 30%;
	font-size: x-large;
	line-height: 2.34;
	background: #FFF;
}
#main .history dd:not(:last-of-type) {
	margin-bottom: 23px;
}
@media all and (max-width: 896px) {
	#main .topSec {
		margin: 0 auto 32px;
		max-width: inherit;
	}
	#main .topSec dl {
		margin-bottom: 27px;
		padding: 10px;
		display: block;
	}
	#main .topSec dl:last-child {
		margin-bottom: 0;
	}
	#main .topSec dt {
		padding: 0 0 10px;
		width: auto;
		text-align: center;
		font-size: 1.6rem;
	}
	#main .topSec dd {
		width: auto;
	}
	#main .topSec dd br {
		display: none;
	}
	#main .guidlines {
		margin-bottom: 30px;
		padding: 30px 0;
		background: #F1F1F1;
	}
	#main .guidlines ul {
		margin-top: -13px;
		display: block;
	}
	#main .guidlines li {
		margin-top: 13px;
		padding: 20px 10px;;
		width: auto;
		font-size: 1.2rem;
	}
	#main .guidlines li .ttl {
		margin-bottom: 8px;
		font-size: 2rem;
		line-height: 1.2;
	}
	#main .about {
		margin-bottom: 30px;
	}
	#main .about th,
	#main .about td {
		padding: 10px 0;
		width: 30%;
		font-size: 1.3rem;
		border-width: 1px;
	}
	#main .about th {
		padding-left: 0;
	}
	#main .about td {
		width: 70%;
	}
	#main .about td li:not(:last-child) {
		margin-bottom: 4px;
	}
	#main .history {
		padding: 30px 0;
	}
	#main .history .headLine01 {
		margin-bottom: 87px;
	}
	#main .history dt {
		padding: 1.9% 0 0 15px;
		font-size: 1.2rem;
	}
	#main .history dd {
		padding: 1.8% 10px 2.3% 80px;
		font-size: 1.2rem;
		line-height: 1.5;
		background: #FFF;
	}
	#main .history dd:not(:last-of-type) {
		margin-bottom: 10px;
	}
}
@media all and (-ms-high-contrast:none){

	#main .topSec dd {
		margin-bottom: -26px;
	}
	#main .topSec dt {
		padding-top: 50px;
	}
	#main .about th, #main .about td {
		padding: 35px 0 3px;
	}
	#main .history dd {
		padding: 3.1% 0 1% 30%;
	}
	#main .history dt {
		padding-top: 4.1%;
	}
}
