@charset "UTF-8";

/* --------------------------------------------
SETTINGS
--------------------------------------------- */
@media screen and ( width <= 768px ){
	:root{
		--headerHeight : calc( 90 * var( --remBase ) );
	}
}
@media print , screen and ( width > 768px ){
	:root{
		--headerHeight : calc( 128 * var( --remBase ) );
	}
}
html{
	scroll-padding-top : var( --headerHeight );
}
body{
	padding-top : var( --headerHeight );
	@media screen and ( width <= 768px ){
		font-size : calc( 16 * var( --remBase ) );
	}
	@media print , screen and ( width > 768px ){
		font-size : calc( 16 * var( --remBase ) );
	}
}

/* --------------------------------------------
WRAPPER , CONTAINER , GRID CONTAINER
--------------------------------------------- */
@media screen and ( width <= 768px ){
	:root{
		--containerWidth : 100%;
		--wrapPaddingInline : calc( var( --gutter ) * var( --viewportBase ) );
	}
}
@media print , screen and ( width > 768px ){
	:root{
		--containerWidth : calc( var( --contentWidth ) * var( --viewportBase ) );
		--wrapPaddingInline : max( calc( ( 100% - ( var( --contentWidth ) * 1px ) ) / 2 ) , calc( var( --gutter ) * var( --viewportBase ) ) );
	}
}
:root{
	--containerWidth : 100%;
	--gridContainerGutter : calc( var( --gutter ) * var( --viewportBase ) );
	--gridContainerGridTemplateColumns : var( --gridContainerGutter ) var( --containerWidth ) var( --gridContainerGutter );
	--gridContainerColumnCenter : 2;
	--gridContainerLeftStartEnd : 3;
	--gridContainerRightEndStart : 2;
}
.wrap{
	padding-inline : var( --wrapPaddingInline );
}
.wrap-sp{
	@media screen and ( width <= 768px ){
		padding-inline : var( --wrapPaddingInline );
	}
}
.wrap-pc{
	@media print , screen and ( width > 768px ){
		padding-inline : var( --wrapPaddingInline );
	}
}
.wrap02{
	@media screen and ( width <= 768px ){
		padding-inline : var( --wrapPaddingInline );
	}
	@media print , screen and ( width > 768px ){
		padding-inline : max( calc( ( 100% - 1080px ) / 2 ) , calc( 110 * var( --viewportBase ) ) );
	}
}
.container{
	width : var( --containerWidth );
	@media print , screen and ( width > 768px ){
		.container{
			margin-inline : auto;
		}
	}
}
.gridContainer{
	display : grid;
	grid-template-columns : var( --gridContainerGridTemplateColumns );
	grid-auto-flow : column;
	row-gap : 0;
	>*:not( .fluid , .left-start , .right-end ){
		grid-column : var( --gridContainerColumnCenter );
	}
	.fluid{
		grid-column : 1/-1;
	}
	.left-start{
		grid-column : 1 / 3;
	}
	.right-end{
		grid-column : 2 / 4;
	}
}

/* --------------------------------------------
  STATE
  --------------------------------------------- */
.is-sp{
	@media print , screen and ( width > 768px ){
		display : none;
	}
}
.is-pc{
	@media screen and ( width <= 768px ){
		display : none;
	}
}
.is-tb{
	@media screen and ( width <= 768px ){
		display : none;
	}
	@media print , screen and ( width >= 1320px ){
		display : none;
	}
}

/* --------------------------------------------
  ACCESSIBILITY
  --------------------------------------------- */
.visually-hidden{
	position : absolute;
	width : 1px;
	height : 1px;
	overflow : hidden;
	clip : rect( 0 0 0 0 );
	clip-path : inset( 50% );
	white-space : nowrap;
}
.visually-hidden-text{
	overflow : hidden;
	color : transparent;
}
[hidden]{
	display : none;
}

/* --------------------------------------------
  COMMON MODULES
  --------------------------------------------- */
