@charset "utf-8";
#hero {
	width: 100%;
	height: auto;
}
	.hero__inner {
		width: 100%;
		max-width: 1280px;
		height: auto;
		margin: 0 auto;
	}
		.hero__image {
			width: 92%;
			height: auto;
			margin: 0 auto;
			position: relative;
			filter: drop-shadow(0 18px 10px rgba(0,0,0,0.3));
		}
			.hero__image__contents {
				width: 49.27%;
				height: auto;
				position: absolute;
				bottom: 37.54%;
				left: 50%;
				transform: translate(-50%,50%);
			}
			.hero__imaeg__twitter {
				width: 145px;
				height: auto;
				position: absolute;
				top: 33px;
				right: 30px;
				z-index: 5;
			}
				.hero__imaeg__twitter a {
					display: block;
					width: 100%;
					height: auto;
					border-radius: 44%;
				}
					.hero__imaeg__twitter picture {
						pointer-events: none;
					}
						.hero__imaeg__twitter picture img {
							filter: drop-shadow(0 3px 6px rgba(0,0,0,0.4));
						}
			.hero__image picture img {
				width: 100%;
				height: auto;
			}

.section__heading {
	width: 100%;
	height: 117.43px;
	padding: 11px 0 0;
	position: relative;
	z-index: 2;
}
	.section__heading__obj {
		width: 135.4px;
		height: 117.43px;
		position: absolute;
		top: 0%;
		left: 50%;
		transform: translate(-50%,0%);
		z-index: -1;
	}
		.section__heading__obj img {
			width: 100%;
			height: auto;
		}
	.section__heading__main {
		width: 100%;
		height: auto;
		margin-bottom: 12px;
		font-family: 'Urbanist', sans-serif;
		font-size: 55px;
		font-weight: 600;
		line-height: 1.0;
		letter-spacing: 0.04em;
		text-align: center;
	}
	.section__heading__sub {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: auto;
		font-size: 13px;
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0.11em;
		text-indent: .11em;
		text-align: center;
	}
		.section__heading__sub::before,
		.section__heading__sub::after {
			content: '';
			display: block;
		}
		.section__heading__sub::before {
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 2px 0 2px 5px;
			border-color: transparent transparent transparent var(--color--black);
			margin-right: 4px;
		}
		.section__heading__sub::after {
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 2px 5px 2px 0;
			border-color: transparent var(--color--black) transparent transparent;
			margin-left: 4px;
		}

