@charset "utf-8";
#hero {
	width: 100%;
	height: auto;
	padding: 85px 0 70px;
	background-color: var(--color--beige);
	position: relative;
}
#hero .section__bottom_edge svg {
	fill: var(--color--beige);
}
	.hero__inner {
		width: 80%;
		max-width: 850px;
		height: auto;
		margin: 0 auto;
	}
		.hero__contents {
			width: 100%;
			height: auto;
			position: relative;
		}
			.hero__contents img {
				width: 100%;
				height: auto;
				position: relative;
				z-index: 2;
			}
			.hero__contents::before {
				content: '';
				display: block;
				width: 100%;
				height: 100%;
				border-radius: 10px;
				background-color: var(--color--black);
				position: absolute;
				top: 5px;
				left: 5px;
				z-index: 0;
			}
		.hero__txt {
			width: 100%;
			max-width: 700px;
			height: auto;
			margin: 52px auto 40px;
			font-size: 18px;
			font-weight: 500;
			line-height: 1.8;
			letter-spacing: 0.073em;
			text-align: left;
		}
		.hero__prize {
			display: flex;
			justify-content: space-between;
			align-items: center;
			width: 100%;
			max-width: 700px;
			padding: 28px 40px;
			margin: 0 auto;
			border-radius: 8px;
			background-color: var(--color--white);
		}
			.hero__prize__image {
				width: 33.92%;
				height: auto;
			}
				.hero__prize__image img {
					width: 100%;
					height: auto;
				}
			.hero__prize__details {
				width: 61.76%;
				height: auto;
			}
				.hero__prize__details__txt {
					width: 100%;
					height: auto;
					font-size: 16px;
					font-weight: 500;
					line-height: 1.75;
					letter-spacing: 0.073em;
				}

#application_method {
	width: 100%;
	height: auto;
	padding: 132px 0 57px;
	background-color: var(--color--white);
	position: relative;
}
#application_method .section__bottom_edge svg {
	fill: var(--color--white);
}
	.application_method__inner {
		width: 90%;
		max-width: 700px;
		height: auto;
		margin: 0 auto;
	}
		#application_method .section__heading {
			color: var(--color--black);
			margin-bottom: 24px;
		}
		.application_method__txt {
			width: 100%;
			height: auto;
			margin: 0 auto 24px;
			font-size: 18px;
			font-weight: 500;
			line-height: 1.8;
			letter-spacing: 0.073em;
			text-align: center;
		}
		.application_method__list {
			width: 100%;
			height: auto;
		}
			.application_method__item {
				width: 100%;
				height: auto;
				padding: 35px 46px 35px 64px;
				border-radius: 8px;
				background-color: var(--color--beige);
				position: relative;
				overflow: hidden;
			}
			.application_method__item:not(:last-of-type) {
				margin-bottom: 18px;
			}
				.application_method__item__number {
					display: flex;
					flex-direction: column;
					justify-content: center;
					align-items: center;
					width: 99px;
					height: 99px;
					padding-top: 22px;
					padding-left: 20px;
					border-radius: 50%;
					background-color: var(--color--black);
					position: absolute;
					top: -22px;
					left: -25px;
				}
					.application_method__item__number__step {
						font-size: 14px;
						font-weight: 600;
						line-height: 1;
						letter-spacing: 0.06em;
						color: var(--color--white);
					}
					.application_method__item__number__value {
						font-size: 34px;
						font-weight: 600;
						line-height: 1;
						letter-spacing: 0.06em;
						color: var(--color--white);
					}
				.application_method__item__inner {
					display: flex;
					justify-content: space-between;
					align-items: stretch;
					width: 100%;
					height: auto;
				}
					.application_method__item__image {
						width: 34.232715%;
						height: auto;
						position: relative;
					}
						.application_method__item__image img {
							width: 100%;
							height: auto;
							position: absolute;
							bottom: 0;
							left: 0;
						}
						.application_method__item:nth-of-type(2) .application_method__item__image img {
							bottom: 50%;
							transform: translate(0%,50%);
						}
					.application_method__item__details {
						width: 57.67285%;
						height: auto;
					}
						.application_method__item__details__txt {
							width: 100%;
							height: auto;
							margin-bottom: 15px;
							font-size: 16px;
							font-weight: 500;
							line-height: 1.6;
							letter-spacing: 0.06em;
						}
						.application_method__item__details__btn_wrap {
							width: 100%;
							height: auto;
						}
							.application_method__item__details__btn {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 237px;
								height: 44px;
								padding-bottom: 1px;
								border-radius: 22px;
								background-color: var(--color--blue);
								filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.16));
								font-size: 16px;
								font-weight: 700;
								line-height: 1;
								letter-spacing: 0.03em;
								color: var(--color--white);
								position: relative;
							}
								.application_method__item__details__btn::after {
									content: '';
									display: block;
									width: 8px;
									height: 8px;
									border-top: solid 2px var(--color--white);
									border-right: solid 2px var(--color--white);
									position: absolute;
									top: 50%;
									right: 18.5px;
									transform: translate(0%,-50%) rotate(45deg);
								}

