@charset "utf-8";

/***************************************************
	common.css
	共通レイアウトスタイル定義
***************************************************/

@import url(//fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css);

/* Base
------------------------------------------------------------ */
body {
	line-height: 1.6;
	color: #444444;
	font-size: 14px;
	margin: 0;
	background: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	word-break: break-all;
	min-width: 980px;
}
@media only screen and (max-width: 767px) {
	body {
		min-width: inherit;
	}
}

img {	vertical-align: top;}
@media only screen and (max-width: 767px) {
	img {
		max-width: 100%;
		height: auto;
	}
}
.innerBox {
	width: 949px;
	margin: 0 auto;
}
@media only screen and (max-width: 767px) {
	.innerBox {
		width: auto;
		padding: 0 10px;
	}
}

/* Link
------------------------------------------------------------ */
a { outline: none; }
a:link {
	color: #ed6c00;
	text-decoration: none;
}
a:visited {
	color: #ed6c00;
	text-decoration: none;
}
a:hover {
	color: #ed6c00;
	text-decoration: underline;
}
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}


/* wrapper
-------------------------------------------------------------------*/
#wrapper {
	clear: both;
}

/* header
-------------------------------------------------------------------*/
#header {
	clear: both;
	padding: 20px 0;
	position: relative;
	background: #ffffff;
}
@media only screen and (max-width: 767px) {
	#header {
		padding: 15px 0;
	}
}
#header h1 {
	float: left;
	margin: 15px 0 0 10px;
}
@media only screen and (max-width: 767px) {
	#header h1 {
		margin: 0;
	}
	#header h1 img {
		width: auto;
		height: 60px;
	}
}
#header .clm01 {
	float: right;
	width: 814px;
}
@media only screen and (max-width: 767px) {
	#header .clm01 {
		display: none;
	}
}
#header .clm01 .row01 {
	clear: both;
	margin: 0 0 15px 0;
}
#header .clm01 .row01 .banner01 {
	float: left;
	margin: 0;
}
#header .clm01 .row01 .tel {
	float: right;
	margin: 0;
	padding: 0;
}
#header .clm01 .row01 .tel dt {
	margin: 0 0 5px 0;
	padding: 0;
	font-size: 12px;
	text-align: center;
}
#header .clm01 .row01 .tel dd {
	margin: 0;
	padding: 0;
}
#header .clm01 .headerLinkList {
	clear: both;
	margin: 0;
	padding: 0;
}
#header .clm01 .headerLinkList li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	float: left;
	width: 25%;
	border-left: 1px solid #aaaaaa;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
#header .clm01 .headerLinkList li:last-child {
	border-right: 1px solid #aaaaaa;
}
#header .clm01 .headerLinkList li a {
	display: block;
	color: #3F2C2C;
	text-align: center;
	font-size: 15px;
	padding: 5px 0;
}
#header .clm01 .headerLinkList li a::before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	vertical-align: middle;
	margin: 0 5px 0 0;
}
#header .clm01 .headerLinkList li.item01 a::before {
	background: url(../img/common/header_navi_icon01.png) 0 0 no-repeat;
}
#header .clm01 .headerLinkList li.item02 a::before {
	background: url(../img/common/header_navi_icon02.png) 0 0 no-repeat;
}
#header .clm01 .headerLinkList li.item03 a::before {
	background: url(../img/common/header_navi_icon03.png) 0 0 no-repeat;
}
#header .clm01 .headerLinkList li.item04 a::before {
	background: url(../img/common/header_navi_icon04.png) 0 0 no-repeat;
}
#btnMenu {
	display: none;
}
@media only screen and (max-width: 767px) {
	#btnMenu {
		display: block;
		float: right;
		color: #ffffff;
		font-size: 18px;
		margin: 10px 0 0 0;
		padding: 10px;
		background: #3E332F;
		border-radius: 4px;
		-webkit-border-radius: 4px;
	}
	#btnMenu i {
		margin: 0 5px 0 0;
	}
}


/* main
-------------------------------------------------------------------*/
main {
	display: block;
	clear: both;
	margin: 0 auto;
	overflow: hidden;
}
#mainClm {
	float: left;
	width: 729px;
}

