@charset "UTF-8";

/* --------------------------------------------------------------------
　フッタ基本設定
-------------------------------------------------------------------- */
footer{
width:100%;
overflow:hidden;
background:#545454;
}
#commons-page-top-btn{
position:fixed;
background:#545454;
z-index:790;
transition: all .3s ease;
transform:translateY(150%);
opacity:0;
}
#commons-page-top-btn.follow{
transition: all .3s ease;
transform:translateY(0);
opacity:1;
}
#commons-page-top-btn > a{
display:flex;
align-items:center;
justify-content:center;
width:100%;
height:100%;
}
#commons-page-top-btn > a > .material-symbols-outlined{
color:#fff;
}
@media screen and (min-width:769px){
	#commons-page-top-btn{
	width:5.6rem;
	height:5.6rem;
	bottom:2rem;
	right:2rem;
	}
	#commons-page-top-btn > a > .material-symbols-outlined{
	font-size:3rem;
	}
}
@media screen and (max-width:768px){
	#commons-page-top-btn{
	width:5rem;
	height:5rem;
	bottom:1.5rem;
	right:1.2rem;
	}
	#commons-page-top-btn > a > .material-symbols-outlined{
	font-size:3rem;
	}
}

/* --------------------------------------------------------------------
　サービス一覧設定
-------------------------------------------------------------------- */
footer > #footer-service-list{
margin:0 auto;
width:100%;
border-bottom:1px solid #707070;
}
footer > #footer-service-list > ul{
display:flex;
flex-wrap:wrap;
align-items:stretch;
justify-content:center;
}
footer > #footer-service-list > ul > li{
line-height:1.3;
}
footer > #footer-service-list > ul > li{
border-left:1px solid #707070;
}
footer > #footer-service-list > ul > li:last-child{
border-right:1px solid #707070;
}
footer > #footer-service-list > ul > li > a{
color:#fff;
}
footer > #footer-service-list > ul > li > a > .title{
display:flex;
align-items:center;
letter-spacing:0;
}
footer > #footer-service-list > ul > li > a > .link{
text-decoration:underline;
}
@media screen and (min-width:769px){
	footer > #footer-service-list > ul{
	width:1180px;
	margin:0 auto;
	padding:4rem 2rem;
	}
	footer > #footer-service-list > ul > li{
	width:calc(100% / 4);
	padding:1.0rem 2.5rem;
	}
	footer > #footer-service-list > ul > li > a > .title > span{
	font-size:5rem;
	margin-right:.5rem;
	}
	footer > #footer-service-list > ul > li > a > .title > p{
	font-size:1.6rem;
	font-weight:600;
	}
	footer > #footer-service-list > ul > li > a > .ex{
	margin:1.5rem 0 0 0;
	font-size:1.2rem;
	}
	footer > #footer-service-list > ul > li > a > .link{
	margin:1.5rem 0 0 0;
	font-size:1.2rem;
	}
}
@media screen and (max-width:768px){
	footer > #footer-service-list > ul{
	padding:0;
	}
	footer > #footer-service-list > ul > li{
	width:calc(100% / 2);
	padding:2rem;
	border:0;
	}
	footer > #footer-service-list > ul > li:nth-child(1),
	footer > #footer-service-list > ul > li:nth-child(2){
	border-bottom:1px solid #707070;
	}
	footer > #footer-service-list > ul > li:nth-child(even){
	border-left:1px solid #707070;
	}
	footer > #footer-service-list > ul > li > a > .title{
	display:block;
	margin:0 auto 1.5rem auto;
	}
	footer > #footer-service-list > ul > li > a > .title > span{
	font-size:5.5rem;
	margin:0 auto 1rem auto;
	text-align:center;
	display:block;
	}
	footer > #footer-service-list > ul > li > a > .title > p{
	text-align:center;
	font-size:1.5rem;
	}
	footer > #footer-service-list > ul > li > a > .ex{
	font-size:1.2rem;
	opacity:.7;
	}
	footer > #footer-service-list > ul > li > a > .link{
	text-align:center;
	margin:2rem 0 0 0;
	font-size:1.2rem;
	}
}