#post_example {
	width: 100%;
	height: auto;
	padding: 143px 0 31px;
	background-color: var(--color--blue);
	position: relative;
}
#post_example .section__bottom_edge svg {
	fill: var(--color--blue);
}
	.post_example__inner {
		width: 90%;
		max-width: 700px;
		height: auto;
		margin: 0 auto;
	}
		#post_example .section__heading {
			color: var(--color--white);
			margin-bottom: 34px;
		}
		.post_example__image_list {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			width: 100%;
			height: auto;
			margin: 0 auto 67px;
		}
			.post_example__image {
				width: 48.571429%;
				height: auto;
			}
				.post_example__image img {
					width: 100%;
					height: auto;
				}

#about {
	width: 100%;
	height: auto;
	padding: 157px 0 147px;
	background-color: var(--color--white);
}
	.about__inner {
		width: 90%;
		max-width: 700px;
		height: auto;
		margin: 0 auto;
	}
		#overview {
			width: 100%;
			height: auto;
			margin-bottom: 87px;
		}
			#overview .section__heading {
				margin-bottom: 65px;
			}
			.overview__contents {
				width: 100%;
				height: auto;
			}
				.overview__list {
					width: 100%;
					height: auto;
				}
					.overview__item {
						display: flex;
						justify-content: space-between;
						align-items: flex-start;
						width: 100%;
						height: auto;
						padding: 30px 0;
						border-bottom: dashed 2px #D3D3D3;
					}
					.overview__item:first-of-type {
						padding-top: 0;
					}
						.overview__item__heading {
							display: flex;
							justify-content: center;
							align-items: center;
							width: 241px;
							height: 47px;
							padding-bottom: 1px;
							border-radius: 23.5px;
							background-color: var(--color--blue);
							font-size: 23px;
							font-weight: 700;
							line-height: 1;
							letter-spacing: 0.03em;
							color: var(--color--white);
						}
						.overview__item__details {
							width: calc(100% - 241px);
							height: auto;
							padding-left: 43px;
							font-size: 18px;
							font-weight: 700;
							line-height: 1.8;
							letter-spacing: 0.073em;
						}
							.overview__item__details > strong {
								font-weight: 900;
							}
							.overview__item__details__period,
							.overview__item__details__prize,
							.overview__item__details__txt {
								width: 100%;
								height: auto;
								margin: -9px auto -10px;
								font-size: 23px;
								font-weight: 700;
								line-height: 1;
								letter-spacing: 0.03em;
							}
								.overview__item__details__period strong,
								.overview__item__details__prize strong,
								.overview__item__details__txt strong{
									display: inline-block;
									font-size: 63px;
									font-weight: 600;
									line-height: 1;
									letter-spacing: 0.02em;
									position: relative;
									top: 2px;
								}
								.overview__item__details__period strong:not(:first-of-type),
								.overview__item__details__prize strong:not(:first-of-type),
								.overview__item__details__txt strong:not(:first-of-type) {
									margin-left: 2px;
								}
								.overview__item__details__prize .bold {
									font-size: 30px;
								}
								.overview__item__details__period_week {
									display: inline-flex;
									justify-content: center;
									align-items: center;
									width: 38px;
									height: 38px;
									margin-left: 3px;
									padding-bottom: 2px;
									border-radius: 50%;
									background-color: var(--color--black);
									font-size: 20px;
									font-weight: 700;
									line-height: 1;
									letter-spacing: 0em;
									color: var(--color--white);
									position: relative;
									top: -7px;
								}
							.overview__item__details__prize_list {
								width: 100%;
								height: auto;
							}
								.overview__item__details__prize_item {
									display: flex;
									justify-content: flex-start;
									align-items: center;
									width: 100%;
									height: auto;
								}
								.overview__item__details__prize_item:not(:last-of-type) {
									margin-bottom: 13px;
								}
									.overview__item__details__prize_item__rank {
										display: flex;
										justify-content: center;
										align-items: center;
										width: 60px;
										height: 60px;
										padding-bottom: 3px;
										border-radius: 50%;
										margin-right: 15px;
										position: relative;
									}
									.overview__item__details__prize_item:nth-of-type(1) .overview__item__details__prize_item__rank {
										background-color: #E2B004;
									}
									.overview__item__details__prize_item:nth-of-type(2) .overview__item__details__prize_item__rank {
										background-color: #A7A8AA;
									}
									.overview__item__details__prize_item:nth-of-type(3) .overview__item__details__prize_item__rank {
										background-color: #A7703F;
									}
										.overview__item__details__prize_item__rank::after {
											content: '';
											display: block;
											width: 0;
											height: 0;
											border-style: solid;
											border-width: 6px 0 6px 9px;
											position: absolute;
											top: 50%;
											right: 3px;
											transform: translate(100%,-50%);
										}
										.overview__item__details__prize_item:nth-of-type(1) .overview__item__details__prize_item__rank::after {
											border-color: transparent transparent transparent #E2B004;
										}
										.overview__item__details__prize_item:nth-of-type(2) .overview__item__details__prize_item__rank::after {
											border-color: transparent transparent transparent #A7A8AA;
										}
										.overview__item__details__prize_item:nth-of-type(3) .overview__item__details__prize_item__rank::after {
											border-color: transparent transparent transparent #A7703F;
										}
										.overview__item__details__prize_item__rank__txt {
											font-size: 17px;
											font-weight: 700;
											color: var(--color--white);
										}
											.overview__item__details__prize_item__rank__txt strong {
												display: inline-block;
												margin-right: -1px;
												font-size: 32px;
												font-weight: 600;
												position: relative;
												top: 2px;
											}
									.overview__item__details__prize_item__txt {
										margin-left: 0;
										margin-right: auto;
										font-size: 22px;
										font-weight: 700;
										line-height: 1.5;
										letter-spacing: 0.03em;
									}
									.overview__item__details__prize_item__people {
										margin-left: auto;
										margin-right: 0;
										font-size: 22px;
										font-weight: 700;
										line-height: 1;
										letter-spacing: 0.03em;
									}
										.overview__item__details__prize_item__people strong {
											display: inline-block;
											margin-right: 2px;
											font-size: 34px;
											font-weight: 600;
											line-height: 1;
											position: relative;
											top: 2px;
										}
							.overview__item__details ol {
								width: 100%;
								height: auto;
								counter-reset: number 0;
							}
								.overview__item__details ol li {
									width: 100%;
									height: auto;
									padding-left: 20px;
									position: relative;
								}
									.overview__item__details ol li::before {
										counter-increment: number 1;
										content: counter(number) ".";
										position: absolute;
										left: 0;
									}
									.overview__item__details ol li a {
										color: var(--color--black);
										text-decoration: underline;
									}

		#terms {
			width: 100%;
			height: auto;
		}
			#terms .section__heading {
				margin-bottom: 37px;
			}
			.terms__contents {
				width: 100%;
				height: auto;
			}
				.terms__list {
					width: 100%;
					height: auto;
					font-size: 14px;
					font-weight: 700;
					line-height: 2;
					letter-spacing: 0em;
				}
					.terms__item {
						width: 100%;
						height: auto;
					}
					.terms__item:not(:last-of-type) {
						margin-bottom: 20px;
					}
							.terms__item__details a {
								color: var(--color--black);
								text-decoration: underline;
							}

