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

/* ------------------------------ PC ------------------------------ */

/* -------------------- ヘッダ -------------------- */
header {
	position: relative;
	width: 100%;
	background: url(../../images/header__bg.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
}
	header .wrapper {
		margin: 0 auto;
		min-width: 1280px;
		padding: 72px 0 219px; /* 162px 117-60=57px */
	}
		.header__logo {
			margin: 0 auto;
			width: 260px;
			height: 51px;
		}
		.header__title {
			margin: 21px auto 0;
			width: 510px;
			height: 510px;
		}
		.header__entryBtn a {
			margin: -117px auto 0;
			width: 240px;
			padding: 15px 0;
			font-size: calc(25rem / 16);
			line-height: calc(30em / 25);
			letter-spacing: 0.065em;
			text-align: center;
			color: #FFFF00;
			background: #000;
			border-radius: 30px;
			display: block;
		}
		.header__entryBtn a:hover {
			background: #0052A4;
		}

/* -------------------- メイン -------------------- */
.main {
}
	.mainContents {
	}

/* 概要 overview */
.mainContents__Sec-overview {
	position: relative;
}
	.mainContents__Sec-overview .wrapper {
		margin: 0 auto;
		width: 1280px;
		padding: 180px 0; 
	}
		.Sec-overview__head {
			margin: 0 auto;
			width: 980px;
			font-size: calc(28rem / 16);
			line-height: calc(42em / 28);
			letter-spacing: 0.040em;
			text-align: center;
			color: #0052A4;
		}
			.Sec-overview__head .kerning {
			}
		.Sec-overview__hr {
			margin: 12px auto 39px;
			width: 980px;
			border-top: 1px solid #0052A4; 
		}
		.Sec-overview-lead {
			margin: 30px auto 0;
			width: 980px;
			font-size: calc(17rem / 16);
			line-height: calc(30em / 17);
			text-align: center;
		}
		.Sec-overview-point-list {
			margin: 93px auto 0;
		}
			.Sec-overview-point-list .box {
				position: relative;
				margin: 93px auto 0;
			}
				/* POINT共通 */
				.Sec-overview-point {
					padding: 0 0 291px 60px;
					display: flex;
					justify-content: flex-start;
					align-items: center;
					z-index: 9;
				}
					.Sec-overview-point-list .box:nth-of-type(2) .Sec-overview-point {
						padding-left: 600px;
					}
					.Sec-overview-point__label {
						width: 210px;
						height: 210px;
					}
					.Sec-overview-point__text {
						margin-left: 30px;
						width: 390px;
						font-size: calc(28rem / 16);
						line-height: calc(42em / 28);
						font-weight: bold;
						letter-spacing: 0.040em;
					}
				/* POINT 1 */
				.Sec-overview-point-1__image {
					position: absolute;
					top: 81px;
					right: 0;
					width: 1005px;
					filter: drop-shadow(30px 30px 30px rgba(0, 0, 0, 0.15));
					z-index: -9;
				}
				/* POINT 2 */
				.Sec-overview-point-2__image {
					position: absolute;
					top: 81px;
					left: 0;
					width: 1100px;
					filter: drop-shadow(30px 30px 30px rgba(0, 0, 0, 0.15));
					z-index: -9;
				}
				/* POINT 3 */
				.Sec-overview-point-3__image {
					position: absolute;
					top: 81px;
					right: 0;
					width: 990px;
					filter: drop-shadow(30px 30px 30px rgba(0, 0, 0, 0.15));
					z-index: -9;
				}

/* こんな方にオススメ RECOMMEND */
.mainContents__Sec-recommend {
	position: relative;
	background: url(../../images/Sec-recommend__bg.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
}
	.mainContents__Sec-recommend .wrapper {
		padding: 60px 0 54px;
	}
		.Sec-recommend__head {
			margin: 0 auto;
			width: 1180px;
			font-size: calc(25rem / 16);
			line-height: calc(33em / 25);
			letter-spacing: 0.040em;
			text-align: center;
			color: #FFF;
		}
			.Sec-recommend__head .italic {
				font-size: calc(19rem / 16);
				font-style: italic;
				font-weight: normal;
				letter-spacing: 0.090em;
			}
		.Sec-recommend.outer {
			margin-top: 18px;
		}
			.Sec-recommend.inner { 
				margin: 0 auto;
				width: 1180px;
				padding: 9px 0 18px;
				display: flex;
				justify-content: center;
				align-items: center;
			}
				/* IE11でバグ
				.Sec-recommend-list { 
					margin: 0 5px;
					width: 285px;
					height: 285px;
					padding: 0 20px 24px;
					font-size: calc(19rem / 16);
					line-height: calc(27em / 19);
					font-weight: bold;
					letter-spacing: 0.040em;
					text-align: center;
					background-color: #FFF;;
					box-shadow: 9px 9px 9px 0 rgba(0, 0, 0, 0.35);
					display: flex;
					justify-content: center;
					align-items: center;
				}
				*/
				.Sec-recommend-list { 
					margin: 0 5px;
					width: 285px;
					height: 285px;
					padding: 90px 20px 24px;
					font-size: calc(19rem / 16);
					line-height: calc(27em / 19);
					font-weight: bold;
					letter-spacing: 0.040em;
					text-align: center;
					background-color: #FFF;;
					box-shadow: 9px 9px 9px 0 rgba(0, 0, 0, 0.35);
				}
				.Sec-recommend-list.double { 
					padding-top: 103.5px;
				}
				.Sec-recommend-list:nth-of-type(1) { 
					background-image: url(../../images/Sec-recommend-list__bg.svg);
					background-repeat: no-repeat;
					background-size: 25px 25px;
					background-position: center bottom 66px;
				}
				.Sec-recommend-list:nth-of-type(2) { 
					background-image: url(../../images/Sec-recommend-list__bg.svg),
					url(../../images/Sec-recommend-list__bg.svg);
					background-repeat: no-repeat;
					background-size: 25px 25px;
					background-position: left 117.5px bottom 66px,
					right 117.5px bottom 66px;
				}
				.Sec-recommend-list:nth-of-type(3) { 
					background-image: url(../../images/Sec-recommend-list__bg.svg),
					url(../../images/Sec-recommend-list__bg.svg),
					url(../../images/Sec-recommend-list__bg.svg);
					background-repeat: no-repeat;
					background-size: 25px 25px;
					background-position: left 105px bottom 66px,
					center bottom 66px,
					right 105px bottom 66px;
				}
				.Sec-recommend-list:nth-of-type(4) { 
					background-image: url(../../images/Sec-recommend-list__bg.svg),
					url(../../images/Sec-recommend-list__bg.svg),
					url(../../images/Sec-recommend-list__bg.svg),
					url(../../images/Sec-recommend-list__bg.svg);
					background-repeat: no-repeat;
					background-size: 25px 25px;
					background-position: left 92.5px bottom 66px,
					left 117.5px bottom 66px,
					right 117.5px bottom 66px,
					right 92.5px bottom 66px;
				}

/* 開催概要 */
.mainContents__Sec-summary {
	position: relative;
}
	.mainContents__Sec-summary .wrapper {
		margin: 0 auto;
		width: 950px;
		padding-top: 48px;
	}
		.Sec-summary__head {
			margin: 60px 0 39px;
			font-size: calc(25rem / 16);
			line-height: calc(27em / 25);
			letter-spacing: 0.040em;
			text-align: center;
		}
	.Sec-summary.outer {
		padding: 24px 30px;
		border-bottom: 1px solid #D9D9D9;
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
	}
	.Sec-summary.outer:nth-of-type(1) {
		border-top: 1px solid #D9D9D9;
	}
		.Sec-summary__title {
			width: 100px;
			font-size: calc(17rem / 16);
			line-height: calc(33em / 17);
			letter-spacing: 0.040em;
			font-weight: bold;
		}
		.Sec-summary__text {
			width: 700px;
			font-size: calc(17rem / 16);
			line-height: calc(33em / 17);
			letter-spacing: 0.040em;
		}
			.Sec-summary__text .box:nth-of-type(1) {
				display: flex;
				justify-content: space-between;
				align-items: center;
				flex-wrap: wrap;
			}
				.Sec-summary__text .date {
					width: 175px;
				}
				.Sec-summary__text .date:nth-child(odd) { /* 奇数番目 */
				}
				.Sec-summary__text .date:nth-child(even) { /* 偶数番目 */
				}
		.Sec-summary .phase-outer {
			margin: 24px 0 9px 190px;
			width: 695px;
		}
			.Sec-summary .phase-outer .box {
				display: flex;
				justify-content: space-between;
				align-items: center;
			}
				.Sec-summary .phase {
					position: relative;
					width: 140px;
					padding: 21px 0;
					font-size: calc(18rem / 16);
					line-height: calc(24em / 18);
					font-weight: bold;
					text-align: center;
					background: #DEE8FA;
				}
				.Sec-summary .phase .small {
					font-size: calc(14rem / 16);
					line-height: calc(21em / 14);
				}
				.Sec-summary .phase:after {
					position: absolute;
					top: 50%; /* 上下中央寄せ */
					left: 155px;
					margin-top: -9px; /* 三角形の大きさ分ネガティブマージンで位置調整 */
					border: 9px solid transparent;
					border-left: 15px solid transparent;
					border-left-color: #808080;
					content: "";
				}
				.Sec-summary .phase:first-child {
					margin-top: 0;
				}
				.Sec-summary .phase:last-child:after {
					border: none; /* 最後のボックスだけ三角形を表示しない */
				}

/* ENTRYボタン */
.mainContents__Sec-entryBtn {
	position: relative;
	margin: 0 auto;
	width: 1180px;
}
	.Sec-entryBtn a {
		margin: 108px auto;
		width: 280px;
		padding: 30px 0;
		font-size: calc(25rem / 16);
		line-height: calc(30em / 25);
		letter-spacing: 0.065em;
		text-align: center;
		color: #FFFF00;
		background: #000;
		border-radius: 45px;
		display: block;
	}
	.Sec-entryBtn a:hover {
		background: #0052A4;
	}

/* -------------------- フッタ -------------------- */
footer {
	background: #313C45;
}
	footer .wrapper {
		margin: 0 auto;
		width: 1180px;
		padding: 33px 0 24px;
	}
		.footer__navi .outer {
			display: flex;
			justify-content: center;
			align-items: center;
		}
			.footer__navi .list a {
				margin: 0 auto;
				padding: 0 20px;
				font-size: calc(15rem / 16);
				line-height: calc(18em / 15);
				text-align: center;
				color: #FFF;
				border-right: 1px solid #FFF;
			}
			.footer__navi .list.last a {
				border-right: none;
			}
			.footer__credit {
				margin: 27px auto 0;
				width: 1180px;
				font-size: calc(15rem / 16);
				line-height: calc(18em / 15);
				text-align: center;
				letter-spacing: 0;
				color: #FFF;
				display: block;
			}