@charset "utf-8";

/*
@font-face{
	font-family:"NotoSansSubset";
	font-display:swap;
	src:url("NotoSansJP-Regular-Subset.woff2") format("woff2");
}
*/

:root{
	--color-black:#211716;
	--color-gray:#f4f5f7;
	--color-gray2:#fcf9f4;
	--color-gray3:#dddddd;
	--color-white:#ffffff;
	--color-main:#1db800;
	--color-main-dark:#2e7d32;
	--color-main-light:#e6f3e3;
	--color-attention:#ff0000;

	--color-text:var(--color-black);
	--color-placeholder:#666666;

	--contentWidth:min(1200px,90vw);
	--contentWidthRate:90%;
	--contentPadding:calc((100% - var(--contentWidthRate)) * 0.5);

	--searchBoxHeight:45px;

	--hoverOpacity:0.8;
	--hoverDuration:0.1s;
}

*{
	margin:0;
	padding:0;
}
body *,body *::before,body *::after{
	box-sizing:border-box;
}
html{
	overflow-y:unset;
	height:unset;
}
body{
	color:var(--color-text);
	font-size:16px;
	line-height:1.65;
	font-family:"Hiragino Kaku Gothic ProN", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Sans", sans-serif !important;
	text-align:unset;
	-webkit-text-size-adjust:unset;
	background-color:var(--color-white);
	height:unset;
	word-wrap:unset;
	overflow-x:clip;
}
body #wrapper{
	display:contents;
	background:none;
	min-height:0;
}
body header,
body #header-inner,
body footer,
body #footer-inner{
	display:contents;
	margin:0;
	padding:0;
	background:none;
	width:auto;
	position:static;
}
body #header-inner{
	display:none!important;
}

a{
	--color:var(--color-main-dark);
	--text-decoration:underline;
}
a,a:link,a:visited,a:hover,a:active{
	color:var(--color);
	text-decoration:var(--text-decoration);
	text-underline-offset:0.2em;
}
a{
	transition:opacity var(--hoverDuration) ease-out;
}
a:hover{
	opacity:var(--hoverOpacity);
}
img{
	width:auto;
	height:auto;
	max-width:100%;
	border:none;
}
a:hover img{
	opacity:1;
	filter:none;
	-ms-filter:none;
	-moz-opacity:1;
}
section{
	margin:0;
	padding:0;
}

body #contents{
	width:var(--contentWidth);
	margin:40px auto;
	padding:0;
	overflow:revert;
	display:flex;
	align-items:flex-start;
	gap:5%;
	position:relative;
}
body:has(.isTop) #contents{
	margin-top:0;
}
body #contents > article{
	display:contents;
}
body #main-column{
	width:100%;
	float:none;
	margin:0;
	padding:0;
	order:2;
}
body #main-column .news h2::before{
	content:"";
}
body #sub-column{
	width:260px;
	float:none;
	margin:0;
	padding:0;
	flex-shrink:0;
	order:1;
	left:auto;
	right:auto;
	top:auto;
	bottom:auto;
}
body #sub-column .freeArea2{
	margin-bottom:0;
}
body #sub-column .freeArea2 .free-contents{
	font-size:inherit;
	padding:0;
}
body .w100 .freeArea2:has(.isTop){
	margin-bottom:0;
	padding-bottom:0;
}
body img[width="1"][height="1"]{
	display:none!important;
}
@media (width>1100px){
	body #itemDetail-cont .itemThumb-wrap{
		width:48%;
		margin-right:4%;
	}
	body #itemDetail-cont .itemOutline{
		width:48%;
	}
}
@media (width<=768px){
	body #sub-column:not([data-ready]){
		display:none!important;
	}
}

body:has(.footerGuide) .footer_area{
	display:none;
}
body .header_area{
	margin:0;
}



.content{
	width:var(--contentWidth);
	margin-left:auto;
	margin-right:auto;
}

.fullwidth{
	width:100svw;
	position:relative;
	left:calc(50% - 50svw);
}

@media (width<=768px){
	.forWide{display:none!important}
}
@media (width>768px){
	.forMobile{display:none!important}
}

.accordionSwitch{
	cursor:pointer;
}
.accordionSwitch input{
	display:none !important;
}
.accordion{
	display:grid;
	grid-template-rows:0fr;
	transition:grid-template-rows 0.4s ease-out;
}
.accordionSwitch:has(input:checked) ~ .accordion,
.accordionSwitch.active ~ .accordion{
	grid-template-rows:1fr;
}
.accordionContent{
	overflow:hidden;
}



:where(.scroller){
	position:relative;
}
:where(.scrollerViewport){
	-ms-overflow-style:none;
	scrollbar-width:none;
	overflow-y:auto;
	user-select:none;
}
:where(.scrollerViewport::-webkit-scrollbar){
	display:none;
}
:where(.scrollerScrollBar){
	opacity:0;
	transition:opacty 0.2s ease-out;
	pointer-events:none;
	width:3px;
	height:100%;
	position:absolute;
	top:0;
	right:0;
	background:rgba(0,0,0,0.1);
	border-radius:3px;
}
:where(.scrollerScrollBar>span){
	position:absolute;
	display:block;
	cursor:pointer;
	width:9px;
	left:calc(50% - 4.5px);
	height:50px;
	max-height:100%;
	background:#ccc;
	border-radius:3px;
}
:where(.scroller:has(.overflowVertical) .scrollerScrollBar),
:where(.scroller:has(.overflowHorizontal) .scrollerScrollBar){
	opacity:1;
	pointer-events:all;
}

button.isolated{
	appearance:none;
	border:none;
	outline:none;
	background:none;
	color:inherit;
	border-radius:0;
	margin:0;
	padding:0;
	text-decoration:none;
}















:root{
	--headerBarHeight:22px;
	--headerMainHeight:80px;
	--headerMegaHeight:32px;
}

.headerBar{
	width:100%;
	height:var(--headerBarHeight);
	background:var(--color-gray);
	font-size:11px;
	line-height:1;
	white-space:nowrap;
	display:flex;
	justify-content:center;
	align-items:center;
	overflow:hidden;
}

.headerMain{
	background:var(--color-white);
	width:100%;
	height:var(--headerMainHeight);
	position:sticky;
	left:0;
	top:0;
	z-index:10000;
}
.headerMain .content{
	display:flex;
	align-items:center;
	height:var(--headerMainHeight);
	gap:5%;
}
.headerMain .headerLogo{
	margin:0;
	padding:0;
	flex-shrink:0;
}
.headerLogo a{
	display:block;
}
.headerLogo img{
	width:auto;
	height:calc(var(--headerMainHeight) - 2px);
	display:block;
}
.headerMainUI{
	width:100%;
	height:var(--headerMainHeight);
	display:flex;
	justify-content:right;
	align-items:center;
	gap:25px;
}

