@charset "UTF-8";

/* --------------------------------------------
SERVICE
--------------------------------------------- */
#service01{
	height : calc( 599 var( --remBase ) );
	padding-top : calc( ( 67 - 12 ) var( --remBase ) );
	background-repeat : no-repeat;
	background-position : center top;
	background-size : auto 100%;
}
#service01 p{
	color : white;
	text-align : center;
}
#service01 p:nth-of-type( 1 ){
	font-size : 3.6rem;
	line-height : calc( 60 / 36 );
	text-align : center;
	text-indent : .22emem;
	letter-spacing : .22emem;
}
#service01 p:nth-of-type( 1 ){
	text-align : center;
	text-indent : .1emem;
	letter-spacing : .1emem;
}
@media screen and ( max-width : 750px ){
	#service01{
		background-image : url( "../images/service/service01/bg_sp.webp" );
	}
	#service01 p:nth-of-type( 2 ){
		margin-top : calc( ( 42 - 12 - 8 ) var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 40 / 24 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service01{
		background-image : url( "../images/service/service01/bg_pc.webp" );
	}
	#service01 p:nth-of-type( 2 ){
		margin-top : calc( ( 35 - 12 - 6 ) var( --remBase ) );
		font-size : 1.8rem;
		line-height : calc( 30 / 18 );
	}
}
#service02{
	padding-top : calc( 74 var( --remBase ) );
}
#service02 h2{
	display : grid;
	align-items : center;
	justify-content : center;
	font-size : 2.6rem;
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .22em;
	letter-spacing : .22em;
	white-space : nowrap;
}
#service02 h2::before , #service02 h2::after{
	height : calc( 39 var( --remBase ) );
}
#service02 h2::before , #service02 h2::after{
	display : block;
	font-size : 0;
	content : "";
	background-repeat : no-repeat;
	background-position : 0 0;
	background-size : contain;
}
#service02 h2::before{
	background-image : url( "../images/ui/parts/dash0101.svg" );
}
#service02 h2::after{
	background-image : url( "../images/ui/parts/dash0102.svg" );
}
#service02 ul{
	display : grid;
	align-items : start;
	justify-content : center;
}
#service02 li{
	position : relative;
	display : block;
	height : 100%;
	font-weight : 500;
	color : var( --blue );
	text-align : center;
	text-indent : .2em;
	letter-spacing : .2em;
	background-color : #ecf5f6;
	border-radius : 50%;
}
#service02 li::before{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	filter : var( --filterBlue );
	background-repeat : no-repeat;
	background-position : 0 0;
	background-size : contain;
}
#service02 li:nth-child( 1 )::before{
	background-image : url( "../images/ui/icon/black/frisbee.svg" );
}
#service02 li:nth-child( 2 )::before{
	background-image : url( "../images/ui/icon/black/trimming.svg" );
}
#service02 li:nth-child( 3 )::before{
	background-image : url( "../images/ui/icon/black/house.svg" );
}
@media screen and ( max-width : 750px ){
	#service02{
		padding-bottom : calc( 89 var( --remBase ) );
	}
	#service02 h2{
		grid-template-columns : calc( 24 var( --viewportBase ) ) auto calc( 24 var( --viewportBase ) );
		column-gap : calc( 20 var( --viewportBase ) );
	}
	#service02 ul{
		grid-template-rows : calc( 214 var( --remBase ) );
		grid-template-columns : repeat( 3 , calc( 214 var( --viewportBase ) ) );
		column-gap : calc( 34 var( --viewportBase ) );
		margin-top : calc( 62 var( --remBase ) );
	}
	#service02 li{
		padding-top : calc( 145 var( --remBase ) );
		font-size : 2.4rem;
	}
	#service02 li:nth-child( 1 )::before{
		top : calc( 45 var( --remBase ) );
		left : calc( 63 * 100% / 214 );
		width : calc( 75 * 100% / 214 );
		height : calc( 77 var( --remBase ) );
	}
	#service02 li:nth-child( 2 )::before{
		top : calc( 47 var( --remBase ) );
		left : calc( 74 * 100% / 214 );
		width : calc( 67 * 100% / 214 );
		height : calc( 73 var( --remBase ) );
	}
	#service02 li:nth-child( 3 )::before{
		top : calc( 47 var( --remBase ) );
		left : calc( 70 * 100% / 214 );
		width : calc( 77 * 100% / 214 );
		height : calc( 75 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service02{
		padding-bottom : calc( 87 var( --remBase ) );
	}
	#service02 h2{
		grid-template-columns : calc( 24 var( --percentBase ) ) auto calc( 24 var( --percentBase ) );
		column-gap : calc( 20 var( --percentBase ) );
	}
	#service02 ul{
		grid-template-rows : calc( 278 var( --remBase ) );
		grid-template-columns : repeat( 3 , calc( 278 var( --percentBase ) ) );
		column-gap : calc( 50 var( --percentBase ) );
		margin-top : calc( 31 var( --remBase ) );
	}
	#service02 li{
		padding-top : calc( 190 var( --remBase ) );
		font-size : 2rem;
	}
	#service02 li:nth-child( 1 )::before{
		top : calc( 77 var( --remBase ) );
		left : calc( 107 * 100% / 278 );
		width : calc( 75 * 100% / 278 );
		height : calc( 77 var( --remBase ) );
	}
	#service02 li:nth-child( 2 )::before{
		top : calc( 79 var( --remBase ) );
		left : calc( 106 * 100% / 278 );
		width : calc( 67 * 100% / 278 );
		height : calc( 73 var( --remBase ) );
	}
	#service02 li:nth-child( 3 )::before{
		top : calc( 79 var( --remBase ) );
		left : calc( 101 * 100% / 278 );
		width : calc( 77 * 100% / 278 );
		height : calc( 75 var( --remBase ) );
	}
}
#serviceLinks{
	display : grid;
}
#serviceLinks li{
	height : 100%;
}
#serviceLinks a{
	position : relative;
	display : grid;
	place-items : center;
	width : 100%;
	height : 100%;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background-color : white;
	border-color : var( --blue );
	border-style : solid;
	transition : color var( --transitionBase ) , background var( --transitionBase );
}
#serviceLinks a::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background : url( "../images/ui/button/black/down01.svg" ) center / contain no-repeat;
	filter : var( --filterBlue );
	transition : filter var( --transitionBase );
}
@media screen and ( max-width : 750px ){
	#serviceLinks{
		grid-template-columns : repeat( 2 , calc( 318 var( --percentBase ) ) );
		grid-auto-rows : calc( 90 var( --remBase ) );
		row-gap : calc( 24 var( --remBase ) );
		justify-content : space-between;
		padding-bottom : calc( 138 var( --remBase ) );
	}
	#serviceLinks a{
		font-size : 2.4rem;
		line-height : 1.25;
		border-width : 1px;
	}
	#serviceLinks a::after{
		top : calc( 41 var( --remBase ) );
		right : calc( 16 * 100% / 318 );
		width : calc( 16 * 100% / 318 );
		height : calc( 13 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#serviceLinks{
		grid-template-columns : repeat( 4 , calc( 238 var( --percentBase ) ) );
		grid-auto-rows : calc( 80 var( --remBase ) );
		column-gap : calc( 16 var( --percentBase ) );
		padding-bottom : calc( ( 138 - 15 ) var( --remBase ) );
	}
	#serviceLinks a{
		font-size : 1.6rem;
		line-height : 1.25;
		border-width : 1px;
	}
	#serviceLinks a::after{
		top : calc( 38 var( --remBase ) );
		right : calc( 17 * 100% / 238 );
		width : calc( 8 * 100% / 238 );
		height : calc( 7 var( --remBase ) );
	}
}
@media ( hover : hover ){
	#serviceLinks a:hover{
		color : white;
		background-color : var( --blue );
	}
	#serviceLinks a:hover::after{
		filter : var( --filterWhite );
	}
}
#service03 dl{
	display : grid;
	align-items : baseline;
	justify-content : start;
	color : var( --blue );
}
#service03 dl:nth-of-type( 1 ){
	grid-template-columns : auto auto;
}
#service03 dt , #service03 dd{
	letter-spacing : .2em;
}
#service03 :where( .box01 , .box02 ) p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service03 h3{
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .2em;
}
@media screen and ( max-width : 750px ){
	#service03{
		padding-bottom : calc( 81  var( --remBase ) );
	}
	#service03 dl:nth-of-type( 1 ){
		column-gap : calc( 18 var( --percentBase ) );
		margin-top : calc( ( 56 - 22 ) var( --remBase ) );
	}
	#service03 dl:nth-of-type( 1 ) dt , #service03 dl:nth-of-type( 1 ) dd{
		font-size : 3.6rem;
		line-height : calc( 80 / 36 );
	}
	#service03 dl:nth-of-type( 2 ){
		grid-template-columns : calc( 140 var( --percentBase ) ) 1fr;
		margin-top : calc( 10 var( --remBase ) );
	}
	#service03 dl:nth-of-type( 2 ) dt{
		font-size : 3rem;
		line-height : 2;
	}
	#service03 dl:nth-of-type( 2 ) dd{
		font-size : 2.4rem;
		line-height : 2.5;
	}
	#service03 :where( .box01 , .box02 ) p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service03 :where( .box01 , .box02 ) p + p{
		margin-top : calc( 20 var( --remBase ) );
	}
	#service03 :where( .box01 , .box02 ) picture img{
		width : 100%;
		height : auto;
	}
	#service03 .box01{
		margin-top : calc( ( 77 - 18 - 12 ) var( --remBase ) );
	}
	#service03 .box01 picture{
		margin-top : calc( ( 67 - 12 ) var( --remBase ) );
	}
	#service03 .box02{
		margin-top : calc( ( 109 - 12 - 9 ) var( --remBase ) );
	}
	#service03 .box02 .texts{
		margin-left : auto;
	}
	#service03 .box02 h3{
		font-size : 3.6rem;
		line-height : calc( 60 / 36 );
	}
	#service03 .box02 h3 + p{
		margin-top : calc( ( 68 - 12 - 12 )  var( --remBase ) );
	}
	#service03 .box02 picture{
		margin-top : calc( ( 48 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service03{
		padding-bottom : calc( ( 100 - 12 )  var( --remBase ) );
		overflow-x : clip;
	}
	#service03 dl:nth-of-type( 1 ){
		column-gap : calc( 13 var( --percentBase ) );
		margin-top : calc( ( 64 - 12 ) var( --remBase ) );
	}
	#service03 dl:nth-of-type( 1 ) dt , #service03 dl:nth-of-type( 1 ) dd{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service03 dl:nth-of-type( 2 ){
		grid-template-columns : calc( 142 var( --percentBase ) ) 1fr;
		margin-top : calc( 10 var( --remBase ) );
	}
	#service03 dl:nth-of-type( 2 ) dt{
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#service03 dl:nth-of-type( 2 ) dd{
		font-size : 2rem;
		line-height : 2;
	}
	#service03 :where( .box01 , .box02 ){
		position : relative;
	}
	#service03 :where( .box01 , .box02 ) .texts{
		width : calc( 520 var( --percentBase ) );
	}
	#service03 :where( .box01 , .box02 ) p{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service03 :where( .box01 , .box02 ) p + p{
		margin-top : calc( 20 var( --remBase ) );
	}
	#service03 :where( .box01 , .box02 ) picture{
		position : absolute;
	}
	#service03 :where( .box01 , .box02 ) picture img{
		height : calc( 420 var( --remBase ) );
	}
	#service03 .box01{
		margin-top : calc( ( 64 - 10 - 12 ) var( --remBase ) );
	}
	#service03 .box01 picture{
		top : calc( ( -4 + 12 ) var( --remBase ) );
		left : calc( 50% + ( 111 var( --percentBase ) ) );
	}
	#service03 .box01 picture img{
		height : calc( 420 var( --remBase ) );
	}
	#service03 .box02{
		margin-top : calc( ( 156 - 12 - 9 ) var( --remBase ) );
	}
	#service03 .box02 .texts{
		margin-left : auto;
	}
	#service03 .box02 h3{
		font-size : 2.6rem;
		line-height : calc( 44 / 26 );
	}
	#service03 .box02 h3 + p{
		margin-top : calc( ( 44 - 9 - 12 )  var( --remBase ) );
	}
	#service03 .box02 picture{
		top : calc( 12 var( --remBase ) );
		left : calc( 50% - ( 700 var( --percentBase ) ) );
	}
}
#service04{
	background-color : #ecf5f6;
}
#service04 h3{
	display : grid;
	place-items : center;
	align-content : center;
	font-weight : 400;
	color : var( --blue );
	background-color : white;
	border-style : solid;
	border-radius : 50%;
}
#service04 h3 span{
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#service04 p , #service04 li li{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service04 li[data-before]{
	display : grid;
	grid-template-columns : auto 1fr;
}
#service04 .blue{
	color : var( --blue );
}
@media screen and ( max-width : 750px ){
	#service04{
		padding-top : calc( 52 var( --remBase ) );
		padding-bottom : calc( ( 117 - 12 ) var( --remBase ) );
	}
	#service04 > ul > li + li{
		margin-top : calc( ( 61 - 12 ) var( --remBase ) );
	}
	#service04 h3{
		width : calc( 226 var( --percentBase ) );
		height : calc( 226 var( --remBase ) );
		margin-inline : auto;
		border-width : 1px;
	}
	#service04 h3 span:nth-of-type( 1 ){
		font-size : 4.6rem;
	}
	#service04 h3 span:nth-of-type( 2 ){
		font-size : 6.4rem;
	}
	#service04 p , #service04 li li{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service04 h3 + p{
		padding-top : calc( ( 54 - 12 ) var( --remBase ) );
	}
	#service04 h3 + div{
		padding-top : calc( ( 54 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service04{
		padding-top : calc( 66 var( --remBase ) );
		padding-bottom : calc( ( 86 - 10 ) var( --remBase ) );
	}
	#service04 > ul{
		padding-left : calc( 60 var( --percentBase ) );
	}
	#service04 > ul > li{
		display : grid;
		grid-template-columns : calc( 175 * 100% / 940 ) auto;
		column-gap : calc( 40 * 100% / 940 );
		align-items : start;
		justify-content : start;
	}
	#service04 > ul > li + li{
		margin-top : calc( 30 var( --remBase ) );
	}
	#service04 h3{
		height : calc( 175 var( --remBase ) );
		border-width : 1px;
	}
	#service04 h3 span:nth-of-type( 1 ){
		font-size : 3.6rem;
	}
	#service04 h3 span:nth-of-type( 2 ){
		font-size : 5rem;
	}
	#service04 p , #service04 li li{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service04 h3 + p{
		padding-top : calc( ( 37 - 12 ) var( --remBase ) );
	}
	#service04 h3 + div{
		padding-top : calc( ( 37 - 12 ) var( --remBase ) );
	}
}
:where( #service05 , #service09 , #service12 , #service15 ){
	overflow-x : clip;
}
:where( #service05 , #service09 , #service12 , #service15 ) p{
	color : #666;
	letter-spacing : .1em;
}
:where( #service05 , #service09 , #service12 , #service15 ) ul{
	position : relative;
}
:where( #service05 , #service09 , #service12 , #service15 ) li{
	position : absolute;
	top : 0;
	height : 100%;
}
:where( #service05 , #service09 , #service12 , #service15 ) li img{
	width : 100%;
	height : auto;
}
@media screen and ( max-width : 750px ){
	:where( #service05 , #service09 , #service12 , #service15 ) p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) ul{
		height : calc( 161 var( --remBase ) );
		margin-top : calc( ( 80 - 12 ) var( --remBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li{
		width : calc( 250 var( --percentBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li:nth-child( 1 ){
		left : calc( -40 var( --percentBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li:nth-child( 2 ){
		left : calc( 210 var( --percentBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li:nth-child( 3 ){
		right : calc( -40 var( --percentBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	:where( #service05 , #service09 , #service12 , #service15 ) p{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	:where( #service05 , #service09 , #service12 , #service15 ) ul{
		height : calc( 300 var( --remBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li{
		width : calc( 466 var( --percentBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li:nth-child( 1 ){
		left : calc( -200 var( --percentBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li:nth-child( 2 ){
		left : calc( 266 var( --percentBase ) );
	}
	:where( #service05 , #service09 , #service12 , #service15 ) li:nth-child( 3 ){
		right : calc( -200 var( --percentBase ) );
	}
}
@media screen and ( max-width : 750px ){
	#service05{
		padding-top : calc( ( 120 - 15 ) var( --remBase ) );
	}
	#service05 p{
		margin-top : calc( ( 46 - 12 ) var( --remBase ) );
	}
	#service05 ul{
		margin-top : calc( ( 80 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service05{
		padding-top : calc( ( 149 - 15 ) var( --remBase ) );
	}
	#service05 p{
		margin-top : calc( ( 46 - 12 ) var( --remBase ) );
	}
	#service05 ul{
		margin-top : calc( ( 61 - 12 ) var( --remBase ) );
	}
}
#service06{
	position : relative;
	overflow-x : clip;
}
#service06 h2{
	font-weight : 400;
	font-feature-settings : normal;
	line-height : 1.75;
	letter-spacing : .22em;
	writing-mode : vertical-rl;
}
#service06 h2 em{
	line-height : 1.75;
	color : var( --blue );
}
#service06 h2::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background : url( "../images/service/service06/dog.webp" ) center / contain no-repeat;
}
#service06 li{
	position : absolute;
	z-index : 0;
	text-align : center;
	text-indent : .22em;
	letter-spacing : .22em;
	background-repeat : no-repeat;
	background-position : center;
	background-size : contain;
}
#service06 li:nth-of-type( 1 )::after , #service06 li:nth-of-type( 2 )::after , #service06 li:nth-of-type( 3 )::after{
	position : absolute;
	z-index : 1;
	display : block;
	font-size : 0;
	content : "";
	background-repeat : no-repeat;
	background-position : center;
	background-size : contain;
}
#service06 li:nth-of-type( 1 )::after{
	background-image : url( "../images/ui/icon/silhouette/bark01.webp" );
}
#service06 li:nth-of-type( 2 )::after{
	background-image : url( "../images/ui/icon/silhouette/bark02.webp" );
}
#service06 li:nth-of-type( 3 )::after{
	background-image : url( "../images/ui/icon/silhouette/bark03.webp" );
}
#service06 p{
	color : var( --blue );
}
#service06 p span{
	display : block;
	line-height : 1.75;
	text-align : center;
	text-indent : .22em;
	letter-spacing : .22em;
}
#service06 p em{
	display : block;
	text-align : center;
	text-indent : .22em;
	letter-spacing : .22em;
}
@media screen and ( max-width : 750px ){
	#service06{
		padding-top : calc( 99 var( --remBase ) );
		padding-bottom : calc( ( 85 - 3.5 ) var( --remBase ) );
	}
	#service06::before{
		position : absolute;
		top : calc( 142 var( --remBase ) );
		left : calc( 120 var( --viewportBase ) );
		z-index : -1;
		display : block;
		width : calc( 436 var( --viewportBase ) );
		height : calc( 426 var( --remBase ) );
		font-size : 0;
		content : "";
		background : url( "../images/service/service06/bg01_sp.svg" ) center / contain no-repeat;
		background-repeat : no-repeat;
		background-position : center;
		background-size : contain;
	}
	#service06 h2{
		margin-inline : auto;
		margin-left : calc( ( 289 - ( 54 * .375 ) ) var( --percentBase ) );
		font-size : 3rem;
		white-space : pre;
	}
	#service06 h2 em{
		font-size : 5.4rem;
	}
	#service06 h2::after{
		top : calc( 574 var( --remBase ) );
		left : calc( 150 var( --viewportBase ) );
		width : calc( 336 var( --viewportBase ) );
		height : calc( 118 var( --remBase ) );
	}
	#service06 li{
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#service06 li:nth-child( 1 ){
		top : calc( 589 var( --remBase ) );
		left : calc( 501 var( --viewportBase ) );
		z-index : 4;
		width : calc( 239 var( --viewportBase ) );
		height : calc( 231 var( --remBase ) );
		padding-top : calc( ( 100 - 12 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list01_sp.svg" );
	}
	#service06 li:nth-child( 1 )::after{
		top : calc( 159 var( --remBase ) );
		left : calc( 36 * 100% / 239 );
		width : calc( 174 * 100% / 239 );
		height : calc( 147 var( --remBase ) );
	}
	#service06 li:nth-child( 2 ){
		top : calc( 691 var( --remBase ) );
		left : calc( 55 var( --viewportBase ) );
		z-index : 3;
		width : calc( 254 var( --viewportBase ) );
		height : calc( 244 var( --remBase ) );
		padding-top : calc( ( 70 - 12 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list02_sp.svg" );
	}
	#service06 li:nth-child( 2 )::after{
		top : calc( 207 var( --remBase ) );
		left : calc( 31 * 100% / 254 );
		width : calc( 100 * 100% / 254 );
		height : calc( 89 var( --remBase ) );
	}
	#service06 li:nth-child( 3 ){
		top : calc( 809 var( --remBase ) );
		left : calc( 250 var( --viewportBase ) );
		z-index : 2;
		width : calc( 284 var( --viewportBase ) );
		height : calc( 272 var( --remBase ) );
		padding-top : calc( ( 61 - 12 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list03_sp.svg" );
	}
	#service06 li:nth-child( 3 )::after{
		top : calc( 239 var( --remBase ) );
		left : calc( 46 * 100% / 284 );
		width : calc( 126 * 100% / 284 );
		height : calc( 98 var( --remBase ) );
	}
	#service06 li:nth-child( 4 ){
		top : calc( 1011 var( --remBase ) );
		left : calc( 445 var( --viewportBase ) );
		width : calc( 225 var( --viewportBase ) );
		height : calc( 216 var( --remBase ) );
		padding-top : calc( ( 70 - 12 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list04_sp.svg" );
	}
	#service06 li:nth-child( 5 ){
		top : calc( 1022 var( --remBase ) );
		left : calc( 30 var( --viewportBase ) );
		width : calc( 252 var( --viewportBase ) );
		height : calc( 243 var( --remBase ) );
		padding-top : calc( ( 70 - 12 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list05_sp.svg" );
	}
	#service06 p{
		margin-top : calc( ( 828 - ( 26 * .375 ) ) var( --remBase ) );
	}
	#service06 p span{
		font-size : 2.6rem;
	}
	#service06 p em{
		margin-top : calc( 10 var( --remBase ) );
		font-size : 4rem;
		line-height : calc( 47 / 40 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service06{
		padding-top : calc( ( 120 + 32 ) var( --remBase ) );
		padding-bottom : calc( ( 57 - 8.5 ) var( --remBase ) );
	}
	#service06::before , #service06::after{
		position : absolute;
		z-index : -1;
		display : block;
		font-size : 0;
		content : "";
		background-repeat : no-repeat;
		background-position : center;
		background-size : contain;
	}
	#service06::before{
		top : calc( 32 var( --remBase ) );
		left : calc( 50% + ( 319 var( --remBase ) ) );
		width : calc( 300 var( --remBase ) );
		height : calc( 290 var( --remBase ) );
		background-image : url( "../images/service/service06/bg01_pc.svg" );
	}
	#service06::after{
		top : calc( ( 155 + 32 ) var( --remBase ) );
		left : calc( 50% - ( 576 var( --remBase ) ) );
		width : calc( 373 var( --remBase ) );
		height : calc( 365 var( --remBase ) );
		background-image : url( "../images/service/service06/bg01_pc.svg" );
	}
	#service06 h2{
		margin-left : calc( ( 102 - ( .375 * 46 ) ) var( --percentBase ) );
		font-size : 2.6rem;
	}
	#service06 h2 em{
		font-size : 4.6rem;
	}
	#service06 h2::after{
		top : calc( ( 487 + 32 ) var( --remBase ) );
		left : calc( 50% - ( 584 var( --remBase ) ) );
		width : calc( 336 var( --remBase ) );
		height : calc( 118 var( --remBase ) );
	}
	#service06 ul::before{
		position : absolute;
		top : calc( ( 281 + 32 ) var( --remBase ) );
		left : calc( 50% + ( 138 var( --remBase ) ) );
		z-index : -1;
		display : block;
		width : calc( 177 var( --remBase ) );
		height : calc( 173 var( --remBase ) );
		font-size : 0;
		content : "";
		background : url( "../images/service/service06/bg03_pc.svg" ) center / contain no-repeat;
	}
	#service06 li{
		font-size : 1.8rem;
		line-height : calc( 30 / 18 );
	}
	#service06 li:nth-child( 1 ){
		top : calc( ( 31 + 32 ) var( --remBase ) );
		left : calc( 50% + ( 250 var( --remBase ) ) );
		width : calc( 201 var( --remBase ) );
		height : calc( 194 var( --remBase ) );
		padding-top : calc( ( 86 - 6 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list01_pc.svg" );
	}
	#service06 li:nth-child( 1 )::after{
		top : calc( 157 var( --remBase ) );
		left : calc( 41 * 100% / 201 );
		width : calc( 171 * 100% / 201 );
		height : calc( 147 var( --remBase ) );
	}
	#service06 li:nth-child( 2 ){
		top : calc( ( 116 + 32 ) var( --remBase ) );
		left : calc( 50% - ( 124 var( --remBase ) ) );
		width : calc( 213 var( --remBase ) );
		height : calc( 206 var( --remBase ) );
		padding-top : calc( ( 70 - 6 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list02_pc.svg" );
	}
	#service06 li:nth-child( 2 )::after{
		top : calc( 134 var( --remBase ) );
		left : calc( -39 * 100% / 213 );
		width : calc( 100 * 100% / 213 );
		height : calc( 89 var( --remBase ) );
	}
	#service06 li:nth-child( 3 ){
		top : calc( ( 215 + 32 ) var( --remBase ) );
		left : calc( 50% + ( 40 var( --remBase ) ) );
		width : calc( 238 var( --remBase ) );
		height : calc( 230 var( --remBase ) );
		padding-top : calc( ( 64 - 6 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list03_pc.svg" );
	}
	#service06 li:nth-child( 3 )::after{
		top : calc( 183 var( --remBase ) );
		left : calc( 49 * 100% / 238 );
		width : calc( 126 * 100% / 238 );
		height : calc( 98 var( --remBase ) );
	}
	#service06 li:nth-child( 4 ){
		top : calc( ( 385 + 32 ) var( --remBase ) );
		left : calc( 50% + ( 203 var( --remBase ) ) );
		width : calc( 189 var( --remBase ) );
		height : calc( 182 var( --remBase ) );
		padding-top : calc( ( 64 - 6 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list04_pc.svg" );
	}
	#service06 li:nth-child( 5 ){
		top : calc( ( 382 + 32 ) var( --remBase ) );
		left : calc( 50% - ( 158 var( --remBase ) ) );
		width : calc( 211 var( --remBase ) );
		height : calc( 204 var( --remBase ) );
		padding-top : calc( ( 71 - 6 ) var( --remBase ) );
		background-image : url( "../images/service/service06/bg_list05_pc.svg" );
	}
	#service06 p{
		margin-top : calc( ( 283 - ( 20 * .375 ) ) var( --remBase ) );
	}
	#service06 p span{
		font-size : 2rem;
	}
	#service06 p em{
		margin-top : calc( 10 var( --remBase ) );
		font-size : 3rem;
		line-height : calc( 47 / 30 );
	}
}
#service07 > ul > li{
	border-color : var( --blue );
	border-style : solid;
}
#service07 h3{
	display : grid;
	place-items : center;
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .2em;
	letter-spacing : .2em;
	background-color : #ecf5f6;
}
#service07 ol{
	position : relative;
}
#service07 ol::before{
	position : absolute;
	display : block;
	content : "";
	background-color : var( --blue );
}
#service07 h4{
	position : relative;
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .2em;
}
#service07 h4::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background-color : currentColor;
	border-radius : 50%;
}
#service07 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service07 dl dt , #service07 dl dd{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service07 dl:nth-of-type( 1 ){
	display : grid;
	grid-template-columns : auto 1fr;
	align-items : start;
	justify-content : start;
}
#service07 dl:nth-of-type( 2 ) dt , #service07 dl:nth-of-type( 2 ) dd , #service07 dl:nth-of-type( 2 ) ul , #service07 dl:nth-of-type( 2 ) li{
	display : inline;
}
@media screen and ( max-width : 750px ){
	#service07{
		padding-bottom : calc( 172 var( --remBase ) );
	}
	#service07::after{
		display : block;
		width : calc( 212 var( --viewportBase ) );
		height : calc( 293 var( --remBase ) );
		margin-top : calc( 24 var( --remBase ) );
		margin-left : calc( 275 var( --viewportBase ) );
		content : "";
		background : url( "../images/service/service07/bg.webp" ) center / contain no-repeat;
	}
	#service07 > ul > li{
		border-width : 1px;
	}
	#service07 > ul > li + li{
		margin-top : calc( 44 var( --remBase ) );
	}
	#service07 h3{
		height : calc( 132 var( --remBase ) );
		font-size : 3.4rem;
	}
	#service07 ol{
		position : relative;
		padding-top : calc( ( 48 - 17 ) var( --remBase ) );
		padding-left : calc( 114 * 100% / 668 );
		padding-right : calc( 45 * 100% / 668 );
	}
	#service07 ol::before{
		top : calc( ( 48 - 17 + 31 ) var( --remBase ) );
		left : calc( 61 * 100% / 668 );
		width : calc( 3 * 100% / 668 );
	}
	#service07 ol > li + li{
		margin-top : calc( ( 70 - 17 - 8 ) var( --remBase ) );
	}
	#service07 h4{
		font-size : 2.8rem;
		line-height : calc( 62 / 28 );
	}
	#service07 h4::after{
		top : calc( 24 var( --remBase ) );
		left : calc( -58 * 100% / 509 );
		width : calc( 14 * 100% / 509 );
		height : calc( 14 var( --remBase ) );
	}
	#service07 p , #service07 dt , #service07 dd{
		font-size : 2.4rem;
		line-height : calc( 40 / 24 );
	}
	#service07 h4 + p{
		margin-top : calc( ( 37 - 17 - 8 ) var( --remBase ) );
	}
	#service07 dl{
		margin-top : calc( 40 var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 1 ) ol{
		padding-bottom : calc( ( 72 - 17 ) var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 1 ) ol::before{
		height : calc( 100% - ( ( 48 - 17 + 31 ) + ( 72 - 17 + 31 ) ) var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 2 ) ol{
		padding-bottom : calc( ( 63 - 8 ) var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 2 ) ol::before{
		height : calc( 100% - ( ( 48 - 17 + 31 ) + ( 63 - 8 ) + 40 + ( 37 - 17 - 8 ) + 31 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service07{
		padding-bottom : calc( 133 var( --remBase ) );
	}
	#service07 > ul{
		position : relative;
		display : grid;
		grid-template-columns : repeat( 2 , calc( 480 var( --percentBase ) ) );
		align-items : start;
		justify-content : space-between;
	}
	#service07 > ul::after{
		position : absolute;
		bottom : calc( -18 var( --remBase ) );
		left : calc( 52 var( --percentBase ) );
		display : block;
		width : calc( 212 var( --percentBase ) );
		height : calc( 293 var( --remBase ) );
		content : "";
		background : url( "../images/service/service07/bg.webp" ) center / contain no-repeat;
	}
	#service07 > ul > li{
		border-width : 1px;
	}
	#service07 h3{
		height : calc( 94 var( --remBase ) );
		font-size : 2.4rem;
	}
	#service07 ol{
		position : relative;
		padding-top : calc( ( 34 - 12 ) var( --remBase ) );
		padding-left : calc( 82 * 100% / 478 );
		padding-right : calc( 32 * 100% / 478 );
	}
	#service07 ol::before{
		top : calc( ( 34 - 12 + 22 ) var( --remBase ) );
		left : calc( 44 * 100% / 478 );
		width : calc( 2 * 100% / 478 );
	}
	#service07 ol > li + li{
		margin-top : calc( ( 47 - 7 - 12 ) var( --remBase ) );
	}
	#service07 h4{
		font-size : 2rem;
		line-height : 2.2;
	}
	#service07 h4::after{
		top : calc( 17 var( --remBase ) );
		left : calc( -42 * 100% / 364 );
		width : calc( 10 * 100% / 364 );
		height : calc( 10 var( --remBase ) );
	}
	#service07 p , #service07 dt , #service07 dd{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service07 h4 + p{
		margin-top : calc( ( 27 - 12 - 7 ) var( --remBase ) );
	}
	#service07 dl{
		margin-top : calc( 30 var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 1 ) ol{
		padding-bottom : calc( ( 52 - 12 ) var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 1 ) ol::before{
		height : calc( 100% - ( ( 34 - 12 + 22 ) + ( 52 - 12 + 22 ) ) var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 2 ) ol{
		padding-bottom : calc( ( 46 - 7 ) var( --remBase ) );
	}
	#service07 > ul > li:nth-child( 2 ) ol::before{
		height : calc( 100% - ( ( 34 - 12 + 22 ) + ( 46 - 7 ) + 30 + ( 27 - 12 - 7 ) + 22 ) var( --remBase ) );
	}
}
#service08 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service08 .sub{
	line-height : 1;
	text-align : right;
}
#service08 picture img{
	width : 100%;
	height : auto;
}
#service08 table{
	width : 100%;
}
#service08 th , #service08 td{
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .1em;
	border-top : solid 1px var( --blue );
	border-bottom : solid 1px var( --blue );
}
#service08 thead{
	background-color : #ecf5f6;
}
#service08 th{
	font-weight : 700;
	color : var( --blue );
}
#service08 :where( th,td ):first-of-type{
	text-align : left;
}
#service08 th + th , #service08 td + td{
	text-align : right;
}
#service08 td{
	color : #666;
}
@media screen and ( max-width : 750px ){
	#service08{
		padding-bottom : calc( ( 131 - ( 40 * .375 ) ) var( --remBase ) );
	}
	#service08 p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service08 .sub{
		font-size : 2rem;
	}
	#service08 picture{
		width : 100%;
	}
	#service08 .box + h3{
		margin-top : calc( ( 126 - 8.5 ) var( --remBase ) );
	}
	#service08 table{
		margin-top : calc( 21 var( --remBase ) );
	}
	#service08 th , #service08 td{
		padding-block : calc( 13 var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 52 / 24 );
	}
	#service08 :where( th,td ):first-of-type{
		padding-left : calc( 43 var( --percentBase ) );
	}
	#service08 th + th , #service08 td + td{
		padding-right : calc( 34 var( --percentBase ) );
	}
	#service08 .link01{
		margin-top : calc( 45 var( --remBase ) );
	}
	#service08 .box01{
		margin-top : calc( ( 69 - 8.5 - 12 ) var( --remBase ) );
	}
	#service08 .box01 picture{
		margin-top : calc( ( 46 - 12 ) var( --remBase ) );
	}
	#service08 .box02{
		margin-top : calc( 56 var( --remBase ) );
	}
	#service08 .box02 picture{
		margin-top : calc( 61 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service08{
		padding-bottom : calc( ( 166 - ( 40 * .375 ) ) var( --remBase ) );
		overflow-x : clip;
	}
	#service08 .box{
		position : relative;
		min-height : calc( 420 var( --remBase ) );
	}
	#service08 .texts{
		width : calc( 520 var( --percentBase ) );
	}
	#service08 picture{
		position : absolute;
		left : calc( 50% + ( 110 var( --percentBase ) ) );
		width : calc( 590 var( --percentBase ) );
	}
	#service08 p{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service08 .sub{
		font-size : 1.2rem;
	}
	#service08 .box + h3{
		margin-top : calc( ( 88 - 8.5 ) var( --remBase ) );
	}
	#service08 table{
		margin-top : calc( 12 var( --remBase ) );
	}
	#service08 th , #service08 td{
		padding-block : calc( 10 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service08 :where( th,td ):first-of-type{
		padding-left : calc( 33 * 100% / 520 );
	}
	#service08 th + th , #service08 td + td{
		padding-right : calc( 37 * 100% / 520 );
	}
	#service08 .link01{
		width : calc( 291 * 100% / 520 );
		margin-top : calc( 67 var( --remBase ) );
	}
	#service08 .box01{
		margin-top : calc( ( 66 - 8.5 ) var( --remBase ) );
	}
	#service08 .box01 p{
		margin-top : calc( -12 var( --remBase ) );
	}
	#service08 .box01 picture{
		top : 0;
	}
	#service08 .box02{
		margin-top : calc( 56 var( --remBase ) );
	}
	#service08 .box02 picture{
		top : calc( -5 var( --remBase ) );
	}
}
@media screen and ( max-width : 750px ){
	#service09{
		padding-bottom : calc( ( 103 - 8.5 ) var( --remBase ) );
	}
	#service09 p{
		margin-top : calc( ( 55 - 12 ) var( --remBase ) );
	}
	#service09 ul{
		margin-top : calc( ( 65 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service09{
		padding-bottom : calc( ( 79 - 8.5 ) var( --remBase ) );
	}
	#service09 p{
		margin-top : calc( ( 51 - 12 ) var( --remBase ) );
	}
	#service09 ul{
		margin-top : calc( ( 50 - 12 ) var( --remBase ) );
	}
}
#service10{
	padding-bottom : calc( ( 97 - 8.5 ) var( --remBase ) );
}
#service10 ul{
	display : flex;
	flex-wrap : wrap;
	align-items : start;
	justify-content : center;
	margin-top : calc( ( 38 - 8.5 ) var( --remBase ) );
}
#service10 li{
	display : grid;
	place-items : center;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background : url( "../images/service/service16/bg.svg" ) center / contain no-repeat;
}
@media screen and ( max-width : 750px ){
	#service10 ul{
		display : flex;
		flex-wrap : wrap;
		grid-template-columns : repeat( 5 , calc( 182 var( --percentBase ) ) );
		row-gap : calc( 5 var( --remBase ) );
		column-gap : calc( 40 var( --percentBase ) );
		justify-content : center;
	}
	#service10 li{
		width : calc( 195 var( --percentBase ) );
		height : calc( 202 var( --remBase ) );
		padding-top : calc( ( 49 - 5.5 ) var( --remBase ) );
		font-size : 2.3rem;
		line-height : calc( 34 / 23 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service10 ul{
		display : grid;
		grid-template-columns : repeat( 5 , calc( 170 var( --percentBase ) ) );
		grid-auto-rows : calc( 176 var( --remBase ) );
		column-gap : calc( 37.5 var( --percentBase ) );
		align-items : center;
	}
	#service10 li{
		height : 100%;
		padding-top : calc( ( 45 - 5 ) var( --remBase ) );
		font-size : 2rem;
		line-height : 1.5;
	}
}
#service11 dl{
	color : var( --blue );
}
#service11 dl > div{
	display : grid;
	grid-template-columns : auto auto;
	align-items : center;
	justify-content : start;
}
#service11 dt , #service11 dd{
	letter-spacing : .1em;
}
#service11 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service11 h4{
	color : #666;
	letter-spacing : .1em;
}
#service11 li{
	letter-spacing : .1em;
}
#service11 picture img{
	width : 100%;
	height : auto;
}
#service11 table{
	width : 100%;
}
#service11 th , #service11 td{
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .1em;
	border-top : solid 1px var( --blue );
	border-bottom : solid 1px var( --blue );
}
#service11 thead{
	background-color : #ecf5f6;
}
#service11 th{
	font-weight : 700;
	color : var( --blue );
}
#service11 :where( th,td ):first-of-type{
	text-align : left;
}
#service11 th + th , #service11 td + td{
	text-align : right;
}
#service11 td{
	color : #666;
}
@media screen and ( max-width : 750px ){
	#service11{
		padding-bottom : calc( ( 109 - ( 40 * .375 ) ) var( --remBase ) );
	}
	#service11 dt , #service11 dd{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service11 p{
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#service11 .sub{
		font-size : 2rem;
		line-height : 1.5;
	}
	#service11 h4{
		margin-top : calc( 66 var( --remBase ) );
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#service11 ul{
		margin-top : calc( 40 var( --remBase ) );
	}
	#service11 li{
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#service11 picture{
		width : 100%;
	}
	#service11 .box + h3{
		margin-top : calc( ( 98 - 8.5 ) var( --remBase ) );
	}
	#service11 table{
		margin-top : calc( ( 14 - 5 ) var( --remBase ) );
	}
	#service11 th , #service11 td{
		padding-block : calc( 13 var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 52 / 24 );
	}
	#service11 :where( th,td ):first-of-type{
		padding-left : calc( 43 var( --percentBase ) );
	}
	#service11 th + th , #service11 td + td{
		padding-right : calc( 34 var( --percentBase ) );
	}
	#service11 .link01{
		margin-top : calc( 50 var( --remBase ) );
	}
	#service11 .box01{
		margin-top : calc( ( 60 - 8.5 - 12 ) var( --remBase ) );
	}
	#service11 .box01 picture{
		margin-top : calc( ( 54 - 12 ) var( --remBase ) );
	}
	#service11 .box02{
		margin-top : calc( ( 29 - 5 ) var( --remBase ) );
	}
	#service11 .box02 .sub{
		text-align : right;
	}
	#service11 .box02 picture{
		margin-top : calc( 50 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service11{
		padding-bottom : calc( ( 140 - ( 40 * .375 ) ) var( --remBase ) );
		overflow-x : clip;
	}
	#service11 .box{
		position : relative;
		min-height : calc( 420 var( --remBase ) );
	}
	#service11 .texts{
		width : calc( 520 var( --percentBase ) );
	}
	#service11 picture{
		position : absolute;
		left : calc( 50% + ( 110 var( --percentBase ) ) );
		width : calc( 590 var( --percentBase ) );
	}
	#service11 dt , #service11 dd{
		font-size : 2rem;
		line-height : 1.8;
	}
	#service11 dl + p{
		margin-top : calc( var( --remBase ) );
	}
	#service11 h4{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service11 p{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service11 .sub{
		font-size : 1.4rem;
		line-height : calc( 20 / 14 );
	}
	#service11 li{
		font-size : 1.4rem;
		line-height : calc( 30 / 14 );
	}
	#service11 .box + h3{
		margin-top : calc( ( 112 - 8.5 ) var( --remBase ) );
	}
	#service11 table{
		margin-top : calc( ( 11 - 3 ) var( --remBase ) );
	}
	#service11 th , #service11 td{
		padding-block : calc( 10 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service11 :where( th,td ):first-of-type{
		padding-left : calc( 33 * 100% / 520 );
	}
	#service11 th + th , #service11 td + td{
		padding-right : calc( 37 * 100% / 520 );
	}
	#service11 .link01{
		width : calc( 291 * 100% / 520 );
		margin-top : calc( 67 var( --remBase ) );
	}
	#service11 .box01{
		margin-top : calc( ( 66 - 8.5 ) var( --remBase ) );
	}
	#service11 .box01 dl{
		margin-top : calc( -8 var( --remBase ) );
	}
	#service11 .box01 h4{
		margin-top : calc( 66 var( --remBase ) );
	}
	#service11 .box01 ul{
		margin-top : calc( 30 var( --remBase ) );
	}
	#service11 .box01 picture{
		top : 0;
	}
	#service11 .box02{
		margin-top : calc( ( 56 - 3 ) var( --remBase ) );
	}
	#service11 .box02 .sub{
		text-align : right;
	}
	#service11 .box02 picture{
		top : calc( -5 var( --remBase ) );
	}
}
@media screen and ( max-width : 750px ){
	#service12{
		padding-bottom : calc( ( 114 - 8.5 ) var( --remBase ) );
	}
	#service12 p{
		margin-top : calc( ( 53 - 12 ) var( --remBase ) );
	}
	#service12 ul{
		margin-top : calc( ( 60 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service12{
		padding-bottom : calc( ( 76 - 8.5 ) var( --remBase ) );
	}
	#service12 p{
		margin-top : calc( ( 53 - 12 ) var( --remBase ) );
	}
	#service12 ul{
		margin-top : calc( ( 51 - 12 ) var( --remBase ) );
	}
}
#service13 h4{
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .1em;
	border-top-color : currentColor;
	border-top-style : solid;
	border-bottom-color : currentColor;
	border-bottom-style : solid;
}
#service13 picture img{
	width : 100%;
	height : auto;
}
#service13 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service13 h5{
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .1em;
}
#service13 > ul > li:nth-child( n+2 ) h4{
	position : relative;
}
#service13 > ul > li:nth-child( n+2 ) h4::before{
	position : absolute;
	display : block;
	content : "";
	background-repeat : no-repeat;
	background-position : 0 0;
	background-size : contain;
}
#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 span span{
	display : inline-grid;
	place-items : center;
	width : fit-content;
	color : white;
	background-color : var( --blue );
}
#service13 > ul > li:nth-child( 2 ) h4::before{
	background-image : url( "../images/service/service13/icon02.svg" );
}
#service13 > ul > li:nth-child( 3 ) h4::before{
	background-image : url( "../images/service/service13/icon03.svg" );
}
#service13 > ul > li:nth-child( 4 ) h4::before{
	background-image : url( "../images/service/service13/icon04.svg" );
}
#service13 > ul > li:nth-child( 5 ) h4::before{
	background-image : url( "../images/service/service13/icon05.svg" );
}
#service13 > ul > li:nth-child( 6 ) h4::before{
	background-image : url( "../images/service/service13/icon06.svg" );
}
@media screen and ( max-width : 750px ){
	#service13{
		padding-bottom : calc( ( 108 - 8 - 8.5 ) var( --remBase ) );
	}
	#service13 h4{
		padding-block : calc( 21.5 var( --remBase ) );
		font-size : 3.2rem;
		line-height : calc( 47 / 32 );
		border-top-width : 1px;
		border-bottom-width : 1px;
	}
	#service13 p{
		font-size : 2.4rem;
		line-height : calc( 40 / 24 );
	}
	#service13 .sub{
		font-size : 2rem;
		line-height : 2.5;
	}
	#service13 > ul{
		margin-top : calc( ( 33 - 8.5 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 1 ) h4{
		padding-inline : calc( 27 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 1 ) ul{
		margin-top : calc( 58 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 1 ) li{
		display : grid;
		grid-template-rows : auto auto 1fr;
		grid-template-columns : calc( 182 var( --percentBase ) ) 1fr;
		column-gap : calc( 40 var( --percentBase ) );
		align-items : start;
	}
	#service13 > ul > li:nth-child( 1 ) li + li{
		margin-top : calc( 36 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 1 ) picture{
		grid-row : 1/4;
		grid-column : 1;
	}
	#service13 > ul > li:nth-child( 1 ) h5{
		grid-row : 1;
		grid-column : 2;
		font-size : 3rem;
	}
	#service13 > ul > li:nth-child( 1 ) p{
		grid-row : 2/4;
		grid-column : 2;
		align-items : start;
		padding-top : calc( ( 31 - 8 ) var( --remBase ) );
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5{
		margin-top : calc( ( 39 - 6 ) var( --remBase ) );
		font-size : 2.8rem;
		line-height : calc( 40 / 28 );
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 > span{
		display : grid;
		grid-template-columns : calc( 171 var( --percentBase ) ) 1fr;
		column-gap : calc( 10 var( --percentBase ) );
		align-items : center;
		margin-top : calc( ( 8 - 6 ) var( --remBase ) );
		font-size : 3rem;
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 > span span{
		width : 100%;
		height : calc( 51 var( --remBase ) );
		font-size : 2.6rem;
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 + p{
		margin-top : calc( ( 40 - 8 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 2 ){
		margin-top : calc( 119 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 2 ) h4{
		padding-inline : calc( 88 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 2 ) h4::before{
		top : calc( 22 var( --remBase ) );
		left : calc( 18 var( --percentBase ) );
		width : calc( 53 var( --percentBase ) );
		height : calc( 41 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 3 ){
		margin-top : calc( ( 58 - 15 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 3 ) h4{
		padding-inline : calc( 87 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 3 ) h4::before{
		top : calc( 21 var( --remBase ) );
		left : calc( 26 var( --percentBase ) );
		width : calc( 38 var( --percentBase ) );
		height : calc( 47 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( n+4 ) p{
		margin-top : calc( ( 21 - 8 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 4 ){
		margin-top : calc( ( 80 - 15 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 4 ) h4{
		padding-inline : calc( 90 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 4 ) h4::before{
		top : calc( 18 var( --remBase ) );
		left : calc( 20 var( --percentBase ) );
		width : calc( 40 var( --percentBase ) );
		height : calc( 49 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 5 ){
		margin-top : calc( ( 79 - 8 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 5 ) h4{
		padding-inline : calc( 89 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 5 ) h4::before{
		top : calc( 19 var( --remBase ) );
		left : calc( 32 var( --percentBase ) );
		width : calc( 32 var( --percentBase ) );
		height : calc( 52 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 6 ){
		margin-top : calc( ( 61 - 8 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 6 ) h4{
		padding-inline : calc( 93 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 6 ) h4::before{
		top : calc( 27 var( --remBase ) );
		left : calc( 21 var( --percentBase ) );
		width : calc( 46 var( --percentBase ) );
		height : calc( 34 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service13{
		padding-bottom : calc( ( 87 - 7 - 8.5 ) var( --remBase ) );
	}
	#service13 h4{
		padding-block : calc( 11.5 var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 47 / 24 );
		border-top-width : 1px;
		border-bottom-width : 1px;
	}
	#service13 p{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service13 .sub{
		font-size : 1.4rem;
		line-height : calc( 30 / 14 );
	}
	#service13 > ul{
		display : grid;
		grid-template-rows : auto calc( ( 78 - 7 ) var( --remBase ) ) auto calc( ( 68 - 8 ) var( --remBase ) ) auto calc( ( 58 - 7 ) var( --remBase ) ) auto calc( ( 57 - 7 ) var( --remBase ) ) auto;
		grid-template-columns : repeat( 2 , calc( 480 var( --percentBase ) ) );
		align-items : start;
		justify-content : space-between;
		margin-top : calc( ( 53 - 8.5 ) var( --remBase ) );
	}
	#service13 > ul > :where( li:nth-child( 1 ) , li:nth-child( n+4 ) ){
		grid-column : 1/3;
	}
	#service13 > ul > li:nth-child( 1 ){
		grid-row : 1;
	}
	#service13 > ul > li:nth-child( 1 ) h4{
		padding-inline : calc( 26 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 1 ) ul{
		display : grid;
		grid-template-columns : repeat( 5 , calc( 182 var( --percentBase ) ) );
		row-gap : calc( ( 87 - 7 ) var( --remBase ) );
		column-gap : calc( 22.5 var( --percentBase ) );
		margin-top : calc( 58 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 1 ) h5{
		display : grid;
		place-items : center;
		min-height : calc( 60 var( --remBase ) );
		margin-top : calc( ( 23 - 5 ) var( --remBase ) );
		font-size : 2rem;
		line-height : 1.5;
		text-align : center;
		text-indent : .1em;
	}
	#service13 > ul > li:nth-child( 1 ) p{
		margin-top : calc( ( 19 - 5 - 7 ) var( --remBase ) );
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ){
		grid-row : 3;
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h4{
		padding-inline : calc( 25 * 100% / 480 );
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5{
		margin-top : calc( ( 29 - 5 ) var( --remBase ) );
		font-size : 2rem;
		line-height : 1.5;
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 span{
		display : block;
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 span span{
		padding-inline : calc( 16 var( --remBase ) );
		margin-right : calc( 10 var( --remBase ) );
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) h5 + p{
		margin-top : calc( ( 29 - 7 ) var( --remBase ) );
	}
	#service13 > ul > :where( li:nth-child( 2 ) , li:nth-child( 3 ) ) .sub{
		margin-top : calc( 10 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( n+4 ) p{
		margin-top : calc( ( 28 - 7 ) var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 2 ) h4{
		padding-inline : calc( 75 * 100% / 480 );
	}
	#service13 > ul > li:nth-child( 2 ) h4::before{
		top : calc( 17 var( --remBase ) );
		left : calc( 11 * 100% / 480 );
		width : calc( 53 * 100% / 480 );
		height : calc( 42 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 3 ) h4{
		padding-inline : calc( 76 * 100% / 480 );
	}
	#service13 > ul > li:nth-child( 3 ) h4::before{
		top : calc( 10 var( --remBase ) );
		left : calc( 21 * 100% / 480 );
		width : calc( 38 * 100% / 480 );
		height : calc( 48 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 4 ){
		grid-row : 5;
	}
	#service13 > ul > li:nth-child( 4 ) h4{
		padding-inline : calc( 79 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 4 ) h4::before{
		top : calc( 8 var( --remBase ) );
		left : calc( 18 var( --percentBase ) );
		width : calc( 40 var( --percentBase ) );
		height : calc( 49 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 5 ){
		grid-row : 7;
	}
	#service13 > ul > li:nth-child( 5 ) h4{
		padding-inline : calc( 77 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 5 ) h4::before{
		top : calc( 8 var( --remBase ) );
		left : calc( 29 var( --percentBase ) );
		width : calc( 32 var( --percentBase ) );
		height : calc( 53 var( --remBase ) );
	}
	#service13 > ul > li:nth-child( 6 ){
		grid-row : 9;
	}
	#service13 > ul > li:nth-child( 6 ) h4{
		padding-inline : calc( 80 var( --percentBase ) );
	}
	#service13 > ul > li:nth-child( 6 ) h4::before{
		top : calc( 16 var( --remBase ) );
		left : calc( 20 var( --percentBase ) );
		width : calc( 46 var( --percentBase ) );
		height : calc( 35 var( --remBase ) );
	}
}
#service14 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service14 .sub{
	text-align : right;
}
#service14 table{
	width : 100%;
}
#service14 th , #service14 td{
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .1em;
	border-top : solid 1px var( --blue );
	border-bottom : solid 1px var( --blue );
}
#service14 thead{
	background-color : #ecf5f6;
}
#service14 th{
	width : calc( 100% / 3 );
	font-weight : 700;
	color : var( --blue );
}
#service14 :where( th,td ):first-of-type{
	text-align : left;
}
#service14 th + th , #service14 td + td{
	text-align : right;
}
#service14 td{
	color : #666;
}
#service14 picture img{
	width : 100%;
	height : auto;
}
@media screen and ( max-width : 750px ){
	#service14{
		padding-bottom : calc( ( 122 - ( 40 * .375 ) ) var( --remBase ) );
	}
	#service14 .box{
		margin-top : calc( ( 45 - 8.5 ) var( --remBase ) );
	}
	#service14 p:first-of-type , #service14 dt , #service14 dd{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service14 .sub{
		font-size : 2rem;
		line-height : 1.5;
	}
	#service14 table{
		margin-top : calc( ( 14 - 5 ) var( --remBase ) );
	}
	#service14 th , #service14 td{
	}
	#service14 :where( th,td ):first-of-type{
		padding-left : calc( 43 var( --percentBase ) );
	}
	#service14 th + th , #service14 td + td{
		padding-right : calc( 34 var( --percentBase ) );
	}
	#service14 table + p{
		margin-top : calc( 40 var( --remBase ) );
	}
	#service14 thead th , #service14 thead td{
		padding-block : calc( 15 var( --remBase ) );
		font-size : 2.4rem;
		line-height : 1.5;
	}
	#service14 tbody th , #service14 tbody td{
		padding-block : calc( 13 var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 52 / 24 );
	}
	#service14 p:nth-of-type( 3 ){
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#service14 .link01{
		margin-top : calc( ( 57 - 6 ) var( --remBase ) );
	}
	#service14 picture{
		width : 100%;
		margin-top : calc( 60 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service14{
		padding-bottom : calc( ( 172 - ( 40 * .375 ) ) var( --remBase ) );
		overflow-x : clip;
	}
	#service14 .box{
		position : relative;
		margin-top : calc( ( 53 - 7 ) var( --remBase ) );
	}
	#service14 .texts{
		width : calc( 520 var( --percentBase ) );
	}
	#service14 p{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service14 .sub{
		font-size : 1.4rem;
		line-height : calc( 20 / 14 );
	}
	#service14 table{
		margin-top : calc( ( 11 - 3 ) var( --remBase ) );
	}
	#service14 th , #service14 td{
	}
	#service14 :where( th,td ):first-of-type{
		padding-left : calc( 33 * 100% / 520 );
	}
	#service14 th + th , #service14 td + td{
		padding-right : calc( 37 * 100% / 520 );
	}
	#service14 thead th{
		padding-block : calc( ( 14 - 8 ) var( --remBase ) );
		font-size : 1.6rem;
		line-height : 1.5;
	}
	#service14 tbody th , #service14 tbody td{
		padding-block : calc( 10 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#service14 table + p{
		margin-top : calc( 30 var( --remBase ) );
	}
	#service14 .link01{
		width : calc( 291 * 100% / 520 );
		margin-top : calc( ( 64 - 7 ) var( --remBase ) );
	}
	#service14 picture{
		position : absolute;
		top : calc( 7 var( --remBase ) );
		left : calc( 610 var( --percentBase ) );
		width : calc( 590 var( --percentBase ) );
	}
}
@media screen and ( max-width : 750px ){
	#service15{
		padding-bottom : calc( ( 136 - 8.5 ) var( --remBase ) );
	}
	#service15 p{
		margin-top : calc( ( 53 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service15{
		padding-bottom : calc( ( 85 - 8.5 ) var( --remBase ) );
	}
	#service15 p{
		margin-top : calc( ( 53 - 12 ) var( --remBase ) );
	}
}
#service16 h4{
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#service16 li{
	display : grid;
	place-items : center;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background : url( "../images/service/service16/bg.svg" ) center / contain no-repeat;
}
#service16 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
@media screen and ( max-width : 750px ){
	#service16{
		padding-bottom : calc( ( 102 - 8.5 ) var( --remBase ) );
	}
	#service16 h4{
		margin-top : calc( ( 72 - 8.5 ) var( --remBase ) );
		font-size : 2.6rem;
	}
	#service16 ul{
		display : flex;
		flex-wrap : wrap;
		grid-template-columns : repeat( 5 , calc( 182 var( --percentBase ) ) );
		row-gap : calc( 5 var( --remBase ) );
		column-gap : calc( 40 var( --percentBase ) );
		justify-content : center;
		margin-top : calc( 42 var( --remBase ) );
	}
	#service16 li{
		width : calc( 195 var( --percentBase ) );
		height : calc( 202 var( --remBase ) );
		padding-top : calc( ( 72 - 5.5 ) var( --remBase ) );
		font-size : 2.3rem;
		line-height : calc( 34 / 23 );
	}
	#service16 .box{
		margin-top : calc( ( 67 - 12 ) var( --remBase ) );
	}
	#service16 p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service16 p + p{
		margin-top : calc( 50 var( --remBase ) );
	}
	#service16 picture{
		width : 100%;
		margin-top : calc( ( 54 - 12 ) var( --remBase ) );
	}
	#service16 picture img{
		width : 100%;
		height : auto;
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service16{
		padding-bottom : calc( ( 144 - 8.5 ) var( --remBase ) );
		overflow-x : clip;
	}
	#service16 h4{
		margin-top : calc( ( 72 - 8.5 ) var( --remBase ) );
		font-size : 2.6rem;
	}
	#service16 ul{
		display : grid;
		grid-template-columns : repeat( 5 , calc( 170 var( --percentBase ) ) );
		grid-auto-rows : calc( 176 var( --remBase ) );
		column-gap : calc( 37.5 var( --percentBase ) );
		align-items : center;
		margin-top : calc( 32 var( --remBase ) );
	}
	#service16 li{
		height : 100%;
		padding-top : calc( ( 65 - 5 ) var( --remBase ) );
		font-size : 2rem;
		line-height : 1.5;
	}
	#service16 .box{
		position : relative;
		min-height : calc( 420 var( --remBase ) );
		margin-top : calc( ( 76 - 5 ) var( --remBase ) );
	}
	#service16 .texts{
		width : calc( 520 var( --percentBase ) );
	}
	#service16 p{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service16 p + p{
		margin-top : calc( 30 var( --remBase ) );
	}
	#service16 picture{
		position : absolute;
		top : calc( 7 var( --remBase ) );
		left : calc( 610 var( --percentBase ) );
		width : calc( 590 var( --percentBase ) );
		height : calc( 420 var( --remBase ) );
	}
	#service16 picture img{
		width : 100%;
		height : 100%;
		object-fit : cover;
	}
}
#service17 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#service17 .box{
	background-color : #ecf5f6;
}
#service17 ol{
	position : relative;
}
#service17 ol::before{
	position : absolute;
	display : block;
	content : "";
	background-color : var( --blue );
}
#service17 h5{
	position : relative;
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .2em;
}
#service17 h5::before{
	position : absolute;
	content : "";
	background-color : var( --blue );
	border-radius : 50%;
}
@media screen and ( max-width : 750px ){
	#service17{
		padding-bottom : calc( ( 94 - 8.5 ) var( --remBase ) );
	}
	#service17 p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service17 > p{
		margin-top : calc( ( 47 - 12 ) var( --remBase ) );
	}
	#service17 .box{
		padding-top : calc( ( 50 - 12 ) var( --remBase ) );
		padding-bottom : calc( ( 71 - 12 ) var( --remBase ) );
		padding-left : calc( 66 var( --percentBase ) );
		padding-right : calc( 38 var( --percentBase ) );
		margin-top : calc( ( 67 - 12 ) var( --remBase ) );
	}
	#service17 ol{
		padding-left : calc( 46 * 100% / 566 );
		margin-top : calc( ( 54 - 12 - 9 ) var( --remBase ) );
	}
	#service17 ol::before{
		top : calc( 22 var( --remBase ) );
		left : calc( 11 * 100% / 566 );
		width : calc( 2 * 100% / 566 );
		height : calc( 100% - ( ( 22 + 22 + ( 23 - 9 - 1 ) + ( ( 50 * 8 ) - 12 ) ) var( --remBase ) ) );
	}
	#service17 ol > li + li{
		margin-top : calc( ( 58 - 12 - 9 ) var( --remBase ) );
	}
	#service17 h5{
		font-size : 2.6rem;
		line-height : calc( 44 / 26 );
	}
	#service17 h5::before{
		top : calc( 17 var( --remBase ) );
		left : calc( -39 * 100% / 520 );
		width : calc( 10 * 100% / 520 );
		height : calc( 10 var( --remBase ) );
	}
	#service17 h5 + p{
		margin-top : calc( ( 23 - 9 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service17{
		padding-bottom : calc( ( 77 - 8.5 ) var( --remBase ) );
	}
	#service17 p{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service17 > p{
		margin-top : calc( ( 47 - 7 ) var( --remBase ) );
	}
	#service17 .box{
		padding-inline : calc( 65 var( --percentBase ) );
		padding-top : calc( ( 50 - 7 ) var( --remBase ) );
		padding-bottom : calc( ( 58 - 7 ) var( --remBase ) );
		margin-top : calc( ( 47 - 7 ) var( --remBase ) );
	}
	#service17 ol{
		padding-left : calc( 45 * 100% / 870 );
		margin-top : calc( ( 39 - 7 - 12 ) var( --remBase ) );
	}
	#service17 ol::before{
		top : calc( 22 var( --remBase ) );
		left : calc( 12 * 100% / 870 );
		width : calc( 2 * 100% / 870 );
		height : calc( 100% - ( ( 22 + 22 + ( 36 - 7 - 12 ) + ( ( 30 * 4 ) - 7 ) ) var( --remBase ) ) );
	}
	#service17 ol > li + li{
		margin-top : calc( ( 36 - 7 - 12 ) var( --remBase ) );
	}
	#service17 h5{
		font-size : 2rem;
		line-height : 2.2;
	}
	#service17 h5::before{
		top : calc( 17 var( --remBase ) );
		left : calc( -37 * 100% / 825 );
		width : calc( 10 * 100% / 825 );
		height : calc( 10 var( --remBase ) );
	}
	#service17 h5 + p{
		margin-top : calc( ( 29 - 12 - 7 ) var( --remBase ) );
	}
}
#service18 li{
	display : grid;
	align-items : start;
	justify-content : start;
	color : #666;
	letter-spacing : .1em;
}
#service18 li::before{
	display : block;
	font-size : 0;
	content : "";
	background-color : var( --blue );
}
@media screen and ( max-width : 750px ){
	#service18{
		padding-bottom : calc( ( 133 - 12 - 8.5 ) var( --remBase ) );
	}
	#service18 ul{
		margin-top : calc( ( 66 - 8.5 - 12 ) var( --remBase ) );
	}
	#service18 li{
		grid-template-columns : calc( 13 var( --percentBase ) ) 1fr;
		column-gap : calc( 10 var( --percentBase ) );
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#service18 li::before{
		height : calc( 13 var( --remBase ) );
		margin-top : calc( 18.5 var( --remBase ) );
	}
	#service18 li + li{
		margin-top : calc( 20 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service18{
		padding-bottom : calc( ( 110 - 7 - 8.5 ) var( --remBase ) );
	}
	#service18 ul{
		margin-top : calc( ( 48 - 8.5 - 7 ) var( --remBase ) );
	}
	#service18 li{
		grid-template-columns : calc( 8 var( --percentBase ) ) 1fr;
		column-gap : calc( 14 var( --percentBase ) );
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#service18 li::before{
		height : calc( 8 var( --remBase ) );
		margin-top : calc( 11 var( --remBase ) );
	}
}
#service19 dl{
	display : grid;
	grid-template-columns : auto auto;
	place-items : center;
	justify-content : center;
	width : 100%;
	color : var( --blue );
	background-color : white;
	border-color : currentColor;
	border-style : solid;
}
#service19 dt , #service19 dd{
	letter-spacing : .1em;
}
@media screen and ( max-width : 750px ){
	#service19{
		padding-bottom : calc( 105 var( --remBase ) );
	}
	#service19 .box{
		margin-top : calc( ( 50 - 8.5 ) var( --remBase ) );
	}
	#service19 dl{
		column-gap : calc( 15 * 100% / 668 );
		height : calc( 125 var( --remBase ) );
		border-width : 1px;
	}
	#service19 dt , #service19 dd{
		font-size : 3rem;
	}
	#service19 .link01{
		margin-top : calc( 51 var( --remBase ) );
	}
	#service19 picture{
		width : 100%;
		margin-top : calc( 67 var( --remBase ) );
	}
	#service19 picture img{
		width : 100%;
		height : auto;
	}
}
@media print , screen and ( min-width : 750.02px ){
	#service19{
		padding-bottom : calc( 104 var( --remBase ) );
		overflow-x : clip;
	}
	#service19 .box{
		position : relative;
		min-height : calc( 420 var( --remBase ) );
		margin-top : calc( ( 50 - 8.5 ) var( --remBase ) );
	}
	#service19 .texts{
		width : calc( 480 var( --percentBase ) );
	}
	#service19 dl{
		column-gap : calc( 10 * 100% / 478 );
		height : calc( 73 var( --remBase ) );
		border-width : 1px;
	}
	#service19 dt , #service19 dd{
		font-size : 2rem;
	}
	#service19 .link01{
		width : calc( 291 * 100% / 480 );
		margin-top : calc( 57 var( --remBase ) );
	}
	#service19 picture{
		position : absolute;
		top : 0;
		left : calc( 610 var( --percentBase ) );
		width : calc( 590 var( --percentBase ) );
		height : calc( 420 var( --remBase ) );
	}
	#service19 picture img{
		width : 100%;
		height : 100%;
		object-fit : cover;
	}
}

