@charset "utf-8";
/* HEADER*/
#fade {
	width: 100%;
	height: 100%;
	min-height: 100%;
	background: #FFF;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 9999 !important;              /* #loaderより少ない値を入れて下さい */
}
#progressBarWrap {
	width: 200px !important;
	height: 2px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 99999;
	transform: translateY(-50%) translateX(-50%);
 -webkit- transform: translateY(-50%) translateX(-50%);
	background: #EEE;
}
#progressBar {
	width: 0;
	height: 2px;
	position: fixed;
	background: #80B927;
	z-index: 99999;
}
#loader {
	width: 23px;
	height: 23px;
	position: fixed;
	_position: absolute;     /* IE6対策 */
	top: 50%;
	left: 50%;
	margin-top: -10px;       /* heightの半分のマイナス値 */
	margin-left: -10px;      /* widthの半分のマイナス値 */
	z-index: 99999;             /* #fadeより多い値を入れて下さい */
}
#progressTxt {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
 -webkit- transform: translateY(-50%) translateX(-50%);
	z-index: 99999999;             /* #fadeより多い値を入れて下さい */
	font-family: 'Oswald', sans-serif !important;
	font-size: 100px;
	color: #FFF;
	letter-spacing: 3px;
}
body {
	margin: 0;
}
img {
	max-width: 100%;
}
p {
	color: #333;
	line-height: 1.7;
}
#header:before, #header:after {
	content: "";
	display: block;
	clear: both;
	overflow: hidden;
}
#header {
	max-width: 1200px;
	margin: 0 auto;
}
header {
	position: fixed;
	width: 100%;
	top: 0;
	background: #FFF;
	z-index: 999;
}
p.logo {
	float: left;
	padding: 10px 15px 0 30px;
	box-sizing: border-box;
	position: relative;
	z-index: 9999;
}
p.logo2 {
	float: left;
	padding: 62px 20px 0 0;
	box-sizing: border-box;
	position: relative;
	z-index: 9999;
}
p.blackout {
	float: left;
	margin: 50px 0 0 0;
	box-sizing: border-box;
	position: relative;
	z-index: 9999;
}
p.blackout a {
	padding: 10px 25px 10px 55px;
	background: #F9EB70 url(../img/icon/thunder.png) no-repeat 25px 50%;
	background-size: 15px;
	font-weight: bold;
	border-radius: 50px;
}
.topnav {
	float: right;
	box-sizing: border-box;
	text-align: right;
}
@media only screen and (max-width:769px) {
header {

}
p.blackout {
	display: none;
}
p.logo {
	float: none;
	width: auto;
	padding: 10px 0 0 15px;
	margin: 0 auto;
	width: 200px;
	position:relative;
	left:-40px;
}
p.logo2 {
	padding: 0;
	position:absolute;
	top:35px;
	left:70%;
	width:70px;
}
#globalnavi {
	float: none;
	width: auto;
	margin: 20px 0 0 0;
}
}
ul.upper-nav {
	float: right;
	margin: 20px 0 0 0;
}
ul.upper-nav li {
	float: left;
}
ul.upper-nav li.tel {
	background: url(../img/icon/tel.png) no-repeat left 50%;
	background-size: 35px;
	position: relative;
	padding-left: 40px;
	margin: 10px 0 0 0;
}
ul.upper-nav li.tel a {
	font-size: 30px;
	font-family: 'Oswald', sans-serif !important;
	font-weight: bold;
	margin: 0 20px 0 0;
	display: block;
	white-space: nowrap;
}
ul.upper-nav li.tel sup {
	position: absolute;
	top: -5px;
	right: 10px;
	font-size: 9px;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
}
ul.upper-nav li.tel span {
	display: block;
	font-size: 10px;
	position: relative;
	left: 10px;
}
ul.upper-nav li.mypage a {
	text-align: center;
	background: url(../img/icon/mypage.png) no-repeat center 25% #F7941E;
	background-size: 20px;
	border-radius: 50%;
	font-size: 10px;
	color: #FFF;
	padding: 35px 5px 10px 5px;
	margin: 10px 10px 0 0;
	display: block;
	font-weight: bold;
}
ul.upper-nav li.mypage {
	position: relative;
}
ul.upper-nav li.mypage i {
	position: absolute;
	font-size: 10px;
	top: -15px;
	white-space: nowrap;
	left: 0;
	background: #EEE;
	border-radius: 50px;
	display: none;
	padding: 3px;
	font-weight: bold;
}
ul.upper-nav li.mypage i:after {
	content: "";
	position: absolute;
	left: 22px;
	bottom: -7px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 7px 0 7px;
	border-color: #EEE transparent transparent transparent;
}
ul.upper-nav li.contact a {
	text-align: center;
	background: url(../img/icon/contact.png) no-repeat center 30% #80B927;
	background-size: 20px;
	border-radius: 50%;
	font-size: 10px;
	color: #FFF;
	padding: 35px 10px 10px 10px;
	margin: 10px 0 0 0;
	display: block;
	font-weight: bold;
}
.nav {
	clear: both;
	overflow: hidden;
	text-align: center;
}
ul.under-nav {
	margin: 5px 0 0 0;
	display: inline-block;
}
ul.under-nav li {
	float: left;
	text-align: center;
}
ul.under-nav li a {
	font-weight: bold;
	font-size: 18px;
	padding: 0 30px;
	display: block;
	border-right: 1px solid #CCC;
	transition: all 0.3s ease-in-out;
}
ul.under-nav li:last-child a {
	border: none;
}
ul.under-nav li a:hover {
	color: #80B927 !important;
}
/*DROP DOWN*/

