@charset "utf-8";

/*:リンク文字色
------------------------------ */
a {text-decoration:none;}
a:link {color: #e87005; text-decoration:none;}
a:visited {color:#169f10; text-decoration:none;}
a:hover {color:#e87005; text-decoration:none;}
a:active {color:#e87005; text-decoration:none;}


/*:基本
------------------------------ */
body{
	background: #FFF;
	-webkit-text-size-adjust: 100%;
}

div.inner{
	padding:0 10px;
}

.borderBox{
	padding:10px 15px;
}

.attentBox{
	padding:10px 15px;
}

.section{
	margin-bottom:15px;
}

p.catch{
	margin-bottom:25px;
}

img {max-width: 100%; height: auto;}

input[type=text],
input[type=button],
input[type=submit],
select,
textarea {
	-webkit-appearance: none;
	border-radius: 0;
}


/* :container
---------------------------------------------------- */
#container {
	border: 0;
	padding-top: 68px;
	position: relative;
}


/* :header
---------------------------------------------------- */
#siteHeader{
	background:#fffce8;
	height:auto;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 990;
	width: 100%;
	box-shadow: 0 5px 3px rgba(0,0,0,.1);
}

#siteHeaderInner{
	background:#fffce8;
	width: auto;
	margin: 0;
	height: 65px;
	position: relative;
	border-top:3px solid #009e62;
}

#siteHeader h1{
	left: 10px;
	top: 12px;
	float: left;
	width: 120px;
}

#siteHeader .tel{
	position:absolute;
	top:35px;
	right:55px;
	width: 135px;
}


/* :content
---------------------------------------------------- */
#content{
	background-size: 100% auto;
	padding: 0 10px;
}

#contentInner{
	width:auto;
	padding: 15px 0 40px;
	margin: 0;
	text-align:left;
	background:url(../imgs/shared/bg_container_01.gif) no-repeat center top;
	background-size: 100% auto;
	overflow: hidden;
}


/* :mainArea
---------------------------------------------------- */
#mainArea{
	float:none;
	width:auto;
}


/* :subArea
---------------------------------------------------- */
#subArea{
	float:none;
	width:auto;
}

/*
#subArea #calendar{
	background:#e9e9e9;
	border:1px solid #d9d9d9;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
	padding:4px;
	text-align:center;
	margin-bottom:35px;
	position:relative;
	behavior: url(/guest/hoshi/PIE.htc);
}

#subArea #calendar table{
	width:264px;
	margin:0 auto;
	background:#e5e5e5;
	border-collapse: separate;
	border-spacing:1px;
	margin-bottom:4px;
	text-align:center;
}

#subArea #calendar table th,
#subArea #calendar table td{
	padding:5px;
	background:#fff;
	font-size:120%;
}

#subArea #calendar table th{
	color:#0e7b52;
}

#subArea #calendar table td.open{
	border:1px solid #fff;
	padding:4px;
	background:url(../imgs/index/bg_container.gif);
	color:#fff;
}
*/

#subArea #bannerArea li {
	text-align: center;
}

#subArea #bannerArea img:hover,
div.itemWrap a img:hover,
.btn img:hover{
	filter: alpha(opacity=100);
	-moz-opacity:1.0;
	opacity:1.0;
}


/* :footer
---------------------------------------------------- */
#siteFooter{
	background-size: 50px 50px;
}

#siteFooterInner{
	width:auto;
	margin: 0;
	padding: 15px 10px;
}

#siteFooterInner #pagetop{
	position:fixed;
	top:auto;
	right:10px;
	bottom: 10px;
	width: 32px;
	height: 32px;
}
#siteFooterInner #pagetop a {
	display: block;
	width: 32px;
	height: 32px;
	background: #009E62;
	position: relative;
}
#siteFooterInner #pagetop a:before,
#siteFooterInner #pagetop a:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-bottom: 8px solid #FFF;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -12px 0 0 -8px;
}
#siteFooterInner #pagetop a:after {
	border-bottom: 8px solid #009E62;
	margin: -10px 0 0 -8px;
}
#siteFooterInner #pagetop a img {
	display: none;
}

