@charset "UTF-8";

/* --------------------------------------------
APPLY
--------------------------------------------- */
:where( #apply , #confirm ){
	button[type="submit"]{
		position : relative;
		z-index : 1;
		display : grid;
		place-items : center;
		margin-inline : auto;
		font-weight : 700;
		color : white;
		border-radius : 100vmax;
		&::before , &::after{
			position : absolute;
			z-index : -1;
			font-size : 0;
			content : "";
			border-radius : 100vmax;
		}
		&::before{
			inset : 0;
			background-image : var( --gradation01 );
			opacity : 1;
		}
		&::after{
			inset : 1px;
			background-color : white;
			opacity : 0;
		}
	}
	@media screen and ( width <= 780px ){
		padding-bottom : calc( 60 var( --remBase ) );
		button[type="submit"]{
			font-size : 1.4rem;
			line-height : calc( 24 / 14 );
		}
	}
	@media print , screen and ( width > 780px ){
		padding-bottom : calc( 100 var( --remBase ) );
		form{
			width : calc( 780 var( --percentBase ) );
			margin-inline : auto;
			margin-top : calc( ( 77 - 4 ) var( --remBase ) );
		}
		button[type="submit"]{
			font-size : 1.6rem;
			line-height : calc( 30 / 16 );
			text-align : center;
			text-indent : .03em;
			letter-spacing : .03em;
		}
	}
}
@media ( hover : hover ){
	:where( #apply , #confirm ){
		button[type="submit"]:hover{
			color : var( --color03 );
			&::after{
				opacity : 1;
			}
		}
	}
}
@media ( prefers-reduced-motion : no-preference ){
	:where( #apply , #confirm ){
		button[type="submit"]{
			transition : color var( --transitionBase );
			&::after{
				transition : opacity var( --transitionBase );
			}
		}
	}
}
#apply{
	fieldset{
		&:has( legend ){
			legend{
				border-top : solid 1px #e4e4e4;
			}
		}
		&:not( :has( legend ) ){
			border-top : solid 1px #e4e4e4;
		}
	}
	legend{
		display : block;
		width : 100%;
		font-weight : 700;
	}
	dt{
		label{
			display : grid;
			align-items : start;
		}
	}
	dt:has( + dd :where( [aria-required] , input[type="radio"] ) ){
		label{
			&::after{
				display : grid;
				place-items : center;
				color : white;
				content : "必須";
				background-color : #d20000;
			}
		}
	}
	:where( select , input[type="text"] , input[type="email"] , textarea ){
		border-radius : 0;
		outline : solid 1px var( --color06 );
		outline-offset : -1px;
		&::placeholder{
			color : var( --color06 );
		}
	}
	select{
		background-color : white;
		background-image : url( "../../images/recruit/ui/arrow/down02.svg" );
		background-repeat : no-repeat;
	}
	textarea{
		padding-block : calc( ( 1lh - 1em ) / 2 );
	}
	:where( .dates01 , .dates02 ){
		display : grid;
		align-items : start;
	}
	.wpcf7-form-control-wrap:has( .wpcf7-radio ){
		display : block;
		.wpcf7-radio{
			display : flex;
			flex-wrap : wrap;
		}
		.wpcf7-list-item{
			margin-left : 0;
		}
		input{
			accent-color : var( --base );
			border : solid 1px #e4e4e4;
		}
		label{
			display : grid;
			align-items : center;
			justify-content : start;
		}
	}
	.wpcf7-form-control-wrap:has( .wpcf7-acceptance ){
		display : block;
		.wpcf7-acceptance , .wpcf7-list-item{
			display : contents;
		}
		label{
			display : grid;
			grid-template-columns : auto auto;
			align-items : center;
			justify-content : center;
			width : fit-content;
			margin-inline : auto;
		}
		input{
			border-color : var( --color06 );
			accent-color : var( --base );
		}
		a{
			display : inline-grid;
			grid-auto-flow : column;
			align-items : center;
			justify-content : start;
			color : var( --color04 );
			-webkit-text-decoration : underline;
			text-decoration : underline;
			&::after{
				display : block;
				width : auto;
				aspect-ratio : 1;
				font-size : 0;
				content : "";
				background-image : url( "../../images/recruit/ui/icon/blnak.svg" );
				background-repeat : no-repeat;
				background-position : left center;
				background-size : contain;
			}
		}
		.wpcf7-not-valid-tip{
			text-align : center;
		}
	}
	button[type="submit"]{
		margin-inline : auto;
	}
	.wpcf7-not-valid-tip{
		color : #d20000;
		white-space : pre;
	}
	@media screen and ( width <= 780px ){
		padding-top : calc( ( 44 - 5.7 - 5 ) var( --remBase ) );
		> p{
			font-size : 1.4rem;
			line-height : calc( 24 / 14 );
			text-align : center;
		}
		form{
			margin-top : calc( ( 60 - 5 ) var( --remBase ) );
		}
		fieldset{
			padding-bottom : calc( 20 var( --remBase ) );
			&:has( legend ){
				legend{
					padding-top : calc( ( 20 - 2.94 ) var( --remBase ) );
				}
			}
			&:not( :has( legend ) ){
				padding-top : calc( 20 var( --remBase ) );
			}
		}
		legend{
			font-size : 1.4rem;
			line-height : 1.42;
		}
		legend + dl{
			margin-top : calc( ( 20 - 2.94 - 3.44 ) var( --remBase ) );
		}
		dt{
			label{
				grid-template-columns : auto calc( 30 var( --percentBase ) );
				column-gap : calc( 16 var( --percentBase ) );
				justify-content : start;
				font-size : 1.3rem;
				line-height : calc( 19.88 / 13 );
			}
		}
		dt:has( + dd :where( [aria-required] , input[type="radio"] ) ){
			label::after{
				height : calc( 18 var( --remBase ) );
				margin-top : calc( .94 var( --remBase ) );
				font-size : 1.05rem;
			}
		}
		:where( .dates01 , .dates02 ){
			> span:not( .wpcf7-form-control-wrap ){
				padding-top : calc( 8.9341 var( --remBase ) );
				padding-left : calc( 10 * 100% / 40 );
				font-size : 1.3rem;
				line-height : calc( 17.1318 / 13 );
			}
		}
		dd{
			margin-top : calc( ( 15 - 3.44 ) var( --remBase ) );
		}
		dd + dt{
			margin-top : calc( ( 15 - 3.44 ) var( --remBase ) );
		}
		:where( select , input[type="text"] , input[type="email"] , textarea ){
			width : 100%;
			padding-inline : calc( 10 var( --remBase ) );
			font-size : 1.2rem;
			line-height : calc( 19.88 / 12 );
		}
		:where( select , input[type="text"] , input[type="email"]  ){
			height : calc( 35 var( --remBase ) );
		}
		select{
			background-position : right calc( 8 var( --remBase ) ) top 50%;
			background-size : auto calc( 7.7314 var( --remBase ) );
		}
		.dates01{
			grid-template-columns : calc( 80 var( --percentBase ) ) calc( 40 var( --percentBase ) ) calc( 10 var( --percentBase ) ) calc( 40 var( --percentBase ) ) calc( 30 var( --percentBase ) ) calc( 40 var( --percentBase ) );
			row-gap : calc( 10 var( --remBase ) );
			> span{
				&:nth-of-type( 1 ){
					grid-row : 1;
					grid-column : 1/4;
				}
				&:nth-of-type( 2 ){
					grid-row : 1;
					grid-column : 4;
				}
				&:nth-of-type( 3 ){
					grid-row : 2;
					grid-column : 1;
				}
				&:nth-of-type( 4 ){
					grid-row : 2;
					grid-column : 2;
				}
				&:nth-of-type( 5 ){
					grid-row : 2;
					grid-column : 3/6;
				}
				&:nth-of-type( 6 ){
					grid-row : 2;
					grid-column : 6;
				}
			}
		}
		.wpcf7-form-control-wrap:has( .wpcf7-radio ){
			padding-block : calc( 4.25 var( --remBase ) );
			.wpcf7-radio{
				column-gap : calc( 35 var( --percentBase ) );
			}
			.wpcf7-list-item-label{
				font-size : 1.3rem;
				line-height : calc( 26.5 / 13 );
			}
			label{
				grid-template-columns : calc( 20 var( --remBase ) ) auto;
				column-gap : calc( 8 var( --remBase ) );
			}
			input{
				height : calc( 20 var( --remBase ) );
			}
		}
		.addresses{
			#apply_zip{
				width : calc( 180 var( --percentBase ) );
			}
			#apply_address{
				margin-top : calc( 10 var( --remBase ) );
			}
		}
		.dates02{
			grid-template-columns : calc( 130 var( --percentBase ) ) calc( 40 var( --percentBase ) ) calc( 80 var( --percentBase ) ) calc( 40 var( --percentBase ) );
		}
		textarea{
			height : calc( 100 var( --remBase ) );
		}
		.wpcf7-form-control-wrap:has( .wpcf7-acceptance ){
			margin-top : calc( ( 35 - 20 - 6.75 ) var( --remBase ) );
			input{
				height : calc( 21 var( --remBase ) );
				border-radius : calc( 3.4357 var( --remBase ) );
			}
			label{
				grid-template-columns : calc( 21 var( --remBase ) ) auto;
				column-gap : calc( 6 var( --remBase ) );
			}
			.wpcf7-list-item-label{
				font-size : 1.3rem;
				line-height : calc( 26.5 / 13 );
			}
			a{
				column-gap : calc( 7 var( --remBase ) );
				&::after{
					height : calc( 15 var( --remBase ) );
					margin-right : calc( 7 var( --remBase ) );
				}
			}
		}
		button[type="submit"]{
			width : calc( 220 var( --percentBase ) );
			height : calc( 38 var( --remBase ) );
			margin-top : calc( ( 35 - 6.75 ) var( --remBase ) );
		}
		.wpcf7-not-valid-tip{
			font-size : 1.3rem;
			line-height : calc( 26.5 / 13 );
		}
	}
	@media print , screen and ( width > 780px ){
		padding-top : calc( ( 100 - 9 - 4 ) var( --remBase ) );
		> p{
			font-size : 1.6rem;
			line-height : 1.5;
			text-align : center;
			text-indent : .03em;
			letter-spacing : .03em;
		}
		fieldset{
			padding-bottom : calc( 50 var( --remBase ) );
			&:has( legend ){
				legend{
					padding-top : calc( ( 50 - 2.94 ) var( --remBase ) );
				}
			}
			&:not( :has( legend ) ){
				padding-top : calc( 50 var( --remBase ) );
			}
		}
		legend{
			font-size : 1.8rem;
			line-height : calc( 26.5 / 18 );
		}
		dl{
			display : grid;
			grid-template-columns : calc( 260 * 100% / 780 ) calc( 500 * 100% / 780 );
			column-gap : calc( 20 * 100% / 780 );
			align-items : start;
		}
		legend + dl{
			margin-top : calc( ( 20 - 4.25 ) var( --remBase ) );
		}
		dt{
			padding-top : calc( 6.5 var( --remBase ) );
			label{
				grid-template-columns : auto calc( 40 * 100% / 260 );
				column-gap : calc( 20 * 100% / 260 );
				justify-content : end;
				font-size : 1.6rem;
				line-height : calc( 26.5 / 16 );
			}
		}
		dt:has( + dd :where( [aria-required] , input[type="radio"] ) ){
			label::after{
				height : calc( 24 var( --remBase ) );
				font-size : 1.4rem;
			}
		}
		:where( dt, dd ):not( :first-of-type ){
			margin-top : calc( 25 var( --remBase ) );
		}
		:where( select , input[type="text"] , input[type="email"] , textarea ){
			width : 100%;
			padding-inline : calc( 12 var( --remBase ) );
			font-size : 1.6rem;
			line-height : calc( 26.5 / 16 );
		}
		:where( select , input[type="text"] , input[type="email"]  ){
			height : calc( 40 var( --remBase ) );
		}
		select{
			background-position : right calc( 12 var( --remBase ) ) top 50%;
			background-size : auto calc( 9.9546 var( --remBase ) );
		}
		:where( .dates01 , .dates02 ){
			> span:not( .wpcf7-form-control-wrap ){
				padding-left : calc( 10 * 100% / 40 );
				margin-top : calc( 6.5 var( --remBase ) );
				font-size : 1.6rem;
				line-height : calc( 26.5 / 16 );
			}
		}
		.dates01{
			grid-template-columns : calc( 130 * 100% / 500 ) calc( 40 * 100% / 500 ) calc( 80 * 100% / 500 ) calc( 40 * 100% / 500 ) calc( 80 * 100% / 500 ) calc( 40 * 100% / 500 );
		}
		.wpcf7-form-control-wrap:has( .wpcf7-radio ){
			padding-block : calc( 6.5 var( --remBase ) );
			.wpcf7-radio{
				column-gap : calc( 30 * 100% / 500 );
			}
			.wpcf7-list-item-label{
				font-size : 1.6rem;
				line-height : calc( 26.5 / 16 );
			}
			label{
				grid-template-columns : calc( 20 var( --remBase ) ) auto;
				column-gap : calc( 6 var( --remBase ) );
			}
			input{
				height : calc( 20 var( --remBase ) );
			}
		}
		.addresses{
			#apply_zip{
				width : calc( 180 * 100% / 500 );
			}
			#apply_address{
				margin-top : calc( 25 var( --remBase ) );
			}
		}
		.dates02{
			grid-template-columns : calc( 130 * 100% / 500 ) calc( 40 * 100% / 500 ) calc( 80 * 100% / 500 ) calc( 40 * 100% / 500 );
		}
		textarea{
			height : calc( 120 var( --remBase ) );
		}
		.wpcf7-form-control-wrap:has( .wpcf7-acceptance ){
			margin-top : calc( -5.25 var( --remBase ) );
			input{
				height : calc( 25 var( --remBase ) );
			}
			label{
				grid-template-columns : calc( 25 var( --remBase ) ) auto;
				column-gap : calc( 10 var( --remBase ) );
			}
			.wpcf7-list-item-label{
				font-size : 1.6rem;
				line-height : calc( 26.5 / 16 );
			}
			a{
				column-gap : calc( 10 var( --remBase ) );
				&::after{
					height : calc( 18 var( --remBase ) );
					margin-right : calc( 10 var( --remBase ) );
				}
			}
		}
		button[type="submit"]{
			width : calc( 280 * 100% / 780 );
			height : calc( 55 var( --remBase ) );
			margin-top : calc( ( 35 - 5.25 ) var( --remBase ) );
		}
		.wpcf7-not-valid-tip{
			font-size : 1.6rem;
			line-height : calc( 26.5 / 16 );
		}
		.dates01{
			.wpcf7-not-valid-tip{
				font-size : 1.2rem;
				line-height : calc( 26.5 / 12 );
			}
		}
	}
}