/* PC ================================================== */
@media all and (min-width:720px){
/* 応募方法 */
						.application_method__item__details__btn_wrap {
							width: 237px;
							height: 44px;
							border-radius: 22px;
							background-color: var(--color--white);
						}
							.application_method__item__details__btn {
								transition: .3s;
								opacity: 1;
							}
							.application_method__item__details__btn:hover {
								opacity: .8;
								filter: drop-shadow(0px 3px 6px rgba(0,0,0,0));
							}
								.application_method__item__details__btn::after {
									transition: .3s;
								}
								.application_method__item__details__btn:hover::after {
									right: 15.5px;
								}

/* キャンペーン概要 */
									.overview__item__details ol li a:hover {
										text-decoration: none;
									}

/* キャンペーン規約 */
							.terms__item__details a {
								color: var(--color--black);
								text-decoration: underline;
							}

}

/* SP ================================================== */
@media all and (max-width:719px){
#hero {
	padding: 31px 0 39px;
}
	.hero__inner {
		width: 90.6666%;
		max-width: initial;
	}
		.hero__txt {
			width: 85.882353%;
			max-width: initial;
			margin: 33px auto 28px;
			font-size: 16px;
			line-height: 1.5625;
		}
		.hero__prize {
			display: block;
			width: 85.882353%;
			max-width: initial;
			padding: 30px 20px 20px;
		}
			.hero__prize__image {
				width: 75%;
				margin: 0 auto 25px;
			}
			.hero__prize__details {
				width: 100%;
			}
				.hero__prize__details__txt {
					font-size: 14px;
				}

