@charset "utf-8";
/* ======================================================

	structure CSS

========================================================= */


/* ======================================================

	body

========================================================= */
body {
	color:#000;
	font-size: 1.6rem;
	line-height:22.5px;
	line-height:2.25rem;/*150%*/
	line-height:1.5em;/*150%*/
	min-width: 960px;
	margin: 0;         /* 余白の削除 */
	padding: 0;        /* 余白の削除 */
	width:100%;
	height:100%;
}

.container {
	width:100%;
	min-width:960px;
}

@media screen and (max-width: 768px) {
	body {
		min-width:100%;
		word-wrap:break-word;
		font-size:1.5rem;
	}
	
	.container{
		min-width:100%;
	}
}

/* ======================================================

	header

========================================================= */
.header {
	overflow: hidden;
	background: rgba(255,255,255,.90);
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100px;
	z-index: 100;
}

.headerArea {
	margin:0 auto;
	width: 960px;
	padding: 0px 0 25px;
}

.h_logo {
	float: left;
	height: auto;
	padding-left: 20px;
}
.h_logo a:hover {
	opacity:0.7;
}

/* clear */
.headerArea:after{
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;}

@media screen and (max-width:768px){
	.header {
		height: auto;
		position: inherit;
		background: #fff;
	}
	
	.headerArea {
		width:100%;
		height:auto;
		padding: 0;
	}
	
	.h_logo {
		float:none;
		padding: 10px 0;
		position: absolute;
		z-index: 0;
		top: 0;
		left: 10px;
		width: 25%;
		text-align: left;
		vertical-align: middle;
	}
	.h_logo img {
		width: 100%;
		height: auto;
		max-width: 100px;
	}
	
}

@media screen and (max-width: 599px) {
	.h_info li{
		display:block;
		margin-bottom:5px;
	}
}

/* ======================================================

	header_info

========================================================= */
.header_r{
	text-align: right;
	line-height: 170%;
}
.header_r ul {
	font-size: 0;
	display: inline-block;
	vertical-align: top;
	margin-right: 23px;
}
.header_r ul li {
	display: inline-block;
	font-size: 12px;
	margin-right: 5px;
	line-height: 100%;
	letter-spacing: 0.1rem;
}
.header_r ul li a {
	display: block;
	padding: 5px 15px;
	background: #a0a0a0;
	color: #fff;
	border-radius: 0 0 5px 5px;
}
.header_r ul li a:hover {
	opacity: 0.7;
}
.header_r ul li .active {
	background: #62a93c;
}
.header_r div {
	display: inline-block;
	font-size: 0;
}
.h_contact {
	margin-bottom: 10px;
}
.h_contact a:hover{
	opacity: 0.7;
}


/* ======================================================

	gnav

========================================================= */
.gnav {
	height: auto;
	overflow: hidden;
	width: 730px;
	float: right;
	margin: 15px auto 0;
}

.gnav ul {
}

.gnav ul li {
	float: left;
	height: auto;
	overflow: hidden;
	padding-top: 3px;
	border-right: 1px solid #000;
}

.gnav ul li:last-child {
	border-right: none;
}
.gnav ul li a {
	padding: 0 15px;
}
.gnav ul li a:hover {
	opacity: 0.7;
}

/* clear */
.gnav ul:after {
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;
}

@media screen and (max-width:768px){
	.gnav ul{
		margin:0 auto;
		width:100%;
	}
	
	.sp_gnavArea {
		background-color: #62A93C;
		position: relative;
		padding: 0px 0 5px;
	}
	
	.sp_gnav_btn {
		width:auto;
		padding:10px 5px;
		text-align:right;
	}

	.sp_gnav_btn a {
		padding: 20px 15px 0;
		color: #fff;
	}

	.sp_gnav {
		display:none;
		z-index:100;
		margin-bottom:0;
		background-color:#fff;
	}
	
	.sp_gnav li {
		position:relative;
		background:url(images/arrow_spgnav.png) 10px 45% no-repeat;
	}
	
	.sp_gnav li a {
		display: block;
		padding: 10px 10px 10px 25px;
		border-bottom: 1px solid #859539;
		color: #504431;
		text-decoration: none;
		font-weight: normal;
	}
	
	.sp_gnav li a:hover{
		opacity:0.7;}
}


