@charset "utf-8";


/*---------------------------------------------------------------------------------------
	大枠設定
----------------------------------------------------------------------------------------*/

body{
	font-family: "Noto Sans Japanese";
	color: #231815;
	font-weight: 400;
	text-align: center;
	background: url(../images/bg.jpg) repeat center top;
	overflow-x: hidden;
}
#wrapper{
	max-width: 1500px;
	margin: 0 auto;
	background: #fff;
}
.switch{}
a{ box-sizing: border-box; color: #231815; text-decoration: none;}
a:hover{ color: #999; text-decoration: none;}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:768px){
	body {
		font-size: 13px;
		background: #fff;
	}
	a:hover{ color: #231815;}
}






/*---------------------------------------------------------------------------------------
	header
----------------------------------------------------------------------------------------*/

header{
	height: 170px;
	position: fixed;
	top: 0;
	background: #fff;
	width: 100%;
	max-width: 1500px;
	z-index: 1000;
}
/* div */
header #headerwrap{
	width: 980px;
	margin: 0 auto;
	padding-top: 15px;
	position: relative;
}
header #headerwrap h1{
	float: left;
}
header #headerwrap h1 span{
	display: inline-block;
	font-size: 18px;
	vertical-align: bottom;
	padding-bottom: 20px;
}
header #headerwrap p{
	display: none;
}
/* nav */
header nav{
	clear: both;
	height: 55px;
	background: #754424;
}
header nav ul{
	width: 980px;
	margin: 0 auto;
	position: relative;
}
header nav ul li{
	float: left;
	height: 55px;
	color: #fff;
	font-weight: bold;
}
header nav ul li>a{
	display: block;
	color: #fff;
	height: 55px;
}
header nav ul li:nth-child(1){
	width: 220px;
}
header nav ul li:nth-child(1) span{
	display: block;
	font-size: 18px;
	letter-spacing: .2em;
	line-height: 55px;
	cursor: pointer;
}
header nav ul li:nth-child(1) span:hover, header nav ul li a:hover{
	color: #fff;
	opacity: .5;
}
header nav ul li:nth-child(1) span:before{
	display: inline-block;
	content: "";
	width: 18px;
	height: 18px;
	background: url(../images/header-nav1.png);
	vertical-align: middle;
	margin-right: 10px;
}
header nav ul li:nth-child(1) div.wrap{
	display: none;
	position: absolute;
	left: -260px;
	top: 55px;
	width: 1500px;
	margin: 0 auto;
	background: #fff;
	z-index: 99999;
	box-shadow:0px 2px 5px -5px #000000;
}
header nav ul li:nth-child(1) div.wrap2{
	max-width: 980px;
	margin: 0 auto;
	color: #754424;
	text-align: left;
	padding: 30px 0;
	overflow: hidden;
}
header nav ul li:nth-child(1) div.wrap2 a{
	color: #754424;
}
header nav ul li:nth-child(1) div.wrap2 div{
	float: left;
	min-height: 200px;
	padding-left: 20px;
	padding-right: 10px;
	border-right: 1px solid #754424;
	overflow: hidden;
}
header nav ul li:nth-child(1) div.wrap2 div:last-child{
	border: none;
}
header nav ul li:nth-child(1) div.wrap2 div p{
	font-weight: bold;
	margin-bottom: 5px;
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) p:after{
	display: inline-block;
	content: "";
	width: 60px;
	height: 62px;
	background: url(../images/header-nav1-icon1.png);
	vertical-align: middle;
	margin-left: 5px;
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(2) p:after{
	display: inline-block;
	content: "";
	width: 60px;
	height: 62px;
	background: url(../images/header-nav1-icon2.png);
	vertical-align: middle;
	margin-left: 5px;
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(3) p:after{
	display: inline-block;
	content: "";
	width: 90px;
	height: 62px;
	background: url(../images/header-nav1-icon3.png);
	vertical-align: middle;
	margin-left: 5px;
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl{
	float: left;
	margin-right: 20px;
}
header nav ul li:nth-child(1) div.wrap2 div dl{
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	margin-right: 15px;
	padding-left: 1.2em;
}
header nav ul li:nth-child(1) div.wrap2 div dl dt{
	position: relative;
	margin-bottom: 5px;
}
header nav ul li:nth-child(1) div.wrap2 div dl dt:before{
	display: inline;
	position: absolute;
	left: -1.2em;
	top: .02em;
	content: "■";
}
header nav ul li:nth-child(1) div.wrap2 div dl dd{
	font-size: 11px;
	padding-left: .7em;
	position: relative;
}
header nav ul li:nth-child(1) div.wrap2 div dl dd:before{
	display: inline;
	position: absolute;
	left: -.3em;
	top: .02em;
	content: "・";
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(1),
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(3){
	clear: left;
	float: left;
	width: 7em;
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(2),
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(4){
	float: left;
}
header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(5){
	clear: both;
}
header nav ul li:nth-child(2), header nav ul li:nth-child(5){
	width: 155px;
	line-height: 1.4;
	letter-spacing: .2em;
	background: #1D9C4B;
}
header nav ul li:nth-child(2) small, header nav ul li:nth-child(5) small{
	display: block;
	font-size: 8px;
	letter-spacing: -.05em;
	padding-top: 10px;
}
header nav ul li:nth-child(3){
	width: 270px;
	font-size: 18px;
	line-height: 55px;
	position: relative;
}
header nav ul li:nth-child(3):after{
	content: "";
	position: absolute;
	right: 0;
	top: 17px;
	height: 20px;
	width: 2px;
	background: #fff;
}
header nav ul li:nth-child(4){
	width: 180px;
	font-size: 18px;
	line-height: 55px;
	position: relative;
}
header nav ul li:nth-child(6){
	position: absolute;
	top: -72px;
	right: 165px;
}
header nav ul li:nth-child(7){
	position: absolute;
	top: -72px;
	right: 76px;
}
header nav ul li:nth-child(8){
	position: absolute;
	top: -72px;
	right: 0;
}
header nav ul li:nth-child(6) a, header nav ul li:nth-child(7) a, header nav ul li:nth-child(8) a{
	display: inline-block;
	color: #111;
	font-size: 9px;
}
header nav ul li:nth-child(6) a:hover, header nav ul li:nth-child(7) a:hover, header nav ul li:nth-child(8) a:hover{
	opacity: .5;
}
header nav ul li:nth-child(6) a img, header nav ul li:nth-child(7) a img, header nav ul li:nth-child(8) a img{
	display: block;
	margin: 0 auto;
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:1000px){
	header{
		width: 100%;
		max-width: 100%;
		height: 65px;
		background: #fff;
	}
	/* headerwrap */
	header #headerwrap{
		background: #fff;
		width: 100%;
		height: 65px;
		z-index: 999999;
		padding: 0;
		margin: 0;
		position: relative;
	}
	header #headerwrap h1{
		position: absolute;
		left: 0;
		top: 0;
		float: none;
		padding-left: 10px;
	}
	header #headerwrap h1 img{
		height:65px;
		width:auto;
	}
	header #headerwrap h1 span{
		display: inline-block;
		font-size: 10px;
		text-align: left;
		vertical-align: bottom;
		padding-bottom: 10px;
	}
	header #headerwrap p{
		display: inline-block;
		float: right;
		right: 0;
		top: 0;
		width: 65px;
		height: 65px;
		cursor: pointer;
		position: relative;
		z-index: 101;
		transition: all .4s;
	}
	header #headerwrap p span{
		display: inline-block;
		position: absolute;
		left: 25%;
		width: 50%;
		height: 4px;
		background: #231815;
		border-radius: 4px;
		transition: all .4s;
	}
	header #headerwrap p span:nth-of-type(1) { top: 20px;}
	header #headerwrap p span:nth-of-type(2) { top: 30px;}
	header #headerwrap p span:nth-of-type(3) { bottom: 20px;}
	header.open #headerwrap p span:nth-of-type(1) { -webkit-transform: translateY(10px) rotate(-45deg); transform: translateY(10px) rotate(-45deg);}
	header.open #headerwrap p span:nth-of-type(2) { opacity: 0;}
	header.open #headerwrap p span:nth-of-type(3) { -webkit-transform: translateY(-11px) rotate(45deg); transform: translateY(-11px) rotate(45deg);}
	/* nav */
	header nav{
		position: absolute;
		top: -1100px;
		background: #754424;
		width: 100%;
		height: auto;
		text-align: center;
		padding: 0 20px 15px;
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		z-index: 99999;
		box-shadow:0px 2px 5px -3px #000000;
	}
	header.open nav{
		-moz-transform: translateY(1165px);
		-webkit-transform: translateY(1165px);
		transform: translateY(1165px);
	}
	header nav ul{
		position: static;
		font-size: 14px;
		width: auto;
	}
	header nav ul li{
		float: none;
		height: auto;
		color: #fff;
		font-weight: bold;
	}
	header nav ul li>a{
		display: block;
		color: #fff;
		height: auto;
	}
	header nav ul li:nth-child(1){
		width: auto;
		background: #754424;
	}
	header nav ul li:nth-child(1) span{
		display: block;
		font-size: 16px;
		letter-spacing: .2em;
		line-height: 50px;
		cursor: pointer;
	}
	header nav ul li:nth-child(1) span:hover, header nav ul li a:hover{
		color: #fff;
		opacity: 1;
	}
	header nav ul li:nth-child(1) span:before{
		display: inline-block;
		content: "";
		width: 12px;
		height: 12px;
		background: url(../images/header-nav1.png);
		background-size: 12px;
		vertical-align: middle;
		margin-right: 15px;
	}
	header nav ul li:nth-child(1).open span:before{
		background: url(../images/header-nav1-open.png);
		background-size: 12px;
	}
	header nav ul li:nth-child(1) div.wrap{
		display: none;
		position: static;
		width: auto;
		margin: 0 auto 10px;
		background: #fff;
	}
	header nav ul li:nth-child(1) div.wrap2{
		color: #754424;
		text-align: left;
		padding: 0 10px;
		overflow: hidden;
	}
	header nav ul li:nth-child(1) div.wrap2 div{
		float: none;
		min-height: inherit;
		padding: 10px;
		border-right: none;
		border-bottom: 1px solid #754424;
		overflow: hidden;
	}
	header nav ul li:nth-child(1) div.wrap2 div:last-child{
		border: none;
	}
	header nav ul li:nth-child(1) div.wrap2 div p{
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 5px;
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) p:after{
		display: inline-block;
		content: "";
		width: 30px;
		height: 31px;
		background: url(../images/header-nav1-icon1.png);
		background-size: 30px auto;
		vertical-align: middle;
		margin-left: 5px;
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(2) p:after{
		display: inline-block;
		content: "";
		width: 30px;
		height: 31px;
		background: url(../images/header-nav1-icon2.png);
		background-size: 30px auto;
		vertical-align: middle;
		margin-left: 5px;
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(3) p:after{
		display: inline-block;
		content: "";
		width: 45px;
		height: 31px;
		background: url(../images/header-nav1-icon3.png);
		background-size: 45px auto;
		vertical-align: middle;
		margin-left: 5px;
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl{
		float: left;
		margin-right: 30px;
	}
	header nav ul li:nth-child(1) div.wrap2 div dl{
		font-size: 14px;
		font-weight: 400;
		line-height: 1.4;
		margin-right: 15px;
		margin-bottom: 5px;
		padding-left: 1.2em;
	}
	header nav ul li:nth-child(1) div.wrap2 div dl dt{
		position: relative;
		margin-bottom: 5px;
	}
	header nav ul li:nth-child(1) div.wrap2 div dl dt:before{
		display: inline;
		position: absolute;
		left: -1.2em;
		top: .02em;
		content: "■";
	}
	header nav ul li:nth-child(1) div.wrap2 div dl dd{
		font-size: 13px;
		padding-left: .7em;
		position: relative;
	}
	header nav ul li:nth-child(1) div.wrap2 div dl dd:before{
		display: inline;
		position: absolute;
		left: -.3em;
		top: .02em;
		content: "・";
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(1),
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(3){
		clear: left;
		float: left;
		width: 7em;
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(2),
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(4){
		float: left;
	}
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(1) dd:nth-of-type(5){
		clear: both;
	}
	header nav ul li:nth-child(2), header nav ul li:nth-child(5){
		width: auto;
		line-height: 1.4;
		letter-spacing: .2em;
		background: #1D9C4B;
	}
	header nav ul li:nth-child(2) a, header nav ul li:nth-child(5) a{
		padding: 10px 0;
	}
	header nav ul li:nth-child(2) small, header nav ul li:nth-child(5) small{
		display: block;
		font-size: 8px;
		letter-spacing: -.05em;
		padding-top: 0;
	}
	header nav ul li:nth-child(3){
		width: auto;
		font-size: 16px;
		line-height: 55px;
		position: static;
		border-bottom: 1px solid #fff;
	}
	header nav ul li:nth-child(3):after{
		content: none;
	}
	header nav ul li:nth-child(4){
		width: auto;
		font-size: 16px;
		line-height: 55px;
		position: relative;
	}
	header nav ul li:nth-child(6),
	header nav ul li:nth-child(7),
	header nav ul li:nth-child(8){
		position: static;
		display: inline-block;
		padding: 10px 0 0;
	}
	header nav ul li:nth-child(6) a, header nav ul li:nth-child(7) a, header nav ul li:nth-child(8) a{
		display: inline-block;
		color: #fff;
		font-size: 9px;
		padding: 50px 10px 5px;
	}
	header nav ul li:nth-child(6) a{ background: url(../images/header-contact-sp.png) no-repeat center top; background-size: 50px auto;}
	header nav ul li:nth-child(7) a{ background: url(../images/header-shop-sp.png) no-repeat center top; background-size: 50px auto;}
	header nav ul li:nth-child(8) a{ background: url(../images/header-insta-sp.png) no-repeat center top; background-size: 50px auto;}
	header nav ul li:nth-child(6) a:hover, header nav ul li:nth-child(7) a:hover, header nav ul li:nth-child(8) a:hover{
		opacity: 1;
	}
	header nav ul li:nth-child(6) a img, header nav ul li:nth-child(7) a img, header nav ul li:nth-child(8) a img{
		display: none;
	}
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:768px){
	header nav ul li:nth-child(1) div.wrap2 div:nth-child(1) dl:nth-of-type(3){
		clear: both;
	}
	
	header.open_nav.open nav {
		overflow-y: auto;
		height: calc(100vh - 65px);
		padding-bottom: 80px;
	}
	
	
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:500px){
	header #headerwrap h1 span{
		display: none;
	}
}






/*---------------------------------------------------------------------------------------
	contents
----------------------------------------------------------------------------------------*/

#contents{
	margin-top: 170px;
}
/* contentswrap */
#contents .contentswrap{
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
/* title */
#contents .title{
	clear: both;
	color: #764424;
	font-weight: 900;
}
#contents .title span{
	display: inline-block;
	font-size: 20px;
	letter-spacing: .5em;
	text-indent: .5em;
	line-height: 1.4;
	transform: scale(.84, 1);
	border-bottom: 10px solid #764424;
	overflow: hidden;
}
#contents .title span.hodai{
	font-size: 18px;
	transform: none;
}
#contents .title strong{
	display: block;
	font-size: 35px;
}
#contents .title strong.em3{
	text-indent: 1.7em;
	letter-spacing: 1.7em;
}
#contents .title strong.em5{
	text-indent: .1em;
	letter-spacing: .1em;
}
/* titleitem */
#contents .titleitem{
	clear: both;
	font-size: 35px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 10px;
}
#contents .titleitem span{
	display: inline-block;
	color: #764424;
	font-size: 12px;
	font-weight: 900;
	padding: 0 10px;
	border: 1px solid #764424;
	margin-bottom: 15px;
}
#contents .titleitem small{
	font-size: 24px;
}
/* titlebrown */
#contents .titlebrown{
	clear: both;
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	padding: 8px 15px;
	background: #764424;
}
#contents .titlebrown2{
	clear: both;
	color: #fff;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	padding: 3px 15px;
	background: #b79f8e;
	margin-bottom: 20px;
}
#contents .titlebrown2 em{
	display: inline-block;
	color: #fff;
	font-weight: 600;
	line-height: 1.3;
	padding: 3px 15px;
	margin: -3px 15px -3px -15px;
	background: #764424;
	vertical-align: top;
}
/* titleborder */
#contents .titleborder{
	clear: both;
	color: #764424;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	padding: 5px 15px 7px;
	border: 1px solid #764424;
}
/* catch */
#contents .catch{
	clear: both;
	font-size: 18px;
	font-weight: 900;
	padding-bottom: 3px;
	border-bottom: 2px solid #000;
	margin-bottom: 10px;
}
/* estimate */
#contents .estimate{
	clear: both;
	padding: 20px;
	background: #EBE0CA;
	margin-bottom: 30px;
}
#contents .estimate p{
	font-weight: 900;
	margin-bottom: 10px;
}
#contents .estimate ol{
	clear: both;
	display: table;
	width: 100%;
	min-height: 60px;
	font-weight: 600;
	margin-bottom: 15px;
}
#contents .estimate ol li{
	display: table-cell;
	font-size: 11px;
	line-height: 1.2;
	white-space: nowrap;
	text-align: center;
	padding-left: 35px;
	vertical-align: middle;
	background: url(../images/estimate-bg.png) no-repeat left top #fff;
	background-size: 35px 100%;
	position: relative;
}
#contents .estimate ol li:before{
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	width: 35px;
	content: "＋";
	color: #764424;
	font-size: 18px;
	margin-top: -.6em;
}
#contents .estimate ol li:first-child{ padding-left: 0; background: #fff;}
#contents .estimate ol li:first-child:before{ content: none;}
#contents .estimate ol li:last-child:before{ content: "＝";}
#contents .estimate ol li div{
	padding: 10px 5px;
}
#contents .estimate ol.list5 li div{ min-width: 120px;}
#contents .estimate ol.list6 li div{ min-width: 90px;}
#contents .estimate ol.list7 li div{ min-width: 70px;}
#contents .estimate ol li div span{
	display: inline-block;
	vertical-align: middle;
	margin-left: .5em;
}
#contents .estimate ol li div span.sponly{
	display: none;
}
#contents .estimate ol li div span:first-child{ margin-left: 0;}
#contents .estimate table{
	clear: both;
	font-size: 10px;
	border-left: 4px solid #764424;
}
#contents .estimate table th{
	clear: left;
	float: left;
	white-space: nowrap;
	padding-left: 10px;
	vertical-align: top;
}
#contents .estimate table td{
	vertical-align: top;
}
/* aside */
#contents aside{
	clear: both;
	max-width: 980px;
	min-height: 100px;
	padding: 70px 5% 0;
	text-align: left;
	margin: 0 auto;
}
#contents aside #negayama img{
	display: inline-block;
	vertical-align: middle;
	margin-bottom: -20px;
}
#contents aside #negayama img:hover, #contents aside #negayama img:focus, #contents aside #negayama img:active {
	-webkit-animation-name: hvr-wobble-vertical;
	animation-name: hvr-wobble-vertical;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
}
@-webkit-keyframes hvr-wobble-vertical {
	16.65% { -webkit-transform: translateY(8px); transform: translateY(8px);}
	33.3% { -webkit-transform: translateY(-6px); transform: translateY(-6px);}
	49.95% { -webkit-transform: translateY(4px); transform: translateY(4px);}
	66.6% { -webkit-transform: translateY(-2px); transform: translateY(-2px);}
	83.25% { -webkit-transform: translateY(1px); transform: translateY(1px);}
	100% { -webkit-transform: translateY(0); transform: translateY(0);}
}
@keyframes hvr-wobble-vertical {
	16.65% { -webkit-transform: translateY(8px); transform: translateY(8px);}
	33.3% { -webkit-transform: translateY(-6px); transform: translateY(-6px);}
	49.95% { -webkit-transform: translateY(4px); transform: translateY(4px);}
	66.6% { -webkit-transform: translateY(-2px); transform: translateY(-2px);}
	83.25% { -webkit-transform: translateY(1px); transform: translateY(1px);}
	100% { -webkit-transform: translateY(0); transform: translateY(0);}
}
#contents aside #pagetop{
	position: fixed;
	bottom: 40px;
	right: 20px;
	cursor: pointer;
	z-index: 999;
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:1000px){
	#contents{
		margin-top: 65px;
	}
	/* contentswrap */
	#contents .contentswrap{
		margin-left: 5%;
		margin-right: 5%;
	}
	/* estimate */
	#contents .estimate{
		clear: both;
		padding: 5%;
		background: #E5DED9;
	}
	#contents .estimate p{
		font-size: 14px;
		font-weight: 900;
		margin-bottom: 10px;
	}
	#contents .estimate ol{
		min-height: inherit;
	}
	#contents .estimate ol li{
		display: block;
		font-size: 12px;
		line-height: 1.2;
		white-space: nowrap;
		text-align: center;
		padding-left: 0;
		vertical-align: middle;
		background: #fff;
		position: relative;
		margin-bottom: 8px;
	}
	#contents .estimate ol li:before{
		display: inline-block;
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
/*		width: 100%;*/
		width: 35px;
		content: none;
		color: #764424;
		font-size: 18px;
		margin-top: -.6em;
		margin-right: auto;
		margin-left: auto;
	}
	#contents .estimate ol li:first-child{ padding-left: 0; background: #fff;}
	#contents .estimate ol li:first-child:before{ content: none;}
	#contents .estimate ol li:last-child{ margin-top: 35px;}
	#contents .estimate ol li:last-child:before{ content: "▼"; top: -20px; font-size: 30px; transform: scale(1.5, 1); line-height: 35px;}
	#contents .estimate ol li div{
		padding: 10px 5px;
	}
	#contents .estimate ol li div span{
		display: inline;
		vertical-align: bottom;
		margin-left: 0;
	}
	#contents .estimate ol li div span.sponly{
		display: inline;
	}
	#contents .estimate ol li div span:first-child{ margin-left: 0;}
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:768px){
	/* title */
	#contents .title span{
		letter-spacing: .2em;
		text-indent: .2em;
		border-bottom: 7px solid #764424;
	}
	#contents .title strong{
		display: block;
		font-size: 20px;
	}
	#contents .title strong.em5{
		text-indent: .4em;
		letter-spacing: .4em;
	}
	/* titleitem */
	#contents .titleitem{
		clear: both;
		font-size: 20px;
		font-weight: 900;
		line-height: 1.3;
		margin-bottom: 5px;
	}
	#contents .titleitem span{
		display: inline-block;
		color: #764424;
		font-size: 11px;
		font-weight: 900;
		padding: 0 10px;
		border: 1px solid #764424;
		margin-bottom: 5px;
	}
	#contents .titleitem small{
		font-size: 16px;
	}
	/* titlebrown */
	#contents .titlebrown{
		clear: both;
		color: #fff;
		font-size: 16px;
		font-weight: 900;
		line-height: 1.3;
		padding: 3px 15px;
		background: #764424;
	}
	/* catch */
	#contents .catch{
		clear: both;
		font-size: 14px;
		font-weight: 900;
		padding-bottom: 3px;
		border-bottom: 2px solid #000;
		margin-bottom: 10px;
	}
	/* aside */
	#contents aside{
		clear: both;
		max-width: 980px;
		min-height: 50px;
		padding: 20px 5% 0;
		text-align: left;
		margin: 0 auto;
	}
	#contents aside #negayama img{
		display: inline-block;
		vertical-align: middle;
		width: 70%;
		max-width: 330px;
		height: auto;
		margin-bottom: -10px;
	}
	#contents aside #negayama img:hover, #contents aside #negayama img:focus, #contents aside #negayama img:active {
		-webkit-animation-name: none;
		animation-name: none;
		-webkit-animation-duration: none;
		animation-duration: none;
	}
	#contents aside #pagetop{
		position: fixed;
		bottom: 10px;
		right: 10px;
		cursor: pointer;
		z-index: 999;
	}
	#contents aside #pagetop img{
		width: 50px;
		height: auto;
	}
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:500px){
	#contents .estimate table th{
		display: block;
		clear: left;
		float: none;
		white-space: nowrap;
		padding-left: 5px;
		vertical-align: top;
	}
	#contents .estimate table td{
		display: block;
		vertical-align: top;
		padding-left: 5px;
		margin-left: 2em;
	}
}