.full{
	width : 100%;
	height : auto;
}
.full-sp{
	@media screen and ( width <= 768px ){
		width : 100%;
		height : auto;
	}
}
.full-pc{
	@media print , screen and ( width > 768px ){
		width : 100%;
		height : auto;
	}
}
[data-before]::before{
	white-space : pre;
	content : attr( data-before );
}
[data-after]::after{
	white-space : pre;
	content : attr( data-after );
}
[data-before-sp]::before{
	@media screen and ( width <= 768px ){
		white-space : pre;
		content : attr( data-before-sp );
	}
}
[data-both]{
	&::before , &::after{
		white-space : pre;
		content : attr( data-both );
	}
}
@media screen and ( width <= 768px ){
	[data-after-sp]::after{
		white-space : pre;
		content : attr( data-after-sp );
	}
	[data-both-sp]{
		&::before , &::after{
			white-space : pre;
			content : attr( data-both );
		}
	}
}
@media print , screen and ( width > 768px ){
	[data-before-pc]::before{
		white-space : pre;
		content : attr( data-before-pc );
	}
	[data-after-pc]::after{
		white-space : pre;
		content : attr( data-after-pc );
	}
	[data-both-pb]{
		&::before , &::after{
			white-space : pre;
			content : attr( data-both );
		}
	}
}

/* --------------------------------------------
  BR TO SPCE
  --------------------------------------------- */
.sp-space{
	@media screen and ( width <= 768px ){
		&::after{
			content : " ";
		}
	}
	@media print , screen and ( width > 768px ){
		&::after{
			white-space : pre;
			content : "\A";
		}
	}
}
.pc-space{
	@media screen and ( width <= 768px ){
		&::after{
			white-space : pre;
			content : "\A";
		}
	}
	@media print , screen and ( width > 768px ){
		&::after{
			content : " ";
		}
	}
}
.sp-spaceEm{
	@media screen and ( width <= 768px ){
		&::after{
			content : "　";
		}
	}
	@media print , screen and ( width > 768px ){
		&::after{
			white-space : pre;
			content : "\A";
		}
	}
}
.pc-spaceEm{
	@media screen and ( width <= 768px ){
		&::after{
			white-space : pre;
			content : "\A";
		}
	}
	@media print , screen and ( width > 768px ){
		&::after{
			content : "　";
		}
	}
}

/* --------------------------------------------
  LH NAGATIVE MARGIN
  --------------------------------------------- */
.lh-up{
	margin-top : calc( ( 1em - 1lh )  / 2 );
}
.lh-up-sp{
	@media screen and ( width <= 768px ){
		margin-top : calc( ( 1em - 1lh )  / 2 );
	}
}
.lh-up-pc{
	@media print , screen and ( width > 768px ){
		margin-top : calc( ( 1em - 1lh )  / 2 );
	}
}

/* --------------------------------------------
HEADER
--------------------------------------------- */
#header{
	height : var( --headerHeight );
	.logo{
		display : block;
		width : fit-content;
		span{
			display : block;
			font-weight : 500;
			line-height : 1.5;
			text-align : center;
		}
	}
	@media screen and ( width <= 768px ){
		position : fixed;
		top : 0;
		left : 0;
		z-index : 10;
		display : block;
		align-content : center;
		width : 100%;
		padding-inline : calc( 12 * var( --viewportBase ) );
		background-color : white;
		.logo{
			span{
				font-size : calc( 14 * var( --remBase ) );
			}
			img{
				height : calc( 42 * var( --remBase ) );
			}
		}
	}
	@media print , screen and ( width > 768px ){
		position : absolute;
		top : 0;
		left : 0;
		z-index : 10;
		display : grid;
		grid-auto-flow : column;
		align-items : center;
		justify-content : space-between;
		width : 100%;
		padding-inline : calc( 20 * var( --viewportBase ) );
		.logo{
			grid-row : 1;
			grid-column : 1;
			span{
				font-size : calc( 15 * var( --remBase ) );
			}
			img{
				height : calc( 66 * var( --remBase ) );
			}
		}
	}
}

