@charset "utf-8";

/* モバイルメニュー
------------------------------*/
/* background */
.drawer--left .drawer-hamburger {
	display: none;
	top: 5px;
	left: auto;
	right: 5px;
	width: 3rem;
	background: #F6F4C6;
	border-radius: 0;
	padding: 12px 8px 22px;
}
.drawer--left.drawer-open .drawer-hamburger {
	left: auto;
	right: 5px;
}
/* line */
.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	background-color: #857850;
}
.drawer-open .drawer-hamburger-icon:before {
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
.drawer-open .drawer-hamburger-icon:after {
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);
}
.drawer-overlay {
	background-color: rgba(0, 0, 0, .3);
}
.drawer-nav {
	display: none;
}
/* menu */
.drawer--left .drawer-nav {
	display: none;
	left: -260px;
	width: 260px;
	background: #FFF;
}
.drawer-menu {
	padding: 20px 10px;
}
.drawer--left .drawer-nav>li {
	margin-bottom: 50px;
}
.drawer--left.drawer-open .drawer-nav {
	left: 0;
}
.drawer-nav .contentslist {
	font-size: 1.2rem;
}
.sp-nav {
	margin-bottom: 30px;
}
.sp-nav>li {
	margin-bottom: 0;
}
.sp-nav a {
	display: block;
	background: url(../img/spnav_bg.jpg) left top no-repeat;
	padding: 24px 0 21px 25px;
	text-decoration: none;
	font-family: '游ゴシック', 'Yu Gothic', YuGothic,
		'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro',
		'メイリオ', Meiryo, sans-serif;
	font-weight: bold;
	color: #6FCFD7;
}
.sp-nav li::before {
	content: '';
	display: none;
	background: url(../img/spnav_bg01_on.jpg),
		url(../img/spnav_bg02_on.jpg),
		url(../img/spnav_bg03_on.jpg),
		url(../img/spnav_bg04_on.jpg),
		url(../img/spnav_bg05_on.jpg),
		url(../img/spnav_bg06_on.jpg),
		url(../img/spnav_bg07_on.jpg);
}
.sp-nav li a:hover {
	background: url(../img/spnav_bg01_on.jpg) left top no-repeat;
	color: #99D341;
}
.sp-nav li:nth-child(2) a:hover { background-image: url(../img/spnav_bg02_on.jpg); }
.sp-nav li:nth-child(3) a:hover { background-image: url(../img/spnav_bg03_on.jpg); }
.sp-nav li:nth-child(4) a:hover { background-image: url(../img/spnav_bg04_on.jpg); }
.sp-nav li:nth-child(5) a:hover { background-image: url(../img/spnav_bg05_on.jpg); }
.sp-nav li:nth-child(6) a:hover { background-image: url(../img/spnav_bg06_on.jpg); }
.sp-nav li:nth-child(7) a:hover { background-image: url(../img/spnav_bg07_on.jpg); }
.sp-banner {
	margin-bottom: 30px;
}
.sp-banner li {
	margin-bottom: 20px;
}
.h-tel a,
.s-tel a,
.c-tel a {
	font-weight: normal;
	text-decoration: none;
	color: #99D240;
}

/*===============================================
  画面の横幅が680px以下に適用
===============================================*/
@media screen and (max-width: 680px){
	body {
		min-width: 320px;
	}
	img {
		width: auto;
		height: auto;
		max-width: 100%;
		max-height: 100%;
	}
	table {
		table-layout:  auto;
	}
	.module.mod_text th,
	.module.mod_text td {
		padding: 11px 10px 8px;
	}
	.content .module.mod_text .scroll {
		overflow: auto;
		white-space: nowrap;
	}
	.content .module.mod_text .scroll::-webkit-scrollbar {
		height: 5px;
	}
	.content .module.mod_text .scroll::-webkit-scrollbar-track {
		background: #F1F1F1;
	}
	.content .module.mod_text .scroll::-webkit-scrollbar-thumb {
		background: #BCBCBC;
	}
	.drawer--left .drawer-hamburger,
	.drawer--left .drawer-nav {
		display: block;
	}
	.seotext span {
		display: none;
	}
    div.sbox-cen h1.stext {
        font-weight: normal;
    }
    div.sbox-cen p.summary {
        display: none;
    }
    body h1.seotext {
        padding-bottom: 0;
        font-size: 1.0rem;
    }
    body h1.seotext span {
        display: none;
    }
	/* header */
	#header {
		width: 100%;
		padding: 0 60px;
		margin: 0;
	}
	#header .boxhead {
		width: 100%;
		padding: 20px 0;
	}
	.logo {
		float: none;
		width: 200px;
		margin: 0 auto;
		text-align: center;
	}
	.header {
		display: none;
	}
	.gnav {
		display: none;
	}
	/* content */
	.main {
		width: 100%;
		padding: 30px 0;
	}
	.content {
		float: none;
		width: 92.6%;
		margin: 0 3.2%;
	}
	/* side */
	.side {
		float: none;
		width: 92.6%;
		margin: 0 3.2%;
	}
	.side .contentslist {
		display: none;
	}
	.side>p:not(.s-yoyaku),
	.side .s-info,
	.side .s-mail {
		display: none;
	}
	.s-banner {
		text-align: center;
	}
	/* footer */
	.footer {
		padding-bottom: 60px;
	}
	.fnav {
		padding: 0;
	}
	.fnav li {
		display: block;
		border-bottom: 1px solid #BDB68B;
	}
	.fnav li:first-child {
		border-top: 1px solid #BDB68B;
	}
	.fnav li+li {
		border-left: none;
	}
	.fnav li a {
		display: block;
		position: relative;
		padding: 17px 10px 15px;
		font-size: 1.4rem;
		font-weight: normal;
		text-align: left;
		text-decoration: none;
		display: block;
		-webkit-transition: .3s;
		transition: .3s;
	}
	.fnav li a::after {
		content: '';
		position: absolute;
		top: 17px;
		right: 20px;
		width: 10px;
		height: 10px;
		border-top: 2px solid #BDB68B;
		border-right: 2px solid #BDB68B;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		-webkit-transition: .3s;
		transition: .3s;
	}
	.fnav li a:hover::after {
		-webkit-transform: translateX(3px) rotate(45deg);
		transform: translateX(3px) rotate(45deg);
	}
	.f-text {
		padding: 0 20px;
	}
	.copyright {
		padding: 0 10px 10px;
	}
	.pagetop a {
		right: 5px;
		bottom: 5px;
	}
}
/*===============================================
  画面の横幅が480px以下に適用
===============================================*/
@media screen and (max-width: 480px){
	.mainimg p {
		overflow: hidden;
		text-align: initial;
	}
	.mainimg p img {
		position: relative;
		z-index: 1;
		top: 0;
		left: 50%;
		min-width: 140%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	br.sp {
		display: block;
	}
	br.pc {
		display: none;
	}
}