#point {
	width: 100%;
	height: auto;
	padding: 88px 0 30px;
}
	.point__inner {
		width: 90%;
		max-width: 800px;
		height: auto;
		margin: 0 auto;
	}
		#point .section__heading {
			margin-bottom: 27px;
		}
		.point__score {
			width: 90%;
			max-width: 615px;
			height: auto;
			margin: 0 auto;
			position: relative;
		}
			.point__score__frame {
				width: 100%;
				height: auto;
			}
				.point__score__frame picture img {
					width: 100%;
					height: auto;
				}
			/* ポイント表示時 */
			.point__score__contents {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: auto;
				position: absolute;
				top: 52%;
				left: 0;
				transform: translate(0%,-50%);
				z-index: 2;
			}
				.point__score__contents__heading {
					width: 128px;
					height: auto;
				}
					.point__score__contents__heading__main {
						display: flex;
						justify-content: space-between;
						flex-wrap: wrap;
						margin-bottom: 5px;
						font-size: 30px;
						font-weight: 700;
						line-height: 35px;
						letter-spacing: 0.0em;
					}
					.point__score__contents__heading__sub {
						font-size: 19px;
						font-weight: 500;
						line-height: 1;
						letter-spacing: 0.04em;
						text-align: center;
						color: var(--color--skyblue);
					}
				.point__score__contents__arrow {
					width: 45px;
					height: auto;
					margin: 0 20px 0 26px;
				}
					.point__score__contents__arrow img {
						width: 100%;
						height: auto;
					}
				.point__score__contents__details {
					padding-bottom: 2px;
				}
					.point__score__contents__details__txt {
						font-weight: 600;
						line-height: 1;
					}
						.point__score__contents__details__txt span {
							display: inline-block;
						}
						.point__score__contents__details__txt__value {
							font-size: 123px;
							line-height: 1;
							letter-spacing: 0.03em;
							background: rgb(0,191,217);
							background: linear-gradient(90deg, rgba(0,191,217,1) 0%, rgba(0,191,217,1) 15%, rgba(40,50,83,1) 85%, rgba(40,50,83,1) 100%);
							background: -webkit-linear-gradient(90deg, rgba(0,191,217,1) 0%, rgba(0,191,217,1) 15%, rgba(40,50,83,1) 85%, rgba(40,50,83,1) 100%);
							-webkit-background-clip: text;
							-webkit-text-fill-color: transparent;
						}
						.point__score__contents__details__txt__pt {
							margin-left: 8px;
							font-size: 49px;
							letter-spacing: 0.035em;
						}
			/* ログインボタン表示時 */
			.point__score__login {
				width: 100%;
				height: auto;
				position: absolute;
				top: 52%;
				left: 0;
				transform: translate(0%,-50%);
				z-index: 2;
			}
				.point__score__login__txt {
					width: 100%;
					height: auto;
					padding-left: 20px;
					margin-bottom: 14px;
					font-size: 20px;
					font-weight: 700;
					line-height: 1.65;
					letter-spacing: 0.035em;
					text-align: center;
				}
				.point__score__login__btn_wrap {
					width: 352px;
					height: auto;
					margin: 0 auto;
				}
					.point__score__login__btn {
						display: block;
						width: 100%;
						height: auto;
						border-radius: 40px;
						font-size: 22px;
						font-weight: 700;
						line-height: 1;
						letter-spacing: 0.035em;
						color: var(--color--white);
						text-align: center;
						position: relative;
					}
						.point__score__login__btn span {
							width: 100%;
							height: auto;
							position: absolute;
							top: 50%;
							left: 0;
							transform: translate(0%,-50%);
						}
						.point__score__login__btn img {
							width: 100%;
							height: auto;
							pointer-events: none;
						}

#participate {
	width: 100%;
	height: auto;
	padding: 88px 0 8px;
}
	.participate__inner {
		width: 90%;
		max-width: 846px;
		height: auto;
		margin: 0 auto;
	}
		#participate .section__heading {
			margin-bottom: 30px;
		}
		.participate__contents {
			width: 100%;
			height: auto;
		}
			.participate__list {
				width: 100%;
				height: auto;
				margin-bottom: 33px;
			}
				.participate__item {
					width: 100%;
					height: auto;
				}
				.participate__item:not(:last-of-type) {
					margin-bottom: 33px;
				}
					.participate__item picture img {
						width: 100%;
						height: auto;
						filter: drop-shadow(0 12px 10px rgba(0,0,0,0.2));
					}
			.participate__notes {
				width: 85%;
				max-width: 725px;
				height: auto;
				padding: 30px 0;
				margin: 0 auto;
				background-color: var(--color--white);
			}
				.participate__notes__txt {
					width: 100%;
					height: auto;
					margin-bottom: 10px;
					font-size: 14px;
					font-weight: 700;
					letter-spacing: .035em;
					text-align: center;
				}
				.participate__notes__list {
					display: flex;
					justify-content: center;
					align-items: center;
				}
					.participate__notes__item {
						padding-left: 20px;
						margin: 0 10px;
						font-size: 14px;
						font-weight: 700;
						letter-spacing: .035em;
						position: relative;
					}
						.participate__notes__item::before {
							content: '';
							display: block;
							width: 15px;
							height: 15px;
							background-image: url('../image/participate-notes_item_arrow.svg');
							background-position: center;
							background-repeat: no-repeat;
							background-size: cover;
							position: absolute;
							top: 6px;
							left: 0;
						}
						.participate__notes__item a {
							color: var(--color--skyblue);
							text-decoration: underline;
						}

#reward {
	width: 100%;
	height: auto;
	padding: 88px 0 0px;
}
	.reward__inner {
		width: 85%;
		max-width: 800px;
		height: auto;
		margin: 0 auto;
	}
		#reward .section__heading {
			margin-bottom: 33px;
		}
		.reward__contents {
			width: 100%;
			height: auto;
		}
			.reward__list {
				width: 100%;
				height: auto;
			}
				.reward__item {
					width: 100%;
					height: auto;
				}
				.reward__item:not(:last-of-type) {
					margin-bottom: 11px;
				}
					.reward__item picture img {
						width: 100%;
						height: auto;
					}
			.reward__arrow {
				width: 11px;
				height: auto;
				margin: 16px auto;
			}
				.reward__arrow img {
					width: 100%;
					height: auto;
				}

