footer img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: bottom;
}

.footer {
	background-image: url(images/footer-bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
}
.footer *,
.footer *::before,
.footer *::after {
	box-sizing: border-box;
}
.footer__inner {
	width: 760px;
	max-width: 100%;
	margin: auto;
}
.footer li {
	display: list-item;
  	list-style: none;
}
.footer .footer-menu {
	padding: 40px 0 30px;
}
.footer .footer-menu ul {
	justify-content: center;
	display: flex;
	flex-wrap: wrap;
	color: #ffffff;
	padding: 0;
	margin: 0 auto;
	gap: 10px;
}
@media (max-width: 767px) {
	.footer .footer-menu ul {
		padding: 0 20px;
	}
	.footer .footer-menu ul > li {
		width: calc(100% / 2 - 10px * 1 / 2);
	}
}
.footer .footer-menu a {
	text-decoration: none;
	color: #000000;
}
.footer .footer-menu li {
	border-left: 2px solid #000000;
	padding-left: 10px;
	font-size: 14px;
	font-weight: 600;
	flex-grow: 1;
	width: calc(100% / 4 - 10px * 3 / 4);
}
@media (min-width: 768px) {
	.footer .footer-menu li.flink-narrow {
		width: inherit;
		min-width: 9em;
		margin-right: -30px;
	}
}
.footer .footer-menu li a{
	font-size: 14px; /*一部の下層ページではここに指定が必要 */
	font-weight: 600;
}
.footer .footer-links {
	text-align: center;
}
.footer .footer-links ul {
	display: flex;
	justify-content: center;
	gap: 6px;
	padding: 0 20px;
	margin: 0;
}
@media (max-width: 600px) {
	.footer .footer-links ul {
		flex-wrap: wrap;
	}
	.footer .footer-links ul li {
		width: calc(33.3% - 4px);
	}
	.footer .footer-links ul li img {
		width: 100%;
	}
}
.footer .copyright {
	font-family: 'Sofia Sans Extra Condensed', sans-serif;
	color: #000000;
	text-align: center;
	margin: 0;
	font-size: 12px;
	font-weight: bold;
	padding: 16px 0 32px;
}
.g-nav-wrapper {
	display: none;
}
@media (max-width: 767px) {
	.g-nav-wrapper {
		display: block;
	}
	/* ハンバーガーメニュー */
	#g-nav {
		/* 最前面にいるがクリックできない（headerがfixedしているページで不自然な動きになるため） */
		position: fixed;
		z-index: 999;
		pointer-events: none;
		opacity: 0; /*はじめは透過0*/
		/*ナビの位置と形状*/
		top: 0;
		width: 100%;
		height: 100vh; /*ナビの高さ*/
		background-color: rgba(0, 0, 0, 0.9);
		/*動き*/
		transition: all 0.3s;
	}
	/*アクティブクラスがついたら不透明にしてクリック可能にする*/
	#g-nav.panelactive {
		opacity: 1;
		pointer-events: auto;
	}
	/*ナビゲーションの縦スクロール*/
	#g-nav.panelactive #g-nav-list {
		/*ナビの数が増えた場合縦スクロール*/
		position: fixed;
		z-index: 999;
		width: 100%;
		height: 100vh; /*表示する高さ*/
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	#g-nav.panelactive #g-nav-list ul{
		padding:0;
	}
	/*ナビゲーション*/
	#g-nav ul {
		display: none;
		/*ナビゲーション天地中央揃え*/
		position: absolute;
		z-index: 999;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	#g-nav.panelactive ul {
		display: block;
	}
	/*リストのレイアウト設定*/
	#g-nav li {
		list-style: none;
		text-align: center;
	}
	#g-nav li a {
		text-decoration: none;
		padding: 10px;
		display: block;
		text-transform: uppercase;
		letter-spacing: 0.1em;
		font-weight: bold;
		color: #FFFFFF;
	}
	/*========= ボタンのためのCSS ===============*/
	.g-nav-btn {
		display: none;
		position: fixed;
		z-index: 9999; /*ボタンを最前面に*/
		bottom: 10px;
		left: 10px;
		cursor: pointer;
		width: 50px;
		height: 50px;
		border-radius: 5px;
		background: #000000;
	}
	/*×に変化*/
	.g-nav-btn span {
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 2px;
		border-radius: 2px;
		background-color: #ADD700;
		width: 45%;
	}
	.g-nav-btn span:nth-of-type(1) {
		top: 15px;
	}
	.g-nav-btn span:nth-of-type(2) {
		top: 23px;
	}
	.g-nav-btn span:nth-of-type(3) {
		top: 31px;
	}
	.g-nav-btn.active span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
	}
	.g-nav-btn.active span:nth-of-type(2) {
		opacity: 0;
	}
	.g-nav-btn.active span:nth-of-type(3) {
		top: 30px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
	}
	/*fadeDownクラスが付与された後のボタンの出現アニメーション設定*/
	.fadeDown {
		animation-name: fadeDownAnime;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		opacity: 0;
		display: block;
	}
	@keyframes fadeDownAnime {
		from {
			opacity: 0;
			transform: translateY(-30px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}
}
/*KP田中書き足し*/
div#topcontrol {
	z-index: 10;
	width: 70px;
}
div#topcontrol img{
	width:100%;
	display: block;
}
@media (max-width: 767px) {
/*KP田中書き足し*/
div#topcontrol {
	z-index: 9998;
	width: 50px;
	bottom: 10px !important;
}
}
.swiper-wrapper {
	align-items: stretch !important;
}
.swiper-slide {
	height: auto;
}
.bannerbox {
	padding: 0 !important;
	margin: 0 auto;
	margin-top: 20px;
	text-align: center
}

/* 開発用 広告バナータイプダミー */
div.ad-dummy{
	margin: auto;
	color: #aaa;
	background-color: #ccc;
	text-align: left;
	width: 728px;
	height: 90px;
}

@media (max-width: 767px) {
	div.ad-dummy{
		width: 320px;
		height: 50px;
	}
	/*2023-05-01書き足し*/
#topcontrol img {
    width: 100% !important;
    height: auto !important;
}
}
@media (max-width: 390px) {
	#g-nav li a {
		padding: 6px !important;
	}
}