/* --------------------------------------------
MENU BUTTON
--------------------------------------------- */
#menuBtn{
	@media screen and ( width <= 768px ){
		position : fixed;
		top : calc( 11 * var( --remBase ) );
		right : calc( 12 * var( --viewportBase ) );
		z-index : 12;
		width : calc( 68 * var( --viewportBase ) );
		height : calc( 68 * var( --remBase ) );
		overflow : hidden;
		background-color : var( --blue02 );
		border-radius : calc( 12 * var( --remBase ) );
		&[aria-expanded="true"]{
			overflow : hidden;
		}
		> span:nth-of-type( 1 ){
			position : relative;
			display : block;
			height : 100%;
			font-size : 0;
			> span{
				position : absolute;
				left : 0;
				display : block;
				width : 100%;
				transition : all .4s;
				&:nth-of-type( 1 ){
					top : 0;
				}
				&:nth-of-type( 4 ){
					bottom : 0;
				}
			}
		}
		&[aria-expanded="true"]{
			> span:nth-of-type( 1 ){
				span:nth-of-type( 1 ){
					scale : 0;
					translate : calc( $( top ) var( --remBase ) ) 0;
				}
				span:nth-of-type( 2 ){
					rotate : -45deg;
				}
				span:nth-of-type( 3 ){
					rotate : 45deg;
				}
				span:nth-of-type( 4 ){
					scale : 0;
					translate : calc( -$( top ) var( --remBase ) ) 0;
				}
			}
		}
		> span{
			&:nth-of-type( 1 ){
				width : calc( 32 * 100% / 68 );
				height : calc( 24 * var( --remBase ) );
				margin-inline : auto;
				span{
					height : calc( 2 * var( --remBase ) );
					background-color : white;
					border-radius : 100vmax;
					&:nth-of-type( 2 ) , &:nth-of-type( 3 ){
						top : calc( 11 * var( --remBase ) );
					}
				}
			}
			&:nth-of-type( 2 ){
				font-size : calc( 14 * var( --remBase ) );
				font-weight : 500;
				line-height : calc( 22 / 14 );
				color : white;
				text-align : center;
			}
		}
	}
}
@media ( prefers-reduced-motion : no-preference ){
	#menuBtn{
		@media screen and ( width <= 768px ){
			@media ( prefers-reduced-motion : no-preference ){
				> span{
					transition : all .3s linear;
				}
			}
		}
	}
}

