@charset "UTF-8";
/* CSS Document */

/* ------------------------------ PC ------------------------------ */
body {
}

/* -------------------- ローディングエリア -------------------- */
#contents {
	background: url(body-bg.webp);
	background-repeat: no-repeat;
	background-position: center bottom -108px;
	background-size: 2560px;
	background-attachment: fixed;
}

/* -------------------- ヘッダ -------------------- */
header {
	position: relative;
	margin: 0 auto;
	width: 1280px;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	flex-wrap: wrap;
}
	.header__catchCopy {
		position: relative;
		width: 600px;
		padding: 24px 30px 24px 70px;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 7.5% 100%);
		background-color: #2d438b;
	}
	.header__sponsorship {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-600px);
		margin-top: 36px;
		width: 460px;
		font-size: calc(22rem / 16);
		line-height: calc(24 / 22);
		font-weight: 400; /* Regular */
	}

/* -------------------- メイン -------------------- */
.main {
	padding-top: 0;
}

/* メインタイトル */
.mainTitle {
}
	.mainTitle-outer {
	}
		.mainTitle__title {
			padding-top: 48px;
			display: flex;
			flex-direction: column;
			align-items: center;
		}
			.mainTitle__title-label {
				width: 220px;
			}
			.mainTitle__title-catchCopy {
				margin-top: 21px;
				width: 1080px;
			}
			.mainTitle__title-subTitle {
				margin-top: 27px;
				width: 1080px;
				display: flex;
				align-items: center;
			}
				.mainTitle__title-subTitle img {
					width: 500px;
				}
				.mainTitle__title-subTitle::before,
				.mainTitle__title-subTitle::after {
					height: 1px;
					content: '';
					background-color: #000;
    				flex-grow: 1;
				}
				.mainTitle__title-subTitle::before {
					margin-right: 30px;
				}
				.mainTitle__title-subTitle::after {
					margin-left: 30px;
				}
			.mainTitle__title-mainTitle {
				margin-top: 15px;
				width: 920px;
			}
			.mainTitle__title-information {
				margin-top: 24px;
				width: 1080px;
				padding: 12px 35px 21px 30px;
				border: 3px #aa8f39 solid;
				background-color: #fff;
				border-radius: 12px;
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
			}
				.mainTitle__title-information-box {
					width: 745px;
					display: flex;
					justify-content: flex-start;
					flex-wrap: wrap;
				}
					.mainTitle__title-information-date {
						font-size: calc(43rem / 16);
						line-height: calc(84 / 82);
						letter-spacing: 0.015em;
						font-weight: 800; /* ExtraBold */
					}
						.mainTitle__title-information-date .large {
							font-size: calc(82rem / 16);
						}
						.mainTitle__title-information-date .kerning {
							letter-spacing: -0.025em;
						}
						.mainTitle__title-information-time {
							margin-left: 10px;
							padding-top: 32px;
							font-size: calc(43rem / 16);
							line-height: calc(45 / 43);
							font-weight: 800; /* ExtraBold */
							letter-spacing: 0.015em;
						}
						.mainTitle__title-information-conditions {
							margin-top: 9px;
							width: 740px;
							font-size: calc(19rem / 16);
							line-height: calc(21 / 19);
							font-weight: 600; /* SemiBold */
							letter-spacing: 0.030em;
							text-align: center;
						}
							.mainTitle__title-information-conditions i {
								margin: 0 0.25em 0 1em; /* 上書き */
								color: #00afda;
							}
								.mainTitle__title-information-conditions i:nth-of-type(1) {
									margin-left: 0;
								}
				.mainTitle__title-information-btn-apply a {
					margin-top: 12px;
					width: 240px;
					padding: 12px 0;
					font-size: calc(28rem / 16);
					line-height: calc(36 / 28);
					font-weight: 700; /* Bold */
					letter-spacing: 0.065em;
					text-align: center;
					color: #FFF;
					background: linear-gradient(180deg, rgba(255,167,61,1) 0%, rgba(255,134,12,1) 100%);
					border-radius: 9px;
					box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
					display: block;
					transition: all 0.15s ease;
				}
					.mainTitle__title-information-btn-apply a:hover {
						margin-top: 15px;
						box-shadow: 0 6px 15px rgba(0, 0, 0, 0.35);
						opacity: 0.85;
					}

