@charset "utf-8";

* {
	margin: 0px;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	-webkit-text-size-adjust: 100%;
}
body p {
	padding-top: 5px;
	padding-bottom: 5px;
}
img {
	border-style: none;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
#menu_button {
	position: fixed;
	top: 0px;
	left: 0px;
	cursor: pointer;
	z-index: 4;
	display: inline-block;
	width: 45px;
	height: 45px;
}
#menu_button_line {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	margin: -1px 0px 0px -7px;
	background-color: #000000;
	transition-duration: 0.2s;
}
#menu_button_line:before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0px;
	width: 16px;
	height: 2px;
	background-color: #000000;
	transition-duration: 0.3s;
	margin-top: -7px;
}
#menu_button_line:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0px;
	width: 16px;
	height: 2px;
	background-color: #000000;
	transition-duration: 0.3s;
	margin-top: 5px;
}
#menu_button .close {
	background-color: transparent;
}
#menu_button .close:before {
	margin-top: 0px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#menu_button .close:after {
	margin-top: 0px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
#overlay {
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	background-color: rgba(255,255,255,0.8);
	z-index: 1;
}



header {
	width: 100%;
	height: 10px;
}
nav {
	position: fixed;
	margin-top: -1000px;
	width: 100%;
	z-index: 3;
	background-color: #FFFFFF;
}
nav > ul {
	padding-left: 0px;
}
nav > ul > li {
	list-style-type: none;
	border-bottom: 1px solid #000000;
}



nav > ul > li > a:link {
	display: block;
	padding-top: 25px;
	padding-bottom: 25px;
	color: #000000;
	text-decoration: none;
}
nav > ul > li > a:visited {
	color: #000000;
	text-decoration: none;
}



#site_title {
	z-index: 2;
	margin-top: 70px;
	margin-bottom: 70px;
}
.title_font {
	font-size: 180%;
}
.title_font_sub {
	font-size: 90%;
}



#content_width {
	display: inline-block;
}
#content_width a:link {
	color: #000000;
}
#content_width a:visited {
	color: #8E8E8E;
}



#content_left {
	max-width: 400px;
	margin-left: 5px;
	margin-right: 5px;
}
#content_center {
	max-width: 400px;
	margin-left: 5px;
	margin-right: 5px;
}
#content_right {
	max-width: 400px;
	margin-left: 5px;
	margin-right: 5px;
}



#content_width .img_box {
	margin-bottom: 50px;
}
#content_width img {
	display: block;
	clear: both;
	margin-bottom: 5px;
}
#content_width .img_title {
	font-size: 22px;
	margin-top: 10px;
	margin-bottom: 5px;
}
#content_width .img_text_center {
	margin-left: 5px;
	margin-right: 5px;
}
#content_width .img_text_left {
	text-align: left;
	margin-left: 5px;
	margin-right: 5px;
}



.color1 {
	color: #FF0000; /* 赤色 */
}
.color2 {
	color: #FF6600; /* 橙色 */
}
.color3 {
	color: #564733;
}
.color4 {
	color: #00FFFF; /* 水色 */
}
.color5 {
	color: #4169E1; /* 青色 */
}
.supplement {
	font-size: 90%;
	color: #6C6C6C; /* 補足 */
}



#back_top {
	display: none;
	position: fixed;
	right: 30px;
	bottom: 30px;
	cursor: pointer;
}



/* footer */
footer {
	clear: both;
	margin-top: 50px;
	border-top: 1px solid #000000;
	padding-top: 50px;
	padding-bottom: 50px;
}
footer a:link {
	color: #000000;
	text-decoration: none;
}
footer a:visited {
	color: #000000;
	text-decoration: none;
}



/* news */
#content_width2 {
	max-width: 1000px;
	margin-left: 5px;
	margin-right: 5px;
	margin-bottom: 50px;
}
#news {
}
#news ul {
	padding: 0px;
}
#news ul li {
	text-align: left;
	list-style-type: none;
	border-bottom: #D0D0D0 1px solid;
	padding-top: 10px;
	padding-bottom: 10px;
}
#news ul li:first-child {
	border-top: #D0D0D0 1px solid;
}

/* quality */
#quality {
	text-align: left;
}
#quality p {
	text-indent: 1em;
	margin-bottom: 30px;
}

/* faq */
#faq {
	text-align: left;
}
#faq dt {
	padding-top: 20px;
	padding-bottom: 10px;
	padding-left: 2em;
	text-indent: -2em;
}
#faq dd {
	border-bottom: #D0D0D0 1px solid;
	padding-bottom: 20px;
	padding-left: 2em;
	text-indent: -2em;
}
#faq dt:first-child {
	border-top: #D0D0D0 1px solid;
}
#faq .qa {
	padding-right: 1em;
}

/* contact */
#contact {
	text-align: left;
}
#contact th {
	font-weight: normal;
	padding: 15px;
	background-color: #F5F5F5;
}
#contact td {
	padding: 15px;
	background-color: #FDFDFD;
}

@media only screen and (min-width: 1000px) {
#menu_button {
	display: none;
	color: #D0D0D0;
}
header {
	width: 100%;
	height: 50px;
	border-bottom: 1px solid #000000;
}
nav {
	padding-top: 15px;
	font-size: 90%;
	position: static;
	margin-top: 0px;
	width: auto;
	background-color: transparent;
}
nav > ul {
	padding-left: 0px;
	display: inline-block;
}
nav > ul > li {
	list-style-type: none;
	float: left;
	border-bottom: 0px solid #000000;
	border-right: 0px solid #000000;
}
nav > ul > li > a:link {
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 0px;
	padding-bottom:  0px;
	color: #000000;
	text-decoration: none;
}
nav > ul > li > a:visited {
	color: #000000;
	text-decoration: none;
}



#content_left {
	max-width: 300px;
	float: left;
	margin-left: 0px;
	margin-right: 15px;
}
#content_center {
	max-width: 300px;
	float: left;
	margin-left: 20px;
	margin-right: 20px;
}
#content_right {
	max-width: 300px;
	float: left;
	margin-left: 15px;
	margin-right: 0px;
}
}

@media only screen and (min-width: 1200px) {
#content_left {
	max-width: 350px;
	margin-right: 30px;
}
#content_center {
	max-width: 350px;
	margin-left: 30px;
	margin-right: 30px;
}
#content_right {
	max-width: 350px;
	margin-left: 30px;
}
}

@media only screen and (min-width: 1500px) {
#content_left {
	max-width: 400px;
	margin-right: 65px;
}
#content_center {
	max-width: 400px;
	margin-left: 70px;
	margin-right: 70px;
}
#content_right {
	max-width: 400px;
	margin-left: 65px;
}
}