.headerMain .searchBox{
	max-width:345px;
	--searchBoxHeight:40px;
}
@media (width <= 860px){
	.headerMain .searchBox{
		display:none;
	}
}
.headerIcons{
	display:flex;
	gap:15px;
}
.headerIcon{
	--color:var(--color-text);
	--text-decoration:none;
	font-size:11px;
	font-weight:bold;
	line-height:1;
	text-align:center;
	white-space:nowrap;
	flex-shrink:0;
}
.headerIcon img{
	width:35px;
	height:35px;
	display:block;
	margin:0 auto 5px;
	object-fit:contain;
}

@media (width<=768px){
	.headerMain{
		position:relative;
	}
	#header-inner .headerMain .headerLogo{
		margin-left:calc((100svw - var(--contentWidth)) * -0.15);
	}
	.headerIcons{
		gap:10px;
	}
}






.headerNavWrapper{
	position:sticky;
	left:0;
	top:var(--headerMainHeight);
	z-index:10000;
}

.headerNav{
	width:100%;
	height:var(--headerMegaHeight);
	background:var(--color-main);
	color:var(--color-white);
	overflow:hidden;
}
.headerNavViewport{
	width:100%;
	margin:0 auto;
	height:100%;
	position:relative;
	overflow:scroll;
	-ms-overflow-style:none;
	scrollbar-width:none;
	cursor:pointer;
}
.headerNavViewport::-webkit-scrollbar{
	display:none;
}
.headerNavContent{
	width:auto;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	--gap:5%;
	gap:var(--gap);
	padding:0;
}
.overflowHorizontal > .headerNavContent{
	justify-content:flex-start;
}
.headerNavContent::before,.headerNavContent::after{
	content:"";
	display:block;
	width:calc((100svw - var(--contentWidth)) * 0.5 - var(--gap));
	height:100%;
	flex-shrink:0;
}
.headerNavLink{
	flex-shrink:0;
	display:flex;
	height:100%;
	align-items:center;
	gap:6px;
	--text-decoration:none;
	--color:var(--color-white);
	font-weight:bold;
	font-size:14px;
	white-space:nowrap;
	line-height:1;
}
.headerNavLink:hover{
	opacity:1;
}
.headerNavLink span{
	display:block;
	flex-shrink:0;
	position:relative;
	--pad:20px;
	padding-right:var(--pad);
}
.headerNavLink span::after{
	content:"";
	width:calc(var(--pad) * 0.35);
	height:calc(var(--pad) * 0.35);
	border-right:2px solid var(--color-white);
	border-bottom:2px solid var(--color-white);
	pointer-events:none;
	position:absolute;
	right:calc(var(--pad) * 0.5);
	top:50%;
	transform:translate(50%,-75%) rotate(45deg);
	transition:transform 0.3s ease-in-out;
}
.headerNavLink.active span::after{
	transform:translate(50%,-50%) rotate(-135deg);
}
@media (width <= 768px){
	.headerNavWrapper{
		top:0;
	}
	.headerNavContent{
		--gap:15px;
	}
}












.headerNavMenu{
	width:100%;
	position:absolute;
	top:100%;
	left:0;
	background:var(--color-white);
}
.headerNavMenu.active .accordion{
	grid-template-rows:1fr;
}
.headerNavMenu .content{
	width:var(--contentWidth);
	margin-left:auto;
	margin-right:auto;
}
.headerNavMenuLinks{
	width:100%;
	display:flex;
	justify-content:left;
	flex-wrap:wrap;
	--gap:20px;
	--cols:4;
	gap:var(--gap);
	padding:20px 0;
}
.headerNavMenuLinks:has(a:last-child:nth-child(1)),
.headerNavMenuLinks:has(a:last-child:nth-child(2)),
.headerNavMenuLinks:has(a:last-child:nth-child(3)){
	justify-content:center;
}
.headerNavMenuLinks > *{
	width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	display:flex;
	justify-content:left;
	align-items:center;
	gap:10px;
	font-size:16px;
	line-height:1.5;
	--color:var(--color-text);
	--text-decoration:none;
	color:var(--color);
	text-decoration:var(--text-decoration);
	cursor:pointer;
}
.headerNavMenuLinks > * img{
	width:60px;
	height:auto;
	display:block;
	border-radius:10px;
}
@media (width<=1140px){
	.headerNavMenuLinks{
		--cols:3;
	}
	.headerNavMenuLinks:has(>*:last-child:nth-child(1)),
	.headerNavMenuLinks:has(>*:last-child:nth-child(2)){
		justify-content:center;
	}
	.headerNavMenuLinks:has(>*:last-child:nth-child(3)){
		justify-content:left;
	}
}
@media (width<=960px){
	.headerNavMenuLinks{
		--cols:2;
	}
	.headerNavMenuLinks:has(>*:last-child:nth-child(1)){
		justify-content:center;
	}
	.headerNavMenuLinks:has(>*:last-child:nth-child(2)),
	.headerNavMenuLinks:has(>*:last-child:nth-child(3)){
		justify-content:left;
	}
}
@media (width<=768px){
	.headerNavMenu .accordionContent{
		max-height:calc(100svh - var(--headerMainHeight) - var(--headerBarHeight) - var(--headerMegaHeight) - var(--footerFloatHeight));
		overflow-y:scroll;
	}
	.headerNavMenu .accordionContent::-webkit-scrollbar{
		display:none;
	}
	.headerNavMenuLinks{
		--gap:7px;
		--cols:1;
		padding:15px 0;
	}
	.headerNavMenuLinks:has(>*:last-child:nth-child(1)),
	.headerNavMenuLinks:has(>*:last-child:nth-child(2)),
	.headerNavMenuLinks:has(>*:last-child:nth-child(3)){
		justify-content:left;
	}
	.headerNavMenuLinks > *{
		gap:10px;
		font-size:14px;
	}
	.headerNavMenuLinks > * img{
		width:50px;
		border-radius:10px;
	}
}




















