@charset "utf-8";

/* -------------------------------------------------- */
/* PC*/
/* -------------------------------------------------- */
/* メッセージ
------------------------------------ */
#message {
	padding-top: 120px;
	padding-bottom: 120px;
	background-color: #FFFFFF;
	border-radius: 120px 120px 0 0;
}

#messageHead {
	margin-bottom: 40px;
	font-size: 4.6rem;
	font-weight: 700;
	line-height: calc(74 / 46);
	color: #000;
}

#messageContent {
	margin-bottom: 30px;
}

.messageText {
	font-size: 2rem;
	line-height: 2;
}

.messageText:not(:last-child) {
	margin-bottom: 20px;
}

#messageName {
	font-size: 1.8rem;
	line-height: calc(40 / 18);
	letter-spacing: 0.05em;
	text-align: right;
}

/* 会社概要
------------------------------------ */
#outline {
	padding-top: 120px;
	border-radius: 120px 120px 0 0;
	background-color: #f5f5f5;
}

#outlineHead {
	margin-bottom: 60px;
}

#outlineContentWrap {
	padding: 60px 80px;
	background-color: #FFFFFF;
	border-radius: 24px;
}

#outlineTable {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}

#outlineTable th, 
#outlineTable td {
	padding: 20px;
	font-size: 1.6rem;
	border-bottom: 1px solid #a0a0a0;
}

#outlineTable th {
	width: 180px;
	font-weight: 700;
	text-align: left;
}

#outlineTable tr:last-child th,
#outlineTable tr:last-child td {
	border-bottom: none;
}

/* アクセス
------------------------------------ */
#access {
	padding-top: 120px;
	background-color: #f5f5f5;
}

#accessHead {
	margin-bottom: 60px;
}

#accessContentWrap {
	padding: 80px 80px 70px;
	background-color: #FFFFFF;
	border-radius: 24px;
}

#accessMap {
	margin-bottom: 30px;
	height: 530px;
}

#accessMap iframe {
	width: 100%;
	height: 100%;
}

#accessInfo {
	font-size: 1.6rem;
	line-height: calc(30 / 16);
}

/* -------------------------------------------------- */
/* TAB&SP */
/* -------------------------------------------------- */
@media screen and (max-width: 1024px) {
	#message {
		border-radius: 60px 60px 0 0;
	}

	#messageHead {
		font-size: 3.6rem;
	}

	.messageText {
		font-size: 1.8rem;
	}

	#messageName {
		font-size: 1.6rem;
	}

	#outline {
		border-radius: 60px 60px 0 0;
	}

	#outlineContentWrap {
		padding: 40px;
	}

	#accessContentWrap {
		padding: 60px 40px 40px;
	}

	#accessMap {
		height: 400px;
	}
}


/* -------------------------------------------------- */
/* TAB(調整) */
/* -------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {

}

/* -------------------------------------------------- */
/* SP(調整) */
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
	#message {
		padding-top: 60px;
		padding-bottom: 60px;
		border-radius: 40px 40px 0 0;
	}

	#messageHead {
		margin-bottom: 20px;
		font-size: 2.4rem;
	}

	#messageContent {
		margin-bottom: 20px;
	}

	.messageText {
		font-size: 1.5rem;
	}

	#messageName {
		font-size: 1.4rem;
	}

	#outline {
		padding-top: 60px;
		border-radius: 40px 40px 0 0;
	}

	#outlineHead {
		margin-bottom: 40px;
	}

	#outlineContentWrap {
		padding: 25px 20px;
	}

	#outlineTable th,
	#outlineTable td {
		display: block;
		font-size: 1.4rem;
	}

	#outlineTable th {
		width: 100%;
		padding: 15px 0 0;
		border-bottom: none;
	}

	#outlineTable td {
		padding: 10px 0 15px;
	}

	#access {
		padding-top: 60px;
	}

	#accessHead {
		margin-bottom: 40px;
	}

	#accessContentWrap {
		padding: 30px 20px;
	}

	#accessMap {
		height: 240px;
		margin-bottom: 15px;
	}

	#accessInfo {
		font-size: 1.4rem;
	}
}