@charset "UTF-8";

/* --------------------------------------------
COMMON
--------------------------------------------- */
#lede{
	font-weight : 500;
	line-height : 1.5;
	@media screen and ( width <= 750px ){
		padding-inline : calc( 20 * var( --viewportBase ) );
		margin-top : calc( 20 * var( --remBase ) );
		font-size : calc( 16 * var( --remBase ) );
	}
	@media print , screen and ( width > 750px ){
		width : calc( 632 * var( --viewportBase ) );
		margin-inline : auto;
		margin-top : calc( 35 * var( --remBase ) );
		font-size : calc( 18 * var( --remBase ) );
	}
}

/* --------------------------------------------
APPLY
--------------------------------------------- */
#apply{
	.box{
		background-color : white;
		border-radius : calc( 20 * var( --remBase ) );
		box-shadow : 0 0 calc( 30 * var( --remBase ) ) color-mix( in sRGB , var( --pink03 ) 15% , transparent );
	}
	.hint{
		display : grid;
		grid-auto-flow : column;
		align-items : center;
		justify-content : end;
		font-size : calc( 14 * var( --remBase ) );
		font-weight : 500;
		line-height : 1.4;
		img{
			height : calc( 7.36 * var( --remBase ) );
		}
	}
	.tableWrapper{
		width : 100%;
		margin-top : calc( 12 * var( --remBase ) );
		overflow-x : auto;
	}
	@media screen and ( width <= 750px ){
		padding-bottom : calc( 60 * var( --remBase ) );
		#title{
			&::before{
				background-image : image-set( url( "../images/apply/bg_title_sp@1x.avif" ) type( "image/avif" ) 1x , url( "../images/apply/bg_title_sp@2x.avif" ) type( "image/avif" ) 2x );
			}
		}
		.title01{
			margin-top : calc( 40 * var( --remBase ) );
		}
		.box{
			padding-block : calc( 30 * var( --remBase ) );
			padding-inline : calc( 20 * var( --viewportBase ) );
			margin-top : calc( 40 * var( --remBase ) );
		}
		.hint{
			column-gap : calc( 13 * 100% / 295 );
			margin-top : calc( 30 * var( --remBase ) );
		}
	}
	@media print , screen and ( width > 750px ){
		padding-bottom : calc( 120 * var( --remBase ) );
		#title{
			&::before{
				background-image : image-set( url( "../images/apply/bg_title_pc@1x.avif" ) type( "image/avif" ) 1x , url( "../images/apply/bg_title_pc@2x.avif" ) type( "image/avif" ) 2x );
			}
		}
		.title01{
			margin-top : calc( ( 60 + 40 ) * var( --remBase ) );
		}
		.box{
			padding-block : calc( 60 * var( --remBase ) );
			padding-inline : calc( 275 * var( --viewportBase ) );
			margin-top : calc( 60 * var( --remBase ) );
		}
		.hint{
			column-gap : calc( 13 * 100% / 550 );
			margin-top : calc( 40 * var( --remBase ) );
		}
	}
}

/* --------------------------------------------
THANKS
--------------------------------------------- */
#thanks{
	.box{
		background-color : white;
		> div{
			background-color : var( --pink02 );
		}
	}
	h3{
		font-weight : 700;
		line-height : 1.4;
		text-align : center;
		border-bottom : dashed 1px var( --pink03 );
	}
	.box{
		p{
			font-weight : 700;
			line-height : 1.4;
		}
	}
	.link02{
		margin-inline : auto;
	}
	@media screen and ( width <= 750px ){
		padding-bottom : calc( 80 * var( --remBase ) );
		.box{
			padding-block : calc( 30 * var( --remBase ) );
			margin-top : calc( 40 * var( --remBase ) );
			border-radius : calc( 20 * var( --remBase ) );
			> div{
				width : calc( 295 * var( --contentBase ) );
				padding-block : calc( 30 * var( --remBase ) );
				padding-inline : calc( 30 * 100% / 295 );
				margin-inline : auto;
				border-radius : calc( 20 * var( --remBase ) );
			}
		}
		h3{
			padding-bottom : calc( 20 * var( --remBase ) );
			font-size : calc( 18 * var( --remBase ) );
		}
		.box{
			p{
				margin-top : calc( 10 * var( --remBase ) );
				font-size : calc( 14 * var( --remBase ) );
			}
		}
		.link02{
			width : calc( 212 * var( --contentBase ) );
			height : calc( 48 * var( --remBase ) );
			padding-left : calc( 20 * var( --contentBase ) );
			padding-right : calc( 18 * var( --contentBase ) );
			margin-top : calc( 30 * var( --remBase ) );
			font-size : calc( 18 * var( --remBase ) );
			&::after{
				height : calc( 13 * var( --remBase ) );
			}
		}
	}
	@media print , screen and ( width > 750px ){
		padding-bottom : calc( 100 * var( --remBase ) );
		.box{
			padding-block : calc( 60 * var( --remBase ) );
			margin-top : calc( 60 * var( --remBase ) );
			border-radius : calc( 20 * var( --remBase ) );
			> div{
				width : calc( 550 * var( --contentBase ) );
				padding-block : calc( 30 * var( --remBase ) );
				padding-inline : calc( 30 * var( --contentBase ) );
				margin-inline : auto;
				border-radius : calc( 20 * var( --remBase ) );
			}
		}
		h3{
			padding-bottom : calc( 20 * var( --remBase ) );
			font-size : calc( 18 * var( --remBase ) );
		}
		.box{
			p{
				margin-top : calc( 10 * var( --remBase ) );
				font-size : calc( 14 * var( --remBase ) );
				text-align : center;
			}
		}
		.link02{
			width : calc( 212 * var( --contentBase ) );
			height : calc( 48 * var( --remBase ) );
			padding-left : calc( 20 * var( --contentBase ) );
			padding-right : calc( 18 * var( --contentBase ) );
			margin-top : calc( 40 * var( --remBase ) );
			font-size : calc( 18 * var( --remBase ) );
			&::after{
				height : calc( 13 * var( --remBase ) );
			}
		}
	}
}