/* --------------------------------------------
RECRUIT
--------------------------------------------- */
#recruit01 p{
	font-size : 2.6rem;
	line-height : calc( 50 / 26 );
	color : #666;
	letter-spacing : .2em;
}
#recruit01 ul{
	display : grid;
}
#recruit01 li{
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background : url( "../images/recruit/recruit01/bg.svg" ) center / contain no-repeat;
}
@media screen and ( max-width : 750px ){
	#recruit01{
		padding-bottom : calc( ( 101 - 8.5 ) var( --remBase ) );
	}
	#recruit01 p{
		margin-top : calc( ( 64 - 12 ) var( --remBase ) );
	}
	#recruit01 ul{
		grid-template-columns : repeat( 2 , calc( 303 var( --percentBase ) ) );
		row-gap : calc( 39 var( --remBase ) );
		justify-content : space-between;
		margin-top : calc( 48 var( --remBase ) );
	}
	#recruit01 li{
		height : calc( 313 var( --remBase ) );
		padding-top : calc( ( 152 - 5 ) var( --remBase ) );
		font-size : 3rem;
		line-height : calc( 40 / 30 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit01{
		padding-bottom : calc( ( 89 - 8.5 ) var( --remBase ) );
	}
	#recruit01 p{
		margin-top : calc( ( 64 - 12 ) var( --remBase ) );
	}
	#recruit01 ul{
		grid-template-columns : repeat( 4 , calc( 215 var( --percentBase ) ) );
		column-gap : calc( ( 140 / 3 ) var( --percentBase ) );
		margin-top : calc( ( 45 - 12 ) var( --remBase ) );
	}
	#recruit01 li{
		height : calc( 222 var( --remBase ) );
		padding-top : calc( ( 107 - 5 ) var( --remBase ) );
		font-size : 2rem;
		line-height : 1.5;
	}
}
#recruit02 h4{
	display : grid;
	place-items : center;
	align-content : center;
	font-weight : 400;
	color : var( --blue );
	background-color : white;
	border-color : currentColor;
	border-style : solid;
	border-radius : 50%;
}
#recruit02 h4 span{
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit02 p , #recruit02 li li{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
@media screen and ( max-width : 750px ){
	#recruit02{
		padding-bottom : calc( ( 142 - 12 - 8.5 ) var( --remBase ) );
	}
	#recruit02 > ul{
		margin-top : calc( ( 40 - 8.5 ) var( --remBase ) );
	}
	#recruit02 > ul > li + li{
		margin-top : calc( ( 62 - 12 ) var( --remBase ) );
	}
	#recruit02 h4{
		width : calc( 240 var( --percentBase ) );
		height : calc( 240 var( --remBase ) );
		margin-inline : auto;
		border-width : 1px;
	}
	#recruit02 h4 span:nth-of-type( 1 ){
		font-size : 5rem;
	}
	#recruit02 h4 span:nth-of-type( 2 ){
		font-size : 6.8rem;
	}
	#recruit02 p , #recruit02 li li{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#recruit02 h4 + p{
		margin-top : calc( ( 24 - 12 ) var( --remBase ) );
	}
	#recruit02 h4 + div{
		margin-top : calc( ( 30 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit02{
		padding-bottom : calc( ( 108 - 8.5 ) var( --remBase ) );
	}
	#recruit02 > ul{
		margin-top : calc( ( 46 - 8.5 ) var( --remBase ) );
	}
	#recruit02 > ul > li{
		display : grid;
		grid-template-columns : calc( 175 var( --percentBase ) ) 1fr;
		column-gap : calc( 40 var( --percentBase ) );
		align-items : center;
	}
	#recruit02 > ul > li + li{
		margin-top : calc( 30 var( --remBase ) );
	}
	#recruit02 h4{
		height : calc( 175 var( --remBase ) );
		border-width : 1px;
	}
	#recruit02 h4 span:nth-of-type( 1 ){
		font-size : 3.6rem;
	}
	#recruit02 h4 span:nth-of-type( 2 ){
		font-size : 5rem;
	}
	#recruit02 h4 + p{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#recruit02 li div p , #recruit02 li li{
		font-size : 1.6rem;
		line-height : 2.25;
	}
}
#recruit03 .box{
	border-color : var( --blue );
	border-style : solid;
}
#recruit03 p{
	color : #666;
}
@media screen and ( max-width : 750px ){
	#recruit03{
		padding-bottom : calc( ( 113 - 8.5 ) var( --remBase ) );
	}
	#recruit03 .box{
		padding-inline : calc( 36 var( --percentBase ) );
		padding-top : calc( ( 60 - 12 ) var( --remBase ) );
		padding-bottom : calc( ( 67 - 11 ) var( --remBase ) );
		margin-top : calc( ( 49 - 8.5 ) var( --remBase ) );
		border-width : 1px;
	}
	#recruit03 p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#recruit03 p + p{
		margin-top : calc( 50 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit03{
		padding-bottom : calc( ( 75 - 8.5 ) var( --remBase ) );
	}
	#recruit03 .box{
		padding-top : calc( ( 95 - 11 ) var( --remBase ) );
		padding-bottom : calc( ( 88 - 11 ) var( --remBase ) );
		padding-left : calc( 75 var( --percentBase ) );
		padding-right : calc( 104 var( --percentBase ) );
		margin-top : calc( ( 49 - 8.5 ) var( --remBase ) );
		border-width : 1px;
	}
	#recruit03 p{
		font-size : 1.8rem;
		line-height : calc( 40 / 18 );
	}
	#recruit03 p + p{
		margin-top : calc( 20 var( --remBase ) );
	}
}
#recruit04 h4{
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit04 li{
	position : relative;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	counter-increment : no;
	border-color : currentColor;
	border-style : solid;
}
#recruit04 li::before{
	position : absolute;
	display : grid;
	place-items : center;
	line-height : 1;
	color : white;
	content : counter( no );
	background-color : var( --blue );
	border-radius : 50%;
}
@media screen and ( max-width : 750px ){
	#recruit04{
		padding-bottom : calc( ( 127 - 8.5 ) var( --remBase ) );
	}
	#recruit04::after{
		display : block;
		width : calc( 268 var( --percentBase ) );
		height : calc( 265 var( --remBase ) );
		margin-top : calc( 16 var( --remBase ) );
		margin-left : calc( 193 var( --percentBase ) );
		content : "";
		background : url( "../images/recruit/recruit04/bg.webp" ) center / contain no-repeat;
	}
	#recruit04 h4{
		margin-top : calc( ( 56 - 8.5 ) var( --remBase ) );
		font-size : 2.6rem;
	}
	#recruit04 ul{
		margin-top : calc( 75 var( --remBase ) );
	}
	#recruit04 li{
		padding-top : calc( ( ( 71 - 6 ) ) var( --remBase ) );
		padding-bottom : calc( ( 67 - 6 ) var( --remBase ) );
		font-size : 2.8rem;
		line-height : calc( 40 / 28 );
		border-width : 1px;
	}
	#recruit04 li::before{
		top : calc( -26 var( --remBase ) );
		left : calc( 305 var( --percentBase ) );
		width : calc( 60 var( --percentBase ) );
		height : calc( 60 var( --remBase ) );
		font-size : 2.8rem;
	}
	#recruit04 li + li{
		margin-top : calc( 40 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit04{
		padding-bottom : calc( ( 148 - 8.5 ) var( --remBase ) );
	}
	#recruit04 h4{
		margin-top : calc( ( 79 - 8.5 ) var( --remBase ) );
		font-size : 2.6rem;
	}
	#recruit04 ul{
		position : relative;
		display : grid;
		grid-template-columns : repeat( 3 , calc( 316 var( --percentBase ) ) );
		row-gap : calc( 46 var( --remBase ) );
		column-gap : calc( 26 var( --percentBase ) );
		margin-top : calc( 75 var( --remBase ) );
	}
	#recruit04 ul::after{
		position : absolute;
		top : calc( 228 var( --remBase ) );
		left : calc( 378 var( --percentBase ) );
		display : block;
		width : calc( 228 var( --percentBase ) );
		height : calc( 225 var( --remBase ) );
		content : "";
		background : url( "../images/recruit/recruit04/bg.webp" ) center / contain no-repeat;
	}
	#recruit04 li{
		height : calc( 205 var( --remBase ) );
		padding-top : calc( ( 63 - 6 ) var( --remBase ) );
		font-size : 1.8rem;
		line-height : calc( 30 / 18 );
		border-width : 1px;
	}
	#recruit04 li::before{
		top : calc( -26 var( --remBase ) );
		left : calc( 128 * 100% / 316 );
		width : calc( 60 * 100% / 316 );
		height : calc( 60 var( --remBase ) );
		font-size : 2.8rem;
	}
	#recruit04 li:nth-child( 5 ){
		grid-row : 2;
		grid-column : 3;
	}
}
#recruit05 ul{
	display : grid;
	justify-content : space-between;
}
#recruit05 h4{
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit05 picture{
	width : 100%;
}
#recruit05 img{
	width : 100%;
	height : 100%;
	object-fit : cover;
}
@media screen and ( max-width : 750px ){
	#recruit05{
		padding-bottom : calc( ( 183 - 2 - 8.5 ) var( --remBase ) );
	}
	#recruit05 ul{
		grid-template-columns : repeat( 2 , calc( 328 var( --percentBase ) ) );
		row-gap : calc( ( 31 - 2 ) var( --remBase ) );
		margin-top : calc( ( 49 - 8.5 ) var( --remBase ) );
	}
	#recruit05 picture{
		height : calc( 211 var( --remBase ) );
	}
	#recruit05 h4{
		margin-top : calc( ( 18 - 2 ) var( --remBase ) );
		font-size : 2.6rem;
		line-height : calc( 30 / 26 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit05{
		padding-bottom : calc( ( 146 - 4 - 8.5 ) var( --remBase ) );
	}
	#recruit05 ul{
		grid-template-columns : repeat( 2 , calc( 480 var( --percentBase ) ) );
		row-gap : calc( ( 38 - 4 ) var( --remBase ) );
		margin-top : calc( ( 49 - 8.5 ) var( --remBase ) );
	}
	#recruit05 picture{
		width : 100%;
		height : calc( 300 var( --remBase ) );
	}
	#recruit05 picture img{
		width : 100%;
		height : 100%;
		object-fit : cover;
	}
	#recruit05 h4{
		margin-top : calc( ( 27 - 4 ) var( --remBase ) );
		font-size : 2.2rem;
		line-height : calc( 30 / 22 );
	}
}
#recruit06 picture img{
	width : 100%;
	height : auto;
}
#recruit06 h4{
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit06 p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
@media screen and ( max-width : 750px ){
	#recruit06{
		padding-bottom : calc( ( 142 - 12 - 8.5 ) var( --remBase ) );
	}
	#recruit06 ul{
		margin-top : calc( ( 73 - 8.5 ) var( --remBase ) );
	}
	#recruit06 li + li{
		margin-top : calc( ( 158 - 12 ) var( --remBase ) );
	}
	#recruit06 picture{
		width : 100%;
	}
	#recruit06 h4{
		margin-top : calc( 46 var( --remBase ) );
		font-size : 3rem;
	}
	#recruit06 h4 + p{
		margin-top : calc( ( 41 - 12 ) var( --remBase ) );
	}
	#recruit06 p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#recruit06 p + p{
		margin-top : calc( 50 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit06{
		padding-bottom : calc( ( 145 - 12 - 8.5 ) var( --remBase ) );
	}
	#recruit06 ul{
		margin-top : calc( ( 73 - 8.5 ) var( --remBase ) );
	}
	#recruit06 li + li{
		margin-top : calc( ( 158 - 12 ) var( --remBase ) );
	}
	#recruit06 picture{
		width : calc( 660 var( --percentBase ) );
		margin-inline : auto;
	}
	#recruit06 h4{
		margin-top : calc( 44 var( --remBase ) );
		font-size : 2.4rem;
	}
	#recruit06 h4 + p{
		margin-top : calc( ( 46 - 12 ) var( --remBase ) );
	}
	#recruit06 p{
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#recruit06 p + p{
		margin-top : calc( 10 var( --remBase ) );
	}
}
#recruit07 .reviews h4{
	display : grid;
	place-items : center;
	font-weight : 400;
	color : white;
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background-color : var( --blue );
}
#recruit07 .reviews .inputs{
	display : grid;
	align-items : center;
	background-color : #ecf5f6;
}
#recruit07 .reviews label{
	display : block;
	font-weight : 400;
	color : #666;
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit07 .reviews label span{
	position : relative;
	display : grid;
	align-items : center;
}
#recruit07 .reviews label span::after{
	display : block;
	content : "";
	background-color : #c4c4c4;
}
#recruit07 .reviews label input:checked + span::before{
	position : absolute;
	top : 50%;
	display : grid;
	place-items : center;
	color : var( --blue );
	content : attr( data-value );
	background-color : white;
	border-color : currentColor;
	border-style : solid;
	border-radius : 50%;
	translate : 0 -50%;
}
#recruit07 .reviews input{
	display : none;
}
#recruit07 .glaphs{
	display : grid;
}
#recruit07 .glaphs li{
	height : 100%;
	outline-style : solid;
	outline-color : var( --blue );
}
#recruit07 .glaphs h4{
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit07 .glaphs picture img{
	width : 100%;
	height : auto;
}
@media screen and ( max-width : 750px ){
	#recruit07{
		padding-bottom : calc( ( 154 - 8.5 ) var( --remBase ) );
	}
	#recruit07 .reviews{
		margin-top : calc( ( 60 - 8.5 ) var( --remBase ) );
	}
	#recruit07 .reviews li + li{
		margin-top : calc( 30 var( --remBase ) );
	}
	#recruit07 .reviews h4{
		height : calc( 94 var( --remBase ) );
		font-size : 3rem;
	}
	#recruit07 .reviews .inputs{
		grid-template-columns : calc( 84 var( --percentBase ) ) repeat( 5 , calc( 100 var( --percentBase ) ) ) calc( 86 var( --percentBase ) );
		height : calc( 95 var( --remBase ) );
	}
	#recruit07 .reviews label{
		font-size : 2rem;
		line-height : 1.5;
	}
	#recruit07 .reviews label span{
		grid-template-columns : calc( 48 * 100% / 100 ) 1fr;
	}
	#recruit07 .reviews label span::after{
		height : 1px;
	}
	#recruit07 .reviews label input:checked + span::before{
		left : calc( -3 * 100% / 100 );
		width : calc( 54 * 100% / 100 );
		height : calc( 54 var( --remBase ) );
		font-size : 3rem;
		border-width : 1px;
	}
	#recruit07 .glaphs{
		grid-template-columns : repeat( 2 , calc( 316 var( --percentBase ) ) );
		grid-auto-rows : calc( 360 var( --remBase ) );
		row-gap : calc( 40 var( --remBase ) );
		justify-content : space-between;
		margin-top : calc( 44 var( --remBase ) );
	}
	#recruit07 .glaphs li{
		padding-top : calc( 37 var( --remBase ) );
		outline-width : 1px;
		outline-offset : -1px;
	}
	#recruit07 .glaphs h4{
		font-size : 2.6rem;
	}
	#recruit07 .glaphs li:nth-child( 1 ) picture{
		width : calc( 229 * 100% / 316 );
		margin-top : calc( 29 var( --remBase ) );
		margin-left : calc( 44 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 2 ) picture{
		width : calc( 234 * 100% / 316 );
		margin-top : calc( 26 var( --remBase ) );
		margin-left : calc( 40 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 3 ) picture{
		width : calc( 229 * 100% / 316 );
		margin-top : calc( 29 var( --remBase ) );
		margin-left : calc( 44 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 4 ) picture{
		width : calc( 230 * 100% / 316 );
		margin-top : calc( 20 var( --remBase ) );
		margin-left : calc( 42 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 5 ) picture{
		width : calc( 249 * 100% / 316 );
		margin-top : calc( 23 var( --remBase ) );
		margin-left : calc( 24 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 6 ) picture{
		width : calc( 230 * 100% / 316 );
		margin-top : calc( 30 var( --remBase ) );
		margin-left : calc( 43 * 100% / 316 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit07{
		padding-bottom : calc( ( 130 - 8.5 ) var( --remBase ) );
	}
	#recruit07 .reviews{
		margin-top : calc( ( 58 - 8.5 ) var( --remBase ) );
	}
	#recruit07 .reviews li{
		display : grid;
		grid-template-columns : calc( 198 var( --percentBase ) ) 1fr;
		height : calc( 94 var( --remBase ) );
	}
	#recruit07 .reviews li + li{
		margin-top : calc( 5 var( --remBase ) );
	}
	#recruit07 .reviews h4{
		height : 100%;
		font-size : 2rem;
	}
	#recruit07 .reviews .inputs{
		grid-template-columns : calc( 160 * 100% / 802 ) repeat( 5 , calc( 100 * 100% / 802 ) ) calc( 142 * 100% / 802 );
		height : 100%;
	}
	#recruit07 .reviews label{
		font-size : 2rem;
	}
	#recruit07 .reviews label span{
		grid-template-columns : calc( 48 * 100% / 100 ) 1fr;
	}
	#recruit07 .reviews label span::after{
		height : 1px;
	}
	#recruit07 .reviews label input:checked + span::before{
		left : calc( -3 * 100% / 100 );
		width : calc( 54 * 100% / 100 );
		height : calc( 54 var( --remBase ) );
		font-size : 3rem;
		border-width : 1px;
	}
	#recruit07 .glaphs{
		grid-template-columns : repeat( 3 , calc( 316 var( --percentBase ) ) );
		grid-auto-rows : calc( 360 var( --remBase ) );
		row-gap : calc( 30 var( --remBase ) );
		column-gap : calc( 26 var( --percentBase ) );
		margin-top : calc( 81 var( --remBase ) );
	}
	#recruit07 .glaphs li{
		padding-top : calc( 37 var( --remBase ) );
		outline-width : 1px;
		outline-offset : -1px;
	}
	#recruit07 .glaphs h4{
		font-size : 2.6rem;
	}
	#recruit07 .glaphs li:nth-child( 1 ) picture{
		width : calc( 229 * 100% / 316 );
		margin-top : calc( 29 var( --remBase ) );
		margin-left : calc( 44 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 2 ) picture{
		width : calc( 234 * 100% / 316 );
		margin-top : calc( 26 var( --remBase ) );
		margin-left : calc( 40 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 3 ) picture{
		width : calc( 229 * 100% / 316 );
		margin-top : calc( 29 var( --remBase ) );
		margin-left : calc( 44 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 4 ) picture{
		width : calc( 230 * 100% / 316 );
		margin-top : calc( 20 var( --remBase ) );
		margin-left : calc( 42 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 5 ) picture{
		width : calc( 249 * 100% / 316 );
		margin-top : calc( 23 var( --remBase ) );
		margin-left : calc( 24 * 100% / 316 );
	}
	#recruit07 .glaphs li:nth-child( 6 ) picture{
		width : calc( 230 * 100% / 316 );
		margin-top : calc( 30 var( --remBase ) );
		margin-left : calc( 43 * 100% / 316 );
	}
}
#recruit08 ul{
	display : grid;
}
#recruit08 li{
	height : 100%;
}
#recruit08 a{
	position : relative;
	display : grid;
	place-items : center;
	width : 100%;
	height : 100%;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background-color : white;
	border-color : var( --blue );
	border-style : solid;
	transition : color var( --transitionBase ) , background var( --transitionBase );
}
#recruit08 a::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background : url( "../images/ui/button/black/down01.svg" ) center / contain no-repeat;
	filter : var( --filterBlue );
	transition : filter var( --transitionBase );
}
@media screen and ( max-width : 750px ){
	#recruit08{
		padding-bottom : calc( ( 110 - 8.5 ) var( --remBase ) );
	}
	#recruit08 ul{
		grid-template-columns : repeat( 2 , calc( 318 var( --percentBase ) ) );
		grid-auto-rows : calc( 90 var( --remBase ) );
		row-gap : calc( 24 var( --remBase ) );
		justify-content : space-between;
		margin-top : calc( 56 var( --remBase ) );
	}
	#recruit08 a{
		font-size : 2.4rem;
		line-height : 1.25;
		border-width : 1px;
	}
	#recruit08 a::after{
		top : calc( 41 var( --remBase ) );
		right : calc( 16 * 100% / 318 );
		width : calc( 16 * 100% / 318 );
		height : calc( 13 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit08{
		padding-bottom : calc( ( 112 - 8.5 ) var( --remBase ) );
	}
	#recruit08 ul{
		grid-template-columns : repeat( 4 , calc( 238 var( --percentBase ) ) );
		grid-auto-rows : calc( 80 var( --remBase ) );
		column-gap : calc( 16 var( --percentBase ) );
		margin-top : calc( 56 var( --remBase ) );
	}
	#recruit08 a{
		font-size : 1.6rem;
		line-height : 1.25;
		border-width : 1px;
	}
	#recruit08 a::after{
		top : calc( 38 var( --remBase ) );
		right : calc( 17 * 100% / 238 );
		width : calc( 8 * 100% / 238 );
		height : calc( 7 var( --remBase ) );
	}
}
@media ( hover : hover ){
	#recruit08 a:hover{
		color : white;
		background-color : var( --blue );
	}
	#recruit08 a:hover::after{
		filter : var( --filterWhite );
	}
}
#recruit09 button{
	position : relative;
	width : 100%;
	font-weight : 400;
	color : var( --blue );
	text-align : left;
	letter-spacing : .1em;
	border-block-style : solid;
	border-block-color : currentColor;
}
#recruit09 button::before , #recruit09 button::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background-color : var( --blue );
}
#recruit09 button::before{
	opacity : 0;
	transition : rotate var( --transitionBase ) , opacity var( --transitionBase );
	rotate : -90deg;
}
#recruit09 button::after{
	transition : rotate var( --transitionBase );
	rotate : 0deg;
}
#recruit09 button.is-close::before{
	opacity : 1;
	rotate : 0deg;
}
#recruit09 button.is-close::after{
	rotate : 90deg;
}
#recruit09 dt , #recruit09 dd{
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .1em;
}
#recruit09 li > dl > dt{
	color : var( --blue );
}
#recruit09 li > dl > dd{
	color : #666;
}
#recruit09 dl dl dt , #recruit09 dl dl dd{
	display : inline;
}
#recruit09 dl dl dd{
	padding-left : 1em;
}
@media screen and ( max-width : 750px ){
	#recruit09{
		padding-bottom : calc( ( 137 - 12 - 8.5 ) var( --remBase ) );
	}
	#recruit09 ul{
		margin-top : calc( 54 var( --remBase ) );
	}
	#recruit09 li + li{
		margin-top : calc( ( 102 - 12 ) var( --remBase ) );
	}
	#recruit09 button{
		border-block-width : 1px;
		padding-block : calc( 32 var( --remBase ) );
		padding-inline : calc( 25 var( --percentBase ) );
		font-size : 3rem;
	}
	#recruit09 button::before , #recruit09 button::after{
		top : calc( 46 var( --remBase ) );
		right : 0;
		width : calc( 18 var( --percentBase ) );
		height : calc( 2 var( --remBase ) );
	}
	#recruit09 dt , #recruit09 dd{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#recruit09 li > dl{
		padding-top : calc( ( 50 - 12 ) var( --remBase ) );
	}
	#recruit09 li > dl > dd + dt{
		margin-top : calc( 50 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit09{
		padding-bottom : calc( ( 132 - 7 - 8.5 ) var( --remBase ) );
	}
	#recruit09 ul{
		margin-top : calc( 62 var( --remBase ) );
	}
	#recruit09 li + li{
		margin-top : calc( ( 52 - 7 ) var( --remBase ) );
	}
	#recruit09 button{
		border-block-width : 1px;
		padding-block : calc( 24 var( --remBase ) );
		padding-inline : calc( 25 var( --percentBase ) );
		font-size : 2.4rem;
	}
	#recruit09 button::before , #recruit09 button::after{
		top : calc( 33 var( --remBase ) );
		right : calc( 25 var( --percentBase ) );
		width : calc( 18 var( --percentBase ) );
		height : calc( 2 var( --remBase ) );
	}
	#recruit09 dt , #recruit09 dd{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#recruit09 li > dl{
		display : grid;
		grid-template-columns : calc( 198 var( --percentBase ) ) 1fr;
		row-gap : calc( 30 var( --remBase ) );
		padding-top : calc( ( 28 - 7 ) var( --remBase ) );
	}
	#recruit09 li > dl > dt{
		padding-inline : calc( 30 * 100% / 198 );
	}
}
#recruit10 li{
	display : grid;
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#recruit10 li::before{
	display : block;
	font-size : 0;
	content : "";
	background-color : var( --blue );
}
#recruit10 picture img{
	width : 100%;
	height : auto;
}
@media screen and ( max-width : 750px ){
	#recruit10{
		padding-bottom : calc( ( 71 - ( 40 * .375 ) ) var( --remBase ) );
	}
	#recruit10 ul{
		margin-top : calc( ( 47 - 12 ) var( --remBase ) );
	}
	#recruit10 li{
		grid-template-columns : calc( 8 var( --percentBase ) ) 1fr;
		column-gap : calc( 26 var( --percentBase ) );
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#recruit10 li::before{
		height : calc( 8 var( --remBase ) );
		margin-top : calc( 21 var( --remBase ) );
	}
	#recruit10 picture{
		margin-top : calc( ( 65 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit10{
		padding-bottom : calc( ( 59 - ( 40 * .375 ) ) var( --remBase ) );
	}
	#recruit10 ul{
		margin-top : calc( ( 42 - 12 ) var( --remBase ) );
	}
	#recruit10 li{
		grid-template-columns : calc( 8 var( --percentBase ) ) 1fr;
		column-gap : calc( 12 var( --percentBase ) );
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#recruit10 li::before{
		height : calc( 8 var( --remBase ) );
		margin-top : calc( 16 var( --remBase ) );
	}
	#recruit10 picture{
		margin-top : calc( ( 56 - 12 ) var( --remBase ) );
	}
}
#recruit11 h3{
	font-weight : 400;
	line-height : 1.75;
	color : var( --blue );
	letter-spacing : .2em;
}
#recruit11 li{
	position : relative;
	letter-spacing : .2em;
}
#recruit11 li::before{
	position : absolute;
	left : 0;
	display : block;
	font-size : 0;
	content : "";
	background : url( "../images/recruit/recruit11/check.webp" ) center / contain no-repeat;
}
#recruit11 .box{
	color : white;
	background-color : var( --blue );
}
#recruit11 h4{
	font-weight : 400;
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit11 p{
	font-family : "Noto Sans JP" , sans-serif;
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
#recruit11 a{
	position : relative;
	display : grid;
	place-items : center;
	margin-inline : auto;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background-color : white;
	outline-style : solid;
	outline-color : white;
	transition : color var( --transitionBase ) , background var( --transitionBase );
}
#recruit11 a::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background : url( "../images/ui/arrow/black/right01.svg" ) center / contain no-repeat;
	filter : var( --filterBlue );
	transition : filter var( --transitionBase );
}
@media screen and ( max-width : 750px ){
	#recruit11{
		padding-bottom : calc( 1 var( --remBase ) );
	}
	#recruit11 h3{
		padding-inline : calc( 40 var( --viewportBase ) );
		font-size : 4rem;
	}
	#recruit11 ul{
		padding-inline : calc( 40 var( --viewportBase ) );
		margin-top : calc( ( 75 - ( 40 * .375 ) - 15 ) var( --remBase ) );
	}
	#recruit11 li{
		padding-left : calc( 59 var( --percentBase ) );
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#recruit11 li::before{
		top : calc( ( -8 + 12 ) var( --remBase ) );
		width : calc( 36 var( --percentBase ) );
		height : calc( 36 var( --remBase ) );
	}
	#recruit11 li + li{
		margin-top : calc( 20 var( --remBase ) );
	}
	#recruit11 .box{
		padding-top : calc( 79 var( --remBase ) );
		padding-bottom : calc( 88 var( --remBase ) );
		margin-top : calc( ( 93 - 12 ) var( --remBase ) );
	}
	#recruit11 h4{
		font-size : 4rem;
	}
	#recruit11 p{
		margin-top : calc( 26 var( --remBase ) );
		font-size : 2.6rem;
	}
	#recruit11 a{
		width : calc( 482 var( --viewportBase ) );
		height : calc( 105 var( --remBase ) );
		margin-top : calc( 52 var( --remBase ) );
		font-size : 2.8rem;
		outline-width : 1px;
	}
	#recruit11 a::after{
		top : calc( 55 var( --remBase ) );
		right : calc( 49 * 100% / 482 );
		width : calc( 34 * 100% / 482 );
		height : calc( 8 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#recruit11{
		padding-bottom : calc( 175 var( --remBase ) );
	}
	#recruit11 h3{
		font-size : 4rem;
	}
	#recruit11 ul{
		margin-top : calc( ( 75 - ( 40 * .375 ) - 15 ) var( --remBase ) );
	}
	#recruit11 li{
		padding-left : calc( 39 var( --percentBase ) );
		font-size : 2rem;
		line-height : 2.5;
	}
	#recruit11 li::before{
		top : calc( ( -6 + 15 ) var( --remBase ) );
		width : calc( 27 var( --percentBase ) );
		height : calc( 28 var( --remBase ) );
	}
	#recruit11 .box{
		padding-top : calc( 47 var( --remBase ) );
		padding-bottom : calc( 60 var( --remBase ) );
		margin-top : calc( ( 107 - 15 ) var( --remBase ) );
	}
	#recruit11 h4{
		font-size : 3rem;
	}
	#recruit11 p{
		margin-top : calc( 37 var( --remBase ) );
		font-size : 1.5rem;
	}
	#recruit11 a{
		width : calc( 321 var( --percentBase ) );
		height : calc( 70 var( --remBase ) );
		margin-top : calc( 37 var( --remBase ) );
		font-size : 1.5rem;
		outline-width : 1px;
	}
	#recruit11 a::after{
		top : calc( 32 var( --remBase ) );
		right : calc( 36 * 100% / 321 );
		width : calc( 23 * 100% / 321 );
		height : calc( 6 var( --remBase ) );
	}
}
@media ( hover : hover ){
	#recruit11 a:hover{
		color : white;
		background-color : var( --blue );
	}
	#recruit11 a:hover::after{
		filter : var( --filterWhite );
	}
}