:root{
	--footerFloatHeight:90px;
	--footerFloatIcon-Background:var(--color-white);
	--footerFloatIcon-Fill:var(--color-main-dark);
}
@media (width>768px){
	:root{
		--footerFloatHeight:0px;
	}
	.footerFloat{
		display:none;
	}
}
body:has(.footerFloatBar) #floating-menu{
	bottom:calc(var(--footerFloatHeight) + 20px);
}
.footerFloatBar{
	pointer-events:all;
	width:100%;
	height:calc(var(--footerFloatHeight) * 3);
	position:fixed;
	left:0;
	bottom:calc(var(--footerFloatHeight) * -2);
	display:flex;
	justify-content:center;
	align-items:flex-start;
	z-index:15000;
	gap:23px;
	background:var(--color-main-light);
	color:var(--color-text);
}
.footerFloatBarButton{
	margin-top:15px;
	width:50px;
	height:auto;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	gap:5px;
	font-size:10px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	color:inherit;
	--color:inherit;
	text-decoration:none;
	--text-decoration:none;
	z-index:2;
}
.footerFloatBarButton:link,
.footerFloatBarButton:visited,
.footerFloatBarButton:hover,
.footerFloatBarButton:active{
	color:inherit;
}
.footerFloatBarButton svg{
	width:40px;
	height:auto;
	display:block;
}
.footerFloatSearch{
	pointer-events:all;
	padding:20px 15px;
	background:var(--color-gray2);
	position:fixed;
	bottom:var(--footerFloatHeight);
	left:0;
	width:100%;
	box-sizing:border-box;
	z-index:14000;
}
.footerFloatSearch{
	transform:translatey(100%) !important;
	transition:transform 0.3s ease-out;
}
.footerFloatSearch.active{
	transform:none !important;
}
.footerFloatBarButton.search svg:nth-child(1),
.footerFloatBarButton.menu svg:nth-child(1){
	display:flex;
}
.footerFloatBarButton.search svg:nth-child(2),
.footerFloatBarButton.menu svg:nth-child(2){
	display:none;
}
body:has(.footerFloatSearch.active) .footerFloatBarButton.search svg:nth-child(1),
body:has(#sub-column.active) .footerFloatBarButton.menu svg:nth-child(1){
	display:none;
}
body:has(.footerFloatSearch.active) .footerFloatBarButton.search svg:nth-child(2),
body:has(#sub-column.active) .footerFloatBarButton.menu svg:nth-child(2){
	display:flex;
}
















@media (width>768px){
	body:has(.firstView) #sub-column{
		display:none !important;
	}
}
@media (width<=768px){
	body #sub-column,
	body #sub-column.spsDrawerOpen,
	body #sub-column.spsDrawerClose{
		-webkit-overflow-scrolling:touch;
		z-index:14000;
		position:fixed;
		width:100svw;
		height:calc(100lvh - var(--footerFloatHeight));
		left:0;
		top:100lvh;
		transform:none;
	}
	body #sub-column[data-ready]{
		transition:top 0.3s ease-out;
	}
	body #sub-column.active{
		top:0;
	}
	body #sub-column{
		padding-bottom:calc(100lvh - 100svh);
	}
}
#sub-column .free-contents:has(.sideBarTitle) > p{
	margin:0;
	padding:0;
	display:contents;
}
#sub-column .free-contents:has(.sideBarTitle) > h2{
	display:none;
}
.sideBarTitle{
	width:100%;
	height:50px;
	background:var(--color-main);
	color:white;
	display:flex;
	justify-content:left;
	align-items:center;
	margin:0;
	padding:0 var(--contentPadding);
	font-size:16px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
}
.sideBarTitle img{
	width:35px;
	height:auto;
	display:block;
	margin-right:10px;
}

.sidebarContacts{
	padding:20px 0;
	display:flex;
	gap:10px;
	flex-wrap:wrap;
}
@media (width<=768px){
	.sidebarContacts{
		padding:20px var(--contentPadding);
	}
}
.sidebarContact{
	width:calc(50% - 5px);
	height:76px;
	border:1px solid var(--color-gray3);
	border-radius:5px;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	gap:5px;
	font-size:12px;
	font-feature-settings:"palt";
	line-height:1;
	white-space:nowrap;
	--color:var(--color-text);
	--text-decoration:none;
}
.sidebarContactTel{
	width:100%;
	flex-direction:row;
	gap:10px;
}
.sidebarContact img{
	width:35px;
	height:auto;
	display:block;
}
.sidebarContactTel span{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	gap:3px;
}
.sidebarContactTel u{
	text-decoration:none;
}
.sidebarContactTel u:first-child{
	font-size:20px;
	font-weight:bold;
}

.sideBarCategory{
	border-bottom:1px solid var(--color-gray3);
}
.sideBarCategoryHeader{
	width:100%;
	height:90px;
	padding:0 var(--contentPadding);
	display:flex;
	justify-content:left;
	align-items:center;
	gap:15px;
	background:var(--color-main-light);
}
.sideBarCategoryHeader img{
	width:60px;
	height:auto;
	display:block;
	border-radius:10px;
	flex-shrink:0;
}
.sideBarCategoryHeader span{
	display:block;
	width:100%;
	font-size:14px;
	font-weight:bold;
	line-height:1.5;
	padding-right:30px;
	position:relative;
}
.sideBarCategoryHeader span::after{
	content:"";
	width:20px;
	height:20px;
	position:absolute;
	right:0;
	top:calc(50% - 10px);
	clip-path:polygon(74.402% 32.402%, 50% 56.804%, 25.598% 32.402%, 17.282% 40.718%, 50% 73.436%, 82.718% 40.718%);
	background:var(--color-text);
	opacity:0.5;
}
.sideBarCategoryHeader.active span::after{
	clip-path:polygon(25.598% 67.598%, 50% 43.196%, 74.402% 67.598%, 82.718% 59.282%, 50% 26.564%, 17.282% 59.282%);
}
.sideBarCategorySubcategories a{
	display:block;
	width:100%;
	padding:0.75em 40px 0.75em calc(var(--contentPadding) + 0.5em);
	--color:var(--color-text);
	--text-decoration:none;
	font-size:14px;
	font-weight:bold;
	line-height:1.5;
	border-top:1px solid var(--color-gray3);
	background:var(--color-white);
	position:relative;
}
.sideBarCategorySubcategories a::after{
	content:"";
	width:20px;
	height:20px;
	position:absolute;
	right:var(--contentPadding);
	top:calc(50% - 10px);
	clip-path:polygon(32.402% 25.598%, 56.804% 50%, 32.402% 74.402%, 40.718% 82.718%, 73.436% 50%, 40.718% 17.282%);
	background:var(--color-text);
	opacity:0.5;
}

#sub-column #subc_calendar{
	width:100%;
	padding:20px var(--contentPadding) 40px;
	background:var(--color-white);
}
#sub-column div.subc_cal_cont{
	margin:0;
	width:100%;
}
#sub-column div.subc_cal_cont > h2{
	display:none;
}
#sub-column div.cal_wrapper{
	margin:0;
	padding:0;
}
#sub-column div.subc_cal_cont .cap{
	margin:10px 0 0;
	padding:0;
	font-size:14px;
	line-height:1.65;
}
#sub-column div.subc_cal_cont .cap .cap-info{
	margin-top:20px;
	font-size:14px;
	line-height:1.65;
}




