/* メインコンテンツ */
.mainContents {
	margin: 0 auto;
	width: 1280px;
	padding: 0 100px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

	/* セミナー概要 overview */
	.mainContents__Sec-overview {
		position: relative;
		width: 675px;
	}
		.mainContents__Sec-overview .wrapper {
				margin-top: 48px;
		}
			.Sec-overview-head {
				font-family: 'NotoSerifJP_subset', serif;
				font-size: calc(28rem / 16);
				line-height: calc(30 / 28);
				font-weight: 700; /* Bold */
				letter-spacing: 0.015em;
				text-shadow: 0 0 24px rgba(255, 255, 255, 1);
				}
			.Sec-overview-lead {
				margin-top: 18px;
				font-size: calc(22rem / 16);
				line-height: calc(36 / 22);
				font-weight: 600; /* SemiBold */
				letter-spacing: 0.040em;
				text-shadow: 0 0 18px rgba(255, 255, 255, 1);
			}

	/* セミナー情報 information */
	.mainContents__Sec-information {
		position: relative;
		width: 350px;
	}
		.mainContents__Sec-information .wrapper {
			margin-top: 48px;
		}
			.Sec-information-head {
				font-family: 'NotoSerifJP_subset', serif;
				font-size: calc(28rem / 16);
				line-height: calc(30 / 28);
				font-weight: 700; /* Bold */
				letter-spacing: 0.015em;
				text-shadow: 0 0 24px rgba(255, 255, 255, 1);
				}
			.Sec-information {
				margin-top: 21px;
				padding: 24px 25px 21px;
				background: rgba(0, 175, 215, 0.20);
				border-radius: 12px;
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				align-items: center;
				gap: 12px;
			}
				.Sec-information-title {
					width: 70px;
					font-size: calc(16rem / 16);
					line-height: calc(27 / 16);
					letter-spacing: 0.015em;
				}
				.Sec-information-data {
					width: 215px;
					font-size: calc(19rem / 16);
					line-height: calc(24 / 19);
					font-weight: 600; /* SemiBold */
					letter-spacing: 0.015em;
				}
					.Sec-information-data.large {
						font-size: calc(25rem / 16);
						line-height: calc(27 / 25);
					}
					.Sec-information-data.large .small {
						font-size: calc(16rem / 16);
					}
						.Sec-information-data.large .small.regular {
							font-weight: 400; /* Regular */
						}

	/* プログラム program */
	.mainContents__Sec-program {
		position: relative;
		width: 1080px;
	}
		.mainContents__Sec-program .wrapper {
			margin-top: 60px;
		}
			.Sec-program-head {
				font-family: 'NotoSerifJP_subset', serif;
				font-size: calc(28rem / 16);
				line-height: calc(30 / 28);
				font-weight: 700; /* Bold */
				letter-spacing: 0.015em;
				text-shadow: 0 0 24px rgba(255, 255, 255, 1);
			}
			/* 第一部 */
			.Sec-program-1 {
				margin-top: 18px;
				border: 3px solid;
				padding: calc(33px - 3px) calc(35px - 3px);
				border: 3px #aa8f39 solid;
				border-radius: 12px;
				background: #fff;
				box-shadow: 0 0 36px rgba(0, 0, 0, 0.25);

				.Sec-program-heading {
					margin-left: -50px;
					width: 1060px;
					font-size: calc(31rem / 16);
					line-height: calc(51 / 31);
					font-weight: 600; /* SemiBold */
					letter-spacing: 0.015em;
					color: #fff;
					display: flex;
					justify-content: space-between;
				}
					.Sec-program-heading-title {
						width: 135px;
						text-align: center;
						background: #00afda;
					}
					.Sec-program-heading-data {
						margin-left: 10px;
						width: 915px;
						padding-left: 20px;
						background: #2d438b;
					}
				.Sec-program-title {
					margin-top: 33px;
					text-indent: -5px;
					font-family: 'NotoSerifJP_subset', serif;
					font-size: calc(58rem / 16);
					line-height: calc(60 / 58);
					font-weight: 600; /* SemiBold */
				}
					.Sec-program-speaker-position {
						margin-top: 18px;
						width: 775px;
						font-size: calc(22rem / 16);
						line-height: calc(24 / 22);
						font-weight: 600; /* SemiBold */
						letter-spacing: 0.015em;
					}
					.Sec-program-speaker-name {
						margin-top: 15px;
						width: 775px;
						font-size: calc(34rem / 16);
						line-height: calc(36 / 34);
						font-weight: 600; /* SemiBold */
						letter-spacing: 0.015em;
					}
						.Sec-program-speaker-name .small {
							padding-left: 0.350em;
							font-size: calc(25rem / 16);
							font-weight: 400; /* Regular */
						}
					.Sec-program-speaker-inner {
						position: relative;
						margin-top: 33px;
						width: 1010px;
					}
						.Sec-program-speaker-photo {
							position: absolute;
							right: 5px;
							bottom: 9px;
							width: 195px;
						}
						.Sec-program-speaker-text {
							width: 775px;
							font-size: calc(19rem / 16);
							line-height: calc(30 / 19);
							font-weight: 400; /* Regular */
							letter-spacing: 0.065em;
						}
			}
			/* 第二部 */
			.Sec-program-2 {
				margin-top: 42px;
				border: 3px solid;
				padding: calc(33px - 3px) calc(35px - 3px);
				border: 3px #aa8f39 solid;
				border-radius: 12px;
				background: #fff;
				box-shadow: 0 0 36px rgba(0, 0, 0, 0.25);

				.Sec-program-heading {
					margin-left: -50px;
					width: 1060px;
					font-size: calc(25rem / 16);
					line-height: calc(39 / 25);
					font-weight: 600; /* SemiBold */
					letter-spacing: 0.015em;
					color: #fff;
					background: #fff;
					display: flex;
					justify-content: space-between;
				}
					.Sec-program-heading-title {
						width: 105px;
						text-align: center;
						background: #00afda;
					}
					.Sec-program-heading-data {
						width: 947.5px;
						padding-left: 15px;
						background: #2d438b;
					}
				.Sec-program-title {
					margin-top: 27px;
					text-indent: -5px;
					font-family: 'NotoSerifJP_subset', serif;
					font-size: calc(49rem / 16);
					line-height: calc(51 / 49);
					font-weight: 600; /* SemiBold */
				}
					.Sec-program-lead {
						margin-top: 18px;
						font-size: calc(18rem / 16);
						line-height: calc(18 / 18);
						font-weight: 400; /* Regular */
						letter-spacing: 0.065em;
					}
					.Sec-program-speaker-inner {
						margin-top: 30px;
						display: flex;
						justify-content: space-between;
						flex-wrap: wrap;
					}
						.Sec-program-speaker {
							width: 480px;
						}
							.Sec-program-speaker-company {
								font-size: calc(22rem / 16);
								line-height: calc(24 / 22);
								font-weight: 600; /* SemiBold */
								letter-spacing: 0.015em;
							}
								.Sec-program-speaker-company .colored {
									color: #00afda;
									letter-spacing: 0.140em;
								}
								.Sec-program-speaker-company .small {
									font-size: calc(19rem / 16);
								}
							.Sec-program-speaker-text {
								margin: 12px 0 0 2.5px;
								padding: 15px 0 0 20px;
								font-size: calc(16rem / 16);
								line-height: calc(24 / 16);
								letter-spacing: 0.065em;
								border-top: 1px solid #000;
								border-left: 1px solid #000;
							}
			}

	/* 備考 note */
	.mainContents__Sec-note {
		position: relative;
	}
		.mainContents__Sec-note .wrapper {
			margin-top: 72px;
		}
			.Sec-note {
				width: 1080px;
				padding: 27px 30px 24px;
				background: rgba(255, 255, 255, 0.85);
				border-radius: 9px;
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
			}
				.Sec-note-inner {
					width: 485px
				}
					.Sec-note-head {
						margin-top: 15px;
						font-size: calc(16rem / 16);
						line-height: calc(18 / 16);
						font-weight: 600; /* SemiBold */
						letter-spacing: 0.015em;
					}
						.Sec-note-head:first-child {
							margin-top: 0;
						}
					.Sec-note-listGroup {
						margin-top: 9px;
						font-size: calc(14rem / 16);
						line-height: calc(18 / 14);
						letter-spacing: 0.015em;
					}
						.Sec-note-list {
							margin-top: 4.5px;
							padding-left: 1.015em;
							text-align: justify;
							text-indent: -1.015em;
						}
						.Sec-note-list .number {
							padding: 0 0.015em 0 0.065em;
						}
						.Sec-note-list i {
							margin: 0 5px 0 20px;
						}
						.Sec-note-list a {
							color: #2d438b;
							text-decoration: underline;
						}
					.Sec-note-textGroup {
						margin-top: 9px;
						font-size: calc(14rem / 16);
						line-height: calc(18 / 14);
						letter-spacing: 0.015em;
					}
						.Sec-note-text a {
							color: #2d438b;
							text-decoration: underline;
						}
				.Sec-note .bold {
					font-weight: 500; /* Medium */
				}

/* お申し込み apply */
.mainContents__Sec-apply {
	position: relative;
	width: 1080px;
}
	.mainContents__Sec-apply .wrapper {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
		.Sec-apply-btn a {
			margin: 90px 0 96px;
			padding: 0 70px;
			font-size: calc(28rem / 16);
			line-height: calc(96 / 28);
			font-weight: 700; /* Bold */
			letter-spacing: 0.065em;
			text-align: center;
			color: #FFF;
			background: linear-gradient(180deg, rgba(255,167,61,1) 0%, rgba(255,134,12,1) 100%);
			border-radius: 9px;
			box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
			display: block;
		}
			.Sec-apply-btn a:hover {
				margin: 96px 0 90px;
				box-shadow: 0 6px 12px rgba(0, 0, 0, 0.35);
				opacity: 0.85;
			}

/* -------------------- フッタ -------------------- */
footer {
	padding: 24px 0 21px;
	border-top: 3px solid #fff;
	background: #000;
	display: flex;
	flex-direction: column;
	align-items: center;
}
	.footer__logo {
		width: 450px;
	}
	.footer__credit {
		margin-top: 9px;
		font-size: calc(14rem / 16);
		line-height: calc(15 / 14);
		font-weight: 400; /* Regular */
		letter-spacing: 0.015em;
		color: #FFF;
	}