/* --------------------------------------------
SHOP
--------------------------------------------- */
#shopAll h2 , #shopKinki h2{
	font-size : 4rem;
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .2em;
	border-bottom-color : currentColor;
	border-bottom-style : solid;
	border-bottom-width : 1px;
}
#shopAll svg , #shopKinki svg{
	display : block;
	width : auto;
}
@media screen and ( max-width : 750px ){
	#shopAll , #shopKinki{
		padding-bottom : calc( 80 var( --remBase ) );
	}
	#shopAll h2 , #shopKinki h2{
		padding-bottom : calc( 27 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#shopAll , #shopKinki{
		padding-bottom : calc( 103 var( --remBase ) );
	}
	#shopAll h2 , #shopKinki h2{
		padding-bottom : calc( 28 var( --remBase ) );
	}
}
@media ( hover : hover ){
	#shopAll svg a , #shopKinki svg a{
		transition : opacity var( --transitionBase );
	}
	#shopAll svg a:hover , #shopKinki svg a:hover{
		opacity : .5;
	}
}
#shopAll .list > li{
	border-top : solid 1px var( --blue );
}
#shopAll .list ul{
	display : none;
}
#shopAll button{
	position : relative;
	display : block;
	display : grid;
	width : 100%;
	font-weight : 400;
	color : var( --blue );
	text-align : left;
	letter-spacing : .2em;
}
#shopAll button::before , #shopAll button::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background-color : var( --blue );
}
#shopAll button::before{
	transition : rotate var( --transitionBase ) , opacity var( --transitionBase );
}
#shopAll button::after{
	transition : rotate var( --transitionBase );
	rotate : 90deg;
}
#shopAll :where( h3 , h4 ) > button::after{
	rotate : 90deg;
}
#shopAll :where( h3 , h4 ).is-open > button::before{
	rotate : -90deg;
	opacity : 0;
}
#shopAll :where( h3 , h4 ).is-open > button::after{
	rotate : 0deg;
}
#shopAll .empty{
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .2em;
}
#shopAll h5 > button::before{
	rotate : -90deg;
	opacity : 0;
}
#shopAll h5 > button::after{
	rotate : 0deg;
}
#shopAll h5.is-open > button::before{
	rotate : 0deg;
	opacity : 1;
}
#shopAll h5.is-open > button::after{
	rotate : 90deg;
}
#shopAll li li li{
	border-top : solid 1px var( --blue );
}
#shopAll picture img{
	width : 100%;
	height : auto;
}
#shopAll .address{
	font-family : "Noto Sans JP" , sans-serif;
	font-weight : 350;
	color : #666;
	letter-spacing : .1em;
}
#shopAll dl{
	display : grid;
	align-items : start;
}
#shopAll dt , #shopAll dd{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#shopAll dt{
	font-weight : 700;
}
#shopAll dd{
	font-weight : 350;
}
#shopAll .pdf{
	display : grid;
	align-items : center;
	justify-content : start;
	color : var( --blue );
	-webkit-text-decoration : underline;
	text-decoration : underline;
}
#shopAll .pdf::after{
	display : block;
	content : "";
	background : url( "../images/ui/icon/pdf.webp" ) center / contain no-repeat;
}
#shopAll .reserve{
	display : grid;
	align-items : center;
	color : var( --blue );
	letter-spacing : .1em;
}
#shopAll .reserve::before , #shopAll .reserve::after{
	display : block;
	font-size : 0;
	content : "";
}
#shopAll .reserve::before{
	width : 100%;
	background-repeat : no-repeat;
	background-position : left center;
	background-size : auto 100%;
}
@media screen and ( max-width : 750px ){
	#shopAll svg{
		height : calc( 562 var( --remBase ) );
		margin-top : calc( 66 var( --remBase ) );
		margin-left : calc( 49 var( --percentBase ) );
	}
	#shopAll .list{
		margin-top : calc( 54 var( --remBase ) );
	}
	#shopAll button::before , #shopAll button::after{
		height : calc( 2 var( --remBase ) );
	}
	#shopAll h3 button{
		padding-block : calc( 27 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#shopAll h3 button::before , #shopAll h3 button::after{
		top : calc( 39 var( --remBase ) );
		right : calc( 26 var( --percentBase ) );
		width : calc( 18 var( --percentBase ) );
	}
	#shopAll h4{
		width : calc( 630 var( --percentBase ) );
		margin-left : auto;
		border-top : solid 1px var( --blue );
	}
	#shopAll h4 button{
		padding-block : calc( 23 var( --remBase ) );
		padding-inline : calc( 18 * 100% / 630 );
		font-size : 2.4rem;
	}
	#shopAll h4 button::before , #shopAll h4 button::after{
		top : calc( 34 var( --remBase ) );
		right : calc( 26 * 100% / 630 );
		width : calc( 18 * 100% / 630 );
	}
	#shopAll h4.empty{
		padding-block : calc( 23 var( --remBase ) );
		padding-inline : calc( 18 * 100% / 630 );
		font-size : 2.4rem;
	}
	#shopAll h5 button{
		padding-block : calc( 44 var( --remBase ) );
		font-size : 3.6rem;
	}
	#shopAll h5 button::before , #shopAll h5 button::after{
		top : calc( 61 var( --remBase ) );
		right : calc( 26 var( --percentBase ) );
		width : calc( 18 var( --percentBase ) );
	}
	#shopAll .box{
		padding-bottom : calc( 114 var( --remBase ) );
		margin-top : calc( 15 var( --remBase ) );
	}
	#shopAll picture{
		width : calc( 350 var( --percentBase ) );
		margin-inline : auto;
	}
	#shopAll .address{
		margin-top : calc( ( 45 - 13 ) var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 50 / 24 );
	}
	#shopAll dl{
		grid-template-columns : calc( 146 var( --percentBase ) ) 1fr;
	}
	#shopAll dt , #shopAll dd{
		font-size : 2.4rem;
		line-height : calc( 50 / 24 );
	}
	#shopAll .pdf{
		grid-template-columns : auto calc( 24 * 100% / 524 );
		column-gap : calc( 12 * 100% / 524 );
	}
	#shopAll .pdf::after{
		height : calc( 30 var( --remBase ) );
	}
	#shopAll .reserve{
		grid-template-columns : calc( 102 * 100% / 586 ) calc( 432 * 100% / 586 ) calc( 53 * 100% / 586 );
		height : calc( 126 var( --remBase ) );
		padding-left : calc( 49 var( --percentBase ) );
		padding-right : calc( 35 var( --percentBase ) );
		margin-top : calc( ( 50 - 13 ) var( --remBase ) );
		font-size : 3rem;
		color : white;
		background-color : #52bc18;
	}
	#shopAll .reserve::before{
		height : calc( 67 var( --remBase ) );
		background-image : url( "../images/ui/icon/sns/line04.svg" );
	}
	#shopAll .reserve::after{
		height : calc( 13 var( --remBase ) );
		background : url( "../images/ui/arrow/right01.svg" ) left center / contain no-repeat;
	}
}
@media print , screen and ( min-width : 750.02px ){
	#shopAll svg{
		height : calc( 562 var( --remBase ) );
		margin-inline : auto;
		margin-top : calc( 34 var( --remBase ) );
	}
	#shopAll .list{
		margin-top : calc( 65 var( --remBase ) );
	}
	#shopAll .list > li > ul > li{
		width : calc( 960 var( --percentBase ) );
		margin-left : auto;
		border-top : solid 1px var( --blue );
	}
	#shopAll .list > li > ul > li > ul > li{
		width : calc( 920 * 100% / 960 );
		margin-left : auto;
	}
	#shopAll button::before , #shopAll button::after{
		height : calc( 2 var( --remBase ) );
	}
	#shopAll h3 button{
		padding-block : calc( 30 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2rem;
	}
	#shopAll h3 button::before , #shopAll h3 button::after{
		top : calc( 39 var( --remBase ) );
		right : calc( 28 var( --remBase ) );
		width : calc( 18 var( --remBase ) );
	}
	#shopAll h4 button{
		padding-block : calc( 26 var( --remBase ) );
		padding-inline : calc( 20 * 100% / 960 );
		font-size : 1.8rem;
	}
	#shopAll h4 button::before , #shopAll h4 button::after{
		top : calc( 34 var( --remBase ) );
		right : calc( 28 * 100% / 960 );
		width : calc( 18 * 100% / 960 );
	}
	#shopAll h4.empty{
		padding-block : calc( 26 var( --remBase ) );
		padding-inline : calc( 20 * 100% / 960 );
		font-size : 1.8rem;
	}
	#shopAll h5 button{
		padding-block : calc( 31 var( --remBase ) );
		padding-inline : calc( 20 * 100% / 920 );
		font-size : 2.6rem;
	}
	#shopAll h5 button::before , #shopAll h5 button::after{
		top : calc( 43 var( --remBase ) );
		right : calc( 28 * 100% / 920 );
		width : calc( 18 * 100% / 920 );
	}
	#shopAll .box{
		display : grid;
		grid-template-rows : auto auto calc( ( 27 - 8 ) var( --remBase ) ) calc( 122 var( --remBase ) ) 1fr;
		grid-template-columns : calc( 350 * 100% / 900 )  1fr;
		column-gap : calc( 60 * 100% / 900 );
		padding-bottom : calc( 18 var( --remBase ) );
		padding-left : calc( 20 * 100% / 920 );
	}
	#shopAll picture{
		grid-row : 1/6;
		grid-column : 1;
	}
	#shopAll .address{
		grid-row : 1;
		grid-column : 2;
		margin-top : calc( -12 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#shopAll dl{
		grid-template-columns : calc( 100 * 100% / 490 ) 1fr;
		grid-row : 2;
		grid-column : 2;
	}
	#shopAll dt , #shopAll dd{
		font-size : 1.4rem;
		line-height : calc( 30 / 14 );
	}
	#shopAll .pdf{
		grid-template-columns : auto calc( 16 * 100% / 390 );
		column-gap : calc( 8 * 100% / 390 );
	}
	#shopAll .pdf::after{
		height : calc( 20 var( --remBase ) );
	}
	#shopAll .reserve{
		grid-row : 4;
		grid-column : 2;
	}
	#shopAll .reserve{
		grid-template-columns : calc( 35 * 100% / 297 ) calc( 182 * 100% / 297 ) calc( 80 * 100% / 297 );
		width : calc( 364 * 100% / 490 );
		padding-left : calc( 31 * 100%/ 490 );
		padding-right : calc( 36 * 100%/ 490 );
		font-size : 1.8rem;
		background-color : #ecf5f6;
	}
	#shopAll .reserve::before{
		height : calc( 24 var( --remBase ) );
		background-image : url( "../images/ui/icon/sns/line03.svg" );
	}
	#shopAll .reserve::after{
		height : calc( 80 var( --remBase ) );
		background-color : white;
	}
}
#shopKinki .list > li{
	border-top : solid 1px var( --blue );
}
#shopKinki .list ul{
	display : none;
}
#shopKinki button{
	position : relative;
	display : block;
	display : grid;
	width : 100%;
	font-weight : 400;
	color : var( --blue );
	text-align : left;
	letter-spacing : .2em;
}
#shopKinki button::before , #shopKinki button::after{
	position : absolute;
	display : block;
	font-size : 0;
	content : "";
	background-color : var( --blue );
}
#shopKinki button::before{
	transition : rotate var( --transitionBase ) , opacity var( --transitionBase );
}
#shopKinki button::after{
	transition : rotate var( --transitionBase );
	rotate : 90deg;
}
#shopKinki .empty{
	position : relative;
	display : grid;
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .2em;
}
#shopKinki h3 > button::after{
	rotate : 90deg;
}
#shopKinki h3.is-open > button::before{
	rotate : -90deg;
	opacity : 0;
}
#shopKinki h3.is-open > button::after{
	rotate : 0deg;
}
#shopKinki h4 > button::before{
	rotate : -90deg;
	opacity : 0;
}
#shopKinki h4 > button::after{
	rotate : 0deg;
}
#shopKinki h4.is-open > button::before{
	rotate : 0deg;
	opacity : 1;
}
#shopKinki h4.is-open > button::after{
	rotate : 90deg;
}
#shopKinki picture img{
	width : 100%;
	height : auto;
}
#shopKinki .address{
	font-family : "Noto Sans JP" , sans-serif;
	font-weight : 350;
	color : #666;
	letter-spacing : .1em;
}
#shopKinki dl{
	display : grid;
	align-items : start;
}
#shopKinki dt , #shopKinki dd{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
#shopKinki dt{
	font-weight : 700;
}
#shopKinki dd{
	font-weight : 350;
}
#shopKinki .pdf{
	display : grid;
	align-items : center;
	justify-content : start;
	color : var( --blue );
	-webkit-text-decoration : underline;
	text-decoration : underline;
}
#shopKinki .pdf::after{
	display : block;
	content : "";
	background : url( "../images/ui/icon/pdf.webp" ) center / contain no-repeat;
}
#shopKinki .reserve{
	display : grid;
	align-items : center;
	color : var( --blue );
	letter-spacing : .1em;
}
#shopKinki .reserve::before , #shopKinki .reserve::after{
	display : block;
	font-size : 0;
	content : "";
}
#shopKinki .reserve::before{
	width : 100%;
	background-repeat : no-repeat;
	background-position : left center;
	background-size : auto 100%;
}
@media screen and ( max-width : 750px ){
	#shopKinki svg{
		height : calc( 562 var( --remBase ) );
		margin-top : calc( 66 var( --remBase ) );
		margin-left : calc( 49 var( --percentBase ) );
	}
	#shopKinki .list{
		margin-top : calc( 54 var( --remBase ) );
	}
	#shopKinki button::before , #shopKinki button::after{
		height : calc( 2 var( --remBase ) );
	}
	#shopKinki h3 button{
		padding-block : calc( 27 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#shopKinki h3 button::before , #shopKinki h3 button::after{
		top : calc( 39 var( --remBase ) );
		right : calc( 26 var( --percentBase ) );
		width : calc( 18 var( --percentBase ) );
	}
	#shopKinki h3.empty{
		padding-block : calc( 27 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#shopKinki h4 button{
		padding-block : calc( 44 var( --remBase ) );
		font-size : 3.6rem;
	}
	#shopKinki h4 button::before , #shopKinki h4 button::after{
		top : calc( 61 var( --remBase ) );
		right : calc( 26 var( --percentBase ) );
		width : calc( 18 var( --percentBase ) );
	}
	#shopKinki .box{
		padding-bottom : calc( 114 var( --remBase ) );
		margin-top : calc( 15 var( --remBase ) );
	}
	#shopKinki picture{
		width : calc( 350 var( --percentBase ) );
		margin-inline : auto;
	}
	#shopKinki .address{
		margin-top : calc( ( 45 - 13 ) var( --remBase ) );
		font-size : 2.4rem;
		line-height : calc( 50 / 24 );
	}
	#shopKinki dl{
		grid-template-columns : calc( 146 var( --percentBase ) ) 1fr;
	}
	#shopKinki dt , #shopKinki dd{
		font-size : 2.4rem;
		line-height : calc( 50 / 24 );
	}
	#shopKinki .pdf{
		grid-template-columns : auto calc( 24 * 100% / 524 );
		column-gap : calc( 12 * 100% / 524 );
	}
	#shopKinki .pdf::after{
		height : calc( 30 var( --remBase ) );
	}
	#shopKinki .reserve{
		grid-template-columns : calc( 102 * 100% / 586 ) calc( 432 * 100% / 586 ) calc( 53 * 100% / 586 );
		height : calc( 126 var( --remBase ) );
		padding-left : calc( 49 var( --percentBase ) );
		padding-right : calc( 35 var( --percentBase ) );
		margin-top : calc( ( 50 - 13 ) var( --remBase ) );
		font-size : 3rem;
		color : white;
		background-color : #52bc18;
	}
	#shopKinki .reserve::before{
		height : calc( 67 var( --remBase ) );
		background-image : url( "../images/ui/icon/sns/line04.svg" );
	}
	#shopKinki .reserve::after{
		height : calc( 13 var( --remBase ) );
		background : url( "../images/ui/arrow/right01.svg" ) left center / contain no-repeat;
	}
}
@media print , screen and ( min-width : 750.02px ){
	#shopKinki svg{
		height : calc( 562 var( --remBase ) );
		margin-inline : auto;
		margin-top : calc( 34 var( --remBase ) );
	}
	#shopKinki .list{
		margin-top : calc( 65 var( --remBase ) );
	}
	#shopKinki .list > li > ul > li{
		border-top : solid 1px var( --blue );
	}
	#shopKinki button::before , #shopKinki button::after{
		height : calc( 2 var( --remBase ) );
	}
	#shopKinki h3 button{
		padding-block : calc( 30 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2rem;
	}
	#shopKinki h3 button::before , #shopKinki h3 button::after{
		top : calc( 39 var( --remBase ) );
		right : calc( 28 var( --remBase ) );
		width : calc( 18 var( --remBase ) );
	}
	#shopKinki h3.empty{
		padding-block : calc( 30 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2rem;
	}
	#shopKinki h4 button{
		padding-block : calc( 31 var( --remBase ) );
		padding-inline : calc( 36 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#shopKinki h4 button::before , #shopKinki h4 button::after{
		top : calc( 43 var( --remBase ) );
		right : calc( 28 var( --percentBase ) );
		width : calc( 18 var( --percentBase ) );
	}
	#shopKinki .box{
		display : grid;
		grid-template-rows : auto auto calc( ( 27 - 8 ) var( --remBase ) ) calc( 122 var( --remBase ) ) 1fr;
		grid-template-columns : calc( 350 * 100% / 964 )  1fr;
		column-gap : calc( 60 * 100% / 964 );
		padding-bottom : calc( 18 var( --remBase ) );
		padding-left : calc( 36 var( --percentBase ) );
	}
	#shopKinki picture{
		grid-row : 1/6;
		grid-column : 1;
	}
	#shopKinki .address{
		grid-row : 1;
		grid-column : 2;
		margin-top : calc( -12 var( --remBase ) );
		font-size : 1.6rem;
		line-height : 2.5;
	}
	#shopKinki dl{
		grid-template-columns : calc( 100 * 100% / 554 ) 1fr;
		grid-row : 2;
		grid-column : 2;
	}
	#shopKinki dt , #shopKinki dd{
		font-size : 1.4rem;
		line-height : calc( 30 / 14 );
	}
	#shopKinki .pdf{
		grid-template-columns : auto calc( 16 * 100% / 454 );
		column-gap : calc( 8 * 100% / 454 );
	}
	#shopKinki .pdf::after{
		height : calc( 20 var( --remBase ) );
	}
	#shopKinki .reserve{
		grid-row : 4;
		grid-column : 2;
	}
	#shopKinki .reserve{
		grid-template-columns : calc( 35 * 100% / 297 ) calc( 182 * 100% / 297 ) calc( 80 * 100% / 297 );
		width : calc( 364 * 100% / 554 );
		padding-left : calc( 31 * 100%/ 554 );
		padding-right : calc( 36 * 100%/ 554 );
		font-size : 1.8rem;
		background-color : #ecf5f6;
	}
	#shopKinki .reserve::before{
		height : calc( 24 var( --remBase ) );
		background-image : url( "../images/ui/icon/sns/line03.svg" );
	}
	#shopKinki .reserve::after{
		height : calc( 80 var( --remBase ) );
		background-color : white;
	}
}
#shopCost h5{
	display : grid;
	align-items : center;
	justify-content : start;
	font-weight : 400;
	color : var( --blue );
	letter-spacing : .1em;
}
#shopCost h5::before{
	display : block;
	font-size : 0;
	content : "";
	background-color : currentColor;
	border-radius : 50%;
}
#shopCost p{
	font-family : "Noto Sans JP" , sans-serif;
	color : #666;
	letter-spacing : .1em;
}
@media screen and ( max-width : 750px ){
	#shopCost{
		padding-bottom : calc( ( 125 - 12 ) var( --remBase ) );
	}
	#shopCost h5{
		grid-template-columns : calc( 16 var( --percentBase ) ) 1fr;
		column-gap : calc( 17 var( --percentBase ) );
		font-size : 3rem;
	}
	#shopCost h5::before{
		height : calc( 16 var( --remBase ) );
	}
	#shopCost p{
		margin-top : calc( ( 44 - 12 ) var( --remBase ) );
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#shopCost{
		padding-bottom : calc( 157 var( --remBase ) );
	}
	#shopCost h5{
		grid-template-columns : calc( 16 var( --percentBase ) ) 1fr;
		column-gap : calc( 17 var( --percentBase ) );
		font-size : 3rem;
	}
	#shopCost h5::before{
		height : calc( 16 var( --remBase ) );
	}
	#shopCost p{
		margin-top : calc( 44 var( --remBase ) );
		font-size : 1.6rem;
	}
}