/* --------------------------------------------
CONFIRM
--------------------------------------------- */
#confirm{
	h2{
		font-weight : 700;
		text-align : center;
	}
	.fieldset{
		border-top : solid 1px #e4e4e4;
	}
	h3{
		font-weight : 700;
	}
	dt:not( .any ){
		&::after{
			display : grid;
			place-items : center;
			color : white;
			content : "必須";
			background-color : #d20000;
		}
	}
	dd:not( :has( span ) ){
		background-color : #f7f7f7;
	}
	:where( .dates01 , .dates02 ){
		> span:nth-of-type( odd ){
			background-color : #f7f7f7;
		}
	}
	.radio{
		display : grid;
		grid-template-columns : auto auto;
		align-items : center;
		justify-content : start;
		&::before{
			display : block;
			width : auto;
			aspect-ratio : 1;
			font-size : 0;
			content : "";
			background-repeat : no-repeat;
			background-position : left center;
			background-size : contain;
			border-radius : 50%;
			outline : solid 1px #e4e4e4;
			outline-offset : -1px;
		}
	}
	.addresses{
		> span{
			display : block;
			background-color : #f7f7f7;
		}
	}
	.wpcf7-previous{
		display : grid;
		grid-auto-flow : column;
		align-items : center;
		justify-content : center;
		color : var( --color02 );
		&::before{
			display : block;
			width : auto;
			aspect-ratio : 30.958/20.8857;
			font-size : 0;
			content : "";
			background-image : url( "../../images/recruit/ui/icon/return.svg" );
			background-repeat : no-repeat;
			background-position : left center;
			background-size : contain;
		}
	}
	@media screen and ( width <= 780px ){
		padding-top : calc( ( 44 - 5.7 - 5.7 ) var( --remBase ) );
		h2{
			font-size : 1.8rem;
			line-height : calc( 29.4 / 18 );
		}
		> p{
			margin-top : calc( ( 30 - 5.7 - 5 ) var( --remBase ) );
			font-size : 1.4rem;
			line-height : calc( 24 / 14 );
		}
		form{
			margin-top : calc( ( 60 - 5 ) var( --remBase ) );
		}
		.fieldset{
			padding-bottom : calc( 20 var( --remBase ) );
			&:not( :has( h3 ) ){
				padding-top : calc( ( 25 - 3.44 ) var( --remBase ) );
			}
			&:has( h3 ){
				padding-top : calc( ( 25 - 2.99 ) var( --remBase ) );
			}
		}
		h3{
			font-size : 1.4rem;
			line-height : 1.42;
		}
		h3 + dl{
			margin-top : calc( ( 20 - 2.99 - 3.44 ) var( --remBase ) );
		}
		dt{
			display : grid;
			grid-template-columns : auto calc( 30 var( --percentBase ) );
			column-gap : calc( 15 var( --percentBase ) );
			align-items : start;
			justify-content : start;
			font-size : 1.3rem;
			line-height : calc( 19.88 / 13 );
			&:not( .any )::after{
				height : calc( 18 var( --remBase ) );
				margin-top : calc( .94 var( --remBase ) );
				font-size : 1.05rem;
			}
		}
		dd{
			margin-top : calc( ( 15 - 3.44 ) var( --remBase ) );
			font-size : 1.2rem;
			line-height : calc( 19.88 / 12 );
		}
		dd:not( :has( span ) ){
			height : calc( 35 var( --remBase ) );
			padding-inline : calc( 8 var( --remBase ) );
			padding-top : calc( 7.56 var( --remBase ) );
		}
		dd + dt{
			margin-top : calc( ( 15 - 3.44 ) var( --remBase ) );
		}
		:where( .dates01 , .dates02 ){
			display : grid;
			row-gap : calc( 10 var( --remBase ) );
			align-items : center;
			> span:nth-of-type( odd ){
				height : calc( 35 var( --remBase ) );
				padding-inline : calc( 8 var( --remBase ) );
				padding-top : calc( 7.56 var( --remBase ) );
			}
			> span:nth-of-type( even ){
				padding-left : calc( 10 var( --remBase ) );
			}
		}
		.dates01{
			grid-template-columns : calc( 80 var( --percentBase ) ) calc( 35 var( --percentBase ) ) calc( 15 var( --percentBase ) ) calc( 35 var( --percentBase ) ) calc( 30 var( --percentBase ) ) calc( 35 var( --percentBase ) );
			> span{
				&:nth-of-type( 1 ){
					grid-row : 1;
					grid-column : 1/4;
				}
				&:nth-of-type( 2 ){
					grid-row : 1;
					grid-column : 4;
				}
				&:nth-of-type( 3 ){
					grid-row : 2;
					grid-column : 1;
				}
				&:nth-of-type( 4 ){
					grid-row : 2;
					grid-column : 2;
				}
				&:nth-of-type( 5 ){
					grid-row : 2;
					grid-column : 3/6;
				}
				&:nth-of-type( 6 ){
					grid-row : 2;
					grid-column : 6;
				}
			}
		}
		.radio{
			column-gap : calc( 8 var( --remBase ) );
			&::before{
				height : calc( 20 var( --remBase ) );
				font-size : 1.3rem;
				line-height : calc( 26.5 / 13 );
			}
		}
		.addresses{
			span{
				display : block;
				padding-inline : calc( 8 var( --remBase ) );
				padding-top : calc( 7.56 var( --remBase ) );
				&:nth-of-type( 1 ){
					width : calc( 180 var( --percentBase ) );
				}
				+ span{
					margin-top : calc( 10 var( --remBase ) );
				}
			}
		}
		.dates02{
			grid-template-columns : calc( 130 var( --percentBase ) ) calc( 35 var( --percentBase ) ) calc( 80 var( --percentBase ) ) calc( 35 var( --percentBase ) );
		}
		.textarea{
			min-height : calc( 100 var( --remBase ) );
		}
		.buttons{
			margin-top : calc( ( 32 - 20 ) var( --remBase ) );
		}
		button[type="submit"]{
			width : calc( 220 var( --percentBase ) );
			height : calc( 38 var( --remBase ) );
			text-align : center;
			text-indent : .03em;
			letter-spacing : .03em;
		}
		.wpcf7-previous{
			column-gap : calc( 8 var( --remBase ) );
			width : fit-content;
			margin-inline : auto;
			margin-top : calc( ( 30 - 8.9 ) var( --remBase ) );
			font-size : 1.4rem;
			line-height : calc( 31.8 / 14 );
			&::before{
				height : calc( 16.084 var( --remBase ) );
			}
		}
	}
	@media print , screen and ( width > 780px ){
		padding-top : calc( ( 50 - 9 - 9 ) var( --remBase ) );
		h2{
			font-size : 2.4rem;
			line-height : 1.75;
		}
		> p{
			margin-top : calc( ( 20 - 9 - 4 ) var( --remBase ) );
			font-size : 1.6rem;
			line-height : 1.5;
			text-align : center;
			text-indent : .03em;
			letter-spacing : .03em;
		}
		.fieldset{
			position : relative;
			display : grid;
			padding-block : calc( 50 var( --remBase ) );
		}
		h3{
			position : absolute;
			top : calc( ( 50 + 6.75 ) var( --remBase ) );
			left : 0;
			font-size : 1.8rem;
			line-height : calc( 26.5 / 18 );
		}
		dl{
			display : grid;
			grid-template-columns : calc( 260 * 100% / 780 ) calc( 500 * 100% / 780 );
			column-gap : calc( 20 * 100% / 780 );
			align-items : start;
		}
		dt{
			display : grid;
			grid-template-columns : auto calc( 40 * 100% / 260 );
			column-gap : calc( 20 * 100% / 260 );
			align-items : center;
			justify-content : end;
			padding-top : calc( 6.75 var( --remBase ) );
			font-size : 1.6rem;
			line-height : calc( 26.5 / 16 );
			&:not( .any )::after{
				height : calc( 24 var( --remBase ) );
				margin-top : calc( 1.25 var( --remBase ) );
				font-size : 1.4rem;
			}
		}
		dd{
			font-size : 1.6rem;
			line-height : calc( 26.5 / 16 );
		}
		dd:not( :has( span ) ){
			height : calc( 40 var( --remBase ) );
			padding-inline : calc( 12 var( --remBase ) );
			padding-top : calc( 6.75 var( --remBase ) );
		}
		:where( dt,dd ):not( :first-of-type ){
			margin-top : calc( 25 var( --remBase ) );
		}
		:where( .dates01 , .dates02 ){
			display : grid;
			grid-template-columns : calc( 130 * 100% / 500 ) calc( 40 * 100% / 500 ) calc( 105 * 100% / 500 ) calc( 40 * 100% / 500 ) calc( 105 * 100% / 500 ) calc( 40 * 100% / 500 );
			align-items : center;
			> span:nth-of-type( odd ){
				height : calc( 40 var( --remBase ) );
				padding-inline : calc( 12 var( --remBase ) );
				padding-top : calc( 6.75 var( --remBase ) );
			}
			> span:nth-of-type( even ){
				padding-left : calc( 10 var( --remBase ) );
			}
		}
		.radio{
			column-gap : calc( 8 var( --remBase ) );
			padding-top : calc( 6.5 var( --remBase ) );
			&::before{
				height : calc( 20 var( --remBase ) );
				font-size : 1.6rem;
				line-height : calc( 26.5 / 16 );
			}
		}
		.addresses{
			span{
				display : block;
				padding-inline : calc( 12 var( --remBase ) );
				padding-top : calc( 6.75 var( --remBase ) );
				&:nth-of-type( 1 ){
					width : calc( 180 * 100% / 500 );
				}
				+ span{
					margin-top : calc( 25 var( --remBase ) );
				}
			}
		}
		.textarea{
			min-height : calc( 120 var( --remBase ) );
		}
		.buttons{
			display : grid;
			grid-template-columns : auto calc( 280 * 100% / 780 );
			column-gap : calc( 70 * 100% / 780 );
			align-items : center;
			justify-content : center;
			margin-top : calc( 50 var( --remBase ) );
		}
		button[type="submit"]{
			grid-row : 1;
			grid-column : 2;
			width : 100%;
			height : calc( 55 var( --remBase ) );
		}
		.wpcf7-previous{
			grid-row : 1;
			grid-column : 1;
			column-gap : calc( 10 var( --remBase ) );
			font-size : 1.8rem;
			line-height : calc( 31.8 / 18 );
			&::before{
				height : calc( 20.8857 var( --remBase ) );
			}
		}
	}
}

