/* vim:set ts=4 sts=4 sw=4 bs=2 ai si noet nu ff=dos ft=css: */
/* $Id$ */
/* Last Change: 30-September-2019 16:20:25. */

@media screen and (max-width: 999px) {
#outside {
	min-width: 640px;
}

	#header {
		margin-top: 132px;
	}
	#header #main {
		width: 100%;
/* 		background: none; */
	}

	#gnavi {
		display: table;
		position: fixed;
		top: 0;
		left: 0;
		background-color: rgba(255,255,255,0.9);
		height: 130px;
		width: 100%;
		min-width: 640px;
		padding: 1em;
		z-index: 10000;
	}

	#gnavi_menulist {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		background-color: white;
	}

	#gnavi_bg {
	}

		#gnavi .logo_sp {
			display: table-cell;
			width: 40%;
		}

		#gnavi .logo_sp a {
			position: fixed;
			z-index: 100;
			top: 1em;
			display: inline-block;
			width: 120px;
			height: 96px;
		}

		#gnavi .logo_sp img {
			height: auto;
		}

		#gnavi > .wrap {
			width: 60%;
			display: table-cell;
		}

		#gnavi .wrap > ul {
			display: table;
			table-layout: fixed;
			margin-right: 0;
			margin-left: auto;
			width: auto;
		}

		#gnavi .wrap > ul li {
			display: table-cell;
			text-align: right;
			padding-left: 0.5em;
		}

			#gnavi li a {
			}

					#gnavi a.mail {
						position: relative;
						border: 1px solid gray;
						border-radius: 10px;
						display: inline-block;
						background: url(../images/svg/mail_sp.svg) no-repeat center 20px;
						width: 106px;
						height: 96px;
						background-size: 50%;
						box-shadow: #aaa 4px 4px 4px;
						text-align: center;
					}

					#gnavi a.tel {
						position: relative;
						border: 1px solid gray;
						border-radius: 10px;
						display: inline-block;
						background: url(../images/svg/tel_sp.svg) no-repeat center 10px;
						width: 106px;
						height: 96px;
						background-size: 50%;
						box-shadow: #aaa 4px 4px 4px;
						text-align: center;
					}

					#gnavi a.tel span,
					#gnavi a.mail span {
						position: absolute;
						bottom: 0.7em;
						left: 0;
						right: 0;
					}

#gnavi_menulist {
	position: fixed;
	color: #B6BAB7;
	font-size: 160%;
	padding: 140px 1em;
	overflow-y: scroll;
}

		#gnavi_menulist ul,
		#gnavi_menulist li {
			list-style-type: none;
			margin-bottom: 0.6em;
		}


		#gnavi_menulist a:link,
		#gnavi_menulist a:visited,
		#gnavi_menulist a:hover,
		#gnavi_menulist a:active {
			color: #B6BAB7;
			text-decoration: none;
		}


	#gnavi_menulist .wrap .title {
		text-decoration: none;
		padding: 0.5em;
		margin-bottom: 1em;
		background-color: #ecebeb;
		border-radius: 10px;
		color: #4B4C4D;
	}
	#gnavi_menulist .title2 {
		margin-bottom: 0.6em;
	}

	#gnavi_menulist .title3 {
		padding-bottom: 0.5em;
		margin-bottom: 0.5em;
		border-bottom: 1px solid gray;
	}

	#gnavi_menulist .bukken > ul,
	#gnavi_menulist .fudousan > ul {
/* 		display: none; */
	}

	#gnavi_menulist .fudousan > ul ul.cols > li {
		margin-bottom: 1em;
	}

.spmenu_wrap {
	position: relative;
	display: inline-block;
	border: 1px solid gray;
	border-radius: 10px;
	width: 106px;
	height: 96px;
	background-size: 68%;
	box-shadow: #aaa 4px 4px 4px;
	margin-left: auto;
	margin-right: 0;
}

.spmenu{
    height: 80px;
    position: absolute;
    right: 20px;
    top: 20px;
    width: 60px;
    z-index: 99;
}
.spmenu__line{
    background: #c1bab8;
    display: block;
    height: 8px;
    position: absolute;
    transition:transform .3s;
    width: 100%;
}
.spmenu__line.active{
    background: #000;
    transition:transform .3s;
}
.spmenu__line--center{
    top: 24px;
}
.spmenu__line--bottom{
    bottom: 23px;
}
.spmenu__line--top.active{
    top: 25px;
    transform: rotate(45deg);
}
.spmenu__line--center.active{
    transform:scaleX(0);
}
.spmenu__line--bottom.active{
    bottom: 47px;
    transform: rotate(135deg);
}

	#header #hd_navi_sp {
		display: none;
	}

	#header #hd_navi {
		display: none;
	}

	#contents #rail {
		display: none;
	}

#contents .disp_table {
	display: block;
	width: 100%;
}

#contents .disp_cell {
	display: block;
}

#town_wrap {
	margin-bottom: -20px;
}

	#town_rail {
		display: none;
	}
	#town {
		display: table-cell;
		width: 100%;
		text-align: right;
	}
	#town img {
		width: 100%;
	}

#footer_bg {
	padding-top: 40px;
}

	#footer {
		font-size: 140%;
		padding: 1em;
	}

	#footer_rail {
		display: none;
	}

	#footer .table {
		display: block;
	}

	#footer .cell {
		display: block;
	}

	#footer .wrap {
		display: block;
	}

	#footer .wrap .title {
		text-decoration: none;
		padding: 0.5em;
		background-color: #ecebeb;
		border-radius: 10px;
		color: #4B4C4D;
	}

	#footer .bukken {
		display: block;
		width: 100%;
	}

	#footer .bukken > ul {
/* 		display: block; */
	}

	#footer .bukken > ul > li {
/* 		display: block; */
	}

	#footer .fudousan {
		display: block;
		width: 100%;
	}

	#footer .fudousan > ul {
		display: block;
	}

	#footer .fudousan > ul > li {
		display: block;
	}

	#footer .fudousan > ul > li.left {
		width: 100%;
	}

	#footer .fudousan > ul > li.right {
		width: 100%;
	}

	#footer .fudousan > ul ul.cols {
		display: block;
	}

	#footer .fudousan > ul ul.cols > li {
		display: block;
		margin-bottom: 1em;
	}

	#footer figure#ft_logo {
		width: 35%;
		max-width: 140px;
		margin: 0 auto;
		max-width: none;
	}

	#footer #address {
		text-align: center;
	}

	#footer #copyright {
		text-align: center;
		font-size: 90%;
	}

}