#footerInfo{
	background: transparent;
	height:auto;
	text-align: center;
/*
	padding-bottom: 55px;
	background: url(../imgs/shared/footer_tel_smp.png) center bottom no-repeat;
*/
	background-size: 280px auto;
}
#footerInfo .logo{
	position: relative;
	left: auto;
	top: auto;
	right: auto;
	bottom: auto;
	width: 120px;
}
#footerInfo > a {
	display: block;
}
#footerInfo > a + a {
	margin-top: 15px;
	border-top: 1px solid #4EAF8A;
}

#footerInfo .tel{
/* 	display: none; */
	position: relative;
	left: auto;
	top: auto;
	margin-right: -15%;
	margin-top: 15px;
}

#siteFooter small{
	padding: 20px 10px;
	background-size: 50px 50px;
	font-size:80%;
}


/* :breadList
---------------------------------------------------- */
#breadList{
	font-size: 86%;
}


/* :pagettl
---------------------------------------------------- */
h2#pagettl{
	margin-bottom: 20px;
}


/* :headline
---------------------------------------------------- */
h3.headline{
	height:auto;
	overflow: hidden;
	margin: 0 -100px 10px -5px;
}

h3.headline img{
	position:relative;
	left: auto;
	top: auto;
}


/* :table
---------------------------------------------------- */
table.default{
	display: block;
}

table.default th,
table.default td{
	display: block;
	padding: 5px 10px;
	width: 100%;
}

/* :headerUtility
---------------------------------------------------- */
#headerUtility{
	top:0;
	right: 55px;
	width:135px;
	height:30px;
	background: #009E62;
	border-radius: 0 0 3px 3px;
	overflow: hidden;
}

#headerUtility ul#fontSize{
	position: relative;
	top: auto;
	left: auto;
	float: left;
	padding-top: 2px;
	padding-left: 37px;
	background: url(../imgs/shared/ttl_fontSize_smp.png) 7px center no-repeat;
}

#headerUtility ul#fontSize li {
	margin-right: 4px;
}

#headerUtility > a {
	width: 28px;
	height: 22px;
	display: block;
	background: url(../imgs/shared/btn_contact_smp.png);
	background-size: 28px 22px;
	float: right;
	margin: 3px 5px 0 0;
}
#headerUtility > a img {
	display: none;
}

p#menu {
	position: absolute;
	right: 0px;
	top: 5px;
	width: 50px;
	height: 50px;
}
p#menu a, p#menu a span {
	display: block;
}
p#menu a {
	padding: 13px 12px;
}
p#menu a span {
	background: #009E62;
	height: 3px;
	margin-bottom: 7px;
}

/* :gNav
---------------------------------------------------- */
#gNav{
	position:absolute;
	width:100%;
	height:auto;
	background:#F3F3F3;
	border-top: 3px solid #009E62;
	border-bottom: 2px solid #009E62;
	top:68px;
	left:0;
	box-shadow: 0 5px 3px rgba(0,0,0,.1);
	z-index:980;
	height: 0;
	overflow: hidden;
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
}
#gNav.on {
	filter: alpha(opacity=100);
	-moz-opacity:1.0;
	opacity:1.0;
	height: auto;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-o-transition: all .3s ease;
	-ms-transition: all .3s ease;
	transition: all .3s ease;
}

#gNav ul{
	width:auto;
	margin:0;
	padding:0;
}

#gNav ul li {
	float:none;
	border-bottom: 1px solid #009E62;
}
#gNav ul li a {
	display: block;
	font-weight: bold;
	color: #009E62;
	font-size: 120%;
	padding: 10px 0;
}
#gNav ul li a img {
	display: none;
}

#gNav ul li#g01 a:before {
	content: "ホーム";
}
#gNav ul li#g02 a:before {
	content: "会社概要";
}
#gNav ul li#g03 a:before {
	content: "商品案内";
}
#gNav ul li#g04 a:before {
	content: "サービス案内";
}
#gNav ul li#g05 a:before {
	content: "元気クラブについて";
}
#gNav ul li#g06 a:before {
	content: "スタッフ紹介";
}
#gNav ul li#g07 a:before {
	content: "採用・求人情報";
}