/*---------------------------------------------------------------------------------------
	footer
----------------------------------------------------------------------------------------*/

footer{
	clear: both;
	padding: 0 5%;
	background: url(../images/footer-bg.jpg) no-repeat center top;
	background-size: cover;
}
footer a{
	color: #fff;
}
footer #footerwrap{
	max-width: 980px;
	color: #fff;
	font-size: 12px;
	text-align: left;
	padding: 60px 0;
	margin: 0 auto;
	overflow: hidden;
}
footer #footerwrap p.logo{
	float: left;
	margin-bottom: 30px;
}
footer #footerwrap div.fnav{
	float: right;
	width: 75%;
	margin-bottom: 30px;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}
footer #footerwrap div.fnav div p{
	font-weight: 600;
	letter-spacing: .2em;
	padding-left: 20px;
	position: relative;
	margin-bottom: 5px;
}
footer #footerwrap div.fnav div p:before{
	display: inline;
	position: absolute;
	left: 0;
	top: .02em;
	content: "■";
	color: #1D9C4B;
}
footer #footerwrap div.fnav1{
	border-right: 1px solid #fff;
	margin-bottom: 15px;
	overflow: hidden;
	width: calc(100% - 220px);
}
footer #footerwrap div.fnav1 dl{
	float: left;
	min-height: 130px;
	padding: 0 3%;
	border-right: 1px solid #fff;
}
footer #footerwrap div.fnav1 dl:last-child{
	float: left;
	padding: 0 0 0 3%;
	border-right: none;
}
footer #footerwrap div.fnav1 dl dt{
	font-weight: 600;
	margin-bottom: 5px;
}
footer #footerwrap div.fnav1 dl dt a{
	color: #1D9C4B;
}
footer #footerwrap div.fnav1 dl dd{
	font-size: 10px;
	padding-left: 1.2em;
	position: relative;
	margin-bottom: 5px;
}
footer #footerwrap div.fnav1 dl dd:before{
	display: inline;
	position: absolute;
	left: 0;
	top: .02em;
	content: "■";
}


