@charset "utf-8";
/* --------------------------------------------
	バナー
---------------------------------------------- */
.banner {
	display: flex;
	align-items: center;
	width: 100%;
	height: 235px;
	background-color: var(--c-gray);
}

.banner .banner__wrap {
    display: grid;
    grid-template-columns: repeat(auto-fill, 140px);
    gap: 10px;
    justify-content: center;
	align-items: center;
	width: 93.75%;
    max-width: 1200px;
    list-style: none;
    margin: 0 auto;
}
.banner .banner__wrap a {
    background: #fff;
    width: 100%;
}
.banner__wrap a img {
	width: 100%;
	height: auto;
}
.banner .banner__wrap a:nth-child(4){
	padding-top: .5em;
}


/* ------------------------------------------
	footer__wrap
 ------------------------------------------ */
.footer__wrap {
	padding: 4em 5em 2em;
	color: var(--c-white);
	background-color: var(--c-gray-deep);
}

/* ------------------------------------------
	footer__content
 ------------------------------------------ */
.footer__content {
	display: grid;
	grid-template-columns: 35% 25% 40%;
	grid-template-rows: 1fr;
	max-width: 1440px;
	margin: 0 auto 1em;
}
@media screen and (max-width:1270px){
	.footer__content {
		grid-template-columns: 35% 30% 35%;
	}
}
@media screen and (max-width:1059px){
	.footer__content {
	font-size: var(--fz-s);
}
}
/* ------------------------------------------
	住所、休館日
 ------------------------------------------ */
.footer__address {
	grid-area: 1 / 1 / 2 / 2;
	padding-right: 1em;
}
.footer__address .name {
	margin-bottom: 1.5rem;
	font-size: var(--fz-xl);
	letter-spacing: 0.05em;
}
.address__link {
	display: inline-block;
	margin: 1rem 0 1.5em;
	letter-spacing: 0.01em;
	color: var(--c-white);
	border-bottom: 1px solid var(--c-white);
	transition: all .3s;
}
.address__link:hover {
	color: var(--c-red);
	border-bottom: 1px solid var(--c-red);
}
.address__closed {
	margin: 1.5em 0 .5em;
	padding-left: 4em;
    text-indent: -4em;
}

/* ------------------------------------------
	フッターリンク
 ------------------------------------------ */
.footerSns__list {
	display: flex;
	gap: 1.5em;
	margin: 2em 0 1em;
	align-items: center;
}
.footerSns__list a img {
	width: 28px;
	padding-bottom: 3px;
}

/* ------------------------------------------
	フッターリンク
 ------------------------------------------ */
.footer__menu {
	grid-area: 1 / 2 / 2 / 3;
	margin-top: 2.3em;
}
.footerMenu__list li {
	margin: 1.3em 0;
}
.footerMenu__list a {
	color: var(--c-white);
}

/* ------------------------------------------
	各種申請
 ------------------------------------------ */
.footer__request {
	grid-area: 1 / 3 / 2 / 4;
	height: 200px;
	margin-top: 2.3em;
	padding-top: 1em;
	padding-left: 3em;
	border-left: 1px solid var(--c-white);
}
.footer__request .title {
	margin-bottom: 1em;
}
.request__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: .8em;
	column-gap: .5em;
	max-width: 470px;
}
.request__item {
	display: block;
	width: 230px;
}
.request__item .btn__rd.-wh {
	padding-right: 2em;
	padding-left: 2em;
}
.request__item .btn__rd.-wh:hover {
	background: none;
	border: 1px solid var(--c-white);
}
@media screen and (max-width:1270px){
	.footer__request {
		height: 320px;
	}
	.request__list {
		display: block;
	}
	.request__list li {
		display: block;
		width: 100%;
		margin-bottom: 1rem;
	}
}
/* ------------------------------------------
	copylight
 ------------------------------------------ */
.copylight {
	max-width: 1440px;
	margin: 0 auto;
	font-size: var(--fz-xs);
}



/* ------------------------------------------
	レスポンシブ全体調整
 ------------------------------------------ */
@media screen and (max-width:1030px){
	.footer__wrap {
	padding: 4em 2em 2em;
}
}

@media screen and (max-width:880px){
.footer__content {
	display: block;
}
.footer__menu {
	margin-top: 3em;
	padding-top: 1.5em;
	border-top: 1px solid var(--c-white);
}
.footer__request {
	height: auto;
	margin: 3em 0 5em;
	padding: 3em 0 0;
	border-left: none;
	border-top: 1px solid var(--c-white);
}
.request__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: .8em;
	column-gap: .5em;
	max-width: 470px;
	margin: 0 auto;
}
.request__list li {
    margin-bottom: 0;
}
.copylight {
	max-width: none;
	text-align: center;
}

.banner {
	height: auto;
	padding: 3em 0;
}
.footer__wrap {
    padding: 3em 2em 2em;
}
.footer__address {
    padding-right: 0;
}
.request__list li {
    letter-spacing: 0.02em;
	line-height: 1.2;
}
.request__list li a {
	display: flex;
    align-items: center;
    justify-content: center;
	height: 50px;
	font-size: var(--fz-xs);
}
.copylight {
    font-size: var(--fz-xxs);
    letter-spacing: 0.03em;
}
}