/* --------------------------------------------
COMPLETE
--------------------------------------------- */
#complete{
	h2{
		font-weight : 700;
		text-align : center;
	}
	p + p{
		margin-top : 1em;
	}
	a[href^="mail"]{
		font-weight : 700;
	}
	@media screen and ( width <= 780px ){
		padding-top : calc( ( 40 - 5.7 - 5.7 ) var( --remBase ) );
		padding-bottom : calc( ( 64 - 5 ) var( --remBase ) );
		h2{
			font-size : 1.8rem;
			line-height : calc( 29.4 / 18 );
		}
		h2 + p{
			margin-top : calc( ( 44 - 5.7 - 5 ) var( --remBase ) );
		}
		p{
			font-size : 1.4rem;
			line-height : calc( 24 / 14 );
		}
	}
	@media print , screen and ( width > 780px ){
		padding-top : calc( ( 50 - 9 - 9 ) var( --remBase ) );
		padding-bottom : calc( ( 100 - 6 ) var( --remBase ) );
		h2{
			font-size : 2.4rem;
			line-height : 1.75;
		}
		h2 + p{
			margin-top : calc( ( 60 - 9 - 6 ) var( --remBase ) );
		}
		p{
			font-size : 1.6rem;
			line-height : 1.75;
			text-align : center;
			text-indent : .03em;
			letter-spacing : .03em;
		}
	}
}