ul.child {
	display: none;
	position: absolute;
	padding: 10px 0;
	margin: 0;
	width: 280px;
	list-style: none !important;
	background: rgba(255,255,255,1);
}
ul.child li a {
	text-decoration: none;
	padding: 5px 15px 5px 15px !important;
	display: block;
	font-size: 16px !important;
	background: url(../img/common/pointer.png) 0 50% no-repeat;
	background-size: 5px auto;
	border: none !important;
}
ul.child li {
	float: none !important;
	margin: 0 !important;
	list-style: none !important;
	text-align: left;
}
ul.child li a:before {
	content: ">";
	display: inline-block;
	transform: scale(0.7, 1);
	margin: 0 10px 0 0;
	color: #80B927;
}
 @media only screen and (max-width:769px) {
	 ul.under-nav li.top-btn-service > ul.child{
	display:block !important;
	position:static !important;
	overflow:hidden;
	clear:both;
	width:auto !important;
	margin:0 15px;
}
 ul.under-nav li.top-btn-service > ul.child li a{
	 font-size:13px !important;
	 float:left;
	 width:50%;
	 margin:0;
	 padding:0 !important;
 }
  ul.under-nav li.top-btn-service > ul.child li a span{
	  margin-left:20px;
  }
  ul.under-nav li.top-btn-service > ul.child li a:after{
	  display:none !important;
  }
ul.upper-nav {
	display: none;
}
ul.child {
	display: none !important;
}
ul.under-nav li:nth-last-child(2) {
	margin-left: 0;
}
ul.under-nav {
	display: block;
}
ul.under-nav li a {
	border: none;
}
}
#sp-navi {
	display:none ;
}
 @media only screen and (max-width:769px) {
#sp-navi {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	background: #80B927;
	padding: 10px;
	box-sizing: border-box;
	z-index: 999999999;
	display:block;
}
#sp-navi li {
	float: left;
	width: 20%;
}
#sp-navi li.mypage a {
	text-align: center;
	background: url(../img/icon/mypage.png) no-repeat center 25%;
	background-size: 25px;
	border-radius: 50%;
	font-size: 10px;
	color: #FFF;
	padding: 35px 5px 0 5px;
	margin: 0 10px 0 0;
	display: block;
}
#sp-navi li.info a {
	text-align: center;
	background: url(../img/icon/info.png) no-repeat center 25%;
	background-size: 25px;
	border-radius: 50%;
	font-size: 10px;
	color: #FFF;
	padding: 35px 5px 0 5px;
	margin: 0 10px 0 0;
	display: block;
}
#sp-navi li.blackout a {
	text-align: center;
	background: url(../img/icon/thunder2.png) no-repeat center 25%;
	background-size: 15px;
	border-radius: 50%;
	font-size: 10px;
	color: #FFF;
	padding: 35px 5px 0 5px;
	margin: 0 10px 0 0;
	display: block;
}
#sp-navi li.contact a {
	text-align: center;
	background: url(../img/icon/contact.png) no-repeat center 25%;
	background-size: 25px;
	border-radius: 50%;
	font-size: 10px;
	color: #FFF;
	padding: 35px 5px 0 5px;
	margin: 0 10px 0 0;
	display: block;
}
ul.upper-nav, ul.under-nav {
	float: none;
}
ul.upper-nav li a:before {
	font-size: 10px;
}
ul.under-nav li {
	float: none;
	text-align: left;
}
ul.upper-nav li {
	text-align: left;
}
ul.upper-nav {
	border-top: 1px solid #EEE;
}
ul.upper-nav li a {
	font-size: 13px;
	display: block;
	box-sizing: border-box;
	margin: 0;
	padding-left: 20px;
}
ul.under-nav li a {
	font-size: 15px;
	border-bottom: 1px solid #EEE;
	padding: 12px 20px;
	position: relative;
}
ul.under-nav li a:after {
	content: ">";
	position: absolute;
	top: 10px;
	right: 20px;
	display: block;
	transform: scale(0.8, 1)
}
}
a#btn span {
	background: #80B927;
	width: 18px;
	height: 2px;
	display: block;
	position: relative;
	top: 11px;
	left: 4px;
}
a#btn span:before {
	content: "";
	display: block;
	position: absolute;
	top: -7px;
	background: #80B927;
	width: 18px;
	height: 2px;
	transition: all 0.3s ease-in-out;
}
a#btn span:after {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	background: #80B927;
	width: 18px;
	height: 2px;
	transition: all 0.3s ease-in-out;
}
a#btn span.change {
	height: 0;
}
a#btn span.change:before {
	transform: rotate(-45deg);
	top: 0;
}
a#btn span.change:after {
	transform: rotate(45deg);
	top: 0;
}
a#btn {
	background: #FFF;
	display: none;
	margin: 0;
	padding: 0;
	cursor: pointer;
	width: 46px;
	height: 46px;
	padding: 5px 10px;
	box-sizing: border-box;
	border-radius: 7px;
	z-index: 9999;
	position: relative;
	text-align: center;
}
a#btn i {
	font-size: 11px;
	position: absolute;
	bottom: 2px;
	left: 50%;
	margin-left: -12px;
	font-family: 'Oswald', sans-serif !important;
	color: #80B927;
	;
}
@media only screen and (max-width:769px) {
p.spnav {
	display: block;
}
p.logo span {
	font-size: 10px;
	top: -6px;
}
a#btn img {
	max-width: 100%;
}
a#btn, p#close {
	display: block;
}
}
@media only screen and (max-width:769px) {
input[type=text], textarea, input[type=button] {
	-webkit-appearance: none;
}
}
.box {
	opacity: 0;
}
.slideUp {
	opacity: 1;
	animation: slideUp 1s ease-in-out forwards;
}
@keyframes slideUp {
 from {
 opacity: 0;
 -webkit-transform: translate3d(0, 10%, 0);
 transform: translate3d(0, 10%, 0);
}
to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
}
footer {
}
#footer {
	background: rgba(128,185,39,.2);
	padding: 75px 0;
	position: relative;
}
#sign-wrap{
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
}
#sign{
	position: absolute;
	bottom:0;
	right:30px;
}
@media only screen and (max-width:769px) {
	#sign{
	position:static;
		text-align: center;
		margin: 20px 0 0 0;
	}
}
.foot {
	overflow: hidden;
	clear: both;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 30px;
	box-sizing: border-box;
}
.foot-right {
	width: 48%;
	float: right;
}
.foot-left {
	width: 48%;
	float: left;
}
@media only screen and (max-width:769px) {
#footer {
	padding: 30px 0;
	background: #FFF;
	border-top: 5px solid #80B927;
}
.foot {
	padding: 0 15px;
}
.foot-right, .foot-left {
	width: auto;
	float: none;
}
}
ul.icon {
	overflow: hidden;
	clear: both;
}
ul.icon li {
	float: left;
	width: 30%;
	margin: 0 5% 0 0;
}
ul.icon li:last-child {
	margin: 0;
}
ul.icon li a:hover {
	opacity: 0.7;
}
h4.intro {
	font-size: 15px;
	font-weight: bold;
	border-bottom: 1px solid #333;
	margin: 0 0 15px 0;
}
@media only screen and (max-width:769px) {
h4.intro {
	text-align: center;
	margin: 30px 0 10px 0;
	border: none;
}
}
h5.name {
	font-size: 24px;
	font-weight: bold;
	color: #80B927;
	margin: 30px 0 0 0;
}
h5.name span {
	color: #333;
	font-size: 16px;
}
.foot p {
	font-weight: bold;
}
.foot p a {
	color: #333;
}
.foot iframe {
	width: 100%;
	height: 250px;
	margin: 30px 0 0 0;
}
@media only screen and (max-width:769px) {
h5.name {
	font-size: 20px;
	font-weight: bold;
	color: #80B927;
	margin: 10px 0 10px 0;
	text-align: center;
}
h5.name span {
	color: #333;
	font-size: 13px;
	display: block;
}
h5.name + p, h5.name + p + p {
	text-align: center;
	font-size: 13px;
}
.foot iframe {
	width: 100%;
	height: 200px;
	margin: 15px 0 0 0;
}
}
.foot-left .tel {
	background: url(../img/icon/tel2.png) no-repeat left 50%;
	background-size: 85px;
	position: relative;
	padding-left: 100px;
}
.foot-left .tel a {
	font-size: 75px;
	font-family: 'Oswald', sans-serif !important;
	font-weight: bold;
	letter-spacing: 1px;
	margin: 0 20px 0 0;
	display: block;
	color: #80B927;
	white-space: nowrap;
}
@media only screen and (max-width:1200px) {
.foot-left .tel a {
	font-size: 5.5vw;
}
}
.foot-left .tel sup {
	position: absolute;
	top: 2px;
	right: 40px;
	font-size: 13px;
	color: #80B927;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
}
.foot-left .tel span {
	display: block;
	font-size: 16px;
	position: relative;
	left: 10px;
	top: -10px;
	color: #333;
}
@media only screen and (max-width:769px) {
.foot-left .tel {
	background: url(../img/icon/tel2.png) no-repeat left 50%;
	background-size: 45px;
	padding-left: 55px;
	padding-top: 15px;
	margin: 0 auto;
	width: 290px;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
}
.foot-left .tel a {
	font-size: 44px;
	letter-spacing: 0;
}
.foot-left .tel sup {
	position: absolute;
	top: 5px;
	right: 30px;
	font-size: 12px;
}
.foot-left .tel span {
	font-size: 13px;
}
}
ul.sitemap {
	margin: 30px 0 0 0;
}
ul.sitemap li ul {
	margin: 0 0 30px 0;
}
ul.sitemap li {
	float: left;
	width: 48%;
	margin: 0 4% 0 0;
}
ul.sitemap li:nth-child(2) {
	margin-right: 0;
}
ul.sitemap li ul li {
	width: auto;
	float: none;
	margin: 0;
}
ul.sitemap li h6 {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 5px 0;
}
ul.sitemap li p {
	font-weight: 500;
	font-size: 14px;
	margin: 0 0 5px 0;
}
ul.sitemap li p:before {
	content: "-";
	margin: 0 10px 0 0;
}
@media only screen and (max-width:769px) {
ul.sitemap li {
	float: none;
	width: auto;
	margin: 0;
}
ul.sitemap li p {
	display: none;
}
ul.sitemap li ul {
	margin: 0;
}
ul.sitemap li h6 {
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 5px 0;
	border-bottom: 1px solid #CCC;
}
ul.sitemap li h6 a {
	display: block;
	padding: 5px 0;
}
ul.sitemap li h6:after {
	content: ">";
	display: inline-block;
	float: right;
	transform: scale(0.7, 1);
	color: #CCC;
	position: relative;
	top: -30px;
}
}
p.footer-logo {
	text-align: center;
	width: 250px;
	margin: 30px auto 0 auto;
}
p.copyright {
	padding: 30px;
	text-align: center;
	font-size: 13px;
	border-bottom: 5px solid #80B927;
}
 @media only screen and (max-width:769px) {
p.footer-logo {
	width: 200px;
	margin: 30px auto 0 auto;
}
p.copyright {
	padding: 0 15px 100px 15px;
	font-size: 11px;
}
}
p#pagetop {
	position: fixed;
	bottom: 10px;
	right: 10px;
	cursor: pointer;
	background: #7FB826;
	color: #FFF;
	width: 30px;
	height: 30px;
	line-height: 30px;
	vertical-align: middle;
	text-align: center;
}
 @media only screen and (max-width:769px) {
p#pagetop {
	bottom: 80px;
	opacity: 0.5;
}
}
/*==============================*/

p.btn-yellow {
	text-align: center;
	margin: 0 0 75px 0;
}
p.btn-yellow a {
	background: #F9EB70;
	padding: 20px 90px;
	border-radius: 50px;
	font-weight: bold;
}
p.btn-yellow a:hover {
	border: 2px solid #F9EB70;
	background: transparent;
	color: #F9EB70;
}
p.btn-yellow a:after {
	content: ">";
	margin: 0 0 0 10px;
	display: inline-block;
	transform: scale(0.7, 1);
}
@media screen and (max-width: 768px) {
p.btn-yellow {
	margin-bottom: 40px;
	font-size: 15px;
}
p.btn-yellow a {
	padding: 15px 60px;
}
}
