@charset "utf-8";

/** Override **/

.pj-page { min-width:320px; }
.pj-contents { margin-top:0; }

:where(.sc-contents) {
	box-sizing:border-box;
	::before,
	::after,
	* { box-sizing:inherit; }
	
	&:where(.ios *) { font-feature-settings:"palt"; }
	
	:where(picture:not(:only-child) > img) { vertical-align:top; }
	:where(picture:only-child) {
		display:block;
		:where(& > img) {
			margin-inline:auto;
			display:block;
		}
	}
	
	em { font-weight:inherit; }
	a {
		text-decoration:none;
		color:currentColor;
		&:hover { color:currentColor; }
	}
	
	.bs-list--custom > li > :first-child {
		padding-top:0;
		padding-right:0.2em;
		width:0;
	}
	.bs-list--custom:where(ol) > li > :first-child { text-align:right; }
}

@media ( max-width:800px ) {}
@media ( max-width:667px ) {}

/** sc-contents **/

.sc-contents {
	margin:auto;
	padding:0;
	position:relative;
	font-family:"Noto Sans JP", sans-serif;
	color:#222;
}
.sc-contents__header { position:relative; }
.sc-contents__body   { position:relative; }
.sc-contents__footer {
	padding-block:40px;
	background-color:#FFF;
	position:relative;
}

