
/* ---------------------------------------------------------
■ header
--------------------------------------------------------- */

header{
 position: fixed;
 top: 0;
 width: 100%;
 z-index: 50;
 background-color:#000;
 transition: .2s;
}

.header_area{
 display:flex;
 flex-wrap:wrap;
 padding:.4rem 4rem;
}
.top_logo{width:10rem;}
.header_bottom{height:3.8rem;}

@media only screen and (max-width:767px) {
.header_area{padding:.4rem 2rem;}
.top_logo{width:13rem;}
.header_bottom{height:5.2rem;}
}


/* ---------------------------------------------------------
■ TO top
--------------------------------------------------------- */

#page_top{
	position:fixed;
	right:40px;
	bottom:65px;
	opacity: 0;
	transition:.3s;
	z-index: 20;
}
#page_top span{
	position: relative;
	color:#fff;
}
#page_top span::after{
	content: "";
	position: absolute;
	top:-12px;
	right:28%;
	width:10px;
	height:10px;
	border-top:3px solid #fff;
	border-right:3px solid #fff;
	transform:rotate(-45deg);
}

#page_top.show{
	opacity: 1;
}

@media only screen and (max-width: 580px) {
	#page_top{
		padding:15px 10px 5px;
		right:15px;
  bottom:40px;
		border-radius: 5px;
		background-color: rgba(0,0,0,.3);
	}
	#page_top span::after{
		top:-10px;
		width:8px;
		height:8px;
		border-top:1px solid #fff;
		border-right:1px solid #fff;
	}
	#page_top span{
		font-size:11px;
	}
}


/* ---------------------------------------------------------
■ footer
--------------------------------------------------------- */

footer{
 width:100%;
 background-color:rgba(0,0,0,.8);
 color:#fff;
 font-family: "Noto Sans JP", sans-serif;
 font-size:.75rem;
 text-align:center;
 padding:.6rem 0;
 clear:left;
 margin-top: auto;
}
.footer_menu{
 display:flex;flex-wrap:wrap;
 gap:0 .5rem;
 justify-content:center;
 padding-bottom:.3rem;
}

.footer_menu a{
	display:block;
	color:#fff;
	text-decoration: underline;
 transition:.2s;
}
@media only screen and (min-width:768px) {
 .footer_menu a:hover{text-decoration:none;opacity:.6;}
}

address {font-size:90%;font-style:normal;letter-spacing:.025em;}

@media only screen and (max-width:767px) {
 footer{font-size:1.3rem;}
 .footer_menu{padding-bottom:.6rem;}
}