#application_method {
	padding: 70px 0 45px;
}
	.application_method__inner {
		width: 90.6666%;
		max-width: initial;
	}
		#application_method .section__heading {
			margin-bottom: 6px;
		}
		.application_method__txt {
			margin: 0 auto 21px;
			font-size: 16px;
			letter-spacing: 0.03em;
			text-align: left;
		}
			.application_method__item {
				padding: 35px 24px 29px;
			}
			.application_method__item {
				padding: 40px 24px 29px;
			}
			.application_method__item:not(:last-of-type) {
				margin-bottom: 20px;
			}
				.application_method__item__inner {
					display: block;
				}
					.application_method__item__image {
						width: 100%;
						margin-bottom: 26px;
					}
						.application_method__item__image img {
							width: 100%;
							height: auto;
							margin: 0 auto;
							position: initial;
							bottom: initial;
							left: initial;
						}
						.application_method__item:nth-of-type(1) .application_method__item__image img {
							width: 55.626712%;
						}
						.application_method__item:nth-of-type(2) .application_method__item__image img {
							width: 69.294521%;
							bottom: initial;
							transform: initial;
						}
					.application_method__item__details {
						width: 100%;
					}
						.application_method__item__details__txt {
							margin-bottom: 20px;
							letter-spacing: 0.03em;
						}
							.application_method__item__details__btn {
								margin: 0 auto;
							}

#post_example {
	padding: 58px 0 60px;
}
#post_example .section__bottom_edge {
	display: none;
}
#post_example::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10.5px 18px 10.5px;
	border-color: transparent transparent var(--color--white) transparent;
	position: absolute;
	bottom: -1px;
	left: 50%;
	transform: translate(-50%,0%);
}
	.post_example__inner {
		width: 90.6666%;
		max-width: initial;
	}
		#post_example .section__heading {
			margin-bottom: 19px;
		}
		.post_example__image_list {
			display: block;
			margin: 0 auto 52px;
		}
			.post_example__image {
				width: 100%;
			}
			.post_example__image:not(:last-of-type) {
				margin-bottom: 12px;
			}

