@charset "UTF-8";

/* --------------------------------------------
SIDEBAR
--------------------------------------------- */
@media print , screen and ( width > 750px ){
	#sidebar{
		grid-row : 1/999;
		grid-column : 2;
		align-self : start;
	}
	#sidebar h4{
		font-family : Afacad , sans-serif;
		font-size : 2.8rem;
		font-weight : 700;
		line-height : 1.3;
		color : #333;
	}
	#sidebar ul{
		margin-top : calc( 8 var( --remBase ) );
	}
	#sidebar ul:not( .flex ) a{
		padding-block : calc( 12 var( --remBase ) );
		padding-inline : calc( 8 * 100% / 320 );
		font-size : 1.6rem;
		line-height : 1.5;
	}
	#sidebar ul.flex{
		display : grid;
		column-gap : calc( 8 * 100% / 320 );
	}
	#sidebar ul.flex a{
		padding-block : calc( 16 var( --remBase ) );
		padding-inline : calc( 8 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 1.2;
	}
	#sidebar ul + h4{
		margin-top : calc( 40 var( --remBase ) );
	}
	#sidebar a{
		display : block;
		border-bottom : solid 1px #f1f2ed;
	}
}

/* --------------------------------------------
FOOTER
--------------------------------------------- */
#footerCta > p:nth-of-type( 1 ){
	font-weight : 700;
}
#footerCta > dl{
	display : grid;
	align-items : baseline;
}
#footerCta > dl a{
	display : block;
}
#footerCta > dl > dt , #footerCta > dl > dd:nth-of-type( 1 ){
	grid-row : 1;
	font-weight : 700;
}
#footerCta > dl > dt{
	grid-column : 1;
}
#footerCta > dl > dd:nth-of-type( 1 ){
	grid-column : 2;
	font-family : Inter , sans-serif;
}
#footerCta > dl > dd:nth-of-type( 2 ){
	grid-row : 2;
	grid-column : 1/-1;
}
#footerCta > dl dl{
	display : grid;
	grid-auto-flow : column;
	align-items : start;
	justify-content : start;
	font-weight : 500;
}
#footerCta > dl ul{
	display : grid;
	grid-auto-flow : column;
	align-items : start;
	justify-content : start;
}
#footerCta > dl ul li + li::before{
	content : "、";
}
#footerCta > ul{
	display : grid;
}
#footerCta > ul a{
	display : grid;
	align-items : center;
	width : 100%;
	height : 100%;
	font-weight : 700;
}
#footerCta > ul .contact{
	justify-content : center;
	color : var( --title );
	background-color : var( --yellow );
}
#footerCta > ul .line{
	color : white;
	background-color : var( --green );
}
@media screen and ( width <= 750px ){
	#footerCta > p{
		color : var( --title );
	}
	#footerCta > p:nth-of-type( 1 ){
		padding-block : calc( 16 var( --remBase ) );
		font-size : 2.8rem;
		line-height : 1.4;
		text-align : center;
		border-block : solid 1px black;
	}
	#footerCta > p:nth-of-type( 2 ){
		margin-top : calc( 16 var( --remBase ) );
		font-size : 2rem;
		font-weight : 700;
		line-height : 1.3;
		text-align : center;
		text-indent : .1em;
		letter-spacing : .1em;
	}
	#footerCta > dl{
		grid-template-columns : auto auto;
		justify-content : center;
		margin-top : calc( 16 var( --remBase ) );
		color : var( --title );
	}
	#footerCta > dl a{
		color : var( --title );
	}
	#footerCta > dl > dt , #footerCta > dl > dd:nth-of-type( 1 ){
		font-size : 3.6rem;
	}
	#footerCta > dl > dd:nth-of-type( 1 ){
		font-family : Inter , sans-serif;
	}
	#footerCta > dl > dd:nth-of-type( 2 ){
		margin-top : calc( 4 var( --remBase ) );
	}
	#footerCta > dl dl{
		justify-content : center;
		font-size : 1.2rem;
		line-height : 1.5;
	}
	#footerCta > ul{
		grid-template-columns : calc( 235 var( --percentBase ) ) 1fr;
		grid-auto-rows : calc( 80 var( --remBase ) );
		margin-top : calc( 16 var( --remBase ) );
	}
	#footerCta .line{
		justify-content : center;
	}
}
@media print , screen and ( width > 750px ){
	#footerCta{
		display : grid;
		grid-template-rows : repeat( 3 , auto );
		grid-template-columns : 1fr calc( 400 * 100% / 800 );
		grid-row : 1/3;
		grid-column : 2;
	}
	#footerCta > p:nth-of-type( 1 ){
		grid-row : 1;
		grid-column : 1;
		font-size : 1.8rem;
		line-height : 1.5;
		color : black;
	}
	#footerCta > dl{
		grid-template-columns : auto 1fr;
		grid-row : 2;
		grid-column : 1;
		column-gap : calc( 5 * 100% / 400 );
		margin-top : calc( ( 4 + 4.5 ) var( --remBase ) );
		color : black;
	}
	#footerCta > dl a{
		color : black;
	}
	#footerCta > dl > dt{
		font-size : 3rem;
	}
	#footerCta > dl > dd:nth-of-type( 1 ){
		font-size : 4.6rem;
	}
	#footerCta > dl > dd:nth-of-type( 2 ){
		margin-top : calc( ( 4 + 4.5 ) var( --remBase ) );
	}
	#footerCta > dl dl{
		font-size : 1.5rem;
		line-height : 1.5;
	}
	#footerCta > ul{
		grid-template-rows : calc( 74 var( --remBase ) );
		grid-template-columns : calc( 220 * 100% / 400 ) 1fr;
		grid-row : 1/-1;
		grid-column : 2;
		align-self : start;
	}
	#footerCta > ul a{
		font-size : 1.8rem;
		line-height : 1.5;
	}
	#footerCta .line{
		justify-content : center;
	}
}
#footer .box{
	border-image-source : linear-gradient( #d9d9d9 , #d9d9d9 );
	border-image-slice : 0 fill;
	border-image-outset : 0 100vw 0 100vw;
}
#footer .logo{
	display : block;
	width : fit-content;
}
#footer .operators p{
	color : var( --title );
}
@media screen and ( width <= 750px ){
	#footer .box{
		padding-top : calc( 40 var( --remBase ) );
		padding-bottom : calc( 32 var( --remBase ) );
	}
	#footer .logo{
		margin-top : calc( 40 var( --remBase ) );
	}
	#footer .logo img{
		height : calc( 30.51 var( --remBase ) );
	}
	#footer .operators{
		margin-top : calc( 24 var( --remBase ) );
	}
	#footer .operators li + li{
		margin-top : calc( 24 var( --remBase ) );
	}
	#footer .operators a{
		display : block;
		width : fit-content;
		margin-inline : auto;
	}
	#footer .operators img{
		height : calc( 40 var( --remBase ) );
	}
	#footer .operators p{
		margin-top : calc( 8 var( --remBase ) );
		font-size : 1.2rem;
		line-height : 1.7;
		color : var( --title );
		text-align : center;
	}
}
@media print , screen and ( width > 750px ){
	#footer .box{
		display : grid;
		grid-template-rows : repeat( 4 , auto );
		grid-template-columns : 1fr calc( 800 var( --percentBase ) );
		padding-block : calc( 72 var( --remBase ) );
	}
	#footer .logo{
		grid-row : 1;
		grid-column : 1;
	}
	#footer .logo img{
		height : calc( 51 var( --remBase ) );
	}
	#footer .operators{
		grid-row : 2/-1;
		grid-column : 1;
		margin-top : calc( 24 var( --remBase ) );
	}
	#footer .operators ul{
		display : grid;
		grid-template-columns : repeat( 2 , auto );
		column-gap : calc( 24 * 100% / 600 );
		align-items : start;
		justify-content : start;
	}
	#footer .operators img{
		height : calc( 40 var( --remBase ) );
	}
	#footer .operators p{
		margin-top : calc( 8 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 1.7;
	}
	#footer nav{
		grid-row : 4;
		grid-column : 2;
		padding-top : calc( 24 var( --remBase ) );
		margin-top : calc( 24 var( --remBase ) );
		border-top : solid 1px var( --base );
	}
	#footer nav ul{
		display : grid;
		grid-auto-flow : column;
		column-gap : calc( 24 * 100% / 800 );
		align-items : start;
		justify-content : start;
	}
	#footer nav a{
		display : block;
		font-size : 1.6rem;
		font-weight : 700;
		line-height : 1.5;
		color : var( --title );
	}
}
#copyright{
	font-family : ABeeZee , sans-serif;
	font-size : 1.8rem;
	line-height : 1.7;
	color : white;
	text-align : center;
	border-image-source : linear-gradient( #040000 , #040000 );
	border-image-slice : 0 fill;
	border-image-outset : 0 100vw 0 100vw;
}
@media screen and ( width <= 750px ){
	#copyright{
		padding-block : calc( 57 var( --remBase ) );
	}
}
@media print , screen and ( width > 750px ){
	#copyright{
		padding-top : calc( 33 var( --remBase ) );
		padding-bottom : calc( 81 var( --remBase ) );
	}
}