#notes {
	width: 100%;
	height: auto;
	padding: 89px 0 58px;
}
	.notes__inner {
		width: 85%;
		max-width: 800px;
		height: auto;
		margin: 0 auto;
	}
		.notes__contents {
			width: 100%;
			height: auto;
			padding: 0px 10px 0 0;
			margin: 0 auto 57px;
			background-color: var(--color--white);
			border: solid 1px var(--color--gray);
		}
			.notes__contents__inner {
				width: 100%;
				height: 400px;
				padding: 57px 38px 50px 48px;
				overflow-y: scroll;
			}
			.notes__contents__inner::-webkit-scrollbar{
				width: 5px;
			}
			.notes__contents__inner::-webkit-scrollbar-track{
				background-color: rgba(0,0,0,0);
			}
			.notes__contents__inner::-webkit-scrollbar-thumb{
				background-color: #E5E5E5;
				border-radius: 100px;
			}
				.notes__heading {
					display: flex;
					justify-content: center;
					align-items: center;
					width: 100%;
					height: auto;
					padding-left: 0.04em;
					margin-bottom: 34px;
					font-size: 24px;
					font-weight: 700;
					line-height: 1;
					letter-spacing: 0.04em;
					text-align: center;
				}
					.notes__heading img {
						width: 10px;
						height: auto;
						margin: 4px 15px 0 0;
					}
					.notes__heading img:nth-of-type(2) {
						transform: scale(-1,1);
						margin: 4px 0 0 15px;
					}
				.notes__list__heading {
					width: 100%;
					height: auto;
					font-size: 14px;
					font-weight: 700;
					line-height: 2;
					letter-spacing: .04em;
				}
				.notes__list {
					width: 100%;
					height: auto;
				}
					.notes__item {
						width: 100%;
						height: auto;
					}
					.notes__item:not(:last-of-type) {
						margin-bottom: 28px;
					}
						.notes__item dt {
							width: 100%;
							height: auto;
							font-size: 14px;
							font-weight: 700;
							line-height: 2;
							letter-spacing: .04em;
						}
						.notes__item dd {
							width: 100%;
							height: auto;
							font-size: 14px;
							font-weight: 500;
							line-height: 2;
							letter-spacing: .04em;
						}
							.notes__item dd a {
								color: var(--color--skyblue);
								text-decoration: underline;
							}
				.notes__txt {
					width: 100%;
					height: auto;
					font-size: 14px;
					font-weight: 500;
					line-height: 2;
					letter-spacing: .04em;
				}
					.notes__txt a {
						color: var(--color--skyblue);
						text-decoration: underline;
					}
		.notes__page_bottom_txt {
			width: 240px;
			height: auto;
			margin: 0 auto;
		}
			.notes__page_bottom_txt img {
				width: 100%;
				height: auto;
			}

/* PC ================================================== */
@media all and (min-width:1025px){
/* hero */
				.hero__imaeg__twitter a {
					transition: transform .25s, filter .25s;
				}
				.hero__imaeg__twitter a:hover {
					transform: scale(1.03);
					filter: brightness(1.1) invert(0);
				}	

/* point */
			/* ログインボタン表示時 */
					.point__score__login__btn {
						transition: transform .25s, filter .25s;
					}
					.point__score__login__btn:hover {
						transform: scale(1.03);
						filter: brightness(1.1) invert(0);
					}
}

/* Tablet ================================================== */
@media all and (max-width:1024px){
/* hero */
#hero {
	padding: 58px 0 0;
}
		.hero__image {
			filter: drop-shadow(0 15px 10px rgba(0,0,0,0.3));
		}
			.hero__image__contents {
				width: 96.6%;
				bottom: 26%;
			}
			.hero__imaeg__twitter {
				width: 90px;
				top: 0px;
				left: 50%;
				transform: translate(-50%,-50%);
			}