.searchBox{
	width:100%;
	height:var(--searchBoxHeight);
	overflow:hidden;
	border:1px solid var(--color-main-dark);
	border-radius:5px;
}
.searchBox form{
	margin:0;
	padding:0;
	width:100%;
	height:var(--searchBoxHeight);
	display:flex;
}
.searchBox .searchBoxPulldown{
	--pad:20px;
	width:80px;
	height:var(--searchBoxHeight);
	flex-shrink:0;
	position:relative;
}
.searchBox .searchBoxPulldown select{
	appearance:none;
	outline:none;
	border:none;
	box-shadow:none;
	background:var(--color-gray);
	color:var(--color-text);
	width:100%;
	height:var(--searchBoxHeight);
	font-size:16px;
	line-height:1;
	padding:0 0.3em 0 var(--pad);
	cursor:pointer;
}
.searchBox .searchBoxPulldown::before{
	content:"";
	width:calc(var(--pad) * 0.4);
	height:calc(var(--pad) * 0.4 * 0.77);
	position:absolute;
	left:calc(var(--pad) * 0.5);
	top:calc(var(--searchBoxHeight) * 0.5);
	transform:translate(-50%,-50%);
	background:var(--color-text);
	clip-path:polygon(0% 0%,100% 0%,50% 100%);
	pointer-events:none;
	opacity:0.85;
}
.searchBox .searchBoxField{
	appearance:none;
	outline:none;
	border:none;
	box-shadow:none;
	background:var(--color-white);
	color:var(--color-text);
	width:100%;
	height:var(--searchBoxHeight) !important;
	font-size:16px;
	line-height:1;
	padding:0 0.65em;
}
.searchBox .searchBoxField::placeholder{
	font-size:14px;
	color:var(--color-placeholder);
}
.searchBox .searchBoxSubmit{
	appearance:none;
	outline:none;
	user-select:none;
	border:none;
	box-shadow:none;
	background:var(--color-gray);
	color:var(--color-text);
	width:var(--searchBoxHeight);
	height:var(--searchBoxHeight);
	display:flex;
	justify-content:center;
	align-items:center;
	flex-shrink:0;
	cursor:pointer;
}
.searchBox .searchBoxSubmit img{
	width:min(50%,20px);
	height:auto;
	display:block;
}



.telBox{
	display:flex;
	justify-content:center;
	align-items:center;
	--color:var(--color-text);
	--text-decoration:none;
	gap:10px;
}
.telBox > img{
	width:35px;
	height:auto;
	display:block;
}
.telBox > span{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	gap:3px;
	flex-shrink:0;
}
.telBox .telBoxNumber{
	display:block;
	font-size:19px;
	font-weight:bold;
	line-height:1;
	text-align:center;
	white-space:nowrap;
}
.telBox .telBoxNote{
	display:block;
	font-size:13px;
	line-height:1;
	text-align:center;
	white-space:nowrap;
}












.bannerList{
	width:100%;
	max-width:940px;
	margin-left:auto;
	margin-right:auto;
	display:flex;
	justify-content:left;
	flex-wrap:wrap;
	--gap:20px;
	gap:var(--gap);
	--cols:3;
}
@media (width<=960px){
	.bannerList{
		--cols:2;
		--gap:10px;
	}
}
.bannerList > *{
	width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	display:block;
}
.bannerList img{
	width:100%;
	height:auto;
	display:block;
}





















.freeAreaTitleCutter,
.free-contents:has(.freeAreaTitleCutter) h2:has(.freeAreaTitle){
	display:none;
}

.section{
	width:100svw;
	position:relative;
	left:calc(50% - 50svw);
	padding:40px 0;
}
.section.white{
	background:var(--color-white);
}
.section.gray{
	background:var(--color-gray);
}
.section.white + .section.white{
	margin-top:-40px;
}
.section.gray + .section.gray{
	margin-top:-40px;
}

.sectionTitle{
	display:flex;
	justify-content:left;
	align-items:center;
	margin:0;
	padding:0;
	width:100%;
}
.sectionTitleImage{
	width:63px;
	height:auto;
	display:block;
	flex-shrink:0;
	margin-right:10px;
}
.sectionTitleHeader{
	font-size:24px;
	font-weight:bold;
	line-height:1.5;
	color:var(--color-main-dark);
	margin:0;
	padding:0;
	width:fit-content;
	flex-shrink:0;
	margin-right:1em;
}
#main-column .sectionTitleHeader{
	border:0;
}
.sectionTitleHeader u{
	display:inline-block;
	text-decoration:none;
}
.sectionTitleText{
	font-size:16px;
	line-height:1.5;
	margin:0;
	padding:0;
}
.sectionTitleText u{
	display:inline-block;
	text-decoration:none;
}

@media (width<=768px){
	.section{
		padding:20px 0;
	}
	.section.white + .section.white{
		margin-top:-20px;
	}
	.section.gray + .section.gray{
		margin-top:-20px;
	}

	.sectionTitle{
		flex-wrap:wrap;
	}
	.sectionTitleImage{
		width:50px;
		margin-right:8px;
	}
	.sectionTitleHeader{
		font-size:20px;
	}
	.sectionTitleText{
		width:100%;
		font-size:15px;
		margin-top:10px;
	}
}



#main-column .news > h2{
    letter-spacing: 0.05em;
    padding: 10px 0;
}
.w100 .news h2 {
    display: block;
    width: 100%;
    font-size: 25px;
    border-top: none;
    border-bottom: solid 3px #BEBEBE;
    margin: 20px 0;
}
article h2 {
    background: none repeat scroll 0 0 transparent;
    border-top: 3px solid #333;
    font-size: 80%;
}

.sectionTitle2,
#main-column .sectionTitle2,
#main-column .news > h2{
	color:var(--color-main-dark);
	font-size:24px;
	font-weight:bold;
	white-space:nowrap;
	line-height:1;
	display:flex;
	justify-content:left;
	align-items:cetern;
	width:100%;
	height:22px;
	margin:0;
	padding:0 0 0 10px;
	border:none;
	border-left:5px solid var(--color-main-dark);
	letter-spacing:unset;
}
@media (width<=768px){
	.sectionTitle2,
	#main-column .sectionTitle2,
	#main-column .news > h2{
		font-size:20px;
	}
}

