/* =======================================================================
 タブレット用スタイル
========================================================================== */
@media screen and (max-width: 959px) {

img, object {
	max-width: 100%;
	height: auto;
}
.inner {
	width:auto;
	padding:0 10px;
}
.inner-article {
	margin:0;
}
nav ul {
	border-spacing:0;
}
nav ul li a {
	font-size:0.9em;
}
#upper-inner {
	height: auto !important;
}
#upper-inner #upper-area {
	position: static;
	transform: none;
	-webkit-transform: none;
	-ms-transform: none;
	width: auto;
	padding: 20px 0;
}

#top-middle-menu {
	display: flex;
	flex-wrap: wrap;
}
#top-middle-menu a,#top-middle-menu a.en-menu {
	width: 46%;
	margin: 0 2%;
}

.article-line .article-line-map {
	width:350px;
	padding:0 20px;
}

.setsubi-line {
	display:block;
}
.setsubi-line .setsubi-line-txt,.setsubi-line .setsubi-line-img {
	display:block;
}
.setsubi-line .setsubi-line-img {
	width:auto;
	padding:20px 0 0 0;
}
.setsubi-line-img ul li {
	float:left;
	width:29%;
	margin:0 2%;
}

}


/* =======================================================
●smart画面の横幅が680pxまで
========================================================== */
@media screen and (max-width:680px){

.inner {
	width:auto;
	padding:0 5px;
}

#head-inner {
	padding:30px 0 10px 0;
}
#head-title {
	float: none;
	width: 100%;
	padding: 0 0 0 0;
	text-align: center;
}
#toggle {
	display: block;
	position: relative;
	text-align:center;
	background-color: #83879a;
	padding: 5px;
}
#head-inner #head-telnum {
	position: static;
	width: 100%;
	line-height: 1.7em;
	padding: 0 0 0 0;
}

#toggle a {
	display: block;
	color: #333;
	font-weight: bold;
	text-decoration: none;
	background-color: #fff;
	background-image: url(../images/icon-sphone-menu.png);
	background-repeat: no-repeat;
	background-position: 10px center;
	padding: 5px 0;
	text-align:center;
}

#menu {
	display:none;
}
nav {
	background-image: none;
	background-color: #83879a;
	padding:0;
}
nav ul {
	display: block;
}
nav ul li {
	display: block;
}
nav ul li a {
	padding: 10px 0;
}
nav ul li a.page-on {
	border-radius: 0 0 0 0;
}
nav #bottom-line {
	display: none;
}

#top-image #top-msg {
	position:static;
	background-color: rgba(255,255,255,1);
	font-size:1.2em;
	padding:10px 0;
	border-left:none;
	border-bottom:solid 1px #00A0C6;
	text-align: center;
}
#upper-inner {
	height:auto !important;
}
#upper-inner #upper-area {
	position: static;
	padding: 10px;
	width: auto;
}
#upper-area #upper-area-inner {
	background-color: #fff;
	margin: 0;
	padding: 10px;
}
#upper-area-inner h2 {
	font-size:1.1em;
	margin: 0 0 1em 0;
}
#upper-area-inner h2 br {
	display: inline;
}
#upper-article {
	display: block;
}
#upper-article #upper-img,#upper-article #upper-txt {
	display: block;
}
#upper-article #upper-img {
	width: auto;
	text-align: center;
}
#upper-article #upper-txt {
	padding: 0 0 0 0;
	font-size: 0.9em;
}

#top-middle-menu {
	display: flex;
	flex-direction: column;
}
#top-middle-menu a,#top-middle-menu a.en-menu {
	width: 94%;
	margin: 0 3%;
}

#footer #footer-upper {
	display: block;
}
#footer-upper #footer-address,#footer-upper #footer-address-en,#footer-upper #footer-menu {
	display: block;
}
#footer-upper #footer-address,#footer-upper #footer-address-en {
	width:auto;
}
#footer-upper #footer-menu {
	padding: 10px 0 0 10px;
}
#footer-menu ul li {
	float: none;
	margin: 0 0 10px 0;
}

#page-article h2 {
	font-size:1.5em;
	padding:0;
}

.article-line {
	display:block;
}
.article-line .article-line-txt,.article-line .article-line-img,.article-line .article-line-map {
	display:block;
}
.article-line .article-line-img,.article-line .article-line-map {
	width:auto;
	padding:10px 0;
	text-align:center;
}
.article-line .article-line-img img,.article-line .article-line-map img {
	width:auto;
	height:auto;
}

#spot-pc {
	display:none;
}
#spot-sp {
	display:block;
}
#spot-sp ul {
	list-style:none;
}
#spot-sp ul li {
	display:block;
	text-align:center;
	margin:0 0 20px 0;
}

.etc-spot {
	display:block;
	padding:5px;
}
.etc-spot .etc-spot-img,.etc-spot .etc-spot-txt {
	display:block;
}
.etc-spot .etc-spot-img {
	width:auto;
	text-align:center;
	padding:0 0 0 0;
}
.etc-spot .etc-spot-txt {
	padding:0 0 20px 0;
}

.setsubi-line-img ul li {
	float:none;
	width:auto;
	margin:0 0 10px 0;
}
dl.setsubi dt {
	float:none;
	font-weight:bold;
}
dl.setsubi dd {
	margin:0 0 10px 0;
}

.spot-line {
	flex-direction: column;
}
.spot-line a {
	width:96%;
	margin:0 2% 20px 2%; 
	padding:10px;
}

.border-table {
	width:100%;
	overflow-x:auto;
}
.border-table table th,.border-table table td {
	white-space:nowrap;
}

.small-menu a {
	display:block;
	background-color:#f0f0f0;
	padding:5px;
	margin:0;
	border-radius:0;
	border-bottom:1px solid #00A0C6;
	font-size:0.9em;
}
.small-menu a:hover {
	background-color:#00A0C6;
	color:#fff;
	text-decoration:none;
}
.small-menu a.page-on {
	background-color:#00A0C6;
	color:#fff;
	text-decoration:none;
}

.reserve-tel {
	display:block;
}

}