.section__heading {
	width: 100%;
	height: 93.16px;
	padding: 11px 0 0;
	position: relative;
	z-index: 2;
}
	.section__heading__obj {
		width: 107.42px;
		height: 93.16px;
	}
		.section__heading__obj img {
			width: 100%;
			height: auto;
		}
	.section__heading__main {
		margin-bottom: 7px;
		font-size: 40px;
	}
	.section__heading__sub {
		font-size: 12px;
	}
		.section__heading__sub::before {
			border-width: 1.5px 0 1.5px 4px;
		}
		.section__heading__sub::after {
			border-width: 1.5px 4px 1.5px 0;
		}

/* point */
#point {
	width: 100%;
	height: auto;
	padding: 55px 0 30px;
}
			/* ポイント表示時 */
			.point__score__contents {
				padding-left: 15px;
			}
				.point__score__contents__heading {
					width: 110px;
					height: auto;
				}
					.point__score__contents__heading__main {
						font-size: 26px;
						font-weight: 700;
						line-height: 30px;
					}
					.point__score__contents__heading__sub {
						font-size: 15px;
					}
						.point__score__contents__details__txt__value {
							font-size: 105px;
						}
						.point__score__contents__details__txt__pt {
							font-size: 44px;
						}
			/* ログインボタン表示時 */
				.point__score__login__txt {
					font-size: 18px;
				}
				.point__score__login__btn_wrap {
					width: 300px;
				}
					.point__score__login__btn {
						border-radius: 33px;
						font-size: 18px;
					}

/* participate */
			.participate__notes {
				width: 100%;
				max-width: inherit;
				padding: 23px 0 21px;
			}

/* notes */
			.notes__contents__inner {
				padding: 57px calc(8% - 10px) 50px 8%;
			}
				.notes__heading {
					font-size: 20px;
				}
}

/* SP ================================================== */
@media all and (max-width:599px){
/* point */
	.point__inner {
		width: 100%;
	}
		.point__score {
			width: 86.13%;
			max-width: inherit;
		}
			/*　ポイント表示時 */
			.point__score__contents {
				display: block;
				width: 100%;
			}
				.point__score__contents__heading {
					width: 100%;
					margin-bottom: 12px;
				}
					.point__score__contents__heading__main {
						display: block;
						margin-bottom: 8px;
						font-size: 26px;
						line-height: 30px;
						letter-spacing: 0.04em;
						text-align: center;
					}
					.point__score__contents__heading__sub {
						font-size: 14px;
					}
				.point__score__contents__arrow {
					display: none;
				}
				.point__score__contents__details {
					padding-bottom: 0px;
				}
					.point__score__contents__details__txt {
						text-align: center;
					}
						.point__score__contents__details__txt__value {
							font-size: 101px;
						}
						.point__score__contents__details__txt__pt {
							font-size: 39px;
						}

			/* ログインボタン表示時 */
				.point__score__login__txt {
					padding-left: 0px;
					margin-bottom: 10px;
					line-height: 1.5;
				}
				.point__score__login__btn_wrap {
					width: 267px;
				}

/* participate */
#participate {
	padding: 55px 0 8px;
}
	.participate__inner {
		width: 86.13%;
	}
				.participate__item:not(:last-of-type) {
					margin-bottom: 18px;
				}
				.participate__notes__txt {
					width: 88%;
					padding-left: 3px;
					margin: 0 auto 8px;
					font-size: 13px;
					text-align: left;
					text-indent: .4em;
					position: relative;
				}
					.participate__notes__txt::before {
						content: '※';
						position: absolute;
						left: 3px;
						transform: translate(-100%,0%);
					}
				.participate__notes__list {
					display: block;
					width: 88%;
					padding-left: 6px;
					margin: 0 auto;
				}
					.participate__notes__item {
						margin: 0 0 4px;
					}
/* reward */
#reward {
	padding: 70px 0 0px;
}
	.reward__inner {
		width: 86.13%;
	}
			.reward__item:not(:last-of-type) {
					margin-bottom: 10px;
				}
			.reward__arrow {
				margin: 12px auto;
			}

/* notes */
#notes {
	padding: 52px 0 38px;
}
	.notes__inner {
		width: 86.13%;
	}
		.notes__contents {
			padding: 0;
		}
			.notes__contents__inner {
				padding: 45px 5% 40px;
				margin-bottom: 30px;
			}
}