@charset "UTF-8";

/* --------------------------------------------
TITLES
--------------------------------------------- */
.title01{
	font-weight : 700;
	color : #5c5754;
	text-align : center;
    font-family: var(--fontFamilyMal);
}
.title01::after{
	display : block;
	margin-inline : auto;
	font-size : 0;
	content : "";
	background : url( "../images/ui/parts/dotted01.svg" ) var( --bgContain );
}
.title01.pink::after{
	filter : invert( 79% ) sepia( 17% ) saturate( 433% ) hue-rotate( 309deg ) brightness( 102% ) contrast( 91% );
}
.title01.orange::after{
	filter : invert( 88% ) sepia( 21% ) saturate( 1642% ) hue-rotate( 332deg ) brightness( 102% ) contrast( 86% );
}
.title01.green::after{
	filter : invert( 83% ) sepia( 29% ) saturate( 727% ) hue-rotate( 22deg ) brightness( 95% ) contrast( 94% );
}
.title01.mint::after{
	filter : invert( 75% ) sepia( 25% ) saturate( 165% ) hue-rotate( 115deg ) brightness( 100% ) contrast( 91% );
}
.title01.sakura::after{
	filter : invert( 88% ) sepia( 9% ) saturate( 1302% ) hue-rotate( 328deg ) brightness( 97% ) contrast( 102% );
}
.title01.grape::after{
	filter : invert( 88% ) sepia( 14% ) saturate( 413% ) hue-rotate( 218deg ) brightness( 91% ) contrast( 95% );
}
.title01.lemon::after{
	filter : invert( 89% ) sepia( 32% ) saturate( 506% ) hue-rotate( 354deg ) brightness( 104% ) contrast( 103% );
}
@media screen and ( max-width : 750px ){
	.title01{
		font-size : calc( 45 var( --remBase ) );
	}
	.title01::after{
		width : calc( 311 var( --percentBase02 ) );
		height : calc( 10 var( --remBase ) );
		margin-top : calc( 26 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.title01{
		font-size : calc( 45 var( --remBase ) );
	}
	.title01::after{
		width : calc( 311 var( --percentBase02 ) );
		height : calc( 10 var( --remBase ) );
		margin-top : calc( 26 var( --remBase ) );
	}
}

/* --------------------------------------------
LEDE
--------------------------------------------- */
.lede01{
	font-weight : 500;
	color : #535251;
}
.lede01.center{
	text-align : center;
}
@media screen and ( max-width : 750px ){
	.lede01{
		font-size : calc( 26 var( --remBase ) );
		line-height : calc( 40 / 26 );
	}
	.lede01.center-sp{
		text-align : center;
	}
}
@media print , screen and ( min-width : 751px ){
	.lede01{
		padding-inline : calc( 162 var( --percentBase02 ) );
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.5;
	}
	.lede01.center-pc{
		text-align : center;
	}
}
@media screen and ( max-width : 750px ){
	.title01 + .lede01{
		margin-top : calc( ( 38 - 5 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.title01 + .lede01{
		margin-top : calc( ( 34 - 5 ) var( --remBase ) );
	}
}

/* --------------------------------------------
LAYOUT PATTERN
--------------------------------------------- */
.layout01 picture{
	width : 100%;
	overflow : hidden;
}
.layout01 p{
	font-weight : 500;
	color : #535251;
}
.layout01 a{
	display : grid;
	place-items : center;
	color : #5c5754;
	-webkit-text-decoration : underline;
	text-decoration : underline;
	background-color : #edbc45;
	transition : opacity var( --transitionBase );
}
.layout01 a:hover{
	opacity : .8;
}
.layout01 a{
	font-weight : 700;
}
@media screen and ( max-width : 750px ){
	.layout01 p{
		margin-top : calc( ( 42 - 7 ) var( --remBase ) );
		font-size : calc( 26 var( --remBase ) );
		line-height : calc( 40 / 26 );
	}
	.layout01 a{
		width : calc( 240 var( --percentBase ) );
		height : calc( 70 var( --remBase ) );
		margin-inline : auto;
		margin-top : calc( ( 21 - 7 ) var( --remBase ) );
		font-size : calc( 30 var( --remBase ) );
		border-radius : calc( 6 var( --remBase ) );
	}
	.layout01 picture{
		margin-top : calc( 35 var( --remBase ) );
		border-radius : calc( 20 var( --remBase ) );
	}
	.layout01 picture img{
		width : 100%;
		height : auto;
	}
}
@media print , screen and ( min-width : 751px ){
	.layout01{
		display : grid;
		align-items : start;
		justify-content : space-between;
	}
	.layout01 picture{
		grid-row : 1;
		height : calc( 400 var( --remBase ) );
		border-radius : calc( 20 var( --remBase ) );
	}
	.layout01 picture img{
		width : 100%;
		height : 100%;
		object-fit : cover;
	}
	.layout01 .contents{
		grid-row : 1;
		padding-top : calc( 30 var( --remBase ) );
	}
	.layout01 .title01{
		text-align : left;
	}
	.layout01 .title01::after{
		margin-inline : 0;
	}
	.layout01 p{
		margin-top : calc( ( 42 - 8 ) var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.8;
	}
	.layout01 a{
		width : calc( 162 * 100% / 696 );
		height : calc( 42 var( --remBase ) );
		margin-top : calc( ( 21 - 8 ) var( --remBase ) );
		margin-left : calc( 10 * 100% / 696 );
		font-size : calc( 20 var( --remBase ) );
		border-radius : calc( 6 var( --remBase ) );
	}
	.layout01.layout0101{
		grid-template-columns : calc( 400 var( --percentBase02 ) ) calc( 696 var( --percentBase02 ) );
		column-gap : calc( 30 var( --percentBase02 ) );
		justify-content : start;
	}
	.layout01.layout0101 picture{
		grid-column : 1;
	}
	.layout01.layout0101 .contents{
		grid-column : 2;
	}
	.layout01.layout0102{
		grid-template-columns : calc( 696 var( --percentBase02 ) ) calc( 400 var( --percentBase02 ) );
		column-gap : calc( 30 var( --percentBase02 ) );
		justify-content : end;
	}
	.layout01.layout0102 .contents{
		grid-column : 1;
	}
	.layout01.layout0102 picture{
		grid-column : 2;
	}
}
.layout02 picture{
	width : 100%;
	overflow : hidden;
}
.layout02 :where( h3,h4 ){
	font-weight : 700;
	color : #5c5754;
}
.layout02 p{
	font-weight : 500;
	color : #535251;
}
@media screen and ( max-width : 750px ){
	.layout02 :where( h3,h4 ){
		font-size : calc( 34 var( --remBase ) );
		line-height : calc( 44 / 34 );
	}
	.layout02 p{
		margin-top : calc( ( 33 - 5 - 7 ) var( --remBase ) );
		font-size : calc( 26 var( --remBase ) );
		line-height : calc( 40 / 26 );
	}
	.layout02 picture{
		width : calc( 418 var( --percentBase02 ) );
		margin-top : calc( ( 46 - 7 ) var( --remBase ) );
		margin-left : auto;
	}
	.layout02 picture img{
		width : 100%;
		height : auto;
	}
}
@media print , screen and ( min-width : 751px ){
	.layout02{
		display : grid;
		align-items : start;
	}
	.layout02 :where( h3,h4 ){
		font-size : calc( 34 var( --remBase ) );
		line-height : calc( 44 / 34 );
	}
	.layout02 p{
		margin-top : calc( ( 29 - 5 - 8 ) var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.8;
	}
	.layout02 picture{
		height : calc( 325 var( --remBase ) );
		margin-top : calc( 5 var( --remBase ) );
		border-radius : calc( 20 var( --remBase ) );
	}
	.layout02 picture img{
		width : 100%;
		height : 100%;
		object-fit : cover;
	}
	.layout02.layout0201{
		grid-template-columns : calc( 696 var( --percentBase02 ) ) calc( 400 var( --percentBase02 ) );
		column-gap : calc( 30 var( --percentBase02 ) );
		justify-content : end;
	}
}
@media screen and ( max-width : 750px ){
	.title01 + .layout02{
		margin-top : calc( ( 35 - 5 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.title01 + .layout02{
		margin-top : calc( ( 77 - 5 ) var( --remBase ) );
	}
}
.layout03 p , .layout03 li{
	font-weight : 500;
	color : #535251;
}
.layout03 ul{
    margin-left: 2em;
}
    .layout03 ul li{
        list-style: disc;
    }
@media screen and ( max-width : 750px ){
	.layout03 p , .layout03 li{
		font-size : calc( 26 var( --remBase ) );
		line-height : calc( 40 / 26 );
	}
	.layout03 picture{
		margin-top : calc( ( 66 - 7 ) var( --remBase ) );
	}
	.layout03 picture img{
		width : 100%;
		height : auto;
	}
}
@media print , screen and ( min-width : 751px ){
	.layout03{
		display : grid;
		grid-template-columns : calc( 760 var( --percentBase02 ) ) calc( 380 var( --percentBase02 ) );
		grid-auto-flow : column;
		align-items : center;
		justify-content : space-between;
	}
	.layout03 p , .layout03 li{
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.8;
	}
	.layout03 picture{
		height : calc( 272 var( --remBase ) );
	}
	.layout03 picture img{
		width : 100%;
		height : 100%;
		object-fit : cover;
	}
}

/* --------------------------------------------
SWIPER
--------------------------------------------- */
.swiper01-sp picture{
	overflow : hidden;
}
.swiper01-sp picture img{
	width : 100%;
	height : 100%;
	object-fit : cover;
}
.swiper01-sp .swiper-slide p{
	font-weight : 700;
}
@media screen and ( max-width : 750px ){
	.swiper01-sp .swiper-wrapper{
		align-items : stretch ! important;
	}
	.swiper01-sp .swiper-slide{
		width : calc( 450 * 100% / 750 );
		height : auto;
		margin-inline : calc( 22 * 100% / 750 );
	}
	.swiper01-sp picture{
		height : calc( 300 var( --remBase ) );
		border-radius : calc( 6 var( --remBase ) );
	}
	.swiper01-sp .swiper-slide p{
		margin-top : calc( ( 9 - 3 ) var( --remBase ) );
		font-size : calc( 24 var( --remBase ) );
		line-height : 1.25;
	}
	.swiper01-sp .swiper-button-prev , .swiper01-sp .swiper-button-next{
		top : calc( 128.5 var( --remBase ) );
		width : calc( 43 var( --percentBase02 ) );
		margin : 0;
		font-size : 0;
	}
	.swiper01-sp .swiper-button-prev img , .swiper01-sp .swiper-button-next img{
		height : calc( 43 var( --remBase ) );
	}
	.swiper01-sp .swiper-button-prev{
		left : calc( 10 * 100% / 750 );
	}
	.swiper01-sp .swiper-button-next{
		right : calc( 10 * 100% / 750 );
	}
}
@media print , screen and ( min-width : 751px ){
	.swiper01-sp .swiper-wrapper{
		flex-wrap : wrap;
		row-gap : calc( ( 19 - 5 ) var( --remBase ) );
		column-gap : calc( 20 var( --percentBase02 ) );
	}
	.swiper01-sp .swiper-slide{
		width : calc( 380 var( --percentBase02 ) );
	}
	.swiper01-sp picture{
		height : calc( 254 var( --remBase ) );
		border-radius : calc( 6 var( --remBase ) );
	}
	.swiper01-sp .swiper-slide p{
		margin-top : calc( ( 17 - 5 ) var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.5;
	}
	.swiper01-sp .swiper-button-prev , .swiper01-sp .swiper-button-next{
		display : none;
	}
}

/* --------------------------------------------
LISTS
--------------------------------------------- */
.pics01{
	display : grid;
	align-items : start;
}
.pics01 picture{
	width : 100%;
	overflow : hidden;
}
.pics01 picture img{
	width : 100%;
	height : 100%;
	object-fit : cover;
}
.pics01 p{
	font-weight : 700;
	line-height : 1.2;
	color : #535251;
}
@media screen and ( max-width : 750px ){
	.pics01{
		grid-template-columns : repeat( 2 , calc( 335 var( --percentBase02 ) ) );
		row-gap : calc( ( 26 - 1 ) var( --remBase ) );
		justify-content : space-between;
	}
	.pics01 picture{
		height : calc( 224 var( --remBase ) );
		border-radius : calc( 6 var( --remBase ) );
	}
	.pics01 p{
		margin-top : calc( ( 11 - 2.8 ) var( --remBase ) );
		font-size : calc( 28 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.pics01{
		grid-template-columns : repeat( 4 , calc( 280 var( --percentBase02 ) ) );
		row-gap : calc( ( 34 - 2 ) var( --remBase ) );
		column-gap : calc( 20 var( --percentBase02 ) );
	}
	.pics01 picture{
		height : calc( 187 var( --remBase ) );
		border-radius : calc( 6 var( --remBase ) );
	}
	.pics01 p{
		margin-top : calc( ( 12 - 2 ) var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
	}
}
@media screen and ( max-width : 750px ){
	.lede01 + .pics01{
		margin-top : calc( ( ( 48 - 7 ) ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.lede01 + .pics01{
		margin-top : calc( ( ( 39 - 5 ) ) var( --remBase ) );
	}
}
.files01{
	display : flex;
	flex-wrap : wrap;
}
.files01 a{
	display : grid;
	grid-auto-flow : column;
	align-items : start;
	justify-content : start;
	font-weight : 700;
	line-height : 1.2;
	color : #3b2619;
	-webkit-text-decoration : underline;
	text-decoration : underline;
	text-underline-offset : .2em;
	transition : opacity var( --transitionBase );
}
.files01 a:hover{
	opacity : .8;
}
.files01 a::before{
	display : block;
	font-size : 0;
	content : "";
	background-repeat : no-repeat;
	background-position : 0 0;
	background-size : contain;
}
.files01.files0101 a::before{
	background-image : url( "../images/ui/parts/star01.svg" );
}
.files01.files0102 a::before{
	background-image : url( "../images/ui/parts/star02.svg" );
}
@media screen and ( max-width : 750px ){
	.files01{
		row-gap : calc( ( 32 - 3 - 3 ) var( --remBase ) );
		column-gap : calc( 30 var( --percentBase02 ) );
	}
	.files01 li{
		min-width : calc( 50% - ( 30 var( --remBase ) ) );
	}
	.files01 a{
		grid-template-columns : calc( 22 var( --remBase ) ) auto;
		column-gap : calc( 12 var( --remBase ) );
		font-size : calc( 30 var( --remBase ) );
	}
	.files01 a::before{
		height : calc( 25 var( --remBase ) );
		margin-top : calc( 5.5 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.files01{
		row-gap : calc( ( 39 - 2 - 2 ) var( --remBase ) );
		column-gap : calc( 24 var( --percentBase02 ) );
	}
	.files01 li{
		min-width : calc( 25% - ( 24 var( --remBase ) ) );
	}
	.files01 a{
		grid-template-columns : calc( 13 var( --remBase ) ) auto;
		column-gap : calc( 7 var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
	}
	.files01 a::before{
		height : calc( 15 var( --remBase ) );
		margin-top : calc( 4.5 var( --remBase ) );
	}
}

/* --------------------------------------------
DATALIST
--------------------------------------------- */
.datalist01 > dt{
	display : grid;
	align-items : start;
	justify-content : start;
	font-weight : 700;
	color : #3b2619;
}
.datalist01 > dt::before{
	display : block;
	font-size : 0;
	content : "";
	background : url( "../images/ui/parts/star01.svg" ) var( --bgContain );
}
.datalist01 > dd{
	font-weight : 500;
	color : #535251;
}
.datalist01 dl dt , .datalist01 dl dd{
	display : inline;
}
@media screen and ( max-width : 750px ){
	.datalist01 > dt{
		grid-template-columns : calc( 22 var( --percentBase02 ) ) 1fr;
		column-gap : calc( 12 var( --percentBase ) );
		font-size : calc( 30 var( --remBase ) );
		line-height : 1.2;
	}
	.datalist01 > dt::before{
		height : calc( 21 var( --remBase ) );
		margin-top : calc( 7.5 var( --remBase ) );
	}
	.datalist01 > dd{
		padding-bottom : calc( ( 39 - 7 ) var( --remBase ) );
		margin-top : calc( ( 20 - 3 - 7 ) var( --remBase ) );
		font-size : calc( 26 var( --remBase ) );
		line-height : calc( 40 / 26 );
		border-bottom : solid calc( 2 var( --remBase ) ) var( --border01 );
	}
	.datalist01 > dt:not( :first-of-type ){
		margin-top : calc( ( 42 - 3 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.datalist01{
		display : grid;
		grid-template-columns : calc( 200 var( --percentBase02 ) ) 1fr;
		justify-content : start;
	}
	.datalist01 > dt , .datalist01 > dd{
		padding-top : calc( 15 var( --remBase ) );
		padding-bottom : calc( 15 var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.8;
		border-bottom-color : var( --border01 );
		border-bottom-style : solid;
		border-bottom-width : 1px;
	}
	.datalist01 > dt:not( :first-of-type ) , .datalist01 > dd:not( :first-of-type ){
	}
	.datalist01 > dt{
		grid-template-columns : calc( 19 * 100% / 194 ) 1fr;
		column-gap : calc( 2 calc( 19 * 100% / 194 ) );
		padding-left : calc( 6 * 100% / 200 );
	}
	.datalist01 > dt::before{
		height : calc( 21 var( --remBase ) );
		margin-top : calc( 8 var( --remBase ) );
	}
}
@media screen and ( max-width : 750px ){
	.title01 + .datalist01{
		margin-top : calc( ( 52 - 3 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.title01 + .datalist01{
		margin-top : calc( ( 52 - 8 ) var( --remBase ) );
	}
}

/* --------------------------------------------
MEMO
--------------------------------------------- */
.memo01{
	font-weight : 500;
	color : #535251;
}
@media screen and ( max-width : 750px ){
	.memo01{
		font-size : calc( 26 var( --remBase ) );
		line-height : calc( 40 / 26 );
	}
}
@media print , screen and ( min-width : 751px ){
	.memo01{
		padding-left : 1em;
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.8;
	}
}
@media screen and ( max-width : 750px ){
	.datalist01 + .memo01{
		margin-top : calc( ( 34 - 7 ) var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	.datalist01 + .memo01{
		margin-top : calc( ( 25 - 8 ) var( --remBase ) );
	}
}

/* --------------------------------------------
PASSWORD FORM
--------------------------------------------- */
#passwordForm > p{
	font-weight : 700;
	color : #5c5754;
	text-align : center;
}
#passwordForm input[type="password"]{
	display : block;
	padding-inline : .75em;
	margin-inline : auto;
	background-color : #fff;
	border-color : #d1cccc;
	border-style : solid;
}
#passwordForm input[type="submit"]{
	display : grid;
	place-items : center;
	margin-inline : auto;
	font-weight : 700;
	color : #3b2619;
	background-color : var( --siteYellow );
	border-radius : 100dvh;
	transition : opacity var( --transitionBase );
}
#passwordForm input[type="submit"]:hover{
	opacity : .8;
}
@media screen and ( max-width : 750px ){
	#passwordForm{
		padding-top : calc( ( 92 - 3 ) var( --remBase ) );
		padding-bottom : calc( 131 var( --remBase ) );
	}
	#passwordForm > p{
		font-size : calc( 30 var( --remBase ) );
		line-height : 1.2;
	}
	#passwordForm form{
		margin-top : calc( ( 31 - 3 ) var( --remBase ) );
	}
	#passwordForm input[type="password"]{
		width : 100%;
		height : calc( 87 var( --remBase ) );
		font-size : calc( 30 var( --remBase ) );
		border-width : calc( 2 var( --remBase ) );
	}
	#passwordForm input[type="submit"]{
		width : calc( 433 var( --percentBase02 ) );
		height : calc( 96 var( --remBase ) );
		margin-top : calc( 50 var( --remBase ) );
		font-size : calc( 30 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	#passwordForm{
		padding-top : calc( ( 77 - 8 ) var( --remBase ) );
		padding-bottom : calc( 131 var( --remBase ) );
	}
	#passwordForm > p{
		font-size : calc( 24 var( --remBase ) );
		line-height : calc( 40 / 24 );
	}
	#passwordForm form{
		margin-top : calc( ( 45 - 8 ) var( --remBase ) );
	}
	#passwordForm input[type="password"]{
		width : calc( 600 var( --percentBase02 ) );
		height : calc( 60 var( --remBase ) );
		font-size : calc( 24 var( --remBase ) );
		border-width : 1px;
	}
	#passwordForm input[type="submit"]{
		width : calc( 350 var( --percentBase02 ) );
		height : calc( 80 var( --remBase ) );
		margin-top : calc( 68 var( --remBase ) );
		font-size : calc( 22 var( --remBase ) );
	}
}

/* --------------------------------------------
BREAD CRUMBS
--------------------------------------------- */
#breadcrumbs{
	display : flex;
	flex-wrap : wrap;
	background-color : #f1ebdd;
}
#breadcrumbs li{
	display : flex;
	align-items : center;
}
#breadcrumbs li:not( :last-child )::after{
	white-space : pre;
	content : "　／　";
}
#breadcrumbs li , #breadcrumbs a{
	color : #535251;
}
@media screen and ( max-width : 750px ){
	#breadcrumbs{
		padding-block : calc( ( 28 - 2.4 ) var( --remBase ) );
	}
	#breadcrumbs li , #breadcrumbs a{
		font-size : calc( 24 var( --remBase ) );
		line-height : 1.2;
	}
}
@media print , screen and ( min-width : 751px ){
	#breadcrumbs{
		padding-block : calc( ( 20 - 5 ) var( --remBase ) );
	}
	#breadcrumbs li , #breadcrumbs a{
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.5;
	}
}

/* --------------------------------------------
FOOTER
--------------------------------------------- */
#footer{
	position : relative;
}
#footer > a{
	position : absolute;
	z-index : 1;
	display : block;
}
@media screen and ( max-width : 750px ){
	#footer > a{
		bottom : calc( 59 var( --remBase ) );
		right : calc( 27 * 100% / 750 );
		width : calc( 58 * 100% / 750 );
	}
	#footer > a img{
		height : calc( 76 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	#footer > a{
		left : calc( 50% + ( 492 var( --remBase ) ) );
		width : fit-content;
		padding-block : calc( ( 20 - 5 ) var( --remBase ) );
		translate : 0 -100%;
	}
	#footer > a span{
		font-size : calc( 20 var( --remBase ) );
		line-height : 1.5;
		color : #535251;
	}
}

/* --------------------------------------------
FOOTER MENU
--------------------------------------------- */
@media print , screen and ( min-width : 751px ){
	#footerMenus{
		display : grid;
		grid-template-columns : calc( 10 var( --percentBase ) ) calc( 280 var( --percentBase ) ) calc( 110 var( --percentBase ) ) 1fr;
		align-items : start;
		padding-bottom : calc( ( 34 - 1.8 ) var( --remBase ) );
		background-color : #d9d0b8;
	}
}
@media print , screen and ( min-width : 751px ){
	#footerMe{
		grid-row : 1;
		grid-column : 2;
	}
	#footerMe a:first-of-type{
		transition : opacity var( --transitionBase );
	}
	#footerMe a:first-of-type:hover{
		opacity : .8;
	}
	#footerMe a:first-of-type img{
		height : calc( 226 var( --remBase ) );
	}
	#footerMe p{
		display : grid;
		grid-template-columns : calc( 25 * 100% / 276 ) auto;
		grid-auto-flow : column;
		column-gap : calc( 7 * 100% / 276 );
		align-items : center;
		justify-content : start;
		padding-left : calc( 4 * 100% / 280 );
		margin-top : calc( ( 16 - 1.6 ) var( --remBase ) );
		font-size : calc( 16 var( --remBase ) );
		font-weight : 500;
		line-height : 1.2;
		letter-spacing : .1em;
	}
	#footerMe p::before{
		display : block;
		height : calc( 37 var( --remBase ) );
		margin-top : calc( 4 var( --remBase ) );
		font-size : 0;
		content : "";
		background : url( "../images/ui/icon/mappin.svg" ) var( --bgContain );
		filter : var( --toWhite );
		filter : invert( 87% ) sepia( 48% ) saturate( 2904% ) hue-rotate( 325deg ) brightness( 102% ) contrast( 86% );
	}
	#footerMe a:nth-of-type( 2 ){
		display : grid;
		grid-template-columns : calc( 24 * 100% / 275 ) auto;
		grid-auto-flow : column;
		column-gap : calc( 7 * 100% / 275 );
		align-items : center;
		justify-content : start;
		margin-top : calc( ( 23 - 1.6 ) var( --remBase ) );
		margin-left : calc( 5 * 100% / 280 );
		font-size : calc( 24 var( --remBase ) );
		font-weight : 500;
		letter-spacing : .1em;
		transition : opacity var( --transitionBase );
	}
	#footerMe a:nth-of-type( 2 ):hover{
		opacity : .8;
	}
	#footerMe a:nth-of-type( 2 )::before{
		display : block;
		height : calc( 28 var( --remBase ) );
		font-size : 0;
		content : "";
		background : url( "../images/ui/icon/tel01.svg" ) var( --bgContain );
		filter : invert( 87% ) sepia( 48% ) saturate( 2904% ) hue-rotate( 325deg ) brightness( 102% ) contrast( 86% );
	}
	#footerMe a:nth-of-type( 3 ){
		display : grid;
		grid-template-columns : calc( 30 * 100% / 280 ) auto;
		column-gap : calc( 8 * 100% / 280 );
		align-items : center;
		justify-content : center;
		width : 100%;
		height : calc( 40 var( --remBase ) );
		margin-top : calc( 26 var( --remBase ) );
		font-size : calc( 18 var( --remBase ) );
		font-weight : 500;
		letter-spacing : .1em;
		background-color : var( --siteYellow );
		border-radius : 100dvh;
		transition : opacity var( --transitionBase );
	}
	#footerMe a:nth-of-type( 3 ):hover{
		opacity : .8;
	}
	#footerMe a:nth-of-type( 3 )::before{
		display : block;
		height : calc( 25 var( --remBase ) );
		font-size : 0;
		content : "";
		background : url( "../images/ui/icon/email.svg" ) var( --bgContain );
	}
}
@media print , screen and ( min-width : 751px ){
	#footerMenu{
		display : grid;
		grid-template-columns : calc( 300 * 100% / 800 ) calc( 300 * 100% / 800 ) calc( 200 * 100% / 800 );
		grid-row : 1;
		grid-column : 4;
		padding-top : calc( ( 46 - 1.8 ) var( --remBase ) );
	}
	#footerMenu li:not( .guardians ) a{
		text-decoration-line : underline;
		text-decoration-color : transparent;
		transition : text-decoration var( --transitionBase );
	}
	#footerMenu li:not( .guardians ) a:hover{
		text-decoration-color : currentColor;
	}
	#footerMenu > ul > li:not( .guardians ) + li{
		margin-top : calc( ( 19 - 1.8 - 1.8 ) var( --remBase ) );
	}
	#footerMenu > ul > li:not( .guardians ) > a , #footerMenu > ul > li:not( .guardians ) > span{
		display : grid;
		grid-template-columns : calc( 13 var( --remBase ) ) auto;
		grid-auto-flow : column;
		column-gap : calc( 10 var( --remBase ) );
		align-items : center;
		justify-content : start;
		width : fit-content;
		font-size : calc( 18 var( --remBase ) );
		font-weight : 500;
		line-height : 1.2;
		letter-spacing : .1em;
	}
	#footerMenu > ul > li:not( .guardians ) > a::before , #footerMenu > ul > li:not( .guardians ) > span::before{
		display : block;
		height : calc( 15 var( --remBase ) );
		font-size : 0;
		content : "";
		background : url( "../images/ui/parts/star01.svg" ) var( --bgContain );
	}
	#footerMenu ul ul{
		padding-left : calc( 22 var( --remBase ) );
		margin-top : calc( ( 19 - 1.8 - 1.8 ) var( --remBase ) );
	}
	#footerMenu ul ul li + li{
		margin-top : calc( ( 13 - 1.8 - 1.8 ) var( --remBase ) );
	}
	#footerMenu ul ul a{
		display : grid;
		grid-template-columns : 1em auto;
		align-items : start;
		justify-content : start;
		font-size : calc( 18 var( --remBase ) );
		font-weight : 500;
		line-height : 1.2;
		letter-spacing : .1em;
	}
	#footerMenu ul ul a::before{
		content : "- ";
	}
	#footerMenu .guardians{
		display : grid;
		place-items : center;
		width : 100%;
		height : calc( 50 var( --remBase ) );
		margin-top : calc( ( 22 - 1.8 ) var( --remBase ) );
		font-size : calc( 16 var( --remBase ) );
		font-weight : 500;
		color : var( --siteBrown );
		background-color : var( --siteYellow );
		border-radius : calc( 6 var( --remBase ) );
		transition : opacity var( --transitionBase );
	}
	#footerMenu .guardians:hover{
		opacity : .8;
	}
}

/* --------------------------------------------
COPYRIGHT
--------------------------------------------- */
#copyright{
	font-weight : 700;
	line-height : 1.2;
	color : #fff;
	letter-spacing : .1em;
	background-color : var( --body );
}
@media screen and ( max-width : 750px ){
	#copyright{
		padding-block : calc( ( 87 - 2 ) var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
	}
}
@media print , screen and ( min-width : 751px ){
	#copyright{
		padding-block : calc( ( 27 - 2 ) var( --remBase ) );
		font-size : calc( 20 var( --remBase ) );
	}
}