@charset "UTF-8";

hgroup
{
	text-align: left;
	margin: 0 auto;
}

hgroup p
{
	margin-bottom: 0;
}

.page-titleimg
{
	background-image: url(../img/company/top.webp)
}

@media screen and (max-width:500px)
{
	.page-titleimg
	{
		background-image: url(../img/company/top-sp.webp)
	}
}

h2
{
	font-size: 2.4rem;
	font-weight: 500;
	text-align: center;
	padding-bottom: 1.4em
}

@media screen and (max-width:999px)
{
	h2
	{
		font-size: 1.8rem;
		padding-bottom: 1em
	}
}

.message
{
	background: var(--lbl);
	padding: 80px 0 0;
}

.message .container
{
	padding: 80px 60px 60px;
	background-image: url(../img/company/back.png);
	background-size: cover;
	color: #fff;
}

.message p
{
	padding-bottom: 1.5em;
	font-size: 1.6rem;
	line-height: 2;
}

.message p.top
{
	padding-bottom: 2em;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 2;
}

@media screen and (max-width:1020px)
{
	.message
	{
		padding: 40px 0 0;
	}

	.message .container
	{
		padding: 40px 5% 30px;
	}

	.message p
	{
		font-size: 1.4rem;
	}

	.message p.top
	{
		font-size: 1.6rem;
	}
}

.place
{
	background: var(--lbl);
	padding: 80px 0;
	color: var(--bl);
}

.place .container
{
	padding: 0 60px;
}

.place h2
{
	color: var(--bl);
}

.place .flex
{
	display: flex;
	border-bottom: 1px solid #6C9DC6;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.place .flex .left
{
	width: 62%;
}

.place .flex .left p.open
{
	padding-top: 1em;
}

.place .flex .right
{
	width: 38%;
}

.place h2
{
	padding-bottom: 2em;
}

.place h3
{
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--bl);
	padding-bottom: 0.3em;
}

.place h3.last
{
	padding-top: 1em;
}

@media screen and (max-width:1020px)
{
	.place
	{
		padding: 40px 0;
	}

	.place .container
	{
		padding: 0 3% 30px;
	}

	.place h3
	{
		font-size: 1.5rem;
	}
}

@media screen and (max-width:500px)
{
	.place h2
	{
		padding-bottom: 1.5em;
	}

	.place .flex
	{
		display: block;
	}

	.place .flex .left
	{
		width: 100%;
	}

	.place .flex .right
	{
		width: 100%;
	}

}

.link
{
	margin-top: 50px;
	background: #fff;
	text-align: center;
	padding: 45px 0;
}

.link img
{
	width: 305px;
}

.link a
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 192px;
	height: 32px;
	color: #fff;
	text-align: center;
	font-size: 1.4rem;
	background: var(--bl);
	margin: 18px auto 0;
}

.link a img
{
	width: 16px;
	height: 16px;
	margin-left: 5px;
}

@media screen and (max-width:500px)
{
	.link
	{
		margin-top: 30px;
		padding: 30px 0;
	}

	.link img
	{
		width: 290px;
	}

	.link a
	{
		margin: 13px auto 0;
	}

	.link a img
	{
		width: 14px;
		height: 14px;
	}

}