/* --------------------------------------------
CONTACT
--------------------------------------------- */
#contact01 p{
	color : var( --blue );
	text-align : center;
	text-indent : .2em;
	letter-spacing : .2em;
}
#contact01 a{
	margin-inline : auto;
}
#contact01 .banner{
	display : block;
	margin-inline : auto;
}
#contact01 .banner img{
	width : 100%;
	height : auto;
}
@media screen and ( max-width : 750px ){
	#contact01{
		padding-bottom : calc( ( 110 - 12 ) var( --remBase ) );
	}
	#contact01 p{
		font-size : 3rem;
		line-height : calc( 50 / 30 );
	}
	#contact01 .banner{
		width : 100%;
		margin-top : calc( ( 45 - 10 ) var( --remBase ) );
	}
	#contact01 .banner + p{
		margin-top : calc( ( 57 - 10 ) var( --remBase ) );
	}
	#contact01 .link01{
		width : calc( 500 var( --percentBase ) );
		margin-top : calc( ( 59 - 10 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#contact01{
		padding-bottom : calc( ( 84 - 7 ) var( --remBase ) );
	}
	#contact01 p{
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#contact01 .banner{
		width : calc( 690 var( --percentBase ) );
		margin-top : calc( ( 29 - 7 ) var( --remBase ) );
	}
	#contact01 .banner + p{
		margin-top : calc( ( 76 - 7 ) var( --remBase ) );
	}
	#contact01 .link01{
		width : calc( 291 var( --percentBase ) );
		margin-top : calc( ( 35 - 7 ) var( --remBase ) );
	}
}
#contact02 > p{
	color : #666;
	text-align : center;
}
#contact02 dl{
	border-bottom-color : #3fc2cb;
	border-bottom-style : solid;
}
#contact02 dt label{
	font-family : "Noto Sans JP" , sans-serif;
	color : var( --blue );
	letter-spacing : .1em;
}
#contact02 dt label:not( .required ){
	display : block;
}
#contact02 dt label.required{
	display : grid;
	align-items : center;
	justify-content : start;
}
#contact02 dt label.required::after{
	display : flex;
	align-items : center;
	justify-content : center;
	color : white;
	text-align : center;
	text-indent : .2em;
	letter-spacing : .2em;
	content : "必須";
	background-color : var( --blue );
}
#contact02 input[type="text"] , #contact02 input[type="email"] , #contact02 input[type="tel"] , #contact02 textarea{
	width : 100%;
	padding-inline : .75em;
	font-family : "Noto Sans JP" , sans-serif;
	background-color : #eee;
}
#contact02 .checkboxies .wpcf7-form-control-wrap , #contact02 .checkboxies .wpcf7-checkbox , #contact02 .checkboxies .wpcf7-list-item{
	display : block;
}
#contact02 .checkboxies label span{
	position : relative;
	display : grid;
	grid-auto-flow : column;
	align-items : center;
	justify-content : start;
	cursor : pointer;
}
#contact02 .checkboxies label span::before{
	display : grid;
	flex-shrink : 0;
	place-items : center;
	font-size : 0;
	content : "";
}
#contact02 .checkboxies label input[type="checkbox"]{
	position : absolute;
	visibility : hidden;
	opacity : 0;
}
#contact02 .checkboxies .wpcf7-list-item-label{
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .2em;
}
#contact02 .checkboxies .wpcf7-list-item-label::before{
	background-color : #eee;
}
#contact02 .checkboxies input:checked + span::after{
	position : absolute;
	top : 50%;
	left : 0;
	font-weight : 700;
	color : var( --blue );
	text-align : center;
	content : "\2713";
	translate : 0 -50%;
}
#contact02 textarea{
	padding-block : .75em;
}
#contact02 .check .wpcf7-form-control-wrap , #contact02 .check .wpcf7-acceptance , #contact02 .check .wpcf7-list-item{
	display : block;
}
#contact02 .check label{
	display : block;
}
#contact02 .check label input{
	position : absolute;
	visibility : hidden;
	opacity : 0;
}
#contact02 .check .wpcf7-list-item-label{
	position : relative;
	display : block;
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .2em;
}
#contact02 .check .wpcf7-list-item-label::before{
	position : absolute;
	top : 0;
	left : 0;
	background-color : #eee;
}
#contact02 .check a{
	color : var( --blue );
}
#contact02 .check input:checked + span::after{
	position : absolute;
	top : 0;
	left : 0;
	font-weight : 700;
	color : var( --blue );
	text-align : center;
	content : "\2713";
}
#contact02 .wpcf7-not-valid-tip{
	font-family : "Noto Sans JP" , sans-serif;
	line-height : 1.4;
	letter-spacing : .1em;
}
#contact02 input[type="submit"]{
	display : grid;
	place-items : center;
	margin-inline : auto;
	color : white;
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	background-color : var( --blue );
	background-image : url( "../images/ui/arrow/right01.svg" );
	background-repeat : no-repeat;
}
@media screen and ( max-width : 750px ){
	#contact02{
		padding-bottom : calc( 186 var( --remBase ) );
	}
	#contact02 > p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
		text-align : center;
		text-indent : .2em;
		letter-spacing : .2em;
	}
	#contact02 > p + p{
		margin-top : calc( 50 var( --remBase ) );
	}
	#contact02 .wpcf7{
		margin-top : calc( ( 134 - 12 ) var( --remBase ) );
	}
	#contact02 dl{
		border-bottom-width : 1px;
	}
	#contact02 dt{
		padding-top : calc( 19 var( --remBase ) );
		border-top : solid 1px #3fc2cb;
	}
	#contact02 dt label{
		font-size : 2.6rem;
	}
	#contact02 dt label.required{
		grid-template-columns : auto calc( 60 var( --percentBase ) );
		column-gap : calc( 22 var( --percentBase ) );
	}
	#contact02 dt label.required::after{
		height : calc( 36 var( --remBase ) );
		font-size : 1.8rem;
	}
	#contact02 dd{
		padding-bottom : calc( 30 var( --remBase ) );
		margin-top : calc( 20 var( --remBase ) );
	}
	#contact02 input[type="text"] , #contact02 input[type="email"] , #contact02 input[type="tel"] , #contact02 textarea{
		font-size : 2.6rem;
		border-radius : calc( 5 var( --remBase ) );
	}
	#contact02 input[type="text"] , #contact02 input[type="email"] , #contact02 input[type="tel"]{
		height : calc( 72 var( --remBase ) );
	}
	#contact02 dd > div + div{
		margin-top : calc( 51 var( --remBase ) );
	}
	#contact02 .checkboxies{
		padding-top : calc( 16 var( --remBase ) );
	}
	#contact02 .checkboxies .wpcf7-list-item + .wpcf7-list-item{
		margin-top : calc( 37 var( --remBase ) );
	}
	#contact02 .checkboxies .wpcf7-list-item-label{
		grid-template-columns : calc( 33 var( --percentBase ) ) auto;
		column-gap : calc( 25 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#contact02 .checkboxies .wpcf7-list-item-label::before{
		height : calc( 33 var( --remBase ) );
		border-radius : calc( 5 var( --remBase ) );
	}
	#contact02 .checkboxies input:checked + span::after{
		width : calc( 33 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#contact02 textarea{
		height : calc( 368 var( --remBase ) );
	}
	#contact02 .check .wpcf7-form-control-wrap{
		padding-top : calc( 44 var( --remBase ) );
		padding-bottom : calc( ( 49 - 7 ) var( --remBase ) );
	}
	#contact02 .check .wpcf7-list-item-label{
		padding-left : calc( 50 var( --percentBase ) );
		font-size : 2.6rem;
		line-height : calc( 40 / 26 );
	}
	#contact02 .check .wpcf7-list-item-label::before{
		top : calc( 3.5 var( --remBase ) );
		width : calc( 33 var( --percentBase ) );
		height : calc( 33 var( --remBase ) );
		border-radius : calc( 5 var( --remBase ) );
	}
	#contact02 .check input:checked + span::after{
		width : calc( 33 var( --percentBase ) );
		font-size : 2.6rem;
	}
	#contact02 .wpcf7-not-valid-tip{
		font-size : 2.6rem;
	}
	#contact02 input[type="submit"]{
		width : calc( 500 var( --percentBase ) );
		height : calc( 80 var( --remBase ) );
		margin-top : calc( 49 var( --remBase ) );
		font-size : 2.6rem;
		background-position : right calc( 35 var( --remBase ) ) top 50%;
		background-size : auto calc( 13 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#contact02{
		padding-bottom : calc( 175 var( --remBase ) );
	}
	#contact02 > p{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
		text-align : center;
		text-indent : .2em;
		letter-spacing : .2em;
	}
	#contact02 > p + p{
		margin-top : calc( 30 var( --remBase ) );
	}
	#contact02 .wpcf7{
		margin-top : calc( ( 51 - 7 ) var( --remBase ) );
	}
	#contact02 dl{
		display : grid;
		grid-template-columns : calc( 380 var( --percentBase ) ) 1fr;
		border-bottom-width : 1px;
	}
	#contact02 dt , #contact02 dd{
		padding-top : calc( 19 var( --remBase ) );
		padding-bottom : calc( 18 var( --remBase ) );
		border-top : solid 1px #3fc2cb;
	}
	#contact02 dt{
		padding-inline : calc( 24 * 100% / 380 );
	}
	#contact02 dt label{
		font-size : 1.6rem;
	}
	#contact02 dt label:not( .required ){
		padding-block : calc( 13 var( --remBase ) );
	}
	#contact02 dt label.required{
		grid-template-columns : 1fr calc( 41 * 100% / 332 );
		padding-block : calc( 7 var( --remBase ) );
	}
	#contact02 dt label.required::after{
		height : calc( 28 var( --remBase ) );
		font-size : 1.2rem;
	}
	#contact02 dd{
		padding-right : calc( 30 * 100% / 620 );
	}
	#contact02 input[type="text"] , #contact02 input[type="email"] , #contact02 input[type="tel"] , #contact02 textarea{
		font-size : 1.6rem;
		border-radius : calc( 5 var( --remBase ) );
	}
	#contact02 input[type="text"] , #contact02 input[type="email"] , #contact02 input[type="tel"]{
		height : calc( 42 var( --remBase ) );
	}
	#contact02 dd > div + div{
		padding-bottom : calc( 10 var( --remBase ) );
		margin-top : calc( 18 var( --remBase ) );
	}
	#contact02 .checkboxies{
		padding-top : calc( 10 var( --remBase ) );
	}
	#contact02 .checkboxies .wpcf7-list-item + .wpcf7-list-item{
		margin-top : calc( 18 var( --remBase ) );
	}
	#contact02 .checkboxies .wpcf7-list-item-label{
		grid-template-columns : calc( 22 * 100% / 590 ) auto;
		column-gap : calc( 27 * 100% / 590 );
		font-size : 1.6rem;
	}
	#contact02 .checkboxies .wpcf7-list-item-label::before{
		height : calc( 22 var( --remBase ) );
		border-radius : calc( 5 var( --remBase ) );
	}
	#contact02 .checkboxies input:checked + span::after{
		width : calc( 22 * 100% / 590 );
		font-size : 1.6rem;
	}
	#contact02 textarea{
		height : calc( 158 var( --remBase ) );
	}
	#contact02 .check .wpcf7-form-control-wrap{
		padding-block : calc( 10 var( --remBase ) );
	}
	#contact02 .check .wpcf7-list-item-label{
		padding-left : calc( 45 * 100% / 590 );
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#contact02 .check .wpcf7-list-item-label span{
		font-size : 1.4rem;
		line-height : calc( 30 / 14 );
	}
	#contact02 .check .wpcf7-list-item-label::before{
		top : calc( 4 var( --remBase ) );
		width : calc( 22 * 100% / 590 );
		height : calc( 22 var( --remBase ) );
		border-radius : calc( 5 var( --remBase ) );
	}
	#contact02 .check input:checked + span::after{
		width : calc( 22 * 100% / 590 );
		font-size : 1.6rem;
	}
	#contact02 .wpcf7-not-valid-tip{
		font-size : 1.6rem;
	}
	#contact02 input[type="submit"]{
		width : calc( 291 var( --percentBase ) );
		height : calc( 60 var( --remBase ) );
		margin-top : calc( 37 var( --remBase ) );
		font-size : 2rem;
		background-position : right calc( 21 var( --remBase ) ) top 50%;
		background-size : auto calc( 6 var( --remBase ) );
	}
}
@media screen and ( max-width : 750px ){
	#thanks{
		padding-block : calc( 100 var( --remBase ) );
	}
	#thanks p{
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#thanks{
		padding-block : calc( 80 var( --remBase ) );
	}
	#thanks p{
		font-size : 1.6rem;
		line-height : 2.5;
	}
}

