@charset "utf-8";
/*=============================================================
 footer
=============================================================*/
#footer{position: relative;}
/* ftr-member-menu
-------------------------------------------------------------*/
#ftr-member-menu-block{
	background-color: var(--primaryColor);
	color: #fff;
	padding: 50px 0;
	box-sizing: border-box;
}
#ftr-member-menu .ttl{
	font-size: 2.4rem;
	font-style: normal;
	font-weight: 700;
	line-height: 160%;
	text-align: center;
	margin-bottom: 32px;
}
#ftr-member-menu .col-3{}
#ftr-member-menu .col-3>li{
	display: flex;
	flex-direction: column;
}
/* ftr-link-btn */
.ftr-link-btn{
	display: flex;
	align-items: center;
	flex: 1;
	text-align: left;
	width: 100%;
	height: 100%;
	color: var(--primaryColor);
	background-color: #fff;
	padding: 40px 38px 40px 56px;
	border: 1px solid var(--primaryColor);
	box-sizing: border-box;
	text-decoration: none;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 700;
	line-height: 160%;
	position: relative;
}
.ftr-link-btn:hover{
	text-decoration: none;
	color: #fff;
	background-color: var(--primaryColor);
	border: 1px solid #fff;
}
.ftr-link-btn::before{
	content: '';
	width: 24px;
	height: 22px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 24px;
}
li:first-child .ftr-link-btn::before{
	background: url("/shared/img/ftr-icon01.svg") no-repeat;
	background-size: cover;
}
li:nth-child(2) .ftr-link-btn::before{
	background: url("/shared/img/ftr-icon02.svg") no-repeat;
	background-size: cover;
}
li:nth-child(3) .ftr-link-btn::before{
	background: url("/shared/img/ftr-icon03.svg") no-repeat;
	background-size: cover;
}
li:first-child .ftr-link-btn:hover::before{
	background: url("/shared/img/ftr-icon01-o.svg") no-repeat;
	background-size: cover;
}
li:nth-child(2) .ftr-link-btn:hover::before{
	background: url("/shared/img/ftr-icon02-o.svg") no-repeat;
	background-size: cover;
}
li:nth-child(3) .ftr-link-btn:hover::before{
	background: url("/shared/img/ftr-icon03-o.svg") no-repeat;
	background-size: cover;
}
.ftr-link-btn::after{
	content: '';
	width: 6px;
	height: 10px;
	background: url("/shared/img/ftr-arw.svg") no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 24px;
}
.ftr-link-btn:hover::after{
	background: url("/shared/img/ftr-arw-w.svg") no-repeat;
	background-size: cover;
}
/* ftr-sitemap
-------------------------------------------------------------*/
#ftr-sitemap{
	background-color: var(--gray3);
	padding: 30px 0 16px;
	box-sizing: border-box;
	border-bottom: 1px solid var(--gray1);
}
#ftr-sitemap a{
	font-size: 1.4rem;
	font-weight: 400;
	color: var(--textColor);
	line-height: 160%;
	position: relative;
	transition-duration: .2s;
}
#ftr-sitemap a:hover{color: var(--primaryColor);}
#ftr-sitemap .ftr-sitemap-list + .ftr-sitemap-list{margin-top: 24px;}
#ftr-sitemap .ftr-sitemap-list dt a,
#ftr-sitemap .ftr-sitemap-list li.item a{
	display: block;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	padding-bottom: 2px; 
	border-bottom: 1px solid var(--gray1);
	margin-bottom: 8px;
}
#ftr-sitemap .ftr-sitemap-list dd li + li{margin-top: 8px;}
#ftr-sitemap .ftr-sitemap-list dd .ftr1st>li + li{margin-top: 16px;}
#ftr-sitemap .ftr-sitemap-list dd .ftr2nd>li + li{margin-top: 8px;}
#ftr-sitemap .ftr-sitemap-list dd .ftr2nd{margin-top: 8px;}
#ftr-sitemap .ftr-sitemap-list dd .ftr2nd>li a::before{
	content: '－';
	color: var(--gray1);
}

/* ftr-sub-menu
-------------------------------------------------------------*/
#ftr-sub-menu ul{
	display: flex;
	column-gap: 16px;
	padding: 16px 0 10px;
	box-sizing: border-box;
}

/* ftr-address
-------------------------------------------------------------*/
#ftr-address{
	background-color: var(--gray3);
	padding: 10px 0;
	box-sizing: border-box;
}
#ftr-address .ftr-address-box{
	display: flex;
	align-items: center;
	column-gap: 24px;
}
#ftr-address .ftr-logo{width: 202px;}
#ftr-address p{
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: 160%
}

