dl, ul, ol {
	margin: 0px;
	padding: 0px;
	list-style: none;
}

dt, dd {
	margin: 0px;
	padding: 0px;
}

.block4 {
	position: relative;
/*		margin-top: -100px;
background: linear-gradient(-40deg, #ff8e64 0%, #ff3a59 49.8%, #5545c1 100%);*/
	z-index: 6;
/*	clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 100px), 0% 100%);*/
}
@media screen and (max-width: 767px) {
	.block4 {
		margin-top: -50px;
		clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 50px), 0% 100%);
	}
}
.block4:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	max-width: 1280px;
	height: 100%;
	top: 0;
	left: 50%;
/*	background: #fff;
	box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.16);*/
	transform: translateX(-50%);
	opacity: 0.16;
	z-index: -1;
}
.block4 > div {
	position: relative;
	width: 100%;
	max-width: 1280px;
	margin: auto;
/*	padding: 120px 40px 250px;*/
}
@media screen and (max-width: 960px) {
	.block4 > div {
		padding: 60px 20px 125px;
	}
}
@media screen and (max-width: 767px) {
	.block4 > div {
		padding: 60px 15px 125px;
	}
}
.block4 h2 {
	margin-bottom: min(80px, 6.25vw);
	font-size: min(3.28125vw, 42px);
	line-height: 1.3;
	font-weight: 300;
	letter-spacing: 0.5em;
}
@media screen and (max-width: 960px) {
	.block4 h2 {
		font-size: min(4.0975609756vw, 33.6px);
	}
}
@media screen and (max-width: 767px) {
	.block4 h2 {
		font-size: min(6.314137741vw, 23.6780165289px);
	}
}
.block4 h2:before {
	content: attr(data-en);
	display: block;
	padding-bottom: 5px;
	font-size: min(14.0625vw, 180px);
	line-height: 1;
	font-weight: 100;
	letter-spacing: 0;
	font-family: "Montserrat", serif;
}
@media screen and (max-width: 960px) {
	.block4 h2:before {
		font-size: min(13.4146341463vw, 110px);
	}
}
@media screen and (max-width: 767px) {
	.block4 h2:before {
		font-size: min(9.635261708vw, 36.132231405px);
	}
}
.block4 dl {
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.block4 dl dt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 8.75em;
	height: 1.8em;
	font-size: min(1.65vw, 21px);
	line-height: 1;
	font-weight: 600;
	color:#fff;
	/*color: #042275;
	font-family: "Montserrat", serif;
	background: #fff;*/
	background: var(--secondary-color);
	border-radius: 10px;
}
@media screen and (max-width: 960px) {
	.block4 dl dt {
		font-size: min(2.3414634146vw, 19.2px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl dt {
		font-size: min(4.3957245179vw, 16.4839669421px);
	}
}
.block4 dl dt:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 1px;
	left: 0;
	/*background: #fff;*/
	background: rgba(255, 255, 255, .3);
	z-index: -1;
}
.block4 dl dt.col2:before {
	width: calc(100% - (((100% - min(270px, 270/1280*100vw) - min(30px, 30/1280*100vw) * 2) / 3) + min(30px, 30/1280*100vw)));
}
@media screen and (max-width: 767px) {
	.block4 dl dt.col2:before {
		width: calc(100% - (((100% - min(30px, 30/1280*100vw) * 2) / 3) + min(30px, 30/1280*100vw)));
	}
}
.block4 dl dt.categorylast {
	margin-top: 40px;
}
.block4 dl * + dt {
	margin-top: 20px;
}
.block4 dl .categorystart + dt {
	margin-top: 0;
}
.block4 dl dd {
	margin-left: min(270px, 21.09375vw);
	width: 100%;
}
@media screen and (max-width: 767px) {
	.block4 dl dd {
		margin-top: 10px;
		margin-left: 0;
	}
}
.block4 dl dd.break {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - min(270px, 270/1280*100vw));
	margin-right: 0;
	margin-left: auto;
	margin-top: 20px;
	font-size: min(1.5625vw, 20px);
	line-height: 1;
	font-weight: 700;
	content: #fff;
	/*color: #042275;*/
	z-index: -1;
}
@media screen and (max-width: 960px) {
	.block4 dl dd.break {
		font-size: min(1.9512195122vw, 16px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl dd.break {
		font-size: min(3.9228650138vw, 14.7107438017px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl dd.break {
		width: calc(100% - 10em);
	}
}
.block4 dl dd.break.col2 {
	width: calc(100% - min(270px, 270/1280*100vw) - (((100% - min(270px, 270/1280*100vw) - min(30px, 30/1280*100vw) * 2) / 3) + min(30px, 30/1280*100vw)));
	margin-right: calc(((100% - min(270px, 270/1280*100vw) - min(30px, 30/1280*100vw) * 2) / 3) + min(30px, 30/1280*100vw));
}
@media screen and (max-width: 767px) {
	.block4 dl dd.break.col2 {
		width: calc(100% - 10em - (((100% - min(30px, 30/1280*100vw) * 2) / 3) + min(30px, 30/1280*100vw)));
		margin-right: calc(((100% - min(30px, 30/1280*100vw) * 2) / 3) + min(30px, 30/1280*100vw));
	}
}
.block4 dl dd.break:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% + min(270px, 270/1280*100vw));
	height: 100%;
	right: 0;
	background: var(--secondary-color);
	/*background: #fff;*/
	border-radius: 10px;
	z-index: -1;
}
.block4 dl dd.col3 {
	display: flex;
	gap: min(30px, 2.34375vw);
}
.block4 dl dd.col3 > * {
	width: calc((100% - min(30px, 30/1280*100vw) * 2) / 3);
}
.block4 dl dd.col3 dt {
	display: none;
}
.block4 dl dd.col3 dd {
	display: flex;
	flex-direction: column;
	margin-top: 0px;
	margin-left: 0px;
	padding: 0px 15px;
	width: 100%;
}
@media screen and (max-width: 767px) {
	.block4 dl dd.col3 dd {
		padding: 0px 8px;
	}
}
.block4 dl dd.col3 .theme {
	font-size: min(1.5625vw, 20px);
}
@media screen and (max-width: 960px) {
	.block4 dl dd.col3 .theme {
		font-size: min(1.9512195122vw, 16px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl dd.col3 .theme {
		font-size: min(3.2vw, 12px);
		line-height: 1.4;
	}
}
.block4 dl dd.col3 .affiliation {
	margin-top: auto;
	padding-top: 10px;
}
@media screen and (max-width: 767px) {
	.block4 dl dd.col3 .name {
		font-size: min(3.2vw, 12px);
		line-height: 1.4;
	}
}
.block4 dl dd.col3 .theme + .name {
	margin-top: auto;
	padding-top: 10px;
}
.block4 dl .format {
	font-size: min(1.09375vw, 14px);
	line-height: 1.3;
	font-weight: 400;
}
@media screen and (max-width: 960px) {
	.block4 dl .format {
		font-size: min(1.3658536585vw, 11.2px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl .format {
		font-size: min(2.8vw, 10.5px);
	}
}
.block4 dl .format + .theme {
	margin-top: 5px;
}
.block4 dl .theme {
	font-size: min(2.265625vw, 29px);
	line-height: 1.3;
	font-weight: 700;
}
@media screen and (max-width: 960px) {
	.block4 dl .theme {
		font-size: min(2.8292682927vw, 23.2px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl .theme {
		font-size: min(4.9629972452vw, 18.6112396694px);
	}
}
.block4 dl .affiliation {
	margin-top: 20px;
	font-size: min(1.09375vw, 14px);
	line-height: 1.3;
	font-weight: 400;
}
@media screen and (max-width: 960px) {
	.block4 dl .affiliation {
		font-size: min(1.3658536585vw, 11.2px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl .affiliation {
		font-size: min(2.8vw, 10.5px);
	}
}
.block4 dl .name {
	margin-top: 5px;
	font-size: min(1.5625vw, 20px);
	line-height: 1.3;
	font-weight: 400;
}
@media screen and (max-width: 960px) {
	.block4 dl .name {
		font-size: min(1.9512195122vw, 16px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl .name {
		font-size: min(3.9228650138vw, 14.7107438017px);
	}
}
.block4 dl p {
	margin-top: 20px;
	margin-bottom: 20px;
	font-size: min(1.09375vw, 14px);
	line-height: 1.3;
	font-weight: 400;
}
@media screen and (max-width: 960px) {
	.block4 dl p {
		font-size: min(1.3658536585vw, 11.2px);
	}
}
@media screen and (max-width: 767px) {
	.block4 dl p {
		font-size: min(3.1818402204vw, 11.9319008264px);
	}
}
.block4 .category {
	position: relative;
	padding: 20px 0 0;
	font-size: min(1.5625vw, 20px);
	line-height: 1.3;
	font-weight: 700;
	text-align: center;
}
@media screen and (max-width: 960px) {
	.block4 .category {
		font-size: min(1.9512195122vw, 16px);
	}
}
@media screen and (max-width: 767px) {
	.block4 .category {
		font-size: min(3.4666666667vw, 13px);
	}
}
.block4 .category:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: var(--cheight, calc(100% + 20px));
	top: 0;
	border-radius: 10px;
	z-index: -1;
}
.block4 .category.c1:before {
	/*background: #6ABA6D;
    border: 1px solid #fff;*/
    background-color: var(--bg-dark-2) !important;
    border: solid 2px rgba(255, 255, 255, .3);
}
.block4 .category.c2:before {
	/*background: #D65BA7;*/
    background-color: var(--bg-dark-2) !important;
	border: solid 2px rgba(255, 255, 255, .3);
}
.block4 .category.c3:before {
	/*background: #1B9BCB;*/
    background-color: var(--bg-dark-2) !important;
	border: solid 2px rgba(255, 255, 255, .3);
}
.block4 .category.c4:before {
	/*background: #9C6AE0;*/
    background-color: var(--bg-dark-2) !important;
	border: solid 2px rgba(255, 255, 255, .3);
}
.block4 .type {
	position: relative;
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	margin-bottom: 15px;
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.block4 .type {
		gap: 5px;
	}
}
.block4 .type li {
	display: flex;
	align-items: center;
	justify-content: center;
	width: min(100px, 9.375vw);
	height: 30px;
	padding-bottom: 1px;
	font-size: min(1.328125vw, 15px);
	line-height: 1;
	font-weight: 600;
	border-radius: 6px;
}
@media screen and (max-width: 960px) {
	.block4 .type li {
		font-size: min(1.6585365854vw, 13.6px);
	}
}
@media screen and (max-width: 767px) {
	.block4 .type li {
		font-size: min(2.6666666667vw, 10px);
	}
}
.block4 .type li.online {
	background-image: linear-gradient(90deg, #22d3ee, #8b5cf6);
}
.block4 .type li.onsite {
    background-image: linear-gradient(90deg, #f05122, #f79f5d);
}
@media screen and (max-width: 767px) {
	.block4 .type li {
		width: 50px;
		height: 20px;
	}
}