.sectionTitle3,
#main-column .sectionTitle3{
	margin:40px 0 0 0;
	color:var(--color-main-dark);
	font-size:20px;
	font-weight:bold;
	line-height:1.5;
	padding:0 0 5px 0;
	border:none;
	border-bottom:1px solid var(--color-main-dark);
}
.sectionTitle3:first-child,
#main-column .sectionTitle3:first-child{
	margin-top:0;
}
.sectionTitle2 + .sectionTitle3,
#main-column .sectionTitle2 + .sectionTitle3{
	margin-top:32px;
}
@media (width<=768px){
	.sectionTitle3,
	#main-column .sectionTitle3{
		margin:20px 0 0 0;
		font-size:16px;
		padding:0 0 3px 0;
	}
	.sectionTitle3:first-child,
	#main-column .sectionTitle3:first-child{
		margin-top:0;
	}
	.sectionTitle2 + .sectionTitle3,
	#main-column .sectionTitle2 + .sectionTitle3{
		margin-top:20px;
	}
}















.firstView{
	padding:20px 0;
}
.firstViewSlide img{
	width:100%;
	max-width:100%;
	height:auto;
	display:block;
	border-radius:20px;
}
.firstViewSlider .swiper-pagination{
	position:relative;
	left:auto;
	top:auto;
	bottom:auto;
	right:auto;
	margin:10px 0 0;
	display:flex;
	justify-content:center;
	gap:10px;
}
.firstViewSlider .swiper-pagination-bullet{
	width:50px;
	height:30px;
	display:block;
	background:none;
	border-radius:0;
	margin:0;
	padding:0;
	position:relative;
	opacity:1;
}
.firstViewSlider .swiper-pagination-bullet::before{
	content:"";
	width:100%;
	height:3px;
	background:var(--color-gray3);
	position:absolute;
	left:0;
	top:calc(50% - 1.5px);
}
.firstViewSlider .swiper-pagination-bullet-active::before{
	background:var(--color-main);
}
@media (width<=768px){
	.firstView{
		padding:20px 0;
	}
	.firstViewSlide img{
		border-radius:5px;
	}
	.firstViewSlider .swiper-pagination{
		margin:5px 0 0;
		gap:5px;
	}
	.firstViewSlider .swiper-pagination-bullet{
		width:30px;
		height:30px;
	}
}









.topAnnounces .content{
	margin-top:-20px;
	display:flex;
	flex-direction:column;
	gap:20px;
}
.topAnnounce{
	padding:0 5%;
	background:var(--color-main-light);
	border-radius:10px;
}
.topAnnounceTitle{
	padding:20px 0;
	font-size:20px;
	font-weight:bold;
	line-height:1.5;
	text-align:center;
}
.topAnnounceContent{
	padding-bottom:20px;
	font-size:16px;
	line-height:1.65;
}









.topCategoriesList,
.topInformationList{
	margin-top:20px;
	display:flex;
	flex-wrap:wrap;
	justify-content:left;
	align-items:stretch;
	--gap:20px;
	--cols:5;
	gap:var(--gap);
}
.topInformationList{
	--cols:4;
}
.topCategoriesList > *,
.topInformationList > *{
	width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	background:white;
	--color:var(--color-text);
	--text-decoration:none;
	border:1px solid var(--color-gray3);
	border-radius:10px;
	overflow:hidden;
	display:flex;
	flex-direction:column;
}
.topCategoriesList > * img,
.topInformationList > * img{
	width:100%;
	height:auto;
	display:block;
	flex-shrink:0;
}
.topInformationList > * img{
	aspect-ratio:240 / 240;
	object-fit:cover;
	object-position:center top;
}
.topCategoriesList > * span,
.topInformationList > * span{
	height:100%;
	display:flex;
	justify-content:left;
	align-items:center;
	min-height:calc(8px * 2 + 18px * 1.5 * 2);
	padding:8px 20px;
	font-size:18px;
	font-weight:bold;
	line-height:1.5;
}
.topCategoriesList > * span u,
.topInformationList > * span u{
	display:inline-block;
	text-decoration:none;
}
@media (width<=1140px){
	.topCategoriesList{
		--cols:4;
	}
	.topInformationList{
		--cols:3;
	}
}
@media (width<=960px){
	.topCategoriesList{
		--cols:3;
	}
}
@media (width<=768px){
	.topCategoriesList,
	.topInformationList{
		--cols:2;
		--gap:20px;
	}
	.topCategoriesList > *,
	.topInformationList > *{
		border-radius:0;
		border:none;
		background:none;
	}
	.topCategoriesList > * img,
	.topInformationList > * img{
		border-radius:10px;
		border:1px solid var(--color-gray3);
		background:white;
	}
	.topInformationList > * img{
		aspect-ratio:unset;
	}
	.topCategoriesList > * span,
	.topInformationList > * span{
		padding:4px 2px;
		font-size:16px;
		line-height:1.5;
	}
}





















.topAboutList{
	margin-top:20px;
	display:flex;
	justify-content:left;
	align-items:stretch;
	flex-wrap:wrap;
	--gap:40px;
	--cols:3;
	gap:var(--gap);
}
.topAboutList > *{
	width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	background:white;
	border-radius:10px;
	border:1px solid var(--color-gray3);
	padding:40px 11px;
	--color:var(--color-text);
	--text-decoration:none;
}
.topAboutPanelTop{
	display:contents;
}
.topAboutPanelImage{
	display:block;
	width:100px;
	height:auto;
	margin:0 auto;
}
.topAboutPanelSubtitle{
	display:block;
	margin-top:20px;
	font-size:16px;
	line-height:1.5;
	font-weight:bold;
	text-align:center;
}
.topAboutPanelTitle{
	display:block;
	margin-top:0px;
	font-size:36px;
	line-height:1.5;
	font-weight:bold;
	text-align:center;
	white-space:nowrap;
	color:var(--color-main-dark);
}
.topAboutPanelImage + .topAboutPanelTitle{
	margin-top:20px;
}
.topAboutPanelText{
	display:block;
	margin-top:20px;
	font-size:20px;
	line-height:1.5;
	font-weight:bold;
	text-align:center;
}
.topAboutPanelFeatures{
	margin-top:20px;
	display:flex;
	justify-content:center;
	gap:5px;
}
.topAboutPanelFeatures > *{
	width:calc(50% - 2.5px);
	max-width:147px;
	height:43px;
	display:flex;
	justify-content:center;
	align-items:center;
	border:1px solid var(--color-gray3);
	background:var(--color-main-light);
	font-size:15px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
}

