@charset "utf-8";

/* Footer
----------------------------------------------------------------------------------------------------*/
#footer-wrap a{
	text-decoration: none;
}
@media screen and (max-width: 575px){
	#footer-wrap .container-small{
		width: 82.05128205128205%;
	}
}
@media screen and (max-width: 1199px){
	#footer-wrap{
		padding-bottom: 10rem;
	}
}
@media screen and (min-width: 1200px){
	#footer-wrap{
		padding-bottom: 11.8rem;
	}
}

/* contact
--------------------------- */
.footer-contact-item{
	border-bottom: 1px rgba(255,255,255,0.50) solid;
}
.footer-contact-item a{
	display: block;
}
.footer-contact-item a:hover{
	color: #fff;
}
.footer-contact-item-inner{
	display: grid;
}
.footer-contact-item-inner-ttl{
	margin-bottom: 0;
	line-height: 1;
}
.footer-contact-item-inner-icon{
	border: 1px rgba(255,255,255,0.70) solid;
	border-radius: 2.3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	transition: .3s;
}
a:hover .footer-contact-item-inner-icon{
	background-color: #fff;
}
@media screen and (min-width: 576px){
	.footer-contact-wrap{
		display: flex;
	}
	.footer-contact-item{
		width: 50%;
	}
	.footer-contact-item:first-of-type{
		border-right: 1px rgba(255,255,255,0.50) solid;
	}
}
@media screen and (max-width: 1199px){
	.footer-contact-item a{
		padding-right: 8.974358974358974%;
		padding-left: 8.974358974358974%;
	}
	.footer-contact-item-inner-ttl .txtmin{
		font-size: 1.4rem;
	}
	.footer-contact-item-inner-ttl .efont{
		font-size: 3.2rem;
		margin-bottom: 2.4rem;
	}
	.footer-contact-item-inner{
		grid-template-columns: 1fr 8rem;
	}
	.footer-contact-item-inner-icon{
		height: 4rem;
	}
}
@media screen and (min-width: 1200px){
	.footer-contact-item a{
		padding-right: 21.11111111111111%;
		padding-left: 21.11111111111111%;
	}
	.footer-contact-item-inner{
		grid-template-columns: 1fr 10rem;
	}
	.footer-contact-item-inner-ttl .efont{
		font-size: 5rem;
		margin-bottom: 3rem;
	}
	.footer-contact-item-inner-ttl .txtmin{
		font-size: 1.6rem;
	}
	.footer-contact-item-inner-icon{
		height: 4.6rem;
	}
}

/* main
--------------------------- */
@media screen and (max-width: 991px){
	.footer-info{
		margin-bottom: 6.4rem;
	}
}
@media screen and (min-width: 992px){
	.footer-main{
		display: flex;
	}
	.footer-info{
		width: 39.76923076923077%;
		padding-right: 5%;
	}
	.footer-menu-list-wrap{
		width: 60.23076923076923%;
	}
	.footer-menu-list-wrap .common-header-footer-menu-wrap{
		padding-bottom: 3rem;
	}
}

/* logo add
--------------------------- */
.footer-logo a{
	transition: .3s;
}
.footer-logo a:hover{
	opacity: 0.6;
}
@media screen and (max-width: 1199px){
	.footer-logo{
		max-width: 20rem;
		margin-bottom: 2.6rem;
	}
	.footer-add{
		margin-bottom: 1.8rem;
	}
}
@media screen and (min-width: 1200px){
	.footer-logo{
		max-width: 22rem;
		margin-bottom: 4rem;
	}
	.footer-add{
		margin-bottom: 2.4rem;
	}
}

/* 追従
----------------------------------------------------------------------------------------------------*/
/*共通*/
.foot-menu-wrap{
	display: flex;
	position: fixed;
	z-index: 99;
}
.foot-menu-item a{
	display: block;
	transition: .3s;
}
.foot-menu-item:first-of-type a,.foot-menu-item:nth-of-type(3) a{
	background-color: #313131;
}
.foot-menu-item:nth-of-type(2) a{
	background-color: #aaa;
}
.foot-menu-item a:hover{
	background-color: #eeefea;
	color: #313131;
}
/*sp/pc*/
@media screen and (max-width: 767px){
	.foot-menu-wrap{
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
		z-index: 99;
		display: flex;
		font-size: 1.4rem;
	}
	.foot-menu-item{
		width: calc(100% / 3);
		letter-spacing: 0.08em;
	}
	.foot-menu-item a{
		display: flex;
		min-height: 5.6rem;
		justify-content: center;
		align-items: center;
	}
}
@media screen and (min-width: 768px){
	.foot-menu-wrap{
		flex-direction: column;
		top: 30%;
	}
	.view+.foot-menu-wrap{
		flex-direction: column;
		top: 30%;
		-webkit-filter: drop-shadow(0 0 4px rgba(255,255,255,0.2));
		        filter: drop-shadow(0 0 4px rgba(255,255,255,0.2));
	}
	.foot-menu-item a .d-block{
		-webkit-writing-mode: vertical-rl;
		    -ms-writing-mode: tb-rl;
		        writing-mode: vertical-rl;
		min-height: 15rem;
	}
}
@media screen and (min-width:768px) and (max-width:1199px){
	.foot-menu-wrap{
		right: 2%;
		width: 4rem;
	}
	.foot-menu-item a .d-block{
		line-height: 4rem;
		min-height: 12rem;
	}
}
@media screen and (min-width: 1200px){
	.foot-menu-wrap{
		right: 2.777777777777778%;
		width: 4.6rem;
	}
	.foot-menu-item a .d-block{
		line-height: 4.6rem;
		min-height: 15rem;
	}
}