.sc-contents__block {
	position:relative;
	display:flow-root;
}
.sc-contents__block--a { background-color:#FFF; }
.sc-contents__block--b { background-color:#F0F6FF; }
.sc-contents__block--c { background-color:#FBE9C6; }
.sc-contents__inner {
	margin-inline:auto;
	padding-inline:20px;
	display:block;
	max-width:1240px;
}

@media ( max-width:800px ) {
	.sc-contents__inner { padding-inline:10px; }
}
@media ( max-width:667px ) {}

/** sc-visual **/

.sc-visual {
	position:relative;
	display:block;
	overflow:hidden;
}
.sc-visual__title {
	margin:0 auto;
	position:relative;
	display:block;
	
	img {
		display:block;
		width:100%;
	}
}

@media ( max-width:800px ) {}
@media ( max-width:667px ) {}

/** sc-contentsNav **/

.sc-contentsNav {
	background-color:#FBE9C6;
	position:relative;
	display:block;
	color:#6A3906;
}
.sc-contentsNav__inner {
	margin-inline:auto;
	padding-block:0.5em;
	display:block;
	max-width:1200px;
}
.sc-contentsNav__list {
	--fs-clamp-min:16;
	--fs-clamp-max:18;
	
	margin:0 calc( 30 / 1200 * 100% );
	border:0 solid #512706;
	border-inline-width:1px;
	position:relative;
	display:flex;
	font-size:var( --fs-clamp-value );
	
	&:where(ul) {
		padding-left:0;
		list-style:none;
	}
	& > * {
		position:relative;
		flex:1;
		
		&:nth-child(n+2) { border-left:1px solid #512706; }
	}
}

@media ( max-width:800px ) {
	.sc-contentsNav__inner { padding-block:0; }
	.sc-contentsNav__list {
		--fs-clamp-min:15;
		--fs-clamp-max:16;
		
		margin-inline:calc( 20 / 800 * 100% );
		border:none;
		flex-wrap:wrap;
		
		& > * {
			margin-block:0.5em;
			width:50%;
			flex:none;
			
			&:nth-child(2n+1) { border-left:none; }
			&:nth-child(n+3)::before {
				border-top:1px solid #512706;
				position:absolute;
				top:calc( -0.5em - 1px / 2.5 );
				display:block;
				width:calc( 100% + 1px );
				height:1px;
				content:"";
			}
			&:nth-child(2n+1)::before { left:0; }
			&:nth-child(2n)::before { right:0; }
		}
	}
}
@media ( max-width:667px ) {}

/** sc-section **/

.sc-section {
	--section-margin-block:4em;
	--section-head-margin-bottom:2em;
	--section-body-padding-inline:calc( 60 / 1200 * 100% );
	
	margin-block:var( --section-margin-block );
	position:relative;
	display:block;
	color:#6A3906;
}
:where(.sc-section__head, .sc-section__body) {
	& > :first-child { margin-top:0; }
	& > :last-child { margin-bottom:0; }
}
.sc-section__head {
	margin-bottom:var( --section-head-margin-bottom );
	position:relative;
	display:block;
	text-align:center;
}
.sc-section__body {
	padding:1em var( --section-body-padding-inline );
	position:relative;
	display:block;
}
.sc-section__title {
	--fs-clamp-min:27;
	--fs-clamp-max:32;
	
	margin:0 auto;
	text-align:center;
	font-weight:bold;
	font-size:var( --fs-clamp-value );
}

.sc-section:where(:has(> .sc-section__head--overlap)) {
	--section-head-margin-bottom:0;
	
	display:grid;
	grid-template-rows:auto auto 1fr;
	grid-template-columns:100%;
	align-content:start;
}
.sc-section__head--overlap {
	z-index:1;
	grid-row:1 / span 2;
	grid-column:1;
}
.sc-section__body:where(.sc-section__head--overlap + *) {
	z-index:0;
	grid-row:2 / span 2;
	grid-column:1;
}

.sc-section__body--frame {
	padding:2.5em var( --section-body-padding-inline );
	border-radius:20px;
	background-color:#FFF;
	
	&:where(.sc-section__head--overlap + *) { padding-top:calc( 2.5em + 2.5% ); }
	&:where(.sc-contents__block--a *) { background-color:#F0F6FF; }
}

.sc-section__title--a {
	padding-block:0.5em;
	border-radius:100vmax;
	background-color:#567FB7;
	box-shadow:0 0 0 3px #567FB7 inset, 0 0 0 5px currentColor inset;
	max-width:420px;
	font-family:"Zen Maru Gothic", sans-serif;
	color:#FFF;
}

@media ( max-width:800px ) {
	.sc-section {
		--section-margin-block:3.5em;
		--section-head-margin-bottom:1.5em;
		--section-body-padding-inline:calc( 20 / 780 * 100% );
		
		&:where(:has(> .sc-section__head--overlap)) { --section-head-margin-bottom:0; }
		&:where(:has(> .sc-section__body--frame)) { --section-body-padding-inline:calc( 40 / 780 * 100% ); }
	}
	.sc-section__title {
		--fs-clamp-min:27;
		--fs-clamp-max:32;
	}
	.sc-section__title--a {
		--fs-clamp-min:24;
		--fs-clamp-max:27;
		
		max-width:70%;
	}
}
@media ( max-width:667px ) {
	.sc-section { --section-margin-block:3em; }
	.sc-section__title {
		--fs-clamp-min:24;
		--fs-clamp-max:27;
	}
	.sc-section__title--a {
		--fs-clamp-min:20;
		--fs-clamp-max:24;
	}
}

/** sc-button **/

.sc-button {
	&:where(:has(.sc-icon-caret-circle:last-child))::after { content:none; }
	&:where(.sc-contentsNav *) {
		--button-background-color:transparent;
		--button-background-color-hover:color-mix( in srgb, var( --button-background-color ) 60%, white );
		--button-foreground-color:inherit;
		
		padding-inline:0.5em;
		display:grid;
		grid-template:"content after" / auto auto;
		justify-content:center;
		font-weight:normal;
		
		&::before { content:none; }
	}
	&:where(.sc-section *) {
		--button-background-color:#6D3E10;
		
		border-radius:10px;
		box-shadow:2px 2px 3px rgb( 12 27 48 / 0.5 );
		display:grid;
	}
	&:where(.sc-applyStep__nav--form *) { --button-background-color:#C3240F; }
}

/** sc-icon-caret-circle **/

.sc-icon-caret-circle {
	--icon-caret-circle-back-color:#FFF;
	--icon-caret-circle-fore-color:#567FB7;
	--icon-caret-circle-clip-path:polygon( 0 0, 100% 50%, 0 100% );
	
	margin-bottom:-0.1em;
	border-radius:100%;
	background-color:var( --icon-caret-circle-back-color );
	position:relative;
	display:grid;
	place-items:center;
	width:20px;
	aspect-ratio:1;
	
	&::before {
		margin-right:-0.1em;
		background-color:var( --icon-caret-circle-fore-color );
		display:block;
		width:40%;
		aspect-ratio:0.9;
		clip-path:var( --icon-caret-circle-clip-path );
		content:"";
	}
	
	&:where(.sc-contentsNav *) {
		--icon-caret-circle-back-color:#567FB7;
		--icon-caret-circle-fore-color:#FFF;
		--icon-caret-circle-clip-path:polygon( 0 0, 100% 0, 50% 100% );
		
		&::before {
			margin-right:0;
			margin-bottom:-0.1em;
			aspect-ratio:1.1;
		}
	}
}

@media ( max-width:800px ) {}
@media ( max-width:667px ) {}

/** sc-about **/

.sc-about {
	position:relative;
	display:block;
	
	.sc-section__body {
		margin-inline:auto;
		display:flex;
		justify-content:center;
		align-items:center;
		gap:calc( 60 / 1080 * 100% );
	}
	.sc-section__title {
		letter-spacing:0.02em;
		line-height:1.5;
		
		& > em {
			padding-inline:0.15em;
			line-height:1;
			font-family:Oswald, sans-serif;
			font-size:150%;
		}
	}
}

.sc-about__image {
	display:block;
	width:calc( 200 / 1080 * 100% );
	max-width:260px;
	flex:none;
}
.sc-about__text {
	--fs-clamp-min:16;
	--fs-clamp-max:22;
	
	font-size:var( --fs-clamp-value );
	
	& > p { margin-block:0; }
}

@media ( max-width:800px ) {
	.sc-about {
		display:grid;
		grid-template-areas:
			"title image"
			"text text";
		gap:2em calc( 20 / 780 * 100% );
		
		.sc-section__head {
			margin-bottom:0;
			display:grid;
			place-content:center end;
		}
		.sc-section__body { display:contents; }
		.sc-section__title {
			--fs-clamp-min:26;
			--fs-clamp-max:30;
			
			grid-area:title;
			width:fit-content;
			height:fit-content;
			text-align:left;
		}
	}
	.sc-about__image {
		grid-area:image;
		width:100%;
	}
	.sc-about__text {
		--fs-clamp-min:18;
		--fs-clamp-max:20;
		
		grid-area:text;
		text-align:center;
	}
}
@media ( max-width:667px ) {
	.sc-about {
		.sc-section__title {
			--fs-clamp-min:22;
			--fs-clamp-max:26;
		}
	}
	.sc-about__text {
		--fs-clamp-min:15;
		--fs-clamp-max:18;
	}
}

/** sc-prize **/

.sc-prize {}

.sc-prize__text {
	--fs-clamp-min:20;
	--fs-clamp-max:24;
	
	margin-inline:auto;
	display:block;
	width:fit-content;
	text-align:center;
	line-height:1.5;
	font-size:var( --fs-clamp-value );
	
	& > em {
		font-weight:bold;
		font-size:120%;
		color:#C3240F;
	}
}
.sc-prize__image {
	margin-inline:auto;
	display:block;
	max-width:1080px;
}

@media ( max-width:800px ) {
	.sc-prize__text {
		--fs-clamp-min:18;
		--fs-clamp-max:20;
	}
	.sc-prize__image { max-width:540px; }
}
@media ( max-width:667px ) {
	.sc-prize__text {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
}

/** sc-apply **/

.sc-apply {}

.sc-apply__steps {
	& > :nth-child(n+2) {
		margin-top:2em;
		padding-top:2em;
		border-top:1px solid #567FB7;
	}
}

@media ( max-width:800px ) {}
@media ( max-width:667px ) {}

/** sc-applyStep **/

.sc-applyStep {
	position:relative;
	display:block;
	
	.sc-media {
		--media-aside-width:calc( 340 / 1080 * 100% );
		--media-gap:calc( 30 / 1080 * 100% );
	}
}
:where(.sc-applyStep__head, .sc-applyStep__body) {
	& > :first-child { margin-top:0; }
	& > :last-child { margin-bottom:0; }
}
.sc-applyStep__head {
	--fs-clamp-min:20;
	--fs-clamp-max:24;
	
	margin-bottom:1em;
	display:flex;
	align-items:center;
	gap:0.5em;
	font-weight:bold;
	font-size:var( --fs-clamp-value );
}
.sc-applyStep__body {
	--fs-clamp-min:18;
	--fs-clamp-max:20;
	
	font-size:var( --fs-clamp-value );
	
	p > a {
		text-decoration:underline;
		color:#0058D1;
		
		@media ( any-hover:hover ) {
			&:hover { color:#0058D1; }
		}
	}
}
.sc-applyStep__number {
	border-radius:100%;
	background-color:#567FB7;
	display:grid;
	place-items:center;
	flex:none;
	width:2em;
	aspect-ratio:1;
	font-family:Oswald, sans-serif;
	color:#FFF;
}
.sc-applyStep__title {
	margin-block:0;
	font-weight:inherit;
	font-size:inherit;
}
.sc-applyStep__image {
	margin-inline:auto;
	display:block;
}
.sc-applyStep__nav {
	display:block;
	max-width:540px;
	font-size:90%;
}
.sc-applyStep__nav--form { font-size:125%; }

@media ( max-width:800px ) {
	.sc-applyStep {
		.sc-media {
			--media-aside-width:100%;
			--media-gap:1.5em;
		}
		.sc-media__aside {
			width:var( --media-aside-width );
			max-width:540px;
		}
	}
	.sc-applyStep__head {
		--fs-clamp-min:18;
		--fs-clamp-max:20;
	}
	.sc-applyStep__body {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
	.sc-applyStep__nav--form { margin-inline:auto; }
}
@media ( max-width:667px ) {
	.sc-applyStep__head {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
	.sc-applyStep__body {
		--fs-clamp-min:14;
		--fs-clamp-max:16;
	}
}

/** sc-flow **/

.sc-flow {}

.sc-flow__steps {
	display:grid;
	grid-template-columns:repeat( 3, 1fr );
	align-content:start;
	gap:1.5em calc( 30 / 1080 * 100% );
	
	& > * {
		grid-template-rows:subgrid;
		grid-row:span 2;
	}
}
.sc-flow__rules {
	&:where(.sc-flow__steps + *) {
		margin-top:2em;
		padding-top:2em;
		border-top:1px solid #567FB7;
	}
}

@media ( max-width:800px ) {
	.sc-flow__steps {
		grid-template-columns:100%;
		gap:2em;
		
		& > * {
			grid-template-rows:initial;
			grid-row:initial;
		}
	}
}
@media ( max-width:667px ) {}

/** sc-flowStep **/

.sc-flowStep {
	position:relative;
	display:grid;
	grid-template-columns:100%;
	align-content:start;
	gap:1.5em;
}
:where(.sc-flowStep__head, .sc-flowStep__body) {
	& > :first-child { margin-top:0; }
	& > :last-child { margin-bottom:0; }
}
.sc-flowStep__head {
	--fs-clamp-min:18;
	--fs-clamp-max:20;
	
	display:flex;
	align-items:center;
	gap:0.5em;
	font-weight:bold;
	font-size:var( --fs-clamp-value );
}
.sc-flowStep__body {
	--fs-clamp-min:16;
	--fs-clamp-max:18;
	
	position:relative;
	display:flex;
	flex-direction:column;
	gap:1em;
	font-size:var( --fs-clamp-value );
	
	& > * { margin-block:0; }
	p > em {
		font-weight:bold;
		color:#C3240F;
	}
	.bs-list--custom { font-size:90%; }
}
.sc-flowStep__number {
	border-radius:100%;
	background-color:#567FB7;
	display:grid;
	place-items:center;
	flex:none;
	width:2.5em;
	aspect-ratio:1;
	font-family:Oswald, sans-serif;
	color:#FFF;
	
	& > * { line-height:1; }
	& > span {
		margin-bottom:-1em;
		font-size:65%;
	}
}
.sc-flowStep__title {
	margin-block:0;
	font-weight:inherit;
	font-size:inherit;
}
.sc-flowStep__image {
	margin-inline:auto;
	display:block;
	max-width:410px;
}

@media ( max-width:800px ) {
	.sc-flowStep__head {
		--fs-clamp-min:18;
		--fs-clamp-max:20;
	}
	.sc-flowStep__body {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
}
@media ( max-width:667px ) {
	.sc-flowStep__head {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
	.sc-flowStep__body {
		--fs-clamp-min:15;
		--fs-clamp-max:16;
	}
}

/** sc-postingRules **/

.sc-postingRules {
	position:relative;
	display:block;
	
	.sc-media {
		--media-aside-width:calc( 340 / 1080 * 100% );
		--media-gap:calc( 30 / 1080 * 100% );
	}
}
.sc-postingRules__head {
	--fs-clamp-min:20;
	--fs-clamp-max:22;
	
	margin-bottom:1em;
	font-weight:bold;
	font-size:var( --fs-clamp-value );
}
.sc-postingRules__body {
	--fs-clamp-min:16;
	--fs-clamp-max:18;
	
	font-size:var( --fs-clamp-value );
	
	.sc-media__body {
		display:grid;
		grid-template-columns:100%;
		align-content:start;
		gap:2em;
		
		* { margin-block:0; }
		h4 {
			margin-bottom:0.5em;
			font-weight:bold;
			font-size:inherit;
		}
		ul { margin-top:0.5em; }
	}
}
.sc-postingRules__title {
	margin-block:0;
	text-align:center;
	font-weight:inherit;
	font-size:inherit;
}
.sc-postingRules__tags {
	font-weight:bold;
	color:#C3240F;
}

@media ( max-width:800px ) {
	.sc-postingRules {
		.sc-media {
			--media-aside-width:100%;
			--media-gap:2em;
		}
		.sc-media__aside {
			width:var( --media-aside-width );
			max-width:540px;
		}
	}
	.sc-postingRules__head {
		--fs-clamp-min:20;
		--fs-clamp-max:22;
	}
	.sc-postingRules__body {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
}
@media ( max-width:667px ) {
	.sc-postingRules__head {
		--fs-clamp-min:18;
		--fs-clamp-max:20;
	}
	.sc-postingRules__body {
		--fs-clamp-min:14;
		--fs-clamp-max:16;
	}
}

/** sc-taggingStepGuide **/

.sc-taggingStepGuide {
	padding-block:1em;
	background-color:#FFFDE2;
	position:relative;
	display:block;
}
.sc-taggingStepGuide__title {
	--fs-clamp-min:18;
	--fs-clamp-max:20;
	
	margin:0 auto 1em;
	padding-block:0.5em;
	border-radius:10em;
	background-color:#4E3A2A;
	display:block;
	max-width:calc( 280 / 340 * 100% );
	text-align:center;
	font-weight:bold;
	font-size:var( --fs-clamp-value );
	color:#FFF;
}
.sc-taggingStepGuide__slider {
	padding:0 calc( 30 / 340 * 100% ) 30px;
	overflow:hidden;
	
	&:where(swiper-container) {
		--swiper-theme-color:#452F1F;
		--swiper-navigation-size:calc( 25 / 280 * 100% );
		--swiper-navigation-sides-offset:calc( 20 / 280 * -100% );
		--swiper-pagination-bottom:-20px;
		--swiper-pagination-bullet-border-radius:10px;
		--swiper-pagination-bullet-width:20px;
		--swiper-pagination-bullet-height:10px;
		--swiper-pagination-bullet-inactive-color:transparent;
		--swiper-pagination-bullet-inactive-opacity:0.35;
		
		&::part(container), &::part(wrapper),
		&::part(button-prev), &::part(button-next),
		&::part(pagination), &::part(bullet-active), &::part(bullet) { box-sizing:inherit; }
		
		&::part(container) { overflow:visible; }
		&::part(pagination) {
			display:flex;
			justify-content:center;
		}
		&::part(bullet-active),
		&::part(bullet) {
			border:2px solid var( --swiper-theme-color );
			display:block;
		}
		
		:where(swiper-slide > img) {
			margin-inline:auto;
			display:block;
		}
	}
}

@media ( max-width:800px ) {
	.sc-taggingStepGuide__title {
		--fs-clamp-min:18;
		--fs-clamp-max:20;
	}
}
@media ( max-width:667px ) {
	.sc-taggingStepGuide__title {
		--fs-clamp-min:16;
		--fs-clamp-max:18;
	}
}

/** sc-recipes **/

.sc-recipes {}

.sc-recipes__list {
	margin:0 auto;
	display:flex;
	gap:calc( 60 / 1080 * 100% );
	
	&:where(ul) {
		padding-left:0;
		list-style:none;
	}
	& > * { flex:1; }
}
.sc-recipes__nav {
	--fs-clamp-min:16;
	--fs-clamp-max:18;
	
	margin:2em auto 0;
	display:block;
	max-width:360px;
	font-size:var( --fs-clamp-value );
}

@media ( max-width:800px ) {
	.sc-recipes__list {
		flex-direction:column;
		gap:2em;
		max-width:540px;
	}
	.sc-recipes__nav {
		--fs-clamp-min:15;
		--fs-clamp-max:16;
	}
}
@media ( max-width:667px ) {}

/** sc-terms **/

.sc-terms {}

.sc-terms__cautionNote {
	--fs-clamp-min:17;
	--fs-clamp-max:18;
	
	margin-top:0.2em;
	text-align:center;
	font-size:var( --fs-clamp-value );
	color:#C3240F;
}
.sc-terms__details {
	display:grid;
	grid-template-columns:100%;
	align-content:start;
	gap:2em;
}
.sc-terms__detailsItem {
	.sc-panel { --panel-head-background-color:#567FB7; }
	.sc-panel__head {
		--fs-clamp-min:22;
		--fs-clamp-max:24;
		
		font-size:var( --fs-clamp-value );
	}
	.sc-panel__body {
		--fs-clamp-min:17;
		--fs-clamp-max:18;
		
		font-size:var( --fs-clamp-value );
	}
	.sc-panel__title {
		margin-block:auto;
		font-size:inherit;
	}
	.sc-panel__content {
		padding:0.8em 0.4em 0;
		
		.bs-list--custom {
			line-height:1.4;
			font-size:90%;
		}
	}
}

@media ( max-width:800px ) {
	.sc-terms__cautionNote {
		--fs-clamp-min:17;
		--fs-clamp-max:18;
	}
	.sc-terms__details { gap:1.5em; }
	.sc-terms__detailsItem {
		.sc-panel__head {
			--fs-clamp-min:20;
			--fs-clamp-max:22;
		}
		.sc-panel__body {
			--fs-clamp-min:16;
			--fs-clamp-max:17;
		}
	}
}
@media ( max-width:667px ) {
	.sc-terms__cautionNote {
		--fs-clamp-min:16;
		--fs-clamp-max:17;
	}
	.sc-terms__details { gap:1em; }
	.sc-terms__detailsItem {
		.sc-panel__head {
			--fs-clamp-min:18;
			--fs-clamp-max:20;
		}
		.sc-panel__body {
			--fs-clamp-min:15;
			--fs-clamp-max:16;
		}
	}
}

/** sc-contact **/

.sc-contact {}

.sc-contact__heading {
	--fs-clamp-min:26;
	--fs-clamp-max:28;
	
	text-align:center;
	line-height:1.5;
	font-weight:bold;
	font-size:var( --fs-clamp-value );
}
.sc-contact__list {
	--fs-clamp-min:22;
	--fs-clamp-max:24;
	
	margin:0 auto;
	display:block;
	width:fit-content;
	line-height:1.5;
	font-size:var( --fs-clamp-value );
	
	&:where(ul) {
		padding-left:0;
		list-style:none;
	}
	
	& > :nth-child(n+2) { margin-top:0.2em; }
	& > * { display:flex; }
	& > * > :first-child { white-space:nowrap; }
	& + .bs-list--custom {
		margin:2.0em auto 0;
		max-width:760px;
	}
}

@media ( max-width:800px ) {
	.sc-contact__heading {
		--fs-clamp-min:22;
		--fs-clamp-max:26;
	}
	.sc-contact__list {
		--fs-clamp-min:20;
		--fs-clamp-max:22;
		
		& > * { justify-content:center; }
	}
}
@media ( max-width:667px ) {
	.sc-contact__heading {
		--fs-clamp-min:17;
		--fs-clamp-max:22;
	}
	.sc-contact__list {
		--fs-clamp-min:13;
		--fs-clamp-max:20;
	}
}