/* commonCvSec */
.commonCvSec {
	clear: both;
	margin: 30px 0;
	padding: 25px 0;
	background: #FFEEAC url(../img/common/common_cv_bg.png) 15px center no-repeat;
	border-radius: 10px;
	-webkit-border-radius: 10px;
}
@media only screen and (max-width: 767px) {
	.commonCvSec {
		padding: 20px;
	}
}
.commonCvSec h3 {
	float: left;
	width: 170px;
	text-align: center;
	color: #392C2A;
	font-size: 19px;
	line-height: 1.3;
	font-weight: bold;
	margin: 0;
	padding: 25px 0 0 0;
}
@media only screen and (max-width: 767px) {
	.commonCvSec h3 {
		float: none;
		width: auto;
		padding-top: 0;
	}
	.commonCvSec h3 br {
		display: none;
	}
}
.commonCvSec .mailClm {
	float: left;
	width: 160px;
	margin: 0;
	padding: 0 10px 0 0;
	border-right: 1px dotted #aaaaaa;
}
.commonCvSec .telClm {
	float: left;
	width: 160px;
	margin: 0;
	padding: 0 10px;
	border-right: 1px dotted #aaaaaa;
}
.commonCvSec .faxClm {
	float: left;
	width: 180px;
	margin: 0;
	padding: 0 0 0 10px;
}
@media only screen and (max-width: 767px) {
	.commonCvSec .mailClm {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px 0;
		border-right: none;
		border-bottom: 1px dotted #aaaaaa;
	}
	.commonCvSec .telClm {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px 0;
		border-right: none;
		border-bottom: 1px dotted #aaaaaa;
	}
	.commonCvSec .faxClm {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px 0 0 0;
	}
}
.commonCvSec dl dt {
	color: #392D2A;
	font-size: 16px;
	font-weight: bold;
	line-height: 32px;
	margin: 0 0 10px 0;
}
.commonCvSec dl dt::before {
	content: "";
	display: inline-block;
	width: 32px;
	height: 32px;
	margin: 0 5px 0 0;
	vertical-align: middle;
}
.commonCvSec dl.mailClm dt::before {
	background: url(../img/common/common_cv_icon01.png) 0 0 no-repeat;
}
.commonCvSec dl.telClm dt::before {
	background: url(../img/common/common_cv_icon02.png) 0 0 no-repeat;
}
.commonCvSec dl.faxClm dt::before {
	background: url(../img/common/common_cv_icon03.png) 0 0 no-repeat;
}
.commonCvSec dl dd {
	margin: 0;
	padding: 0;
}
@media only screen and (max-width: 767px) {
	.commonCvSec dl dt ,
	.commonCvSec dl dd {
		text-align: center;
	}
}
.commonCvSec dl.mailClm dd .btn {
	margin: 0;
}
.commonCvSec dl.mailClm dd .btn a {
	display: block;
	color: #ffffff;
	line-height: 1.3;
	text-align: center;
	padding: 10px 0;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	position: relative;
	background: linear-gradient(to bottom, #F09300 0%,#CD5D00 100%);
	background: -webkit-linear-gradient(to bottom, #F09300 0%,#CD5D00 100%);
}
.commonCvSec dl.mailClm dd .btn a::after {
	font-family: FontAwesome;
	content: "\f105";
	margin: 0 0 0 10px;
}
.commonCvSec dl dd .txt01 {
	margin: 5px 0 0 0;
	font-size: 12px;
}
.commonCvSec dl.telClm dd .number ,
.commonCvSec dl.faxClm dd .number {
	margin: 0;
	color: #E95704;
	font-size: 24px;
	font-weight: bold;
}

/* ttl */
.commonPageTtl {
	color: #ffffff;
	font-size: 32px;
	line-height: 1;
	margin: 0 0 30px 0;
	padding: 30px 0 34px 30px;
	background: url(../img/common/common_page_ttl_bg.png) center bottom no-repeat;
	background-size: cover;
}
@media only screen and (max-width: 767px) {
	.commonPageTtl {
		font-size: 20px;
		padding: 3% 0 5% 5%;
	}
}

.ttlType01 {
	clear: both;
	color: #392D2A;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.2;
	margin: 0 0 20px 0;
	border-bottom: 4px solid #3A2E2A;
}

/* ir(旧サイトから移植) */
.ir {
    text-indent: 200%;
    white-space: nowrap;
    overflow: hidden;
}

/* pagenavi(旧サイトから移植) */
.wp-pagenavi {
    text-align: center;
}

.wp-pagenavi span,
.wp-pagenavi a {
    display: inline-block;
    width: 28px;
    margin: 3px;
    padding: 3px 0;
    border: 1px solid #727171;
    color: #3e332f;
    text-align: center;
    background: #f9f8f8;
}

.wp-pagenavi .current {
    color: #fff;
    border-color: #3e332f;
    background: #3e332f;
}

.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    color: #b5b5b6;
    font-weight: bold;
}



#sideClm {
	float: right;
	width: 200px;
}
@media only screen and (max-width: 767px) {
	#mainClm {
		float: none;
		width: auto;
	}
	#sideClm {
		display: none;
	}
}