/* --------------------------------------------
NAVIGATION
--------------------------------------------- */
#nav{
	@media screen and ( width <= 768px ){
		position : fixed;
		top : var( --headerHeight );
		left : 100%;
		z-index : 11;
		width : 100%;
		height : calc( 100dvh - var( --headerHeight ) );
		overflow-y : auto;
		background-color : color-mix( in sRGB , white 95% , transparent );
		translate : 0 0;
		body:has( &:not( [inert] ) ){
			overflow : hidden;
		}
		&:not( [inert] ){
			translate : -100% 0;
		}
		&[inert]{
			translate : 0 0;
		}
		.scroll{
			overflow-y : auto;
		}
		.scroll{
			padding-block : calc( 18 * var( --remBase ) );
		}
	}
	@media print , screen and ( width > 768px ){
		display : contents;
		.scroll{
			display : contents;
		}
	}
}
@media ( prefers-reduced-motion : no-preference ){
	#nav{
		@media screen and ( width <= 768px ){
			@media ( prefers-reduced-motion : no-preference ){
				transition-duration : .4s;
				transition-property : translate;
				&[inert]{
					transition-timing-function : ease-out;
				}
				&:not( [inert] ){
					transition-timing-function : ease-in;
				}
			}
		}
	}
}
#navContacts{
	.tel{
		display : grid;
		>span{
			&:nth-of-type( 1 ) , &:nth-of-type( 2 ){
				font-weight : 600;
				line-height : 1.5;
			}
			&:nth-of-type( 3 ){
				font-family : Roboto , sans-serif;
				font-weight : 700;
				line-height : 1;
			}
		}
	}
	@media screen and ( width <= 768px ){
		padding-inline : calc( 12 * var( --viewportBase ) );
		.tel{
			display : grid;
			grid-template-rows : calc( 34 * var( --remBase ) ) auto;
			grid-template-columns : repeat( 2 , calc( 174 * 100% / 366 ) );
			grid-auto-flow : column;
			row-gap : calc( 4 * var( --remBase ) );
			justify-content : space-between;
			width : calc( 366 * var( --contentBase ) );
			margin-inline : auto;
			> span{
				&:nth-of-type( 1 ) , &:nth-of-type( 2 ){
					display : block;
					grid-row : 1;
					align-content : center;
					font-size : calc( 16 * var( --remBase ) );
					color : var( --blue03 );
					text-align : center;
					background-color : #ffea80;
					border-radius : 100vmax;
				}
				&:nth-of-type( 1 ){
					grid-column : 1;
				}
				&:nth-of-type( 2 ){
					grid-column : 2;
				}
				&:nth-of-type( 3 ){
					display : grid;
					grid-template-columns : auto auto;
					grid-column : 1/-1;
					align-items : center;
					justify-content : center;
					font-size : calc( 48 * var( --remBase ) );
					line-height : calc( 72 / 48 );
					&::before{
						display : block;
						grid-row : 1/-1;
						grid-column : 1;
						width : auto;
						height : calc( 44 * var( --remBase ) );
						aspect-ratio : 24/32;
						margin-right : calc( 8 * var( --remBase ) );
						font-size : 0;
						content : "";
						background : url( "../images/ui/icon/tel.svg" ) left top / contain no-repeat;
					}
				}
			}
		}
		.line{
			--color : #5ec45e;
			margin-top : calc( 12 * var( --remBase ) );
			box-shadow : 0 calc( 6 * var( --remBase ) ) 0 #3a8b3a;
		}
		.web{
			--color : #f55a5a;
			margin-top : calc( 20 * var( --remBase ) );
			box-shadow : 0 calc( 6 * var( --remBase ) ) 0 #a24040;
		}
		:where( .line , .web ){
			display : grid;
			grid-template-rows : 1fr calc( 28 * var( --remBase ) ) calc( 10 * var( --remBase ) ) auto 1fr;
			grid-template-columns : auto calc( 334 * var( --contentBase ) );
			column-gap : calc( 20 * var( --contentBase ) );
			align-content : center;
			justify-content : center;
			height : calc( 102 * var( --remBase ) );
			background-color : var( --color );
			border-radius : calc( 12 * var( --remBase ) );
			img{
				grid-row : 2/5;
				grid-column : 1;
				align-self : center;
				height : calc( 56 * var( --remBase ) );
			}
			span{
				font-weight : 700;
			}
			span:nth-of-type( 1 ){
				grid-row : 2;
				grid-column : 2;
				align-content : center;
				font-size : calc( 16 * var( --remBase ) );
				color : var( --color );
				text-align : center;
				background-color : white;
				border-radius : 100vmax;
			}
			span:nth-of-type( 2 ){
				grid-row : 4;
				grid-column : 2;
				font-size : calc( 24 * var( --remBase ) );
				line-height : calc( 34 / 24 );
				color : white;
				text-align : center;
			}
		}
		.line{
			span:nth-of-type( 1 ){
				color : #3a8b3a;
			}
		}
	}
	@media print , screen and ( width > 768px ){
		display : grid;
		grid-template-columns : auto calc( 36 * var( --remBase ) ) auto calc( 20 * var( --remBase ) ) auto;
		align-items : center;
		:where( .line , .web ){
			img{
				height : calc( 70 * var( --remBase ) );
			}
		}
		li:nth-child( 1 ){
			grid-column : 1;
		}
		li:nth-child( 2 ){
			grid-column : 3;
		}
		li:nth-child( 3 ){
			grid-column : 5;
		}
		.tel{
			grid-template-rows : auto auto;
			grid-template-columns : auto auto 1fr;
			align-items : start;
			justify-content : start;
			&::before{
				display : block;
				grid-row : 1/-1;
				grid-column : 1;
				width : auto;
				height : calc( 32 * var( --remBase ) );
				aspect-ratio : 24/32;
				margin-top : calc( 28 * var( --remBase ) );
				margin-right : calc( 8 * var( --remBase ) );
				font-size : 0;
				content : "";
				background : url( "../images/ui/icon/tel.svg" ) left top / contain no-repeat;
			}
			> span{
				&:nth-of-type( 1 ) , &:nth-of-type( 2 ){
					grid-row : 1;
					font-size : calc( 17 * var( --remBase ) );
				}
				&:nth-of-type( 1 ){
					grid-column : 2;
					font-size : calc( 17 * var( --remBase ) );
				}
				&:nth-of-type( 2 ){
					grid-column : 3;
				}
				&:nth-of-type( 3 ){
					grid-row : 2;
					grid-column : 2/-1;
					font-size : calc( 40 * var( --remBase ) );
				}
			}
		}
	}
}
#navGlobal{
	@media screen and ( width <= 768px ){
		margin-top : calc( 36 * var( --remBase ) );
		> li{
			padding-inline : calc( 12 * var( --viewportBase ) );
			border-bottom : 1px dotted #999;
		}
		a{
			display : grid;
			grid-auto-flow : column;
			column-gap : calc( 24 * 100% / 816 );
			align-items : center;
			justify-content : start;
			height : calc( 56 * var( --remBase ) );
			font-size : calc( 18 * var( --remBase ) );
			font-weight : 500;
			line-height : calc( 27 / 18 );
			&::before{
				display : block;
				height : calc( 8 * var( --remBase ) );
				aspect-ratio : 14/21;
				font-size : 0;
				content : "";
				background : url( "../images/ui/arrow/right01.svg" ) left top / contain no-repeat;
				filter : var( --filterBase );
			}
		}
	}
	@media print , screen and ( width > 768px ){
		position : sticky;
		top : 0;
		left : 0;
		z-index : 5;
		display : grid;
		grid-auto-columns : 20%;
		grid-auto-flow : column;
		justify-content : center;
		width : 100%;
		height : calc( 60 * var( --remBase ) );
		padding-block : calc( 8 * var( --remBase ) );
		padding-inline : max( calc( ( 100% - 1280px ) / 2 ) , calc( var( --gutter ) * var( --viewportBase ) ) );
		background-color : white;
		li:not( [class^="order"] ){
			display : none;
		}
		li[class^="order"]{
			width : 100%;
			height : 100%;
			padding-inline : calc( 24 * var( --remBase ) );
			~ li[class^="order"]{
				position : relative;
				&::before{
					position : absolute;
					top : calc( 12 * var( --remBase ) );
					left : calc( -1 * var( --remBase ) );
					display : block;
					width : calc( 2 * var( --remBase ) );
					height : calc( 20 * var( --remBase ) );
					font-size : 0;
					content : "";
					background-color : var( --blue03 );
				}
			}
			a{
				position : relative;
				z-index : 0;
				display : block;
				align-content : center;
				width : 100%;
				height : 100%;
				font-size : calc( 16 * var( --remBase ) );
				font-weight : 500;
				text-align : center;
				&::after{
					position : absolute;
					top : 0;
					left : 0;
					z-index : -1;
					display : block;
					width : 100%;
					height : 100%;
					font-size : 0;
					pointer-events : none;
					content : "";
					background-color : transparent;
					border-radius : 100vmax;
				}
			}
		}
		.order01{
			order : 1;
		}
		.order02{
			order : 2;
		}
		.order03{
			order : 3;
		}
		.order04{
			order : 4;
		}
		.order05{
			order : 5;
		}
	}
}