@media (width<=960px){
	.topAboutList{
		margin-top:20px;
		display:flex;
		flex-direction:column;
		--gap:20px;
	}
	.topAboutList > *{
		width:100%;
		max-width:450px;
		margin:0 auto;
		border-radius:5px;
		padding:20px;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		align-items:center;
	}
	.topAboutPanelImage{
		width:80px;
		margin:0;
		flex-shrink:0;
	}
	.topAboutPanelTop{
		display:block;
		width:calc(100% - 80px - 20px);
	}
	.topAboutPanelSubtitle{
		margin-top:0;
		font-size:16px;
	}
	.topAboutPanelTitle{
		margin-top:0px;
		font-size:24px;
	}
	.topAboutPanelImage + .topAboutPanelTitle{
		margin-top:0;
	}
	.topAboutPanelText{
		margin-top:10px;
		font-size:14px;
		width:100%;
	}
	.topAboutPanelFeatures{
		margin-top:10px;
		width:100%;
	}
}


































.productsFinder{
	width:100svw;
	height:355px;
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
}
.productsFinderBackground,
.productsFinderBackground img{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:right 30%;
}
.productsFinderArea{
	background:var(--color-gray2);
	width:var(--contentWidth);
	max-width:800px;
	border-radius:10px;
	padding:40px;
	z-index:2;
}
.productsFinderAreaTitle{
	font-size:18px;
	font-weight:bold;
	line-height:1;
	margin:0 0 0.5em 0;
}
.productsFinderAreaTitle:not(:first-child){
	margin-top:40px;
}
.productsFinderStartButtons{
	display:flex;
	justify-content:space-between;
	gap:1.5%;
}
.productsFinderStartButtons button{
	width:100%;
	height:45px;
	border-radius:4px;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:15px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	background:var(--color-white);
	color:var(--color-text);
	border:1px solid var(--color-gray3);
	cursor:pointer;
	transition:color var(--hoverDuration) ease-out;
	transition-property:color,background,border;
}
.productsFinderSearchBox{
	--searchBoxHeight:50px;
}
.productsFinderSearchBox .searchBoxPulldown{
	--pad:30px;
	width:max(20%,110px);
}
.productsFinderSearchBox .searchBoxPulldown::before{
	left:calc(100% - var(--pad) * 0.5);
}
.productsFinderSearchBox .searchBoxPulldown select{
	padding-left:1em;
	padding-right:var(--pad);
}
.productsFinderSearchBox .searchBoxField{
	padding:0 1em;
}
.productsFinderSearchBox .searchBoxSubmit{
	background:var(--color-main-dark);
}
.productsFinderSearchBox .searchBoxSubmit img{
	filter:grayscale(1) brightness(10);
	width:15px;
}
@media (width>768px){
	.productsFinderStartButtons button:hover{
		background:var(--color-main);
		color:var(--color-white);
		border-color:var(--color-main);
	}
}
@media (width<=1000px){
	.productsFinderStartButtons button{
		font-size:13px;
	}
}
@media (width<=768px){
	.productsFinderArea{
		border-radius:5px;
		padding:20px;
	}
	.productsFinderAreaTitle{
		font-size:16px;
		margin:0 0 0.35em 0;
	}
	.productsFinderAreaTitle:not(:first-child){
		margin-top:20px;
	}
	.productsFinderStartButtons{
		gap:10px;
		flex-wrap:wrap;
	}
	.productsFinderStartButtons button{
		width:calc(50% - 5px);
		font-size:14px;
	}
	.productsFinderSearchBox .searchBoxPulldown{
		--pad:20px;
		width:max(15%,100px);
	}
	.productsFinderSearchBox .searchBoxPulldown::before{
		/*left:calc(100% - var(--pad) * 0.5);*/
		left:calc(var(--pad) * 0.5)
	}
	.productsFinderSearchBox .searchBoxPulldown select{
		padding-right:0.5em;
		padding-left:var(--pad);
	}
	.productsFinderSearchBox .searchBoxField{
		padding:0 0.5em;
	}
}

.productsFinderModal{
	width:100svw;
	height:100lvh;
	position:fixed;
	left:0;
	top:0;
	display:flex;
	justify-content:center;
	align-items:center;
	padding:10lvh 10svw;
	opacity:0;
	transition:opacity 0.3s ease-out;
	pointer-events:none;
	overflow:hidden;
	background:rgba(0,0,0,0.65);
	backdrop-filter:blur(3px);
	z-index:16000;
}
.productsFinderModal.active{
	opacity:1;
	pointer-events:all;
}
body:has(.productsFinderModal.active){
	overflow:hidden;
}
.productsFinderWindow{
	--pad:40px;
	--progressHeight:40px;
	--uiHeight:40px;
	--gap:25px;
	--mainMaxHeight:calc((80lvh - var(--pad) * 2) - var(--gap) * 2 - var(--progressHeight) - var(--uiHeight));
	width:90%;
	max-width:760px;
	height:auto;
	background:var(--color-white);
	border-radius:5px;
	padding:var(--pad) 40px;
	position:relative;
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;
	flex-direction:column;
	gap:var(--gap);
	animation-duration:0.4s;
	animation-delay:0;
	animation-fill-mode:forwards;
	animation-iteration-count:1;
	--slideRange:min(40px,5.33vw);
}
.productsFinderWindow.goTo{
	animation-name:productsFinderAnim_goto;
	animation-timing-function:ease-in-out;
	pointer-events:none;
}
.productsFinderWindow.backTo{
	animation-name:productsFinderAnim_backto;
	animation-timing-function:ease-in-out;
	pointer-events:none;
}
@keyframes productsFinderAnim_goto{
	  0%{left:calc(var(--slideRange) *  0);opacity:1.0;}
	 49%{left:calc(var(--slideRange) * -1);opacity:0.0;}
	 51%{left:calc(var(--slideRange) *  1);opacity:0.0;}
	100%{left:calc(var(--slideRange) *  0);opacity:1.0;}
}
@keyframes productsFinderAnim_backto{
	  0%{left:calc(var(--slideRange) *  0);opacity:1.0;}
	 49%{left:calc(var(--slideRange) *  1);opacity:0.0;}
	 51%{left:calc(var(--slideRange) * -1);opacity:0.0;}
	100%{left:calc(var(--slideRange) *  0);opacity:1.0;}
}
.productsFinderMain{
	width:100%;
	position:relative;
	max-height:var(--mainMaxHeight);
}
.productsFinderViewport{
	width:100%;
	height:auto;
	max-height:var(--mainMaxHeight);
	overflow-y:scroll;
}
.productsFinderScrollBar{
	right:-15px;
}
.productsFinderClose{
	width:15px;
	height:15px;
	position:absolute;
	right:-25px;
	top:-25px;
	clip-path:polygon(
		20% 0%,  50% 30%, 80% 0%,
		100% 20%, 70% 50%, 100% 80%,
		80% 100%, 50% 70%, 20% 100%,
		0% 80%,  30% 50%, 0% 20%
	);
	background:white;
	pointer-events:none;
}
.productsFinderProgress{
	width:100%;
	height:var(--progressHeight);
	display:flex;
	gap:5px;
	border-bottom:2px solid var(--color-main);
	flex-shrink:0;
}
.productsFinderProgress > div{
	width:100%;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:12px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	border-radius:5px;
}
.productsFinderProgress > div.selected{
	background:var(--color-gray3);
	color:#666666;
}
.productsFinderProgress > div.current{
	background:var(--color-main);
	color:white;
}
.productsFinderButtons{
	width:100%;
	height:var(--uiHeight);
	display:flex;
	gap:5%;
	flex-shrink:0;
	justify-content:center;
}
.productsFinderButtons > button{
	appearance:none;
	outline:none;
	width:100%;
	height:var(--uiHeight);
	max-width:135px;
	border:1px solid var(--color-main);
	background:var(--color-white);
	color:var(--color-text);
	font-size:14px;
	font-weight:bold;
	line-height:1;
	cursor:pointer;
	border-radius:3px;
}
@media (width>768px){
	.productsFinderButtons button:hover{
		background:var(--color-main);
		color:var(--color-white);
		border-color:var(--color-main);
	}
}
.productsFinderQuestion{
	width:100%;
	font-size:14px;
	line-height:1.65;
	text-align:center;
}
.productsFinderChoices{
	display:flex;
	gap:5px;
	flex-wrap:wrap;
	justify-content:left;
	align-items:flex-start;
	--gap:8px;
	--cols:4;
	gap:var(--gap);
}
.productsFinderChoices button{
	width:fit-content;
	min-width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	height:40px;
	padding:0 1em;
	font-size:13px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	background:var(--color-white);
	color:var(--color-text);
	border:1px solid var(--color-gray3);
	border-radius:4px;
	cursor:pointer;
}
@media (width>768px){
	.productsFinderChoices button:hover{
		background:var(--color-main);
		color:var(--color-white);
		border-color:var(--color-main);
	}
}
@media (width<=768px){
	.productsFinderModal{
		padding:10lvh 5svw;
	}
	.productsFinderWindow{
		--pad:20px;
		--progressHeight:25px;
		--uiHeight:35px;
		--gap:20px;
		width:90svw;
		padding:var(--pad) 20px;
	}
	.productsFinderScrollBar{
		right:-10px;
	}
	.productsFinderClose{
		width:15px;
		height:15px;
		position:absolute;
		right:-10px;
		top:-30px;
	}
	.productsFinderProgress > div{
		font-size:10px;
	}
	.productsFinderChoices{
		--gap:4px;
		--cols:3;
	}
}






