/* ======================================================

	mv

========================================================= */
.top_mvArea {
	width: 960px;
	margin: 100px auto 70px;
}

.MV_txtArea {
	height: auto;
	overflow: hidden;
	background: #D8E597;
	width: 960px;
	margin: 0 auto;
	padding: 15px;
	text-align: center;
}

.MV_txtArea img {
	width: 20%;
}

/*iPad タブレット*/
@media screen and (max-width:768px){
	.top_mvArea {
		width: 100%;
		height: auto;
		margin: 0 auto 50px;
		background-size: contain;
	}
	.top_mvArea img {
		width: 100%;
		height: auto;
	}
	.top_mvArea .MV_txtArea img {
		width: 30%;
	}
	.MV_txtArea img {
	width: 25%!important;
	}
	.MV_txtArea {
		width: 100%;
		padding: 10px 0;
	}
	
	.MV_txtArea h1 {
		margin: 0 auto 30px;
	}
	
}

/*iPhone スマートフォン*/
@media screen and (max-width:599px){
}

/* ======================================================

	contents

========================================================= */
.contents {
	margin:0 auto;
	width: 100%;
}

.contents_inner {
	width: 960px;
	margin: 0 auto 100px;
}

/*共通タイトル*/
.top_ttl {
	text-align: center;
	margin-bottom: 30px;
}


@media screen and (max-width:768px){
	.contents {
		width: 100%;
	}
	.contents_inner {
		width: 100%;
		padding: 0 10px;
		margin-bottom: 70px;
	}
	.top_ttl {
		margin-bottom: 40px;
	}
}

/*iPhone スマートフォン*/
@media screen and (max-width:599px){
	.contents_inner {
		margin-bottom: 50px;
	}

}

/* top_concept コンセプト
========================================== */
.top_concept .contents_inner {
	text-align: center;
	padding-bottom: 110px;
	margin-bottom: 50px;
	background: url(images/top_concept_bg01.png) no-repeat left bottom 100px, url(images/top_concept_bg02.png) no-repeat right bottom;
}
.top_concept h2 {
	font-size: 3.6rem;
	line-height: 1.5em;
	margin-bottom: 100px;
}
.top_concept p {
	font-size: 1.8rem;
	line-height: 1.5em;
}

@media screen and (max-width:768px){
	.top_concept .contents_inner {
		background: url(images/top_concept_bg01.png) no-repeat left 10px bottom 120px, url(images/top_concept_bg02.png) no-repeat right 10px bottom;
		background-size: 18% auto, 25% auto;
		padding-bottom: 80px;
	}
	.top_concept h2 {
		font-size: 2.4rem;
		margin-bottom: 60px;
	}
	.top_concept p {
		font-size: 1.6rem;
	}

}
@media screen and (max-width:599px){
	.top_concept .contents_inner {
		background: url(images/top_concept_bg01.png) no-repeat left 10px bottom 30px, url(images/top_concept_bg02.png) no-repeat right 10px bottom;
		background-size: 20% auto, 30% auto;
	}
	.top_concept h2 {
		font-size: 2.2rem;
	}
	.top_concept p {
		text-align: left!important;
	}

}

/* top_commitment 大石屋のこだわり
========================================== */
.top_commitment {
	text-align: center;
}
.top_commitment h3 {
	margin: 30px 0;
	font-size: 2.4rem;
	line-height: 1.3em;
}

.top_commitment_moreBtn {
	position: relative;
	width: 300px;
	margin: 20px auto 0;
	border: 2px solid #62a93c;
}
.top_commitment_moreBtn a {
	position: relative;
	display: block;
	text-decoration: none;
	padding: 10px;
	color: #62a93c;
}
.top_commitment_moreBtn a::after {
	content: ">";
	position: absolute;
	right: 20px;
}
.top_commitment_moreBtn a:hover {
	color: #fff;
	background: #62a93c;
}
.top_commitment_moreBtn a:hover::after {
	right: 5px;
}

