@charset "utf-8";

body {
	margin: 0;
	padding: 0;
	text-align: left;
	color: #2a1a15;
}
ul,ol {
	list-style: none;
}
p {
	color: #2a1a15;
	font-weight: 500;
}

/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

.clear {
	clear: both;
	padding: 0px;
	margin: 0px;
	font-size: 0px;
	line-height: 0px;
	height: 0px;
}

.clBoth {
	clear: both;
}

img, a img {
	font-size: 0;
	line-height: 0;
	margin: 0;
	padding: 0;
}

.content,
.main-wide,
.main-contents {
	width: 100%;
	box-sizing: border-box;
}

.contentWrap {
	padding-bottom: 70px;
	margin: 0 25px;
}

.main-wide {
	padding: 0 0 0;
}

.main-head-icon img {
	width:  96px;
	height: auto;
}

.main-contents h1,
.main-contents h2,
.main-contents h3 {
	border: none;
	padding: 0;
	margin: 0;
}
.main-head-ttl br {
	display: block;
}

.main-contents {
	padding-bottom: 4.5%;
}

.si_wrapper {
	background: #fff;
}

.si_contents {
	max-width: 1075px;
	margin: 0 auto;
	text-align: left;
	position: relative;
}

/*- 色 -*/
.txRed {
	color: #cf0000;
}
.txGreen {
	color: #009534;
}
/*- 注釈系 -*/
.txAnnotation {
	line-height: 1.4;
	font-size: 15px;
}
/*- 装飾系 -*/
.txBold   { font-weight: bold !important; }
.txItalic { font-style: italic !important; }
.txNormal { font-weight: normal !important; }
.txXLarge { font-size: 147%; }
.txLarge  { font-size: 124%; }
.txMedium { font-size: 100%; }
.txSmall  { font-size: 85%; }
.txUnderLine { text-decoration: underline; }

.txLeft   { text-align: left !important; }
.txRight  { text-align: right !important; }
.txCenter { text-align: center !important; }

/*- 回り込み -*/
.fLeft { float: left; }
.fRight { float: right; }

/*- クリア -*/
.clBoth  { clear: both; }

/*- マージン -*/
.m0 { margin: 0 !important; }
.p0 { padding: 0 !important; }
.mb0em  { margin-bottom: 0 !important;}
.mb05em { margin-bottom: 0.5em !important; }
.mb1em  { margin-bottom: 1em !important; }
.pb0em  { padding-bottom: 0 !important;}
.pb05em { padding-bottom: 0.5em !important; }
.pb1em  { padding-bottom: 1em !important; }

.flex-center {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items:center;
}
.flex-around {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}

@media screen and (min-width: 1223px) {
	.sitemap_wrap,
	.footer_wrap {
		width: 100%;
		background-color: #f4f4f4;
	}
}

.wrap .main-area .main-area-contents .main-contents .pankuzu ul {
	margin-top: -6.3px;
}

@media screen and (max-width: 1222px) {
	.bg_wrap {
		min-width: 100%;
	}
	.main,
	.main-wide,
	#main {
		width: 100%;
	}

	.si_contents h1 {
		padding-top: 20px;
	}
}

@media screen and (min-width: 769px) {
	.sp {
		display: none;
	}
	.tablet {
		display: none;
	}
}

@media screen and (max-width: 768px) {
	.pc {
		display: none;
	}
	.tablet {
		display: none;
	}
	.main-head-icon img {
		width:  48px;
	}
	.wrap .main-area .main-area-contents .main-head .main-head-ttl {
		font-size: 18px;
	}
	.si_contents {
		max-width: 100%;
		margin: 0 auto;
		text-align: left;
		padding: 0 15px;
	}
	.contentWrap {
		padding-bottom: 50px;
	}
	.flex-center {
		display: block;
	}
	.flex-around {
		display: block;
	}
	.txXLarge { font-size: 100%; }
	.txLarge  { font-size: 100%; }

}

@media only screen and (min-width: 768px) and (max-width: 1058px) {
	.pc {
		display: none;
	}
	.sp {
		display: none;
	}
	.tablet {
		display: block;
	}
}