/* --------------------------------------------
INQUIRY
--------------------------------------------- */
#inquiry{
	.note{
		display : grid;
		align-items : center;
		justify-content : start;
		padding-top : calc( 8 * var( --remBase ) );
		padding-bottom : calc( 18 * var( --remBase ) );
		border-bottom : solid 1px #e2e2e2;
		> span{
			&:first-of-type{
				display : grid;
				place-items : center;
				height : calc( 34 * var( --remBase ) );
				font-weight : 700;
				line-height : 1.5;
				color : white;
				background-color : var( --red );
				border-radius : calc( 3 * var( --remBase ) );
			}
			&:nth-of-type( 2 ){
				font-size : calc( 16 * var( --remBase ) );
				line-height : 1.8;
				color : #333;
				letter-spacing : .06em;
			}
		}
	}
	.box{
		background-color : white;
		border-radius : calc( 20 * var( --remBase ) );
		box-shadow : 0 0 calc( 30 * var( --remBase ) ) color-mix( in sRGB , var( --pink03 ) 15% , transparent );
	}
	@media screen and ( width <= 750px ){
		padding-bottom : calc( 80 * var( --remBase ) );
		.box{
			padding-block : calc( 30 * var( --remBase ) );
			padding-inline : calc( 20 * var( --viewportBase ) );
			margin-top : calc( 40 * var( --remBase ) );
		}
		.note{
			grid-template-columns : calc( 60 * 100% / 295 ) auto;
			column-gap : calc( 10 * 100% / 295 );
			>span{
				&:first-of-type{
					font-size : calc( 12 * var( --remBase ) );
				}
			}
		}
	}
	@media print , screen and ( width > 750px ){
		padding-bottom : calc( 120 * var( --remBase ) );
		.box{
			padding-block : calc( 60 * var( --remBase ) );
			padding-inline : calc( 60 * var( --viewportBase ) );
			margin-top : calc( 60 * var( --remBase ) );
		}
		.note{
			grid-template-columns : calc( 60 * 100% / 980 ) auto;
			column-gap : calc( 10 * 100% / 980 );
			>span{
				&:first-of-type{
					font-size : calc( 14 * var( --remBase ) );
				}
			}
		}
	}
}

/* --------------------------------------------
PRIVACY POLICY
--------------------------------------------- */
#privacy{
	h2{
		line-height : 1.4;
		text-align : center;
	}
	p , li{
		line-height : 1.6;
	}
	h2 + p{
		margin-top : 2em;
	}
	:where( p , ul , ol ) + h3{
		margin-top : 2em;
	}
	h3 + :where( p , ul , ol ){
		margin-top : 1.5em;
	}
	ol > li{
		position : relative;
		padding-left : 1.5em;
		counter-increment : no;
		&::before{
			position : absolute;
			top : 0;
			left : 0;
			white-space : pre;
			content : counter( no ) ". ";
		}
	}
	li + li{
		margin-top : 1em;
	}
	:where( ol , ul ) + p , p + :where( ol , ul ){
		margin-top : 1em;
	}
	p + h2{
		margin-top : 4em;
	}
	@media screen and ( width <= 750px ){
		padding-top : calc( 80 * var( --remBase ) );
		padding-bottom : calc( 100 * var( --remBase ) );
		h2{
			font-size : calc( 16 * var( --remBase ) );
		}
		h3{
			font-size : 1.2rem;
		}
		p , li{
			font-size : 1rem;
		}
	}
	@media print , screen and ( width > 750px ){
		padding-top : calc( 80 * var( --remBase ) );
		padding-bottom : calc( 100 * var( --remBase ) );
		h2{
			font-size : calc( 24 * var( --remBase ) );
		}
		h3{
			font-size : calc( 20 * var( --remBase ) );
		}
		p , li{
			font-size : calc( 16 * var( --remBase ) );
		}
	}
}