/*iPad タブレット*/
@media screen and (max-width:599px){
	.top_commitmentTxt {
		text-align: left!important;
	}
	.top_commitment h3 {
		margin: 15px 0;
		font-size: 1.8rem;
	}
}

/*iPhone スマートフォン*/
@media screen and (max-width:480px){
	.top_commitment_moreBtn {
		width: 100%;
	}
}

/* top_business 主な事業内容
========================================== */
.top_business ul {
	height: auto;
	overflow: hidden;
}

.top_business li {
	float: left;
	margin: 0 22px 0 0;
	height: auto;
	overflow: hidden;
	width:305px;
}

.top_business li:last-child {
	margin: 0;
}

.top_business li dd {
	padding: 10px 10px 0;
	font-size: 1.4rem;
	line-height: 1.4em;
}

/*iPad タブレット*/
@media screen and (max-width:768px){
	.top_business {
		width: 100%;
		height: auto;
	}
	.top_business li dt img {
		width: 100%;
		height: auto;
	}
	.top_business li {
		width: 32.5%;
		margin-right: 1%;
	}
	.top_business li dd {
		padding:5px 5px 0;
	}
}

/*iPhone スマートフォン*/
@media screen and (max-width:599px){
	.top_business li {
		float: none;
		width: 100%;
		margin: 0 0 30px 0;
	}
	.top_business li dd {
		padding:5px 0 0 0;
	}

}

/* top_recruit 採用情報
========================================== */
.top_recruit {
}
.top_recruitBnrArea {
	height: auto;
	overflow: hidden;
	text-align: center;
}
.top_recruitBnr {
	display: block;
	margin: 0 auto;
}
.top_recruit p {
	margin-bottom: 10px;
	text-align: center;
}

.top_recruit_moreBtn {
	position: relative;
	width: 300px;
	margin: 20px auto 0;
	border: 2px solid #62a93c;
}
.top_recruit_moreBtn a {
	position: relative;
	display: block;
	text-decoration: none;
	padding: 10px;
	color: #62a93c;
	text-align: center;
}
.top_recruit_moreBtn a::after {
	content: ">";
	position: absolute;
	right: 20px;
}
.top_recruit_moreBtn a:hover {
	color: #fff;
	background: #62a93c;
}
.top_recruit_moreBtn a:hover::after {
	right: 5px;
}


/*iPad タブレット*/
@media screen and (max-width:768px){
	.top_recruit {
		width: 100%;
		height: auto;
	}
	
	.top_recruitInner {
		width: 100%;
		padding: 40px 10px;
	}
	
	.top_recruitBnrArea img {
		width: 100%;
	}
}

/*iPhone スマートフォン*/
@media screen and (max-width:599px){
	.top_recruit {
	}
	
	.top_recruit p {
		margin-bottom: 10px;
		text-align: left;
	}
	.top_recruit_moreBtn {
		width: 100%;
	}
}

/* xxxx
========================================== */
.top_xxxArea{}

/*iPad タブレット*/
@media screen and (max-width:768px){
	
}

/*iPhone スマートフォン*/
@media screen and (max-width:599px){
	
}

/* ======================================================

	footer

========================================================= */
#footer{
	width:100%;
	background: #D8E597;
}

.footerArea{
	margin: 0 auto;
	padding: 50px 0 30px;
	width: 960px;
	height: auto;
	overflow: hidden;
}

/* clear */
.footerArea:after{
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;}

.f_logo{
	height: auto;
	overflow: hidden;
	float: left;
	width: 100px;
}

.f_rightArea {
	height: auto;
	overflow: hidden;
	width: 800px;
	float: right;
	margin: 15px auto 0;
}