/* --------------------------------------------
LAW
--------------------------------------------- */
#lawLinks a{
	position : relative;
	display : grid;
	place-items : center;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
	border-color : currentColor;
	border-style : solid;
	transition : color var( --transitionBase ) , background var( --transitionBase );
}
#lawLinks a::after{
	position : absolute;
	display : block;
	clip-path : polygon( 0% 0% , 100% 0% , 50% 100% );
	content : "";
	background-color : currentColor;
	transition : background var( --transitionBase );
}
@media screen and ( max-width : 750px ){
	#lawLinks{
		padding-bottom : calc( 86 var( --remBase ) );
	}
	#lawLinks li + li{
		margin-top : calc( 32 var( --remBase ) );
	}
	#lawLinks a{
		height : calc( 110 var( --remBase ) );
		font-size : 3rem;
		border-width : 1px;
	}
	#lawLinks a::after{
		top : calc( 52 var( --remBase ) );
		right : calc( 35 * 100% / 668 );
		width : calc( 16 * 100% / 668 );
		height : calc( 12 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#lawLinks{
		display : grid;
		grid-template-rows : calc( 60 var( --remBase ) );
		grid-template-columns : repeat( 2 , calc( 361 var( --percentBase ) ) );
		column-gap : calc( 32 var( --percentBase ) );
		justify-content : center;
		padding-bottom : calc( 104 var( --remBase ) );
	}
	#lawLinks a{
		width : 100%;
		height : 100%;
		font-size : 1.6rem;
		border-width : 1px;
	}
	#lawLinks a::after{
		top : calc( 28 var( --remBase ) );
		right : calc( 8 * 100% / 359 );
		width : calc( 8 * 100% / 359 );
		height : calc( 7 var( --remBase ) );
	}
}
@media ( hover : hover ){
	#lawLinks a:hover{
		color : white;
		background-color : var( --blue );
	}
	#lawLinks a:hover::after{
		background-color : white;
	}
}
:where( #law , #privacy ) h1{
	font-weight : 400;
	color : var( --blue );
	text-align : center;
	text-indent : .1em;
	letter-spacing : .1em;
}
@media screen and ( max-width : 750px ){
	:where( #law , #privacy ) h1{
		font-size : 4rem;
	}
}
@media print , screen and ( min-width : 750.02px ){
	:where( #law , #privacy ) h1{
		font-size : 3rem;
	}
}
#law :where( dt,dd ){
	letter-spacing : .1em;
}
#law dl{
	border-bottom-color : #c8c8c8;
	border-bottom-style : solid;
}
#law dt{
	background-color : #f5f8f8;
	border-top-color : #c8c8c8;
	border-top-style : solid;
}
#law a:not( [href^="tel"] ){
	color : var( --blue );
}
@media screen and ( max-width : 750px ){
	#law{
		padding-bottom : calc( 222 var( --remBase ) );
	}
	#law dl{
		margin-top : calc( 74 var( --remBase ) );
		border-bottom-width : 1px;
	}
	#law :where( dt,dd ){
		padding-inline : calc( 24 var( --percentBase ) );
		font-size : 2.6rem;
		line-height : calc( 50 / 26 );
	}
	#law dt{
		padding-block : calc( ( 27 - 12 ) var( --remBase ) );
		border-top-width : 1px;
	}
	#law dd{
		padding-block : calc( ( 37 - 12 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#law{
		padding-bottom : calc( 106 var( --remBase ) );
	}
	#law dl{
		display : grid;
		grid-template-columns : calc( 278 var( --percentBase ) ) 1fr;
		margin-top : calc( 74 var( --remBase ) );
		border-bottom-width : 1px;
	}
	#law :where( dt,dd ){
		padding-block : calc( ( 32 - 7 ) var( --remBase ) );
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#law dt{
		padding-inline : calc( 23 * 100% / 278 );
		border-top-width : 1px;
	}
	#law dd{
		padding-inline : calc( 36 * 100% / 722 );
		border-top : solid 1px #c8c8c8;
	}
}
#privacy :where( p,h2,li li , h3 , dt ,dd ){
	font-family : "Noto Sans JP" , sans-serif;
	letter-spacing : .1em;
}
#privacy h2{
	font-weight : 400;
	color : var( --blue );
}
#privacy h3{
	font-weight : 400;
}
#privacy li li{
	display : grid;
	grid-template-columns : auto auto;
	align-items : start;
	justify-content : start;
	counter-increment : no;
}
#privacy li li::before{
	text-align : center;
	content : counter( no );
}
#privacy address{
	font-style : normal;
}
#privacy dd a{
	color : var( --blue );
}
@media screen and ( max-width : 750px ){
	#privacy{
		padding-bottom : calc( ( 142 - 11 ) var( --remBase ) );
	}
	#privacy :where( p,h2 ,li li , h3 , dt , dd ){
		font-size : 2.4rem;
		line-height : calc( 46 / 24 );
	}
	#privacy > p{
		margin-top : calc( ( 99 - 11 ) var( --remBase ) );
	}
	#privacy > ul{
		margin-top : calc( 92 var( --remBase ) );
	}
	#privacy > ul > li + li{
		margin-top : calc( 92 var( --remBase ) );
	}
	#privacy li li::before{
		margin-inline : .5em;
	}
	#privacy dl{
		margin-top : calc( 46 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 750.02px ){
	#privacy{
		padding-bottom : calc( ( 138 - 8 ) var( --remBase ) );
	}
	#privacy :where( p,li li , h3 , dt , dd ){
		font-size : 1.4rem;
		line-height : calc( 30 / 14 );
	}
	#privacy > p{
		margin-top : calc( ( 114 - 7 ) var( --remBase ) );
	}
	#privacy > ul{
		margin-top : calc( 60 var( --remBase ) );
	}
	#privacy > ul > li + li{
		margin-top : calc( 60 var( --remBase ) );
	}
	#privacy h2{
		font-size : 1.6rem;
		line-height : calc( 30 / 16 );
	}
	#privacy li li::before{
		width : 1em;
		margin-left : 1em;
		margin-right : .5em;
	}
	#privacy dl{
		margin-top : calc( 30 var( --remBase ) );
	}
}

/* --------------------------------------------
LONG
--------------------------------------------- */
picture#long img{
	width : 100%;
	height : auto;
}
@media print , screen and ( min-width : 750.02px ){
	picture#long{
		max-width : 1400px;
		margin-inline : auto;
	}
}