/* --------------------------------------------
STIKCY Contacts
--------------------------------------------- */
@media screen and ( width <= 768px ){
	:root{
		--stickyContactsHeight : calc( 114 * var( --remBase ) );
	}
}
@media print , screen and ( width > 768px ){
	:root{
		--stickyContactsHeight : calc( 136 * var( --remBase ) );
	}
}
#stickyContacts{
	position : fixed;
	bottom : 0;
	left : 0;
	z-index : 6;
	width : 100%;
	height : var( --stickyContactsHeight );
	background-color : white;
	border-top : solid calc( 3 * var( --remBase ) ) var( --blue02 );
	p{
		font-weight : 700;
		line-height : 1.5;
		text-align : center;
		em{
			color : #f81e1e;
			background : linear-gradient( 180deg , transparent 60% , #fff200 60% 100% );
		}
	}
	ul{
		display : grid;
		align-items : center;
		justify-content : center;
	}
	li{
		width : 100%;
		height : 100%;
	}
	.tel{
		--color : #f6931a;
		display : block;
		align-content : center;
		text-align : center;
		box-shadow : 0 calc( 5 * var( --remBase ) ) 0 #8e5611;
		> span{
			&:nth-of-type( 1 ){
				text-align : center;
			}
			&:nth-of-type( 2 ){
				display : grid;
				grid-auto-flow : column;
				align-items : center;
				justify-content : center;
				&::before{
					display : block;
					width : auto;
					aspect-ratio : 24/32;
					font-size : 0;
					content : "";
					background : url( "../images/ui/icon/tel.svg" ) left top / contain no-repeat;
					filter : var( --filterWhite );
				}
			}
		}
	}
	.line , .web{
		display : grid;
		align-items : center;
		justify-content : center;
		img{
			grid-column : 1;
		}
	}
	.line{
		--color : #5ec45e;
		grid-template-rows : auto auto;
		align-content : center;
		box-shadow : 0 calc( 5 * var( --remBase ) ) 0 #3a8b3a;
		img{
			grid-row : 1/-1;
			align-self : center;
		}
		span{
			grid-column : 2;
			&:nth-of-type( 1 ){
				grid-row : 1;
			}
			&:nth-of-type( 2 ){
				grid-row : 2;
			}
		}
	}
	.web{
		--color : #f55a5a;
		grid-auto-flow : column;
		box-shadow : 0 calc( 5 * var( --remBase ) ) 0 #a24040;
	}
	a{
		width : 100%;
		height : 100%;
		background-color : var( --color );
		span{
			font-weight : 700;
			color : white;
		}
	}
	@media screen and ( width <= 768px ){
		align-content : center;
		p{
			font-size : calc( 18 * var( --remBase ) );
			line-height : calc( 27 / 18 );
		}
		ul{
			display : grid;
			grid-template-columns : calc( 190 * var( --viewportBase ) ) calc( 126 * var( --viewportBase ) ) calc( 126 * var( --viewportBase ) );
			column-gap : calc( 6 * var( --viewportBase ) );
			justify-content : center;
			margin-top : calc( 4 * var( --remBase ) );
		}
		a{
			height : calc( 60 * var( --remBase ) );
			border-radius : calc( 8 * var( --remBase ) );
		}
		.tel{
			> span{
				&:nth-of-type( 1 ){
					font-size : calc( 12 * var( --remBase ) );
					line-height : calc( 14 / 12 );
				}
				&:nth-of-type( 2 ){
					column-gap : calc( 4 * var( --remBase ) );
					font-size : calc( 22 * var( --remBase ) );
					line-height : calc( 28 / 22 );
					&::before{
						height : calc( 18 * var( --remBase ) );
					}
				}
			}
		}
		.line{
			grid-template-columns : auto auto;
			> span{
				&:nth-of-type( 1 ){
					grid-row : 1;
					grid-column : 1/-1;
					font-size : calc( 10 * var( --remBase ) );
					line-height : calc( 14 / 10 );
				}
			}
			img{
				grid-row : 2;
				grid-column : 1;
				height : calc( 32 * var( --remBase ) );
			}
			> span{
				&:nth-of-type( 2 ){
					grid-row : 2;
					grid-column : 2;
					font-size : calc( 18 * var( --remBase ) );
					line-height : calc( 24 / 18 );
				}
			}
		}
		.web{
			column-gap : calc( 8 * 100% / 270 );
			span{
				font-size : calc( 18 * var( --remBase ) );
				line-height : calc( 24 / 18 );
			}
			img{
				height : calc( 32 * var( --remBase ) );
			}
		}
	}
	@media print , screen and ( width > 768px ){
		display : grid;
		grid-template-rows : auto calc( 70 * var( --remBase ) );
		grid-template-columns : auto calc( ( 270 * 3 + 8 * 2 ) * var( --viewportBase ) );
		row-gap : calc( 8 * var( --remBase ) );
		column-gap : calc( 8 * var( --remBase ) );
		align-content : center;
		justify-content : center;
		padding-bottom : calc( 8 * var( --remBase ) );
		p{
			grid-template-columns : 1/-1;
			grid-row : 1;
			grid-column : 1/-1;
			font-size : calc( 22 * var( --remBase ) );
			span[data-before-pc]{
				font-size : 0;
				&::before{
					font-size : calc( 22 * var( --remBase ) );
				}
			}
		}
		.logo{
			grid-row : 2;
			grid-column : 1;
			align-self : center;
			height : calc( 50 * var( --remBase ) );
			margin-right : calc( 16 * var( --remBase ) );
		}
		ul{
			grid-template-columns : repeat( 3 , calc( 270 * 100% / 826 ) );
			grid-row : 2;
			grid-column : 2;
			grid-auto-flow : column;
			justify-content : space-between;
		}
		a{
			border-radius : calc( 10 * var( --remBase ) );
		}
		.tel{
			> span{
				&:nth-of-type( 1 ){
					font-size : calc( 14 * var( --remBase ) );
					line-height : calc( 18 / 14 );
				}
				&:nth-of-type( 2 ){
					column-gap : calc( 8 * var( --remBase ) );
					font-size : calc( 25 * var( --remBase ) );
					line-height : calc( 32 / 25 );
					&::before{
						height : calc( 22 * var( --remBase ) );
					}
				}
			}
		}
		.line , .web{
			img{
				height : calc( 36 * var( --remBase ) );
			}
		}
		.line{
			column-gap : calc( 22 * 100% / 270 );
			span{
				&:nth-of-type( 1 ){
					font-size : calc( 14 * var( --remBase ) );
					line-height : 1.5;
				}
				&:nth-of-type( 2 ){
					font-size : calc( 22 * var( --remBase ) );
					line-height : 1.5;
				}
			}
		}
		.web{
			column-gap : calc( 8 * 100% / 270 );
			span{
				font-size : calc( 18 * var( --remBase ) );
				line-height : 1.5;
			}
		}
	}
}
body:has( #stickyContacts ){
	padding-bottom : var( --stickyContactsHeight );
}