footer #footerwrap div.fnav2{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 15px;
}
footer #footerwrap div.fnav2 .fnav4_wrap {
	margin-top: auto;
}

footer #footerwrap div.fnav2 .fnav4_wrap .sns_wrap {
	text-align: right;
}
footer #footerwrap div.fnav2 .bnr_tatefudalogo {
	width: 180px;
	text-align: right;
	margin: 0;
}
footer #footerwrap div.fnav2 .bnr_tatefudalogo > a > img {
	width: 100%;
	height: auto;
	text-align: right;
}



footer #footerwrap div.fnav3{
	clear: both;
	text-align: left;
	padding-top: 15px;
	border-top: 1px solid #fff;
	width: 100%;
}
footer #footerwrap div.fnav3 p{
	display: inline-block;
	margin-right: 10px;
}
footer #footerwrap div.fnav4{
	display: none;
}



footer p#copy{
	clear: both;
	font-size: 11px;
	font-weight: normal;
	text-indent: .2em;
	letter-spacing: .2em;
	text-align: center;
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:1000px){
	footer #footerwrap div.fnav1{
/* 		margin-right: 14em; */
	}
	footer #footerwrap div.fnav div.fnav2 p{
		letter-spacing: .05em;
	}
	footer #footerwrap p.logo{
		float: none;
		text-align: center;
		margin-bottom: 30px;
	}
	footer #footerwrap div.fnav{
		float: none;
		width: auto;
		max-width: 750px;
		margin: 0 auto 30px;
	}
}
/*------------------------------ sp size ------------------------------*/
@media screen and (max-width:768px){
	footer #footerwrap{
		padding: 30px 0;
	}
	footer #footerwrap p.logo{
		float: none;
		text-align: center;
		margin-bottom: 20px;
	}
	footer #footerwrap p.logo img{
		width: 25%;
		max-width: 174px;
		height: auto;
	}
	footer #footerwrap div.fnav{
		float: none;
		width: auto;
		max-width: 750px;
		margin: 0 auto;
		position: relative;
		display: block;
	}
	footer #footerwrap div.fnav div p{
		letter-spacing: .2em;
		padding-left: 20px;
		position: relative;
		margin-bottom: 5px;
	}
	footer #footerwrap div.fnav1{
		border-right: none;
		margin-right: 0;
		margin-bottom: 15px;
		overflow: hidden;
		width: 100%;
	}
	footer #footerwrap div.fnav1 dl{
		float: left;
		width: 50%;
		min-height: inherit;
		padding: 0 3%;
		border-right: none;
		margin-bottom: 10px;
	}
	footer #footerwrap div.fnav1 dl:last-child{
		float: none;
		padding: 0 0 0 3%;
		border-right: none;
	}
	footer #footerwrap div.fnav1 dl dt{
		font-weight: 600;
		margin-bottom: 5px;
	}
	footer #footerwrap div.fnav1 dl dt a{
		color: #1D9C4B;
	}
	footer #footerwrap div.fnav1 dl dd{
		font-size: 10px;
		padding-left: 1.2em;
		position: relative;
		margin-bottom: 5px;
	}
	footer #footerwrap div.fnav1 dl dd:before{
		display: inline;
		position: absolute;
		left: 0;
		top: .02em;
		content: "■";
	}
	footer #footerwrap div.fnav2{
		position: static;
		padding: 15px 0 10px;
		border-top: 1px solid #fff;
		margin-bottom: 0;
	}

	footer #footerwrap div.fnav2 .fnav4_wrap {
		display: none;
	}	
	
	
	footer #footerwrap div.fnav3{
		clear: both;
		text-align: left;
		padding-top: 15px;
		border-top: 1px solid #fff;
	}
	footer #footerwrap div.fnav3 p{
		display: inline-block;
		margin-right: 10px;
	}
	footer #footerwrap div.fnav4{
		display: block;
		text-align: center;
		padding: 15px 0;
	}
	
	footer #footerwrap div.fnav4 .sns_wrap {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowrap;
		flex-wrap: nowrap;
		justify-content: center;
	}
	footer #footerwrap div.fnav4 .sns_wrap > div {
		width: 20%;
		max-width: 80px;
		height: auto;
		margin: 0 5px;
	}
	footer #footerwrap div.fnav4 > .bnr_tatefudalogo {
		width: 60%;
		margin: 0 auto;
	}
	footer #footerwrap div.fnav4 > .bnr_tatefudalogo > a > img {width: 100%;}
	
	
}

