.w100 .news{
    margin:0 auto;
	padding:40px 0;
	width:var(--contentWidth);
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:40px;
}
#main-column .news > h2{
	flex-shrink:0;
	width:auto;
}
.news .news-contents{
	width:100%;
	max-width:800px;
	height:auto;
	max-height:340px;
	margin:0;
	padding:0;
	overflow:auto;
}
dl.news-box{
    font-size:16px;
    color:var(--color-text);
    padding:20px 0;
    border-bottom:1px solid var(--color-gray3);
}
dl.news-box:first-child{
	border-top:none;
}
.news-box dd{
    line-height:inherit;
}
.news .news-contents a{
	--color:var(--color-text);
	--text-decoration:underline;
}
@media (width<=768px){
	.w100 .news{
		padding:20px 0;
		width:var(--contentWidth);
		display:block;
	}
	.news .news-contents{
		margin-top:30px;
		max-height:360px;
	}
	dl.news-box:first-child{
		padding-top:0;
	}
}

.cont:has(.news) + .cont .section.white:first-of-type{
	margin-top:-40px;
}























.topNewsBottom .content{
	display:flex;
	justify-content:center;
	align-items:center;
}
.topFacebook{
	width:500px;
	max-width:100%;
}











.topAsides .bannerList{
	margin-top:20px;
	--cols:2;
}
@media (width<=960px){
	.topAsides .bannerList{
		--cols:1;
	}
}
.topAsides .content{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:40px;
}
.topAsidesGroup:has(.bannerList){
	width:100%;
}
.topAsidesGroup:has(.topFacebook){
	width:50%;
	max-width:500px;
	flex-shrink:0;
}
.topFacebook iframe{
	width:100%!important;
}
@media (width<=960px){
	.topAsides .content{
		flex-direction:column;
		gap:40px;
	}
	.topAsidesGroup:has(.bannerList){
		width:100%;
	}
	.topAsidesGroup:has(.topFacebook){
		width:100%;
		margin-left:auto;
		margin-right:auto;
	}
}



















body:has(.topAsides) .footerGuide{
	margin-top:-40px;
}
.footerGuideList{
	margin-top:40px;
	display:flex;
	justify-content:left;
	align-items:stretch;
	flex-wrap:wrap;
	--gap:40px;
	gap:var(--gap);
	--cols:3;
}
.footerGuidePanel{
	width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	display:block;
	padding-bottom:calc(50px + 20px);
	position:relative;
}
.footerGuidePanelContent{
	margin-top:20px;
	font-size:16px;
	line-height:1.65;
}
.footerGuidePanelButton{
	width:100%;
	height:50px;
	border:1px solid var(--color-text);
	border-radius:50px;
	--color:var(--color-text);
	--text-decoration:none;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:16px;
	font-weight:bold;
	position:absolute;
	left:0;
	bottom:0;
}
.footerGuidePanelButton::after{
	content:"";
	position:absolute;
	right:15px;
	top:50%;
	width:15px;
	height:15px;
	background:var(--color-text);
	transform:translatey(-50%);
	clip-path:polygon(32.402% 25.598%, 56.804% 50%, 32.402% 74.402%, 40.718% 82.718%, 73.436% 50%, 40.718% 17.282%)
}