/* --------------------------------------------
PRIVACY POLICY
--------------------------------------------- */
#privacy{
	h2{
		font-weight : 700;
		border-bottom : solid 1px #e4e4e4;
	}
	:where( p , li li , address , dl ){
		letter-spacing : .03em;
	}
	ul ul{
		counter-reset : no;
	}
	ul ul li{
		display : grid;
		grid-template-columns : auto 1fr;
		grid-auto-rows : auto;
		align-items : start;
		justify-content : start;
		counter-increment : no;
		&::before{
			content : counter( no ) ".";
		}
		ul{
			grid-column : 2;
		}
	}
	dl{
		display : grid;
		grid-auto-flow : column;
		column-gap : 1em;
		align-items : start;
		justify-content : start;
	}
	@media screen and ( width <= 780px ){
		padding-top : calc( ( 46 - 5.7 - 5 ) var( --remBase ) );
		padding-bottom : calc( ( 100 - 5 ) var( --remBase ) );
		h2{
			padding-bottom : calc( ( 16 - 2.5 ) var( --remBase ) );
			margin-bottom : calc( ( 16 - 2.5 ) var( --remBase ) );
			font-size : 1.6rem;
			line-height : calc( 21 / 16 );
		}
		:where( p , li li , address , dl ){
			font-size : 1.4rem;
			line-height : calc( 24 / 14 );
		}
		> ul{
			margin-top : calc( ( 60 - 5 - 2.5 ) var( --remBase ) );
			> li + li{
				margin-top : calc( ( 60 - 5 - 2.5 ) var( --remBase ) );
			}
		}
		address{
			margin-top : 1em;
		}
		address + dl{
			margin-top : calc( ( 124 - 24 - 5 - 5 ) var( --remBase ) );
		}
	}
	@media print , screen and ( width > 780px ){
		padding-top : calc( ( 32 - 5 ) var( --remBase ) );
		padding-bottom : calc( ( 100 - 5 ) var( --remBase ) );
		h2{
			padding-bottom : calc( ( 20 - 4 ) var( --remBase ) );
			margin-bottom : calc( ( 20 - 4 ) var( --remBase ) );
			font-size : 2rem;
			line-height : 1.4;
		}
		:where( p , li li , address , dl ){
			font-size : 1.4rem;
			line-height : calc( 24 / 14 );
		}
		> ul{
			margin-top : calc( ( 70 - 5 - 4 ) var( --remBase ) );
			> li + li{
				margin-top : calc( ( 70 - 5 - 4 ) var( --remBase ) );
			}
		}
		:where( p + ul , address , address + dl ){
			margin-top : 1em;
		}
	}
}