/* ftr-copyright
-------------------------------------------------------------*/
#ftr-copyright{
	background: #000;
	color: #fff;
	padding: 10px 0;
	box-sizing: border-box;
}
#ftr-copyright p{
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 200%;	
}
/* ftr-pagetop
-------------------------------------------------------------*/
#ftr-pagetop{
	visibility:hidden;
	position:fixed;
	right:20px;
	bottom:20px;
	z-index:11;
	opacity:0;
	transition:all 0.4s ease-out;
}
#ftr-pagetop.show{
	visibility:visible;
	opacity:1;
}
#ftr-pagetop.bottom{
	position:absolute;
	top:-80px;
	bottom:auto;
}
#ftr-pagetop a{
	display:block;
	width:60px;
	height:60px;
	position: relative;
}
#ftr-pagetop a img{width: 100%;}
#ftr-pagetop a img {
	display: block;
	width: 60px;
	height:60px;
	height: auto;
	transition: opacity 0.3s ease;
}

#ftr-pagetop a img:hover {
    content: url('/shared/img/pagetop-o.svg');
}
/*=============================================================
 bottom-block
=============================================================*/
.bottom-block{margin-top: 50px;}
.bottom-block figure{
	height: 155px;
	overflow: hidden;
}
.bottom-block img{
	object-fit: cover;
	height: 100%;
	width: 100%;
}


/* -----------------------------------------------------------
　PC Only 1024px～
-------------------------------------------------------------*/
@media only screen and (min-width:900px){
/*=============================================================
 header
=============================================================*/

}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:899px){
/*=============================================================
 footer
=============================================================*/
/* ftr-member-menu
-------------------------------------------------------------*/
#ftr-member-menu{
	padding: 40px 0 50px;
}
#ftr-member-menu .ttl{
	font-size: 1.8rem;
	margin-bottom: 24px;
}
#ftr-member-menu .col-3{display: block;}
#ftr-member-menu .col-3>li{width: 100%;}
#ftr-member-menu .col-3>li + li{margin-top: 16px;}
	
/* ftr-link-btn */
.ftr-link-btn{padding: 20px 38px 20px 58px;}
	
/* ftr-pagetop
-------------------------------------------------------------*/
#ftr-pagetop{right:10px;}
#ftr-pagetop.bottom{top:-60px;}
#ftr-pagetop a{
	width:40px;
	height:40px;
}
/* ftr-sitemap
-------------------------------------------------------------*/
#ftr-sitemap{border: none;}	
#ftr-sitemap .col-3{display: block;}
#ftr-sitemap .col-3>*{width: 100%;}	
	
#ftr-sitemap{padding: 16px 0 0;}
#ftr-sitemap .ftr-sitemap-list + .ftr-sitemap-list{margin-top: 0;}
#ftr-sitemap .ftr-sitemap-list dt a,
#ftr-sitemap .ftr-sitemap-list li.item a{
	font-size: 1.5rem;
	padding:16px 0; 
	border-bottom: 1px solid var(--gray1);
	margin-bottom: 0;
}
#ftr-sitemap .ftr-sitemap-list dt a::after,
#ftr-sitemap .ftr-sitemap-list li.item a::after{
	content: '';
	width: 6px;
	height: 10px;
	background: url("/shared/img/ftr-arw.svg") no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;	
}	
#ftr-sitemap .ftr-sitemap-list dt a:hover,
#ftr-sitemap .ftr-sitemap-list li.item a:hover{text-decoration: none;}	
#ftr-sitemap .ftr-sitemap-list dd{display: none;}	

/* ftr-sub-menu
-------------------------------------------------------------*/
#ftr-sub-menu ul{
	display: flex;
	justify-content: center;
	padding: 18px 0;
}

/* ftr-address
-------------------------------------------------------------*/
#ftr-address{padding: 10px 0 24px;}
#ftr-address .ftr-address-box{
	display: block;
	text-align: center;
}
#ftr-address .ftr-logo{
	margin: 0 auto; 
}

/* ftr-copyright
-------------------------------------------------------------*/
#ftr-copyright{padding: 16px 0;}
#ftr-copyright p{text-align: center;}

/* ftr-pagetop
-------------------------------------------------------------*/
#ftr-pagetop{right:10px;}
#ftr-pagetop.bottom{top:-45px;}

/*=============================================================
 bottom-block
=============================================================*/
.bottom-block{
	margin-top: 40px;
	margin-left: -16px;
	margin-right: -16px;
}
.bottom-block figure{
	height: 110px;
	overflow: hidden;
}
.bottom-block img{
	object-fit: cover;
	height: 100%;
	width: 100%;
}		
	
}
@media print {
	#footer{display: none;}

}