/* sidePackingSec */
.sidePackingSec {
	clear: both;
}
.sidePackingSec a {
	display: block;
	text-decoration: none;
}
.sidePackingSec h3 {
	color: #FFE300;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
	margin: 0 0 15px 0;
	padding: 10px 0;
	background: #3A2E2A;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	position: relative;
}
.sidePackingSec h3:after {
	border-top: 10px solid #3A2E2A;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	content: '';
	margin-left: -5px;
	position: absolute;
	bottom: -10px;
	left: 50%;
}

/* sideContactSec */
.sideContactSec {
	clear: both;
	margin: 20px 0 0 0;
}
.sideContactSec h3 {
	color: #ffffff;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
	margin: 0;
	padding: 15px 0;
	background: #3A2E2A;
	border-radius: 3px 3px 0 0;
	-webkit-border-radius: 3px 3px 0 0;
}
.sideContactSec .estimateBox {
	padding: 10px 10px 20px 10px;
	background: #EEEEEE;
}
.sideContactSec .estimateBox .txt01 {
	font-size: 12px;
	margin: 0;
}
.sideContactSec .estimateBox .btnList {
	margin: 0;
	padding: 0;
}
.sideContactSec .estimateBox .btnList > li {
	margin: 10px 0 0 0;
	padding: 0;
	list-style-type: none;
}
.sideContactSec .estimateBox .btnList > li a {
	display: block;
	color: #ffffff;
	line-height: 1.3;
	padding: 10px 0 10px 42px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	position: relative;
}
.sideContactSec .estimateBox .btnList > li a::before {
	content: "";
	width: 30px;
	height: 34px;
	position: absolute;
	top: 50%;
	left: 8px;
	margin: -17px 0 0 0;
	background: url(../img/common/side_estimate_icon01.png) 0 0 no-repeat;
}
.sideContactSec .estimateBox .btnList > li a::after {
	font-family: FontAwesome;
	content: "\f105";
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -10px 0 0 0;
}
.sideContactSec .estimateBox .btnList > li.audio a {
	background: linear-gradient(to bottom, #D6AD00 0%,#B7740A 100%);
	background: -webkit-linear-gradient(to bottom, #D6AD00 0%,#B7740A 100%);
}
.sideContactSec .estimateBox .btnList > li.camera a {
	background: linear-gradient(to bottom, #8D0000 0%,#530000 100%);
	background: -webkit-linear-gradient(to bottom, #8D0000 0%,#530000 100%);
}
.sideContactSec .estimateBox .btnList > li.record a {
	background: linear-gradient(to bottom, #91A300 0%,#3A5800 100%);
	background: -webkit-linear-gradient(to bottom, #91A300 0%,#3A5800 100%);
}
.sideContactSec .contactBox {
	clear: both;
	margin: 2px 0 0 0;
	padding: 20px 10px;
	background: #EEEEEE;
}
.sideContactSec .contactBox .btn {
	margin: 0;
}
.sideContactSec .contactBox .btn a {
	display: block;
	color: #ffffff;
	line-height: 1.3;
	padding: 15px 0 15px 42px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	position: relative;
	background: linear-gradient(to bottom, #F09300 0%,#CD5D00 100%);
	background: -webkit-linear-gradient(to bottom, #F09300 0%,#CD5D00 100%);
}
.sideContactSec .contactBox .btn a::before {
	content: "";
	width: 30px;
	height: 24px;
	position: absolute;
	top: 50%;
	left: 8px;
	margin: -12px 0 0 0;
	background: url(../img/common/side_contact_icon01.png) 0 0 no-repeat;
}
.sideContactSec .contactBox .btn a::after {
	font-family: FontAwesome;
	content: "\f105";
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -10px 0 0 0;
}
.sideContactSec .contactBox .telList {
	margin: 15px 0 0 0;
	padding: 0;
}
.sideContactSec .contactBox .telList dt {
	margin: 0;
	padding: 0;
	font-size: 12px;
}
.sideContactSec .contactBox .telList dd {
	margin: 5px 0 0 0;
	padding: 0;
}
.sideLinkList {
	margin: 15px 0 0 0;
	padding: 0;
}
.sideLinkList > li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	border-bottom: 1px dotted #3A2E2A;
}
.sideLinkList > li a {
	display: block;
	color: #444444;
	text-decoration: none;
	padding: 10px;
	position: relative;
}
.sideLinkList > li a::after {
	font-family: FontAwesome;
	content: "\f105";
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -12px 0 0 0;
}
.sideLinkList2 {
	margin: 20px 0 0 0;
	padding: 0;
}
.sideLinkList2 > li {
	margin: 10px 0 0 0;
	padding: 0;
	list-style-type: none;
}
.sideLinkList2 > li a {
	display: block;
	color: #ffffff;
	font-size: 15px;
	padding: 10px 0 10px 47px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	position: relative;
}
.sideLinkList2 > li a::after {
	font-family: FontAwesome;
	content: "\f105";
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -12px 0 0 0;
}
.sideLinkList2 > li.shop a {
	background: #4A0D05 url(../img/common/side_bn_icon_shop.png) 8px center no-repeat;
}
.sideLinkList2 > li.facebook a {
	background: #415B8D url(../img/common/side_bn_icon_facebook.png) 8px center no-repeat;
}
.sideLinkList2 > li.blog a {
	background: #382E2A url(../img/common/side_bn_icon_blog.png) 8px center no-repeat;
}


/* ttl */
.ttlType01 {
	clear: both;
	color: #392D2A;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.2;
	margin: 35px 0 20px 0;
	padding: 0 0 10px 0;
	border-bottom: 4px solid #3A2E2A;
}


/* footer
-------------------------------------------------------------------*/
#footer {
	clear: both;
	margin: 80px 0 0 0;
	padding: 30px 0;
	background: #3E332F;
}
@media only screen and (max-width: 767px) {
	#footer {
		padding: 10px 0;
	}
}
#footer .row01 {
	clear: both;
	padding: 0 0 20px 0;
	margin: 0 0 20px 0;
	border-bottom: 1px solid #64605E
}
#footer .footerLinkList01 {
	float: left;
	margin: 0 35px 0 0;
	padding: 0;
}
@media only screen and (max-width: 767px) {
	#footer .footerLinkList01 {
		float: none;
		margin: 0;
	}
}
#footer .footerLinkList01 > li {
	margin: 5px 0 0 0;
	padding: 0;
	list-style-type: none;
}
@media only screen and (max-width: 767px) {
	#footer .footerLinkList01 > li {
		margin-top: 10px;
	}
}
#footer .footerLinkList01 > li a {
	color: #9F9998;
	font-size: 12px;
}
@media only screen and (max-width: 767px) {
	#footer .footerLinkList01 > li a {
		color: #ffffff;
		font-size: 16px;
	}
}
#footer .footerLinkList01 > li a::before {
	font-family: FontAwesome;
	content: "\f105";
	display: inline-block;
	margin: 0 5px 0 0;
}
#footer .logo {
	float: right;
}
@media only screen and (max-width: 767px) {
	#footer .logo {
		display: none;
	}
}
#footer .row02 {
	clear: both;
}
#footer .footerLinkList02 {
	margin: 0 0 20px 0;
	padding: 0;
}
#footer .footerLinkList02 > li {
	float: left;
	margin: 0 20px 0 0;
	padding: 0;
	list-style-type: none;
}
@media only screen and (max-width: 767px) {
	#footer .footerLinkList02 > li {
		float: none;
		margin: 10px 0 0 0;
	}
}
#footer .footerLinkList02 > li a {
	color: #9F9998;
	font-size: 12px;
}
@media only screen and (max-width: 767px) {
	#footer .footerLinkList02 > li a {
		color: #ffffff;
		font-size: 16px;
	}
}
#footer .footerLinkList02 > li a::before {
	font-family: FontAwesome;
	content: "\f105";
	display: inline-block;
	margin: 0 5px 0 0;
}
#footer .cr {
	clear: both;
	text-align: right;
	font-size: 10px;
	color: #9F9998;
}
@media only screen and (max-width: 767px) {
	#footer .cr {
		text-align: center;
		font-size: 12px;
	}
}
#menuBody #btnClose {
	display: none;
}
@media only screen and (max-width: 767px) {
	#menuBody #btnClose {
		display: block;
		float: right;
		color: #ffffff;
		font-size: 36px;
		margin: 0 0 10px 0;
	}
	#menuBody {
		position: fixed;
		top: 0;
		right: -275px;
		width: 275px;
		height: 100%;
		padding: 10px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		background: #3E332F;
		overflow-x: hidden;
		z-index: 3000;
		-webkit-overflow-scrolling: touch;
		-webkit-transition: all .2s;
				transition: all .2s;
	}
	#menuBody.open {
		-webkit-transform: translate3d(-275px, 0, 0);
				transform: translate3d(-275px, 0, 0);
	}
	#overlay  {
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		z-index: 2000;
		background: rgba(0, 0, 0, .3);
	}
}
#footer .sideContactSec {
	display: none;
}
@media only screen and (max-width: 767px) {
	#footer .sideContactSec {
		display: block;
		margin-bottom: 20px;
	}
	#footer .sideContactSec .estimateBox .btnList > li a ,
	#footer .sideContactSec .contactBox .btn a {
		font-size: 16px;
	}
	#footer .sideContactSec .contactBox .telList dt {
		font-size: 16px;
	}
}
#footer .sideLinkList2 {
	display: none
}
@media only screen and (max-width: 767px) {
	#footer .sideLinkList2 {
		display: block;
	}
}