/* :sNav
---------------------------------------------------- */
#sNav{
	display: none;
}

/* :footerSitemap
---------------------------------------------------- */
#footerSitemap{
	margin:15px 0 0;
	padding:20px 0 0;
	font-size: 90%;
}

#footerSitemap .box {
	margin-right: 0;
	padding-right: 10px;
	min-width: 50%;
	box-sizing: border-box;
}

#footerSitemap .box p{
	background-size: 10px 10px;
	padding-left: 15px;
}

#footerSitemap .box li{
	padding-left:18px;
}


/* :lnav
---------------------------------------------------- */
nav.lnav{
	margin: 0 -3px 10px;
}

nav.lnav li{
	float:left;
	width: 50%!important;
	padding: 0 3px 6px;
	margin: 0!important;
	box-sizing: border-box;
}

nav.lnav li.last{
	float:left;
}

nav.lnav li a,
nav.lnav li a:hover{
	border: 1px solid #009e62;
	padding: 7px;
	background: transparent;
	color: #009e62;
	font-size: 90%;
	letter-spacing: -0.5px;
}


/* top
---------------------------------------------------- */

#index #siteHeader{
	background-size: 100% auto;
	background-position: left 50% bottom 0;
	height:auto;
}

#index #siteHeader h1{
	top:12px;
	left:10px;
}

#index #siteHeader .catch{
	display: none;
}

#index #gNav{
	top:68px;
}

p.mainVisual {
	background: url(../imgs/shared/bg_header.gif) left 40% top 60% no-repeat #fffce8;
	background-size: 90% auto;
	padding: 30px 0;
	border-bottom: 3px solid #009E62;
}


#index #mainArea{
	float:none;
	width:auto;
}

#index #subArea{
	float:none;
	width:auto;
}

#index #newsArea h2.headline{
	position:relative;
	height: auto;
	margin: 0 -100px 5px -3px;
}

#index #newsArea h2.headline img{
	position:relative;
	left: auto;
	top: auto;
}

#index #newsArea h2.headline a{
	top:5px;
	left:auto!important;
	right: 105px;
	display:block;
	width: 25%;
}


#index #newsArea ul{
	padding:0;
}
#index #newsArea ul li p{
	clear:both;
	float:none;
	padding: 0.5em 1em 0.5em 8em;
}
#index #newsArea ul li span{
	padding: 0 0 0.85em;
	display: block;
	float: none;
	width: auto;
}


#index #feature{
	background-size: 50px 50px;
	padding: 10px;
	margin-bottom: 15px;
}

#index #feature .box{
	width:100%;
	box-shadow: 3px 3px 3px #ddd;
	-webkit-box-shadow: 3px 3px 3px #ddd;
}

#index #feature .box + .box {
	margin-top: 15px;
}

#index #feature .boxL,
#index #feature .boxR{
	float:none;
}

#index #feature .box h3.headline{
	position:relative;
	height:auto;
	margin:0;
}

#index #feature .box h3.headline img{
	position:relative;
	left: auto;
	top: auto;
	width: 100%;
}

#index #feature .box h4.headline {
	margin-bottom: 10px;
}

#index #feature .inner{
	padding:12px 9px 9px;
	border:1px solid #009e62;
	border-top:none;
    -moz-border-radius: 0 0 3px 3px;
    -webkit-border-radius: 0 0 3px 3px;
    border-radius: 0 0 3px 3px;
	background:#fff;
	min-height:0;
	position:relative;
	behavior: url(/guest/hoshi/PIE.htc);
}


#index #followArea{
	background-size: 50px 50px;
	padding:10px 10px 0;
	margin-bottom:15px;
}

#index #followArea h3 img {
	width: 100%;
}

#index #followArea > p {
	text-align: center;
}


/* :company01
---------------------------------------------------- */
section.section > div.inner {
	padding: 0;
}

#company01 dl.default dt{
	float:none;
	width:auto;
	font-weight:bold;
	padding:10px;
	border-right:0;
	height: auto!important;
}