ul.fnav_pc {
	height: auto;
	overflow: hidden;
	margin: 0 auto 30px;
	display: block;
}

.fnav_pc li {
	height: auto;
	overflow: hidden;
	float: left;
	margin: 0 25px 0 0;
}

.fnav_pc li:last-child {
	margin: 0;
}

.f_infoArea {
	height: auto;
	overflow: hidden;
	float: right;
}

.f_infoArea li {
	float: left;
	font-size: 1.4rem;
	letter-spacing: 3px;
	height: auto;
	overflow: hidden;
}

.f_adress {
	background: url(images/f_adress_icon.png) no-repeat top left;
	padding: 0 0 0 20px;
	margin: 0 40px 0 0;
}

.f_tel {
	background: url(images/f_tel_icon.png) no-repeat top left;
	padding: 0 0 0 25px;
}

.f_tel a {
	color: #333;
	text-decoration: none;
}

.f_tel a:hover {
	text-decoration: underline;
}

/*スマホ用フッターリンク*/
ul.fnav_sp {
	display: none;
}

@media screen and (max-width: 768px) {
	.footerArea {
		width:100%;
		padding: 15px 0 0;
	}
	
	.f_logo {
		float: none;
		width: 20%;
		text-align: center;
		margin: 0 auto 15px;
	}
	
	ul.fnav_pc {
		display: none;
	}
	
	ul.fnav_sp {
		display: block;
		width:100%;
		border-top:1px solid #5e6b22;
	}
	
	.fnav_sp li {
		padding-left:15px;
		background: url(images/arrow_fnav.png) 10px 15px no-repeat;
		border-bottom: 1px solid #5e6b22;
	}
	
	.fnav_sp li a {
		display:block;
		padding: 10px 10px 10px 10px;
		text-decoration: none;
		font-weight: normal;
	}
	
	.fnav_sp li a:hover {
		text-decoration: underline;
	}
	
	.f_rightArea {
		float: none;
		width: 100%;
	}
	
	.f_infoArea {
		margin: 0 auto 10px;
		float: none;
	}
	
	.f_infoArea li {
		float: none;
		letter-spacing: 0px;
		font-size: 1.6rem;
	}
	
	.f_adress {
		margin: 0 auto 5px;
		width: 335px;
		text-align: center;
	    padding: 0;
	}
	
	.f_tel {
		width: 160px;
		margin: 0 auto;
		padding: 0;
		text-align: center;
	}
}

/*iPhone スマートフォン*/
@media screen and (max-width:599px){
	.f_logo {
		width: 100%;
	}
}

/*iPhone スマートフォン*/
@media screen and (max-width:300px){
	
	.f_infoArea {
		padding: 0 10px;
	}
	
	.f_adress {
		width: 100%;
	}
}

/* ==============================================

	copyright

================================================= */
.copyright{
	clear: both;
	padding: 10px;
	font-size: 1.2rem;
	text-align: center;
	height: auto;
	overflow: hidden;
}

@media screen and (max-width: 768px) {

}

/* =======================================

	pageTop

========================================== */
#pageTop {
	position:fixed;
	right:30px;
	bottom:20px;
	z-index: 100;
	padding:20px 20px 17px 20px;
	background-color: #62A93C;
}

#pageTop:hover {
	opacity:0.7;
}

@media screen and (max-width: 768px) {
	#pageTop {
		bottom:10px;
		right:10px;
		padding:15px 15px 12px 15px;}
}

/* =======================================

	topicPath

========================================== */
#topicPath{
	padding:4px 0 0 10px;
	min-height:20px;
	font-size:16px;}

#topicPath li{
	display: inline;
	list-style-type: none;}

#topicPath li a {
	color:#6B7B0F;}

#topicPath li a:hover{
	color:#A6BF70;}

#topicPath li:before {
	content: " > ";}

#topicPath li:first-child:before {
	content: none;}


@media screen and (max-width: 768px) {
	#topicPath{
		padding:13px 0 0 10px;
		min-height:20px;
		font-size:16px;}
}