#about {
	padding: 36px 0 95px;
}
	.about__inner {
		width: 100%;
		max-width: initial;
	}
		#overview {
			width: 77.866667%;
			margin: 0 auto 80px;
		}
			#overview .section__heading {
				margin-bottom: 26px;
			}
					.overview__item {
						display: block;
						padding: 0;
						border-bottom: initial;
					}
					.overview__item:not(:last-of-type) {
						margin-bottom: 30px;
					}
						.overview__item__heading {
							width: 100%;
							height: 28px;
							padding-bottom: 1px;
							margin-bottom: 17px;
							border-radius: 14px;
							font-size: 16px;
						}
						.overview__item__details {
							width: 100%;
							padding-left: 0;
							font-size: 16px;
						}
						.overview__item:nth-of-type(1) .overview__item__details {
							margin-top: -7px;
						}
						.overview__item:nth-of-type(2) .overview__item__details {
							margin-top: -8px;
						}
						.overview__item:nth-of-type(3) .overview__item__details {
							margin-top: -7px;
						}
							.overview__item__details > strong {
								font-weight: 700;
							}
							.overview__item__details__period,
							.overview__item__details__prize,
							.overview__item__details__txt {
								padding: 0;
								margin: 0px auto;
								font-size: 16px;
								font-weight: 700;
								line-height: 1;
								letter-spacing: 0.03em;
								text-align: center;
							}
								.overview__item__details__period strong,
								.overview__item__details__prize strong,
								.overview__item__details__txt strong {
									display: inline-block;
									font-size: 43px;
									font-weight: 600;
									line-height: 1;
									letter-spacing: 0.02em;
									position: relative;
									top: 2px;
								}
								.overview__item__details__period strong:not(:first-of-type),
								.overview__item__details__prize strong:not(:first-of-type),
								.overview__item__details__txt strong:not(:first-of-type) {
									margin-left: 2px;
								}
								.overview__item__details__period_week {
									width: 26px;
									height: 26px;
									margin-left: 2px;
									padding-bottom: 1px;
									font-size: 14px;
									position: relative;
									top: -5px;
								}
							.overview__item__details__prize_list {
								width: 100%;
								height: auto;
							}
								.overview__item__details__prize_item {
									padding: 8px 0;
									border-bottom: dashed 2px #D3D3D3;
								}
								.overview__item__details__prize_item:not(:last-of-type) {
									margin-bottom: 0px;
								}
								.overview__item__details__prize_item:last-of-type {
									border-bottom: initial;
								}
									.overview__item__details__prize_item__rank {
										width: 42px;
										height: 42px;
										padding-left: 3px;
										padding-bottom: 1px;
										margin-right: 10px;
									}
										.overview__item__details__prize_item__rank::after {
											border-width: 4px 0 4px 6px;
											right: 2px;
											transform: translate(100%,-50%);
										}
										.overview__item__details__prize_item__rank__txt {
											font-size: 13px;
										}
											.overview__item__details__prize_item__rank__txt strong {
												margin-right: 0px;
												font-size: 28px;
												top: 2px;
											}
											.overview__item__details__prize_item:nth-of-type(1) .overview__item__details__prize_item__rank__txt strong {
												margin-right: -1px;
											}
									.overview__item__details__prize_item__txt {
										font-size: 16px;
									}
									.overview__item__details__prize_item__people {
										width: 65px;
										font-size: 16px;
										margin: 0;
										text-align: right;
									}
										.overview__item__details__prize_item__people strong {
											margin-right: 3px;
											font-size: 26px;
											position: relative;
											top: 2px;
										}
							.overview__item__details ol {
								width: 100%;
								height: auto;
								counter-reset: number 0;
							}
								.overview__item__details ol li {
									width: 100%;
									height: auto;
									padding-left: 20px;
									position: relative;
								}
									.overview__item__details ol li::before {
										counter-increment: number 1;
										content: counter(number) ".";
										position: absolute;
										left: 0;
									}
							.overview__item__details__txt {
								font-size: 16px;
								text-align: center;
							}
								.overview__item__details__txt strong {
									margin-right: 4px;
									font-size: 43px;
									letter-spacing: -0.03em;
								}
		#terms {
			width: 90.6666%;
			margin: 0 auto;
		}
			#terms .section__heading {
				margin-bottom: 30px;
			}
}