/* --------------------------------------------------------------------
　フッタメニュー設定
-------------------------------------------------------------------- */
#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form{
background:#888;
display:flex;
flex-wrap:wrap;
align-items:center;
border-radius:.5rem;
}
#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form > ion-icon{
font-size:2rem;
color:#fff;
margin:0 1rem 0 0;
}
#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form > input::placeholder{
color:#fff;
letter-spacing:0;
}
#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form > input[type="text"]{
width:calc(100% - 3rem);
height:100%;
}
#footer-menu-wrap > #main-menu-contents > ul{
display:flex;
flex-wrap:wrap;
}
#footer-menu-wrap > #main-menu-contents > ul > li{
width:calc(100% / 2);
margin-bottom:1rem;
letter-spacing:0;
}
#footer-menu-wrap > #main-menu-contents > ul > li > a{
line-height:1.5;
display:block;
color:#fff;
}
#footer-menu-wrap > #main-menu-contents > ul > li.title{
width:100%;
color:#bfbfbf;
font-weight:600;
}
#footer-menu-wrap > #sub-menu-contents{
border-top:1px solid #707070;
width:100%;
padding:1.5rem 0;
}
#footer-menu-wrap > #sub-menu-contents > div{
margin:auto;
padding:0 2rem;
}
#footer-menu-wrap > #sub-menu-contents > div > ul{
display:flex;
flex-wrap:wrap;
align-items:center;
}
#footer-menu-wrap > #sub-menu-contents > div > ul > li > a{
color:#cfcfcf;
letter-spacing:0;
}
#footer-menu-wrap > #sub-menu-contents > div > p{
color:#888;
font-size:1rem;
letter-spacing:.02em;
}
@media screen and (min-width:769px){
	#footer-menu-wrap > #main-menu-contents{
	width:1180px;
	margin:auto;
	padding:4rem 2rem;
	display:grid;
	grid-template-columns:calc(50% - 80px) repeat(2,25%);
	align-items:flex-start;
	gap:0 4rem;
	}
	#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form{
	width:450px;
	height:4.2rem;
	padding:.5rem 1rem;
	}
	#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form > input[type="text"]{
	font-size:1.4rem
	}
	#footer-menu-wrap > #main-menu-contents > ul > li{
	margin-bottom:1rem;
	}
	#footer-menu-wrap > #main-menu-contents > ul > li > a{
	font-size:1.3rem;
	}
	#footer-menu-wrap > #main-menu-contents > ul > li.title{
	font-size:1.2rem;
	margin-bottom:1.5rem;
	}
	#footer-menu-wrap > #sub-menu-contents > div{
	width:1180px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	}
	#footer-menu-wrap > #sub-menu-contents > div > ul{
	gap:1.5rem;
	}
	#footer-menu-wrap > #sub-menu-contents > div > ul > li > a{
	font-size:1.1rem;
	}
	#footer-menu-wrap > #sub-menu-contents > div > p{
	display:flex;
	flex-wrap:wrap;
	}
}
@media screen and (max-width:768px){
	#footer-menu-wrap > #main-menu-contents{
	width:calc(100% - 4rem);
	margin:auto;
	padding:3rem 0 2.5rem 0;
	}
	#footer-menu-wrap > #main-menu-contents > #footer-search-contents{
	padding-bottom:1rem;
	}
	#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form{
	height:3.8rem;
	padding:0 1rem;
	}
	#footer-menu-wrap > #main-menu-contents > #footer-search-contents > form > input[type="text"]{
	font-size:1.35rem;
	}
	#footer-menu-wrap > #main-menu-contents > ul{
	margin-top:2rem;
	}
	#footer-menu-wrap > #main-menu-contents > ul > li > a{
	font-size:1.2rem;
	}
	#footer-menu-wrap > #main-menu-contents > ul > li.title{
	font-size:1.1rem;
	margin-bottom:1.0rem;
	}
	#footer-menu-wrap > #sub-menu-contents > div > ul{
	justify-content:center;
	gap:0 .8rem;
	}
	#footer-menu-wrap > #sub-menu-contents > div > ul > li > a{
	font-size:.85rem;
	}
	#footer-menu-wrap > #sub-menu-contents > div > p{
	text-align:center;
	}
}