#company01 dl.default dd{
	padding:0 10px 10px;
	border-bottom:1px dotted #c6c6c6;
	background:#fff;
	height: auto!important;
}

#company01 #section02 ul li{
	padding:10px 0;
}

#company01 #section02 ul li h4{
	font-size:130%;
	color:#009e62;
	padding-left:30%;
}

#company01 #section02 ul li img.photo{
	float:left;
	width: 25%;
}

#company01 #section02 ul li p{
	padding-left:30%;
}

#company01 #section02 ul li span.tel,
#company01 #section02 ul li span.fax{
	display: block;
}



/* :company01
---------------------------------------------------- */
#company02 #section01 img.photo{
	margin:0 15px 15px 0;
}

#company02 #section01 h4{
	font-size:130%;
}


/* :product
---------------------------------------------------- */
#product div.itemWrap ul{
	width:auto;
	margin-right:0;
}

#product div.itemWrap ul li{
	float:none;
	width:auto;
	margin:0 0 15px;
	min-height:0;
}
#product div.itemWrap ul li + li {
	padding-top: 15px;
	border-top: 1px solid #EEE;
}

#product div.itemWrap ul li h4{
	background:url(../imgs/shared/icon_li.png) no-repeat 100px 0.6em;
	padding-left:114px;
}
#product div.itemWrap ul li h4 br {
	display: none;
}

#product div.itemWrap ul li img{
	width: 90px;
}

#product div.itemWrap ul li p{
	padding-left:100px;
}



/* :club
---------------------------------------------------- */
#club #mainArea {
	margin-bottom: 20px;
}

#club #section01 .inner .photo{
	float:left;
	width: 110px;
	margin: 0 15px 15px 0;
}

#club #section01 .inner p{
	padding-left:0;
}

#club #section02 h4{
	font-size:130%;
	padding:5px 0 5px 25px;
	margin-bottom:0;
	background-size: 20px auto!important;
	line-height: 1.3;
}

#club #section02 h4 + p{
	margin-bottom:10px;
}

#club .btnSet ul li,
#club .btnSet ul li + li{
	float:none;
	text-align: center;
}
#club .btnSet ul li + li {
	margin-top: 10px;
}


/* :staff
---------------------------------------------------- */
#staff #mainArea .staff_box {
	padding: 0;
}

#staff #mainArea ul li h4{
	font-size:130%;
	padding-left:0;
}

#staff #mainArea ul li img.photo{
	float:none;
	width: 100%;
}

#staff #mainArea .staff_box .staff_list ul {
	margin: 10px -5px 0;
}
#staff #mainArea .staff_box .staff_list ul li {
	width: 25%;
	float: left;
	padding: 0 5px 10px;
	margin: 0;
	box-sizing: border-box;
}
#staff #mainArea .staff_box .staff_list ul li img {
	width: 100%;
	height: auto;
}

#staff #mainArea .staff_box .staff_list {
	margin-bottom: 15px;
}


/* :service
---------------------------------------------------- */
#service .introContent p{
	padding-left:0;
}

#service .introContent .photo{
	float:left;
	width: 120px;
	margin: 0 15px 15px 0;
}


/* :recruit
---------------------------------------------------- */
#recruit dl.default dt{
	float:none;
	width:auto;
	height: auto!important;
	padding:10px;
	border-right:0;
}

#recruit dl.default dd{
	padding:0 10px 10px;
	height: auto!important;
}

#recruit section#section01 div.inner {
	padding: 0;
}


/* :contact
---------------------------------------------------- */
#contact section div.inner {
	padding: 0;
}

#contact dl.default dt{
float:none;
width:auto;
height: auto!important;
padding:10px;
border-right:0;
}
#contact dl.default dd{
padding:0 10px 10px;
height: auto!important;
}


.w50{
	width:70%;
}

.w100{
	width: 100%;
}

#contact input[type=text],
#contact textarea {
	font-size: 16px;
	box-sizing: border-box;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, sans-serif;
}


/* :privacy
---------------------------------------------------- */
#privacy dl.list dt{
	font-size:120%;
}