/* 調整用
---------------------------------------------------------------------------- */
.mt0 { margin-top: 0!important; }
.mt5 { margin-top: 5px!important; }
.mt10 { margin-top: 10px!important; }
.mt15 { margin-top: 15px!important; }
.mt20 { margin-top: 20px!important; }
.mt30 { margin-top: 30px!important; }
.mt35 { margin-top: 35px!important; }
.mt40 { margin-top: 40px!important; }
.mt50 { margin-top: 50px!important; }
.mt100 { margin-top: 100px!important; }
.mr0 { margin-right: 0!important; }
.mr5 { margin-right: 5px!important; }
.mr10 { margin-right: 10px!important; }
.mr15 { margin-right: 15px!important; }
.mr20 { margin-right: 20px!important; }
.mr25 { margin-right: 25px!important; }
.mb0 { margin-bottom: 0!important; }
.mb5 { margin-bottom: 5px!important; }
.mb10 { margin-bottom: 10px!important; }
.mb12 { margin-bottom: 12px!important; }
.mb15 { margin-bottom: 15px!important; }
.mb20 { margin-bottom: 20px!important; }
.mb25 { margin-bottom: 25px!important; }
.mb30 { margin-bottom: 30px!important; }
.mb35 { margin-bottom: 35px!important; }
.mb40 { margin-bottom: 40px!important; }
.mb50 { margin-bottom: 50px!important; }
.mb60 { margin-bottom: 60px!important; }
.mb80 { margin-bottom: 80px!important; }
.ml0 { margin-left: 0!important; }
.ml5 { margin-left: 5px!important; }
.ml10 { margin-left: 10px!important; }
.ml15 { margin-left: 15px!important; }
.ml20 { margin-left: 20px!important; }
.ml25 { margin-left: 25px!important; }
.ml30 { margin-left: 30px!important; }


.clearB	{ clear: both!important;}
.floatR { float: right!important; }
.floatL { float: left!important; }

.taCenter { text-align: center!important; }
.taRight { text-align: right!important; }
.taLeft { text-align: left!important; }
.vaMiddle { vertical-align: middle!important; }
.fwBold { font-weight: bold!important; }

.fs11 { font-size: 11px!important; }
.fs12 { font-size: 12px!important; }
.fs14 { font-size: 14px!important; }
.fs16 { font-size: 16px!important; }
.fs20 { font-size: 20px!important; }

.w100per { width: 100%;}

.minIndent {
	padding-left: 1em;
	text-indent: -1em;
}
.notFloat {
	overflow: hidden;
	_zoom: 1;
}

/* clearfix */
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
.clearfix {zoom:1;}