@media (width<=1140px){
	.footerGuideList{
		--cols:2;
	}
}
@media (width>768px){
	.sectionTitle3 i{
		display:none;
	}
	.footerGuideList .accordion{
		display:contents;
		transition:none;
		grid-template-rows:1fr;
	}
	.footerGuideList .accordionContent{
		display:contents;
	}
}
@media (width<=768px){
	body:has(.topAsides) .footerGuide{
		margin-top:-20px;
	}
	.footerGuideList{
		margin-top:20px;
		--cols:1;
		--gap:10px;
	}
	.footerGuideList .sectionTitle3{
		background:var(--color-main);
		color:var(--color-white);
		border:none;
		height:44px;
		padding:0 20px;
		display:flex;
		justify-content:left;
		align-items:center;
		position:relative;
	}
	.footerGuideList .sectionTitle3 i{
		position:absolute;
		right:10px;
		top:50%;
		width:15px;
		height:15px;
		transform:translatey(-50%);
		background:white;
		clip-path:polygon(74.402% 32.402%, 50% 56.804%, 25.598% 32.402%, 17.282% 40.718%, 50% 73.436%, 82.718% 40.718%);
	}
	.footerGuideList .sectionTitle3.active i{
		clip-path:polygon(25.598% 67.598%, 50% 43.196%, 74.402% 67.598%, 82.718% 59.282%, 50% 26.564%, 17.282% 59.282%);
	}
	.footerGuidePanel{
		padding-bottom:0;
	}
	.footerGuidePanelButton{
		margin-top:20px;
		margin-bottom:20px;
		position:relative;
		left:auto;
		bottom:auto;
	}
}






















.footerContact{
	background:var(--color-main-light);
}
.footerContact .content{
	overflow:hidden;
}
.footerContactTitle{
	width:fit-content;
	margin:0 auto;
	font-size:24px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	position:relative;
	z-index:2;
}
.footerContactTitle::after{
	content:"";
	width:300vw;
	height:2px;
	background:var(--color-main-dark);
	position:absolute;
	left:-100vw;
	top:calc(50% - 1px);
}
.footerContactTitle > div{
	background:var(--color-main-light);
	position:relative;
	z-index:2;
	padding:0 0.6em;
}
.footerContactTitle > div::after{
	content:"CONTACT";
	display:block;
	text-align:center;
	font-size:14px;
	line-height:1;
	margin-top:0.5em;
	color:var(--color-main);
}
@media (width<=768px){
	.footerContactTitle{
		font-size:20px;
	}
	.footerContactTitle > div::after{
		font-size:14px;
	}
}

.footerContactList{
	margin-top:40px;
	display:flex;
	justify-content:left;
	align-items:stretch;
	flex-wrap:wrap;
	--gap:40px;
	gap:var(--gap);
	--cols:3;
}
.footerContactList > *{
	width:calc((100% - var(--gap) * (var(--cols) - 1)) / var(--cols));
	display:block;
	padding:40px 10px;
	background:var(--color-white);
	--color:var(--color-text);
	--text-decoration:none;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:20px;
}
.footerContactImage{
	width:65px;
	height:auto;
	display:block;
	flex-shrink:0;
}
.footerContactMain{
	font-size:24px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	gap:6px;
}
.footerContactTime{
	display:flex;
	justify-content:center;
	align-items:center;
	height:30px;
	border-radius:30px;
	padding:0 20px;
	font-size:14px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
	color:white;
	background:var(--color-main);
}
@media (width<=1200px){
	.footerContactList{
		--cols:2;
	}
}
@media (width<=960px){
	.footerContactList{
		margin-top:20px;
		--cols:1;
		flex-direction:column;
		gap:10px;
	}
	.footerContactList > *{
		padding:20px;
		gap:20px;
	}
	.footerContactMain{
		width:100%;
		font-size:20px;
	}
	.footerContactImage{
		width:65px;
	}
	.footerContactTime{
		height:28px;
		font-size:12px;
	}
}







.footerMain .content{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.footerLogo{
	width:224px;
}
.footerLogo img{
	display:block;
}
.footerMainNav{
	display:flex;
	gap:30px;
}
.footerMainNav > *{
	--color:var(--color-text);
	--text-decoration:none;
	font-size:16px;
	position:relative;
}
.footerMainNav > *:not(:last-child)::after{
	content:"";
	position:absolute;
	right:calc(30px * -0.5);
	width:1px;
	height:1em;
	top:calc(50% - 0.5em);
	background:var(--color-text);
	opacity:0.5;
}
@media (width<=768px){
	.footerMain .content{
		flex-direction:column;
		gap:20px;
	}
	.footerMainNav{
		flex-direction:column;
		gap:15px;
		width:100%;
	}
	.footerMainNav > *{
		width:100%;
		height:44px;
		display:flex;
		justify-content:left;
		align-items:center;
		background:var(--color-gray);
		padding:0 20px;
		border-radius:5px;
		position:relative;
	}
	.footerMainNav > *::after,
	.footerMainNav > *:not(:last-child)::after{
		content:"";
		position:absolute;
		right:10px;
		width:15px;
		height:15px;
		top:calc(50% - 15px * 0.5);
		background:var(--color-text);
		opacity:0.5;
		clip-path:polygon(32.402% 25.598%, 56.804% 50%, 32.402% 74.402%, 40.718% 82.718%, 73.436% 50%, 40.718% 17.282%);
	}
}







.footerBar{
	background:var(--color-main);
	color:var(--color-white);
	padding:10px 0;
}
.footerBar .content{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:40px;
}
.footerBarNav{
	display:flex;
	flex-wrap:wrap;
	justify-content:left;
	gap:5px 20px;
}
.footerBarNav > *{
	--color:var(--color-white);
	--text-decoration:none;
	font-size:14px;
	line-height:1.65;
	white-space:nowrap;
}
.footerBarNav > * u{
	text-decoration:underline;
}
.footerCredit{
	font-size:12px;
	line-height:1;
	white-space:nowrap;
}
@media (width<=768px){
	.footerBar{
		padding-top:20px;
		padding-bottom:calc(var(--footerFloatHeight) + 20px);
	}
	.footerBar .content{
		display:flex;
		flex-direction:column;
		gap:20px;
	}
	.footerBarNav{
		display:flex;
		flex-wrap:wrap;
		justify-content:left;
		gap:15px 20px;
	}
	.footerBarNav > *{
		min-width:calc(50% - 10px);
	}
	.footerBarNav > *:last-child{
		width:100%;
	}
}













body #floating-menu{
	right:10px;
}
body #page-top a{
	height:65px;
	width:70px;
	display:block;
	padding:0;
	/*background:var(--color-main);
	border-radius:100%;*/
	position:relative;
	cursor:pointer;
}
@media (width>768px){
	body #page-top a{
		height:83.6px;
		width:90px;
	}
}
body #page-top a::after{
	content:none;
	/*
	position:absolute;
	width:50%;
	height:50%;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	background:var(--color-white);
	clip-path:polygon(25.598% 67.598%, 50% 43.196%, 74.402% 67.598%, 82.718% 59.282%, 50% 26.564%, 17.282% 59.282%);
	*/
}
body #page-top a img{
	display:none !important;
}
body #page-top a:hover{
	/*background:var(--color-main);*/
	opacity:0.7;
}
body #page-top a,
body #page-top a:hover{
	background:url(images/c0793.webp) center/contain,transparent;
}



