#Contents .section {
	padding: 120px 0;
}
@media screen and (max-width: 767px) {
	#Contents .section {
		padding: 60px 0;
	}
}
.TopLinksListWrap {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.TopLinksListWrap li {
	width: calc((100% - 120px) / 4);
}
.TopLinksListWrap a {
	display: block;
	text-decoration: none;
	font-size: 18px;
	letter-spacing: 0.04em;
	color: #0f1923;
}
.TopLinksListWrap a span {
	display: block;
	line-height: 1.7;
}
.TopLinksListWrap a span.TopLinksListWrapTitle {
	background: url(/ja/image/jp/r1/common2/arrow.png) no-repeat right 10px top 22px / 15px 6px;
	font-size: 20px;
	font-weight: bold;
	padding: 10px 30px 10px 0;
}
.TopLinksListWrap a[target='_blank'] span.TopLinksListWrapTitle {
	background: url(/ja/image/jp/r1/common2/icon_target.png) no-repeat right 10px top 22px / 12px;
}
.TopLinksListWrapImg img {
	border-radius: 10px;
}
.nowrap {
	white-space: nowrap;
}
@media screen and (min-width: 768px) {
	.TopLinksListWrap a {
		transition: 0.3s;
	}
	.TopLinksListWrap a:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 1230px) {
	.TopLinksListWrap {
		gap: 20px;
	}
	.TopLinksListWrap li {
		width: calc(50% - 10px);
	}
}
@media screen and (max-width: 767px) {
	.TopLinksListWrap a {
		font-size: 13px;
	}
	.TopLinksListWrap a span.TopLinksListWrapTitle {
		font-size: 15px;
		background-position: right center;
		padding: 7px 15px 5px 0;
		letter-spacing: 0;
	}
	.TopLinksListWrap a[target='_blank'] span.TopLinksListWrapTitle {
		background-position: right center;
	}
}
/* TopInformation */
.TopInformationWrap {
	background-color: #f6f8fa;
}
.TopInformationWrap .TopInformationListWrap .TopInformationList {
	border-top: 1px solid #dce4e8;
}
.TopInformationWrap .TopInformationListWrap .TopInformationList:last-child {
	border-bottom: 1px solid #dce4e8;
}
.TopInformationWrap .TopInformationListWrap .TopInformationList > a,
.TopInformationWrap .TopInformationListWrap .TopInformationList .TopInformationCont {
	text-decoration: none;
	padding: 20px 25px 20px 10px;
	background: url(/ja/image/jp/r1/common2/arrow.png) no-repeat right 10px center / 15px 6px;
	transition: 0.3s;
	color: #0f1923;
}
.TopInformationWrap .TopInformationListWrap .TopInformationList .TopInformationCont {
	background: transparent;
}
.TopInformationWrap .TopInformationListWrap .TopInformationListDate {
	color: #647382;
	display: block;
	flex-shrink: 0;
	margin: 0 30px 0 0;
	font-size: 14px;
}
.TopInformationWrap .TopInformationListWrap .TopInformationListGenre {
	display: block;
	flex-shrink: 0;
	width: 140px;
	font-weight: bold;
	color: #231862;
	border: 1px solid #231862;
	border-radius: 30px;
	text-align: center;
	padding: 2px 0 1px;
	margin: 0 30px 0 0;
	font-size: 14px;
}
.TopInformationWrap .TopInformationListWrap .TopInformationListGenre.Genre_Notice {
	border-color: #d85386;
}
.TopInformationWrap .TopInformationListWrap .TopInformationListGenre.Genre_Seminar {
	border-color: #5478b1;
}
.TopInformationWrap .TopInformationListWrap .TopInformationListGenre.Genre_Topics {
	border-color: #8854b1;
}
.TopInformationWrap .TopInformationListWrap .TopInformationList > a:hover .TopInformationListTitle {
	text-decoration: underline;
}
.TopInformationListTitle {
	font-weight: bold;
}
@media screen and (min-width: 768px) {
	.TopInformationWrap .Container {
		position: relative;
	}
	.TopInformationWrap .Container .Btn {
		position: absolute;
		right: 15px;
		top: 1px;
	}
	.TopInformationWrap .TopInformationListWrap .TopInformationList > a,
	.TopInformationWrap .TopInformationListWrap .TopInformationList .TopInformationCont {
		display: flex;
		align-items: center;
	}
	.TopInformationWrap .TopInformationListWrap .TopInformationList > a:hover {
		background-position: right 0px center;
	}
}
@media screen and (max-width: 767px) {
	.TopInformationWrap .TopInformationListWrap .TopInformationList > a,
	.TopInformationWrap .TopInformationListWrap .TopInformationList .TopInformationCont {
		display: block;
		padding: 15px 35px 15px 0;
		position: relative;
	}
	.TopInformationWrap .TopInformationListWrap .TopInformationListDate {
		margin: 0 0 5px;
	}
	.TopInformationWrap .TopInformationListWrap .TopInformationListGenre {
		width: 153px;
		padding: 2px 0 1px;
		margin: 0;
	}
	.TopInformationListTitle {
		font-size: 14px;
		line-height: 1.3;
		margin: 10px 0 0;
	}
}
/* TopTech */
.TopTech {
	background: url(/ja/top/image/bg01.jpg) no-repeat center / cover;
}
.TopTechList {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
.TopTechList li {
	background-color: #fff;
	border-radius: 8px;
	min-height: 110px;
	width: 100%;
}
.TopTechList a {
	background: url(/ja/image/jp/r1/common2/arrow.png) no-repeat right 15px top calc(50% - 3px) / 15px 6px;
	color: #0f1923;
	display: block;
	font-weight: bold;
	padding: 5px;
	text-decoration: none;
	height: calc(100% - 10px);
	display: flex;
	align-items: center;
}
.TopTechList p {
	color: #231862;
	font-size: 12px;
}
.TopTechList p span {
	font-size: 17px;
	margin: 0 0 0 5px;
}
.TopTechList h3 {
	margin: 8px 0 0;
	font-size: 18px;
	font-weight: 600;
}
.TopTechText {
	padding: 0 0 0 25px;
	flex: 1;
}
.TopTechImg {
	width: 150px;
}
.TopTechImg img {
	border-radius: 8px;
	display: block;
	line-height: 0;
}
@media screen and (min-width: 1231px) {
	.TopTechList li {
		width: calc((100% - 60px) / 3);
	}
}
@media screen and (min-width: 768px) {
	.TopTech .Container {
		position: relative;
	}
	.TopTech .Container .Btn {
		position: absolute;
		right: 15px;
		top: 1px;
	}
	.TopTechList a {
		transition: 0.3s;
	}
	.TopTechList a:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 767px) {
	.TopTech {
		background: url(/ja/top/image/bg01_sp.jpg) no-repeat center / cover;
	}
	.TopTechList {
		gap: 10px;
	}
	.TopTechList li {
		min-height: 80px;
	}
	.TopTechList a {
		height: calc(100% - 6px);
		padding: 3px;
	}
	.TopTechList p {
		font-size: 12px;
	}
	.TopTechList p span {
		font-size: 16px;
	}
	.TopTechList h3 {
		margin: 5px 0 0;
		font-size: 16px;
	}
	.TopTechText {
		padding: 0 0 0 17px;
	}
	.TopTechImg {
		width: 128px;
	}
	.TopTechImg img {
		border-radius: 5px;
	}
}
/*  */
.TopIntroInner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.TopIntroInner.isReverse {
	flex-direction: row-reverse;
}
.TopIntroSection:not(:last-child) {
	margin: 0 0 90px;
}
.TopIntroImg img {
	border-radius: 16px;
}
.TopIntroText p {
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: 0.04em;
	margin: 0 0 20px;
}
.TopIntroText .Btn {
	margin-top: 50px;
}
.AlphaList {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.75;
	letter-spacing: 0.04em;
	margin: 40px 0 0;
}
.AlphaList li {
	margin: 0 0 10px;
	padding: 0 0 0 30px;
	position: relative;
}
.AlphaList li .dot {
	color: #231862;
	position: absolute;
	left: 0;
	top: 0;
}
@media screen and (min-width: 768px) {
	.TopIntroInner {
		gap: 60px;
	}
	.TopIntroImg {
		width: calc(55% - 30px);
	}
	.Top-76 {
		margin-top: -76px;
	}
	.TopIntroText {
		width: calc(45% - 30px);
	}
}
@media screen and (max-width: 767px) {
	.TopIntroSection:not(:last-child) {
		margin: 0 0 40px;
	}
	.TopIntroInner {
		gap: 20px;
	}
	.TopIntroText {
		width: 100%;
	}
	.TopIntroText p {
		font-size: 15px;
	}
	.TopIntroText .Btn {
		margin: 35px 0 0;
	}
	.AlphaList {
		font-size: 16px;
		margin: 25px 0 0;
	}
	.AlphaList li {
		margin: 0 0 5px;
		padding: 0 0 0 25px;
	}
}
.MainVisual {
	background: url(/ja/top/images/bg.jpg) no-repeat center / cover;
	height: 440px;
	color: #fff;
}
.MainVisual .Container {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.MainVisual h1 {
	font-size: 41px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.04em;
	margin: 0 0 10px;
}
.MainVisual a {
	background: url(/ja/image/jp/r1/common2/arrow_w.png) no-repeat right center / 15px 6px;
	display: flex;
	align-items: center;
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: 0.04em;
	padding: 15px 20px 15px 0;
	transition: 0.3s;
	max-width: 230px;
	border-bottom: 1px solid #fff;
}
@media screen and (min-width: 768px) {
	.MainVisual a:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 767px) {
	.MainVisual {
		height: 340px;
	}
	.MainVisual h1 {
		font-size: 24px;
		margin-bottom: 5px;
	}
	.MainVisual a {
		font-size: 14px;
		padding: 12px 20px 12px 0;
	}
}
.NoteList {
	margin: 25px 0;
}
.NoteList li {
	padding: 0 0 0 25px;
	position: relative;
	font-size: 16px;
	line-height: 1.75;
	letter-spacing: 0.04em;
}
.NoteList li::before {
	content: '*' attr(data-index) '';
	position: absolute;
	left: 0;
	top: 0;
}
@media screen and (max-width: 767px) {
	.NoteList {
		margin: 15px 0 0;
	}
	.NoteList li {
		padding: 0 0 0 20px;
	}
}
