@charset "UTF-8";
/*----------
	company header & nav
----------*/
@media (max-width: 767px) {
	.l-mainheader-company .l-mainheader-company__util {
		display: none;
	}
	.l-mainheader-company__student {
		display: none;
	}
}
@media (min-width: 768px) {
	.l-mainheader-company .l-mainheader__inner {
		height: 140px;
	}
	.l-mainheader-company .l-mainheader__logo {
		top: 32px;
		left: 40px;
	}
	.l-mainheader-company .l-mainheader__logo > a > span {
		font-weight: 500;
		color: #666;
	}
	.l-mainheader-company .l-mainheader__cnv > li > a {
		width: 112px;
		height: 140px;
		padding-top: 34px;
	}
	.l-mainheader-company .l-mainheader__cnv > li > a > [class^=icon-] {
		width: 32px;
		height: 32px;
		font-size: 32px;
		line-height: 32px;
	}
	.l-mainheader-company .l-mainheader__cnv > li > a > span {
		margin-top: 16px;
		padding: 0 14px;
		line-height: 1.4;
	}
	.l-mainheader-company .l-mainheader__cnv > li:last-child > a > span {
		margin-top: 26px;
	}
	.l-mainheader-company .l-mainheader__tel {
		display: block;
		top: 18px;
		right: 440px;
	}
	.l-mainheader-company .l-mainheader__tel__num {
		margin-right: 0;
		font-weight: 500;
		font-size: 2rem;
		letter-spacing: 0.07em;
	}
	.l-mainheader-company .l-mainheader__tel__num > [class^=icon-] {
		margin-top: -0.2em;
	}
	.l-mainheader-company .l-mainheader__tel > p {
		margin-top: 3px;
		padding-left: 24px;
		font-size: 1.2rem;
		color: #333;
	}
	.l-mainheader-company__student {
		position: absolute;
		top: 84px;
		right: 250px;
	}
	.l-mainheader-company__student > a {
		display: block;
		padding-left: 24px;
	}
	.l-mainheader-company__student > a > img {
		display: block;
		width: 24px;
		height: 24px;
		margin: 0 auto;
	}
	.l-mainheader-company__student > a > span {
		font-size: 1rem;
		line-height: 1;
		color: #333;
		transition: color 0.2s;
	}
	.l-mainheader-company__student > a:hover > span {
		color: #2C87E9;
	}
	.l-mainheader-company__student::before {
		content: "";
		display: block;
		width: 1px;
		height: 40px;
		background-color: #ddd;
		position: absolute;
		top: 50%;
		left: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.l-mainheader-company .l-mainheader-company__util {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		position: absolute;
		top: 14px;
		right: 260px;
	}
	.l-mainheader-company .l-mainheader-company__util > li {
		margin-left: 20px;
	}
	.l-mainheader-company .l-mainheader-company__util > li > a {
		font-size: 1.6rem;
	}
	.l-mainheader-company .l-mainheader-company__util > li > a > [class^=icon-] {
		color: #333;
		margin-right: 0.3em;
	}
	.l-mainheader-company .l-mainheader__searchtoggle {
		width: 32px;
		height: 32px;
		top: 94px;
		right: 390px;
	}
	.l-mainheader-company .l-mainheader__searchtoggle > [class^=icon-] {
		font-size: 32px;
		line-height: 32px;
	}
	.l-mainheader-company .l-mainheader__search {
		bottom: -96px;
	}
}

@media (min-width: 768px) {
	.l-mainnav-company__global {
		min-width: 600px;
		max-width: 700px;
		width: 56%;
		height: 60px;
		top: auto;
		bottom: 0;
		right: 440px;
		background-color: #fff;
	}
	.l-mainnav-company__global > ul {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
	}
	.l-mainnav-company__global > ul > li > a {
		height: 60px;
		position: relative;
		transition: none;
		color: #333;
		transition: color 0.2s;
	}
	.l-mainnav-company__global > ul > li > a::after {
		content: "";
		display: block;
		width: 80%;
		height: 4px;
		margin: auto;
		border-radius: 100px 100px 0 0;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
		background-color: #024796;
		transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transition: transform 0.2s, -webkit-transform 0.2s;
	}
	.l-mainnav-company__global > ul > li > a.current {
		background-color: #fff;
	}
	.l-mainnav-company__global > ul > li > a.current::after {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	.l-mainnav-company__global > ul > li > a:hover {
		color: #2C87E9;
		background-color: #fff;
	}
	.l-mainnav-company__global > ul > li > a:hover::after {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
	.l-mainnav-company__global > ul > li > a > span {
		padding: 0 16px;
		font-size: 1.6rem;
	}
	.l-mainnav-company__fullnav {
		top: 140px;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__cattop {
		display: none;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat {
		width: 100%;
		flex-basis: 100%;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li {
		border-bottom: none;
		margin-top: 0;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li:nth-child(n+4) {
		margin-top: 40px;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li > a {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		padding-bottom: 16px;
		border-bottom: 1px solid #ddd;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li > a > img {
		flex: 0 0 140px;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li > a > span {
		flex: 0 0 156px;
		font-weight: bold;
		font-size: 1.6rem;
		line-height: 1.4;
	}
	.l-mainnav-company__fullnav .l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li > a > span > span {
		font-weight: normal;
		font-size: 1.4rem;
	}
}
@media (max-width: 1150px) and (min-width: 768px) {
	.l-mainnav-company__global > ul > li > a > span {
		padding: 0 8px;
		font-size: 1.4rem;
	}
}

/* PCメインナビ追従コンパクト */
@media (min-width: 768px) {
	.l-mainheader-company.pc-header-compact .l-mainnav__global {
		max-width: none;
		width: 100%;
		left: 0;
		right: auto;
	}
}

@media (max-width: 767px) {
	.l-fullnav__cat--qualificationlist .l-fullnav__subcat > ul > li > a > img {
		display: none;
	}
}

@media (min-width: 768px) {
	.l-subfooter__fullnav .l-fullnav__subcat {
		display: none;
	}
}

.c-pry {
	display: flex;
	justify-content: flex-end;
}

/*--------------------
	company common layout
---------------------*/